From 82c6347dad040295858c1325812f39002adac647 Mon Sep 17 00:00:00 2001 From: "DESKTOP-E401PHE\\Administrator" Date: Wed, 30 Apr 2025 16:21:22 +0800 Subject: [PATCH] ~ --- .gitignore | 16 + 坯布仓库/BPCK.cfg | 42 + 坯布仓库/BPCK.dof | 138 + 坯布仓库/BPCK.dpr | 67 + 坯布仓库/BPCK.res | Bin 0 -> 876 bytes 坯布仓库/ProjectGroup1.bpg | 23 + 坯布仓库/ProjectGroup1.~bpg | 23 + 坯布仓库/SYSTEMSET.ini | 3 + 坯布仓库/U_BpCk.dfm | 459 + 坯布仓库/U_BpCk.pas | 1113 + 坯布仓库/U_BpCklist.dfm | 678 + 坯布仓库/U_BpCklist.pas | 498 + 坯布仓库/U_BpGdCkEdit.dfm | 489 + 坯布仓库/U_BpGdCkEdit.pas | 831 + 坯布仓库/U_BpGdCklist.dfm | 515 + 坯布仓库/U_BpGdCklist.pas | 444 + 坯布仓库/U_BpGdYPCkEdit.dfm | 601 + 坯布仓库/U_BpGdYPCkEdit.pas | 888 + 坯布仓库/U_BpJGlist.dfm | 450 + 坯布仓库/U_BpJGlist.pas | 219 + 坯布仓库/U_BpRk.dfm | 611 + 坯布仓库/U_BpRk.pas | 1177 + 坯布仓库/U_BpRklist.dfm | 971 + 坯布仓库/U_BpRklist.pas | 908 + 坯布仓库/U_BpYPCkEdit.dfm | 491 + 坯布仓库/U_BpYPCkEdit.pas | 859 + 坯布仓库/U_BpkcCk.dfm | 511 + 坯布仓库/U_BpkcCk.pas | 545 + 坯布仓库/U_Bpkclist.dfm | 521 + 坯布仓库/U_Bpkclist.pas | 253 + 坯布仓库/U_CPCKMXLR.dfm | 798 + 坯布仓库/U_CPCKMXLR.pas | 945 + 坯布仓库/U_CPKWListSel.dfm | 317 + 坯布仓库/U_CPKWListSel.pas | 161 + 坯布仓库/U_DataLink.dfm | 18108 ++++++++++++ 坯布仓库/U_DataLink.pas | 87 + 坯布仓库/U_GetDllForm.pas | 293 + 坯布仓库/U_PackList.dfm | 648 + 坯布仓库/U_ProductOrderList.dfm | 544 + 坯布仓库/U_ProductOrderList.pas | 527 + 坯布仓库/U_ProductOrderNewList.dfm | 632 + 坯布仓库/U_ProductOrderNewList.pas | 457 + 坯布仓库/U_ProductOrderNewListSEl.dfm | 624 + 坯布仓库/U_ProductOrderNewListSEl.pas | 452 + 坯布仓库/U_ZdyAttachCP.dfm | 351 + 坯布仓库/U_ZdyAttachCP.pas | 202 + 坯布仓库/U_ZdyAttachGYS.dfm | 331 + 坯布仓库/U_ZdyAttachGYS.pas | 213 + 坯布仓库/U_ZdyAttachment.dfm | 332 + 坯布仓库/U_ZdyAttachment.pas | 202 + 坯布仓库/U_ZdyYS_Sel.dfm | 278 + 坯布仓库/U_ZdyYS_Sel.pas | 307 + 坯布仓库/U_testdll.dfm | 221 + 坯布仓库/U_testdll.pas | 106 + 坯布仓库/consvr.ini | 2 + 坯布仓库/testDll.cfg | 38 + 坯布仓库/testDll.dof | 136 + 坯布仓库/testDll.dpr | 14 + 坯布仓库/testDll.res | Bin 0 -> 876 bytes 基础资料维护(BaseInfo.dll)/BaseInfo.cfg | 42 + 基础资料维护(BaseInfo.dll)/BaseInfo.dof | 138 + 基础资料维护(BaseInfo.dll)/BaseInfo.dpr | 64 + 基础资料维护(BaseInfo.dll)/BaseInfo.res | Bin 0 -> 876 bytes 基础资料维护(BaseInfo.dll)/CPCK.cfg | 42 + 基础资料维护(BaseInfo.dll)/CPCK.dof | 138 + 基础资料维护(BaseInfo.dll)/CPCK.res | Bin 0 -> 876 bytes .../FieldExportSet/产品资料列表.INI | 2 + .../FieldExportSet/客户资料列表.INI | 2 + 基础资料维护(BaseInfo.dll)/JCInfoSet.cfg | 42 + 基础资料维护(BaseInfo.dll)/JCInfoSet.dof | 138 + 基础资料维护(BaseInfo.dll)/JCInfoSet.res | Bin 0 -> 876 bytes 基础资料维护(BaseInfo.dll)/ProjectGroup1.bpg | 20 + 基础资料维护(BaseInfo.dll)/ProjectGroup1.~bpg | 23 + 基础资料维护(BaseInfo.dll)/SYSTEMSET.ini | 6 + 基础资料维护(BaseInfo.dll)/U_CPKWEdit.dfm | 201 + 基础资料维护(BaseInfo.dll)/U_CPKWEdit.pas | 302 + 基础资料维护(BaseInfo.dll)/U_CPKWList.dfm | 486 + 基础资料维护(BaseInfo.dll)/U_CPKWList.pas | 346 + .../U_ClothContractList_CG_help.dfm | 535 + .../U_ClothContractList_CG_help.pas | 576 + 基础资料维护(BaseInfo.dll)/U_DataLink.dfm | 17974 ++++++++++++ 基础资料维护(BaseInfo.dll)/U_DataLink.pas | 85 + 基础资料维护(BaseInfo.dll)/U_FjList_RZ.dfm | 183 + 基础资料维护(BaseInfo.dll)/U_FjList_RZ.pas | 443 + 基础资料维护(BaseInfo.dll)/U_GetDllForm.pas | 332 + 基础资料维护(BaseInfo.dll)/U_HZViewList.dfm | 797 + 基础资料维护(BaseInfo.dll)/U_HZViewList.pas | 322 + 基础资料维护(BaseInfo.dll)/U_KHAdd.dfm | 262 + 基础资料维护(BaseInfo.dll)/U_KHAdd.pas | 303 + 基础资料维护(BaseInfo.dll)/U_KHHelp.dfm | 17996 ++++++++++++ 基础资料维护(BaseInfo.dll)/U_KHHelp.pas | 167 + 基础资料维护(BaseInfo.dll)/U_KHInfo.dfm | 314 + 基础资料维护(BaseInfo.dll)/U_KHInfo.pas | 186 + 基础资料维护(BaseInfo.dll)/U_NengHaoInput.dfm | 240 + 基础资料维护(BaseInfo.dll)/U_NengHaoInput.pas | 254 + 基础资料维护(BaseInfo.dll)/U_NengHaoList.dfm | 359 + 基础资料维护(BaseInfo.dll)/U_NengHaoList.pas | 261 + .../U_ReceivableImport.dfm | 324 + .../U_ReceivableImport.pas | 545 + 基础资料维护(BaseInfo.dll)/U_SYDept.dfm | 277 + 基础资料维护(BaseInfo.dll)/U_SYDept.pas | 314 + 基础资料维护(BaseInfo.dll)/U_UserHelpSel.dfm | 23820 ++++++++++++++++ 基础资料维护(BaseInfo.dll)/U_UserHelpSel.pas | 234 + 基础资料维护(BaseInfo.dll)/U_ZDYHelp11.dfm | 18066 ++++++++++++ 基础资料维护(BaseInfo.dll)/U_ZDYHelp11.pas | 628 + 基础资料维护(BaseInfo.dll)/U_ZdyAttInput.dfm | 273 + 基础资料维护(BaseInfo.dll)/U_ZdyAttInput.pas | 367 + .../U_ZdyAttInputCP.dfm | 269 + .../U_ZdyAttInputCP.pas | 336 + .../U_ZdyAttInputCP10.dfm | 710 + .../U_ZdyAttInputCP10.pas | 648 + .../U_ZdyAttInputCP_CB.dfm | 1189 + .../U_ZdyAttInputCP_CB.pas | 1402 + .../U_ZdyAttInputGYS.dfm | 226 + .../U_ZdyAttInputGYS.pas | 251 + 基础资料维护(BaseInfo.dll)/U_ZdyAttachCP.dfm | 407 + 基础资料维护(BaseInfo.dll)/U_ZdyAttachCP.pas | 391 + .../U_ZdyAttachCP10.dfm | 706 + .../U_ZdyAttachCP10.pas | 780 + .../U_ZdyAttachCP10_help.dfm | 338 + .../U_ZdyAttachCP10_help.pas | 429 + .../U_ZdyAttachCPcbfz.dfm | 388 + .../U_ZdyAttachCPcbfz.pas | 599 + 基础资料维护(BaseInfo.dll)/U_ZdyAttachGYS.dfm | 522 + 基础资料维护(BaseInfo.dll)/U_ZdyAttachGYS.pas | 385 + .../U_ZdyAttachGYS_help.dfm | 362 + .../U_ZdyAttachGYS_help.pas | 178 + .../U_ZdyAttachment.dfm | 416 + .../U_ZdyAttachment.pas | 273 + .../U_ZdyAttachmentBJ.dfm | 468 + .../U_ZdyAttachmentBJ.pas | 305 + .../U_ZdyAttachmentBJ_Edit.dfm | 499 + .../U_ZdyAttachmentBJ_Edit.pas | 464 + .../U_ZdyAttachment_Help.dfm | 423 + .../U_ZdyAttachment_Help.pas | 290 + 基础资料维护(BaseInfo.dll)/U_ZdyCMZ_Sel.dfm | 302 + 基础资料维护(BaseInfo.dll)/U_ZdyCMZ_Sel.pas | 276 + 基础资料维护(BaseInfo.dll)/U_ZdyCMZ_help.dfm | 337 + 基础资料维护(BaseInfo.dll)/U_ZdyCMZ_help.pas | 319 + 基础资料维护(BaseInfo.dll)/U_ZdyInput.dfm | 17 + 基础资料维护(BaseInfo.dll)/U_ZdyInput.pas | 30 + 基础资料维护(BaseInfo.dll)/U_ZdyYS_Sel.dfm | 263 + 基础资料维护(BaseInfo.dll)/U_ZdyYS_Sel.pas | 272 + 基础资料维护(BaseInfo.dll)/U_ZdyYS_help.dfm | 423 + 基础资料维护(BaseInfo.dll)/U_ZdyYS_help.pas | 476 + 基础资料维护(BaseInfo.dll)/U_testdll.dfm | 221 + 基础资料维护(BaseInfo.dll)/U_testdll.pas | 106 + 基础资料维护(BaseInfo.dll)/consvr.ini | 2 + 基础资料维护(BaseInfo.dll)/getpic.dfm | 183 + 基础资料维护(BaseInfo.dll)/getpic.pas | 612 + 基础资料维护(BaseInfo.dll)/getpicYS.dfm | 183 + 基础资料维护(BaseInfo.dll)/getpicYS.pas | 619 + 基础资料维护(BaseInfo.dll)/testDll.cfg | 38 + 基础资料维护(BaseInfo.dll)/testDll.dof | 136 + 基础资料维护(BaseInfo.dll)/testDll.dpr | 14 + 基础资料维护(BaseInfo.dll)/testDll.res | Bin 0 -> 876 bytes .../FieldExportSet/应付款付款统计列表.INI | 2 + 应收应付/FieldExportSet/应付款列表.INI | 2 + 应收应付/FieldExportSet/检验分析订单.INI | 2 + 应收应付/FieldExportSet/检验报告.INI | 2 + 应收应付/FieldExportSet/采购单列表.INI | 2 + 应收应付/ProjectGroup1.bpg | 23 + 应收应付/SYSTEMSET.ini | 3 + 应收应付/U_BpckXjList.dfm | 593 + 应收应付/U_BpckXjList.pas | 540 + 应收应付/U_DataLink.dfm | 18111 ++++++++++++ 应收应付/U_DataLink.pas | 87 + 应收应付/U_FDINVOICE.dfm | 473 + 应收应付/U_FDINVOICE.pas | 330 + 应收应付/U_FDINVOICE_Sub.dfm | 391 + 应收应付/U_FDINVOICE_Sub.pas | 470 + 应收应付/U_FKCR.dfm | 369 + 应收应付/U_FKCR.pas | 871 + 应收应付/U_FKCRLZ.dfm | 406 + 应收应付/U_FKCRLZ.pas | 882 + 应收应付/U_FPINVOICE_TJ.dfm | 503 + 应收应付/U_FPINVOICE_TJ.pas | 175 + 应收应付/U_GetDllForm.pas | 825 + 应收应付/U_OrderSel.dfm | 285 + 应收应付/U_OrderSel.pas | 178 + 应收应付/U_PbProductList.dfm | 605 + 应收应付/U_PbProductList.pas | 448 + 应收应付/U_ProductOrderCost.dfm | 873 + 应收应付/U_ProductOrderCost.pas | 502 + 应收应付/U_ProductOrderList.dfm | 542 + 应收应付/U_ProductOrderList.pas | 526 + 应收应付/U_ProductOrderListCX.dfm | 628 + 应收应付/U_ProductOrderListCX.pas | 780 + 应收应付/U_ProductOrderListNew.dfm | 1344 + 应收应付/U_ProductOrderListNew.pas | 1041 + 应收应付/U_ProductOrderListNewCK.dfm | 1300 + 应收应付/U_ProductOrderListNewCK.pas | 1012 + 应收应付/U_ProductOrderListNewCKMX.dfm | 938 + 应收应付/U_ProductOrderListNewCKMX.pas | 314 + 应收应付/U_ProductOrderListOLJ.dfm | 690 + 应收应付/U_ProductOrderListOLJ.pas | 509 + 应收应付/U_ProductOrderListSel.dfm | 681 + 应收应付/U_ProductOrderListSel.pas | 449 + 应收应付/U_ProductOrderNewList.dfm | 633 + 应收应付/U_ProductOrderNewList.pas | 459 + 应收应付/U_SKCR.dfm | 595 + 应收应付/U_SKCR.pas | 918 + 应收应付/U_SKCRLZ.dfm | 408 + 应收应付/U_SKCRLZ.pas | 1034 + 应收应付/U_SKCROLJ.dfm | 397 + 应收应付/U_SKCROLJ.pas | 832 + 应收应付/U_SKCR_Gd.dfm | 363 + 应收应付/U_SKCR_Gd.pas | 780 + 应收应付/U_SXCKNewList.dfm | 629 + 应收应付/U_SXCKNewList.pas | 497 + 应收应付/U_YFCR.dfm | 812 + 应收应付/U_YFCR.pas | 1538 + 应收应付/U_YFCRLZ.dfm | 514 + 应收应付/U_YFCRLZ.pas | 984 + 应收应付/U_YFCRLZQty.dfm | 511 + 应收应付/U_YFCRLZQty.pas | 1013 + 应收应付/U_YFCRLZView.dfm | 521 + 应收应付/U_YFCRLZView.pas | 1011 + 应收应付/U_YFCRYCL.dfm | 439 + 应收应付/U_YFCRYCL.pas | 882 + 应收应付/U_YFFKList.dfm | 340 + 应收应付/U_YFFKList.pas | 204 + 应收应付/U_YFFP.dfm | 435 + 应收应付/U_YFFP.pas | 853 + 应收应付/U_YFMXlist.dfm | 507 + 应收应付/U_YFMXlist.pas | 225 + 应收应付/U_YFZDList_MX.dfm | 298 + 应收应付/U_YFZDList_MX.pas | 209 + 应收应付/U_YKHXList.dfm | 335 + 应收应付/U_YKHXList.pas | 258 + 应收应付/U_YPCR.dfm | 300 + 应收应付/U_YPCR.pas | 345 + 应收应付/U_YSCR.dfm | 737 + 应收应付/U_YSCR.pas | 1102 + 应收应付/U_YSCRJZC.dfm | 506 + 应收应付/U_YSCRJZC.pas | 1178 + 应收应付/U_YSCRLZ.dfm | 492 + 应收应付/U_YSCRLZ.pas | 1172 + 应收应付/U_YSCROL.dfm | 455 + 应收应付/U_YSCROL.pas | 1087 + 应收应付/U_YSCR_Gd.dfm | 417 + 应收应付/U_YSCR_Gd.pas | 840 + 应收应付/U_YSFP.dfm | 435 + 应收应付/U_YSFP.pas | 825 + 应收应付/U_YSHZMX.dfm | 471 + 应收应付/U_YSHZMX.pas | 432 + 应收应付/U_YSHZMXDL.dfm | 455 + 应收应付/U_YSHZMXDL.pas | 429 + 应收应付/U_YSHZMXOLJ.dfm | 441 + 应收应付/U_YSHZMXOLJ.pas | 426 + 应收应付/U_YSHZMXView.dfm | 468 + 应收应付/U_YSHZMXView.pas | 522 + 应收应付/U_YSMXlist.dfm | 611 + 应收应付/U_YSMXlist.pas | 434 + 应收应付/U_YSSCList.dfm | 539 + 应收应付/U_YSSCList.pas | 428 + 应收应付/U_YSSKList.dfm | 415 + 应收应付/U_YSSKList.pas | 235 + 应收应付/U_YSYGGJList.dfm | 576 + 应收应付/U_YSYGGJList.pas | 277 + 应收应付/U_YSZDList_MX.dfm | 304 + 应收应付/U_YSZDList_MX.pas | 210 + 应收应付/U_ZdyAttachCP.dfm | 350 + 应收应付/U_ZdyAttachCP.pas | 201 + 应收应付/U_ZdyAttachGYS.dfm | 330 + 应收应付/U_ZdyAttachGYS.pas | 212 + 应收应付/U_ZdyAttachment.dfm | 357 + 应收应付/U_ZdyAttachment.pas | 203 + 应收应付/U_skHx.dfm | 310 + 应收应付/U_skHx.pas | 298 + 应收应付/U_testdll.dfm | 221 + 应收应付/U_testdll.pas | 106 + 应收应付/YSYF.cfg | 38 + 应收应付/YSYF.dof | 138 + 应收应付/YSYF.dpr | 73 + 应收应付/YSYF.res | Bin 0 -> 876 bytes 应收应付/testDll.cfg | 38 + 应收应付/testDll.dpr | 14 + 应收应付/testDll.res | Bin 0 -> 876 bytes 成品仓库/CPCK.cfg | 42 + 成品仓库/CPCK.dof | 138 + 成品仓库/CPCK.dpr | 70 + 成品仓库/CPCK.rar | Bin 0 -> 1767052 bytes 成品仓库/CPCK.res | Bin 0 -> 876 bytes 成品仓库/ProjectGroup1.bpg | 23 + 成品仓库/ProjectGroup1.~bpg | 23 + 成品仓库/SYSTEMSET.ini | 3 + 成品仓库/U_BJGCl.dfm | 698 + 成品仓库/U_BJGCl.pas | 261 + 成品仓库/U_BpCk.dfm | 1145 + 成品仓库/U_BpCk.pas | 1806 ++ 成品仓库/U_BpJylist.dfm | 517 + 成品仓库/U_BpJylist.pas | 250 + 成品仓库/U_BpRk.dfm | 884 + 成品仓库/U_BpRk.pas | 1739 ++ 成品仓库/U_BpRklist.dfm | 872 + 成品仓库/U_BpRklist.pas | 565 + 成品仓库/U_BpSmCk.dfm | 828 + 成品仓库/U_BpSmCk.pas | 864 + 成品仓库/U_BpSmRk.dfm | 796 + 成品仓库/U_BpSmRk.pas | 845 + 成品仓库/U_BpckXjList.dfm | 594 + 成品仓库/U_BpckXjList.pas | 555 + 成品仓库/U_Bpcklist.dfm | 1172 + 成品仓库/U_Bpcklist.pas | 676 + 成品仓库/U_Bpkclist.dfm | 1383 + 成品仓库/U_Bpkclist.pas | 669 + 成品仓库/U_Bpkclist_HZ.dfm | 595 + 成品仓库/U_Bpkclist_HZ.pas | 286 + 成品仓库/U_CPKWListSel.dfm | 317 + 成品仓库/U_CPKWListSel.pas | 174 + 成品仓库/U_DataLink.dfm | 18108 ++++++++++++ 成品仓库/U_DataLink.pas | 99 + 成品仓库/U_GetDllForm.pas | 318 + 成品仓库/U_JGCklistSel.dfm | 503 + 成品仓库/U_JGCklistSel.pas | 223 + 成品仓库/U_PackList.dfm | 648 + 成品仓库/U_ProductOrderNewList.dfm | 673 + 成品仓库/U_ProductOrderNewList.pas | 458 + 成品仓库/U_ProductOrderNewListSEl.dfm | 633 + 成品仓库/U_ProductOrderNewListSEl.pas | 466 + 成品仓库/U_ZdyAttachCP.dfm | 380 + 成品仓库/U_ZdyAttachCP.pas | 400 + 成品仓库/U_ZdyAttachGYS.dfm | 331 + 成品仓库/U_ZdyAttachGYS.pas | 213 + 成品仓库/U_ZdyAttachment.dfm | 356 + 成品仓库/U_ZdyAttachment.pas | 196 + 成品仓库/U_ZdyCMZ_Sel.dfm | 302 + 成品仓库/U_ZdyCMZ_Sel.pas | 278 + 成品仓库/U_ZdyYS_Sel.dfm | 300 + 成品仓库/U_ZdyYS_Sel.pas | 324 + 成品仓库/U_testdll.dfm | 221 + 成品仓库/U_testdll.pas | 106 + 成品仓库/consvr.ini | 2 + 成品仓库/testDll.cfg | 38 + 成品仓库/testDll.dof | 136 + 成品仓库/testDll.dpr | 14 + 成品仓库/testDll.res | Bin 0 -> 876 bytes 艾登贸易管理/AES.pas | 317 + 艾登贸易管理/ElAES.pas | 2488 ++ 艾登贸易管理/FieldExportSet/.INI | 2 + 艾登贸易管理/FieldExportSet/检验分析订单.INI | 2 + 艾登贸易管理/FieldExportSet/检验报告.INI | 2 + .../FieldExportSet/生产指示单列表.INI | 2 + .../FieldExportSet/订生产指示单排版列表.INI | 2 + 艾登贸易管理/FieldExportSet/采购单列表.INI | 2 + 艾登贸易管理/File.INI | 7 + 艾登贸易管理/OrderManage.dof | 138 + 艾登贸易管理/ProjectGroup1.bpg | 20 + 艾登贸易管理/ProjectGroup1.~bpg | 23 + 艾登贸易管理/RCInspection.cfg | 38 + 艾登贸易管理/RCInspection.dof | 141 + 艾登贸易管理/RCInspection.res | Bin 0 -> 876 bytes 艾登贸易管理/SYSTEMSET.ini | 6 + 艾登贸易管理/TradeManage.cfg | 38 + 艾登贸易管理/TradeManage.dof | 141 + 艾登贸易管理/TradeManage.dpr | 113 + 艾登贸易管理/TradeManage.rar | Bin 0 -> 2185007 bytes 艾登贸易管理/TradeManage.res | Bin 0 -> 876 bytes 艾登贸易管理/U.dfm | 202 + 艾登贸易管理/U.pas | 48 + 艾登贸易管理/U_BanCpCkSaoM.dfm | 201 + 艾登贸易管理/U_BanCpCkSaoM.pas | 253 + 艾登贸易管理/U_BanCpHCSaoM.dfm | 212 + 艾登贸易管理/U_BanCpHCSaoM.pas | 264 + 艾登贸易管理/U_BangAdd.dfm | 255 + 艾登贸易管理/U_BangAdd.pas | 308 + 艾登贸易管理/U_BefChkHX.dfm | 335 + 艾登贸易管理/U_BefChkHX.pas | 256 + 艾登贸易管理/U_CKJYList.dfm | 612 + 艾登贸易管理/U_CKJYList.pas | 289 + 艾登贸易管理/U_CKProductBCPHCList.dfm | 390 + 艾登贸易管理/U_CKProductBCPHCList.pas | 182 + 艾登贸易管理/U_CKProductBCPInList.dfm | 1062 + 艾登贸易管理/U_CKProductBCPInList.pas | 1557 + 艾登贸易管理/U_CKProductBCPKC.dfm | 330 + 艾登贸易管理/U_CKProductBCPKC.pas | 207 + 艾登贸易管理/U_CKProductBCPKCHZList.dfm | 499 + 艾登贸易管理/U_CKProductBCPKCHZList.pas | 261 + 艾登贸易管理/U_CKProductBCPKCList.dfm | 956 + 艾登贸易管理/U_CKProductBCPKCList.pas | 655 + 艾登贸易管理/U_CKProductBCPOutList.dfm | 1463 + 艾登贸易管理/U_CKProductBCPOutList.pas | 1244 + 艾登贸易管理/U_CKProductCKHZList.dfm | 613 + 艾登贸易管理/U_CKProductCKHZList.pas | 284 + 艾登贸易管理/U_CKProductRKHZList.dfm | 622 + 艾登贸易管理/U_CKProductRKHZList.pas | 291 + 艾登贸易管理/U_CKYCLKC.dfm | 345 + 艾登贸易管理/U_CKYCLKC.pas | 241 + 艾登贸易管理/U_CPDBAO.dfm | 1602 ++ 艾登贸易管理/U_CPDBAO.pas | 1170 + 艾登贸易管理/U_CPGangNo.dfm | 1131 + 艾登贸易管理/U_CPGangNo.pas | 746 + 艾登贸易管理/U_ClothContractInPut.dfm | 653 + 艾登贸易管理/U_ClothContractInPut.pas | 760 + 艾登贸易管理/U_ClothContractInPutHZ.dfm | 645 + 艾登贸易管理/U_ClothContractInPutHZ.pas | 878 + 艾登贸易管理/U_ClothContractInPutPB.dfm | 675 + 艾登贸易管理/U_ClothContractInPutPB.pas | 640 + 艾登贸易管理/U_ClothContractInPutSX.dfm | 633 + 艾登贸易管理/U_ClothContractInPutSX.pas | 854 + 艾登贸易管理/U_ClothContractInPutSXMX.dfm | 647 + 艾登贸易管理/U_ClothContractInPutSXMX.pas | 931 + 艾登贸易管理/U_ClothContractKCList.dfm | 635 + 艾登贸易管理/U_ClothContractKCList.pas | 202 + 艾登贸易管理/U_ClothContractList.dfm | 952 + 艾登贸易管理/U_ClothContractList.pas | 1036 + 艾登贸易管理/U_ClothContractListDH.dfm | 707 + 艾登贸易管理/U_ClothContractListDH.pas | 1119 + 艾登贸易管理/U_ClothContractListDHSX.dfm | 595 + 艾登贸易管理/U_ClothContractListDHSX.pas | 1022 + 艾登贸易管理/U_ClothContractListDHSXQJG.dfm | 596 + 艾登贸易管理/U_ClothContractListDHSXQJG.pas | 1057 + 艾登贸易管理/U_ClothContractListHZ.dfm | 434 + 艾登贸易管理/U_ClothContractListHZ.pas | 356 + 艾登贸易管理/U_ClothContractListLL.dfm | 771 + 艾登贸易管理/U_ClothContractListLL.pas | 1214 + 艾登贸易管理/U_ClothContractListLLSX.dfm | 712 + 艾登贸易管理/U_ClothContractListLLSX.pas | 1045 + 艾登贸易管理/U_ClothContractListLLSXQJG.dfm | 712 + 艾登贸易管理/U_ClothContractListLLSXQJG.pas | 1030 + 艾登贸易管理/U_ClothContractListSX.dfm | 436 + 艾登贸易管理/U_ClothContractListSX.pas | 375 + 艾登贸易管理/U_ClothContractListWJG.dfm | 820 + 艾登贸易管理/U_ClothContractListWJG.pas | 1238 + 艾登贸易管理/U_ClothHCList.dfm | 598 + 艾登贸易管理/U_ClothHCList.pas | 220 + 艾登贸易管理/U_ClothPDInfoList.dfm | 363 + 艾登贸易管理/U_ClothPDInfoList.pas | 169 + 艾登贸易管理/U_ClothSCListZDSel.dfm | 804 + 艾登贸易管理/U_ClothSCListZDSel.pas | 880 + 艾登贸易管理/U_ConInPut.dfm | 1466 + 艾登贸易管理/U_ConInPut.pas | 1959 ++ 艾登贸易管理/U_ConInPutJG.dfm | 1341 + 艾登贸易管理/U_ConInPutJG.pas | 1420 + 艾登贸易管理/U_ConInPutNX.dfm | 1342 + 艾登贸易管理/U_ConInPutNX.pas | 1436 + 艾登贸易管理/U_ContractList.dfm | 1382 + 艾登贸易管理/U_ContractList.pas | 1640 ++ 艾登贸易管理/U_ContractListJG.dfm | 909 + 艾登贸易管理/U_ContractListJG.pas | 1006 + 艾登贸易管理/U_ContractListNX.dfm | 909 + 艾登贸易管理/U_ContractListNX.pas | 1008 + 艾登贸易管理/U_Contract_Main.dfm | 546 + 艾登贸易管理/U_Contract_Main.pas | 530 + 艾登贸易管理/U_Contract_Sub.dfm | 595 + 艾登贸易管理/U_Contract_Sub.pas | 922 + 艾登贸易管理/U_CpCkSaoMNew.dfm | 460 + 艾登贸易管理/U_CpCkSaoMNew.pas | 450 + 艾登贸易管理/U_CpCkSaoMNewSel.dfm | 783 + 艾登贸易管理/U_CpCkSaoMNewSel.pas | 1361 + 艾登贸易管理/U_CpRkSaoMNew.dfm | 993 + 艾登贸易管理/U_CpRkSaoMNew.pas | 1463 + 艾登贸易管理/U_CpRkSaoMNewDB.dfm | 710 + 艾登贸易管理/U_CpRkSaoMNewDB.pas | 940 + 艾登贸易管理/U_DataLink.dfm | 17978 ++++++++++++ 艾登贸易管理/U_DataLink.pas | 89 + 艾登贸易管理/U_FanYangList.dfm | 899 + 艾登贸易管理/U_FanYangList.pas | 447 + 艾登贸易管理/U_FanYangListHZ.dfm | 920 + 艾登贸易管理/U_FanYangListHZ.pas | 399 + 艾登贸易管理/U_FanYangList_Sub.dfm | 1119 + 艾登贸易管理/U_FanYangList_Sub.pas | 887 + 艾登贸易管理/U_FjList_RZ.dfm | 183 + 艾登贸易管理/U_FjList_RZ.pas | 443 + 艾登贸易管理/U_GetDllForm.pas | 1128 + 艾登贸易管理/U_GetPGJBInList.dfm | 400 + 艾登贸易管理/U_GetPGJBInList.pas | 268 + 艾登贸易管理/U_GetPGJBOneTwoInList.dfm | 412 + 艾登贸易管理/U_GetPGJBOneTwoInList.pas | 270 + 艾登贸易管理/U_HCList.dfm | 724 + 艾登贸易管理/U_HCList.pas | 279 + 艾登贸易管理/U_JBData.dfm | 265 + 艾登贸易管理/U_JBData.pas | 260 + 艾登贸易管理/U_JYMJIDPRINT.dfm | 135 + 艾登贸易管理/U_JYMJIDPRINT.pas | 339 + 艾登贸易管理/U_JYOrderCDMore.dfm | 611 + 艾登贸易管理/U_JYOrderCDMore.pas | 362 + 艾登贸易管理/U_JYOrderCDOne.dfm | 1715 ++ 艾登贸易管理/U_JYOrderCDOne.pas | 1744 ++ 艾登贸易管理/U_JYResult.dfm | 527 + 艾登贸易管理/U_JYResult.pas | 480 + 艾登贸易管理/U_JiangLiaoSet.dfm | 968 + 艾登贸易管理/U_JiangLiaoSet.pas | 1182 + 艾登贸易管理/U_LabelAdd.dfm | 336 + 艾登贸易管理/U_LabelAdd.pas | 485 + 艾登贸易管理/U_LabelList.dfm | 437 + 艾登贸易管理/U_LabelList.pas | 606 + 艾登贸易管理/U_LabelListts.dfm | 438 + 艾登贸易管理/U_LabelListts.pas | 606 + 艾登贸易管理/U_LabelPrint.dfm | 122 + 艾登贸易管理/U_LabelPrint.pas | 143 + 艾登贸易管理/U_MJEdit.dfm | 454 + 艾登贸易管理/U_MJEdit.pas | 595 + 艾登贸易管理/U_MJManage.dfm | 1192 + 艾登贸易管理/U_MJManage.pas | 1086 + 艾登贸易管理/U_MJManageNew.dfm | 1922 ++ 艾登贸易管理/U_MJManageNew.pas | 1621 ++ 艾登贸易管理/U_MJManageNewFD1.dfm | 2054 ++ 艾登贸易管理/U_MJManageNewFD1.pas | 1450 + 艾登贸易管理/U_MJManageNewFDNew.dfm | 2823 ++ 艾登贸易管理/U_MJManageNewFDNew.pas | 2328 ++ 艾登贸易管理/U_MJManageNewFDNew1.dfm | 1967 ++ 艾登贸易管理/U_MJManageNewFDNew1.pas | 1532 + 艾登贸易管理/U_ModulePromptList.dfm | 179 + 艾登贸易管理/U_ModulePromptList.pas | 223 + 艾登贸易管理/U_OrderAttachment.dfm | 666 + 艾登贸易管理/U_OrderAttachment.pas | 543 + 艾登贸易管理/U_OrderInPut.dfm | 1722 ++ 艾登贸易管理/U_OrderInPut.pas | 1649 ++ 艾登贸易管理/U_OrderInPutJZC.dfm | 727 + 艾登贸易管理/U_OrderInPutJZC.pas | 1090 + 艾登贸易管理/U_OrderInPutNew.dfm | 2155 ++ 艾登贸易管理/U_OrderInPutNew.pas | 2945 ++ 艾登贸易管理/U_OrderInPutZP.dfm | 1788 ++ 艾登贸易管理/U_OrderInPutZP.pas | 1849 ++ 艾登贸易管理/U_OrderInPutZPLNew.dfm | 2224 ++ 艾登贸易管理/U_OrderInPutZPLNew.pas | 3706 +++ 艾登贸易管理/U_OrderInPutZPNew.dfm | 1711 ++ 艾登贸易管理/U_OrderInPutZPNew.pas | 1984 ++ 艾登贸易管理/U_OrderInPut_CY.dfm | 1004 + 艾登贸易管理/U_OrderInPut_CY.pas | 1143 + 艾登贸易管理/U_OrderInPut_FB.dfm | 1073 + 艾登贸易管理/U_OrderInPut_FB.pas | 1336 + 艾登贸易管理/U_OrderInPut_HYWT.dfm | 533 + 艾登贸易管理/U_OrderInPut_HYWT.pas | 363 + 艾登贸易管理/U_OrderJD.dfm | 636 + 艾登贸易管理/U_OrderJD.pas | 172 + 艾登贸易管理/U_OrderJDList.dfm | 562 + 艾登贸易管理/U_OrderJDList.pas | 446 + 艾登贸易管理/U_OrderSel.dfm | 349 + 艾登贸易管理/U_OrderSel.pas | 211 + 艾登贸易管理/U_OrderSelRK.dfm | 334 + 艾登贸易管理/U_OrderSelRK.pas | 199 + 艾登贸易管理/U_OrderStatus.dfm | 593 + 艾登贸易管理/U_OrderStatus.pas | 306 + 艾登贸易管理/U_OrderSubFH.dfm | 496 + 艾登贸易管理/U_OrderSubFH.pas | 516 + 艾登贸易管理/U_OrderSubKC.dfm | 377 + 艾登贸易管理/U_OrderSubKC.pas | 245 + 艾登贸易管理/U_ProductOrderAnPai.dfm | 956 + 艾登贸易管理/U_ProductOrderAnPai.pas | 2355 ++ 艾登贸易管理/U_ProductOrderAnPaiGQX.dfm | 970 + 艾登贸易管理/U_ProductOrderAnPaiGQX.pas | 2138 ++ 艾登贸易管理/U_ProductOrderLBNameSet.dfm | 712 + 艾登贸易管理/U_ProductOrderLBNameSet.pas | 777 + 艾登贸易管理/U_ProductOrderLBNameSetFZ.dfm | 669 + 艾登贸易管理/U_ProductOrderLBNameSetFZ.pas | 679 + 艾登贸易管理/U_ProductOrderList.dfm | 745 + 艾登贸易管理/U_ProductOrderList.pas | 657 + 艾登贸易管理/U_ProductOrderListNew.dfm | 1344 + 艾登贸易管理/U_ProductOrderListNew.pas | 1041 + 艾登贸易管理/U_ProductOrderListNewCK.dfm | 1300 + 艾登贸易管理/U_ProductOrderListNewCK.pas | 1012 + 艾登贸易管理/U_ProductOrderListNewCKMX.dfm | 938 + 艾登贸易管理/U_ProductOrderListNewCKMX.pas | 314 + 艾登贸易管理/U_ProductOrderListSel.dfm | 343 + 艾登贸易管理/U_ProductOrderListSel.pas | 168 + 艾登贸易管理/U_ProductOrderNewList.dfm | 1348 + 艾登贸易管理/U_ProductOrderNewList.pas | 1813 ++ 艾登贸易管理/U_ProductOrderNewListSubZD.dfm | 677 + 艾登贸易管理/U_ProductOrderNewListSubZD.pas | 681 + 艾登贸易管理/U_ProductOrderNewList_CY.dfm | 981 + 艾登贸易管理/U_ProductOrderNewList_CY.pas | 846 + 艾登贸易管理/U_ProductOrderNewList_CY_Sel.dfm | 987 + 艾登贸易管理/U_ProductOrderNewList_CY_Sel.pas | 846 + 艾登贸易管理/U_ProductOrderNewList_FB.dfm | 1055 + 艾登贸易管理/U_ProductOrderNewList_FB.pas | 1026 + 艾登贸易管理/U_ProductOrderNewList_JD.dfm | 952 + 艾登贸易管理/U_ProductOrderNewList_JD.pas | 809 + .../U_ProductOrderNewList_JD_copy1.dfm | 955 + .../U_ProductOrderNewList_JD_copy1.pas | 795 + 艾登贸易管理/U_ProductOrderNewList_PB.dfm | 959 + 艾登贸易管理/U_ProductOrderNewList_PB.pas | 1572 + 艾登贸易管理/U_ProductOrderSel.dfm | 350 + 艾登贸易管理/U_ProductOrderSel.pas | 494 + 艾登贸易管理/U_ProductOrder_CX.dfm | 517 + 艾登贸易管理/U_ProductOrder_CX.pas | 212 + 艾登贸易管理/U_ProductionAnPai.dfm | 656 + 艾登贸易管理/U_ProductionAnPai.pas | 666 + 艾登贸易管理/U_ProductionAnPaiNew.dfm | 934 + 艾登贸易管理/U_ProductionAnPaiNew.pas | 1006 + 艾登贸易管理/U_SCGYSet.dfm | 1297 + 艾登贸易管理/U_SCGYSet.pas | 1014 + 艾登贸易管理/U_SMLB.dfm | 1423 + 艾登贸易管理/U_SMLB.pas | 1025 + 艾登贸易管理/U_SetBanZu.dfm | 221 + 艾登贸易管理/U_SetBanZu.pas | 265 + 艾登贸易管理/U_StopWorkInPut.dfm | 282 + 艾登贸易管理/U_StopWorkInPut.pas | 498 + 艾登贸易管理/U_StopWorkList.dfm | 439 + 艾登贸易管理/U_StopWorkList.pas | 291 + 艾登贸易管理/U_ZJManage.dfm | 2093 ++ 艾登贸易管理/U_ZJManage.pas | 391 + 艾登贸易管理/U_ZJManageNew.dfm | 2690 ++ 艾登贸易管理/U_ZJManageNew.pas | 1525 + 艾登贸易管理/U_ZJManageNewFD.dfm | 2690 ++ 艾登贸易管理/U_ZJManageNewFD.pas | 1530 + 艾登贸易管理/U_ZJManageNewFDMORE.dfm | 2804 ++ 艾登贸易管理/U_ZJManageNewFDMORE.pas | 2026 ++ 艾登贸易管理/U_ZdyAttachCP.dfm | 380 + 艾登贸易管理/U_ZdyAttachCP.pas | 410 + 艾登贸易管理/U_ZdyAttachGYS.dfm | 336 + 艾登贸易管理/U_ZdyAttachGYS.pas | 214 + 艾登贸易管理/U_ZdyAttachGYS_help.dfm | 362 + 艾登贸易管理/U_ZdyAttachGYS_help.pas | 178 + 艾登贸易管理/U_ZdyAttachment.dfm | 361 + 艾登贸易管理/U_ZdyAttachment.pas | 210 + 艾登贸易管理/U_ZdyCMZ_Sel.dfm | 302 + 艾登贸易管理/U_ZdyCMZ_Sel.pas | 278 + 艾登贸易管理/U_ZdyYS_Sel.dfm | 278 + 艾登贸易管理/U_ZdyYS_Sel.pas | 307 + 艾登贸易管理/U_iniParam.pas | 74 + 艾登贸易管理/U_orderInPut_HYWT_Sub.dfm | 906 + 艾登贸易管理/U_orderInPut_HYWT_Sub.pas | 714 + 艾登贸易管理/U_testdll.dfm | 221 + 艾登贸易管理/U_testdll.pas | 106 + 艾登贸易管理/WFBOrder.cfg | 42 + 艾登贸易管理/WFBOrder.dof | 138 + 艾登贸易管理/WFBOrder.res | Bin 0 -> 876 bytes 艾登贸易管理/WFBProduction.cfg | 38 + 艾登贸易管理/WFBProduction.dof | 141 + 艾登贸易管理/WFBProduction.res | Bin 0 -> 876 bytes 艾登贸易管理/testDll.cfg | 38 + 艾登贸易管理/testDll.dof | 136 + 艾登贸易管理/testDll.dpr | 14 + 艾登贸易管理/testDll.res | Bin 0 -> 876 bytes 627 files changed, 507873 insertions(+) create mode 100644 .gitignore create mode 100644 坯布仓库/BPCK.cfg create mode 100644 坯布仓库/BPCK.dof create mode 100644 坯布仓库/BPCK.dpr create mode 100644 坯布仓库/BPCK.res create mode 100644 坯布仓库/ProjectGroup1.bpg create mode 100644 坯布仓库/ProjectGroup1.~bpg create mode 100644 坯布仓库/SYSTEMSET.ini create mode 100644 坯布仓库/U_BpCk.dfm create mode 100644 坯布仓库/U_BpCk.pas create mode 100644 坯布仓库/U_BpCklist.dfm create mode 100644 坯布仓库/U_BpCklist.pas create mode 100644 坯布仓库/U_BpGdCkEdit.dfm create mode 100644 坯布仓库/U_BpGdCkEdit.pas create mode 100644 坯布仓库/U_BpGdCklist.dfm create mode 100644 坯布仓库/U_BpGdCklist.pas create mode 100644 坯布仓库/U_BpGdYPCkEdit.dfm create mode 100644 坯布仓库/U_BpGdYPCkEdit.pas create mode 100644 坯布仓库/U_BpJGlist.dfm create mode 100644 坯布仓库/U_BpJGlist.pas create mode 100644 坯布仓库/U_BpRk.dfm create mode 100644 坯布仓库/U_BpRk.pas create mode 100644 坯布仓库/U_BpRklist.dfm create mode 100644 坯布仓库/U_BpRklist.pas create mode 100644 坯布仓库/U_BpYPCkEdit.dfm create mode 100644 坯布仓库/U_BpYPCkEdit.pas create mode 100644 坯布仓库/U_BpkcCk.dfm create mode 100644 坯布仓库/U_BpkcCk.pas create mode 100644 坯布仓库/U_Bpkclist.dfm create mode 100644 坯布仓库/U_Bpkclist.pas create mode 100644 坯布仓库/U_CPCKMXLR.dfm create mode 100644 坯布仓库/U_CPCKMXLR.pas create mode 100644 坯布仓库/U_CPKWListSel.dfm create mode 100644 坯布仓库/U_CPKWListSel.pas create mode 100644 坯布仓库/U_DataLink.dfm create mode 100644 坯布仓库/U_DataLink.pas create mode 100644 坯布仓库/U_GetDllForm.pas create mode 100644 坯布仓库/U_PackList.dfm create mode 100644 坯布仓库/U_ProductOrderList.dfm create mode 100644 坯布仓库/U_ProductOrderList.pas create mode 100644 坯布仓库/U_ProductOrderNewList.dfm create mode 100644 坯布仓库/U_ProductOrderNewList.pas create mode 100644 坯布仓库/U_ProductOrderNewListSEl.dfm create mode 100644 坯布仓库/U_ProductOrderNewListSEl.pas create mode 100644 坯布仓库/U_ZdyAttachCP.dfm create mode 100644 坯布仓库/U_ZdyAttachCP.pas create mode 100644 坯布仓库/U_ZdyAttachGYS.dfm create mode 100644 坯布仓库/U_ZdyAttachGYS.pas create mode 100644 坯布仓库/U_ZdyAttachment.dfm create mode 100644 坯布仓库/U_ZdyAttachment.pas create mode 100644 坯布仓库/U_ZdyYS_Sel.dfm create mode 100644 坯布仓库/U_ZdyYS_Sel.pas create mode 100644 坯布仓库/U_testdll.dfm create mode 100644 坯布仓库/U_testdll.pas create mode 100644 坯布仓库/consvr.ini create mode 100644 坯布仓库/testDll.cfg create mode 100644 坯布仓库/testDll.dof create mode 100644 坯布仓库/testDll.dpr create mode 100644 坯布仓库/testDll.res create mode 100644 基础资料维护(BaseInfo.dll)/BaseInfo.cfg create mode 100644 基础资料维护(BaseInfo.dll)/BaseInfo.dof create mode 100644 基础资料维护(BaseInfo.dll)/BaseInfo.dpr create mode 100644 基础资料维护(BaseInfo.dll)/BaseInfo.res create mode 100644 基础资料维护(BaseInfo.dll)/CPCK.cfg create mode 100644 基础资料维护(BaseInfo.dll)/CPCK.dof create mode 100644 基础资料维护(BaseInfo.dll)/CPCK.res create mode 100644 基础资料维护(BaseInfo.dll)/FieldExportSet/产品资料列表.INI create mode 100644 基础资料维护(BaseInfo.dll)/FieldExportSet/客户资料列表.INI create mode 100644 基础资料维护(BaseInfo.dll)/JCInfoSet.cfg create mode 100644 基础资料维护(BaseInfo.dll)/JCInfoSet.dof create mode 100644 基础资料维护(BaseInfo.dll)/JCInfoSet.res create mode 100644 基础资料维护(BaseInfo.dll)/ProjectGroup1.bpg create mode 100644 基础资料维护(BaseInfo.dll)/ProjectGroup1.~bpg create mode 100644 基础资料维护(BaseInfo.dll)/SYSTEMSET.ini create mode 100644 基础资料维护(BaseInfo.dll)/U_CPKWEdit.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_CPKWEdit.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_CPKWList.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_CPKWList.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ClothContractList_CG_help.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ClothContractList_CG_help.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_DataLink.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_DataLink.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_FjList_RZ.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_FjList_RZ.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_GetDllForm.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_HZViewList.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_HZViewList.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_KHAdd.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_KHAdd.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_KHHelp.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_KHHelp.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_KHInfo.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_KHInfo.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_NengHaoInput.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_NengHaoInput.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_NengHaoList.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_NengHaoList.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ReceivableImport.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ReceivableImport.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_SYDept.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_SYDept.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_UserHelpSel.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_UserHelpSel.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZDYHelp11.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZDYHelp11.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttInput.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttInput.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP10.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP10.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP_CB.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP_CB.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttInputGYS.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttInputGYS.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachCP.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachCP.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachCP10.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachCP10.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachCP10_help.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachCP10_help.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachCPcbfz.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachCPcbfz.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachGYS.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachGYS.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachGYS_help.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachGYS_help.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachment.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachment.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachmentBJ.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachmentBJ.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachmentBJ_Edit.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachmentBJ_Edit.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachment_Help.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyAttachment_Help.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyCMZ_Sel.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyCMZ_Sel.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyCMZ_help.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyCMZ_help.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyInput.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyInput.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyYS_Sel.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyYS_Sel.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyYS_help.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_ZdyYS_help.pas create mode 100644 基础资料维护(BaseInfo.dll)/U_testdll.dfm create mode 100644 基础资料维护(BaseInfo.dll)/U_testdll.pas create mode 100644 基础资料维护(BaseInfo.dll)/consvr.ini create mode 100644 基础资料维护(BaseInfo.dll)/getpic.dfm create mode 100644 基础资料维护(BaseInfo.dll)/getpic.pas create mode 100644 基础资料维护(BaseInfo.dll)/getpicYS.dfm create mode 100644 基础资料维护(BaseInfo.dll)/getpicYS.pas create mode 100644 基础资料维护(BaseInfo.dll)/testDll.cfg create mode 100644 基础资料维护(BaseInfo.dll)/testDll.dof create mode 100644 基础资料维护(BaseInfo.dll)/testDll.dpr create mode 100644 基础资料维护(BaseInfo.dll)/testDll.res create mode 100644 应收应付/FieldExportSet/应付款付款统计列表.INI create mode 100644 应收应付/FieldExportSet/应付款列表.INI create mode 100644 应收应付/FieldExportSet/检验分析订单.INI create mode 100644 应收应付/FieldExportSet/检验报告.INI create mode 100644 应收应付/FieldExportSet/采购单列表.INI create mode 100644 应收应付/ProjectGroup1.bpg create mode 100644 应收应付/SYSTEMSET.ini create mode 100644 应收应付/U_BpckXjList.dfm create mode 100644 应收应付/U_BpckXjList.pas create mode 100644 应收应付/U_DataLink.dfm create mode 100644 应收应付/U_DataLink.pas create mode 100644 应收应付/U_FDINVOICE.dfm create mode 100644 应收应付/U_FDINVOICE.pas create mode 100644 应收应付/U_FDINVOICE_Sub.dfm create mode 100644 应收应付/U_FDINVOICE_Sub.pas create mode 100644 应收应付/U_FKCR.dfm create mode 100644 应收应付/U_FKCR.pas create mode 100644 应收应付/U_FKCRLZ.dfm create mode 100644 应收应付/U_FKCRLZ.pas create mode 100644 应收应付/U_FPINVOICE_TJ.dfm create mode 100644 应收应付/U_FPINVOICE_TJ.pas create mode 100644 应收应付/U_GetDllForm.pas create mode 100644 应收应付/U_OrderSel.dfm create mode 100644 应收应付/U_OrderSel.pas create mode 100644 应收应付/U_PbProductList.dfm create mode 100644 应收应付/U_PbProductList.pas create mode 100644 应收应付/U_ProductOrderCost.dfm create mode 100644 应收应付/U_ProductOrderCost.pas create mode 100644 应收应付/U_ProductOrderList.dfm create mode 100644 应收应付/U_ProductOrderList.pas create mode 100644 应收应付/U_ProductOrderListCX.dfm create mode 100644 应收应付/U_ProductOrderListCX.pas create mode 100644 应收应付/U_ProductOrderListNew.dfm create mode 100644 应收应付/U_ProductOrderListNew.pas create mode 100644 应收应付/U_ProductOrderListNewCK.dfm create mode 100644 应收应付/U_ProductOrderListNewCK.pas create mode 100644 应收应付/U_ProductOrderListNewCKMX.dfm create mode 100644 应收应付/U_ProductOrderListNewCKMX.pas create mode 100644 应收应付/U_ProductOrderListOLJ.dfm create mode 100644 应收应付/U_ProductOrderListOLJ.pas create mode 100644 应收应付/U_ProductOrderListSel.dfm create mode 100644 应收应付/U_ProductOrderListSel.pas create mode 100644 应收应付/U_ProductOrderNewList.dfm create mode 100644 应收应付/U_ProductOrderNewList.pas create mode 100644 应收应付/U_SKCR.dfm create mode 100644 应收应付/U_SKCR.pas create mode 100644 应收应付/U_SKCRLZ.dfm create mode 100644 应收应付/U_SKCRLZ.pas create mode 100644 应收应付/U_SKCROLJ.dfm create mode 100644 应收应付/U_SKCROLJ.pas create mode 100644 应收应付/U_SKCR_Gd.dfm create mode 100644 应收应付/U_SKCR_Gd.pas create mode 100644 应收应付/U_SXCKNewList.dfm create mode 100644 应收应付/U_SXCKNewList.pas create mode 100644 应收应付/U_YFCR.dfm create mode 100644 应收应付/U_YFCR.pas create mode 100644 应收应付/U_YFCRLZ.dfm create mode 100644 应收应付/U_YFCRLZ.pas create mode 100644 应收应付/U_YFCRLZQty.dfm create mode 100644 应收应付/U_YFCRLZQty.pas create mode 100644 应收应付/U_YFCRLZView.dfm create mode 100644 应收应付/U_YFCRLZView.pas create mode 100644 应收应付/U_YFCRYCL.dfm create mode 100644 应收应付/U_YFCRYCL.pas create mode 100644 应收应付/U_YFFKList.dfm create mode 100644 应收应付/U_YFFKList.pas create mode 100644 应收应付/U_YFFP.dfm create mode 100644 应收应付/U_YFFP.pas create mode 100644 应收应付/U_YFMXlist.dfm create mode 100644 应收应付/U_YFMXlist.pas create mode 100644 应收应付/U_YFZDList_MX.dfm create mode 100644 应收应付/U_YFZDList_MX.pas create mode 100644 应收应付/U_YKHXList.dfm create mode 100644 应收应付/U_YKHXList.pas create mode 100644 应收应付/U_YPCR.dfm create mode 100644 应收应付/U_YPCR.pas create mode 100644 应收应付/U_YSCR.dfm create mode 100644 应收应付/U_YSCR.pas create mode 100644 应收应付/U_YSCRJZC.dfm create mode 100644 应收应付/U_YSCRJZC.pas create mode 100644 应收应付/U_YSCRLZ.dfm create mode 100644 应收应付/U_YSCRLZ.pas create mode 100644 应收应付/U_YSCROL.dfm create mode 100644 应收应付/U_YSCROL.pas create mode 100644 应收应付/U_YSCR_Gd.dfm create mode 100644 应收应付/U_YSCR_Gd.pas create mode 100644 应收应付/U_YSFP.dfm create mode 100644 应收应付/U_YSFP.pas create mode 100644 应收应付/U_YSHZMX.dfm create mode 100644 应收应付/U_YSHZMX.pas create mode 100644 应收应付/U_YSHZMXDL.dfm create mode 100644 应收应付/U_YSHZMXDL.pas create mode 100644 应收应付/U_YSHZMXOLJ.dfm create mode 100644 应收应付/U_YSHZMXOLJ.pas create mode 100644 应收应付/U_YSHZMXView.dfm create mode 100644 应收应付/U_YSHZMXView.pas create mode 100644 应收应付/U_YSMXlist.dfm create mode 100644 应收应付/U_YSMXlist.pas create mode 100644 应收应付/U_YSSCList.dfm create mode 100644 应收应付/U_YSSCList.pas create mode 100644 应收应付/U_YSSKList.dfm create mode 100644 应收应付/U_YSSKList.pas create mode 100644 应收应付/U_YSYGGJList.dfm create mode 100644 应收应付/U_YSYGGJList.pas create mode 100644 应收应付/U_YSZDList_MX.dfm create mode 100644 应收应付/U_YSZDList_MX.pas create mode 100644 应收应付/U_ZdyAttachCP.dfm create mode 100644 应收应付/U_ZdyAttachCP.pas create mode 100644 应收应付/U_ZdyAttachGYS.dfm create mode 100644 应收应付/U_ZdyAttachGYS.pas create mode 100644 应收应付/U_ZdyAttachment.dfm create mode 100644 应收应付/U_ZdyAttachment.pas create mode 100644 应收应付/U_skHx.dfm create mode 100644 应收应付/U_skHx.pas create mode 100644 应收应付/U_testdll.dfm create mode 100644 应收应付/U_testdll.pas create mode 100644 应收应付/YSYF.cfg create mode 100644 应收应付/YSYF.dof create mode 100644 应收应付/YSYF.dpr create mode 100644 应收应付/YSYF.res create mode 100644 应收应付/testDll.cfg create mode 100644 应收应付/testDll.dpr create mode 100644 应收应付/testDll.res create mode 100644 成品仓库/CPCK.cfg create mode 100644 成品仓库/CPCK.dof create mode 100644 成品仓库/CPCK.dpr create mode 100644 成品仓库/CPCK.rar create mode 100644 成品仓库/CPCK.res create mode 100644 成品仓库/ProjectGroup1.bpg create mode 100644 成品仓库/ProjectGroup1.~bpg create mode 100644 成品仓库/SYSTEMSET.ini create mode 100644 成品仓库/U_BJGCl.dfm create mode 100644 成品仓库/U_BJGCl.pas create mode 100644 成品仓库/U_BpCk.dfm create mode 100644 成品仓库/U_BpCk.pas create mode 100644 成品仓库/U_BpJylist.dfm create mode 100644 成品仓库/U_BpJylist.pas create mode 100644 成品仓库/U_BpRk.dfm create mode 100644 成品仓库/U_BpRk.pas create mode 100644 成品仓库/U_BpRklist.dfm create mode 100644 成品仓库/U_BpRklist.pas create mode 100644 成品仓库/U_BpSmCk.dfm create mode 100644 成品仓库/U_BpSmCk.pas create mode 100644 成品仓库/U_BpSmRk.dfm create mode 100644 成品仓库/U_BpSmRk.pas create mode 100644 成品仓库/U_BpckXjList.dfm create mode 100644 成品仓库/U_BpckXjList.pas create mode 100644 成品仓库/U_Bpcklist.dfm create mode 100644 成品仓库/U_Bpcklist.pas create mode 100644 成品仓库/U_Bpkclist.dfm create mode 100644 成品仓库/U_Bpkclist.pas create mode 100644 成品仓库/U_Bpkclist_HZ.dfm create mode 100644 成品仓库/U_Bpkclist_HZ.pas create mode 100644 成品仓库/U_CPKWListSel.dfm create mode 100644 成品仓库/U_CPKWListSel.pas create mode 100644 成品仓库/U_DataLink.dfm create mode 100644 成品仓库/U_DataLink.pas create mode 100644 成品仓库/U_GetDllForm.pas create mode 100644 成品仓库/U_JGCklistSel.dfm create mode 100644 成品仓库/U_JGCklistSel.pas create mode 100644 成品仓库/U_PackList.dfm create mode 100644 成品仓库/U_ProductOrderNewList.dfm create mode 100644 成品仓库/U_ProductOrderNewList.pas create mode 100644 成品仓库/U_ProductOrderNewListSEl.dfm create mode 100644 成品仓库/U_ProductOrderNewListSEl.pas create mode 100644 成品仓库/U_ZdyAttachCP.dfm create mode 100644 成品仓库/U_ZdyAttachCP.pas create mode 100644 成品仓库/U_ZdyAttachGYS.dfm create mode 100644 成品仓库/U_ZdyAttachGYS.pas create mode 100644 成品仓库/U_ZdyAttachment.dfm create mode 100644 成品仓库/U_ZdyAttachment.pas create mode 100644 成品仓库/U_ZdyCMZ_Sel.dfm create mode 100644 成品仓库/U_ZdyCMZ_Sel.pas create mode 100644 成品仓库/U_ZdyYS_Sel.dfm create mode 100644 成品仓库/U_ZdyYS_Sel.pas create mode 100644 成品仓库/U_testdll.dfm create mode 100644 成品仓库/U_testdll.pas create mode 100644 成品仓库/consvr.ini create mode 100644 成品仓库/testDll.cfg create mode 100644 成品仓库/testDll.dof create mode 100644 成品仓库/testDll.dpr create mode 100644 成品仓库/testDll.res create mode 100644 艾登贸易管理/AES.pas create mode 100644 艾登贸易管理/ElAES.pas create mode 100644 艾登贸易管理/FieldExportSet/.INI create mode 100644 艾登贸易管理/FieldExportSet/检验分析订单.INI create mode 100644 艾登贸易管理/FieldExportSet/检验报告.INI create mode 100644 艾登贸易管理/FieldExportSet/生产指示单列表.INI create mode 100644 艾登贸易管理/FieldExportSet/订生产指示单排版列表.INI create mode 100644 艾登贸易管理/FieldExportSet/采购单列表.INI create mode 100644 艾登贸易管理/File.INI create mode 100644 艾登贸易管理/OrderManage.dof create mode 100644 艾登贸易管理/ProjectGroup1.bpg create mode 100644 艾登贸易管理/ProjectGroup1.~bpg create mode 100644 艾登贸易管理/RCInspection.cfg create mode 100644 艾登贸易管理/RCInspection.dof create mode 100644 艾登贸易管理/RCInspection.res create mode 100644 艾登贸易管理/SYSTEMSET.ini create mode 100644 艾登贸易管理/TradeManage.cfg create mode 100644 艾登贸易管理/TradeManage.dof create mode 100644 艾登贸易管理/TradeManage.dpr create mode 100644 艾登贸易管理/TradeManage.rar create mode 100644 艾登贸易管理/TradeManage.res create mode 100644 艾登贸易管理/U.dfm create mode 100644 艾登贸易管理/U.pas create mode 100644 艾登贸易管理/U_BanCpCkSaoM.dfm create mode 100644 艾登贸易管理/U_BanCpCkSaoM.pas create mode 100644 艾登贸易管理/U_BanCpHCSaoM.dfm create mode 100644 艾登贸易管理/U_BanCpHCSaoM.pas create mode 100644 艾登贸易管理/U_BangAdd.dfm create mode 100644 艾登贸易管理/U_BangAdd.pas create mode 100644 艾登贸易管理/U_BefChkHX.dfm create mode 100644 艾登贸易管理/U_BefChkHX.pas create mode 100644 艾登贸易管理/U_CKJYList.dfm create mode 100644 艾登贸易管理/U_CKJYList.pas create mode 100644 艾登贸易管理/U_CKProductBCPHCList.dfm create mode 100644 艾登贸易管理/U_CKProductBCPHCList.pas create mode 100644 艾登贸易管理/U_CKProductBCPInList.dfm create mode 100644 艾登贸易管理/U_CKProductBCPInList.pas create mode 100644 艾登贸易管理/U_CKProductBCPKC.dfm create mode 100644 艾登贸易管理/U_CKProductBCPKC.pas create mode 100644 艾登贸易管理/U_CKProductBCPKCHZList.dfm create mode 100644 艾登贸易管理/U_CKProductBCPKCHZList.pas create mode 100644 艾登贸易管理/U_CKProductBCPKCList.dfm create mode 100644 艾登贸易管理/U_CKProductBCPKCList.pas create mode 100644 艾登贸易管理/U_CKProductBCPOutList.dfm create mode 100644 艾登贸易管理/U_CKProductBCPOutList.pas create mode 100644 艾登贸易管理/U_CKProductCKHZList.dfm create mode 100644 艾登贸易管理/U_CKProductCKHZList.pas create mode 100644 艾登贸易管理/U_CKProductRKHZList.dfm create mode 100644 艾登贸易管理/U_CKProductRKHZList.pas create mode 100644 艾登贸易管理/U_CKYCLKC.dfm create mode 100644 艾登贸易管理/U_CKYCLKC.pas create mode 100644 艾登贸易管理/U_CPDBAO.dfm create mode 100644 艾登贸易管理/U_CPDBAO.pas create mode 100644 艾登贸易管理/U_CPGangNo.dfm create mode 100644 艾登贸易管理/U_CPGangNo.pas create mode 100644 艾登贸易管理/U_ClothContractInPut.dfm create mode 100644 艾登贸易管理/U_ClothContractInPut.pas create mode 100644 艾登贸易管理/U_ClothContractInPutHZ.dfm create mode 100644 艾登贸易管理/U_ClothContractInPutHZ.pas create mode 100644 艾登贸易管理/U_ClothContractInPutPB.dfm create mode 100644 艾登贸易管理/U_ClothContractInPutPB.pas create mode 100644 艾登贸易管理/U_ClothContractInPutSX.dfm create mode 100644 艾登贸易管理/U_ClothContractInPutSX.pas create mode 100644 艾登贸易管理/U_ClothContractInPutSXMX.dfm create mode 100644 艾登贸易管理/U_ClothContractInPutSXMX.pas create mode 100644 艾登贸易管理/U_ClothContractKCList.dfm create mode 100644 艾登贸易管理/U_ClothContractKCList.pas create mode 100644 艾登贸易管理/U_ClothContractList.dfm create mode 100644 艾登贸易管理/U_ClothContractList.pas create mode 100644 艾登贸易管理/U_ClothContractListDH.dfm create mode 100644 艾登贸易管理/U_ClothContractListDH.pas create mode 100644 艾登贸易管理/U_ClothContractListDHSX.dfm create mode 100644 艾登贸易管理/U_ClothContractListDHSX.pas create mode 100644 艾登贸易管理/U_ClothContractListDHSXQJG.dfm create mode 100644 艾登贸易管理/U_ClothContractListDHSXQJG.pas create mode 100644 艾登贸易管理/U_ClothContractListHZ.dfm create mode 100644 艾登贸易管理/U_ClothContractListHZ.pas create mode 100644 艾登贸易管理/U_ClothContractListLL.dfm create mode 100644 艾登贸易管理/U_ClothContractListLL.pas create mode 100644 艾登贸易管理/U_ClothContractListLLSX.dfm create mode 100644 艾登贸易管理/U_ClothContractListLLSX.pas create mode 100644 艾登贸易管理/U_ClothContractListLLSXQJG.dfm create mode 100644 艾登贸易管理/U_ClothContractListLLSXQJG.pas create mode 100644 艾登贸易管理/U_ClothContractListSX.dfm create mode 100644 艾登贸易管理/U_ClothContractListSX.pas create mode 100644 艾登贸易管理/U_ClothContractListWJG.dfm create mode 100644 艾登贸易管理/U_ClothContractListWJG.pas create mode 100644 艾登贸易管理/U_ClothHCList.dfm create mode 100644 艾登贸易管理/U_ClothHCList.pas create mode 100644 艾登贸易管理/U_ClothPDInfoList.dfm create mode 100644 艾登贸易管理/U_ClothPDInfoList.pas create mode 100644 艾登贸易管理/U_ClothSCListZDSel.dfm create mode 100644 艾登贸易管理/U_ClothSCListZDSel.pas create mode 100644 艾登贸易管理/U_ConInPut.dfm create mode 100644 艾登贸易管理/U_ConInPut.pas create mode 100644 艾登贸易管理/U_ConInPutJG.dfm create mode 100644 艾登贸易管理/U_ConInPutJG.pas create mode 100644 艾登贸易管理/U_ConInPutNX.dfm create mode 100644 艾登贸易管理/U_ConInPutNX.pas create mode 100644 艾登贸易管理/U_ContractList.dfm create mode 100644 艾登贸易管理/U_ContractList.pas create mode 100644 艾登贸易管理/U_ContractListJG.dfm create mode 100644 艾登贸易管理/U_ContractListJG.pas create mode 100644 艾登贸易管理/U_ContractListNX.dfm create mode 100644 艾登贸易管理/U_ContractListNX.pas create mode 100644 艾登贸易管理/U_Contract_Main.dfm create mode 100644 艾登贸易管理/U_Contract_Main.pas create mode 100644 艾登贸易管理/U_Contract_Sub.dfm create mode 100644 艾登贸易管理/U_Contract_Sub.pas create mode 100644 艾登贸易管理/U_CpCkSaoMNew.dfm create mode 100644 艾登贸易管理/U_CpCkSaoMNew.pas create mode 100644 艾登贸易管理/U_CpCkSaoMNewSel.dfm create mode 100644 艾登贸易管理/U_CpCkSaoMNewSel.pas create mode 100644 艾登贸易管理/U_CpRkSaoMNew.dfm create mode 100644 艾登贸易管理/U_CpRkSaoMNew.pas create mode 100644 艾登贸易管理/U_CpRkSaoMNewDB.dfm create mode 100644 艾登贸易管理/U_CpRkSaoMNewDB.pas create mode 100644 艾登贸易管理/U_DataLink.dfm create mode 100644 艾登贸易管理/U_DataLink.pas create mode 100644 艾登贸易管理/U_FanYangList.dfm create mode 100644 艾登贸易管理/U_FanYangList.pas create mode 100644 艾登贸易管理/U_FanYangListHZ.dfm create mode 100644 艾登贸易管理/U_FanYangListHZ.pas create mode 100644 艾登贸易管理/U_FanYangList_Sub.dfm create mode 100644 艾登贸易管理/U_FanYangList_Sub.pas create mode 100644 艾登贸易管理/U_FjList_RZ.dfm create mode 100644 艾登贸易管理/U_FjList_RZ.pas create mode 100644 艾登贸易管理/U_GetDllForm.pas create mode 100644 艾登贸易管理/U_GetPGJBInList.dfm create mode 100644 艾登贸易管理/U_GetPGJBInList.pas create mode 100644 艾登贸易管理/U_GetPGJBOneTwoInList.dfm create mode 100644 艾登贸易管理/U_GetPGJBOneTwoInList.pas create mode 100644 艾登贸易管理/U_HCList.dfm create mode 100644 艾登贸易管理/U_HCList.pas create mode 100644 艾登贸易管理/U_JBData.dfm create mode 100644 艾登贸易管理/U_JBData.pas create mode 100644 艾登贸易管理/U_JYMJIDPRINT.dfm create mode 100644 艾登贸易管理/U_JYMJIDPRINT.pas create mode 100644 艾登贸易管理/U_JYOrderCDMore.dfm create mode 100644 艾登贸易管理/U_JYOrderCDMore.pas create mode 100644 艾登贸易管理/U_JYOrderCDOne.dfm create mode 100644 艾登贸易管理/U_JYOrderCDOne.pas create mode 100644 艾登贸易管理/U_JYResult.dfm create mode 100644 艾登贸易管理/U_JYResult.pas create mode 100644 艾登贸易管理/U_JiangLiaoSet.dfm create mode 100644 艾登贸易管理/U_JiangLiaoSet.pas create mode 100644 艾登贸易管理/U_LabelAdd.dfm create mode 100644 艾登贸易管理/U_LabelAdd.pas create mode 100644 艾登贸易管理/U_LabelList.dfm create mode 100644 艾登贸易管理/U_LabelList.pas create mode 100644 艾登贸易管理/U_LabelListts.dfm create mode 100644 艾登贸易管理/U_LabelListts.pas create mode 100644 艾登贸易管理/U_LabelPrint.dfm create mode 100644 艾登贸易管理/U_LabelPrint.pas create mode 100644 艾登贸易管理/U_MJEdit.dfm create mode 100644 艾登贸易管理/U_MJEdit.pas create mode 100644 艾登贸易管理/U_MJManage.dfm create mode 100644 艾登贸易管理/U_MJManage.pas create mode 100644 艾登贸易管理/U_MJManageNew.dfm create mode 100644 艾登贸易管理/U_MJManageNew.pas create mode 100644 艾登贸易管理/U_MJManageNewFD1.dfm create mode 100644 艾登贸易管理/U_MJManageNewFD1.pas create mode 100644 艾登贸易管理/U_MJManageNewFDNew.dfm create mode 100644 艾登贸易管理/U_MJManageNewFDNew.pas create mode 100644 艾登贸易管理/U_MJManageNewFDNew1.dfm create mode 100644 艾登贸易管理/U_MJManageNewFDNew1.pas create mode 100644 艾登贸易管理/U_ModulePromptList.dfm create mode 100644 艾登贸易管理/U_ModulePromptList.pas create mode 100644 艾登贸易管理/U_OrderAttachment.dfm create mode 100644 艾登贸易管理/U_OrderAttachment.pas create mode 100644 艾登贸易管理/U_OrderInPut.dfm create mode 100644 艾登贸易管理/U_OrderInPut.pas create mode 100644 艾登贸易管理/U_OrderInPutJZC.dfm create mode 100644 艾登贸易管理/U_OrderInPutJZC.pas create mode 100644 艾登贸易管理/U_OrderInPutNew.dfm create mode 100644 艾登贸易管理/U_OrderInPutNew.pas create mode 100644 艾登贸易管理/U_OrderInPutZP.dfm create mode 100644 艾登贸易管理/U_OrderInPutZP.pas create mode 100644 艾登贸易管理/U_OrderInPutZPLNew.dfm create mode 100644 艾登贸易管理/U_OrderInPutZPLNew.pas create mode 100644 艾登贸易管理/U_OrderInPutZPNew.dfm create mode 100644 艾登贸易管理/U_OrderInPutZPNew.pas create mode 100644 艾登贸易管理/U_OrderInPut_CY.dfm create mode 100644 艾登贸易管理/U_OrderInPut_CY.pas create mode 100644 艾登贸易管理/U_OrderInPut_FB.dfm create mode 100644 艾登贸易管理/U_OrderInPut_FB.pas create mode 100644 艾登贸易管理/U_OrderInPut_HYWT.dfm create mode 100644 艾登贸易管理/U_OrderInPut_HYWT.pas create mode 100644 艾登贸易管理/U_OrderJD.dfm create mode 100644 艾登贸易管理/U_OrderJD.pas create mode 100644 艾登贸易管理/U_OrderJDList.dfm create mode 100644 艾登贸易管理/U_OrderJDList.pas create mode 100644 艾登贸易管理/U_OrderSel.dfm create mode 100644 艾登贸易管理/U_OrderSel.pas create mode 100644 艾登贸易管理/U_OrderSelRK.dfm create mode 100644 艾登贸易管理/U_OrderSelRK.pas create mode 100644 艾登贸易管理/U_OrderStatus.dfm create mode 100644 艾登贸易管理/U_OrderStatus.pas create mode 100644 艾登贸易管理/U_OrderSubFH.dfm create mode 100644 艾登贸易管理/U_OrderSubFH.pas create mode 100644 艾登贸易管理/U_OrderSubKC.dfm create mode 100644 艾登贸易管理/U_OrderSubKC.pas create mode 100644 艾登贸易管理/U_ProductOrderAnPai.dfm create mode 100644 艾登贸易管理/U_ProductOrderAnPai.pas create mode 100644 艾登贸易管理/U_ProductOrderAnPaiGQX.dfm create mode 100644 艾登贸易管理/U_ProductOrderAnPaiGQX.pas create mode 100644 艾登贸易管理/U_ProductOrderLBNameSet.dfm create mode 100644 艾登贸易管理/U_ProductOrderLBNameSet.pas create mode 100644 艾登贸易管理/U_ProductOrderLBNameSetFZ.dfm create mode 100644 艾登贸易管理/U_ProductOrderLBNameSetFZ.pas create mode 100644 艾登贸易管理/U_ProductOrderList.dfm create mode 100644 艾登贸易管理/U_ProductOrderList.pas create mode 100644 艾登贸易管理/U_ProductOrderListNew.dfm create mode 100644 艾登贸易管理/U_ProductOrderListNew.pas create mode 100644 艾登贸易管理/U_ProductOrderListNewCK.dfm create mode 100644 艾登贸易管理/U_ProductOrderListNewCK.pas create mode 100644 艾登贸易管理/U_ProductOrderListNewCKMX.dfm create mode 100644 艾登贸易管理/U_ProductOrderListNewCKMX.pas create mode 100644 艾登贸易管理/U_ProductOrderListSel.dfm create mode 100644 艾登贸易管理/U_ProductOrderListSel.pas create mode 100644 艾登贸易管理/U_ProductOrderNewList.dfm create mode 100644 艾登贸易管理/U_ProductOrderNewList.pas create mode 100644 艾登贸易管理/U_ProductOrderNewListSubZD.dfm create mode 100644 艾登贸易管理/U_ProductOrderNewListSubZD.pas create mode 100644 艾登贸易管理/U_ProductOrderNewList_CY.dfm create mode 100644 艾登贸易管理/U_ProductOrderNewList_CY.pas create mode 100644 艾登贸易管理/U_ProductOrderNewList_CY_Sel.dfm create mode 100644 艾登贸易管理/U_ProductOrderNewList_CY_Sel.pas create mode 100644 艾登贸易管理/U_ProductOrderNewList_FB.dfm create mode 100644 艾登贸易管理/U_ProductOrderNewList_FB.pas create mode 100644 艾登贸易管理/U_ProductOrderNewList_JD.dfm create mode 100644 艾登贸易管理/U_ProductOrderNewList_JD.pas create mode 100644 艾登贸易管理/U_ProductOrderNewList_JD_copy1.dfm create mode 100644 艾登贸易管理/U_ProductOrderNewList_JD_copy1.pas create mode 100644 艾登贸易管理/U_ProductOrderNewList_PB.dfm create mode 100644 艾登贸易管理/U_ProductOrderNewList_PB.pas create mode 100644 艾登贸易管理/U_ProductOrderSel.dfm create mode 100644 艾登贸易管理/U_ProductOrderSel.pas create mode 100644 艾登贸易管理/U_ProductOrder_CX.dfm create mode 100644 艾登贸易管理/U_ProductOrder_CX.pas create mode 100644 艾登贸易管理/U_ProductionAnPai.dfm create mode 100644 艾登贸易管理/U_ProductionAnPai.pas create mode 100644 艾登贸易管理/U_ProductionAnPaiNew.dfm create mode 100644 艾登贸易管理/U_ProductionAnPaiNew.pas create mode 100644 艾登贸易管理/U_SCGYSet.dfm create mode 100644 艾登贸易管理/U_SCGYSet.pas create mode 100644 艾登贸易管理/U_SMLB.dfm create mode 100644 艾登贸易管理/U_SMLB.pas create mode 100644 艾登贸易管理/U_SetBanZu.dfm create mode 100644 艾登贸易管理/U_SetBanZu.pas create mode 100644 艾登贸易管理/U_StopWorkInPut.dfm create mode 100644 艾登贸易管理/U_StopWorkInPut.pas create mode 100644 艾登贸易管理/U_StopWorkList.dfm create mode 100644 艾登贸易管理/U_StopWorkList.pas create mode 100644 艾登贸易管理/U_ZJManage.dfm create mode 100644 艾登贸易管理/U_ZJManage.pas create mode 100644 艾登贸易管理/U_ZJManageNew.dfm create mode 100644 艾登贸易管理/U_ZJManageNew.pas create mode 100644 艾登贸易管理/U_ZJManageNewFD.dfm create mode 100644 艾登贸易管理/U_ZJManageNewFD.pas create mode 100644 艾登贸易管理/U_ZJManageNewFDMORE.dfm create mode 100644 艾登贸易管理/U_ZJManageNewFDMORE.pas create mode 100644 艾登贸易管理/U_ZdyAttachCP.dfm create mode 100644 艾登贸易管理/U_ZdyAttachCP.pas create mode 100644 艾登贸易管理/U_ZdyAttachGYS.dfm create mode 100644 艾登贸易管理/U_ZdyAttachGYS.pas create mode 100644 艾登贸易管理/U_ZdyAttachGYS_help.dfm create mode 100644 艾登贸易管理/U_ZdyAttachGYS_help.pas create mode 100644 艾登贸易管理/U_ZdyAttachment.dfm create mode 100644 艾登贸易管理/U_ZdyAttachment.pas create mode 100644 艾登贸易管理/U_ZdyCMZ_Sel.dfm create mode 100644 艾登贸易管理/U_ZdyCMZ_Sel.pas create mode 100644 艾登贸易管理/U_ZdyYS_Sel.dfm create mode 100644 艾登贸易管理/U_ZdyYS_Sel.pas create mode 100644 艾登贸易管理/U_iniParam.pas create mode 100644 艾登贸易管理/U_orderInPut_HYWT_Sub.dfm create mode 100644 艾登贸易管理/U_orderInPut_HYWT_Sub.pas create mode 100644 艾登贸易管理/U_testdll.dfm create mode 100644 艾登贸易管理/U_testdll.pas create mode 100644 艾登贸易管理/WFBOrder.cfg create mode 100644 艾登贸易管理/WFBOrder.dof create mode 100644 艾登贸易管理/WFBOrder.res create mode 100644 艾登贸易管理/WFBProduction.cfg create mode 100644 艾登贸易管理/WFBProduction.dof create mode 100644 艾登贸易管理/WFBProduction.res create mode 100644 艾登贸易管理/testDll.cfg create mode 100644 艾登贸易管理/testDll.dof create mode 100644 艾登贸易管理/testDll.dpr create mode 100644 艾登贸易管理/testDll.res diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..cbd176d --- /dev/null +++ b/.gitignore @@ -0,0 +1,16 @@ +**/layout +**/report +**/实施文件 +**/image +**/doc +**/wav +**/__history +**/__recovery +*.dll +*.exe +*.ddp +*.dcu +*.~pas +*.~dfm +*.~ddp +*.~dpr \ No newline at end of file diff --git a/坯布仓库/BPCK.cfg b/坯布仓库/BPCK.cfg new file mode 100644 index 0000000..7876259 --- /dev/null +++ b/坯布仓库/BPCK.cfg @@ -0,0 +1,42 @@ +-$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"c:\program files (x86)\borland\delphi7\Projects\Bpl" +-LN"c:\program files (x86)\borland\delphi7\Projects\Bpl" +-U"D:\ͨERP" +-O"D:\ͨERP" +-I"D:\ͨERP" +-R"D:\ͨERP" +-w-UNSAFE_TYPE +-w-UNSAFE_CODE +-w-UNSAFE_CAST diff --git a/坯布仓库/BPCK.dof b/坯布仓库/BPCK.dof new file mode 100644 index 0000000..658b7f5 --- /dev/null +++ b/坯布仓库/BPCK.dof @@ -0,0 +1,138 @@ +[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=D:\ͨERP +Packages=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;dclOffice2k;Rave50CLX;Rave50VCL +Conditionals= +DebugSourceDirs= +UsePackages=0 +[Parameters] +RunParams= +HostApplication=D:\Ŀ\Ŀ\\ֿ\testDll.exe +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= +[Excluded Packages] +c:\program files\borland\delphi7\Bin\DBWEBXPRT.BPL=Borland Web Wizard Package diff --git a/坯布仓库/BPCK.dpr b/坯布仓库/BPCK.dpr new file mode 100644 index 0000000..b50a53d --- /dev/null +++ b/坯布仓库/BPCK.dpr @@ -0,0 +1,67 @@ +library BPCK; + +uses + SysUtils, + classes, + forms, + WinTypes, + WinProcs, + U_DataLink in 'U_DataLink.pas' {BPCK_DataLink: TDataModule}, + U_GetDllForm in 'U_GetDllForm.pas', + U_Fun10 in '..\..\..\ThreeFun\Fun\U_Fun10.pas', + U_BpRklist in 'U_BpRklist.pas' {frmBpRklist}, + U_BpCk in 'U_BpCk.pas' {frmbpCk}, + U_BpGdCklist in 'U_BpGdCklist.pas' {frmBpGdCklist}, + U_BpRk in 'U_BpRk.pas' {frmbpRk}, + U_ZDYHelp in '..\..\..\ThreeFun\Form\U_ZDYHelp.pas' {frmZDYHelp}, + U_ProductOrderNewListSEl in 'U_ProductOrderNewListSEl.pas' {frmProductOrderNewListSEl}, + U_ZdyAttachCP in 'U_ZdyAttachCP.pas' {frmZdyAttachCP}, + U_ZdyAttachGYS in 'U_ZdyAttachGYS.pas' {frmZdyAttachGYS}, + U_ZdyAttachment in 'U_ZdyAttachment.pas' {frmZdyAttachment}, + U_BpGdCkEdit in 'U_BpGdCkEdit.pas' {frmBpGdCkEdit}, + U_Fun in '..\..\..\ThreeFun\Fun\U_Fun.pas', + U_SelExportField in '..\..\..\ThreeFun\Form\U_SelExportField.pas' {frmSelExportField}, + U_SelPrintField in '..\..\..\ThreeFun\Form\U_SelPrintField.pas' {frmSelPrintField}, + U_SelPrintFieldNew in '..\..\..\ThreeFun\Form\U_SelPrintFieldNew.pas' {frmSelPrintFieldNew}, + U_ColumnSet in '..\..\..\ThreeFun\Form\U_ColumnSet.pas' {frmColumnSet}, + U_ColumnBandSet in '..\..\..\ThreeFun\Form\U_ColumnBandSet.pas' {frmColumnBandSet}, + U_BpJGlist in 'U_BpJGlist.pas' {frmBpJGlist}, + U_Bpkclist in 'U_Bpkclist.pas' {frmBpkclist}, + U_BpCklist in 'U_BpCklist.pas' {frmBpCklist}, + U_CPKWListSel in 'U_CPKWListSel.pas' {frmCPKWListSel}, + U_CPCKMXLR in 'U_CPCKMXLR.pas' {frmCPCKMXLR}, + U_ZdyYS_Sel in 'U_ZdyYS_Sel.pas' {frmZdyYS_Sel}; + +// U_SelfForm in '..\..\SelfForm\U_SelfForm.pas', + // U_SelExportField in '..\..\SelfForm\U_SelExportField.pas' {frmSelExportField}, + // U_SelPrintField in '..\..\SelfForm\U_SelPrintField.pas' {frmSelPrintField}, + // U_SelPrintFieldNew in '..\..\SelfForm\U_SelPrintFieldNew.pas' {frmSelPrintFieldNew}, + //U_FormPas in '..\CommonPas\formPas\U_FormPas.pas', + //U_CxGridSet in '..\CommonPas\cxgridPas\U_CxGridSet.pas'; + +//U_RSFormPas in '..\CommonPas\RSCommon\U_RSFormPas.pas'; + +{$R *.res} + +procedure DllEnterPoint(dwReason: DWORD);far;stdcall; +begin + DLLProc := @DLLEnterPoint; + DllEnterPoint(DLL_PROCESS_ATTACH); +end; + +procedure DLLUnloadProc(Reason: Integer); register; +begin +// if (Reason = DLL_PROCESS_DETACH) or (Reason=DLL_THREAD_DETACH) then +// Application:=NewDllApp; +end; +exports + GetDllForm; +begin + try + NewDllApp:=Application; + DLLProc := @DLLUnloadProc; + except + + end; +end. + diff --git a/坯布仓库/BPCK.res b/坯布仓库/BPCK.res new file mode 100644 index 0000000000000000000000000000000000000000..2d6f24c3d9a870364649288b1c0306b551768325 GIT binary patch literal 876 zcmaJ=Jx{|h5Pc?9%tTwkz(g}L7BMg|6oiDt01W(ruz1OWgw!H+AXAn~{FzE^Brlox z9gK_}J0Q&SIVr99IQ9AN-MzD~Rtx|M;amX24SU~e>Jc?cYMoANyAd5SNQg5+p~aQP zp5HA8_(Prt$CV+GqpB(v{1D!`;JAjld@@+K+i61a|MTdsd{~!%b1ms_KJEh}cpe(` z6jA?@e29>sU}iiwp;b>~TL@2U!O)h%Yr)7`8+a;b=@mD^tI-VbODr7!U{0?gh%d@~e3Ro)^HNMvvU1UHt)HYrq~&L`&fQ16Y1SeYiaObZ>3v kZ4W@7aBc_JIL8%khzs1(H@5yR{A*B1l9s#*|B4j80N@tIJOBUy literal 0 HcmV?d00001 diff --git a/坯布仓库/ProjectGroup1.bpg b/坯布仓库/ProjectGroup1.bpg new file mode 100644 index 0000000..7a8a674 --- /dev/null +++ b/坯布仓库/ProjectGroup1.bpg @@ -0,0 +1,23 @@ +#------------------------------------------------------------------------------ +VERSION = BWS.01 +#------------------------------------------------------------------------------ +!ifndef ROOT +ROOT = $(MAKEDIR)\.. +!endif +#------------------------------------------------------------------------------ +MAKE = $(ROOT)\bin\make.exe -$(MAKEFLAGS) -f$** +DCC = $(ROOT)\bin\dcc32.exe $** +BRCC = $(ROOT)\bin\brcc32.exe $** +#------------------------------------------------------------------------------ +PROJECTS = testDll.exe BPCK.dll +#------------------------------------------------------------------------------ +default: $(PROJECTS) +#------------------------------------------------------------------------------ + +testDll.exe: testDll.dpr + $(DCC) + +BPCK.dll: BPCK.dpr + $(DCC) + + diff --git a/坯布仓库/ProjectGroup1.~bpg b/坯布仓库/ProjectGroup1.~bpg new file mode 100644 index 0000000..b27dbcb --- /dev/null +++ b/坯布仓库/ProjectGroup1.~bpg @@ -0,0 +1,23 @@ +#------------------------------------------------------------------------------ +VERSION = BWS.01 +#------------------------------------------------------------------------------ +!ifndef ROOT +ROOT = $(MAKEDIR)\.. +!endif +#------------------------------------------------------------------------------ +MAKE = $(ROOT)\bin\make.exe -$(MAKEFLAGS) -f$** +DCC = $(ROOT)\bin\dcc32.exe $** +BRCC = $(ROOT)\bin\brcc32.exe $** +#------------------------------------------------------------------------------ +PROJECTS = testDll.exe BaseData.dll +#------------------------------------------------------------------------------ +default: $(PROJECTS) +#------------------------------------------------------------------------------ + +testDll.exe: testDll.dpr + $(DCC) + +BaseData.dll: BaseData.dpr + $(DCC) + + diff --git a/坯布仓库/SYSTEMSET.ini b/坯布仓库/SYSTEMSET.ini new file mode 100644 index 0000000..e4904d4 --- /dev/null +++ b/坯布仓库/SYSTEMSET.ini @@ -0,0 +1,3 @@ +[SERVER] +ַ=127.0.0.1 +=XXXXXXX1 \ No newline at end of file diff --git a/坯布仓库/U_BpCk.dfm b/坯布仓库/U_BpCk.dfm new file mode 100644 index 0000000..ec1d78f --- /dev/null +++ b/坯布仓库/U_BpCk.dfm @@ -0,0 +1,459 @@ +object frmbpCk: TfrmbpCk + Left = 198 + Top = 152 + Width = 1038 + Height = 530 + BorderIcons = [biSystemMenu] + Caption = #20986#24211#20449#24687 + 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 + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1022 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 29 + Width = 1022 + Height = 44 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 36 + Top = 20 + Width = 52 + Height = 12 + Caption = #20986#24211#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 416 + Top = 20 + Width = 52 + Height = 12 + Caption = #20986#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 232 + Top = 20 + Width = 26 + Height = 12 + Caption = #20179#24211 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 616 + Top = 20 + Width = 26 + Height = 12 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object CRTime: TDateTimePicker + Left = 88 + Top = 16 + Width = 100 + Height = 20 + Date = 41509.970132187500000000 + Format = 'yyyy-MM-dd' + Time = 41509.970132187500000000 + TabOrder = 0 + end + object CRType: TComboBox + Left = 472 + Top = 16 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 1 + Text = #38144#21806#20986#24211 + Items.Strings = ( + #38144#21806#20986#24211 + #21152#24037#20986#24211) + end + object ckName: TComboBox + Left = 260 + Top = 16 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 2 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object Tocust: TBtnEditA + Left = 644 + Top = 16 + Width = 121 + Height = 20 + TabOrder = 3 + OnBtnClick = TocustBtnClick + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 102 + Width = 1022 + Height = 311 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1RollNum + end + item + Kind = skSum + Column = v1Qty + end + item + Kind = skSum + Column = v1Column2 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = BPCK_DataLink.Default + object v1Column6: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column6PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column3: TcxGridDBColumn + Caption = #21152#24037#21378 + DataBinding.FieldName = 'factoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column4: TcxGridDBColumn + Caption = #20379#24212#21830 + DataBinding.FieldName = 'cust' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1MJID: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 75 + end + object v1MJXH: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 60 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1P_CodeNamePropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1P_SPEC: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'P_SPEC' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 90 + end + object v1P_Color: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column7: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'gangNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1P_MF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'P_MF' + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1P_KZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'P_KZ' + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1CPType: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'CPType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1RollNum: TcxGridDBColumn + Caption = #35745#21010#21305#25968 + DataBinding.FieldName = 'JHRollNum' + HeaderAlignmentHorz = taCenter + Styles.Content = BPCK_DataLink.FontBlue + Styles.Footer = BPCK_DataLink.FontBlue + Styles.Header = BPCK_DataLink.FontBlue + Width = 58 + end + object v1Qty: TcxGridDBColumn + Caption = #35745#21010#25968#37327 + DataBinding.FieldName = 'JHQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1QtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Content = BPCK_DataLink.FontBlue + Styles.Footer = BPCK_DataLink.FontBlue + Styles.Header = BPCK_DataLink.FontBlue + Width = 58 + end + object v1QtyUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'KG') + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1QtyPropertiesEditValueChanged + Visible = False + HeaderAlignmentHorz = taCenter + Width = 66 + end + object v1Column2: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'money' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = BPCK_DataLink.cxStyle_fontclPurple + Styles.Footer = BPCK_DataLink.cxStyle_fontclPurple + Styles.Header = BPCK_DataLink.cxStyle_fontclPurple + Width = 80 + end + object v1Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 132 + end + object v1Column5: TcxGridDBColumn + DataBinding.FieldName = 'KCID' + Visible = False + HeaderAlignmentHorz = taCenter + VisibleForCustomization = False + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 73 + Width = 1022 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 3 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #22797#21046 + ImageIndex = 108 + OnClick = ToolButton3Click + end + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 292 + Top = 8 + end + object ADOQueryTmp: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 340 + Top = 8 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 400 + Top = 9 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 17 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 736 + Top = 57 + end +end diff --git a/坯布仓库/U_BpCk.pas b/坯布仓库/U_BpCk.pas new file mode 100644 index 0000000..cea4279 --- /dev/null +++ b/坯布仓库/U_BpCk.pas @@ -0,0 +1,1113 @@ +unit U_BpCk; + +interface + +uses + Windows, Messages, SysUtils, StrUtils, Variants, Classes, Graphics, Controls, + Forms, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGridLevel, cxClasses, cxControls, cxGridCustomView, + cxGrid, StdCtrls, ComCtrls, ExtCtrls, ToolWin, cxButtonEdit, cxDropDownEdit, + DBClient, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, BtnEdit, cxTextEdit, + cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; + +type + TfrmbpCk = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + CRTime: TDateTimePicker; + Label2: TLabel; + CRType: TComboBox; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1P_SPEC: TcxGridDBColumn; + v1P_MF: TcxGridDBColumn; + v1P_KZ: TcxGridDBColumn; + v1RollNum: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1QtyUnit: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + cxGridPopupMenu1: TcxGridPopupMenu; + v1MJID: TcxGridDBColumn; + v1MJXH: TcxGridDBColumn; + v1CPType: TcxGridDBColumn; + ckName: TComboBox; + Label4: TLabel; + v1P_Color: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + ToolButton3: TToolButton; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + Label3: TLabel; + Tocust: TBtnEditA; + procedure FormDestroy(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure v1P_CodeNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure v1QtyPropertiesEditValueChanged(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure v1Column6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure TocustBtnClick(Sender: TObject); + private + fmainID, fsubID: string; + procedure InitGrid(); + function savedate(): Boolean; + function saveCPRK(): Boolean; + procedure SetComboBox(); + function YSData(): Boolean; + function YFData(): Boolean; + function YFData10(): Boolean; + { Private declarations } + public + fkeyNO: string; + FType: integer; + fCKName: string; + { Public declarations } + end; + +var + frmbpCk: TfrmbpCk; + +implementation + +uses + U_DataLink, U_Fun10, U_ZDYHelp, U_Bpkclist, U_ProductOrderNewList, + U_ZdyAttachGYS, U_ProductOrderNewListSEl, U_ZdyAttachment; +{$R *.dfm} + +function TfrmbpCk.YSData(): Boolean; +var + CRID, YFID, Price, PriceUnit, OrderUnit, FComTaiTou: string; +begin + Result := False; + with ADOQueryTmp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName=''' + Trim(Tocust.Text) + ''' and YFDefFlag1=0 '); + Open; + end; + + if not ADOQueryTmp.IsEmpty then + begin + CRID := ADOQueryTmp.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID := ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('FactoryName').Value := Trim(Tocust.Text); + FieldByName('ZdyStr1').Value := 'Ӧ'; + Post; + end; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + // sql.Add(' and subID='''+Trim(CDS_Main.fieldbyname('CRID').AsString)+''''); + sql.Add(' and YFName='''' '); + execsql; + end; + + with ADOQueryTmp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + // sql.Add(' and subID='''+Trim(CDS_Main.fieldbyname('CRID').AsString)+''''); + sql.Add(' and YFName='''' '); + Open; + end; + + if ADOQueryTmp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd, YFID, 'CF', 'YF_Money_CR', 3, 1) = False then + begin + Application.MessageBox('ȡӦʧ!', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value := Trim(YFID); + FieldByName('YFTypeId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('CRType').Value := 'ӦտǼ'; + FieldByName('CRFlag').Value := 'Ӧ'; + FieldByName('QtyFlag').Value := 1; + FieldByName('FactoryName').Value := Tocust.Text; + FieldByName('CRTime').Value := Trim(FormatDateTime('yyyy-MM-dd', CRTime.DateTime)); + FieldByName('YFType').Value := 'Զ'; + FieldByName('ps').Value := -CDS_Main.fieldbyname('RollNum').AsFloat; + FieldByName('Qty').Value := CDS_Main.fieldbyname('Qty').AsFloat; + FieldByName('Price').Value := CDS_Main.fieldbyname('Price').AsFloat; + FieldByName('Money').Value := CDS_Main.fieldbyname('Money').AsFloat; + FieldByName('BBMoney').Value := CDS_Main.fieldbyname('Money').AsFloat; + FieldByName('HuiLv').Value := 1; + FieldByName('BZType').Value := ''; + FieldByName('QtyUnit').Value := Trim(CDS_Main.fieldbyname('QtyUnit').AsString); + FieldByName('ComTaiTou').Value := Tocust.Text; + FieldByName('YFName').Value := ''; + FieldByName('MainId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + FieldByName('subID').Value := Trim(CDS_Main.fieldbyname('CRID').AsString); + FieldByName('status').Value := '0'; + Post; + end; + end + else + begin + YFID := Trim(ADOQueryTmp.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set ps=(select isnull(Sum(RollNum),0) from BP_Inout A where A.CRNO=YF_Money_CR.MainId)'); + sql.Add(',Qty=(select isnull(Sum(Qty),0) from BP_Inout A where A.CRNO=YF_Money_CR.MainId)'); + sql.Add(',money=(select isnull(Sum(Qty),0) from BP_Inout A where A.CRNO=YF_Money_CR.MainId)*price'); + sql.Add(',BBmoney=(select isnull(Sum(Qty),0) from BP_Inout A where A.CRNO=YF_Money_CR.MainId)*price'); + sql.Add(' where CRID=' + CRID); + ExecSQL; + end; + Result := True; +end; + +function TfrmbpCk.YFData10(): Boolean; +var + CRID, YFID, Price, PriceUnit, OrderUnit, FComTaiTou: string; +begin + Result := False; + with ADOQueryTmp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName=''' + Trim(CDS_Main.fieldbyname('factoryName').AsString) + ''' and YFDefFlag1=0 '); + Open; + end; + + if not ADOQueryTmp.IsEmpty then + begin + CRID := ADOQueryTmp.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID := ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('FactoryName').Value := Trim(CDS_Main.fieldbyname('factoryName').AsString); + FieldByName('ZdyStr1').Value := 'Ӧ'; + Post; + end; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + sql.Add(' and subID=''' + Trim(CDS_Main.fieldbyname('CRID').AsString) + ''''); + sql.Add(' and YFName=''ӹ'' '); + execsql; + end; + + with ADOQueryTmp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + sql.Add(' and subID=''' + Trim(CDS_Main.fieldbyname('CRID').AsString) + ''''); + sql.Add(' and YFName=''ӹ'' '); + Open; + end; + + if ADOQueryTmp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd, YFID, 'CF', 'YF_Money_CR', 3, 1) = False then + begin + Application.MessageBox('ȡӦʧ!', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value := Trim(YFID); + FieldByName('YFTypeId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('CRType').Value := 'ӦǼ'; + FieldByName('CRFlag').Value := 'Ӧ'; + FieldByName('QtyFlag').Value := 1; + FieldByName('FactoryName').Value := CDS_Main.fieldbyname('factoryName').AsString; + FieldByName('CRTime').Value := Trim(FormatDateTime('yyyy-MM-dd', CRTime.DateTime)); + FieldByName('YFType').Value := 'Զ'; + FieldByName('ps').Value := CDS_Main.fieldbyname('RollNum').AsFloat; + FieldByName('Qty').Value := CDS_Main.fieldbyname('Qty').AsFloat; + FieldByName('Price').Value := CDS_Main.fieldbyname('Price').AsFloat; + FieldByName('Money').Value := CDS_Main.fieldbyname('Money').AsFloat; + FieldByName('BBMoney').Value := CDS_Main.fieldbyname('Money').AsFloat; + FieldByName('HuiLv').Value := 1; + FieldByName('BZType').Value := ''; + FieldByName('QtyUnit').Value := Trim(CDS_Main.fieldbyname('QtyUnit').AsString); + FieldByName('ComTaiTou').Value := CDS_Main.fieldbyname('factoryName').AsString; + FieldByName('YFName').Value := 'ӹ'; + FieldByName('MainId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + FieldByName('subID').Value := Trim(CDS_Main.fieldbyname('CRID').AsString); + FieldByName('status').Value := '0'; + Post; + end; + end + else + begin + YFID := Trim(ADOQueryTmp.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID=' + CRID); + ExecSQL; + end; + + Result := True; +end; + +function TfrmbpCk.saveCPRK(): Boolean; +var + fkcID: integer; + fcprkNo: string; + finoutNo: string; +begin + result := false; + try + if GetLSNo(ADOQueryCmd, fcprkNo, 'RK', 'CP_InOut', 3, 1) = False then + begin + Application.MessageBox('ȡʧ!', 'ʾ', 0); + Exit; + end; + finoutNo := 'R' + Trim(RightBStr(fcprkNo, Length(fcprkNo) - 2)); + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from CP_InOut'); + sql.Add('where fromMainID=' + quotedstr(trim(CDS_Main.fieldbyname('CRNO').AsString))); + sql.Add('and fromsubID=' + quotedstr(trim(CDS_Main.fieldbyname('CRID').AsString))); + execsql; + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from CP_kc'); + sql.Add('where fromMainID=' + quotedstr(trim(CDS_Main.fieldbyname('CRNO').AsString))); + sql.Add('and fromsubID=' + quotedstr(trim(CDS_Main.fieldbyname('CRID').AsString))); + execsql; + end; + with CDS_Main do + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.add('Update CP_Kcid Set kcid=kcid+1'); + sql.Add('select kcid from CP_Kcid'); + Open; + end; + fkcID := ADOQueryCmd.fieldbyname('kcid').AsInteger; + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from CP_InOut'); + sql.Add('where 1=2 '); + open; + end; + + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('CRNO').Value := trim(fcprkNo); + ADOQueryCmd.FieldByName('CRID').Value := 1; + ADOQueryCmd.FieldByName('custName').Value := trim(fieldbyname('factoryName').AsString); + + ADOQueryCmd.FieldByName('CRTime').Value := formatdateTime('yyyy-MM-dd', CRTIme.Date); + ADOQueryCmd.FieldByName('CKName').Value := 'Ʒֿ'; + ADOQueryCmd.FieldByName('CRType').Value := 'ӹ'; + ADOQueryCmd.FieldByName('CRFlag').Value := ''; + ADOQueryCmd.FieldByName('mainID').Value := trim(fieldbyname('mainID').AsString); + ADOQueryCmd.FieldByName('subID').Value := trim(fieldbyname('subID').AsString); + ADOQueryCmd.FieldByName('MJID').Value := trim(fieldbyname('MJID').AsString); + ADOQueryCmd.FieldByName('batchNo').Value := ''; + ADOQueryCmd.FieldByName('MJXH').Value := trim(fieldbyname('MJXH').AsString); + ADOQueryCmd.FieldByName('CPTYPE').Value := trim(fieldbyname('CPTYPE').AsString); + ADOQueryCmd.FieldByName('P_Code').Value := trim(fieldbyname('P_Code').AsString); + ADOQueryCmd.FieldByName('P_CodeName').Value := trim(fieldbyname('P_CodeName').AsString); + ADOQueryCmd.FieldByName('P_spec').Value := trim(fieldbyname('P_spec').AsString); + ADOQueryCmd.FieldByName('P_Color').Value := trim(fieldbyname('P_Color').AsString); + ADOQueryCmd.FieldByName('P_MF').Value := fieldbyname('P_MF').AsFloat; + ADOQueryCmd.FieldByName('P_KZ').Value := fieldbyname('P_KZ').AsFloat; + ADOQueryCmd.FieldByName('RollNum').Value := self.CDS_Main.fieldbyname('RollNum').AsFloat; + ADOQueryCmd.FieldByName('Qty').Value := self.CDS_Main.fieldbyname('Qty').AsFloat; + ADOQueryCmd.FieldByName('QtyUnit').Value := trim(fieldbyname('QtyUnit').AsString); + ADOQueryCmd.FieldByName('Price').Value := fieldbyname('price').AsFloat; + ADOQueryCmd.FieldByName('money').Value := fieldbyname('money').AsFloat; + ADOQueryCmd.FieldByName('note').Value := trim(fieldbyname('note').AsString); + ADOQueryCmd.FieldByName('Filler').Value := trim(DName); + // ADOQueryCmd.FieldByName('FillTime').Value:=date(); + ADOQueryCmd.FieldByName('InOutNo').Value := trim(finoutNo); + ADOQueryCmd.FieldByName('fromMainID').Value := trim(fieldbyname('CRNO').AsString); + ADOQueryCmd.FieldByName('fromsubID').Value := trim(fieldbyname('CRID').AsString); + ADOQueryCmd.FieldByName('kcID').Value := fkcID; + ADOQueryCmd.Post; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from CP_KC'); + sql.Add('where 1=2 '); + open; + end; + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('kcID').Value := fkcID; + ADOQueryCmd.FieldByName('CKName').Value := 'Ʒֿ'; + ADOQueryCmd.FieldByName('CRNO').Value := trim(fcprkNo); + ADOQueryCmd.FieldByName('CRID').Value := 1; + ADOQueryCmd.FieldByName('CRTime').Value := formatdateTime('yyyy-MM-dd', CRTIme.Date); + ADOQueryCmd.FieldByName('CRType').Value := 'ӹ'; + ADOQueryCmd.FieldByName('CRFlag').Value := ''; + ADOQueryCmd.FieldByName('mainID').Value := trim(fieldbyname('mainID').AsString); + ADOQueryCmd.FieldByName('subID').Value := trim(fieldbyname('subID').AsString); + ADOQueryCmd.FieldByName('MJXH').Value := trim(fieldbyname('MJXH').AsString); + ADOQueryCmd.FieldByName('MJID').Value := trim(fieldbyname('MJID').AsString); + ADOQueryCmd.FieldByName('CPType').Value := trim(fieldbyname('CPType').AsString); + ADOQueryCmd.FieldByName('P_Code').Value := trim(fieldbyname('P_Code').AsString); + ADOQueryCmd.FieldByName('P_CodeName').Value := trim(fieldbyname('P_CodeName').AsString); + ADOQueryCmd.FieldByName('P_spec').Value := trim(fieldbyname('P_spec').AsString); + ADOQueryCmd.FieldByName('P_Color').Value := trim(fieldbyname('P_Color').AsString); + ADOQueryCmd.FieldByName('P_MF').Value := fieldbyname('P_MF').AsFloat; + ADOQueryCmd.FieldByName('P_KZ').Value := fieldbyname('P_KZ').AsFloat; + ADOQueryCmd.FieldByName('RollNum').Value := self.CDS_Main.fieldbyname('RollNum').AsFloat; + ADOQueryCmd.FieldByName('Qty').Value := self.CDS_Main.fieldbyname('Qty').AsFloat; + ADOQueryCmd.FieldByName('QtyUnit').Value := trim(fieldbyname('QtyUnit').AsString); + ADOQueryCmd.FieldByName('fromMainID').Value := trim(fieldbyname('CRNO').AsString); + ADOQueryCmd.FieldByName('fromsubID').Value := trim(fieldbyname('CRID').AsString); + ADOQueryCmd.FieldByName('kcID').Value := fkcID; + ADOQueryCmd.Post; + end; + result := true; + except + + end; +end; + +function TfrmbpCk.YFData(): Boolean; +var + CRID, YFID, Price, PriceUnit, OrderUnit, FComTaiTou: string; +begin + Result := False; + with ADOQueryTmp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName=''' + Trim(CDS_Main.fieldbyname('cust').AsString) + ''' and YFDefFlag1=0 '); + Open; + end; + + if not ADOQueryTmp.IsEmpty then + begin + CRID := ADOQueryTmp.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID := ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('FactoryName').Value := Trim(CDS_Main.fieldbyname('cust').AsString); + FieldByName('ZdyStr1').Value := 'Ӧ'; + Post; + end; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + // sql.Add(' and subID='''+Trim(CDS_Main.fieldbyname('CRID').AsString)+''''); + sql.Add(' and YFName=''˻'' '); + execsql; + end; + + with ADOQueryTmp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + // sql.Add(' and subID='''+Trim(CDS_Main.fieldbyname('CRID').AsString)+''''); + sql.Add(' and YFName=''˻'' '); + Open; + end; + + if ADOQueryTmp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd, YFID, 'CF', 'YF_Money_CR', 3, 1) = False then + begin + Application.MessageBox('ȡӦʧ!', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value := Trim(YFID); + FieldByName('YFTypeId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('CRType').Value := 'ӦǼ'; + FieldByName('CRFlag').Value := 'Ӧ'; + FieldByName('QtyFlag').Value := 1; + FieldByName('FactoryName').Value := CDS_Main.fieldbyname('cust').AsString; + FieldByName('CRTime').Value := Trim(FormatDateTime('yyyy-MM-dd', CRTime.DateTime)); + FieldByName('YFType').Value := 'Զ'; + FieldByName('ps').Value := -1 * CDS_Main.fieldbyname('RollNum').AsFloat; + FieldByName('Qty').Value := -1 * CDS_Main.fieldbyname('Qty').AsFloat; + FieldByName('Price').Value := CDS_Main.fieldbyname('Price').AsFloat; + FieldByName('Money').Value := -1 * CDS_Main.fieldbyname('Money').AsFloat; + FieldByName('BBMoney').Value := -1 * CDS_Main.fieldbyname('Money').AsFloat; + FieldByName('HuiLv').Value := 1; + FieldByName('BZType').Value := ''; + FieldByName('QtyUnit').Value := Trim(CDS_Main.fieldbyname('QtyUnit').AsString); + FieldByName('ComTaiTou').Value := CDS_Main.fieldbyname('cust').AsString; + FieldByName('YFName').Value := '˻'; + FieldByName('MainId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + FieldByName('subID').Value := Trim(CDS_Main.fieldbyname('CRID').AsString); + FieldByName('status').Value := '0'; + Post; + end; + end + else + begin + YFID := Trim(ADOQueryTmp.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set ps=(select isnull(Sum(RollNum),0) from BP_Inout A where A.CRNO=YF_Money_CR.MainId)'); + sql.Add(',Qty=(select isnull(Sum(Qty),0) from BP_Inout A where A.CRNO=YF_Money_CR.MainId)'); + sql.Add(',money=(select isnull(Sum(Qty),0) from BP_Inout A where A.CRNO=YF_Money_CR.MainId)*price'); + sql.Add(',BBmoney=(select isnull(Sum(Qty),0) from BP_Inout A where A.CRNO=YF_Money_CR.MainId)*price'); + sql.Add(' where CRID=' + CRID); + ExecSQL; + end; + + Result := True; +end; + +procedure TfrmbpCk.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCK'' '); + if trim(fCKName) <> '' then + sql.Add('and zdyName=' + quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count > 0 then + ckName.ItemIndex := 0; + + CRType.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCKTYPE'''); + if trim(fCKName) <> '' then + sql.Add('and note=' + quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count > 0 then + CRType.ItemIndex := 0; +end; + +function TfrmbpCk.savedate(): Boolean; +var + fkcID: integer; + Filler: string; + FillTime: TdateTime; + maxno: string; +begin + result := false; + try + ADOQueryCmd.Connection.BeginTrans; + if FType = 0 then + begin + if GetLSNo(ADOQueryCmd, fkeyNO, 'BC', 'BP_InOut', 3, 1) = False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!', 'ʾ', 0); + Exit; + end; + Filler := DName; + FillTime := SGetServerDateTime(adoqueryTmp); + end + else + begin + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from BP_InOut'); + sql.Add('where CRNO=' + quotedstr(trim(fkeyNO))); + open; + Filler := adoqueryTmp.fieldbyname('Filler').AsString; + FillTime := adoqueryTmp.fieldbyname('FillTime').AsDateTime; + end; + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update BP_kc set RollNum=A.RollNum + B.RollNum, Qty=A.Qty + B.Qty '); + sql.Add('from BP_kc A'); + sql.Add('inner join BP_INout B on B.kcid=A.kcid'); + sql.Add('where B.CRNO=' + quotedstr(trim(fkeyNO))); + execsql; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID=' + quotedstr(trim(fkeyNO))); + // sql.Add(' and subID='''+Trim(CDS_Main.fieldbyname('CRID').AsString)+''''); + // sql.Add(' and YFName=''ӹ'' '); + execsql; + end; + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from BP_InOut'); + sql.Add('where CRNO=' + quotedstr(trim(fkeyNO))); + execsql; + end; + CDS_Main.DisableControls; + CDS_Main.First; + with CDS_Main do + begin + while not eof do + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from BP_InOut'); + sql.Add('where 1=2 '); + open; + end; + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('CRNO').Value := trim(fkeyNO); + ADOQueryCmd.FieldByName('CRID').Value := recNo; + ADOQueryCmd.FieldByName('CKName').Value := trim(CKName.Text); + ADOQueryCmd.FieldByName('cust').Value := trim(fieldbyname('cust').AsString); + ADOQueryCmd.FieldByName('Tocust').Value := trim(Tocust.Text); + ADOQueryCmd.FieldByName('factoryName').Value := trim(fieldbyname('factoryName').AsString); + ADOQueryCmd.FieldByName('mainID').Value := trim(fieldbyname('mainID').AsString); + ADOQueryCmd.FieldByName('subID').Value := trim(fieldbyname('subID').AsString); + ADOQueryCmd.FieldByName('CRTime').Value := formatdateTime('yyyy-MM-dd', CRTIme.Date); + ADOQueryCmd.FieldByName('CRType').Value := trim(CRType.Text); + ADOQueryCmd.FieldByName('CRFlag').Value := ''; + ADOQueryCmd.FieldByName('MJID').Value := trim(fieldbyname('MJID').AsString); + ADOQueryCmd.FieldByName('MJXH').Value := trim(fieldbyname('MJXH').AsString); + ADOQueryCmd.FieldByName('CPTYPE').Value := trim(fieldbyname('CPTYPE').AsString); + ADOQueryCmd.FieldByName('P_Code').Value := trim(fieldbyname('P_Code').AsString); + ADOQueryCmd.FieldByName('P_CodeName').Value := trim(fieldbyname('P_CodeName').AsString); + ADOQueryCmd.FieldByName('P_spec').Value := trim(fieldbyname('P_spec').AsString); + ADOQueryCmd.FieldByName('P_Color').Value := trim(fieldbyname('P_Color').AsString); + ADOQueryCmd.FieldByName('gangNo').Value := trim(fieldbyname('gangNo').AsString); + ADOQueryCmd.FieldByName('P_MF').Value := fieldbyname('P_MF').AsFloat; + ADOQueryCmd.FieldByName('P_KZ').Value := fieldbyname('P_KZ').AsFloat; + ADOQueryCmd.FieldByName('JHRollNum').Value := fieldbyname('JHRollNum').AsFloat; + ADOQueryCmd.FieldByName('JHQty').Value := fieldbyname('JHQty').AsFloat; + ADOQueryCmd.FieldByName('RollNum').Value := fieldbyname('RollNum').AsFloat; + ADOQueryCmd.FieldByName('Qty').Value := fieldbyname('Qty').AsFloat; + ADOQueryCmd.FieldByName('QtyUnit').Value := trim(fieldbyname('QtyUnit').AsString); + ADOQueryCmd.FieldByName('price').Value := fieldbyname('price').AsFloat; + ADOQueryCmd.FieldByName('money').Value := fieldbyname('money').AsFloat; + ADOQueryCmd.FieldByName('note').Value := trim(fieldbyname('note').AsString); + ADOQueryCmd.FieldByName('Filler').Value := trim(Filler); + ADOQueryCmd.FieldByName('FillTime').Value := dateTimetostr(FillTime); + // ADOQueryCmd.FieldByName('FirstNo').Value:=trim(FirstName.TxtCode); + // ADOQueryCmd.FieldByName('FirstName').Value:=trim(FirstName.Text); + if FType = 1 then + begin + ADOQueryCmd.FieldByName('editer').Value := trim(dName); + ADOQueryCmd.FieldByName('editTime').Value := SGetServerDateTime(adoqueryTmp); + end; + ADOQueryCmd.FieldByName('kcID').Value := FieldByName('kcID').AsInteger; + ADOQueryCmd.Post; + + edit; + FieldByName('CRNO').Value := trim(fkeyNO); + FieldByName('CRID').Value := recNo; + FieldByName('mainID').Value := trim(fmainID); + FieldByName('subID').Value := trim(fsubID); + post; + + { IF trim(CRType.Text)='ӹ' then + begin + if not saveCPRK() then + begin + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + exit; + end; + if not YFData10() then + begin + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + exit; + end; + end; + + IF trim(CRType.Text)='˻' then + begin + if not YFData() then + begin + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + exit; + end; + end; } + + next; + end; + if trim(CRType.Text) = '˻' then + begin + if not YFData() then + begin + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + exit; + end; + end; + if trim(CRType.Text) = '۳' then + begin + if not YSData() then + begin + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + exit; + end; + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add(' update BP_kc SET RollNum=RollNum-(select SUM(RollNUM) from BP_INout X where X.KCID=BP_kc.KCID and X.CRNo=''' + trim(fkeyNO) + ''' ), '); + sql.Add(' Qty=Qty-(select SUM(Qty) from BP_INout X where X.KCID=BP_kc.KCID and X.CRNo=''' + trim(fkeyNO) + ''' ) '); + sql.Add(' where exists(select KCID from BP_INout X where X.KCID=BP_kc.KCID and X.CRNO=''' + trim(fkeyNO) + ''' )'); + // sql.Add('update BP_kc set RollNum=A.RollNum - B.RollNum, Qty=A.Qty - B.Qty '); + // sql.Add('from BP_kc A'); + // sql.Add('inner join BP_INout B on B.kcid=A.kcid'); + // sql.Add('where B.CRNO='+quotedstr(trim(fkeyNO))); + execsql; + end; + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update BP_kc set RollNum=1'); + sql.Add('from BP_kc A'); + sql.Add('where A.RollNum=0 and A.Qty<>0 '); + execsql; + end; + + end; + CDS_Main.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + result := true; + except + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; + +procedure TfrmbpCk.InitGrid(); +begin + try + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select A.*,'); + sql.Add('orderNo=(select Top 1 orderNo from JYOrder_Main X where X.MainID=A.MainID )'); + sql.Add('from BP_InOut A '); + sql.Add('where A.CRNO=' + quotedstr(trim(fkeyNO))); + open; + end; + SCreateCDS20(adoqueryTmp, CDS_Main); + SInitCDSData20(adoqueryTmp, CDS_Main); + if not CDS_Main.IsEmpty then + begin + CRTime.Date := CDS_Main.fieldbyname('CRTime').AsDateTime; + CKName.ItemIndex := CKName.Items.IndexOf(trim(CDS_Main.fieldbyname('CKName').AsString)); + CRType.ItemIndex := CRType.Items.IndexOf(trim(CDS_Main.fieldbyname('CRType').AsString)); + Tocust.text := CDS_Main.fieldbyname('Tocust').AsString; + // FirstName.TxtCode:=trim(CDS_Main.fieldbyname('FirstNo').AsString); + // FirstName.Text:=trim(CDS_Main.fieldbyname('FirstName').AsString); + end; + finally + end; +end; + +procedure TfrmbpCk.FormDestroy(Sender: TObject); +begin + frmbpCk := nil; +end; + +procedure TfrmbpCk.FormCreate(Sender: TObject); +begin + CRTime.Date := DServerDate; + cxGrid1.Align := alclient; + readCxGrid(self.Caption + '1', Tv1, 'ƥֿ'); + fmainID := ''; + fsubID := ''; +end; + +procedure TfrmbpCk.FormClose(Sender: TObject; var Action: TCloseAction); +begin + writeCxGrid(self.Caption + '1', Tv1, 'ƥֿ'); + Action := cahide; +end; + +procedure TfrmbpCk.FormShow(Sender: TObject); +begin + SetComboBox(); + InitGrid(); +end; + +procedure TfrmbpCk.TBSaveClick(Sender: TObject); +begin + if cds_main.IsEmpty then + exit; + CRTime.SetFocus; + if trim(CRType.Text) = '' then + begin + application.MessageBox('ͲΪգ', 'ʾϢ', 0); + exit; + end; + + if (trim(CRType.Text) = '۳') and (trim(Tocust.Text) = '') then + begin + application.MessageBox('۳⣬ͻΪգ', 'ʾϢ', 0); + exit; + end; + + if cds_main.Locate('QtyUnit', '', []) then + begin + application.MessageBox('λΪգ', 'ʾϢ', 0); + exit; + end; + if cds_main.Locate('QtyUnit', NULL, []) then + begin + application.MessageBox('λΪգ', 'ʾϢ', 0); + exit; + end; + + if savedate() then + begin + application.MessageBox('ݱɹ', 'ʾϢ'); + ModalResult := 1; + end + else + begin + application.MessageBox('ݱʧܣ', 'ʾϢ', MB_ICONERROR); + end; +end; + +procedure TfrmbpCk.v1P_CodeNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'Cloth'; + flagname := ''; + if ShowModal = 1 then + begin + Self.CDS_Main.Edit; + Self.CDS_Main.FieldByName('P_CodeName').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.CDS_Main.FieldByName('P_Code').Value := Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmbpCk.ToolButton1Click(Sender: TObject); +begin + frmBpkclist := TfrmBpkclist.create(self); + with frmBpkclist do + begin + fType := 10; + fckName := self.fckName; + if showmodal = 1 then + begin + cds_main.DisableControls; + cds_main.First; + while not cds_main.Eof do + begin + if (cds_main.fieldbyname('ssel').AsBoolean) and (not self.cds_main.Locate('kcid', cds_main.fieldbyname('kcid').AsInteger, [])) then + begin + self.cds_main.Append; + self.cds_main.FieldByName('kcid').Value := trim(cds_main.fieldbyname('kcid').AsString); + self.cds_main.FieldByName('cust').Value := trim(cds_main.fieldbyname('cust').AsString); + self.cds_main.FieldByName('factoryName').Value := trim(cds_main.fieldbyname('factoryName').AsString); + self.cds_main.FieldByName('MJID').Value := trim(cds_main.fieldbyname('MJID').AsString); + self.cds_main.FieldByName('MJXH').Value := trim(cds_main.fieldbyname('MJXH').AsString); + self.cds_main.FieldByName('CPTYPE').Value := trim(cds_main.fieldbyname('CPTYPE').AsString); + self.cds_main.FieldByName('P_Code').Value := trim(cds_main.fieldbyname('P_Code').AsString); + self.cds_main.FieldByName('P_CodeName').Value := trim(cds_main.fieldbyname('P_CodeName').AsString); + self.cds_main.FieldByName('P_spec').Value := trim(cds_main.fieldbyname('P_spec').AsString); + self.cds_main.FieldByName('P_Color').Value := trim(cds_main.fieldbyname('P_Color').AsString); + self.cds_main.FieldByName('gangNo').Value := trim(cds_main.fieldbyname('gangNo').AsString); + self.cds_main.FieldByName('P_MF').Value := cds_main.fieldbyname('P_MF').AsFloat; + self.cds_main.FieldByName('P_KZ').Value := cds_main.fieldbyname('P_KZ').AsFloat; + self.cds_main.FieldByName('JHRollNum').Value := cds_main.fieldbyname('RollNum').AsFloat; + self.cds_main.FieldByName('JHQty').Value := cds_main.fieldbyname('Qty').AsFloat; + self.cds_main.FieldByName('QtyUnit').Value := trim(cds_main.fieldbyname('QtyUnit').AsString); + self.cds_main.Post; + end; + cds_main.Next; + end; + cds_main.EnableControls; + end; + free; + end; + +end; + +procedure TfrmbpCk.ToolButton2Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then + exit; + CDS_Main.Delete; +end; + +procedure TfrmbpCk.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmbpCk.v1QtyPropertiesEditValueChanged(Sender: TObject); +var + fieldname: string; + num1: double; +begin + fieldname := Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + with CDS_Main do + begin + Edit; + FieldByName(Trim(fieldname)).Value := TcxTextEdit(Sender).EditingText; + num1 := FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat; + FieldByName('Money').Value := strtofloat(format('%.2f', [num1])); + Post; + end; + Tv1.Controller.EditingController.ShowEdit(); + +end; + +procedure TfrmbpCk.ToolButton3Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then + exit; + CopyAddRow(Tv1, CDS_Main); +end; + +procedure TfrmbpCk.v1Column6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + frmProductOrderNewListSEl := TfrmProductOrderNewListSEl.create(self); + with frmProductOrderNewListSEl do + begin + if showmodal = 1 then + begin + CDS_Main.Edit; + CDS_Main.FieldByName('orderNo').Value := trim(order_main.fieldbyname('orderNo').asstring); + CDS_Main.FieldByName('mainID').Value := trim(order_main.fieldbyname('mainID').asstring); + CDS_Main.FieldByName('subID').Value := trim(order_main.fieldbyname('subID').asstring); + CDS_Main.post; + end; + free; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmbpCk.v1Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + frmZdyAttachGYS := TfrmZdyAttachGYS.create(self); + with frmZdyAttachGYS do + begin + if showmodal = 1 then + begin + CDS_Main.Edit; + CDS_Main.FieldByName('factoryName').Value := trim(CDS_HZ.fieldbyname('ZDYName').asstring); + CDS_Main.post; + end; + free; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmbpCk.TocustBtnClick(Sender: TObject); +begin + try + frmZdyAttachment := TfrmZdyAttachment.Create(Application); + with frmZdyAttachment do + begin + if ShowModal = 1 then + begin + Tocust.Text := Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + // custaddress.Text:=Trim(CDS_HZ.fieldbyname('defnote1').AsString); + end; + end; + finally + frmZdyAttachment.Free; + end; +end; + +end. + diff --git a/坯布仓库/U_BpCklist.dfm b/坯布仓库/U_BpCklist.dfm new file mode 100644 index 0000000..ba88a63 --- /dev/null +++ b/坯布仓库/U_BpCklist.dfm @@ -0,0 +1,678 @@ +object frmBpCklist: TfrmBpCklist + Left = 241 + Top = 146 + Width = 1193 + Height = 578 + Caption = #20986#24211#21015#34920 + 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 Label7: TLabel + Left = 800 + Top = 48 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1177 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 107 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#35810 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + Visible = False + end + object TBAdd: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object TBDel: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20316#24223 + ImageIndex = 17 + OnClick = TBDelClick + end + object TBcdel: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 107 + OnClick = TBcdelClick + end + object TBExport: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 441 + Top = 0 + AutoSize = True + Caption = #25171#21360#20986#24211#30721#21333 + ImageIndex = 12 + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 552 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1177 + Height = 65 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #20986#24211#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 64 + Top = 37 + Width = 13 + Height = 12 + Caption = #33267 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 432 + Top = 16 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 432 + Top = 40 + Width = 54 + Height = 12 + Caption = #39068' '#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 220 + Top = 16 + Width = 52 + Height = 12 + Caption = #20986#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 296 + Top = 92 + Width = 24 + Height = 12 + Caption = #20179#24211 + end + object Label8: TLabel + Left = 644 + Top = 40 + Width = 39 + Height = 12 + Caption = #21152#24037#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 644 + Top = 16 + Width = 39 + Height = 12 + Caption = #20379#24212#21830 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 220 + Top = 40 + Width = 53 + Height = 12 + Caption = #35746' '#21333' '#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 840 + Top = 16 + Width = 26 + Height = 12 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object P_CodeName: TEdit + Tag = 2 + Left = 488 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = P_CodeNameChange + end + object P_Color: TEdit + Tag = 2 + Left = 488 + Top = 36 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = P_CodeNameChange + end + object CRType: TComboBox + Tag = 2 + Left = 276 + Top = 12 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 4 + OnChange = P_CodeNameChange + Items.Strings = ( + '' + #38144#21806#20986#24211 + #21152#24037#20986#24211) + end + object ckName: TComboBox + Left = 332 + Top = 88 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 5 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object cust: TEdit + Tag = 2 + Left = 688 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 6 + OnChange = P_CodeNameChange + end + object factoryName: TEdit + Tag = 2 + Left = 688 + Top = 36 + Width = 100 + Height = 20 + TabOrder = 7 + OnChange = P_CodeNameChange + end + object orderNo: TEdit + Tag = 2 + Left = 276 + Top = 36 + Width = 100 + Height = 20 + TabOrder = 8 + OnChange = P_CodeNameChange + end + object tocust: TEdit + Tag = 2 + Left = 872 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 9 + OnChange = P_CodeNameChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 117 + Width = 1177 + Height = 384 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1RollNum + end + item + Kind = skSum + Column = v1Qty + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = BPCK_DataLink.Default + object v1Column1: TcxGridDBColumn + Caption = #20986#24211#21333#21495 + DataBinding.FieldName = 'CRNO' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1CRTime: TcxGridDBColumn + Caption = #20986#24211#26085#26399 + DataBinding.FieldName = 'CRTime' + Width = 71 + end + object v1CRType: TcxGridDBColumn + Caption = #20986#24211#31867#22411 + DataBinding.FieldName = 'CRType' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v1Column3: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column5: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'tocust' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object v1Column2: TcxGridDBColumn + Caption = #21152#24037#21378 + DataBinding.FieldName = 'factoryName' + HeaderAlignmentHorz = taCenter + Width = 100 + end + object v1customerNoname: TcxGridDBColumn + Caption = #20379#24212#21830 + DataBinding.FieldName = 'cust' + HeaderAlignmentHorz = taCenter + Width = 100 + end + object v1MJID: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1MJXH: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column4: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'gangNo' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 108 + end + object v1P_SPEC: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'P_SPEC' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 80 + end + object v1P_Color: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + HeaderAlignmentHorz = taCenter + Width = 91 + end + object v1P_MF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'P_MF' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1P_KZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'P_KZ' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1CPTYPE: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'CPTYPE' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1RollNum: TcxGridDBColumn + Caption = #35745#21010#21305#25968 + DataBinding.FieldName = 'JHRollNum' + HeaderAlignmentHorz = taCenter + Styles.Content = BPCK_DataLink.FontBlue + Styles.Footer = BPCK_DataLink.FontBlue + Styles.Header = BPCK_DataLink.FontBlue + Width = 58 + end + object v1Qty: TcxGridDBColumn + Caption = #35745#21010#25968#37327 + DataBinding.FieldName = 'JHQty' + HeaderAlignmentHorz = taCenter + Styles.Content = BPCK_DataLink.FontBlue + Styles.Footer = BPCK_DataLink.FontBlue + Styles.Header = BPCK_DataLink.FontBlue + Width = 58 + end + object v1QtyUnit: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Width = 50 + end + object v1Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 103 + end + object v1Filler: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'MxFiller' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1FillTime: TcxGridDBColumn + Caption = #25805#20316#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Width = 75 + end + object Tv1Column1: TcxGridDBColumn + Caption = #20986#24211#21305#25968 + DataBinding.FieldName = 'CKPS' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv1Column2: TcxGridDBColumn + Caption = #20986#24211#25968#37327 + DataBinding.FieldName = 'CKQty' + HeaderAlignmentHorz = taCenter + Width = 80 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 97 + Width = 1177 + Height = 20 + Align = alTop + TabOrder = 3 + Properties.CustomButtons.Buttons = <> + Properties.Style = 9 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + #26410#20316#24223 + #24050#20316#24223 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectRight = 0 + ClientRectTop = 0 + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 724 + Top = 4 + end + object ADOQueryTmp: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 560 + Top = 4 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 624 + Top = 1 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 660 + Top = 5 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 1044 + end + object ADOPrint: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 808 + Top = 4 + end + object RMDB_MD: TRMDBDataSet + Visible = True + DataSet = ADOPrint1 + Left = 840 + Top = 52 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 896 + Top = 4 + ReportData = {} + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 948 + Top = 20 + end + object ADOPrint1: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 816 + Top = 72 + end + object RMDB_main: TRMDBDataSet + Visible = True + DataSet = ADOPrint + Left = 888 + Top = 80 + end +end diff --git a/坯布仓库/U_BpCklist.pas b/坯布仓库/U_BpCklist.pas new file mode 100644 index 0000000..d590f3d --- /dev/null +++ b/坯布仓库/U_BpCklist.pas @@ -0,0 +1,498 @@ +unit U_BpCklist; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, + cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, + cxGrid, DBClient, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, RM_Common, + RM_Class, RM_e_Xls, RM_GridReport, RM_System, RM_Dataset, cxPC, cxLookAndFeels, + cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu; + +type + TfrmBpCklist = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1P_SPEC: TcxGridDBColumn; + v1P_MF: TcxGridDBColumn; + v1P_KZ: TcxGridDBColumn; + v1RollNum: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1QtyUnit: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1CRType: TcxGridDBColumn; + v1CRTime: TcxGridDBColumn; + v1Filler: TcxGridDBColumn; + v1FillTime: TcxGridDBColumn; + Label2: TLabel; + Label3: TLabel; + Label4: TLabel; + P_CodeName: TEdit; + P_Color: TEdit; + CRType: TComboBox; + Label5: TLabel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + v1MJID: TcxGridDBColumn; + v1MJXH: TcxGridDBColumn; + v1CPTYPE: TcxGridDBColumn; + ckName: TComboBox; + Label6: TLabel; + v1P_Color: TcxGridDBColumn; + ADOPrint: TADOQuery; + RMDB_MD: TRMDBDataSet; + RMGridReport1: TRMGridReport; + RMXLSExport1: TRMXLSExport; + v1customerNoname: TcxGridDBColumn; + cust: TEdit; + Label7: TLabel; + Label8: TLabel; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + factoryName: TEdit; + Label9: TLabel; + cxTabControl1: TcxTabControl; + TBcdel: TToolButton; + v1Column3: TcxGridDBColumn; + Label10: TLabel; + orderNo: TEdit; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + tocust: TEdit; + Label11: TLabel; + ADOPrint1: TADOQuery; + RMDB_main: TRMDBDataSet; + Tv1Column1: TcxGridDBColumn; + Tv1Column2: TcxGridDBColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure P_CodeNameChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure TBcdelClick(Sender: TObject); + private + procedure InitGrid(); + procedure SetComboBox(); + procedure SetStatus(); + { Private declarations } + public + fCKName: string; + { Public declarations } + end; + +var + frmBpCklist: TfrmBpCklist; + +implementation + +uses + U_DataLink, U_Fun10, U_ZDYHelp, U_BpCk, U_BpYPCkEdit; +{$R *.dfm} + +procedure TfrmBpCklist.SetStatus(); +begin + TBedit.Visible := false; + Tbdel.Visible := false; + tbcdel.Visible := false; + case cxTabControl1.TabIndex of + 0: + begin + TBedit.Visible := true; + Tbdel.Visible := true; + end; + 1: + begin + tbcdel.Visible := true; + end; + end; +end; + +procedure TfrmBpCklist.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCK'' '); + if trim(fCKName) <> '' then + sql.Add('and zdyName=' + quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count > 0 then + ckName.ItemIndex := 0; + + CRType.Items.Clear; + CRType.Items.Add(''); + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCKTYPE'''); + if trim(fCKName) <> '' then + sql.Add('and note=' + quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count > 0 then + CRType.ItemIndex := 0; +end; + +procedure TfrmBpCklist.InitGrid(); +begin + try + with adoqueryTmp do + begin + close;// + sql.Clear; //case when (select count(mxid) from CK_SXPB_CRMX A where A.crno=B.CRNO and A.CRID=B.CRID and A.crzt='')>0 then crtime else (select top 1 convert(varchar(100),MxCrtime,23) from CK_SXPB_CRMX C where C.CRNO=B.crno ORDER BY MxCrtime desc) end as crtime, + sql.Add('select distinct B.crnos, C.MxCrtime as crtime,C.MxFiller,'); + sql.Add(' B.*,'); + sql.Add('orderNo=(select Top 1 orderNo from JYOrder_Main X where X.MainID=B.MainID ),'); + SQL.Add('CKPS=(select count(mxid) from CK_SXPB_CRMX A where A.crno=B.CRNO and A.CRID=B.CRID and A.crzt='''' ),'); + sql.Add('CKQTY=case when B.QtyUnit=''KG'' then isnull((select sum(isnull(mxqty,0)) from CK_SXPB_CRMX A where A.crno=B.CRNO and A.CRID=B.CRID and A.crzt='''' ),0)'); + sql.Add(' else isnull((select sum(isnull(mxqty2,0)) from CK_SXPB_CRMX A where A.crno=B.CRNO and A.CRID=B.CRID and A.crzt='''' ),0) end '); + + sql.Add('from BP_InOut B '); + SQL.Add('right JOIN CK_SXPB_CRMX C on B.CRID=C.CRID and B.crno=C.crno'); + sql.Add('where B.CRTime>=''' + formatdateTime('yyyy-MM-dd', begdate.Date) + ''' '); + sql.Add('and B.CRTime<''' + formatdateTime('yyyy-MM-dd', enddate.Date + 1) + ''' '); + sql.Add('and C.crzt='''' '); + if trim(FckName) <> '' then + sql.Add('and ckName=' + quotedstr(trim(FckName))); + if cxTabControl1.TabIndex = 0 then + sql.Add('and valid=''Y'' '); + if cxTabControl1.TabIndex = 1 then + sql.Add('and valid=''N'' '); +// ShowMessage(sql.text); + open; + end; + SCreateCDS20(adoqueryTmp, CDS_Main); + SInitCDSData20(adoqueryTmp, CDS_Main); + finally + end; + +end; + +procedure TfrmBpCklist.FormClose(Sender: TObject; var Action: TCloseAction); +begin + writeCxGrid(self.Caption, Tv1, 'ƥֿ'); + Action := cafree; +end; + +procedure TfrmBpCklist.FormDestroy(Sender: TObject); +begin + frmBpCklist := nil; +end; + +procedure TfrmBpCklist.TBAddClick(Sender: TObject); +begin + frmbpCk := TfrmbpCk.create(self); + with frmbpCk do + begin + fkeyNo := ''; + fType := 0; + fckName := self.fckName; + if showmodal = 1 then + begin + TBRafresh.Click; + self.CDS_Main.Locate('crNo', trim(fkeyNo), []); + end; + free; + end; + TBRafresh.Click; +end; + +procedure TfrmBpCklist.P_CodeNameChange(Sender: TObject); +var + m: string; +begin + if ADOQueryTmp.Active = False then + Exit; + SDofilter(ADOQueryTmp, SGetFilters(Panel1, 1, 2)); + m := SGetFilters(Panel1, 1, 2); + SCreateCDS20(ADOQueryTmp, CDS_Main); + SInitCDSData20(ADOQueryTmp, CDS_Main); +end; + +procedure TfrmBpCklist.FormShow(Sender: TObject); +begin + readCxGrid(self.Caption, Tv1, 'ƥֿ'); + SetComboBox(); + SetStatus(); + InitGrid(); +end; + +procedure TfrmBpCklist.FormCreate(Sender: TObject); +begin + BegDate.Date := DServerDate; + EndDate.Date := DServerDate; + cxGrid1.Align := alclient; + +end; + +procedure TfrmBpCklist.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmBpCklist.TBEditClick(Sender: TObject); +begin + if cds_main.IsEmpty then + exit; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add(' select * from YF_Money_CR '); + SQL.Add(' where mainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sql.Add(' and status>=''1'' '); + Open; + if not IsEmpty then + begin + Application.MessageBox('Ӧûгˣ޸ij!', 'ʾ', 0); + exit; + end; + end; + + { with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from BP_InOut A'); + SQL.Add('where A.kcid='''+Trim(CDS_Main.fieldbyname('kcid').AsString)+''' '); + sQL.Add('and A.CRFlag='''''); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('Ѳݣ޸ģ','ʾ',0); + Exit; + end; } + + frmbpCk := TfrmbpCk.create(self); + with frmbpCk do + begin + fkeyNo := self.cds_main.fieldbyname('CRNO').AsString; + fType := 1; + fckName := self.fckName; + if showmodal = 1 then + begin + TBRafresh.Click; + self.CDS_Main.Locate('crNo', trim(fkeyNo), []); + end; + free; + end; + TBRafresh.Click; +end; + +procedure TfrmBpCklist.TBDelClick(Sender: TObject); +var + YFID, CRID: string; +begin + if CDS_Main.IsEmpty then + Exit; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add(' select * from YF_Money_CR '); + SQL.Add(' where mainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sql.Add(' and status>=''1'' '); + Open; + if not IsEmpty then + begin + Application.MessageBox('Ӧûгˣ!', 'ʾ', 0); + exit; + end; + end; + if Trim(CDS_Main.fieldbyname('Filler').AsString) <> Trim(DName) then + begin + Application.MessageBox('ܲ˵!', 'ʾ', 0); + Exit; + end; +{ with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from BP_InOut A'); + SQL.Add('where A.kcid='''+Trim(CDS_Main.fieldbyname('kcid').AsString)+''' '); + sQL.Add('and A.CRFlag='''''); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('Ѳݣɾ','ʾ',0); + Exit; + end; } + + if Application.MessageBox('ȷҪ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + try + + with ADOQueryCmd do + begin + Close; + sql.Clear; + + sql.Add('delete from YF_Money_CR '); + SQL.Add('where maiNID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + + // sql.Add('update BP_kc set RollNum=A.RollNum+B.RollNum, Qty=A.Qty + B.Qty '); + // sql.Add('from BP_kc A'); + // sql.Add('inner join BP_INout B on B.kcid=A.kcid'); + // sql.Add('where B.CRNO='''+Trim(CDS_Main.fieldbyname('CRNO').AsString)+''' '); + + sql.Add(' update BP_kc SET RollNum=RollNum+(select SUM(RollNUM) from BP_INout X where X.KCID=BP_kc.KCID and X.CRNo=''' + trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' ), '); + sql.Add(' Qty=Qty+(select SUM(Qty) from BP_INout X where X.KCID=BP_kc.KCID and X.CRNo=''' + trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' ) '); + sql.Add(' where exists(select KCID from BP_INout X where X.KCID=BP_kc.KCID and X.CRNO=''' + trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' )'); + sql.Add('delete from CP_InOut '); + SQL.Add('where fromMainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sql.Add('delete from CP_KC '); + SQL.Add('where fromMainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + + sql.Add('update BP_InOut SET valid=''N'''); + SQL.Add('where CRNO=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ⵥɾ'))); + sql.Add(',' + quotedstr(trim('ⵥţ' + trim(CDS_Main.FieldByName('CRNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + + execsql; + end; + TBRafresh.Click; + except + Application.MessageBox('ɾʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmBpCklist.TBRafreshClick(Sender: TObject); +begin + initGrid(); +end; + +procedure TfrmBpCklist.TBPrintClick(Sender: TObject); +var + filepath: string; +begin + if CDS_Main.IsEmpty then + exit; + + with AdoPrint do + begin + close; + sql.Clear; + sql.Add('select A.* from bP_InOut A'); + sql.Add('where crno=' + quotedstr(trim(CDS_Main.fieldbyname('crno').AsString))); + open; + end; + + with AdoPrint1 do + begin + close; + sql.Clear; + sql.Add('exec P_Print_pbCkMd '); + sql.Add('@inoutNo=' + quotedstr(trim(CDS_Main.fieldbyname('crno').AsString))); + sql.Add(',@flag=' + quotedstr(trim(''))); + open; + end; + + try + filepath := ExtractFilePath(Application.ExeName) + 'report\뵥.rmf'; + if not FileExists(Pchar(filepath)) then + begin + application.MessageBox(pchar('ļ[' + filepath + ']ڣ'), 'ʾϢ', MB_IConError); + exit; + end; + RMVariables['dtxz'] := FormatDateTime('yyyy-mm-dd', date()); + RMVariables['zdr'] := trim(DName); + RMVariables['Filler'] := trim(CDS_Main.fieldbyname('Filler').AsString); + RMGridReport1.LoadFromFile(filepath); + RMGridReport1.ShowReport; + finally + + end; +end; + +procedure TfrmBpCklist.TBExportClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then + Exit; + TcxGridToExcel(self.Caption, cxgrid1); +end; + +procedure TfrmBpCklist.cxTabControl1Change(Sender: TObject); +begin + SetStatus(); + InitGrid(); +end; + +procedure TfrmBpCklist.TBcdelClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then + exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + try + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from BP_InOut where CRNO=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + execsql; + end; + TBRafresh.Click; + except + Application.MessageBox('ɾʧܣ', 'ʾϢ', 0); + end; +end; + +end. + diff --git a/坯布仓库/U_BpGdCkEdit.dfm b/坯布仓库/U_BpGdCkEdit.dfm new file mode 100644 index 0000000..f7cd51c --- /dev/null +++ b/坯布仓库/U_BpGdCkEdit.dfm @@ -0,0 +1,489 @@ +object frmBpGdCkEdit: TfrmBpGdCkEdit + Left = 216 + Top = 139 + Width = 1050 + Height = 530 + Caption = #20986#24211#32534#36753 + 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 = 1034 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#35810 + ImageIndex = 2 + Visible = False + OnClick = TBRafreshClick + end + object TOk: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #30830#23450#20986#24211 + ImageIndex = 41 + OnClick = TOkClick + end + object TBExport: TToolButton + Left = 150 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + Visible = False + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 213 + Top = 0 + AutoSize = True + Caption = #25171#21360 + Enabled = False + ImageIndex = 12 + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 276 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 150 + Width = 1034 + Height = 266 + Align = alTop + TabOrder = 1 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv1CellClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1ckqty + end + item + Kind = skSum + Column = v1money + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + OptionsView.IndicatorWidth = 15 + Styles.Header = BPCK_DataLink.Default + OnCustomDrawIndicatorCell = Tv1CustomDrawIndicatorCell + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1P_CodeNamePropertiesButtonClick + Properties.OnEditValueChanged = v1P_CodeNamePropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 152 + end + object v1P_Color: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnEditValueChanged = v1P_ColorPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 98 + end + object v1ckqty: TcxGridDBColumn + Caption = #20986#24211#25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '0.##' + Properties.OnEditValueChanged = v1ckqtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Content = BPCK_DataLink.cxStyle_fontclFuchsia + Styles.Footer = BPCK_DataLink.cxStyle_fontclFuchsia + Styles.Header = BPCK_DataLink.cxStyle_fontclFuchsia + Width = 121 + end + object v1QtyUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 92 + end + object v1price: TcxGridDBColumn + Caption = #20986#24211#20215#26684 + DataBinding.FieldName = 'price' + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '0.##' + Properties.OnEditValueChanged = v1ckqtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 103 + end + object v1money: TcxGridDBColumn + Caption = #20986#24211#37329#39069 + DataBinding.FieldName = 'money' + HeaderAlignmentHorz = taCenter + Styles.Content = BPCK_DataLink.cxStyle_fontclPurple + Styles.Footer = BPCK_DataLink.cxStyle_fontclPurple + Styles.Header = BPCK_DataLink.cxStyle_fontclPurple + Width = 98 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel2: TPanel + Left = 0 + Top = 32 + Width = 1034 + Height = 89 + Align = alTop + BevelOuter = bvNone + Caption = 'Panel2' + TabOrder = 2 + object GroupBox1: TGroupBox + Left = 0 + Top = 0 + Width = 1034 + Height = 89 + Align = alClient + Caption = #20986#24211#20449#24687 + Color = clSkyBlue + ParentColor = False + TabOrder = 0 + object Label8: TLabel + Left = 24 + Top = 20 + Width = 52 + Height = 12 + Caption = #20986#24211#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 208 + Top = 20 + Width = 52 + Height = 12 + Caption = #20986#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 420 + Top = 20 + Width = 54 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label1: TLabel + Left = 24 + Top = 68 + Width = 54 + Height = 12 + Caption = #22791' '#27880 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 24 + Top = 44 + Width = 52 + Height = 12 + Caption = #23458#25143#22320#22336 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object CRTime: TDateTimePicker + Left = 88 + Top = 16 + Width = 100 + Height = 20 + Date = 41509.970132187500000000 + Format = 'yyyy-MM-dd' + Time = 41509.970132187500000000 + TabOrder = 0 + end + object CRType: TComboBox + Tag = 2 + Left = 265 + Top = 16 + Width = 120 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 1 + OnChange = CRTypeChange + Items.Strings = ( + '' + #29983#20135#20837#24211) + end + object cust: TBtnEditA + Left = 484 + Top = 16 + Width = 297 + Height = 20 + ReadOnly = True + TabOrder = 2 + OnBtnClick = custBtnClick + end + object note: TEdit + Left = 88 + Top = 64 + Width = 693 + Height = 20 + TabOrder = 3 + end + object custaddress: TEdit + Left = 88 + Top = 40 + Width = 693 + Height = 20 + Enabled = False + TabOrder = 4 + end + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 121 + Width = 1034 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 3 + object TBKC: TToolButton + Left = 0 + Top = 0 + Caption = #36873#25321#24211#23384 + ImageIndex = 108 + Visible = False + OnClick = TBKCClick + end + object ToolButton1: TToolButton + Left = 83 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 146 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + end + object Panel1: TPanel + Left = 676 + Top = 124 + Width = 289 + Height = 25 + BevelOuter = bvNone + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + object Label23: TLabel + Left = 108 + Top = 4 + Width = 45 + Height = 14 + Caption = #25968#37327#65306 + end + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 680 + Top = 8 + end + object ADOQueryTmp: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 536 + Top = 4 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 576 + Top = 1 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 612 + Top = 5 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 504 + Top = 12 + end + object ADOQuery1: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 740 + Top = 16 + end + object ADOPrint: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 816 + Top = 16 + end + object RMDB_MD: TRMDBDataSet + Visible = True + DataSet = ADOPrint + Left = 848 + Top = 16 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 896 + Top = 8 + ReportData = {} + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 948 + Top = 20 + end +end diff --git a/坯布仓库/U_BpGdCkEdit.pas b/坯布仓库/U_BpGdCkEdit.pas new file mode 100644 index 0000000..d3ba8b7 --- /dev/null +++ b/坯布仓库/U_BpGdCkEdit.pas @@ -0,0 +1,831 @@ +unit U_BpGdCkEdit; + +interface + +uses + Windows, Messages, SysUtils, Variants, cxEdit,Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, DB, cxDBData,cxTextEdit, + cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, DBClient, ADODB, cxGridCustomPopupMenu, + cxGridPopupMenu, cxCheckBox, BtnEdit, cxCurrencyEdit,strUtils, RM_Common, + RM_Class, RM_e_Xls, RM_GridReport, RM_System, RM_Dataset; + +type + TfrmBpGdCkEdit = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1QtyUnit: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + TOk: TToolButton; + v1P_Color: TcxGridDBColumn; + v1ckqty: TcxGridDBColumn; + v1price: TcxGridDBColumn; + v1money: TcxGridDBColumn; + Panel2: TPanel; + GroupBox1: TGroupBox; + CRTime: TDateTimePicker; + Label8: TLabel; + CRType: TComboBox; + Label5: TLabel; + Label9: TLabel; + cust: TBtnEditA; + ADOQuery1: TADOQuery; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + Panel1: TPanel; + Label23: TLabel; + ADOPrint: TADOQuery; + RMDB_MD: TRMDBDataSet; + RMGridReport1: TRMGridReport; + RMXLSExport1: TRMXLSExport; + Label1: TLabel; + note: TEdit; + Label2: TLabel; + custaddress: TEdit; + TBKC: TToolButton; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TOkClick(Sender: TObject); + procedure custBtnClick(Sender: TObject); + procedure v1ckqtyPropertiesEditValueChanged(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure v1P_CodeNamePropertiesEditValueChanged(Sender: TObject); + procedure v1P_ColorPropertiesEditValueChanged(Sender: TObject); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure v1P_CodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure Tv1CustomDrawIndicatorCell(Sender: TcxGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; + var ADone: Boolean); + procedure TBKCClick(Sender: TObject); + procedure CRTypeChange(Sender: TObject); + private + procedure InitGrid(); + procedure SetComboBox(); + function savedate():Boolean; + function YSData(ckNo,CkID:string;Order_Main10:TClientDataSet):Boolean; + procedure DoKc(); + + { Private declarations } + public + fType:integer; + fCKName:string; + fkeyNO:string; + + { Public declarations } + end; + +var + frmBpGdCkEdit: TfrmBpGdCkEdit; + +implementation +uses + U_DataLink,U_Fun10,U_ZDYHelp, U_BpRk, U_ZdyAttachCP, U_ZdyAttachment, + U_BpkcCk; +{$R *.dfm} +procedure TfrmBpGdCkEdit.DoKc(); +begin + Label23.Caption:='0'; + IF CDS_Main.IsEmpty then exit; + IF trim(CDS_Main.fieldbyname('P_CodeName').AsString)='' then exit; + IF trim(CDS_Main.fieldbyname('P_Color').AsString)='' then exit; + with ADOQuery1 do + begin + close; + sql.Clear; + sql.Add('select AA.* '); + sql.Add('FROM( select A.ckName,P_CodeName,A.P_Color,A.QtyUnit,ckQty=0.00,Price=0.00,money=0.00, '); + sql.Add(' SUM(case when CRFlag='''' then Qty else -1 * Qty end ) as Qty '); + sql.Add('from BP_InOut A '); + sql.Add('where P_CodeName='+quotedstr(trim(CDS_Main.fieldbyname('P_CodeName').AsString)) ); + sql.Add('and P_Color='+quotedstr(trim(CDS_Main.fieldbyname('P_Color').AsString)) ); + if trim(FckName)<>'' then + sql.Add('and ckName='+quotedstr(trim(FckName)) ); + sql.Add('group by A.ckName,P_CodeName,A.P_Color,A.QtyUnit)AA '); + open; + end; + IF not ADOQuery1.IsEmpty then + begin +// Label22.Caption:='ƥ'+trim(ADOQuery1.fieldbyname('kcRollNum').AsString); + Label23.Caption:=''+trim(ADOQuery1.fieldbyname('Qty').AsString); + end; +end; +function TfrmBpGdCkEdit.YSData(ckNo,CkID:string;Order_Main10:TClientDataSet):Boolean; +var + CRID,YFID,Price,PriceUnit,OrderUnit,FComTaiTou:String; +begin + Result:=False; + + with Order_Main10 do + begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(cust.text)+''''); + sql.Add('and ZdyStr1=''Ӧ'''); + sql.Add('and YFDefFlag1=1 '); + Open; + end; + if not ADOQuery1.IsEmpty then + begin + CRID:=ADOQuery1.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(cust.text); + FieldByName('ZdyStr1').Value:='Ӧ'; + FieldByName('YFDefFlag1').Value:=1; + Post; + end; + end; + + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID='''+Trim(ckNo)+''''); + sql.Add(' and subID='''+Trim(ckID)+''''); + sql.Add(' and YFName=''㶫'' '); + execsql; + end; + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add(' where MainID='''+Trim(ckNo)+''''); + sql.Add(' and subID='''+Trim(ckID)+''''); + sql.Add(' and YFName=''㶫'' '); + Open; + end; + if ADOQuery1.IsEmpty then + begin + if GetLSNo(ADOQueryCmd,YFID,'CS','YF_Money_CR',4,1)=False then + begin + Application.MessageBox('ȡӦʧ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(ckNo); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦտǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(cust.Text); + FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',CRTime.DateTime)); + FieldByName('YFType').Value:='Զ'; + FieldByName('ps').Value:=0; + FieldByName('Qty').Value:=Order_Main10.fieldbyname('Qty').AsFloat; + FieldByName('Price').Value:=Order_Main10.fieldbyname('Price').AsFloat; + FieldByName('Money').Value:=Order_Main10.fieldbyname('Money').AsFloat; + FieldByName('BBMoney').Value:=Order_Main10.fieldbyname('Money').AsFloat; + //FieldByName('HuiLv').Value:=1; + FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=''; + FieldByName('QtyUnit').Value:=Trim(Order_Main10.fieldbyname('QtyUnit').AsString); + FieldByName('ComTaiTou').Value:=Trim(cust.Text); + FieldByName('P_CodeName').Value:=trim(Order_Main10.fieldbyname('P_CodeName').AsString); + FieldByName('P_Color').Value:=trim(Order_Main10.fieldbyname('P_Color').AsString); + FieldByName('YFName').Value:='㶫'; + FieldByName('MainId').Value:=Trim(ckNo); + FieldByName('subID').Value:=Trim(CkID); + FieldByName('YFDefFlag1').Value:=1; + FieldByName('syrName').Value:='㶫в'; + Post; + end; + end + else + begin + YFID:=Trim(ADOQuery1.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + end; + Result:=True; +end; +function TfrmBpGdCkEdit.savedate():Boolean; +var + fkcID,i:integer; + Filler:string; + FillTime:TdateTime; + maxno:string; +begin + result:=false; + try + ADOQueryCmd.Connection.BeginTrans; + if FType=0 then + begin + if GetLSNo(ADOQueryCmd,fkeyNO,'GC','BP_InOut',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + Filler:=DName; + FillTime:=SGetServerDateTime(adoqueryTmp); + end + else + begin + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from BP_InOut'); + sql.Add('where CRNO='+quotedstr(trim(fkeyNO))); + open; + Filler:=adoqueryTmp.fieldbyname('Filler').AsString; + FillTime:=adoqueryTmp.fieldbyname('FillTime').AsDateTime; + end; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID='''+Trim(fkeyNO)+''''); + sql.Add(' and YFName=''㶫'' '); + sql.Add('and YFDefFlag1=1 '); + execsql; + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from BP_InOut'); + sql.Add('where CRNO='+quotedstr(trim(fkeyNO))); + execsql; + end; + CDS_Main.DisableControls; + CDS_Main.First; + i:=1; + + with CDS_Main do + begin + while not eof do + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from BP_InOut'); + sql.Add('where 1=2 '); + open; + end; + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('CRNO').Value:=trim(fkeyNO); + ADOQueryCmd.FieldByName('CRID').Value:=i; + ADOQueryCmd.FieldByName('CKName').Value:=trim(fckName); + // ADOQueryCmd.FieldByName('mainID').Value:=trim(fmainID); + // ADOQueryCmd.FieldByName('subID').Value:=trim(fsubID); + ADOQueryCmd.FieldByName('CRTime').Value:=formatdateTime('yyyy-MM-dd',CRTime.Date); + ADOQueryCmd.FieldByName('CRType').Value:=trim(crType.Text); + ADOQueryCmd.FieldByName('CRFlag').Value:=''; + // ADOQueryCmd.FieldByName('MJID').Value:=trim(fieldbyname('MJID').AsString); + // ADOQueryCmd.FieldByName('MJXH').Value:=trim(fieldbyname('MJXH').AsString); + // ADOQueryCmd.FieldByName('CPTYPE').Value:=trim(fieldbyname('CPTYPE').AsString); + // ADOQueryCmd.FieldByName('P_Code').Value:=trim(fieldbyname('P_Code').AsString); + ADOQueryCmd.FieldByName('P_CodeName').Value:=trim(fieldbyname('P_CodeName').AsString); + // ADOQueryCmd.FieldByName('P_spec').Value:=trim(fieldbyname('P_spec').AsString); + ADOQueryCmd.FieldByName('P_Color').Value:=trim(fieldbyname('P_Color').AsString); + // ADOQueryCmd.FieldByName('P_MF').Value:=fieldbyname('P_MF').AsFloat; + // ADOQueryCmd.FieldByName('P_KZ').Value:=fieldbyname('P_KZ').AsFloat; + ADOQueryCmd.FieldByName('RollNum').Value:=0; + ADOQueryCmd.FieldByName('Qty').Value:=fieldbyname('Qty').AsFloat; + ADOQueryCmd.FieldByName('Price').Value:=fieldbyname('Price').AsFloat; + ADOQueryCmd.FieldByName('money').Value:=fieldbyname('money').AsFloat; + ADOQueryCmd.FieldByName('QtyUnit').Value:=trim(fieldbyname('QtyUnit').AsString); + // ADOQueryCmd.FieldByName('note').Value:=trim(fieldbyname('note').AsString); + ADOQueryCmd.FieldByName('Filler').Value:=trim(Filler); + ADOQueryCmd.FieldByName('FillTime').Value:=dateTimetostr(FillTime); + ADOQueryCmd.FieldByName('cust').Value:=trim(cust.Text); + ADOQueryCmd.FieldByName('custaddress').Value:=trim(custaddress.Text); + ADOQueryCmd.FieldByName('note').Value:=trim(note.Text); + // ADOQueryCmd.FieldByName('FirstNo').Value:=trim(FirstName.TxtCode); + // ADOQueryCmd.FieldByName('FirstName').Value:=trim(FirstName.Text); + if FType=10 then + begin + ADOQueryCmd.FieldByName('editer').Value:=trim(dName); + ADOQueryCmd.FieldByName('editTime').Value:=SGetServerDateTime(ADOQuery1); + end; + ADOQueryCmd.Post; + IF trim(CRType.Text)='㶫' then + begin + if not YSData(fkeyNo,inttostr(i),CDS_Main) then + begin + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + exit; + end; + end; + i:=i+1; + next; + end; + end; + + CDS_Main.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + result:=true; + except + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; +procedure TfrmBpGdCkEdit.SetComboBox(); +begin + { ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCK'' '); + if trim(fCKName)<>'' then + sql.Add('and zdyName='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count>0 then ckName.ItemIndex:=0; } + + CRType.Items.Clear; + // CRType.Items.Add(''); + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCKTYPE'''); + if trim(fCKName)<>'' then + sql.Add('and note='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; +// CRType.Items.Add('㶫̵'); + if CRType.Items.Count>0 then CRType.ItemIndex:=0; +end; +procedure TfrmBpGdCkEdit.InitGrid(); +begin + try + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select A.* from BP_InOut A'); + sql.Add('where A.CRNO='+quotedstr(trim(fkeyNO))); + open; + end; + SCreateCDS20(adoqueryTmp,CDS_Main); + SInitCDSData20(adoqueryTmp,CDS_Main); + if not CDS_Main.IsEmpty then + begin + CRTime.Date:= CDS_Main.fieldbyname('CRTime').AsDateTime; + // CKName.ItemIndex:=CKName.Items.IndexOf(trim(CDS_Main.fieldbyname('CKName').AsString)); + CRType.ItemIndex:=CRType.Items.IndexOf(trim(CDS_Main.fieldbyname('CRType').AsString)); + cust.Text:= trim(CDS_Main.fieldbyname('cust').AsString); + custaddress.Text:= trim(CDS_Main.fieldbyname('custaddress').AsString); + note.Text:= trim(CDS_Main.fieldbyname('note').AsString); + end; + finally + end; +end; + +procedure TfrmBpGdCkEdit.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + writeCxGrid(self.Caption,Tv1,'ƥֿ'); + if fType=10 then Action:=cahide + else Action:=cafree; +end; + +procedure TfrmBpGdCkEdit.FormDestroy(Sender: TObject); +begin + frmBpGdCkEdit:=nil; +end; + +procedure TfrmBpGdCkEdit.FormShow(Sender: TObject); +begin +{ if fType=10 then + begin + TOk.Visible:=true; + // v1Ssel.Visible:=true; + v1ckqty.Visible:=true; + v1price.Visible:=true; + v1money.Visible:=true; + GroupBox1.Visible:=true; + end + else + begin + TOk.Visible:=false; + // v1Ssel.Visible:=false; + v1ckqty.Visible:=false; + v1price.Visible:=false; + v1money.Visible:=false; + GroupBox1.Visible:=false; + end; } + readCxGrid(self.Caption,Tv1,'ƥֿ'); + SetComboBox(); + InitGrid(); +end; + +procedure TfrmBpGdCkEdit.FormCreate(Sender: TObject); +begin + //BegDate.Date:=DServerDate-7; +// EndDate.Date:=DServerDate; + CRTime.date:= DServerDate; + cxGrid1.Align:=alclient; + +end; + +procedure TfrmBpGdCkEdit.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmBpGdCkEdit.TBRafreshClick(Sender: TObject); +begin + + initGrid(); +end; + +procedure TfrmBpGdCkEdit.TBPrintClick(Sender: TObject); +var + filepath:string; +begin + if trim(fkeyNO)='' then exit; + + with AdoPrint do + begin + close; + sql.Clear; + sql.Add('exec P_Do_PrintMd '); + sql.Add('@mainID='+quotedstr(trim(fkeyNO))); + sql.Add(',@flag='+quotedstr(trim('㶫'))); + open; + end; + + try + filepath:=ExtractFilePath(Application.ExeName) + 'report\뵥.rmf'; + if not FileExists(Pchar(filepath)) then + begin + application.MessageBox(pchar('ļ['+filepath+']ڣ'),'ʾϢ',MB_IConError); + exit; + end; + RMVariables['dtxz'] :=FormatDateTime('yyyy-mm-dd',date()); + RMVariables['zdr'] :=trim(DName); + RMVariables['Filler'] :=trim(DName); + RMGridReport1.LoadFromFile(filepath); + RMGridReport1.ShowReport; + finally + + end; + +end; + +procedure TfrmBpGdCkEdit.TBExportClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid1); +end; + +procedure TfrmBpGdCkEdit.TOkClick(Sender: TObject); +begin + CRTIME.SetFocus; + IF CDS_Main.IsEmpty then exit; + if trim(CRType.Text)='' then + begin + application.MessageBox('ͲΪգ','ʾϢ',0); + exit; + end; + if trim(cust.Text)=''then + begin + application.MessageBox('ͻΪգ','ʾϢ',0); + exit; + end; + if savedate() then + begin + application.MessageBox('ݱɹ','ʾϢ'); + TOk.Enabled:=false; + TBPrint.Enabled:=true; + // ModalResult:=1; + end + else + begin + application.MessageBox('ݱʧܣ','ʾϢ',MB_ICONERROR); + end; +end; + +procedure TfrmBpGdCkEdit.custBtnClick(Sender: TObject); +begin + try + frmZdyAttachment:=TfrmZdyAttachment.Create(Application); + with frmZdyAttachment do + begin + fkhType:='㶫ͻ'; + if ShowModal=1 then + begin + cust.Text:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + custaddress.Text:=Trim(CDS_HZ.fieldbyname('defnote1').AsString); + end; + end; + finally + frmZdyAttachment.Free; + end; +end; + +procedure TfrmBpGdCkEdit.v1ckqtyPropertiesEditValueChanged(Sender: TObject); +var + mvalue,fieldname,qty1,qty2:String; + num1:double; + +begin + fieldname:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + with CDS_Main do + begin + Edit; + FieldByName(Trim(fieldname)).Value:=TcxTextEdit(Sender).EditingText; + num1:=FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat; + FieldByName('Money').Value:=strtofloat(format('%.2f',[num1])); + Post; + end; + Tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmBpGdCkEdit.CheckBox1Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmBpGdCkEdit.ToolButton1Click(Sender: TObject); +begin + CopyAddRow(Tv1,CDS_Main); + CDS_Main.edit; + CDS_Main.fieldbyname('QtyUnit').Value:='M'; + CDS_Main.Post; +end; + +procedure TfrmBpGdCkEdit.ToolButton2Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then exit; + CDS_Main.Delete; +end; + +procedure TfrmBpGdCkEdit.v1P_CodeNamePropertiesEditValueChanged( + Sender: TObject); +var + mvalue:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + + IF trim(mvalue)='' then exit; + + IF rightBstr(trim(mvalue),1)<>'#'THEN + BEGIn + mvalue:=trim(mvalue)+'#'; + END; + + + with CDS_Main do + begin + Edit; + FieldByName('P_CodeName').Value:=Trim(mvalue); + Post; + end; + self.tv1.Controller.EditingController.ShowEdit(); + DoKc(); + + with ADOQuery1 do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment A '); + sql.Add('where zdyName='+quotedstr(trim(CDS_Main.fieldbyname('P_CodeName').AsString))); + open; + end; + IF ADOQuery1.IsEmpty then + begin + application.MessageBox('Ʒڣ','ʾϢ',0); + with CDS_Main do + begin + Edit; + FieldByName('P_CodeName').Value:=''; + Post; + end; + exit; + end; + +end; + +procedure TfrmBpGdCkEdit.v1P_ColorPropertiesEditValueChanged( + Sender: TObject); +var + mvalue:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + + IF trim(mvalue)='' then exit; + + IF rightBstr(trim(mvalue),1)<>'#'THEN + BEGIn + mvalue:=trim(mvalue)+'#'; + END; + + + with CDS_Main do + begin + Edit; + FieldByName('P_Color').Value:=Trim(mvalue); + Post; + end; + self.tv1.Controller.EditingController.ShowEdit(); + DoKc(); + + with ADOQuery1 do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment A '); + sql.Add('where zdyName='+quotedstr(trim(CDS_Main.fieldbyname('P_CodeName').AsString))); + sql.Add('and DEFstr3='+quotedstr(trim(CDS_Main.fieldbyname('P_Color').AsString))); + open; + end; + IF ADOQuery1.IsEmpty then + begin + application.MessageBox('ɫڣ','ʾϢ',0); + with CDS_Main do + begin + Edit; + FieldByName('P_Color').Value:=''; + Post; + end; + end; +end; + +procedure TfrmBpGdCkEdit.Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + DoKc(); +end; + +procedure TfrmBpGdCkEdit.v1P_CodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZdyAttachCP:=TfrmZdyAttachCP.Create(Application); + with frmZdyAttachCP do + begin + if ShowModal=1 then + begin + Self.CDS_main.Edit; + Self.CDS_main.FieldByName('P_Code').Value:=Trim(CDS_HZ.fieldbyname('ZdyCode').AsString); + Self.CDS_main.FieldByName('P_CodeName').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + Self.CDS_main.FieldByName('P_Color').Value:=Trim(CDS_HZ.fieldbyname('DEFstr3').AsString); + // Self.Order_Sub.FieldByName('SOrddefstr4').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + Self.CDS_main.Post; + end; + end; + finally + frmZdyAttachCP.Free; + end; + self.tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmBpGdCkEdit.Tv1CustomDrawIndicatorCell( + Sender: TcxGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxCustomGridIndicatorItemViewInfo; var ADone: Boolean); +var + FValue: string; + FBounds: TRect; + begin + FBounds := AViewInfo.Bounds; + if (AViewInfo is TcxGridIndicatorRowItemViewInfo) then + begin + ACanvas.FillRect(FBounds); + ACanvas.DrawComplexFrame(FBounds, clBtnHighlight, clBtnShadow, [bBottom, bLeft, bRight], 1); + FValue :=IntToStr(TcxGridIndicatorRowItemViewInfo(AViewInfo).GridRecord.Index+1); + InflateRect(FBounds, -1, -1) ; + ACanvas.Font.Color := clBlack; + ACanvas.Brush.Style := bsClear; + ACanvas.DrawText(FValue, FBounds, cxAlignCenter or cxAlignTop); + ADone := True; + end; + end; + + +procedure TfrmBpGdCkEdit.TBKCClick(Sender: TObject); +begin + frmBpkcCk:=TfrmBpkcCk.create(self); + with frmBpkcCk do + begin + TOk.Visible:=true; + v1Ssel.Visible:=true; + fCKName:=self.fCKName; + if showmodal=1 then + begin + CDS_Main.DisableControls; + self.CDS_Main.DisableControls; + CDS_Main.First; + while not CDS_Main.Eof do + begin + IF CDS_Main.FieldByName('ssel').AsBoolean then + begin + self.CDS_Main.Append; + self.CDS_Main.fieldbyname('P_CodeName').Value:=CDS_Main.fieldbyname('P_CodeName').Value; + self.CDS_Main.fieldbyname('P_Color').Value:=CDS_Main.fieldbyname('P_Color').Value; + self.CDS_Main.fieldbyname('Qty').Value:=CDS_Main.fieldbyname('Qty').AsFloat; + self.CDS_Main.fieldbyname('QtyUnit').Value:='M'; + self.CDS_Main.fieldbyname('price').Value:=0; + self.CDS_Main.fieldbyname('money').Value:=0; + self.CDS_Main.Post; + end; + CDS_Main.Next; + end; + CDS_Main.EnableControls; + self.CDS_Main.EnableControls; + end; + free; + end; +end; + +procedure TfrmBpGdCkEdit.CRTypeChange(Sender: TObject); +begin + TBKC.Visible:=false; + If pos('̵',trim(CRType.Text))>0 then + begin + TBKC.Visible:=true; + end; +end; + +end. diff --git a/坯布仓库/U_BpGdCklist.dfm b/坯布仓库/U_BpGdCklist.dfm new file mode 100644 index 0000000..c8dbb73 --- /dev/null +++ b/坯布仓库/U_BpGdCklist.dfm @@ -0,0 +1,515 @@ +object frmBpGdCklist: TfrmBpGdCklist + Left = 87 + Top = 133 + Width = 1178 + Height = 579 + Caption = #20986#24211#21015#34920 + 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 = 1162 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#35810 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + Visible = False + end + object TBAdd: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20986#24211 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBADD1: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #26679#21697#20986#24211 + ImageIndex = 3 + OnClick = TBADD1Click + end + object TBEdit: TToolButton + Left = 276 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object TBDel: TToolButton + Left = 339 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object Tlook: TToolButton + Left = 402 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 57 + OnClick = TlookClick + end + object TBExport: TToolButton + Left = 465 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 528 + Top = 0 + AutoSize = True + Caption = #25171#21360#20986#24211#21333 + ImageIndex = 12 + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 627 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1162 + Height = 45 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #20986#24211#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 168 + Top = 16 + Width = 6 + Height = 12 + Caption = '-' + end + object Label3: TLabel + Left = 464 + Top = 16 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 628 + Top = 16 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 288 + Top = 16 + Width = 52 + Height = 12 + Caption = #20986#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 328 + Top = 56 + Width = 24 + Height = 12 + Caption = #20179#24211 + end + object Label7: TLabel + Left = 772 + Top = 16 + Width = 26 + Height = 12 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 1000 + Top = 16 + Width = 65 + Height = 12 + Caption = #20986#24211#21333#25968#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 180 + Top = 11 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object P_CodeName: TEdit + Tag = 2 + Left = 520 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = P_CodeNameChange + end + object P_Color: TEdit + Tag = 2 + Left = 660 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = P_CodeNameChange + end + object CRType: TComboBox + Tag = 2 + Left = 344 + Top = 12 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 4 + OnChange = P_CodeNameChange + Items.Strings = ( + '' + #38144#21806#20986#24211 + #21152#24037#20986#24211) + end + object ckName: TComboBox + Left = 356 + Top = 52 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 5 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object cust: TEdit + Tag = 2 + Left = 804 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 6 + OnChange = P_CodeNameChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 77 + Width = 1162 + Height = 384 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + OnDblClick = Tv1DblClick + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1RollNum + end + item + Kind = skSum + Column = v1Qty + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = BPCK_DataLink.Default + object v1CRNO: TcxGridDBColumn + Caption = #20986#24211#32534#21495 + DataBinding.FieldName = 'CRNO' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1CRID: TcxGridDBColumn + Caption = #24207#27425#21495 + DataBinding.FieldName = 'CRID' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1CRTime: TcxGridDBColumn + Caption = #20986#24211#26085#26399 + DataBinding.FieldName = 'CRTime' + Width = 60 + end + object v1CRType: TcxGridDBColumn + Caption = #20986#24211#31867#22411 + DataBinding.FieldName = 'CRType' + HeaderAlignmentHorz = taCenter + end + object v1cust: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'cust' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1custaddress: TcxGridDBColumn + Caption = #23458#25143#22320#22336 + DataBinding.FieldName = 'custaddress' + HeaderAlignmentHorz = taCenter + Width = 96 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1P_Color: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1RollNum: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'RollNum' + HeaderAlignmentHorz = taCenter + Styles.Content = BPCK_DataLink.FontBlue + Styles.Footer = BPCK_DataLink.FontBlue + Styles.Header = BPCK_DataLink.FontBlue + Width = 50 + end + object v1Qty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Styles.Content = BPCK_DataLink.FontBlue + Styles.Footer = BPCK_DataLink.FontBlue + Styles.Header = BPCK_DataLink.FontBlue + Width = 50 + end + object v1QtyUnit: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Width = 50 + end + object v1Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1Filler: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1FillTime: TcxGridDBColumn + Caption = #25805#20316#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Width = 75 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 724 + Top = 4 + end + object ADOQueryTmp: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 832 + Top = 4 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 856 + Top = 161 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 876 + Top = 101 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 508 + Top = 68 + end + object ADOPrint: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 816 + Top = 16 + end + object RMDB_MD: TRMDBDataSet + Visible = True + DataSet = ADOPrint + Left = 848 + Top = 16 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 896 + Top = 8 + ReportData = {} + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 948 + Top = 20 + end +end diff --git a/坯布仓库/U_BpGdCklist.pas b/坯布仓库/U_BpGdCklist.pas new file mode 100644 index 0000000..0a99b86 --- /dev/null +++ b/坯布仓库/U_BpGdCklist.pas @@ -0,0 +1,444 @@ +unit U_BpGdCklist; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, + cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, DBClient, ADODB, cxGridCustomPopupMenu, + cxGridPopupMenu, RM_System, RM_Dataset, RM_Common, RM_Class, RM_e_Xls, + RM_GridReport; + +type + TfrmBpGdCklist = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1RollNum: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1QtyUnit: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1CRType: TcxGridDBColumn; + v1CRTime: TcxGridDBColumn; + v1CRNO: TcxGridDBColumn; + v1CRID: TcxGridDBColumn; + v1Filler: TcxGridDBColumn; + v1FillTime: TcxGridDBColumn; + Label2: TLabel; + Label3: TLabel; + Label4: TLabel; + P_CodeName: TEdit; + P_Color: TEdit; + CRType: TComboBox; + Label5: TLabel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + ckName: TComboBox; + Label6: TLabel; + v1P_Color: TcxGridDBColumn; + v1cust: TcxGridDBColumn; + ADOPrint: TADOQuery; + RMDB_MD: TRMDBDataSet; + RMGridReport1: TRMGridReport; + RMXLSExport1: TRMXLSExport; + Tlook: TToolButton; + cust: TEdit; + Label7: TLabel; + TBADD1: TToolButton; + Label8: TLabel; + v1custaddress: TcxGridDBColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure P_CodeNameChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TlookClick(Sender: TObject); + procedure Tv1DblClick(Sender: TObject); + procedure TBADD1Click(Sender: TObject); + private + procedure InitGrid(); + procedure SetComboBox(); + { Private declarations } + public + fCKName:string; + fManage:string; + { Public declarations } + end; + +var + frmBpGdCklist: TfrmBpGdCklist; + +implementation +uses + U_DataLink,U_Fun10,U_ZDYHelp, U_BpCk, U_BpkcCk, U_BpGdCkEdit,U_BpGdYPCkEdit; +{$R *.dfm} + +procedure TfrmBpGdCklist.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCK'' '); + if trim(fCKName)<>'' then + sql.Add('and zdyName='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count>0 then ckName.ItemIndex:=0; + + CRType.Items.Clear; + CRType.Items.Add(''); + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCKTYPE'''); + if trim(fCKName)<>'' then + sql.Add('and note='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count>0 then CRType.ItemIndex:=0; +end; +procedure TfrmBpGdCklist.InitGrid(); +begin + try + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from BP_InOut A'); + sql.Add('where CRTime>='''+formatdateTime('yyyy-MM-dd',begdate.Date)+''' '); + sql.Add('and CRTime<'''+formatdateTime('yyyy-MM-dd',enddate.Date+1)+''' '); + sql.Add('and CRFlag='''' '); + if trim(FckName)<>'' then + sql.Add('and ckName='+quotedstr(trim(FckName)) ); + open; + end; + SCreateCDS20(adoqueryTmp,CDS_Main); + SInitCDSData20(adoqueryTmp,CDS_Main); + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select COUNT(distinct CRNo) as CRNo from BP_InOut A'); + sql.Add('where CRTime>='''+formatdateTime('yyyy-MM-dd',begdate.Date)+''' '); + sql.Add('and CRTime<'''+formatdateTime('yyyy-MM-dd',enddate.Date+1)+''' '); + sql.Add('and CRFlag='''' '); + if trim(FckName)<>'' then + sql.Add('and ckName='+quotedstr(trim(FckName)) ); + open; + IF IsEmpty then + begin + Label8.Caption:='ⵥ0'; + end + else + begin + Label8.Caption:='ⵥ'+Fieldbyname('CRNo').AsString; + end; + end; + finally + end; +end; + +procedure TfrmBpGdCklist.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + writeCxGrid(self.Caption,Tv1,'ƥֿ'); + Action:=cafree; +end; + +procedure TfrmBpGdCklist.FormDestroy(Sender: TObject); +begin + frmBpGdCklist:=nil; +end; + +procedure TfrmBpGdCklist.TBAddClick(Sender: TObject); +begin + frmbpCk:=TfrmbpCk.create(self); + with frmbpCk do + begin + fkeyNo:=''; + fType:=0; + fckName:=self.fckName; + if showmodal=1 then + begin + + // self.CDS_Main.Locate('crNo',trim(fkeyNo),[]) ; + end; + free; + end; + TBRafresh.Click; +end; + +procedure TfrmBpGdCklist.P_CodeNameChange(Sender: TObject); +begin + if ADOQueryTmp.Active=False then Exit; + SDofilter(ADOQueryTmp,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryTmp,CDS_Main); + SInitCDSData20(ADOQueryTmp,CDS_Main); +end; + +procedure TfrmBpGdCklist.FormShow(Sender: TObject); +begin + readCxGrid(self.Caption,Tv1,'ƥֿ'); + SetComboBox(); + IF trim(fManage)='Ȩ' then + begin + TBedit.Visible:=true; + TBDel.Visible:=true; + end + else + begin + TBedit.Visible:=false; + TBDel.Visible:=false; + end; + InitGrid(); +end; + +procedure TfrmBpGdCklist.FormCreate(Sender: TObject); +begin + BegDate.Date:=DServerDate; + EndDate.Date:=DServerDate; + cxGrid1.Align:=alclient; + +end; + +procedure TfrmBpGdCklist.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmBpGdCklist.TBEditClick(Sender: TObject); +begin + if cds_main.IsEmpty then exit; + + { with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from BP_InOut A'); + SQL.Add('where A.kcid='''+Trim(CDS_Main.fieldbyname('kcid').AsString)+''' '); + sQL.Add('and A.CRFlag='''''); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('Ѳݣ޸ģ','ʾ',0); + Exit; + end; } + + frmBpGdCkEdit:=TfrmBpGdCkEdit.create(self); + with frmBpGdCkEdit do + begin + fkeyNo:=self.cds_main.fieldbyname('CRNO').AsString; + fType:=10; + fckName:=self.fckName; + if showmodal=1 then + begin + TBRafresh.Click; + self.CDS_Main.Locate('crNo',trim(fkeyNo),[]) ; + end; + free; + end; +end; + +procedure TfrmBpGdCklist.TBDelClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + { if Trim(CDS_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; } +{ with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from BP_InOut A'); + SQL.Add('where A.kcid='''+Trim(CDS_Main.fieldbyname('kcid').AsString)+''' '); + sQL.Add('and A.CRFlag='''''); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('Ѳݣɾ','ʾ',0); + Exit; + end; } + + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + + try + + + with ADOQueryCmd do + begin + Close; + sql.Clear; + + + { sql.Add('update Contract_Cloth_DH set DHPS=A.DHPS - B.RollNum, DHQty=A.DHQty - B.Qty '); + sql.Add('from Contract_Cloth_DH A'); + sql.Add('inner join BP_INout B on cast(B.kcid as varchar)=A.SXDHID and rtrim(B.FirstName)=rtrim(A.FirstName)'); + sql.Add('where B.CRNO='''+Trim(CDS_Main.fieldbyname('CRNO').AsString)+''' '); + sql.Add('and B.CRType=''ӹ'' '); } + + + + sql.Add('delete from YF_Money_CR '); + SQL.Add('where maiNID='''+Trim(CDS_Main.fieldbyname('CRNO').AsString)+''' '); + + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where YFDefFlag1=1 '); + + sql.Add('update BP_kc set RollNum=1, Qty=A.Qty + B.Qty '); + sql.Add('from BP_kc A'); + sql.Add('inner join BP_INout B on B.kcid=A.kcid'); + sql.Add('where B.CRNO='''+Trim(CDS_Main.fieldbyname('CRNO').AsString)+''' '); + + sql.Add('delete from BP_InOut '); + SQL.Add('where CRNO='''+Trim(CDS_Main.fieldbyname('CRNO').AsString)+''' '); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' '+quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(','+quotedstr(trim(self.Caption))); + sql.Add(','+quotedstr(trim('ⵥɾ'))); + sql.Add(','+quotedstr(trim('ⵥţ'+trim(CDS_Main.FieldByName('CRNO').AsString)))); + sql.Add(','+quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + TBRafresh.Click; + except + Application.MessageBox('ɾʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmBpGdCklist.TBRafreshClick(Sender: TObject); +begin + initGrid(); +end; + +procedure TfrmBpGdCklist.TBPrintClick(Sender: TObject); +var + filepath:string; +begin + if CDS_Main.IsEmpty then exit; + + with AdoPrint do + begin + close; + sql.Clear; + sql.Add('exec P_Do_PrintMd '); + sql.Add('@mainID='+quotedstr(trim(CDS_Main.fieldbyname('cRNo').AsString))); + sql.Add(',@flag='+quotedstr(trim('㶫'))); + open; + end; + + try + filepath:=ExtractFilePath(Application.ExeName) + 'report\뵥.rmf'; + if not FileExists(Pchar(filepath)) then + begin + application.MessageBox(pchar('ļ['+filepath+']ڣ'),'ʾϢ',MB_IConError); + exit; + end; + RMVariables['dtxz'] :=FormatDateTime('yyyy-mm-dd',date()); + RMVariables['zdr'] :=trim(DName); + RMVariables['Filler'] :=trim(CDS_Main.fieldbyname('Filler').AsString); + RMGridReport1.LoadFromFile(filepath); + RMGridReport1.ShowReport; + finally + + end; + +end; + +procedure TfrmBpGdCklist.TBExportClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid1); +end; + +procedure TfrmBpGdCklist.TlookClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + frmBpGdCkEdit:=TfrmBpGdCkEdit.create(self); + with frmBpGdCkEdit do + begin + fkeyNo:=self.cds_main.fieldbyname('CRNO').AsString; + fType:=10; + fckName:=self.fckName; + tok.Enabled:=false; + TBPrint.Enabled:=true; + tv1.OptionsData.Editing:=false; + if showmodal=1 then + begin + TBRafresh.Click; + self.CDS_Main.Locate('crNo',trim(fkeyNo),[]) ; + end; + free; + end; +end; + +procedure TfrmBpGdCklist.Tv1DblClick(Sender: TObject); +begin + Tlook.Click; +end; + +procedure TfrmBpGdCklist.TBADD1Click(Sender: TObject); +begin + frmBpGdYPCkEdit:=TfrmBpGdYPCkEdit.create(self); + with frmBpGdYPCkEdit do + begin + fkeyNo:=''; + fType:=0; + fckName:=self.fckName; + if showmodal=1 then + begin + + // self.CDS_Main.Locate('crNo',trim(fkeyNo),[]) ; + end; + free; + end; + TBRafresh.Click; +end; + +end. diff --git a/坯布仓库/U_BpGdYPCkEdit.dfm b/坯布仓库/U_BpGdYPCkEdit.dfm new file mode 100644 index 0000000..c76146e --- /dev/null +++ b/坯布仓库/U_BpGdYPCkEdit.dfm @@ -0,0 +1,601 @@ +object frmBpGdYPCkEdit: TfrmBpGdYPCkEdit + Left = 213 + Top = 123 + Width = 1035 + Height = 564 + Caption = #20986#24211#32534#36753 + 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 = 1019 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#35810 + ImageIndex = 2 + Visible = False + OnClick = TBRafreshClick + end + object TOk: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #30830#23450#20986#24211 + ImageIndex = 41 + OnClick = TOkClick + end + object TBExport: TToolButton + Left = 150 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + Visible = False + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 213 + Top = 0 + AutoSize = True + Caption = #25171#21360 + Enabled = False + ImageIndex = 12 + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 276 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 214 + Width = 1019 + Height = 251 + Align = alTop + TabOrder = 1 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv1CellClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1ckqty + end + item + Kind = skSum + Column = v1money + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = BPCK_DataLink.Default + object v1ssel: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + Properties.ReadOnly = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1P_CodeNamePropertiesButtonClick + Properties.OnEditValueChanged = v1P_CodeNamePropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 152 + end + object v1P_Color: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnEditValueChanged = v1P_ColorPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 98 + end + object v1ckqty: TcxGridDBColumn + Caption = #20986#24211#25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '0.##' + Properties.OnEditValueChanged = v1ckqtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Content = BPCK_DataLink.cxStyle_fontclFuchsia + Styles.Footer = BPCK_DataLink.cxStyle_fontclFuchsia + Styles.Header = BPCK_DataLink.cxStyle_fontclFuchsia + Width = 121 + end + object v1QtyUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 92 + end + object v1price: TcxGridDBColumn + Caption = #20986#24211#20215#26684 + DataBinding.FieldName = 'price' + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '0.##' + Properties.OnEditValueChanged = v1ckqtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 103 + end + object v1money: TcxGridDBColumn + Caption = #20986#24211#37329#39069 + DataBinding.FieldName = 'money' + HeaderAlignmentHorz = taCenter + Styles.Content = BPCK_DataLink.cxStyle_fontclPurple + Styles.Footer = BPCK_DataLink.cxStyle_fontclPurple + Styles.Header = BPCK_DataLink.cxStyle_fontclPurple + Width = 98 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel2: TPanel + Left = 0 + Top = 32 + Width = 1019 + Height = 153 + Align = alTop + BevelOuter = bvNone + Caption = 'Panel2' + TabOrder = 2 + object GroupBox1: TGroupBox + Left = 0 + Top = 0 + Width = 1019 + Height = 97 + Align = alTop + Caption = #20986#24211#20449#24687 + Color = clSkyBlue + Ctl3D = True + ParentColor = False + ParentCtl3D = False + TabOrder = 0 + object Label8: TLabel + Left = 24 + Top = 20 + Width = 52 + Height = 12 + Caption = #20986#24211#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 208 + Top = 20 + Width = 52 + Height = 12 + Caption = #20986#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 420 + Top = 20 + Width = 54 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label1: TLabel + Left = 24 + Top = 72 + Width = 54 + Height = 12 + Caption = #22791' '#27880 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 24 + Top = 44 + Width = 52 + Height = 12 + Caption = #23458#25143#22320#22336 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object CRTime: TDateTimePicker + Left = 88 + Top = 16 + Width = 100 + Height = 20 + Date = 41509.970132187500000000 + Format = 'yyyy-MM-dd' + Time = 41509.970132187500000000 + TabOrder = 0 + OnKeyPress = CRTimeKeyPress + end + object CRType: TComboBox + Tag = 2 + Left = 265 + Top = 16 + Width = 120 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 1 + OnKeyPress = CRTimeKeyPress + Items.Strings = ( + '' + #24191#19996#38646#21806) + end + object cust: TBtnEditA + Left = 484 + Top = 16 + Width = 297 + Height = 20 + ReadOnly = True + TabOrder = 2 + OnKeyPress = CRTimeKeyPress + OnBtnClick = custBtnClick + end + object note: TEdit + Left = 88 + Top = 68 + Width = 693 + Height = 20 + TabOrder = 3 + OnKeyPress = CRTimeKeyPress + end + object custaddress: TEdit + Left = 88 + Top = 40 + Width = 693 + Height = 20 + Enabled = False + TabOrder = 4 + end + end + object GroupBox2: TGroupBox + Left = 0 + Top = 97 + Width = 1019 + Height = 56 + Align = alClient + Caption = #20135#21697#20449#24687 + Color = clSkyBlue + Ctl3D = True + ParentColor = False + ParentCtl3D = False + TabOrder = 1 + object Label2: TLabel + Left = 28 + Top = 28 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 208 + Top = 28 + Width = 54 + Height = 12 + Caption = #25968' '#37327 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 424 + Top = 28 + Width = 54 + Height = 12 + Caption = #21333' '#20215 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object P_CodeName: TBtnEditA + Left = 88 + Top = 24 + Width = 100 + Height = 20 + TabOrder = 0 + OnExit = P_CodeNameExit + OnKeyPress = CRTimeKeyPress + OnBtnClick = P_CodeNameBtnClick + end + object Edit1: TEdit + Left = 268 + Top = 24 + Width = 121 + Height = 20 + TabOrder = 1 + OnKeyPress = CRTimeKeyPress + end + object Edit2: TEdit + Left = 488 + Top = 24 + Width = 121 + Height = 20 + TabOrder = 2 + OnKeyPress = CRTimeKeyPress + end + object Button1: TButton + Left = 620 + Top = 20 + Width = 75 + Height = 25 + Caption = #30830#23450 + TabOrder = 3 + OnClick = Button1Click + end + object CheckBox1: TCheckBox + Left = 736 + Top = 24 + Width = 97 + Height = 17 + Caption = #20840#36873 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 4 + OnClick = CheckBox1Click + end + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 185 + Width = 1019 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 3 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + end + object Panel1: TPanel + Left = 736 + Top = 168 + Width = 213 + Height = 25 + BevelOuter = bvNone + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + object Label23: TLabel + Left = 60 + Top = 4 + Width = 45 + Height = 14 + Caption = #25968#37327#65306 + end + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 680 + Top = 8 + end + object ADOQueryTmp: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 536 + Top = 4 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 576 + Top = 1 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 612 + Top = 5 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 504 + Top = 12 + end + object ADOQuery1: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 740 + Top = 16 + end + object ADOPrint: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 816 + Top = 16 + end + object RMDB_MD: TRMDBDataSet + Visible = True + DataSet = ADOPrint + Left = 848 + Top = 16 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 896 + Top = 8 + ReportData = {} + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 948 + Top = 20 + end + object ADOQuery2: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 828 + Top = 52 + end +end diff --git a/坯布仓库/U_BpGdYPCkEdit.pas b/坯布仓库/U_BpGdYPCkEdit.pas new file mode 100644 index 0000000..1cfedc7 --- /dev/null +++ b/坯布仓库/U_BpGdYPCkEdit.pas @@ -0,0 +1,888 @@ +unit U_BpGdYPCkEdit; + +interface + +uses + Windows, Messages, SysUtils, Variants, cxEdit,Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, DB, cxDBData,cxTextEdit, + cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, DBClient, ADODB, cxGridCustomPopupMenu, + cxGridPopupMenu, cxCheckBox, BtnEdit, cxCurrencyEdit,strUtils, RM_Common, + RM_Class, RM_e_Xls, RM_GridReport, RM_System, RM_Dataset; + +type + TfrmBpGdYPCkEdit = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1QtyUnit: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + TOk: TToolButton; + v1P_Color: TcxGridDBColumn; + v1ckqty: TcxGridDBColumn; + v1price: TcxGridDBColumn; + v1money: TcxGridDBColumn; + Panel2: TPanel; + GroupBox1: TGroupBox; + CRTime: TDateTimePicker; + Label8: TLabel; + CRType: TComboBox; + Label5: TLabel; + Label9: TLabel; + cust: TBtnEditA; + ADOQuery1: TADOQuery; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + Panel1: TPanel; + Label23: TLabel; + ADOPrint: TADOQuery; + RMDB_MD: TRMDBDataSet; + RMGridReport1: TRMGridReport; + RMXLSExport1: TRMXLSExport; + Label1: TLabel; + note: TEdit; + v1ssel: TcxGridDBColumn; + GroupBox2: TGroupBox; + Label2: TLabel; + P_CodeName: TBtnEditA; + Label3: TLabel; + Edit1: TEdit; + Label4: TLabel; + Edit2: TEdit; + Button1: TButton; + CheckBox1: TCheckBox; + custaddress: TEdit; + Label6: TLabel; + ADOQuery2: TADOQuery; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TOkClick(Sender: TObject); + procedure custBtnClick(Sender: TObject); + procedure v1ckqtyPropertiesEditValueChanged(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure v1P_CodeNamePropertiesEditValueChanged(Sender: TObject); + procedure v1P_ColorPropertiesEditValueChanged(Sender: TObject); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure v1P_CodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure P_CodeNameBtnClick(Sender: TObject); + procedure P_CodeNameExit(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure CRTimeKeyPress(Sender: TObject; var Key: Char); + private + procedure InitGrid(); + procedure SetComboBox(); + function savedate():Boolean; + function YSData(ckNo,CkID:string;Order_Main10:TClientDataSet):Boolean; + procedure DoKc(); + { Private declarations } + public + fType:integer; + fCKName:string; + fkeyNO:string; + + { Public declarations } + end; + +var + frmBpGdYPCkEdit: TfrmBpGdYPCkEdit; + +implementation +uses + U_DataLink,U_Fun10,U_ZDYHelp, U_BpRk, U_ZdyAttachCP, U_ZdyAttachment; +{$R *.dfm} +procedure TfrmBpGdYPCkEdit.DoKc(); +begin + Label23.Caption:='0'; + IF CDS_Main.IsEmpty then exit; + IF trim(CDS_Main.fieldbyname('P_CodeName').AsString)='' then exit; + IF trim(CDS_Main.fieldbyname('P_Color').AsString)='' then exit; + with ADOQuery1 do + begin + close; + sql.Clear; + sql.Add('select AA.* '); + sql.Add('FROM( select A.ckName,P_CodeName,A.P_Color,A.QtyUnit,ckQty=0.00,Price=0.00,money=0.00, '); + sql.Add(' SUM(case when CRFlag='''' then Qty else -1 * Qty end ) as Qty '); + sql.Add('from BP_InOut A '); + sql.Add('where P_CodeName='+quotedstr(trim(CDS_Main.fieldbyname('P_CodeName').AsString)) ); + sql.Add('and P_Color='+quotedstr(trim(CDS_Main.fieldbyname('P_Color').AsString)) ); + if trim(FckName)<>'' then + sql.Add('and ckName='+quotedstr(trim(FckName)) ); + sql.Add('group by A.ckName,P_CodeName,A.P_Color,A.QtyUnit)AA '); + open; + end; + IF not ADOQuery1.IsEmpty then + begin +// Label22.Caption:='ƥ'+trim(ADOQuery1.fieldbyname('kcRollNum').AsString); + Label23.Caption:=''+trim(ADOQuery1.fieldbyname('Qty').AsString); + end; +end; +function TfrmBpGdYPCkEdit.YSData(ckNo,CkID:string;Order_Main10:TClientDataSet):Boolean; +var + CRID,YFID,Price,PriceUnit,OrderUnit,FComTaiTou:String; +begin + Result:=False; + with Order_Main10 do + begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(cust.text)+''''); + sql.Add('and YFDefFlag1=1 '); + Open; + end; + if not ADOQuery1.IsEmpty then + begin + CRID:=ADOQuery1.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(cust.text); + FieldByName('ZdyStr1').Value:='Ӧ'; + FieldByName('YFDefFlag1').Value:=1; + Post; + end; + end; + + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID='''+Trim(ckNo)+''''); + sql.Add(' and subID='''+Trim(ckID)+''''); + sql.Add(' and YFName=''㶫'' '); + execsql; + end; + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add(' where MainID='''+Trim(ckNo)+''''); + sql.Add(' and subID='''+Trim(ckID)+''''); + sql.Add(' and YFName=''㶫'' '); + Open; + end; + + if ADOQuery1.IsEmpty then + begin + if GetLSNo(ADOQueryCmd,YFID,'CS','YF_Money_CR',4,1)=False then + begin + Application.MessageBox('ȡӦʧ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(ckNo); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦտǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(cust.Text); + FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',CRTime.DateTime)); + FieldByName('YFType').Value:='Զ'; + FieldByName('ps').Value:=0; + FieldByName('Qty').Value:=Order_Main10.fieldbyname('Qty').AsFloat; + FieldByName('Price').Value:=Order_Main10.fieldbyname('Price').AsFloat; + FieldByName('Money').Value:=Order_Main10.fieldbyname('Money').AsFloat; + FieldByName('BBMoney').Value:=Order_Main10.fieldbyname('Money').AsFloat; + //FieldByName('HuiLv').Value:=1; + FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=''; + FieldByName('QtyUnit').Value:=Trim(Order_Main10.fieldbyname('QtyUnit').AsString); + FieldByName('ComTaiTou').Value:=Trim(cust.Text); + FieldByName('P_CodeName').Value:=trim(Order_Main10.fieldbyname('P_CodeName').AsString); + FieldByName('P_Color').Value:=trim(Order_Main10.fieldbyname('P_Color').AsString); + FieldByName('YFName').Value:='㶫'; + FieldByName('MainId').Value:=Trim(ckNo); + FieldByName('subID').Value:=Trim(ckID); + FieldByName('YFDefFlag1').Value:=1; + FieldByName('syrName').Value:='㶫в'; + Post; + end; + end + else + begin + YFID:=Trim(ADOQuery1.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + end; + Result:=True; +end; +function TfrmBpGdYPCkEdit.savedate():Boolean; +var + fkcID,i:integer; + Filler:string; + FillTime:TdateTime; + maxno:string; +begin + result:=false; + try + ADOQueryCmd.Connection.BeginTrans; + if FType=0 then + begin + if GetLSNo(ADOQueryCmd,fkeyNO,'GC','BP_InOut',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + Filler:=DName; + FillTime:=SGetServerDateTime(adoqueryTmp); + end + else + begin + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from BP_InOut'); + sql.Add('where CRNO='+quotedstr(trim(fkeyNO))); + open; + Filler:=adoqueryTmp.fieldbyname('Filler').AsString; + FillTime:=adoqueryTmp.fieldbyname('FillTime').AsDateTime; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID='''+Trim(fkeyNO)+''''); + sql.Add(' and YFName=''㶫'' '); + sql.Add('and YFDefFlag1=1 '); + execsql; + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from BP_InOut'); + sql.Add('where CRNO='+quotedstr(trim(fkeyNO))); + execsql; + end; + CDS_Main.DisableControls; + CDS_Main.First; + i:=1; + with CDS_Main do + begin + while not eof do + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from BP_InOut'); + sql.Add('where 1=2 '); + open; + end; + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('CRNO').Value:=trim(fkeyNO); + ADOQueryCmd.FieldByName('CRID').Value:=i; + ADOQueryCmd.FieldByName('CKName').Value:=trim(fckName); + // ADOQueryCmd.FieldByName('mainID').Value:=trim(fmainID); + // ADOQueryCmd.FieldByName('subID').Value:=trim(fsubID); + ADOQueryCmd.FieldByName('CRTime').Value:=formatdateTime('yyyy-MM-dd',CRTime.Date); + ADOQueryCmd.FieldByName('CRType').Value:=trim(crType.Text); + ADOQueryCmd.FieldByName('CRFlag').Value:=''; + // ADOQueryCmd.FieldByName('MJID').Value:=trim(fieldbyname('MJID').AsString); + // ADOQueryCmd.FieldByName('MJXH').Value:=trim(fieldbyname('MJXH').AsString); + // ADOQueryCmd.FieldByName('CPTYPE').Value:=trim(fieldbyname('CPTYPE').AsString); + // ADOQueryCmd.FieldByName('P_Code').Value:=trim(fieldbyname('P_Code').AsString); + ADOQueryCmd.FieldByName('P_CodeName').Value:=trim(fieldbyname('P_CodeName').AsString); + // ADOQueryCmd.FieldByName('P_spec').Value:=trim(fieldbyname('P_spec').AsString); + ADOQueryCmd.FieldByName('P_Color').Value:=trim(fieldbyname('P_Color').AsString); + // ADOQueryCmd.FieldByName('P_MF').Value:=fieldbyname('P_MF').AsFloat; + // ADOQueryCmd.FieldByName('P_KZ').Value:=fieldbyname('P_KZ').AsFloat; + ADOQueryCmd.FieldByName('RollNum').Value:=0; + ADOQueryCmd.FieldByName('Qty').Value:=fieldbyname('Qty').AsFloat; + ADOQueryCmd.FieldByName('Price').Value:=fieldbyname('Price').AsFloat; + ADOQueryCmd.FieldByName('money').Value:=fieldbyname('money').AsFloat; + ADOQueryCmd.FieldByName('QtyUnit').Value:=trim(fieldbyname('QtyUnit').AsString); + // ADOQueryCmd.FieldByName('note').Value:=trim(fieldbyname('note').AsString); + ADOQueryCmd.FieldByName('Filler').Value:=trim(Filler); + ADOQueryCmd.FieldByName('FillTime').Value:=dateTimetostr(FillTime); + ADOQueryCmd.FieldByName('cust').Value:=trim(cust.Text); + ADOQueryCmd.FieldByName('custaddress').Value:=trim(custaddress.Text); + ADOQueryCmd.FieldByName('note').Value:=trim(note.Text); + // ADOQueryCmd.FieldByName('FirstNo').Value:=trim(FirstName.TxtCode); + // ADOQueryCmd.FieldByName('FirstName').Value:=trim(FirstName.Text); + if FType=1 then + begin + ADOQueryCmd.FieldByName('editer').Value:=trim(dName); + ADOQueryCmd.FieldByName('editTime').Value:=SGetServerDateTime(ADOQuery1); + end; + ADOQueryCmd.Post; + IF trim(CRType.Text)='㶫' then + begin + if not YSData(fkeyNo,inttostr(i),CDS_Main) then + begin + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + exit; + end; + end; + i:=i+1; + next; + end; + end; + + CDS_Main.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + result:=true; + except + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; +procedure TfrmBpGdYPCkEdit.SetComboBox(); +begin + { ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCK'' '); + if trim(fCKName)<>'' then + sql.Add('and zdyName='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count>0 then ckName.ItemIndex:=0; } + + CRType.Items.Clear; + // CRType.Items.Add(''); + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCKTYPE'''); + if trim(fCKName)<>'' then + sql.Add('and note='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count>0 then CRType.ItemIndex:=0; +end; +procedure TfrmBpGdYPCkEdit.InitGrid(); +begin + try + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select A.* from BP_InOut A'); + sql.Add('where A.CRNO='+quotedstr(trim(fkeyNO))); + open; + end; + SCreateCDS20(adoqueryTmp,CDS_Main); + SInitCDSData20(adoqueryTmp,CDS_Main); + if not CDS_Main.IsEmpty then + begin + CRTime.Date:= CDS_Main.fieldbyname('CRTime').AsDateTime; + // CKName.ItemIndex:=CKName.Items.IndexOf(trim(CDS_Main.fieldbyname('CKName').AsString)); + CRType.ItemIndex:=CRType.Items.IndexOf(trim(CDS_Main.fieldbyname('CRType').AsString)); + cust.Text:= trim(CDS_Main.fieldbyname('cust').AsString); + custaddress.Text:= trim(CDS_Main.fieldbyname('custaddress').AsString); + note.Text:= trim(CDS_Main.fieldbyname('note').AsString); + end; + finally + end; +end; + +procedure TfrmBpGdYPCkEdit.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + writeCxGrid(self.Caption,Tv1,'ƥֿ'); + if fType=10 then Action:=cahide + else Action:=cafree; +end; + +procedure TfrmBpGdYPCkEdit.FormDestroy(Sender: TObject); +begin + frmBpGdYPCkEdit:=nil; +end; + +procedure TfrmBpGdYPCkEdit.FormShow(Sender: TObject); +begin +{ if fType=10 then + begin + TOk.Visible:=true; + // v1Ssel.Visible:=true; + v1ckqty.Visible:=true; + v1price.Visible:=true; + v1money.Visible:=true; + GroupBox1.Visible:=true; + end + else + begin + TOk.Visible:=false; + // v1Ssel.Visible:=false; + v1ckqty.Visible:=false; + v1price.Visible:=false; + v1money.Visible:=false; + GroupBox1.Visible:=false; + end; } + readCxGrid(self.Caption,Tv1,'ƥֿ'); + SetComboBox(); + InitGrid(); +end; + +procedure TfrmBpGdYPCkEdit.FormCreate(Sender: TObject); +begin + //BegDate.Date:=DServerDate-7; +// EndDate.Date:=DServerDate; + CRTime.date:= DServerDate; + cxGrid1.Align:=alclient; + +end; + +procedure TfrmBpGdYPCkEdit.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmBpGdYPCkEdit.TBRafreshClick(Sender: TObject); +begin + + initGrid(); +end; + +procedure TfrmBpGdYPCkEdit.TBPrintClick(Sender: TObject); +var + filepath:string; +begin + if trim(fkeyNO)='' then exit; + + with AdoPrint do + begin + close; + sql.Clear; + sql.Add('exec P_Do_PrintMd '); + sql.Add('@mainID='+quotedstr(trim(fkeyNO))); + sql.Add(',@flag='+quotedstr(trim('㶫'))); + open; + end; + + try + filepath:=ExtractFilePath(Application.ExeName) + 'report\뵥.rmf'; + if not FileExists(Pchar(filepath)) then + begin + application.MessageBox(pchar('ļ['+filepath+']ڣ'),'ʾϢ',MB_IConError); + exit; + end; + RMVariables['dtxz'] :=FormatDateTime('yyyy-mm-dd',date()); + RMVariables['zdr'] :=trim(DName); + RMVariables['Filler'] :=trim(DName); + RMGridReport1.LoadFromFile(filepath); + RMGridReport1.ShowReport; + finally + + end; + +end; + +procedure TfrmBpGdYPCkEdit.TBExportClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid1); +end; + +procedure TfrmBpGdYPCkEdit.TOkClick(Sender: TObject); +begin + CRTIME.SetFocus; + IF CDS_Main.IsEmpty then exit; + if trim(CRType.Text)='' then + begin + application.MessageBox('ͲΪգ','ʾϢ',0); + exit; + end; + if trim(cust.Text)=''then + begin + application.MessageBox('ͻΪգ','ʾϢ',0); + exit; + end; + if savedate() then + begin + application.MessageBox('ݱɹ','ʾϢ'); + TOk.Enabled:=false; + TBPrint.Enabled:=true; + // ModalResult:=1; + end + else + begin + application.MessageBox('ݱʧܣ','ʾϢ',MB_ICONERROR); + end; +end; + +procedure TfrmBpGdYPCkEdit.custBtnClick(Sender: TObject); +begin + try + frmZdyAttachment:=TfrmZdyAttachment.Create(Application); + with frmZdyAttachment do + begin + fkhType:='㶫ͻ'; + if ShowModal=1 then + begin + cust.Text:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + custaddress.Text:=Trim(CDS_HZ.fieldbyname('defnote1').AsString); + end; + end; + finally + frmZdyAttachment.Free; + end; +end; + +procedure TfrmBpGdYPCkEdit.v1ckqtyPropertiesEditValueChanged(Sender: TObject); +var + mvalue,fieldname,qty1,qty2:String; + num1:double; + +begin + fieldname:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + with CDS_Main do + begin + Edit; + FieldByName(Trim(fieldname)).Value:=TcxTextEdit(Sender).EditingText; + num1:=FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat; + FieldByName('Money').Value:=strtofloat(format('%.2f',[num1])); + Post; + end; + Tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmBpGdYPCkEdit.CheckBox1Click(Sender: TObject); +begin + IF CDS_Main.IsEmpty then exit; + with CDS_Main do + begin + DisableControls; + first; + while not eof do + begin + edit; + fieldbyname('ssel').Value:=checkbox1.Checked; + post; + next; + end; + First; + EnableControls; + end; +// TBRafresh.Click; +end; + +procedure TfrmBpGdYPCkEdit.ToolButton1Click(Sender: TObject); +begin + CopyAddRow(Tv1,CDS_Main); + CDS_Main.edit; + CDS_Main.fieldbyname('QtyUnit').Value:='M'; + CDS_Main.Post; +end; + +procedure TfrmBpGdYPCkEdit.ToolButton2Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then exit; + with CDS_Main do + begin + DisableControls; + first; + while not eof do + begin + if CDS_Main.Locate('ssel',true,[]) then + begin + CDS_Main.Delete; + end + else + begin + First; + EnableControls; + exit; + end; + //next; + end; + First; + EnableControls; + end; + +end; + +procedure TfrmBpGdYPCkEdit.v1P_CodeNamePropertiesEditValueChanged( + Sender: TObject); +var + mvalue:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + + IF trim(mvalue)='' then exit; + + IF rightBstr(trim(mvalue),1)<>'#'THEN + BEGIn + mvalue:=trim(mvalue)+'#'; + END; + + + with CDS_Main do + begin + Edit; + FieldByName('P_CodeName').Value:=Trim(mvalue); + Post; + end; + self.tv1.Controller.EditingController.ShowEdit(); + DoKc(); + + with ADOQuery1 do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment A '); + sql.Add('where zdyName='+quotedstr(trim(CDS_Main.fieldbyname('P_CodeName').AsString))); + open; + end; + IF ADOQuery1.IsEmpty then + begin + application.MessageBox('Ʒڣ','ʾϢ',0); + with CDS_Main do + begin + Edit; + FieldByName('P_CodeName').Value:=''; + Post; + end; + exit; + end; + +end; + +procedure TfrmBpGdYPCkEdit.v1P_ColorPropertiesEditValueChanged( + Sender: TObject); +var + mvalue:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + + IF trim(mvalue)='' then exit; + + IF rightBstr(trim(mvalue),1)<>'#'THEN + BEGIn + mvalue:=trim(mvalue)+'#'; + END; + + + with CDS_Main do + begin + Edit; + FieldByName('P_Color').Value:=Trim(mvalue); + Post; + end; + self.tv1.Controller.EditingController.ShowEdit(); + DoKc(); + + with ADOQuery1 do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment A '); + sql.Add('where zdyName='+quotedstr(trim(CDS_Main.fieldbyname('P_CodeName').AsString))); + sql.Add('and DEFstr3='+quotedstr(trim(CDS_Main.fieldbyname('P_Color').AsString))); + open; + end; + IF ADOQuery1.IsEmpty then + begin + application.MessageBox('ɫڣ','ʾϢ',0); + with CDS_Main do + begin + Edit; + FieldByName('P_Color').Value:=''; + Post; + end; + end; +end; + +procedure TfrmBpGdYPCkEdit.Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + DoKc(); +end; + +procedure TfrmBpGdYPCkEdit.v1P_CodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZdyAttachCP:=TfrmZdyAttachCP.Create(Application); + with frmZdyAttachCP do + begin + if ShowModal=1 then + begin + Self.CDS_main.Edit; + Self.CDS_main.FieldByName('P_Code').Value:=Trim(CDS_HZ.fieldbyname('ZdyCode').AsString); + Self.CDS_main.FieldByName('P_CodeName').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + Self.CDS_main.FieldByName('P_Color').Value:=Trim(CDS_HZ.fieldbyname('DEFstr3').AsString); + // Self.Order_Sub.FieldByName('SOrddefstr4').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + Self.CDS_main.Post; + end; + end; + finally + frmZdyAttachCP.Free; + end; + self.tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmBpGdYPCkEdit.P_CodeNameBtnClick(Sender: TObject); +begin + try + frmZdyAttachCP:=TfrmZdyAttachCP.Create(Application); + with frmZdyAttachCP do + begin + if ShowModal=1 then + begin + Self.P_COdeName.Text:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZdyAttachCP.Free; + end; +end; + +procedure TfrmBpGdYPCkEdit.P_CodeNameExit(Sender: TObject); +var + mvalue:string; +begin + mvalue:=trim(P_CodeName.Text); + IF trim(mvalue)='' then exit; + + IF rightBstr(trim(mvalue),1)<>'#'THEN + BEGIn + mvalue:=trim(mvalue)+'#'; + END; + P_CodeName.Text:= trim(mvalue); + + with ADOQuery1 do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment A '); + sql.Add('where zdyName='+quotedstr(trim(mvalue))); + open; + end; + IF ADOQuery1.IsEmpty then + begin + application.MessageBox('Ʒڣ','ʾϢ',0); + P_CodeName.Text:=''; + exit; + end; +end; + +procedure TfrmBpGdYPCkEdit.Button1Click(Sender: TObject); +begin + with ADOQuery1 do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment A '); + sql.Add('where zdyName='+quotedstr(trim(P_CodeName.Text))); + open; + end; + + CDS_Main.DisableControls; + CDS_Main.Last; + while not ADOQuery1.Eof do + begin + CDS_Main.Append; + CDS_main.FieldByName('P_Code').Value:=Trim(ADOQuery1.fieldbyname('ZdyCode').AsString); + CDS_main.FieldByName('P_CodeName').Value:=Trim(ADOQuery1.fieldbyname('ZDYName').AsString); + CDS_main.FieldByName('P_Color').Value:=Trim(ADOQuery1.fieldbyname('DEFstr3').AsString); + CDS_main.FieldByName('Qty').Value:=strtofloatdef(trim(edit1.Text),0); + CDS_main.FieldByName('Price').Value:=strtofloatdef(trim(edit2.Text),0); + CDS_main.FieldByName('Money').Value:=strtofloat(format('%.2f',[CDS_main.FieldByName('Qty').AsFloat * CDS_main.FieldByName('Price').AsFloat])); + CDS_Main.Post; + ADOQuery1.Next; + end; + CDS_Main.EnableControls; + +end; + +procedure TfrmBpGdYPCkEdit.CRTimeKeyPress(Sender: TObject; var Key: Char); +begin + Key:=UpCase(Key); + if key=#13 then + begin + perform(WM_NEXTDLGCTL,0,0); + Key := #0; + end; +end; + +end. diff --git a/坯布仓库/U_BpJGlist.dfm b/坯布仓库/U_BpJGlist.dfm new file mode 100644 index 0000000..a10326d --- /dev/null +++ b/坯布仓库/U_BpJGlist.dfm @@ -0,0 +1,450 @@ +object frmBpJGlist: TfrmBpJGlist + Left = 172 + Top = 168 + Width = 1123 + Height = 501 + Caption = #24211#23384#20449#24687#34920 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1107 + AutoSize = True + 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 = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#35810 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TOk: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #30830#23450 + ImageIndex = 41 + Visible = False + OnClick = TOkClick + end + object TBExport: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1107 + Height = 41 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 15 + Top = 15 + Width = 52 + Height = 12 + Caption = #21152#24037#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 176 + Top = 12 + Width = 7 + Height = 12 + Caption = '-' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 332 + Top = 16 + Width = 39 + Height = 12 + Caption = #21152#24037#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 772 + Top = 16 + Width = 52 + Height = 12 + Caption = #35268#26684#22411#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 212 + Top = 140 + Width = 52 + Height = 12 + Caption = #20837#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 288 + Top = 72 + Width = 24 + Height = 12 + Caption = #20179#24211 + end + object Label7: TLabel + Left = 540 + Top = 16 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 72 + Top = 11 + Width = 100 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 188 + Top = 11 + Width = 100 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object cust: TEdit + Tag = 2 + Left = 376 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = custChange + end + object P_spec: TEdit + Tag = 2 + Left = 824 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = custChange + end + object CRType: TComboBox + Tag = 2 + Left = 268 + Top = 136 + Width = 120 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 4 + OnChange = custChange + Items.Strings = ( + '' + #29983#20135#20837#24211) + end + object CheckBox1: TCheckBox + Left = 548 + Top = 116 + Width = 97 + Height = 17 + Caption = #21547#24211#23384#20026#38646 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + end + object ckName: TComboBox + Left = 320 + Top = 68 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 6 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object Edit1: TEdit + Tag = 2 + Left = 592 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 7 + OnChange = custChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 73 + Width = 1107 + Height = 316 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1RollNum + end + item + Kind = skSum + Column = v1Qty + end + item + Kind = skSum + Column = v1Column2 + end + item + Kind = skSum + Column = v1Column3 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = BPCK_DataLink.Default + object v1Column6: TcxGridDBColumn + Caption = #21152#24037#26085#26399 + DataBinding.FieldName = 'CRTIme' + HeaderAlignmentHorz = taCenter + Width = 95 + end + object v1Column1: TcxGridDBColumn + Caption = #21152#24037#21378 + DataBinding.FieldName = 'cust' + HeaderAlignmentHorz = taCenter + Width = 142 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 102 + end + object v1P_SPEC: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'P_SPEC' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 90 + end + object v1RollNum: TcxGridDBColumn + Caption = #30333#22383#21305#25968 + DataBinding.FieldName = 'RollNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = BPCK_DataLink.FontBlue + Styles.Footer = BPCK_DataLink.FontBlue + Styles.Header = BPCK_DataLink.FontBlue + Width = 77 + end + object v1Qty: TcxGridDBColumn + Caption = #30333#22383#25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = BPCK_DataLink.FontBlue + Styles.Footer = BPCK_DataLink.FontBlue + Styles.Header = BPCK_DataLink.FontBlue + Width = 68 + end + object v1QtyUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1Column2: TcxGridDBColumn + Caption = #25104#21697#21305#25968 + DataBinding.FieldName = 'JGRollNum' + HeaderAlignmentHorz = taCenter + Styles.Content = BPCK_DataLink.cxStyle_fontclFuchsia + Styles.Footer = BPCK_DataLink.cxStyle_fontclFuchsia + Styles.Header = BPCK_DataLink.cxStyle_fontclFuchsia + Width = 70 + end + object v1Column3: TcxGridDBColumn + Caption = #25104#21697#25968#37327 + DataBinding.FieldName = 'JGQty' + HeaderAlignmentHorz = taCenter + Styles.Content = BPCK_DataLink.cxStyle_fontclFuchsia + Styles.Footer = BPCK_DataLink.cxStyle_fontclFuchsia + Styles.Header = BPCK_DataLink.cxStyle_fontclFuchsia + Width = 70 + end + object v1Column4: TcxGridDBColumn + Caption = #21152#24037#25439#32791 + DataBinding.FieldName = 'SH_Qty' + HeaderAlignmentHorz = taCenter + Styles.Content = BPCK_DataLink.cxStyle_fontclPurple + Styles.Footer = BPCK_DataLink.cxStyle_fontclPurple + Styles.Header = BPCK_DataLink.cxStyle_fontclPurple + Width = 70 + end + object v1Column5: TcxGridDBColumn + Caption = #21152#24037#32553#29575 + DataBinding.FieldName = 'SH_Qty_Rate' + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '0.00%;-,0.00%' + HeaderAlignmentHorz = taCenter + Styles.Content = BPCK_DataLink.cxStyle_fontclPurple + Styles.Footer = BPCK_DataLink.cxStyle_fontclPurple + Styles.Header = BPCK_DataLink.cxStyle_fontclPurple + Width = 70 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 680 + Top = 8 + end + object ADOQueryTmp: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 536 + Top = 4 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 576 + Top = 1 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 612 + Top = 5 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 504 + Top = 12 + end +end diff --git a/坯布仓库/U_BpJGlist.pas b/坯布仓库/U_BpJGlist.pas new file mode 100644 index 0000000..05aaed0 --- /dev/null +++ b/坯布仓库/U_BpJGlist.pas @@ -0,0 +1,219 @@ +unit U_BpJGlist; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, + cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, DBClient, ADODB, cxGridCustomPopupMenu, + cxGridPopupMenu, cxCheckBox, cxCurrencyEdit; + +type + TfrmBpJGlist = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1P_SPEC: TcxGridDBColumn; + v1RollNum: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1QtyUnit: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + Label2: TLabel; + Label3: TLabel; + Label4: TLabel; + cust: TEdit; + P_spec: TEdit; + CRType: TComboBox; + Label5: TLabel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + TOk: TToolButton; + CheckBox1: TCheckBox; + ckName: TComboBox; + Label6: TLabel; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + Edit1: TEdit; + Label7: TLabel; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure custChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TOkClick(Sender: TObject); + private + procedure InitGrid(); + procedure SetComboBox(); + { Private declarations } + public + fType:integer; + fCKName:string; + + { Public declarations } + end; + +var + frmBpJGlist: TfrmBpJGlist; + +implementation +uses + U_DataLink,U_Fun10,U_ZDYHelp, U_BpRk; +{$R *.dfm} +procedure TfrmBpJGlist.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCK'' '); + if trim(fCKName)<>'' then + sql.Add('and zdyName='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count>0 then ckName.ItemIndex:=0; + + CRType.Items.Clear; + CRType.Items.Add(''); + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPRKTYPE'''); + if trim(fCKName)<>'' then + sql.Add('and note='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count>0 then CRType.ItemIndex:=0; +end; +procedure TfrmBpJGlist.InitGrid(); +begin + try + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('exec P_Qty_JGSH'); + sql.add('@begdate='''+formatdateTime('yyyy-MM-dd',begdate.Date)+''''); + sql.add(',@enddate='''+formatdateTime('yyyy-MM-dd',enddate.Date+1)+''''); + { sql.Add('select * from BP_KC A'); + sql.Add('where 1=1'); + if begdate.Checked then + sql.Add('and CRTime>='''+formatdateTime('yyyy-MM-dd',begdate.Date)+''' '); + if enddate.Checked then + sql.Add('and CRTime<'''+formatdateTime('yyyy-MM-dd',enddate.Date+1)+''' '); + if not CheckBox1.Checked then + sql.Add('and (RollNum<>0 or qty<>0 ) '); + if trim(FckName)<>'' then + sql.Add('and ckName='+quotedstr(trim(FckName)) ); } + open; + end; + SCreateCDS20(adoqueryTmp,CDS_Main); + SInitCDSData20(adoqueryTmp,CDS_Main); + finally + end; +end; + +procedure TfrmBpJGlist.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + writeCxGrid(self.Caption,Tv1,'ƥֿ'); + if fType=10 then Action:=cahide + else Action:=cafree; +end; + +procedure TfrmBpJGlist.FormDestroy(Sender: TObject); +begin + frmBpJGlist:=nil; +end; + +procedure TfrmBpJGlist.custChange(Sender: TObject); +begin + if ADOQueryTmp.Active=False then Exit; + SDofilter(ADOQueryTmp,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryTmp,CDS_Main); + SInitCDSData20(ADOQueryTmp,CDS_Main); +end; + +procedure TfrmBpJGlist.FormShow(Sender: TObject); +begin + if fType=10 then + begin + TOk.Visible:=true; + end; + readCxGrid(self.Caption,Tv1,'ƥֿ'); + SetComboBox(); + InitGrid(); +end; + +procedure TfrmBpJGlist.FormCreate(Sender: TObject); +begin + BegDate.Date:=DServerDate-7; + EndDate.Date:=DServerDate; + cxGrid1.Align:=alclient; + +end; + +procedure TfrmBpJGlist.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmBpJGlist.TBRafreshClick(Sender: TObject); +begin + + initGrid(); +end; + +procedure TfrmBpJGlist.TBPrintClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid1); +end; + +procedure TfrmBpJGlist.TBExportClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid1); +end; + +procedure TfrmBpJGlist.TOkClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + ModalResult:=1; +end; + +end. diff --git a/坯布仓库/U_BpRk.dfm b/坯布仓库/U_BpRk.dfm new file mode 100644 index 0000000..9d57c24 --- /dev/null +++ b/坯布仓库/U_BpRk.dfm @@ -0,0 +1,611 @@ +object frmbpRk: TfrmbpRk + Left = 315 + Top = 166 + Width = 1086 + Height = 500 + BorderIcons = [biSystemMenu] + Caption = #20837#24211#20449#24687 + 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 + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1070 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBPrint: TToolButton + Left = 63 + Top = 0 + Caption = #25171#21360#36864#36135#21333 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 158 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 29 + Width = 1070 + Height = 76 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 36 + Top = 20 + Width = 52 + Height = 12 + Caption = #20837#24211#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 372 + Top = 20 + Width = 52 + Height = 12 + Caption = #20837#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 212 + Top = 20 + Width = 26 + Height = 12 + Caption = #20179#24211 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 36 + Top = 148 + Width = 54 + Height = 12 + Caption = #22791' '#27880 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 548 + Top = 20 + Width = 39 + Height = 12 + Caption = #20379#24212#21830 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 876 + Top = 20 + Width = 54 + Height = 12 + Caption = #25968' '#37327 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 876 + Top = 48 + Width = 52 + Height = 12 + Caption = #22797#21046#34892#25968 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 36 + Top = 124 + Width = 52 + Height = 12 + Caption = #23458#25143#22320#22336 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 712 + Top = 20 + Width = 39 + Height = 12 + Caption = #21152#24037#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object CRTime: TDateTimePicker + Left = 92 + Top = 16 + Width = 100 + Height = 20 + Date = 41509.970132187500000000 + Format = 'yyyy-MM-dd' + Time = 41509.970132187500000000 + TabOrder = 0 + end + object CRType: TComboBox + Left = 424 + Top = 16 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 1 + Text = #29983#20135#20837#24211 + Items.Strings = ( + #29983#20135#20837#24211) + end + object ckName: TComboBox + Left = 244 + Top = 16 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 2 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object note: TEdit + Left = 92 + Top = 144 + Width = 653 + Height = 20 + TabOrder = 3 + end + object cust: TBtnEditA + Left = 588 + Top = 16 + Width = 100 + Height = 20 + TabOrder = 4 + OnBtnClick = custBtnClick + end + object Edit1: TEdit + Left = 928 + Top = 16 + Width = 80 + Height = 20 + TabOrder = 5 + OnKeyPress = Edit1KeyPress + end + object Edit2: TEdit + Left = 928 + Top = 44 + Width = 80 + Height = 20 + TabOrder = 6 + OnKeyPress = Edit2KeyPress + end + object custaddress: TEdit + Left = 92 + Top = 120 + Width = 653 + Height = 20 + Enabled = False + TabOrder = 7 + end + object factoryName: TBtnEditA + Left = 752 + Top = 16 + Width = 100 + Height = 20 + TabOrder = 8 + OnBtnClick = factoryNameBtnClick + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 134 + Width = 1070 + Height = 260 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1RollNum + end + item + Kind = skSum + Column = v1Qty + end + item + Kind = skSum + Column = v1Column2 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = BPCK_DataLink.Default + object v1Column3: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1P_CodeNamePropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'P_SPEC' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 90 + end + object v1P_Color: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1P_ColorPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column4: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'gangNo' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1P_MF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'P_MF' + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1P_KZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'P_KZ' + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1CPType: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'CPType' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsEditFixedList + Properties.Items.Strings = ( + #27491#21697 + #19968#31561#27425#21697 + #20108#31561#27425#21697) + Properties.ReadOnly = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1RollNum: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'RollNum' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Styles.Content = BPCK_DataLink.FontBlue + Styles.Footer = BPCK_DataLink.FontBlue + Styles.Header = BPCK_DataLink.FontBlue + Width = 60 + end + object v1Qty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1QtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Content = BPCK_DataLink.FontBlue + Styles.Footer = BPCK_DataLink.FontBlue + Styles.Header = BPCK_DataLink.FontBlue + Width = 60 + end + object v1QtyUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1QtyUnitPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 76 + end + object v1Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1QtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v1Column2: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'money' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = BPCK_DataLink.cxStyle_fontclPurple + Styles.Footer = BPCK_DataLink.cxStyle_fontclPurple + Styles.Header = BPCK_DataLink.cxStyle_fontclPurple + Width = 95 + end + object Tv1Column1: TcxGridDBColumn + Caption = #24211#20301 + DataBinding.FieldName = 'KuWei' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = Tv1Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv1Column2: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'P_ColorNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = Tv1Column2PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv1Column3: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'note' + HeaderAlignmentHorz = taCenter + Width = 66 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 105 + Width = 1070 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 3 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 292 + end + object ADOQueryTmp: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 344 + Top = 4 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 400 + Top = 1 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 1 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 556 + Top = 9 + end + object ADOQuery1: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 500 + Top = 8 + end + object ADOPrint: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 816 + Top = 16 + end + object RMDB_MD: TRMDBDataSet + Visible = True + DataSet = ADOPrint + Left = 848 + Top = 16 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 896 + Top = 8 + ReportData = {} + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 948 + Top = 20 + end + object ADOQuery2: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 312 + Top = 256 + end +end diff --git a/坯布仓库/U_BpRk.pas b/坯布仓库/U_BpRk.pas new file mode 100644 index 0000000..9de45e0 --- /dev/null +++ b/坯布仓库/U_BpRk.pas @@ -0,0 +1,1177 @@ +unit U_BpRk; + +interface + +uses + Windows, Messages, SysUtils, StrUtils, Variants, Classes, Graphics, Controls, + Forms, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGridLevel, cxClasses, cxControls, cxGridCustomView, + cxGrid, StdCtrls, ComCtrls, ExtCtrls, ToolWin, cxButtonEdit, cxDropDownEdit, + DBClient, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, cxTextEdit, BtnEdit, + RM_Common, RM_Class, RM_e_Xls, RM_GridReport, RM_System, RM_Dataset, + cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; + +type + TfrmbpRk = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + CRTime: TDateTimePicker; + Label2: TLabel; + CRType: TComboBox; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1P_MF: TcxGridDBColumn; + v1P_KZ: TcxGridDBColumn; + v1RollNum: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1QtyUnit: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + cxGridPopupMenu1: TcxGridPopupMenu; + Label3: TLabel; + ckName: TComboBox; + v1CPType: TcxGridDBColumn; + v1P_Color: TcxGridDBColumn; + note: TEdit; + Label4: TLabel; + cust: TBtnEditA; + Label9: TLabel; + ADOQuery1: TADOQuery; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + Edit1: TEdit; + Label5: TLabel; + Label6: TLabel; + Edit2: TEdit; + TBPrint: TToolButton; + ADOPrint: TADOQuery; + RMDB_MD: TRMDBDataSet; + RMGridReport1: TRMGridReport; + RMXLSExport1: TRMXLSExport; + custaddress: TEdit; + Label7: TLabel; + factoryName: TBtnEditA; + Label8: TLabel; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + Tv1Column1: TcxGridDBColumn; + Tv1Column2: TcxGridDBColumn; + ADOQuery2: TADOQuery; + Tv1Column3: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure v1P_CodeNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure v1P_ColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure custBtnClick(Sender: TObject); + procedure v1QtyPropertiesEditValueChanged(Sender: TObject); + procedure Edit1KeyPress(Sender: TObject; var Key: Char); + procedure Edit2KeyPress(Sender: TObject; var Key: Char); + procedure TBPrintClick(Sender: TObject); + procedure factoryNameBtnClick(Sender: TObject); + procedure v1Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1QtyUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure Tv1Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure Tv1Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + private + procedure InitGrid(); + function savedate(): Boolean; + procedure SetComboBox(); + function YSData_gd(ckNo, CkID: string; Order_Main10: TClientDataSet): Boolean; + function YSData_YP(ckNo, CkID: string; Order_Main10: TClientDataSet): Boolean; + function YFData(): Boolean; + { Private declarations } + public + fkeyNO: string; + FType: integer; + fCKName: string; + { Public declarations } + end; + +var + frmbpRk: TfrmbpRk; + +implementation + +uses + U_DataLink, U_Fun10, U_ZDYHelp, U_ZdyAttachCP, U_ZdyAttachment, U_ZdyAttachGYS, + U_ProductOrderNewListSEl, U_CPKWListSel, U_ZdyYS_Sel; +{$R *.dfm} + +function TfrmbpRk.YFData(): Boolean; +var + CRID, YFID, Price, PriceUnit, OrderUnit, FComTaiTou: string; +begin + Result := False; + with ADOQueryTmp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName=''' + Trim(cust.Text) + ''' and YFDefFlag1=0 '); + Open; + end; + + if not ADOQueryTmp.IsEmpty then + begin + CRID := ADOQueryTmp.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID := ADOQueryCmd.fieldbyname('CRID').AsString; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + sql.Add(' and subID=''' + Trim(CDS_Main.fieldbyname('CRID').AsString) + ''''); + sql.Add(' and YFName=''ɹ'' '); + execsql; + end; + + with ADOQueryTmp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + sql.Add(' and subID=''' + Trim(CDS_Main.fieldbyname('CRID').AsString) + ''''); + sql.Add(' and YFName=''ɹ'' '); + Open; + end; + + if ADOQueryTmp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd, YFID, 'CF', 'YF_Money_CR', 3, 1) = False then + begin + Application.MessageBox('ȡӦʧ!', 'ʾ', 0); + Exit; + end; + end + else + begin + YFID := Trim(ADOQueryTmp.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where YFID=''' + trim(YFID) + ''''); + Open; + end; + + with ADOQueryCmd do + begin + if IsEmpty then + Append + else + edit; + FieldByName('YFID').Value := Trim(YFID); + FieldByName('YFTypeId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('CRType').Value := 'ӦǼ'; + FieldByName('CRFlag').Value := 'Ӧ'; + FieldByName('QtyFlag').Value := 1; + FieldByName('FactoryName').Value := Trim(cust.Text); + FieldByName('CRTime').Value := Trim(FormatDateTime('yyyy-MM-dd', CRTime.DateTime)); + FieldByName('YFType').Value := 'Զ'; + FieldByName('ps').Value := CDS_Main.fieldbyname('RollNum').AsFloat; + FieldByName('Qty').Value := CDS_Main.fieldbyname('Qty').AsFloat; + FieldByName('Price').Value := CDS_Main.fieldbyname('Price').AsFloat; + FieldByName('Money').Value := CDS_Main.fieldbyname('Money').AsFloat; + FieldByName('BBMoney').Value := CDS_Main.fieldbyname('Money').AsFloat; + FieldByName('HuiLv').Value := 1; + FieldByName('BZType').Value := ''; + FieldByName('QtyUnit').Value := Trim(CDS_Main.fieldbyname('QtyUnit').AsString); + FieldByName('ComTaiTou').Value := Trim(cust.Text); + FieldByName('YFName').Value := 'ɹ'; + FieldByName('MainId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + FieldByName('subID').Value := Trim(CDS_Main.fieldbyname('CRID').AsString); + FieldByName('status').Value := '0'; + Post; + end; + + Result := True; +end; + +function TfrmbpRk.YSData_gd(ckNo, CkID: string; Order_Main10: TClientDataSet): Boolean; +var + CRID, YFID, Price, PriceUnit, OrderUnit, FComTaiTou: string; +begin + Result := False; + with Order_Main10 do + begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName=''' + Trim(cust.text) + ''''); + sql.Add('and YFDefFlag1=1 '); + Open; + end; + if not ADOQuery1.IsEmpty then + begin + CRID := ADOQuery1.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID := ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('FactoryName').Value := Trim(cust.text); + FieldByName('ZdyStr1').Value := 'Ӧ'; + FieldByName('YFDefFlag1').Value := 1; + Post; + end; + end; + + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(ckNo) + ''''); + sql.Add(' and subID=''' + Trim(CkID) + ''''); + sql.Add(' and YFName=''㶫˻'' '); + execsql; + end; + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(ckNo) + ''''); + sql.Add(' and subID=''' + Trim(CkID) + ''''); + sql.Add(' and YFName=''㶫˻'' '); + Open; + end; + if ADOQuery1.IsEmpty then + begin + if GetLSNo(ADOQueryCmd, YFID, 'TH', 'YF_Money_CR', 4, 1) = False then + begin + Application.MessageBox('ȡӦʧ!', 'ʾ', 0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value := Trim(YFID); + FieldByName('YFTypeId').Value := Trim(ckNo); + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('CRType').Value := 'ӦտǼ'; + FieldByName('CRFlag').Value := 'Ӧ'; + FieldByName('QtyFlag').Value := 1; + FieldByName('FactoryName').Value := Trim(cust.Text); + FieldByName('CRTime').Value := Trim(FormatDateTime('yyyy-MM-dd', CRTime.DateTime)); + FieldByName('YFType').Value := 'Զ'; + FieldByName('ps').Value := -1 * Order_Main10.fieldbyname('RollNum').AsFloat; + FieldByName('Qty').Value := -1 * Order_Main10.fieldbyname('Qty').AsFloat; + FieldByName('Price').Value := Order_Main10.fieldbyname('Price').AsFloat; + FieldByName('Money').Value := -1 * Order_Main10.fieldbyname('Money').AsFloat; + FieldByName('BBMoney').Value := -1 * Order_Main10.fieldbyname('Money').AsFloat; + //FieldByName('HuiLv').Value:=1; + FieldByName('HuiLv').Value := 1; + FieldByName('BZType').Value := ''; + FieldByName('QtyUnit').Value := Trim(Order_Main10.fieldbyname('QtyUnit').AsString); + FieldByName('ComTaiTou').Value := Trim(cust.Text); + FieldByName('P_CodeName').Value := trim(Order_Main10.fieldbyname('P_CodeName').AsString); + FieldByName('P_Color').Value := trim(Order_Main10.fieldbyname('P_Color').AsString); + FieldByName('YFName').Value := '㶫˻'; + FieldByName('MainId').Value := Trim(ckNo); + FieldByName('subID').Value := Trim(CkID); + FieldByName('YFDefFlag1').Value := 1; + FieldByName('syrName').Value := '㶫в'; + Post; + end; + end + else + begin + YFID := Trim(ADOQuery1.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID=' + CRID); + ExecSQL; + end; + end; + Result := True; +end; + +function TfrmbpRk.YSData_YP(ckNo, CkID: string; Order_Main10: TClientDataSet): Boolean; +var + CRID, YFID, Price, PriceUnit, OrderUnit, FComTaiTou: string; +begin + Result := False; + with Order_Main10 do + begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName=''' + Trim(cust.text) + ''''); + sql.Add('and YFDefFlag1=0 '); + Open; + end; + if not ADOQuery1.IsEmpty then + begin + CRID := ADOQuery1.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID := ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('FactoryName').Value := Trim(cust.text); + FieldByName('ZdyStr1').Value := 'Ӧ'; + FieldByName('YFDefFlag1').Value := 0; + Post; + end; + end; + + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(ckNo) + ''''); + sql.Add(' and subID=''' + Trim(CkID) + ''''); + sql.Add(' and YFName=''Ʒ˻'' '); + execsql; + end; + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(ckNo) + ''''); + sql.Add(' and subID=''' + Trim(CkID) + ''''); + sql.Add(' and YFName=''Ʒ˻'' '); + Open; + end; + if ADOQuery1.IsEmpty then + begin + if GetLSNo(ADOQueryCmd, YFID, 'TH', 'YF_Money_CR', 4, 1) = False then + begin + Application.MessageBox('ȡӦʧ!', 'ʾ', 0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value := Trim(YFID); + FieldByName('YFTypeId').Value := Trim(ckNo); + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('CRType').Value := 'ӦտǼ'; + FieldByName('CRFlag').Value := 'Ӧ'; + FieldByName('QtyFlag').Value := 1; + FieldByName('FactoryName').Value := Trim(cust.Text); + FieldByName('CRTime').Value := Trim(FormatDateTime('yyyy-MM-dd', CRTime.DateTime)); + FieldByName('YFType').Value := 'Զ'; + FieldByName('ps').Value := -1 * Order_Main10.fieldbyname('RollNum').AsFloat; + FieldByName('Qty').Value := -1 * Order_Main10.fieldbyname('Qty').AsFloat; + FieldByName('Price').Value := Order_Main10.fieldbyname('Price').AsFloat; + FieldByName('Money').Value := -1 * Order_Main10.fieldbyname('Money').AsFloat; + FieldByName('BBMoney').Value := -1 * Order_Main10.fieldbyname('Money').AsFloat; + //FieldByName('HuiLv').Value:=1; + FieldByName('HuiLv').Value := 1; + FieldByName('BZType').Value := ''; + FieldByName('QtyUnit').Value := Trim(Order_Main10.fieldbyname('QtyUnit').AsString); + FieldByName('ComTaiTou').Value := Trim(cust.Text); + FieldByName('P_CodeName').Value := trim(Order_Main10.fieldbyname('P_CodeName').AsString); + FieldByName('P_Color').Value := trim(Order_Main10.fieldbyname('P_Color').AsString); + FieldByName('YFName').Value := 'Ʒ˻'; + FieldByName('MainId').Value := Trim(ckNo); + FieldByName('subID').Value := Trim(CkID); + FieldByName('YFDefFlag1').Value := 0; + FieldByName('syrName').Value := '֯'; + Post; + end; + end + else + begin + YFID := Trim(ADOQuery1.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID=' + CRID); + ExecSQL; + end; + end; + Result := True; +end; + +procedure TfrmbpRk.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCK'' '); + if trim(fCKName) <> '' then + sql.Add('and zdyName=' + quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count > 0 then + ckName.ItemIndex := 0; + + CRType.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPRKTYPE'''); + if trim(fCKName) <> '' then + sql.Add('and note=' + quotedstr(trim(fCKName))); + sql.Add('and zdyName not like ''%%'' '); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count > 0 then + CRType.ItemIndex := 0; +end; + +function TfrmbpRk.savedate(): Boolean; +var + fkcID: integer; + Filler: string; + FillTime: TdateTime; +begin + result := false; + try + ADOQueryCmd.Connection.BeginTrans; + if FType = 0 then + begin + if GetLSNo(ADOQueryCmd, fkeyNO, 'BK', 'BP_InOut', 3, 1) = False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!', 'ʾ', 0); + Exit; + end; + Filler := DName; + FillTime := SGetServerDateTime(adoqueryTmp); + end + else + begin + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from BP_InOut'); + sql.Add('where CRNO=' + quotedstr(trim(fkeyNO))); + open; + Filler := adoqueryTmp.fieldbyname('Filler').AsString; + FillTime := adoqueryTmp.fieldbyname('FillTime').AsDateTime; + end; + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from BP_InOut'); + sql.Add('where CRNO=' + quotedstr(trim(fkeyNO))); + execsql; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add(' delete from YF_Money_CR '); + sql.Add(' where MainID=' + quotedstr(trim(fkeyNO))); + execsql; + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from BP_kc'); + sql.Add('where CRNO=' + quotedstr(trim(fkeyNO))); + execsql; + end; + + CDS_Main.DisableControls; + CDS_Main.First; + with CDS_Main do + begin + while not eof do + begin + + Edit; + FieldByName('CRNO').Value := trim(fkeyNO); + FieldByName('CRNOS').Value := trim(fkeyNO + inttostr(recNo)); + FieldByName('CRID').Value := recNo; + post; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.add('Update BP_Kcid Set kcid=kcid+1'); + sql.Add('select kcid from BP_Kcid'); + Open; + end; + fkcID := ADOQueryCmd.fieldbyname('kcid').AsInteger; + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from BP_InOut'); + sql.Add('where 1=2 '); + open; + end; + // fkcID:=strtoint(RightBStr(trim(fkeyNO),length(fkeyNO)-3)+inttostr(recNo)); + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('CRNO').Value := trim(fkeyNO); + ADOQueryCmd.FieldByName('CRNOS').Value := trim(fkeyNO + inttostr(recNo)); + ADOQueryCmd.FieldByName('CRID').Value := recNo; + ADOQueryCmd.FieldByName('CRTime').Value := formatdateTime('yyyy-MM-dd', CRTIme.Date); + ADOQueryCmd.FieldByName('CKName').Value := trim(CKName.Text); + ADOQueryCmd.FieldByName('CRType').Value := trim(CRType.Text); + ADOQueryCmd.FieldByName('CRFlag').Value := ''; + ADOQueryCmd.FieldByName('mainID').Value := trim(fieldbyname('mainID').AsString); + ADOQueryCmd.FieldByName('subID').Value := trim(fieldbyname('subID').AsString); + ADOQueryCmd.FieldByName('MJID').Value := trim(fieldbyname('MJID').AsString); + ADOQueryCmd.FieldByName('MJXH').Value := trim(fieldbyname('MJXH').AsString); + ADOQueryCmd.FieldByName('CPTYPE').Value := trim(fieldbyname('CPTYPE').AsString); + ADOQueryCmd.FieldByName('P_Code').Value := trim(fieldbyname('P_Code').AsString); + ADOQueryCmd.FieldByName('P_CodeName').Value := trim(fieldbyname('P_CodeName').AsString); + ADOQueryCmd.FieldByName('P_spec').Value := trim(fieldbyname('P_spec').AsString); + ADOQueryCmd.FieldByName('P_Color').Value := trim(fieldbyname('P_Color').AsString); + ADOQueryCmd.FieldByName('gangNo').Value := trim(fieldbyname('gangNo').AsString); + ADOQueryCmd.FieldByName('P_MF').Value := fieldbyname('P_MF').AsFloat; + ADOQueryCmd.FieldByName('P_KZ').Value := fieldbyname('P_KZ').AsFloat; + ADOQueryCmd.FieldByName('RollNum').Value := fieldbyname('RollNum').AsFloat; + ADOQueryCmd.FieldByName('Qty').Value := fieldbyname('Qty').AsFloat; + ADOQueryCmd.FieldByName('QtyUnit').Value := trim(fieldbyname('QtyUnit').AsString); + ADOQueryCmd.FieldByName('price').Value := fieldbyname('price').AsFloat; + ADOQueryCmd.FieldByName('money').Value := fieldbyname('money').AsFloat; + ADOQueryCmd.FieldByName('KuWei').Value := fieldbyname('KuWei').AsString; + ADOQueryCmd.FieldByName('P_Colorno').Value := trim(fieldbyname('P_Colorno').AsString); + ADOQueryCmd.FieldByName('note').Value := trim(fieldbyname('note').AsString); + ADOQueryCmd.FieldByName('note').Value := trim(note.Text); + ADOQueryCmd.FieldByName('cust').Value := trim(cust.Text); + ADOQueryCmd.FieldByName('factoryName').Value := trim(factoryName.Text); + ADOQueryCmd.FieldByName('custaddress').Value := trim(custaddress.Text); + ADOQueryCmd.FieldByName('Filler').Value := trim(Filler); + ADOQueryCmd.FieldByName('FillTime').Value := dateTimetostr(FillTime); + if FType = 1 then + begin + ADOQueryCmd.FieldByName('editer').Value := trim(dName); + ADOQueryCmd.FieldByName('editTime').Value := SGetServerDateTime(adoqueryTmp); + end; + ADOQueryCmd.FieldByName('kcID').Value := fkcID; + ADOQueryCmd.Post; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from BP_KC'); + sql.Add('where 1=2 '); + open; + end; + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('kcID').Value := fkcID; + ADOQueryCmd.FieldByName('CKName').Value := trim(CKName.Text); + ADOQueryCmd.FieldByName('CRNO').Value := trim(fkeyNO); + ADOQueryCmd.FieldByName('CRNOS').Value := trim(fkeyNO + inttostr(recNo)); + ADOQueryCmd.FieldByName('CRID').Value := recNo; + ADOQueryCmd.FieldByName('CRTime').Value := formatdateTime('yyyy-MM-dd', CRTIme.Date); + ADOQueryCmd.FieldByName('CRType').Value := trim(CRType.Text); + ADOQueryCmd.FieldByName('CRFlag').Value := ''; + ADOQueryCmd.FieldByName('MJXH').Value := trim(fieldbyname('MJXH').AsString); + ADOQueryCmd.FieldByName('MJID').Value := trim(fieldbyname('MJID').AsString); + ADOQueryCmd.FieldByName('CPType').Value := trim(fieldbyname('CPType').AsString); + ADOQueryCmd.FieldByName('P_Code').Value := trim(fieldbyname('P_Code').AsString); + ADOQueryCmd.FieldByName('P_CodeName').Value := trim(fieldbyname('P_CodeName').AsString); + ADOQueryCmd.FieldByName('P_spec').Value := trim(fieldbyname('P_spec').AsString); + ADOQueryCmd.FieldByName('P_Color').Value := trim(fieldbyname('P_Color').AsString); + ADOQueryCmd.FieldByName('gangNo').Value := trim(fieldbyname('gangNo').AsString); + ADOQueryCmd.FieldByName('P_MF').Value := fieldbyname('P_MF').AsFloat; + ADOQueryCmd.FieldByName('P_KZ').Value := fieldbyname('P_KZ').AsFloat; + ADOQueryCmd.FieldByName('RollNum').Value := fieldbyname('RollNum').AsFloat; + ADOQueryCmd.FieldByName('Qty').Value := fieldbyname('Qty').AsFloat; + ADOQueryCmd.FieldByName('QtyUnit').Value := trim(fieldbyname('QtyUnit').AsString); + ADOQueryCmd.FieldByName('kcID').Value := fkcID; + ADOQueryCmd.Post; + + if trim(CRType.Text) = 'ɹ' then + begin + if not YFData() then + begin + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + exit; + end; + end; + with ADOQuery1 do + begin + close; + sql.Clear; + sql.Add('select * from CK_SXPB_CRMX A '); + sql.Add(' right JOIN BP_InOut B on B.CRID=A.CRID and B.crno=A.crno'); + sql.Add(' where A.CRNO=' + quotedstr(trim(CDS_Main.fieldbyname('CRNO').AsString))); + sql.Add(' and A.CRID=' + quotedstr(trim(CDS_Main.fieldbyname('CRID').AsString))); + SQL.Add(' and crzt='''''); + sql.Add(' order by MXID'); +// ShowMessage(SQL.text); + open; + end; + if ADOQuery1.RecordCount > 0 then + begin + with ADOQuery2 do + begin + Close; + sql.Clear; + sql.Add('Update CK_SXPB_CRMX Set CKNO=(select kuwei from BP_InOut A where A.crno=CK_SXPB_CRMX.CRNO and A.CRID=CK_SXPB_CRMX.CRID)'); + sql.Add(' where CRNO=' + quotedstr(trim(CDS_Main.fieldbyname('CRNO').AsString))); + sql.Add(' and CRID=' + quotedstr(trim(CDS_Main.fieldbyname('CRID').AsString))); +// ShowMessage(sql.Text); + ExecSQL; + end; + end; + + next; + end; + + end; + CDS_Main.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + result := true; + except + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; + +procedure TfrmbpRk.InitGrid(); +begin + try + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select A.*,'); + sql.Add('orderNo=(select Top 1 orderNo from JYOrder_Main X where X.MainID=A.MainID )'); + sql.Add('from BP_InOut A '); + sql.Add('where CRNO=' + quotedstr(trim(fkeyNO))); + open; + end; + SCreateCDS20(adoqueryTmp, CDS_Main); + SInitCDSData20(adoqueryTmp, CDS_Main); + if not CDS_Main.IsEmpty then + begin + CRTime.Date := CDS_Main.fieldbyname('CRTime').AsDateTime; + CKName.ItemIndex := CKName.Items.IndexOf(trim(CDS_Main.fieldbyname('CKName').AsString)); + CRType.ItemIndex := CRType.Items.IndexOf(trim(CDS_Main.fieldbyname('CRType').AsString)); + // FirstName.TxtCode:=trim(CDS_Main.fieldbyname('FirstNo').AsString); + // FirstName.Text:=trim(CDS_Main.fieldbyname('FirstName').AsString); + note.Text := trim(CDS_Main.fieldbyname('note').AsString); + cust.Text := trim(CDS_Main.fieldbyname('cust').AsString); + factoryName.Text := trim(CDS_Main.fieldbyname('factoryName').AsString); + custaddress.Text := trim(CDS_Main.fieldbyname('custaddress').AsString); + end; + finally + end; +end; + +procedure TfrmbpRk.FormDestroy(Sender: TObject); +begin + frmbpRk := nil; +end; + +procedure TfrmbpRk.FormCreate(Sender: TObject); +begin + CRTime.Date := DServerDate; + cxGrid1.Align := alclient; + readCxGrid(self.Caption, Tv1, 'ƥֿ'); +end; + +procedure TfrmbpRk.FormClose(Sender: TObject; var Action: TCloseAction); +begin + writeCxGrid(self.Caption, Tv1, 'ƥֿ'); + Action := cahide; +end; + +procedure TfrmbpRk.FormShow(Sender: TObject); +begin + SetComboBox(); + InitGrid(); +end; + +procedure TfrmbpRk.TBSaveClick(Sender: TObject); +begin + if cds_main.IsEmpty then + exit; + CRTime.SetFocus; + if trim(CRType.Text) = '' then + begin + application.MessageBox('ͲΪգ', 'ʾϢ', 0); + exit; + end; + + if formatdateTime('yyyy-MM-dd', CRTime.Date) > formatdateTime('yyyy-MM-dd', Date) then + begin + application.MessageBox('ڲܴڽգ', 'ʾϢ', 0); + exit; + end; + + if trim(cust.Text) = '' then + begin + application.MessageBox('Ӧ̲Ϊգ', 'ʾϢ', 0); + exit; + end; + + if cds_main.Locate('QtyUnit', '', []) then + begin + application.MessageBox('λΪգ', 'ʾϢ', 0); + exit; + end; + if cds_main.Locate('QtyUnit', NULL, []) then + begin + application.MessageBox('λΪգ', 'ʾϢ', 0); + exit; + end; + if savedate() then + begin + application.MessageBox('ݱɹ', 'ʾϢ'); + ModalResult := 1; + end + else + begin + application.MessageBox('ݱʧܣ', 'ʾϢ', MB_ICONERROR); + end; +end; + +procedure TfrmbpRk.v1P_CodeNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'MPRTCodeName'; + flagname := 'Ʒ'; + if ShowModal = 1 then + begin + Self.CDS_Main.Edit; + Self.CDS_Main.FieldByName('P_CodeName').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.CDS_Main.FieldByName('P_Code').Value := Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; + self.tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmbpRk.ToolButton1Click(Sender: TObject); +begin + CDS_Main.Append; + CDS_Main.fieldbyname('CPType').Value := 'Ʒ'; + CDS_Main.fieldbyname('RollNum').Value := 1; + CDS_Main.fieldbyname('QtyUnit').Value := 'M'; + CDS_Main.Post; +end; + +procedure TfrmbpRk.ToolButton2Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then + exit; + CDS_Main.Delete; +end; + +procedure TfrmbpRk.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmbpRk.v1P_ColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin +// frmZdyYS_sel := TfrmZdyYS_sel.create(self); +// with frmZdyYS_sel do +// begin +// if showmodal = 1 then +// begin +// with cds_main do +// begin +// Edit; +// FieldByName('P_Color').value := CDS_HZ.fieldbyname('CodeName').AsString; +// Post; +// end; +// end; +// free; +// end; + frmZdyYS_sel := TfrmZdyYS_sel.create(self); + with frmZdyYS_sel do + begin + if showmodal = 1 then + begin + CDS_HZ.First; + while not CDS_HZ.Eof do + begin + if CDS_HZ.fieldbyname('ssel').AsBoolean then + begin + with cds_main do + begin + Edit; + FieldByName('P_Color').value := CDS_HZ.fieldbyname('CodeName').AsString; + Post; + end; + end; + CDS_HZ.Next; + end; + + end; + free; + end; +end; + +procedure TfrmbpRk.custBtnClick(Sender: TObject); +begin + + try + frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application); + with frmZdyAttachGYS do + begin + if ShowModal = 1 then + begin + cust.Text := Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + // custaddress.Text:=Trim(CDS_HZ.fieldbyname('defnote1').AsString); + end; + end; + finally + frmZdyAttachGYS.Free; + end; + +end; + +procedure TfrmbpRk.v1QtyPropertiesEditValueChanged(Sender: TObject); +var + fieldname: string; + num1: double; +begin + fieldname := Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + with CDS_Main do + begin + Edit; + FieldByName(Trim(fieldname)).Value := TcxTextEdit(Sender).EditingText; + num1 := FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat; + FieldByName('Money').Value := strtofloat(format('%.2f', [num1])); + Post; + end; + Tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmbpRk.Edit1KeyPress(Sender: TObject; var Key: Char); +var + FReal: Double; + maxno: string; +begin + if Key = #13 then + begin + if Trim(Edit1.Text) = '' then + Exit; + if TryStrToFloat(Edit1.Text, FReal) = False then + begin + Application.MessageBox('Ƿ!', 'ʾ', 0); + Exit; + end; + if CDS_Main.IsEmpty then + begin + CDS_Main.Append; + CDS_Main.fieldbyname('CPType').Value := 'Ʒ'; + CDS_main.fieldbyname('RollNum').Value := 1; + CDS_main.fieldbyname('Qty').Value := Edit1.Text; + CDS_Main.fieldbyname('QtyUnit').Value := 'M'; + CDS_Main.Post; + end + else + begin + CopyAddRowCDS(CDS_main); + tv1.Controller.EditingController.ShowEdit(); + with CDS_main do + begin + Edit; + CDS_main.fieldbyname('RollNum').Value := 1; + CDS_main.fieldbyname('Qty').Value := Edit1.Text; + Post; + end; + end; + Edit1.Text := ''; + end; + + tv1.Controller.EditingController.ShowEdit(); + +end; + +procedure TfrmbpRk.Edit2KeyPress(Sender: TObject; var Key: Char); +var + FReal: Double; + maxno: string; + I: integer; +begin + if Key = #13 then + begin + if Trim(Edit2.Text) = '' then + Exit; + if TryStrToFlOAT(Edit2.Text, FReal) = False then + begin + Application.MessageBox('Ƿ!', 'ʾ', 0); + Exit; + end; + if CDS_main.IsEmpty then + exit; + I := STRTOintdef(Edit2.Text, 0); + for I := 1 to STRTOintdef(Edit2.Text, 0) do + begin + CopyAddRowCDS(CDS_main); + end; + Edit1.Text := ''; + end; + tv1.Controller.EditingController.ShowEdit(); + +end; + +procedure TfrmbpRk.TBPrintClick(Sender: TObject); +var + filepath: string; +begin + if CDS_Main.IsEmpty then + exit; + + with AdoPrint do + begin + close; + sql.Clear; + sql.Add('exec P_Do_PrintMd '); + sql.Add('@mainID=' + quotedstr(trim(fkeyNO))); + sql.Add(',@flag=' + quotedstr(trim('㶫'))); + open; + end; + + try + filepath := ExtractFilePath(Application.ExeName) + 'report\˻뵥.rmf'; + if not FileExists(Pchar(filepath)) then + begin + application.MessageBox(pchar('ļ[' + filepath + ']ڣ'), 'ʾϢ', MB_IConError); + exit; + end; + RMVariables['dtxz'] := FormatDateTime('yyyy-mm-dd', date()); + RMVariables['zdr'] := trim(DName); + RMVariables['Filler'] := trim(CDS_Main.fieldbyname('Filler').AsString); + RMGridReport1.LoadFromFile(filepath); + RMGridReport1.ShowReport; + finally + + end; +end; + +procedure TfrmbpRk.factoryNameBtnClick(Sender: TObject); +begin + try + frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application); + with frmZdyAttachGYS do + begin + if ShowModal = 1 then + begin + factoryName.Text := Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + // custaddress.Text:=Trim(CDS_HZ.fieldbyname('defnote1').AsString); + end; + end; + finally + frmZdyAttachGYS.Free; + end; +end; + +procedure TfrmbpRk.v1Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + frmProductOrderNewListSEl := TfrmProductOrderNewListSEl.create(self); + with frmProductOrderNewListSEl do + begin + if showmodal = 1 then + begin + CDS_Main.Edit; + CDS_Main.FieldByName('orderNo').Value := trim(order_main.fieldbyname('orderNo').asstring); + CDS_Main.FieldByName('mainID').Value := trim(order_main.fieldbyname('mainID').asstring); + CDS_Main.FieldByName('subID').Value := trim(order_main.fieldbyname('subID').asstring); + CDS_Main.FieldByName('P_CodeName').Value := trim(order_main.fieldbyname('prtCodeName').asstring); + CDS_Main.FieldByName('P_Color').Value := trim(order_main.fieldbyname('prtcolor').asstring); + CDS_Main.FieldByName('P_MF').Value := trim(order_main.fieldbyname('PRTMF').asstring); + CDS_Main.FieldByName('P_KZ').Value := trim(order_main.fieldbyname('PRTKZ').asstring); + CDS_Main.FieldByName('note').Value := trim(order_main.fieldbyname('SOrdDefNote1').asstring); + CDS_Main.post; + end; + free; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmbpRk.v1QtyUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'QtyUnitType'; + flagname := 'λ'; + V1Name.Caption := 'λ'; + fnote := false; + if ShowModal = 1 then + begin + Self.CDS_Main.Edit; + Self.CDS_Main.FieldByName('QtyUnit').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.CDS_Main.Post; + end; + end; + finally + frmZDYHelp.Free; + end; + self.tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmbpRk.Tv1Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmCPKWListSel := TfrmCPKWListSel.Create(Application); + with frmCPKWListSel do + begin + if ShowModal = 1 then + begin + Self.CDS_Main.Edit; + Self.CDS_Main.FieldByName('KuWei').Value := Trim(CDS_HZ.fieldbyname('ZdyCode').AsString); + end; + end; + finally + frmCPKWListSel.Free; + end; + self.tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmbpRk.Tv1Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'OrdColorNO'; + flagname := 'ɫ'; +// V1Name.Caption := ''; +// V1Note.Caption := 'Ӣ'; +// MainType := Trim(DName); +// fnote := True; + if ShowModal = 1 then + begin + Self.CDS_Main.Edit; + Self.CDS_Main.FieldByName('P_ColorNO').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.CDS_Main.Post; + end; + end; + finally + frmZDYHelp.Free; + end; + self.tv1.Controller.EditingController.ShowEdit(); +end; + +end. + diff --git a/坯布仓库/U_BpRklist.dfm b/坯布仓库/U_BpRklist.dfm new file mode 100644 index 0000000..fd44860 --- /dev/null +++ b/坯布仓库/U_BpRklist.dfm @@ -0,0 +1,971 @@ +object frmBpRklist: TfrmBpRklist + Left = 436 + Top = 322 + Width = 1160 + Height = 500 + Caption = #20837#24211#21015#34920 + 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 = 1144 + Height = 62 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#35810 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + Visible = False + end + object TBAdd: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object TBDel: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20316#24223 + ImageIndex = 17 + OnClick = TBDelClick + end + object tbcdel: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 107 + OnClick = tbcdelClick + end + object TBExport: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + Wrap = True + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 0 + Top = 30 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object ToolButton1: TToolButton + Left = 63 + Top = 30 + AutoSize = True + Caption = #25171#21360#36864#36135#21333 + ImageIndex = 12 + Visible = False + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 162 + Top = 30 + AutoSize = True + Caption = #32454#30721#24405#20837 + ImageIndex = 10 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 249 + Top = 30 + AutoSize = True + Caption = #25171#21360#26631#31614 + ImageIndex = 12 + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 336 + Top = 30 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + object ToolButton4: TToolButton + Left = 399 + Top = 30 + Caption = #25171#21360#20837#24211#21333 + ImageIndex = 12 + OnClick = ToolButton4Click + end + end + object Panel1: TPanel + Left = 0 + Top = 62 + Width = 1144 + Height = 65 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #20837#24211#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 62 + Top = 36 + Width = 13 + Height = 12 + Caption = #33267 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 504 + Top = 16 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 504 + Top = 40 + Width = 54 + Height = 12 + Caption = #39068' '#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 260 + Top = 16 + Width = 52 + Height = 12 + Caption = #20837#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 288 + Top = 100 + Width = 24 + Height = 12 + Caption = #20179#24211 + end + object Label7: TLabel + Left = 748 + Top = 16 + Width = 39 + Height = 12 + Caption = #20379#24212#21830 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 884 + Top = 84 + Width = 26 + Height = 12 + Caption = #21253#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 448 + Top = 100 + Width = 52 + Height = 12 + Caption = #36135#36816#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 536 + Top = 96 + Width = 65 + Height = 12 + Caption = #20837#24211#21333#25968#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 748 + Top = 40 + Width = 39 + Height = 12 + Caption = #21152#24037#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 260 + Top = 40 + Width = 53 + Height = 12 + Caption = #35746' '#21333' '#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 86 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object P_CodeName: TEdit + Tag = 2 + Left = 560 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = P_CodeNameChange + end + object P_Color: TEdit + Tag = 2 + Left = 560 + Top = 36 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = P_CodeNameChange + end + object CRType: TComboBox + Tag = 2 + Left = 316 + Top = 12 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 4 + OnChange = P_CodeNameChange + Items.Strings = ( + '' + #29983#20135#20837#24211) + end + object ckName: TComboBox + Left = 320 + Top = 96 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 5 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object cust: TEdit + Tag = 2 + Left = 792 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 6 + OnChange = P_CodeNameChange + end + object packNo: TEdit + Tag = 1 + Left = 912 + Top = 80 + Width = 100 + Height = 20 + TabOrder = 7 + OnChange = P_CodeNameChange + end + object defstr2: TComboBox + Tag = 2 + Left = 616 + Top = 96 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 8 + OnChange = P_CodeNameChange + Items.Strings = ( + '' + #24555#20214 + #24930#20214) + end + object factoryName: TEdit + Tag = 2 + Left = 792 + Top = 36 + Width = 100 + Height = 20 + TabOrder = 9 + OnChange = P_CodeNameChange + end + object orderNo: TEdit + Tag = 2 + Left = 316 + Top = 36 + Width = 100 + Height = 20 + TabOrder = 10 + OnChange = P_CodeNameChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 147 + Width = 560 + Height = 314 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1RollNum + end + item + Kind = skSum + Column = v1Qty + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = BPCK_DataLink.Default + object v1Column2: TcxGridDBColumn + Caption = #20837#24211#21333#21495 + DataBinding.FieldName = 'CRNO' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1CRTime: TcxGridDBColumn + Caption = #20837#24211#26085#26399 + DataBinding.FieldName = 'CRTime' + Options.Editing = False + Width = 60 + end + object v1CRType: TcxGridDBColumn + Caption = #20837#24211#31867#22411 + DataBinding.FieldName = 'CRType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + end + object v1Column4: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1cust: TcxGridDBColumn + Caption = #20379#24212#21830 + DataBinding.FieldName = 'cust' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object v1Column3: TcxGridDBColumn + Caption = #21152#24037#21378 + DataBinding.FieldName = 'factoryName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 99 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1P_SPEC: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'P_SPEC' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 90 + end + object v1P_Color: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1P_MF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'P_MF' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1P_KZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'P_KZ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1CPType: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'CPType' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 60 + end + object v1packNO: TcxGridDBColumn + Caption = #21253#21495 + DataBinding.FieldName = 'packNO' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 60 + end + object v1RollNum: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'RollNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = BPCK_DataLink.FontBlue + Styles.Footer = BPCK_DataLink.FontBlue + Styles.Header = BPCK_DataLink.FontBlue + Width = 50 + end + object v1Qty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = BPCK_DataLink.FontBlue + Styles.Footer = BPCK_DataLink.FontBlue + Styles.Header = BPCK_DataLink.FontBlue + Width = 50 + end + object v1QtyUnit: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 50 + end + object v1Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1Filler: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1FillTime: TcxGridDBColumn + Caption = #25805#20316#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 75 + end + object v1Column1: TcxGridDBColumn + Caption = #23458#25143#22320#22336 + DataBinding.FieldName = 'custaddress' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 80 + end + object v1defstr2: TcxGridDBColumn + Caption = #36135#36816#31867#22411 + DataBinding.FieldName = 'defstr2' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 60 + end + object v1gangNo: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'gangNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1defNote1: TcxGridDBColumn + Caption = #29289#27969#22791#27880 + DataBinding.FieldName = 'defNote1' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 80 + end + object Tv1Column1: TcxGridDBColumn + Caption = #24211#20301 + DataBinding.FieldName = 'KuWei' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object Tv1Column2: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSEL' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 66 + end + object Tv1Column3: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object Tv1Column4: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'money' + HeaderAlignmentHorz = taCenter + Width = 66 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 127 + Width = 1144 + Height = 20 + Align = alTop + TabOrder = 3 + Properties.CustomButtons.Buttons = <> + Properties.Style = 9 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + #26410#20316#24223 + #24050#20316#24223 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectRight = 0 + ClientRectTop = 0 + end + object cxGrid2: TcxGrid + Left = 560 + Top = 147 + Width = 584 + Height = 314 + Align = alRight + PopupMenu = PopupMenu1 + TabOrder = 4 + object TvMX: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Kind = skCount + Position = spFooter + end + item + Kind = skSum + Position = spFooter + Column = cxGridDBColumn8 + end + item + Kind = skCount + end + item + Kind = skSum + Column = cxGridDBColumn8 + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skCount + end + item + Kind = skSum + Column = cxGridDBColumn8 + end + item + Kind = skCount + Column = vMXColumn3 + end + item + Kind = skSum + Column = vMXColumn2 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + OptionsView.IndicatorWidth = 33 + object TvMXColumn1: TcxGridDBColumn + Tag = 9 + Caption = #36873#25321 + DataBinding.FieldName = 'SSEL' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 52 + end + object vMXColumn3: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MXMJXH' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Options.Sorting = False + Width = 51 + end + object cxGridDBColumn8: TcxGridDBColumn + Caption = #37325#37327 + DataBinding.FieldName = 'MXQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Options.Sorting = False + Width = 79 + end + object vMXColumn2: TcxGridDBColumn + Caption = #38271#24230 + DataBinding.FieldName = 'MXQTY2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Options.Sorting = False + Width = 80 + end + object vMXColumn4: TcxGridDBColumn + Caption = #38271#24230#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.Items.Strings = ( + 'M' + 'Y') + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Options.Sorting = False + Width = 65 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TvMX + end + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 680 + Top = 40 + end + object ADOQueryTmp: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 608 + Top = 40 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 628 + Top = 33 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 664 + Top = 41 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 500 + Top = 92 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 788 + Top = 36 + ReportData = {} + end + object RMXLSExport2: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 864 + Top = 37 + end + object ADOPrint: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 716 + Top = 40 + end + object RMDB_MD: TRMDBDataSet + Visible = True + DataSet = ADOPrint + Left = 752 + Top = 40 + end + object ADOPrint1: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 824 + Top = 36 + end + object RMDB_Sub: TRMDBDataSet + Visible = True + DataSet = ADOPrint1 + Left = 632 + Top = 160 + end + object ADOQuerySub: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 608 + Top = 244 + end + object DataSource2: TDataSource + DataSet = CDS_Sub + Left = 644 + Top = 245 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 680 + Top = 245 + end + object ADOQueryPrint: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 401 + Top = 279 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 439 + Top = 278 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 508 + Top = 277 + end + object PopupMenu1: TPopupMenu + Left = 726 + Top = 193 + object N1: TMenuItem + Caption = #20840#36873 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #20840#24323 + OnClick = N2Click + end + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 476 + Top = 280 + ReportData = {} + end +end diff --git a/坯布仓库/U_BpRklist.pas b/坯布仓库/U_BpRklist.pas new file mode 100644 index 0000000..9ffb24c --- /dev/null +++ b/坯布仓库/U_BpRklist.pas @@ -0,0 +1,908 @@ +unit U_BpRklist; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, + cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, + cxGrid, DBClient, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, + RM_Common, RM_Class, RM_e_Xls, RM_System, RM_GridReport, cxPC, cxLookAndFeels, + cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu, cxCheckBox, cxTextEdit, + Menus; + +type + TfrmBpRklist = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1P_SPEC: TcxGridDBColumn; + v1P_MF: TcxGridDBColumn; + v1P_KZ: TcxGridDBColumn; + v1RollNum: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1QtyUnit: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1CRType: TcxGridDBColumn; + v1CRTime: TcxGridDBColumn; + v1Filler: TcxGridDBColumn; + v1FillTime: TcxGridDBColumn; + Label2: TLabel; + Label3: TLabel; + Label4: TLabel; + P_CodeName: TEdit; + P_Color: TEdit; + CRType: TComboBox; + Label5: TLabel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + v1CPType: TcxGridDBColumn; + ckName: TComboBox; + Label6: TLabel; + v1P_Color: TcxGridDBColumn; + RMGridReport1: TRMGridReport; + RMXLSExport2: TRMXLSExport; + ADOPrint: TADOQuery; + RMDB_MD: TRMDBDataSet; + ADOPrint1: TADOQuery; + RMDB_Sub: TRMDBDataSet; + Label7: TLabel; + cust: TEdit; + v1cust: TcxGridDBColumn; + v1packNO: TcxGridDBColumn; + packNo: TEdit; + Label8: TLabel; + Label9: TLabel; + defstr2: TComboBox; + v1defstr2: TcxGridDBColumn; + v1gangNo: TcxGridDBColumn; + v1defNote1: TcxGridDBColumn; + ToolButton1: TToolButton; + v1Column1: TcxGridDBColumn; + Label10: TLabel; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + factoryName: TEdit; + Label11: TLabel; + cxTabControl1: TcxTabControl; + tbcdel: TToolButton; + v1Column4: TcxGridDBColumn; + orderNo: TEdit; + Label12: TLabel; + ToolButton2: TToolButton; + cxGrid2: TcxGrid; + TvMX: TcxGridDBTableView; + TvMXColumn1: TcxGridDBColumn; + vMXColumn3: TcxGridDBColumn; + cxGridDBColumn8: TcxGridDBColumn; + vMXColumn2: TcxGridDBColumn; + vMXColumn4: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + ADOQuerySub: TADOQuery; + DataSource2: TDataSource; + CDS_Sub: TClientDataSet; + ToolButton3: TToolButton; + ADOQueryPrint: TADOQuery; + RMDB_Main: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + RM1: TRMGridReport; + Tv1Column1: TcxGridDBColumn; + ToolButton4: TToolButton; + Tv1Column2: TcxGridDBColumn; + Tv1Column3: TcxGridDBColumn; + Tv1Column4: TcxGridDBColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure P_CodeNameChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure tbcdelClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure ToolButton3Click(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + private + TblCprk: string; + procedure InitGrid(); + procedure SetComboBox(); + procedure CreateTable(); + procedure DropTable(); + procedure DoRkNum(); + procedure Setstatus(); + procedure PrtData(FJYID: string); + procedure PrtRKData(FJYID: string); + { Private declarations } + public + fCKName, fManage: string; + { Public declarations } + end; + +var + frmBpRklist: TfrmBpRklist; + +implementation + +uses + U_DataLink, U_Fun10, U_ZDYHelp, U_BpRk, U_CPCKMXLR, U_Fun; +{$R *.dfm} + +procedure TfrmBpRklist.SetStatus(); +begin + TBedit.Visible := false; + Tbdel.Visible := false; + tbcdel.Visible := false; + case cxTabControl1.TabIndex of + 0: + begin + TBedit.Visible := true; + Tbdel.Visible := true; + end; + 1: + begin + tbcdel.Visible := true; + end; + end; +end; + +procedure TfrmBpRklist.DoRkNum(); +var + RKNo: Tstringlist; +begin + RKNo := Tstringlist.Create; + RKNo.Clear; + try + with CDS_Main do + begin + DisableControls; + First; + while not eof do + begin + if RKNo.IndexOf(trim(fieldbyname('CRNO').AsString)) < 0 then + begin + RKNo.Add(trim(fieldbyname('CRNO').AsString)); + end; + next; + end; + EnableControls; + First; + end; + Label10.Caption := 'ⵥ' + inttostr(RKNo.Count); + finally + RKNo.Free; + end; + +end; + +procedure TfrmBpRklist.DropTable(); +var + strSQL: string; +begin + // TblCprk := '[##CP_INOut123' + trim(DCode) + IntToStr(Handle)+formatdatetime('hhnnsszzz',time) + ']'; + //ʱ + strSQL := 'IF OBJECT_ID(''tempdb..' + TblCprk + ''') IS NOT NULL DROP TABLE ' + TblCprk; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + SQL.Add(strSQL); + ExecSQL; + end; +end; + +procedure TfrmBpRklist.CreateTable(); +var + strSQL: string; +begin + TblCprk := '[##BP_INoutPPack' + trim(DCode) + IntToStr(Handle) + formatdatetime('hhnnsszzz', time) + ']'; + //ʱ + strSQL := 'IF OBJECT_ID(''tempdb..' + TblCprk + ''') IS NOT NULL DROP TABLE ' + TblCprk + #13 + 'CREATE TABLE ' + TblCprk + ' (' + 'MainID VARCHAR(20),' + 'subID VARCHAR(20),' + 'BCID Varchar(20))'#13; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + SQL.Add(strSQL); + ExecSQL; + end; +end; + +procedure TfrmBpRklist.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCK'' '); + if trim(fCKName) <> '' then + sql.Add('and zdyName=' + quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count > 0 then + ckName.ItemIndex := 0; + + CRType.Items.Clear; + CRType.Items.Add(''); + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPRKTYPE'''); + if trim(fCKName) <> '' then + sql.Add('and note=' + quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count > 0 then + CRType.ItemIndex := 0; + + if fCKName = '㶫ֿ' then + ToolButton1.Visible := true; +end; + +procedure TfrmBpRklist.InitGrid(); +begin + try + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select A.*,'); + sql.Add('orderNo=(select Top 1 orderNo from JYOrder_Main X where X.MainID=A.MainID )'); + sql.Add('from BP_InOut A '); + sql.Add('where CRTime>=''' + formatdateTime('yyyy-MM-dd', begdate.Date) + ''' '); + sql.Add('and CRTime<''' + formatdateTime('yyyy-MM-dd', enddate.Date + 1) + ''' '); + sql.Add('and CRFlag='''' '); + if trim(FckName) <> '' then + sql.Add('and ckName=' + quotedstr(trim(fckName))); + if cxTabControl1.TabIndex = 0 then + sql.Add('and valid=''Y'' '); + if cxTabControl1.TabIndex = 1 then + sql.Add('and valid=''N'' '); +// ShowMessage(sql.text); + open; + end; + SCreateCDS20(adoqueryTmp, CDS_Main); + SInitCDSData20(adoqueryTmp, CDS_Main); + DoRkNum(); + finally + end; +end; + +procedure TfrmBpRklist.FormClose(Sender: TObject; var Action: TCloseAction); +begin + writeCxGrid(self.Caption, Tv1, 'ƥֿ'); + Action := cafree; +end; + +procedure TfrmBpRklist.FormDestroy(Sender: TObject); +begin + frmBpRklist := nil; +end; + +procedure TfrmBpRklist.TBAddClick(Sender: TObject); +begin + frmbpRk := TfrmbpRk.create(self); + with frmbpRk do + begin + fkeyNo := ''; + fType := 0; + fckName := self.fckName; + if showmodal = 1 then + begin + TBRafresh.Click; + self.CDS_Main.Locate('crNo', trim(fkeyNo), []); + end; + free; + end; +end; + +procedure TfrmBpRklist.P_CodeNameChange(Sender: TObject); +begin + if ADOQueryTmp.Active = False then + Exit; + SDofilter(ADOQueryTmp, SGetFilters(Panel1, 1, 2)); + SCreateCDS20(ADOQueryTmp, CDS_Main); + SInitCDSData20(ADOQueryTmp, CDS_Main); + DoRkNum(); +end; + +procedure TfrmBpRklist.FormShow(Sender: TObject); +begin + readCxGrid(self.Caption, Tv1, 'ƥֿ'); + SetComboBox(); + SetStatus(); + InitGrid(); + if fckName = '㶫ֿ' then + begin + if fmanage = 'Ȩ' then + TBDel.Visible := true + else + TBDel.Visible := false; + end; +end; + +procedure TfrmBpRklist.FormCreate(Sender: TObject); +begin + BegDate.Date := DServerDate; + EndDate.Date := DServerDate; + cxGrid1.Align := alclient; + +end; + +procedure TfrmBpRklist.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmBpRklist.TBEditClick(Sender: TObject); +begin + if cds_main.IsEmpty then + exit; + if pos('', Trim(CDS_Main.fieldbyname('CRType').AsString)) > 0 then + begin + Application.MessageBox('ⲻɾ!', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from BP_InOut A'); + SQL.Add('where exists(select CRNO from BP_InOut X where X.KCID=A.KCID and X.CRFlag='''' and X.CRNO=''' + trim(cds_main.fieldbyname('CRNO').AsString) + ''') '); + sQL.Add('and A.CRFlag='''''); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('Ѳݣ޸ģ', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add(' select * from YF_Money_CR '); + SQL.Add(' where mainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sql.Add(' and status>=''1'' '); + Open; + if not IsEmpty then + begin + Application.MessageBox('Ӧûгˣ޸!', 'ʾ', 0); + exit; + end; + end; + + frmbpRk := TfrmbpRk.create(self); + with frmbpRk do + begin + fkeyNo := self.cds_main.fieldbyname('CRNO').AsString; + fType := 1; + fckName := self.fckName; + if showmodal = 1 then + begin + TBRafresh.Click; + self.CDS_Main.Locate('crNo', trim(fkeyNo), []); + end; + free; + end; +end; + +procedure TfrmBpRklist.TBDelClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then + Exit; + { if Trim(CDS_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; } + + if pos('', Trim(CDS_Main.fieldbyname('CRType').AsString)) > 0 then + begin + Application.MessageBox('ⲻɾ!', 'ʾ', 0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from BP_InOut A'); + SQL.Add('where exists(select CRNO from BP_InOut X where X.KCID=A.KCID and X.CRFlag='''' and X.CRNO=''' + trim(cds_main.fieldbyname('CRNO').AsString) + ''') '); + sQL.Add('and A.CRFlag='''''); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('Ѳݣϣ', 'ʾ', 0); + Exit; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('Ѳݣɾ', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add(' select * from YF_Money_CR '); + SQL.Add(' where mainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sql.Add(' and status>=''1'' '); + Open; + if not IsEmpty then + begin + Application.MessageBox('Ӧûгˣ!', 'ʾ', 0); + exit; + end; + end; + + if Application.MessageBox('ȷҪ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + try + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + SQL.Add('where maiNID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + // sql.Add(' where YFDefFlag1=1 '); + + + sql.Add('delete from BP_kc '); + SQL.Add('where CRNO=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sql.Add('update BP_InOut SET valid=''N'' '); + SQL.Add('where CRNO=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ⵥɾ'))); + sql.Add(',' + quotedstr(trim('ⵥţ' + trim(CDS_Main.FieldByName('CRNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + TBRafresh.Click; + except + Application.MessageBox('ɾʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmBpRklist.TBRafreshClick(Sender: TObject); +begin + initGrid(); +end; + +procedure TfrmBpRklist.TBPrintClick(Sender: TObject); +var + filepath: string; +begin + if CDS_Main.IsEmpty then + exit; + + CreateTable(); + + with CDS_Main do + begin + DisableControls; + first; + while not eof do + begin + with adoqueryCmd do + begin + Close; + SQL.Clear; + SQL.Add(' insert into ' + TblCprk + '(MainID,subID) values( '); + SQL.Add(' ' + quotedstr(trim(CDS_Main.fieldbyname('CRNO').AsString))); + SQL.Add(',' + quotedstr(trim(CDS_Main.fieldbyname('CRID').AsString))); + sql.add(')'); + execsql; + end; + next; + end; + First; + EnableControls; + end; + + with AdoPrint do + begin + close; + sql.Clear; + sql.Add('exec P_Get_BPRkpackList '); + sql.Add('@mainID=' + quotedstr(trim(''))); + sql.Add(',@TblCprk=' + quotedstr(trim(TblCprk))); + sql.Add(',@flag=' + quotedstr(trim('1'))); + open; + end; + + with AdoPrint1 do + begin + close; + sql.Clear; + sql.Add('exec P_Get_BPRkpackList '); + sql.Add('@mainID=' + quotedstr(trim(''))); + sql.Add(',@TblCprk=' + quotedstr(trim(TblCprk))); + sql.Add(',@flag=' + quotedstr(trim('10'))); + open; + end; + + try + filepath := ExtractFilePath(Application.ExeName) + 'report\ⵥ.rmf'; + if not FileExists(Pchar(filepath)) then + begin + application.MessageBox(pchar('ļ[' + filepath + ']ڣ'), 'ʾϢ', MB_IConError); + exit; + end; + RMVariables['begdate'] := FormatDateTime('yyyy-MM-dd', BegDate.DateTime) + ' - ' + FormatDateTime('yyyy-MM-dd', enddate.DateTime); + RMVariables['dtxz'] := FormatDateTime('yyyy-mm-dd', date()); + RMVariables['zdr'] := trim(DName); + RMVariables['Filler'] := trim(CDS_Main.fieldbyname('Filler').AsString); + RMGridReport1.LoadFromFile(filepath); + RMGridReport1.ShowReport; + finally + + end; + + DropTable(); + +end; + +procedure TfrmBpRklist.TBExportClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then + Exit; + TcxGridToExcel(self.Caption, cxgrid1); +end; + +procedure TfrmBpRklist.ToolButton1Click(Sender: TObject); +var + filepath: string; +begin + if CDS_Main.IsEmpty then + exit; + + with AdoPrint do + begin + close; + sql.Clear; + sql.Add('exec P_Do_PrintMd '); + sql.Add('@mainID=' + quotedstr(trim(CDS_Main.fieldbyname('CRNO').AsString))); + sql.Add(',@flag=' + quotedstr(trim('㶫'))); + open; + end; + + try + filepath := ExtractFilePath(Application.ExeName) + 'report\˻뵥.rmf'; + if not FileExists(Pchar(filepath)) then + begin + application.MessageBox(pchar('ļ[' + filepath + ']ڣ'), 'ʾϢ', MB_IConError); + exit; + end; + RMVariables['dtxz'] := FormatDateTime('yyyy-mm-dd', date()); + RMVariables['zdr'] := trim(DName); + RMVariables['Filler'] := trim(CDS_Main.fieldbyname('Filler').AsString); + RMGridReport1.LoadFromFile(filepath); + RMGridReport1.ShowReport; + finally + + end; +end; + +procedure TfrmBpRklist.cxTabControl1Change(Sender: TObject); +begin + SetStatus(); + InitGrid(); +end; + +procedure TfrmBpRklist.tbcdelClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then + exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + try + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from BP_InOut where CRNO=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sql.Add('delete from CK_SXPB_CRMX where CRNO=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + execsql; + end; + TBRafresh.Click; + except + Application.MessageBox('ɾʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmBpRklist.ToolButton2Click(Sender: TObject); +begin + if cds_main.IsEmpty = true then + begin + exit; + end; +// if CDS_Main.fieldbyname('ssel').value <> true then +// begin +// Application.MessageBox('ûѡݻѡݲ׼ȷ!', 'ʾ', 0); +// Exit; +// end; + frmCPCKMXLR := TfrmCPCKMXLR.create(self); + with frmCPCKMXLR do + begin + fkeyNo := self.cds_main.fieldbyname('CRNO').AsString; + fkeyNoS := self.cds_main.fieldbyname('CRNOS').AsString; + fkeyID := self.cds_main.fieldbyname('CRID').AsString; + FMXGangHao := self.cds_main.fieldbyname('Gangno').AsString; + Edit3.Text := self.cds_main.fieldbyname('qtyunit').AsString; +// Edit2.Text := self.cds_main.fieldbyname('FZSPID').AsString; + + FCRTYPE := ''; + + fType := 0; + if showmodal = 1 then + begin + +// self.InitGrid(); +// self.CDS_Main.Locate('spid', fkeyNo, []) + end; + free; + end; +end; + +procedure TfrmBpRklist.Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + try + with ADOQuerySub do + begin + close; + sql.Clear; + sql.Add('select * from CK_SXPB_CRMX A '); + sql.Add(' right JOIN BP_InOut B on B.CRID=A.CRID and B.crno=A.crno'); + sql.Add(' where A.CRNO=' + quotedstr(trim(CDS_Main.fieldbyname('CRNO').AsString))); + sql.Add(' and A.CRID=' + quotedstr(trim(CDS_Main.fieldbyname('CRID').AsString))); + SQL.Add(' and crzt='''''); +// SQL.Add('AND NOT EXISTS(SELECT MXID FROM CK_SXPB_CRMX C WHERE C.FZMXID=A.MXID)'); + sql.Add(' order by MXID'); +// ShowMessage(SQL.text); + open; + end; + SCreateCDS20(ADOQuerySub, CDS_Sub); + SInitCDSData20(ADOQuerySub, CDS_Sub); + finally + end; +end; + +procedure TfrmBpRklist.ToolButton3Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then + Exit; + if CDS_Sub.IsEmpty then + Exit; + if CDS_Sub.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + CDS_Sub.DisableControls; + with CDS_Sub do + begin + First; + while not Eof do + begin + if CDS_Sub.FieldByName('SSel').AsBoolean = True then + begin + PrtData(CDS_Sub.FieldByName('MXID').AsString); + end; + Next; + end; + end; + CDS_Sub.EnableControls; +end; + +procedure TfrmBpRklist.PrtData(FJYID: string); +var + fPrintFile: string; + Txt, fImagePath, Txt2, fImagePath2: string; + Moudle: THandle; + Makebar: TMakebar; + Mixtext: TMixtext; +begin + + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add(' EXEC P_Print_JYLab '); + SQL.Add(' @mjID=''' + Trim(FJYID) + ''''); + Open; + end; + if ADOQueryPrint.IsEmpty then + begin + application.MessageBox('ǩδҵ', 'ʾϢ', MB_ICONERROR); + exit; + end; + + try + Moudle := LoadLibrary('MakeQRBarcode.dll'); + @Makebar := GetProcAddress(Moudle, 'Make'); + @Mixtext := GetProcAddress(Moudle, 'MixText'); + Txt := Trim(ADOQueryPrint.fieldbyname('MXID').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); + CDS_Sub.EnableControls; + exit; + end; + + ExportFtErpFile('ƥǩ.rmf', ADOQueryTmp); + + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ƥǩ.rmf'; + + if FileExists(fPrintFile) then + begin + RMVariables['QRBARCODE'] := fImagePath; + RM1.LoadFromFile(fPrintFile); + + RM1.PrintReport; + end + else + begin + Application.MessageBox(PChar('û' + fPrintFile), 'ʾ', 0); + exit; + end; +end; + +procedure TfrmBpRklist.N1Click(Sender: TObject); +begin + SelOKNo(CDS_Sub, True); +end; + +procedure TfrmBpRklist.N2Click(Sender: TObject); +begin + SelOKNo(CDS_Sub, False); +end; + +procedure TfrmBpRklist.ToolButton4Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then + Exit; +// if CDS_Sub.IsEmpty then +// Exit; + if CDS_Main.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + CDS_Main.DisableControls; + with CDS_Main do + begin + First; + while not Eof do + begin + if CDS_Main.FieldByName('SSel').AsBoolean = True then + begin + PrtRKData(CDS_Main.FieldByName('CRNOS').AsString); + end; + Next; + end; + end; + CDS_Main.EnableControls; +end; + +procedure TfrmBpRklist.PrtRKData(FJYID: string); +var + fPrintFile: string; + Txt, fImagePath, Txt2, fImagePath2: string; + Moudle: THandle; + Makebar: TMakebar; + Mixtext: TMixtext; +begin + + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add(' EXEC P_Print_BPrkLab '); + SQL.Add(' @CRNO=''' + Trim(FJYID) + ''''); + Open; + end; + if ADOQueryPrint.IsEmpty then + begin + application.MessageBox('ǩδҵ', 'ʾϢ', MB_ICONERROR); + exit; + end; + + try + Moudle := LoadLibrary('MakeQRBarcode.dll'); + @Makebar := GetProcAddress(Moudle, 'Make'); + @Mixtext := GetProcAddress(Moudle, 'MixText'); +// Txt := Trim(ADOQueryPrint.fieldbyname('CRNO').AsString); + Txt := Trim(ADOQueryPrint.fieldbyname('CRNOS').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); + CDS_Sub.EnableControls; + exit; + end; + + ExportFtErpFile('ƥǩ.rmf', ADOQueryTmp); + + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ƥǩ.rmf'; + + if FileExists(fPrintFile) then + begin + RMVariables['QRBARCODE'] := fImagePath; + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; +// RM1.PrintReport; + end + else + begin + Application.MessageBox(PChar('û' + fPrintFile), 'ʾ', 0); + exit; + end; +end; + +end. + diff --git a/坯布仓库/U_BpYPCkEdit.dfm b/坯布仓库/U_BpYPCkEdit.dfm new file mode 100644 index 0000000..3077ed0 --- /dev/null +++ b/坯布仓库/U_BpYPCkEdit.dfm @@ -0,0 +1,491 @@ +object frmBpYPCkEdit: TfrmBpYPCkEdit + Left = 165 + Top = 231 + Width = 1071 + Height = 512 + Caption = #20986#24211#32534#36753 + 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 = 1055 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#35810 + ImageIndex = 2 + Visible = False + OnClick = TBRafreshClick + end + object TOk: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #30830#23450#20986#24211 + ImageIndex = 41 + OnClick = TOkClick + end + object TBExport: TToolButton + Left = 150 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + Visible = False + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 213 + Top = 0 + AutoSize = True + Caption = #25171#21360 + Enabled = False + ImageIndex = 12 + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 276 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 138 + Width = 1055 + Height = 316 + Align = alTop + TabOrder = 1 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv1CellClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1ckqty + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + OptionsView.IndicatorWidth = 15 + Styles.Header = BPCK_DataLink.Default + OnCustomDrawIndicatorCell = Tv1CustomDrawIndicatorCell + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1P_CodeNamePropertiesButtonClick + Properties.OnEditValueChanged = v1P_CodeNamePropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 152 + end + object v1P_Color: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnEditValueChanged = v1P_ColorPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 98 + end + object v1ckqty: TcxGridDBColumn + Caption = #20986#24211#25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '0.##' + Properties.OnEditValueChanged = v1ckqtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Content = BPCK_DataLink.cxStyle_fontclFuchsia + Styles.Footer = BPCK_DataLink.cxStyle_fontclFuchsia + Styles.Header = BPCK_DataLink.cxStyle_fontclFuchsia + Width = 121 + end + object v1QtyUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 92 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel2: TPanel + Left = 0 + Top = 32 + Width = 1055 + Height = 77 + Align = alTop + BevelOuter = bvNone + Caption = 'Panel2' + TabOrder = 2 + object GroupBox1: TGroupBox + Left = 0 + Top = 0 + Width = 1055 + Height = 77 + Align = alClient + Caption = #20986#24211#20449#24687 + Color = clSkyBlue + ParentColor = False + TabOrder = 0 + object Label8: TLabel + Left = 24 + Top = 20 + Width = 52 + Height = 12 + Caption = #20986#24211#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 208 + Top = 20 + Width = 52 + Height = 12 + Caption = #20986#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 604 + Top = 20 + Width = 54 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label1: TLabel + Left = 412 + Top = 21 + Width = 52 + Height = 12 + Caption = #35746#21333#20449#24687 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 888 + Top = 24 + Width = 24 + Height = 12 + Caption = #21333#20215 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label3: TLabel + Left = 24 + Top = 44 + Width = 54 + Height = 12 + Caption = #22791' '#27880 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object CRTime: TDateTimePicker + Left = 88 + Top = 16 + Width = 100 + Height = 20 + Date = 41509.970132187500000000 + Format = 'yyyy-MM-dd' + Time = 41509.970132187500000000 + TabOrder = 0 + end + object CRType: TComboBox + Tag = 2 + Left = 265 + Top = 16 + Width = 120 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 1 + Items.Strings = ( + '' + #29983#20135#20837#24211) + end + object cust: TBtnEditA + Left = 668 + Top = 16 + Width = 173 + Height = 20 + Enabled = False + TabOrder = 2 + OnBtnClick = custBtnClick + end + object orderNO: TBtnEditA + Left = 468 + Top = 17 + Width = 100 + Height = 20 + ReadOnly = True + TabOrder = 3 + OnBtnClick = orderNOBtnClick + end + object Edit1: TEdit + Left = 916 + Top = 20 + Width = 60 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 4 + Visible = False + OnKeyPress = Edit1KeyPress + end + object note: TEdit + Left = 88 + Top = 40 + Width = 753 + Height = 20 + TabOrder = 5 + end + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 109 + Width = 1055 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 3 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + end + object Panel1: TPanel + Left = 764 + Top = 112 + Width = 289 + Height = 25 + BevelOuter = bvNone + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + object Label23: TLabel + Left = 108 + Top = 8 + Width = 45 + Height = 14 + Caption = #25968#37327#65306 + end + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 680 + Top = 8 + end + object ADOQueryTmp: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 536 + Top = 4 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 576 + Top = 1 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 612 + Top = 5 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 504 + Top = 12 + end + object ADOQuery1: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 740 + Top = 16 + end + object ADOPrint: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 816 + Top = 16 + end + object RMDB_MD: TRMDBDataSet + Visible = True + DataSet = ADOPrint + Left = 848 + Top = 16 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 896 + Top = 8 + ReportData = {} + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 948 + Top = 20 + end +end diff --git a/坯布仓库/U_BpYPCkEdit.pas b/坯布仓库/U_BpYPCkEdit.pas new file mode 100644 index 0000000..3bd93ee --- /dev/null +++ b/坯布仓库/U_BpYPCkEdit.pas @@ -0,0 +1,859 @@ +unit U_BpYPCkEdit; + +interface + +uses + Windows, Messages, SysUtils, Variants, cxEdit,Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, DB, cxDBData,cxTextEdit, + cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, DBClient, ADODB, cxGridCustomPopupMenu, + cxGridPopupMenu, cxCheckBox, BtnEdit, cxCurrencyEdit,strUtils, RM_Common, + RM_Class, RM_e_Xls, RM_GridReport, RM_System, RM_Dataset; + +type + TfrmBpYPCkEdit = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1QtyUnit: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + TOk: TToolButton; + v1P_Color: TcxGridDBColumn; + v1ckqty: TcxGridDBColumn; + Panel2: TPanel; + GroupBox1: TGroupBox; + CRTime: TDateTimePicker; + Label8: TLabel; + CRType: TComboBox; + Label5: TLabel; + Label9: TLabel; + cust: TBtnEditA; + ADOQuery1: TADOQuery; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + Panel1: TPanel; + Label23: TLabel; + ADOPrint: TADOQuery; + RMDB_MD: TRMDBDataSet; + RMGridReport1: TRMGridReport; + RMXLSExport1: TRMXLSExport; + orderNO: TBtnEditA; + Label1: TLabel; + Edit1: TEdit; + Label2: TLabel; + note: TEdit; + Label3: TLabel; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TOkClick(Sender: TObject); + procedure custBtnClick(Sender: TObject); + procedure v1ckqtyPropertiesEditValueChanged(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure v1P_CodeNamePropertiesEditValueChanged(Sender: TObject); + procedure v1P_ColorPropertiesEditValueChanged(Sender: TObject); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure orderNOBtnClick(Sender: TObject); + procedure Edit1KeyPress(Sender: TObject; var Key: Char); + procedure v1P_CodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure Tv1CustomDrawIndicatorCell(Sender: TcxGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; + var ADone: Boolean); + private + fmainID,fsubID:string; + procedure InitGrid(); + procedure SetComboBox(); + function savedate():Boolean; + function YSData(ckNo,CkID:string;Order_Main10:TClientDataSet):Boolean; + procedure DoKc(); + { Private declarations } + public + fType:integer; + fCKName:string; + fkeyNO:string; + fsyrName:string; + + { Public declarations } + end; + +var + frmBpYPCkEdit: TfrmBpYPCkEdit; + +implementation +uses + U_DataLink,U_Fun10,U_ZDYHelp, U_BpRk, U_ProductOrderNewList, + U_ZdyAttachCP; +{$R *.dfm} +procedure TfrmBpYPCkEdit.DoKc(); +begin + Label23.Caption:='0'; + IF CDS_Main.IsEmpty then exit; + IF trim(CDS_Main.fieldbyname('P_CodeName').AsString)='' then exit; + IF trim(CDS_Main.fieldbyname('P_Color').AsString)='' then exit; + with ADOQuery1 do + begin + close; + sql.Clear; + sql.Add('select AA.* '); + sql.Add('FROM( select A.ckName,P_CodeName,A.P_Color,A.QtyUnit,ckQty=0.00,Price=0.00,money=0.00, '); + sql.Add(' SUM(case when CRFlag='''' then Qty else -1 * Qty end ) as Qty '); + sql.Add('from BP_InOut A '); + sql.Add('where P_CodeName='+quotedstr(trim(CDS_Main.fieldbyname('P_CodeName').AsString)) ); + sql.Add('and P_Color='+quotedstr(trim(CDS_Main.fieldbyname('P_Color').AsString)) ); + if trim(FckName)<>'' then + sql.Add('and ckName='+quotedstr(trim(FckName)) ); + sql.Add('group by A.ckName,P_CodeName,A.P_Color,A.QtyUnit)AA '); + open; + end; + IF not ADOQuery1.IsEmpty then + begin +// Label22.Caption:='ƥ'+trim(ADOQuery1.fieldbyname('kcRollNum').AsString); + Label23.Caption:=''+trim(ADOQuery1.fieldbyname('Qty').AsString); + end; +end; +function TfrmBpYPCkEdit.YSData(ckNo,CkID:string;Order_Main10:TClientDataSet):Boolean; +var + CRID,YFID,Price,PriceUnit,OrderUnit,FComTaiTou:String; +begin + Result:=False; + with Order_Main10 do + begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(cust.text)+''''); + sql.Add('and ZdyStr1=''Ӧ'''); + sql.Add('and YFDefFlag1=0 '); + Open; + end; + if not ADOQuery1.IsEmpty then + begin + CRID:=ADOQuery1.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(cust.text); + FieldByName('ZdyStr1').Value:='Ӧ'; + FieldByName('YFDefFlag1').Value:=0; + Post; + end; + end; + { with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID='''+Trim(ckNo)+''''); + sql.Add(' and subID='''+Trim(ckID)+''''); + sql.Add(' and YFName=''Ʒ'' '); + execsql; + end; } + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add(' where MainID='''+Trim(ckNo)+''''); + sql.Add(' and subID='''+Trim(ckID)+''''); + sql.Add(' and YFName=''Ʒ'' '); + Open; + end; + if ADOQuery1.IsEmpty then + begin + if GetLSNo(ADOQueryCmd,YFID,'CS','YF_Money_CR',4,1)=False then + begin + Application.MessageBox('ȡӦʧ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(ckNo); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦտǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(cust.Text); + FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',CRTime.DateTime)); + FieldByName('YFType').Value:='Զ'; + FieldByName('ps').Value:=0; + FieldByName('Qty').Value:=Order_Main10.fieldbyname('Qty').AsFloat; + FieldByName('Price').Value:=Order_Main10.fieldbyname('Price').AsFloat; + FieldByName('Money').Value:=Order_Main10.fieldbyname('Money').AsFloat; + FieldByName('BBMoney').Value:=Order_Main10.fieldbyname('Money').AsFloat; + //FieldByName('HuiLv').Value:=1; + FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=''; + FieldByName('QtyUnit').Value:=Trim(Order_Main10.fieldbyname('QtyUnit').AsString); + FieldByName('ComTaiTou').Value:=Trim(cust.Text); + FieldByName('YFName').Value:='Ʒ'; + FieldByName('MainId').Value:=Trim(ckNo); + FieldByName('subID').Value:=Trim(ckID); + FieldByName('P_CodeName').Value:=trim(Order_Main10.fieldbyname('P_CodeName').AsString); + FieldByName('P_Color').Value:=trim(Order_Main10.fieldbyname('P_Color').AsString); + FieldByName('YFDefFlag1').Value:=0; + FieldByName('status').Value:='1'; + FieldByName('syrName').Value:='֯'; + Post; + end; + end + else + begin + YFID:=Trim(ADOQuery1.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + end; + Result:=True; +end; +function TfrmBpYPCkEdit.savedate():Boolean; +var + fkcID,i:integer; + Filler:string; + FillTime:TdateTime; + maxno:string; +begin + result:=false; + try + ADOQueryCmd.Connection.BeginTrans; + if FType=0 then + begin + if GetLSNo(ADOQueryCmd,fkeyNO,'CK','BP_InOut',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + Filler:=DName; + FillTime:=SGetServerDateTime(adoqueryTmp); + end + else + begin + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from BP_InOut'); + sql.Add('where CRNO='+quotedstr(trim(fkeyNO))); + open; + Filler:=adoqueryTmp.fieldbyname('Filler').AsString; + FillTime:=adoqueryTmp.fieldbyname('FillTime').AsDateTime; + end; + end; + + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID='''+Trim(fkeyNO)+''''); + // sql.Add(' and subID='''+Trim(ckID)+''''); + sql.Add(' and YFName=''Ʒ'' '); + execsql; + end; + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from BP_InOut'); + sql.Add('where CRNO='+quotedstr(trim(fkeyNO))); + execsql; + end; + CDS_Main.DisableControls; + CDS_Main.First; + i:=1; + with CDS_Main do + begin + while not eof do + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from BP_InOut'); + sql.Add('where 1=2 '); + open; + end; + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('CRNO').Value:=trim(fkeyNO); + ADOQueryCmd.FieldByName('CRID').Value:=i; + ADOQueryCmd.FieldByName('CKName').Value:=trim(fckName); + ADOQueryCmd.FieldByName('mainID').Value:=trim(fieldbyname('mainID').AsString); + ADOQueryCmd.FieldByName('subID').Value:=trim(fieldbyname('subID').AsString); + ADOQueryCmd.FieldByName('CRTime').Value:=formatdateTime('yyyy-MM-dd',CRTime.Date); + ADOQueryCmd.FieldByName('CRType').Value:=trim(crType.Text); + ADOQueryCmd.FieldByName('CRFlag').Value:=''; + // ADOQueryCmd.FieldByName('MJID').Value:=trim(fieldbyname('MJID').AsString); + // ADOQueryCmd.FieldByName('MJXH').Value:=trim(fieldbyname('MJXH').AsString); + // ADOQueryCmd.FieldByName('CPTYPE').Value:=trim(fieldbyname('CPTYPE').AsString); + // ADOQueryCmd.FieldByName('P_Code').Value:=trim(fieldbyname('P_Code').AsString); + ADOQueryCmd.FieldByName('P_CodeName').Value:=trim(fieldbyname('P_CodeName').AsString); + // ADOQueryCmd.FieldByName('P_spec').Value:=trim(fieldbyname('P_spec').AsString); + ADOQueryCmd.FieldByName('P_Color').Value:=trim(fieldbyname('P_Color').AsString); + // ADOQueryCmd.FieldByName('P_MF').Value:=fieldbyname('P_MF').AsFloat; + // ADOQueryCmd.FieldByName('P_KZ').Value:=fieldbyname('P_KZ').AsFloat; + ADOQueryCmd.FieldByName('RollNum').Value:=0; + ADOQueryCmd.FieldByName('Qty').Value:=fieldbyname('Qty').AsFloat; + ADOQueryCmd.FieldByName('Price').Value:=fieldbyname('Price').AsFloat; + ADOQueryCmd.FieldByName('money').Value:=fieldbyname('money').AsFloat; + ADOQueryCmd.FieldByName('QtyUnit').Value:=trim(fieldbyname('QtyUnit').AsString); + // ADOQueryCmd.FieldByName('note').Value:=trim(fieldbyname('note').AsString); + ADOQueryCmd.FieldByName('Filler').Value:=trim(Filler); + ADOQueryCmd.FieldByName('FillTime').Value:=dateTimetostr(FillTime); + ADOQueryCmd.FieldByName('cust').Value:=trim(cust.Text); + ADOQueryCmd.FieldByName('note').Value:=trim(note.Text); + // ADOQueryCmd.FieldByName('FirstNo').Value:=trim(FirstName.TxtCode); + // ADOQueryCmd.FieldByName('FirstName').Value:=trim(FirstName.Text); + if FType=1 then + begin + ADOQueryCmd.FieldByName('editer').Value:=trim(dName); + ADOQueryCmd.FieldByName('editTime').Value:=SGetServerDateTime(ADOQuery1); + end; + ADOQueryCmd.Post; + IF trim(CRType.Text)='Ʒ'then + begin + if not YSData(fkeyNo,inttostr(i),CDS_Main) then + begin + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + exit; + end; + end; + i:=i+1; + next; + end; + end; + CDS_Main.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + result:=true; + except + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; +procedure TfrmBpYPCkEdit.SetComboBox(); +begin + { ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCK'' '); + if trim(fCKName)<>'' then + sql.Add('and zdyName='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count>0 then ckName.ItemIndex:=0; } + + CRType.Items.Clear; + // CRType.Items.Add(''); + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCKTYPE'''); + if trim(fCKName)<>'' then + sql.Add('and note='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count>0 then CRType.ItemIndex:=0; +end; +procedure TfrmBpYPCkEdit.InitGrid(); +begin + try + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select A.*,B.orderNo from BP_InOut A'); + sql.Add('left join JYOrder_sub B on B.mainID=A.mainID and B.subID=A.subID '); + sql.Add('where A.CRNO='+quotedstr(trim(fkeyNO))); + open; + end; + SCreateCDS20(adoqueryTmp,CDS_Main); + SInitCDSData20(adoqueryTmp,CDS_Main); + if not CDS_Main.IsEmpty then + begin + CRTime.Date:= CDS_Main.fieldbyname('CRTime').AsDateTime; + // CKName.ItemIndex:=CKName.Items.IndexOf(trim(CDS_Main.fieldbyname('CKName').AsString)); + CRType.ItemIndex:=CRType.Items.IndexOf(trim(CDS_Main.fieldbyname('CRType').AsString)); + fmainID:=trim(CDS_Main.fieldbyname('MainID').AsString); + fsubID:=trim(CDS_Main.fieldbyname('subID').AsString); + orderNo.Text:=trim(CDS_Main.fieldbyname('orderNo').AsString); + cust.Text:= trim(CDS_Main.fieldbyname('cust').AsString); + note.Text:=trim(CDS_Main.fieldbyname('note').AsString); + end; + finally + end; +end; + +procedure TfrmBpYPCkEdit.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + writeCxGrid(self.Caption,Tv1,'ƥֿ'); + if fType=10 then Action:=cahide + else Action:=cafree; +end; + +procedure TfrmBpYPCkEdit.FormDestroy(Sender: TObject); +begin + frmBpYPCkEdit:=nil; +end; + +procedure TfrmBpYPCkEdit.FormShow(Sender: TObject); +begin +{ if fType=10 then + begin + TOk.Visible:=true; + // v1Ssel.Visible:=true; + v1ckqty.Visible:=true; + v1price.Visible:=true; + v1money.Visible:=true; + GroupBox1.Visible:=true; + end + else + begin + TOk.Visible:=false; + // v1Ssel.Visible:=false; + v1ckqty.Visible:=false; + v1price.Visible:=false; + v1money.Visible:=false; + GroupBox1.Visible:=false; + end; } + readCxGrid(self.Caption,Tv1,'ƥֿ'); + SetComboBox(); + InitGrid(); +end; + +procedure TfrmBpYPCkEdit.FormCreate(Sender: TObject); +begin + //BegDate.Date:=DServerDate-7; +// EndDate.Date:=DServerDate; + CRTime.date:= DServerDate; + cxGrid1.Align:=alclient; + +end; + +procedure TfrmBpYPCkEdit.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmBpYPCkEdit.TBRafreshClick(Sender: TObject); +begin + + initGrid(); +end; + +procedure TfrmBpYPCkEdit.TBPrintClick(Sender: TObject); +var + filepath:string; +begin + if trim(fkeyNO)='' then exit; + + with AdoPrint do + begin + close; + sql.Clear; + sql.Add('select A.cust,A.P_CodeName,A.P_Color,A.QtyUnit,B.orderNo,C.customerNoname,SUM(A.Qty) as Qty,AVG(A.Price) as Price,SUM(A.money) as Money from BP_INout A '); + sql.Add('left join JYOrder_sub B on B.mainID=A.mainID and B.subID=A.subID '); + sql.Add('left join JYOrder_Main C on C.mainID=A.mainID '); + sql.Add('where A.CRNO='+quotedstr(trim(fkeyNO))); + sql.Add('group by A.cust,A.P_CodeName,A.P_Color,A.QtyUnit,B.orderNo,C.customerNoname'); + open; + end; + + + try + filepath:=ExtractFilePath(Application.ExeName) + 'report\뵥Ʒ.rmf'; + if not FileExists(Pchar(filepath)) then + begin + application.MessageBox(pchar('ļ['+filepath+']ڣ'),'ʾϢ',MB_IConError); + exit; + end; + RMVariables['dtxz'] :=FormatDateTime('yyyy-mm-dd',date()); + RMVariables['zdr'] :=trim(DName); + RMVariables['Filler'] :=trim(DName); + RMGridReport1.LoadFromFile(filepath); + RMGridReport1.ShowReport; + finally + + end; + +end; + +procedure TfrmBpYPCkEdit.TBExportClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid1); +end; + +procedure TfrmBpYPCkEdit.TOkClick(Sender: TObject); +begin + CRTIME.SetFocus; + IF CDS_Main.IsEmpty then exit; + if trim(CRType.Text)='' then + begin + application.MessageBox('ͲΪգ','ʾϢ',0); + exit; + end; + if trim(cust.Text)=''then + begin + application.MessageBox('ͻΪգ','ʾϢ',0); + exit; + end; + if savedate() then + begin + application.MessageBox('ݱɹ','ʾϢ'); + TOk.Enabled:=false; + TBPrint.Enabled:=true; + // ModalResult:=1; + end + else + begin + application.MessageBox('ݱʧܣ','ʾϢ',MB_ICONERROR); + end; +end; + +procedure TfrmBpYPCkEdit.custBtnClick(Sender: TObject); +begin +{ try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='GDCustFlag'; + flagname:='ͻ'; + if ShowModal=1 then + begin + cust.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; } +end; + +procedure TfrmBpYPCkEdit.v1ckqtyPropertiesEditValueChanged(Sender: TObject); +var + mvalue,fieldname,qty1,qty2:String; + num1:double; + +begin + fieldname:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + with CDS_Main do + begin + Edit; + FieldByName(Trim(fieldname)).Value:=TcxTextEdit(Sender).EditingText; + num1:=FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat; + FieldByName('Money').Value:=strtofloat(format('%8.2f',[num1])); + Post; + end; + Tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmBpYPCkEdit.CheckBox1Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmBpYPCkEdit.ToolButton1Click(Sender: TObject); +begin + CopyAddRow(Tv1,CDS_Main); + CDS_Main.edit; + CDS_Main.fieldbyname('QtyUnit').Value:='M'; + CDS_Main.Post; +end; + +procedure TfrmBpYPCkEdit.ToolButton2Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then exit; + CDS_Main.Delete; +end; + +procedure TfrmBpYPCkEdit.v1P_CodeNamePropertiesEditValueChanged( + Sender: TObject); +var + mvalue:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + + IF trim(mvalue)='' then exit; + + IF rightBstr(trim(mvalue),1)<>'#'THEN + BEGIn + mvalue:=trim(mvalue)+'#'; + END; + + + with CDS_Main do + begin + Edit; + FieldByName('P_CodeName').Value:=Trim(mvalue); + Post; + end; + + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment A '); + sql.Add('where zdyName='+quotedstr(trim(CDS_main.fieldbyname('P_CodeName').AsString))); + open; + end; + IF ADOQueryCmd.IsEmpty then + begin + application.MessageBox('Ʒڣ','ʾϢ',0); + with CDS_main do + begin + Edit; + FieldByName('P_CodeName').Value:=''; + Post; + end; + end; + self.tv1.Controller.EditingController.ShowEdit(); + DoKc(); + +end; + +procedure TfrmBpYPCkEdit.v1P_ColorPropertiesEditValueChanged( + Sender: TObject); +var + mvalue:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + + IF trim(mvalue)='' then exit; + + IF rightBstr(trim(mvalue),1)<>'#'THEN + BEGIn + mvalue:=trim(mvalue)+'#'; + END; + + + with CDS_Main do + begin + Edit; + FieldByName('P_Color').Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment A '); + sql.Add('where zdyName='+quotedstr(trim(CDS_main.fieldbyname('P_CodeName').AsString))); + sql.Add('and DEFstr3='+quotedstr(trim(CDS_main.fieldbyname('P_Color').AsString))); + open; + end; + IF ADOQueryCmd.IsEmpty then + begin + application.MessageBox('ɫڣ','ʾϢ',0); + with CDS_main do + begin + Edit; + FieldByName('P_Color').Value:=''; + Post; + end; + end; + self.tv1.Controller.EditingController.ShowEdit(); + DoKc(); +end; + +procedure TfrmBpYPCkEdit.Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + DoKc(); +end; + +procedure TfrmBpYPCkEdit.orderNOBtnClick(Sender: TObject); +begin + frmProductOrderNewList:=TfrmProductOrderNewList.Create(Application); + with frmProductOrderNewList do + begin + DParameters1:='Ȩ'; + if showmodal=1 then + begin + self.fmainID:=trim(Order_Main.fieldbyname('MainID').AsString); + self.fsubID:=trim(Order_Main.fieldbyname('subID').AsString); + self.orderNo.Text:=trim(Order_Main.fieldbyname('orderNo').AsString); + self.cust.Text:=trim(Order_Main.fieldbyname('CustomerNoName').AsString); + // self.PRTColor.Text:=trim(Order_Main.fieldbyname('PRTColor').AsString); + end; + free; + end; + + with ADOQuery1 do + begin + close; + sql.Clear; + sql.Add('select * from JYOrder_sub '); + sql.Add('where mainID='+quotedstr(trim(FmainID))); + open; + end; + + CDS_Main.EmptyDataSet; + CDS_Main.DisableControls; + + IF not ADOQuery1.IsEmpty then + begin + while not ADOQuery1.Eof do + begin + CDS_Main.Append; + CDS_Main.Fieldbyname('mainID').Value:=trim(ADOQuery1.Fieldbyname('mainID').AsString); + CDS_Main.Fieldbyname('subID').Value:=trim(ADOQuery1.Fieldbyname('subID').AsString); + CDS_Main.Fieldbyname('P_CodeName').Value:=trim(ADOQuery1.Fieldbyname('PrtCodeName').AsString); + CDS_Main.Fieldbyname('P_Color').Value:=trim(ADOQuery1.Fieldbyname('PrtColor').AsString); + CDS_Main.Fieldbyname('Qty').Value:=trim(ADOQuery1.Fieldbyname('PrtOrderQty').AsString); + CDS_Main.Fieldbyname('QtyUnit').Value:='M'; + CDS_Main.Post; + ADOQuery1.next; + end; + end; + CDS_Main.First; + CDS_Main.EnableControls; +end; + +procedure TfrmBpYPCkEdit.Edit1KeyPress(Sender: TObject; var Key: Char); +var + num1:double; +begin + IF key=#13 then + begin + with CDS_Main do + begin + DisableControls; + first; + while not eof do + begin + Edit; + FieldByName('Price').Value:=strtofloatdef(edit1.Text,0); + num1:=FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat; + FieldByName('Money').Value:=strtofloat(format('%8.2f',[num1])); + Post; + next; + end; + first; + EnableControls; + end; + Tv1.Controller.EditingController.ShowEdit(); + end; +end; + +procedure TfrmBpYPCkEdit.v1P_CodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZdyAttachCP:=TfrmZdyAttachCP.Create(Application); + with frmZdyAttachCP do + begin + if ShowModal=1 then + begin + Self.CDS_main.Edit; + Self.CDS_main.FieldByName('P_Code').Value:=Trim(CDS_HZ.fieldbyname('ZdyCode').AsString); + Self.CDS_main.FieldByName('P_CodeName').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + Self.CDS_main.FieldByName('P_Color').Value:=Trim(CDS_HZ.fieldbyname('DEFstr3').AsString); + // Self.Order_Sub.FieldByName('SOrddefstr4').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + Self.CDS_main.Post; + end; + end; + finally + frmZdyAttachCP.Free; + end; + self.tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmBpYPCkEdit.Tv1CustomDrawIndicatorCell( + Sender: TcxGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxCustomGridIndicatorItemViewInfo; var ADone: Boolean); +var + FValue: string; + FBounds: TRect; + begin + FBounds := AViewInfo.Bounds; + if (AViewInfo is TcxGridIndicatorRowItemViewInfo) then + begin + ACanvas.FillRect(FBounds); + ACanvas.DrawComplexFrame(FBounds, clBtnHighlight, clBtnShadow, [bBottom, bLeft, bRight], 1); + FValue :=IntToStr(TcxGridIndicatorRowItemViewInfo(AViewInfo).GridRecord.Index+1); + InflateRect(FBounds, -1, -1) ; + ACanvas.Font.Color := clBlack; + ACanvas.Brush.Style := bsClear; + ACanvas.DrawText(FValue, FBounds, cxAlignCenter or cxAlignTop); + ADone := True; + end; + end; + +end. diff --git a/坯布仓库/U_BpkcCk.dfm b/坯布仓库/U_BpkcCk.dfm new file mode 100644 index 0000000..c481e94 --- /dev/null +++ b/坯布仓库/U_BpkcCk.dfm @@ -0,0 +1,511 @@ +object frmBpkcCk: TfrmBpkcCk + Left = 64 + Top = 128 + Width = 1143 + Height = 602 + Caption = #20986#24211#20449#24687 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1127 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#35810 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TOk: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #30830#23450#20986#24211 + ImageIndex = 41 + Visible = False + OnClick = TOkClick + end + object TBExport: TToolButton + Left = 150 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 213 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 276 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 101 + Width = 1127 + Height = 316 + Align = alTop + TabOrder = 1 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = v1Qty + end + item + Kind = skSum + Column = v1ckqty + end + item + Kind = skSum + Column = v1money + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = BPCK_DataLink.Default + object v1Ssel: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'Ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 112 + end + object v1P_Color: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 69 + end + object v1Qty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = BPCK_DataLink.FontBlue + Styles.Footer = BPCK_DataLink.FontBlue + Styles.Header = BPCK_DataLink.FontBlue + Width = 96 + end + object v1QtyUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 147 + end + object v1ckqty: TcxGridDBColumn + Caption = #20986#24211#25968#37327 + DataBinding.FieldName = 'ckqty' + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '0.##' + Properties.OnEditValueChanged = v1ckqtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Content = BPCK_DataLink.cxStyle_fontclFuchsia + Styles.Footer = BPCK_DataLink.cxStyle_fontclFuchsia + Styles.Header = BPCK_DataLink.cxStyle_fontclFuchsia + Width = 105 + end + object v1price: TcxGridDBColumn + Caption = #20986#24211#20215#26684 + DataBinding.FieldName = 'price' + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '0.##' + Properties.OnEditValueChanged = v1ckqtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 103 + end + object v1money: TcxGridDBColumn + Caption = #20986#24211#37329#39069 + DataBinding.FieldName = 'money' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = BPCK_DataLink.cxStyle_fontclPurple + Styles.Footer = BPCK_DataLink.cxStyle_fontclPurple + Styles.Header = BPCK_DataLink.cxStyle_fontclPurple + Width = 80 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel2: TPanel + Left = 0 + Top = 32 + Width = 1127 + Height = 69 + Align = alTop + BevelOuter = bvNone + Caption = 'Panel2' + TabOrder = 2 + object Panel1: TPanel + Left = 0 + Top = 0 + Width = 608 + Height = 69 + Align = alClient + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 0 + object Label1: TLabel + Left = 11 + Top = 91 + Width = 52 + Height = 12 + Caption = #20837#24211#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 52 + Top = 116 + Width = 13 + Height = 12 + Caption = #33267 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 32 + Top = 28 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 416 + Top = 104 + Width = 52 + Height = 12 + Caption = #35268#26684#22411#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 296 + Top = 84 + Width = 24 + Height = 12 + Caption = #20179#24211 + end + object Label7: TLabel + Left = 260 + Top = 28 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 64 + Top = 87 + Width = 100 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + ShowCheckbox = True + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 64 + Top = 111 + Width = 100 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + ShowCheckbox = True + TabOrder = 1 + end + object P_CodeName: TEdit + Tag = 2 + Left = 84 + Top = 24 + Width = 120 + Height = 20 + TabOrder = 2 + OnChange = P_CodeNameChange + end + object P_spec: TEdit + Tag = 2 + Left = 480 + Top = 100 + Width = 120 + Height = 20 + TabOrder = 3 + OnChange = P_CodeNameChange + end + object CheckBox1: TCheckBox + Left = 440 + Top = 24 + Width = 97 + Height = 17 + Caption = #21547#24211#23384#20026#38646 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + OnClick = CheckBox1Click + end + object ckName: TComboBox + Left = 320 + Top = 80 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 5 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object P_Color: TEdit + Tag = 1 + Left = 288 + Top = 24 + Width = 121 + Height = 20 + TabOrder = 6 + OnChange = P_CodeNameChange + end + object CheckBox2: TCheckBox + Left = 32 + Top = 48 + Width = 97 + Height = 17 + Caption = #20840#36873 + TabOrder = 7 + OnClick = CheckBox2Click + end + end + object GroupBox1: TGroupBox + Left = 608 + Top = 0 + Width = 519 + Height = 69 + Align = alRight + Caption = #20986#24211#20449#24687 + Color = clSkyBlue + ParentColor = False + TabOrder = 1 + object Label8: TLabel + Left = 24 + Top = 20 + Width = 52 + Height = 12 + Caption = #20986#24211#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 204 + Top = 20 + Width = 52 + Height = 12 + Caption = #20986#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 24 + Top = 44 + Width = 54 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object CRTime: TDateTimePicker + Left = 88 + Top = 16 + Width = 100 + Height = 20 + Date = 41509.970132187500000000 + Format = 'yyyy-MM-dd' + Time = 41509.970132187500000000 + TabOrder = 0 + end + object CRType: TComboBox + Tag = 2 + Left = 265 + Top = 16 + Width = 120 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 1 + OnChange = P_CodeNameChange + Items.Strings = ( + '' + #29983#20135#20837#24211) + end + object cust: TBtnEditA + Left = 88 + Top = 40 + Width = 297 + Height = 20 + TabOrder = 2 + OnBtnClick = custBtnClick + end + end + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 680 + Top = 8 + end + object ADOQueryTmp: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 536 + Top = 4 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 576 + Top = 1 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 612 + Top = 5 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 504 + Top = 12 + end + object ADOQuery1: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 740 + Top = 16 + end +end diff --git a/坯布仓库/U_BpkcCk.pas b/坯布仓库/U_BpkcCk.pas new file mode 100644 index 0000000..34abad0 --- /dev/null +++ b/坯布仓库/U_BpkcCk.pas @@ -0,0 +1,545 @@ +unit U_BpkcCk; + +interface + +uses + Windows, Messages, SysUtils, Variants, cxEdit,Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, DB, cxDBData,cxTextEdit, + cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, DBClient, ADODB, cxGridCustomPopupMenu, + cxGridPopupMenu, cxCheckBox, BtnEdit, cxCurrencyEdit; + +type + TfrmBpkcCk = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1QtyUnit: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + TOk: TToolButton; + v1P_Color: TcxGridDBColumn; + v1ckqty: TcxGridDBColumn; + v1price: TcxGridDBColumn; + v1money: TcxGridDBColumn; + Panel2: TPanel; + Panel1: TPanel; + Label1: TLabel; + Label2: TLabel; + Label3: TLabel; + Label4: TLabel; + Label6: TLabel; + Label7: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + P_CodeName: TEdit; + P_spec: TEdit; + CheckBox1: TCheckBox; + ckName: TComboBox; + P_Color: TEdit; + GroupBox1: TGroupBox; + CRTime: TDateTimePicker; + Label8: TLabel; + CRType: TComboBox; + Label5: TLabel; + Label9: TLabel; + cust: TBtnEditA; + ADOQuery1: TADOQuery; + v1Ssel: TcxGridDBColumn; + CheckBox2: TCheckBox; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure P_CodeNameChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TOkClick(Sender: TObject); + procedure custBtnClick(Sender: TObject); + procedure v1ckqtyPropertiesEditValueChanged(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + private + procedure InitGrid(); + procedure SetComboBox(); + function savedate():Boolean; + function YSData(ckNo,CkID:string;Order_Main10:TClientDataSet):Boolean; + { Private declarations } + public + fType:integer; + fCKName:string; + fkeyNO:string; + + { Public declarations } + end; + +var + frmBpkcCk: TfrmBpkcCk; + +implementation +uses + U_DataLink,U_Fun10,U_ZDYHelp, U_BpRk; +{$R *.dfm} +function TfrmBpkcCk.YSData(ckNo,CkID:string;Order_Main10:TClientDataSet):Boolean; +var + CRID,YFID,Price,PriceUnit,OrderUnit,FComTaiTou:String; +begin + Result:=False; + with Order_Main10 do + begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(cust.text)+''''); + sql.Add('and YFDefFlag1=1 '); + Open; + end; + if not ADOQuery1.IsEmpty then + begin + CRID:=ADOQuery1.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(cust.text); + FieldByName('ZdyStr1').Value:='Ӧ'; + FieldByName('YFDefFlag1').Value:=1; + Post; + end; + end; + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add(' where MainID='''+Trim(ckNo)+''''); + sql.Add(' and subID='''+Trim(ckID)+''''); + Open; + end; + if ADOQuery1.IsEmpty then + begin + if GetLSNo(ADOQueryCmd,YFID,'CS','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡӦʧ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(ckNo); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦտǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(cust.Text); + FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',date())); + FieldByName('YFType').Value:='Զ'; + FieldByName('Qty').Value:=Order_Main10.fieldbyname('ckQty').AsFloat; + FieldByName('Price').Value:=Order_Main10.fieldbyname('Price').AsFloat; + FieldByName('Money').Value:=Order_Main10.fieldbyname('Money').AsFloat; + FieldByName('BBMoney').Value:=Order_Main10.fieldbyname('Money').AsFloat; + //FieldByName('HuiLv').Value:=1; + FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=''; + FieldByName('QtyUnit').Value:=Trim(Order_Main10.fieldbyname('QtyUnit').AsString); + FieldByName('ComTaiTou').Value:=Trim(cust.Text); + FieldByName('YFName').Value:='۽'; + FieldByName('MainId').Value:=Trim(ckNo); + FieldByName('subID').Value:=Trim(ckID); + FieldByName('YFDefFlag1').Value:=1; + Post; + end; + end + else + begin + YFID:=Trim(ADOQueryTmp.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + end; + Result:=True; +end; +function TfrmBpkcCk.savedate():Boolean; +var + fkcID,i:integer; + Filler:string; + FillTime:TdateTime; + maxno:string; +begin + result:=false; + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,fkeyNO,'CK','BP_InOut',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + Filler:=DName; + FillTime:=SGetServerDateTime(ADOQuery1); + + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from BP_InOut'); + sql.Add('where CRNO='+quotedstr(trim(fkeyNO))); + execsql; + end; + CDS_Main.DisableControls; + CDS_Main.First; + i:=1; + with CDS_Main do + begin + while not eof do + begin + if Fieldbyname('ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from BP_InOut'); + sql.Add('where 1=2 '); + open; + end; + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('CRNO').Value:=trim(fkeyNO); + ADOQueryCmd.FieldByName('CRID').Value:=i; + ADOQueryCmd.FieldByName('CKName').Value:=trim(fckName); + // ADOQueryCmd.FieldByName('mainID').Value:=trim(fmainID); + // ADOQueryCmd.FieldByName('subID').Value:=trim(fsubID); + ADOQueryCmd.FieldByName('CRTime').Value:=formatdateTime('yyyy-MM-dd',CRTime.Date); + ADOQueryCmd.FieldByName('CRType').Value:=trim(crType.Text); + ADOQueryCmd.FieldByName('CRFlag').Value:=''; + // ADOQueryCmd.FieldByName('MJID').Value:=trim(fieldbyname('MJID').AsString); + // ADOQueryCmd.FieldByName('MJXH').Value:=trim(fieldbyname('MJXH').AsString); + // ADOQueryCmd.FieldByName('CPTYPE').Value:=trim(fieldbyname('CPTYPE').AsString); + // ADOQueryCmd.FieldByName('P_Code').Value:=trim(fieldbyname('P_Code').AsString); + ADOQueryCmd.FieldByName('P_CodeName').Value:=trim(fieldbyname('P_CodeName').AsString); + // ADOQueryCmd.FieldByName('P_spec').Value:=trim(fieldbyname('P_spec').AsString); + ADOQueryCmd.FieldByName('P_Color').Value:=trim(fieldbyname('P_Color').AsString); + // ADOQueryCmd.FieldByName('P_MF').Value:=fieldbyname('P_MF').AsFloat; + // ADOQueryCmd.FieldByName('P_KZ').Value:=fieldbyname('P_KZ').AsFloat; + ADOQueryCmd.FieldByName('RollNum').Value:=0; + ADOQueryCmd.FieldByName('Qty').Value:=fieldbyname('ckQty').AsFloat; + ADOQueryCmd.FieldByName('Price').Value:=fieldbyname('Price').AsFloat; + ADOQueryCmd.FieldByName('money').Value:=fieldbyname('money').AsFloat; + ADOQueryCmd.FieldByName('QtyUnit').Value:=trim(fieldbyname('QtyUnit').AsString); + // ADOQueryCmd.FieldByName('note').Value:=trim(fieldbyname('note').AsString); + ADOQueryCmd.FieldByName('Filler').Value:=trim(Filler); + ADOQueryCmd.FieldByName('FillTime').Value:=dateTimetostr(FillTime); + ADOQueryCmd.FieldByName('cust').Value:=trim(cust.Text); + // ADOQueryCmd.FieldByName('FirstNo').Value:=trim(FirstName.TxtCode); + // ADOQueryCmd.FieldByName('FirstName').Value:=trim(FirstName.Text); + if FType=1 then + begin + ADOQueryCmd.FieldByName('editer').Value:=trim(dName); + ADOQueryCmd.FieldByName('editTime').Value:=SGetServerDateTime(ADOQuery1); + end; + ADOQueryCmd.Post; + + if not YSData(fkeyNo,inttostr(i),CDS_Main) then + begin + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + exit; + end; + i:=i+1; + end; + next; + end; + end; + CDS_Main.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + result:=true; + except + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; +procedure TfrmBpkcCk.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCK'' '); + if trim(fCKName)<>'' then + sql.Add('and zdyName='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count>0 then ckName.ItemIndex:=0; + + CRType.Items.Clear; + // CRType.Items.Add(''); + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCKTYPE'''); + if trim(fCKName)<>'' then + sql.Add('and note='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count>0 then CRType.ItemIndex:=0; +end; +procedure TfrmBpkcCk.InitGrid(); +begin + try + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select AA.*,QtyUnit=''M'' '); + sql.Add('FROM( select A.ckName,P_CodeName,A.P_Color,ckQty=0.00,Price=0.00,money=0.00, '); + sql.Add(' SUM(case when CRFlag='''' then Qty else -1 * Qty end ) as Qty '); + sql.Add('from BP_InOut A '); + sql.Add('group by A.ckName,P_CodeName,A.P_Color)AA '); + if trim(FckName)<>'' then + sql.Add('where ckName='+quotedstr(trim(FckName)) ); + if not checkbox1.Checked then + sql.Add('and qty<>0 '); + open; + end; + SCreateCDS20(adoqueryTmp,CDS_Main); + SInitCDSData20(adoqueryTmp,CDS_Main); + finally + end; +end; + +procedure TfrmBpkcCk.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + writeCxGrid(self.Caption,Tv1,'ƥֿ'); + if fType=10 then Action:=cahide + else Action:=cafree; +end; + +procedure TfrmBpkcCk.FormDestroy(Sender: TObject); +begin + frmBpkcCk:=nil; +end; + +procedure TfrmBpkcCk.P_CodeNameChange(Sender: TObject); +begin + if ADOQueryTmp.Active=False then Exit; + SDofilter(ADOQueryTmp,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryTmp,CDS_Main); + SInitCDSData20(ADOQueryTmp,CDS_Main); +end; + +procedure TfrmBpkcCk.FormShow(Sender: TObject); +begin + if fType=10 then + begin + TOk.Visible:=true; + v1Ssel.Visible:=true; + v1ckqty.Visible:=true; + v1price.Visible:=true; + v1money.Visible:=true; + GroupBox1.Visible:=true; + end + else + begin + // TOk.Visible:=false; + // v1Ssel.Visible:=false; + v1ckqty.Visible:=false; + v1price.Visible:=false; + v1money.Visible:=false; + GroupBox1.Visible:=false; + end; + readCxGrid(self.Caption,Tv1,'ƥֿ'); + SetComboBox(); + InitGrid(); +end; + +procedure TfrmBpkcCk.FormCreate(Sender: TObject); +begin + BegDate.Date:=DServerDate-7; + EndDate.Date:=DServerDate; + CRTime.date:= DServerDate; + cxGrid1.Align:=alclient; + +end; + +procedure TfrmBpkcCk.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmBpkcCk.TBRafreshClick(Sender: TObject); +begin + + initGrid(); +end; + +procedure TfrmBpkcCk.TBPrintClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid1); +end; + +procedure TfrmBpkcCk.TBExportClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid1); +end; + +procedure TfrmBpkcCk.TOkClick(Sender: TObject); +begin + frmBpkcCk.ModalResult:=1; +{ CRTIME.SetFocus; + if not CDS_Main.Locate('SSel',True,[]) then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + if trim(CRType.Text)='' then + begin + application.MessageBox('ͲΪգ','ʾϢ',0); + exit; + end; + if trim(cust.Text)=''then + begin + application.MessageBox('ͻΪգ','ʾϢ',0); + exit; + end; + if savedate() then + begin + application.MessageBox('ݱɹ','ʾϢ'); + InitGrid(); + fkeyNo:=''; + // ModalResult:=1; + end + else + begin + application.MessageBox('ݱʧܣ','ʾϢ',MB_ICONERROR); + end; } +end; + +procedure TfrmBpkcCk.custBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='GDCustFlag'; + flagname:='ͻ'; + if ShowModal=1 then + begin + cust.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmBpkcCk.v1ckqtyPropertiesEditValueChanged(Sender: TObject); +var + mvalue,fieldname,qty1,qty2:String; + num1:double; + +begin + fieldname:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + with CDS_Main do + begin + Edit; + FieldByName(Trim(fieldname)).Value:=TcxTextEdit(Sender).EditingText; + num1:=FieldByName('ckQty').AsFloat * FieldByName('Price').AsFloat; + FieldByName('Money').Value:=strtofloat(format('%8.2f',[num1])); + Post; + end; + Tv1.Controller.EditingController.ShowEdit(); + +end; + +procedure TfrmBpkcCk.CheckBox1Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmBpkcCk.CheckBox2Click(Sender: TObject); +begin + IF CDS_Main.IsEmpty then exit; + with CDS_Main do + begin + DisableControls; + first; + while not eof do + begin + edit; + fieldbyname('ssel').Value:=checkbox2.Checked; + post; + next; + end; + First; + EnableControls; + end; +end; + +end. diff --git a/坯布仓库/U_Bpkclist.dfm b/坯布仓库/U_Bpkclist.dfm new file mode 100644 index 0000000..e45096c --- /dev/null +++ b/坯布仓库/U_Bpkclist.dfm @@ -0,0 +1,521 @@ +object frmBpkclist: TfrmBpkclist + Left = 378 + Top = 334 + Width = 1416 + Height = 588 + Caption = #24211#23384#20449#24687#34920 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1400 + AutoSize = True + 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 = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#35810 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TOk: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #30830#23450 + ImageIndex = 41 + Visible = False + OnClick = TOkClick + end + object TBExport: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1400 + Height = 65 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #20837#24211#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 64 + Top = 40 + Width = 13 + Height = 12 + Caption = #33267 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 228 + Top = 40 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 440 + Top = 40 + Width = 39 + Height = 12 + Caption = #21152#24037#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 228 + Top = 16 + Width = 52 + Height = 12 + Caption = #20837#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 288 + Top = 72 + Width = 24 + Height = 12 + Caption = #20179#24211 + end + object Label7: TLabel + Left = 440 + Top = 16 + Width = 39 + Height = 12 + Caption = #20379#24212#21830 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 616 + Top = 16 + Width = 26 + Height = 12 + Caption = #32568#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 100 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + ShowCheckbox = True + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 100 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + ShowCheckbox = True + TabOrder = 1 + end + object P_CodeName: TEdit + Tag = 2 + Left = 284 + Top = 36 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = P_CodeNameChange + end + object factoryName: TEdit + Tag = 2 + Left = 484 + Top = 36 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = P_CodeNameChange + end + object CRType: TComboBox + Tag = 2 + Left = 284 + Top = 12 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 4 + OnChange = P_CodeNameChange + Items.Strings = ( + '' + #29983#20135#20837#24211) + end + object CheckBox1: TCheckBox + Left = 772 + Top = 12 + Width = 97 + Height = 17 + Caption = #21547#24211#23384#20026#38646 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + end + object ckName: TComboBox + Left = 320 + Top = 68 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 6 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object cust: TEdit + Tag = 2 + Left = 484 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 7 + OnChange = P_CodeNameChange + end + object gangNO: TEdit + Tag = 2 + Left = 648 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 8 + OnChange = P_CodeNameChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 97 + Width = 1400 + Height = 316 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1RollNum + end + item + Kind = skSum + Column = v1Qty + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = BPCK_DataLink.Default + object v1Ssel: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'Ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + end + object v1Column2: TcxGridDBColumn + Caption = #20379#24212#21830 + DataBinding.FieldName = 'cust' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column3: TcxGridDBColumn + Caption = #21152#24037#21378 + DataBinding.FieldName = 'factoryName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1CRTime: TcxGridDBColumn + Caption = #20837#24211#26085#26399 + DataBinding.FieldName = 'CRTime' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 71 + end + object v1CRType: TcxGridDBColumn + Caption = #20837#24211#31867#22411 + DataBinding.FieldName = 'CRType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 79 + end + object v1MJID: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 60 + end + object v1MJXH: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 60 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1P_SPEC: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'P_SPEC' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 90 + end + object v1Column1: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column4: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'gangNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1P_MF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'P_MF' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1P_KZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'P_KZ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1CPType: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'CPType' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 60 + end + object v1RollNum: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'RollNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = BPCK_DataLink.FontBlue + Styles.Footer = BPCK_DataLink.FontBlue + Styles.Header = BPCK_DataLink.FontBlue + Width = 59 + end + object v1Qty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = BPCK_DataLink.FontBlue + Styles.Footer = BPCK_DataLink.FontBlue + Styles.Header = BPCK_DataLink.FontBlue + Width = 59 + end + object v1QtyUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object Tv1Column1: TcxGridDBColumn + Caption = #39044#25187#38500#25968#37327 + DataBinding.FieldName = 'PreBPqty' + HeaderAlignmentHorz = taCenter + Width = 100 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 680 + Top = 8 + end + object ADOQueryTmp: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 536 + Top = 4 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 576 + Top = 1 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 612 + Top = 5 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 504 + Top = 12 + end +end diff --git a/坯布仓库/U_Bpkclist.pas b/坯布仓库/U_Bpkclist.pas new file mode 100644 index 0000000..d9882df --- /dev/null +++ b/坯布仓库/U_Bpkclist.pas @@ -0,0 +1,253 @@ +unit U_Bpkclist; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, + cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, + cxGrid, DBClient, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, cxCheckBox, + cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; + +type + TfrmBpkclist = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1P_SPEC: TcxGridDBColumn; + v1P_MF: TcxGridDBColumn; + v1P_KZ: TcxGridDBColumn; + v1RollNum: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1QtyUnit: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1CRType: TcxGridDBColumn; + v1CRTime: TcxGridDBColumn; + Label2: TLabel; + Label3: TLabel; + Label4: TLabel; + P_CodeName: TEdit; + factoryName: TEdit; + CRType: TComboBox; + Label5: TLabel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + TOk: TToolButton; + v1Ssel: TcxGridDBColumn; + CheckBox1: TCheckBox; + v1MJID: TcxGridDBColumn; + v1MJXH: TcxGridDBColumn; + v1CPType: TcxGridDBColumn; + ckName: TComboBox; + Label6: TLabel; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + cust: TEdit; + Label7: TLabel; + gangNO: TEdit; + Label8: TLabel; + v1Column4: TcxGridDBColumn; + Tv1Column1: TcxGridDBColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure P_CodeNameChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TOkClick(Sender: TObject); + private + procedure InitGrid(); + procedure SetComboBox(); + { Private declarations } + public + fType: integer; + fCKName: string; + + { Public declarations } + end; + +var + frmBpkclist: TfrmBpkclist; + +implementation + +uses + U_DataLink, U_Fun10, U_ZDYHelp, U_BpRk; +{$R *.dfm} + +procedure TfrmBpkclist.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCK'' '); + if trim(fCKName) <> '' then + sql.Add('and zdyName=' + quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count > 0 then + ckName.ItemIndex := 0; + + CRType.Items.Clear; + CRType.Items.Add(''); + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPRKTYPE'''); + if trim(fCKName) <> '' then + sql.Add('and note=' + quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count > 0 then + CRType.ItemIndex := 0; +end; + +procedure TfrmBpkclist.InitGrid(); +begin + try + with adoqueryTmp do + begin + close; + sql.Clear; +// sql.Add('select A.*,B.cust,B.factoryName from BP_KC A'); +// sql.Add('inner join BP_inout B on B.KCID=A.KCID and B.CRFlag='''' '); +// sql.Add('where 1=1'); sum(([dbo].[Get_ShuZi](defstr3)) sum((cast(ISNULL(defstr2,0) as float)) + + SQL.Add('SELECT count(A.mxid) as RollNum,sum(A.kcqty2) as qty,B.cust,B.factoryName,B.CRTime,B.CRType,B.P_CodeName,B.P_SPEC,B.P_Color,B.gangNo,B.P_KZ,B.P_MF,B.QtyUnit,B.ckName '); + SQL.Add(',PreBPqty=(select sum(([dbo].[Get_ShuZi](defstr2))*(isnull(prtorderqty,0))) from JYOrder_Sub X inner join KH_Zdy_CPCB M on M.ZdyCode=X.PRTCode left join JYOrder_Main N on N.mainid=X.mainid '); + SQL.Add(' where M.defstr1=B.P_CodeName and M.CBColor=X.prtcolor and left(SOrddefstr5,1)=''A'' and N.Status=''0'')'); // M.CBColor in (B.P_Color) +// SQL.Add(' where M.defstr1=B.P_CodeName and M.CBColor=B.P_Color and left(SOrddefstr5,1)=''A'' and N.Status=''0'')'); + SQL.Add('+(select sum(([dbo].[Get_ShuZi](defstr3))*(isnull(prtorderqty,0)))from JYOrder_Sub X inner join KH_Zdy_CPCB M on M.ZdyCode=X.PRTCode left join JYOrder_Main N on N.mainid=X.mainid '); + SQL.Add(' where M.defstr1=B.P_CodeName and M.CBColor=X.prtcolor and left(SOrddefstr5,1)=''C'' and N.Status=''0'' )'); //and M.CBColor=B.P_Color +// sql.Add('FROM CK_SXPB_CRMX A inner join BP_InOut B on A.crno=B.crno and B.crid=A.crid'); + sql.Add('FROM CK_SXPB_CRMX A inner join BP_InOut B on A.crnos=B.crnos '); + sql.Add(' where A.crzt='''' '); +// SQL.Add('and exists(select crno from BP_KC d where D.crno=A.crno)'); + SQL.Add('and exists(select crnoS from BP_KC d where D.crnos=A.crnos)'); + if begdate.Checked then + sql.Add('and B.CRTime>=''' + formatdateTime('yyyy-MM-dd', begdate.Date) + ''' '); + if enddate.Checked then + sql.Add('and B.CRTime<''' + formatdateTime('yyyy-MM-dd', enddate.Date + 1) + ''' '); +// if not CheckBox1.Checked then +// sql.Add('and (A.RollNum<>0 or A.qty<>0 ) '); + if trim(FckName) <> '' then + sql.Add('and B.ckName=' + quotedstr(trim(FckName))); + sql.Add(' GROUP BY A.crnoS,B.cust,B.factoryName,B.CRTime,B.CRType,B.P_CodeName,B.P_SPEC,B.P_Color,B.gangNo,B.P_KZ,B.P_MF,B.QtyUnit,B.ckName '); +// ShowMessage(SQL.text); + open; + end; + SCreateCDS20(adoqueryTmp, CDS_Main); + SInitCDSData20(adoqueryTmp, CDS_Main); + finally + end; +end; + +procedure TfrmBpkclist.FormClose(Sender: TObject; var Action: TCloseAction); +begin + writeCxGrid(self.Caption, Tv1, 'ƥֿ'); + if fType = 10 then + Action := cahide + else + Action := cafree; +end; + +procedure TfrmBpkclist.FormDestroy(Sender: TObject); +begin + frmBpkclist := nil; +end; + +procedure TfrmBpkclist.P_CodeNameChange(Sender: TObject); +begin + if ADOQueryTmp.Active = False then + Exit; + SDofilter(ADOQueryTmp, SGetFilters(Panel1, 1, 2)); + SCreateCDS20(ADOQueryTmp, CDS_Main); + SInitCDSData20(ADOQueryTmp, CDS_Main); +end; + +procedure TfrmBpkclist.FormShow(Sender: TObject); +begin + if fType = 10 then + begin + TOk.Visible := true; + v1Ssel.Visible := true; + end; + readCxGrid(self.Caption, Tv1, 'ƥֿ'); + SetComboBox(); + InitGrid(); +end; + +procedure TfrmBpkclist.FormCreate(Sender: TObject); +begin + BegDate.Date := DServerDate - 7; + EndDate.Date := DServerDate; + cxGrid1.Align := alclient; + +end; + +procedure TfrmBpkclist.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmBpkclist.TBRafreshClick(Sender: TObject); +begin + + initGrid(); +end; + +procedure TfrmBpkclist.TBPrintClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then + Exit; + TcxGridToExcel(self.Caption, cxgrid1); +end; + +procedure TfrmBpkclist.TBExportClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then + Exit; + TcxGridToExcel(self.Caption, cxgrid1); +end; + +procedure TfrmBpkclist.TOkClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then + Exit; + ModalResult := 1; +end; + +end. + diff --git a/坯布仓库/U_CPCKMXLR.dfm b/坯布仓库/U_CPCKMXLR.dfm new file mode 100644 index 0000000..add2736 --- /dev/null +++ b/坯布仓库/U_CPCKMXLR.dfm @@ -0,0 +1,798 @@ +object frmCPCKMXLR: TfrmCPCKMXLR + Left = 717 + Top = 211 + Width = 1000 + Height = 602 + BorderIcons = [biSystemMenu] + Caption = #25104#21697#26126#32454#21015#34920 + 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 = 984 + Height = 30 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 15 + OnClick = TBSaveClick + end + object ToolButton1: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 57 + Visible = False + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 113 + OnClick = ToolButton2Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #26631#31614#25171#21360 + ImageIndex = 22 + Visible = False + OnClick = ToolButton4Click + end + object ToolButton5: TToolButton + Left = 276 + Top = 0 + AutoSize = True + Caption = #26631#31614#39044#35272 + ImageIndex = 22 + Visible = False + OnClick = ToolButton5Click + end + object ToolButton3: TToolButton + Left = 363 + Top = 0 + AutoSize = True + Caption = #19968#38190#26367#25442 + ImageIndex = 22 + Visible = False + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 450 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 21 + OnClick = TBCloseClick + end + end + object Panel3: TPanel + Left = 0 + Top = 30 + Width = 984 + Height = 533 + Align = alClient + Caption = 'Panel3' + TabOrder = 1 + object cxGrid2: TcxGrid + Left = 1 + Top = 143 + Width = 982 + Height = 389 + Align = alClient + PopupMenu = PopupMenu1 + TabOrder = 1 + object TvMX: TcxGridDBTableView + OnKeyDown = TvMXKeyDown + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Kind = skCount + Position = spFooter + end + item + Kind = skSum + Position = spFooter + Column = cxGridDBColumn8 + end + item + Kind = skCount + end + item + Kind = skSum + Column = cxGridDBColumn8 + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skCount + end + item + Kind = skSum + Column = cxGridDBColumn8 + end + item + Kind = skCount + Column = vMXColumn3 + end + item + Kind = skSum + Column = vMXColumn2 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + OptionsView.IndicatorWidth = 33 + OnCustomDrawIndicatorCell = TvMXCustomDrawIndicatorCell + object TvMXColumn1: TcxGridDBColumn + Tag = 9 + Caption = #36873#25321 + DataBinding.FieldName = 'SSEL' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 52 + end + object vMXColumn3: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MXMJXH' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 51 + end + object vMXColumn1: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'MXGangHao' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 104 + end + object cxGridDBColumn8: TcxGridDBColumn + Caption = #37325#37327 + DataBinding.FieldName = 'MXQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn8PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 79 + end + object vMXColumn2: TcxGridDBColumn + Caption = #38271#24230 + DataBinding.FieldName = 'MXQTY2' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn8PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 80 + end + object vMXColumn4: TcxGridDBColumn + Caption = #38271#24230#21333#20301 + DataBinding.FieldName = 'MXUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.Items.Strings = ( + 'M' + 'Y') + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 65 + end + object vMXColumn5: TcxGridDBColumn + Caption = #25918#30721 + DataBinding.FieldName = 'MXFM' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 71 + end + object TvMXColumn2: TcxGridDBColumn + Caption = #25260#22836 + DataBinding.FieldName = 'mxtt' + HeaderAlignmentHorz = taCenter + Width = 67 + end + object TvMXColumn3: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'mxkh' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object TvMXColumn4: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'mxkuanno' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object TvMXColumn5: TcxGridDBColumn + Caption = #25104#20998 + DataBinding.FieldName = 'mxspec' + HeaderAlignmentHorz = taCenter + Width = 76 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TvMX + end + end + object Panel1: TPanel + Left = 1 + Top = 1 + Width = 982 + Height = 142 + Align = alTop + TabOrder = 0 + object Label1: TLabel + Left = 896 + Top = 46 + Width = 48 + Height = 12 + Caption = #25442#31639#26041#24335 + Visible = False + end + object Label2: TLabel + Left = 212 + Top = 14 + Width = 64 + Height = 16 + Caption = #25442#31639#31995#25968 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label3: TLabel + Left = 59 + Top = 43 + Width = 32 + Height = 16 + Caption = #38271#24230 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label4: TLabel + Left = 374 + Top = 13 + Width = 64 + Height = 16 + Caption = #25968#37327#21333#20301 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label5: TLabel + Left = 59 + Top = 15 + Width = 32 + Height = 16 + Caption = #32568#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label6: TLabel + Left = 242 + Top = 42 + Width = 32 + Height = 16 + Caption = #37325#37327 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label7: TLabel + Left = 27 + Top = 75 + Width = 64 + Height = 16 + Caption = #26126#32454#22791#27880 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label8: TLabel + Left = 525 + Top = 34 + Width = 32 + Height = 16 + Caption = #20221#25968 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label9: TLabel + Left = 493 + Top = 63 + Width = 64 + Height = 16 + Caption = #26631#31614#26684#24335 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label10: TLabel + Left = 58 + Top = 112 + Width = 32 + Height = 16 + Caption = #25260#22836 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label11: TLabel + Left = 231 + Top = 112 + Width = 32 + Height = 16 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label12: TLabel + Left = 404 + Top = 110 + Width = 32 + Height = 16 + Caption = #27454#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label13: TLabel + Left = 573 + Top = 110 + Width = 32 + Height = 16 + Caption = #25104#20998 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object ComboBox1: TComboBox + Left = 884 + Top = 41 + Width = 145 + Height = 20 + ItemHeight = 12 + TabOrder = 2 + Visible = False + Items.Strings = ( + #37325#37327#25442#31639#38271#24230 + #38271#24230#25442#31639#37325#37327) + end + object XS: TEdit + Left = 281 + Top = 9 + Width = 64 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + end + object Qty: TEdit + Left = 97 + Top = 41 + Width = 108 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 3 + OnKeyPress = QtyKeyPress + end + object ComboBox2: TComboBox + Left = 443 + Top = 10 + Width = 64 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 16 + ItemIndex = 2 + ParentFont = False + TabOrder = 4 + Text = 'KG' + Items.Strings = ( + 'M' + 'Y' + 'KG') + end + object gangno: TEdit + Left = 96 + Top = 12 + Width = 108 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 1 + end + object KGQTY: TEdit + Left = 278 + Top = 41 + Width = 108 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 5 + OnKeyPress = KGQTYKeyPress + end + object Edit1: TEdit + Left = 862 + Top = 100 + Width = 108 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 6 + Visible = False + OnKeyPress = QtyKeyPress + end + object Edit2: TEdit + Left = 906 + Top = 37 + Width = 108 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 7 + Visible = False + OnKeyPress = QtyKeyPress + end + object Edit3: TEdit + Left = 755 + Top = 39 + Width = 108 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 8 + Visible = False + OnKeyPress = QtyKeyPress + end + object CheckBox1: TCheckBox + Left = 400 + Top = 43 + Width = 97 + Height = 17 + Caption = #21333#37325#37327 + TabOrder = 9 + end + object MXNOTE: TEdit + Left = 96 + Top = 70 + Width = 344 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 10 + OnKeyPress = QtyKeyPress + end + object CheckBox2: TCheckBox + Left = 541 + Top = 11 + Width = 97 + Height = 17 + Caption = #25171#21360#26631#31614 + TabOrder = 11 + Visible = False + end + object ComboBox3: TComboBox + Left = 561 + Top = 30 + Width = 64 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 16 + ItemIndex = 0 + ParentFont = False + TabOrder = 12 + Text = '1' + Visible = False + Items.Strings = ( + '1' + '2' + '3' + '4' + '5' + '6') + end + object LABNAME: TcxButtonEdit + Left = 559 + Top = 61 + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = LABNAMEPropertiesButtonClick + TabOrder = 13 + Visible = False + Width = 121 + end + object TT: TEdit + Left = 94 + Top = 107 + Width = 125 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 14 + Visible = False + end + object KH: TEdit + Left = 266 + Top = 107 + Width = 125 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 15 + Visible = False + end + object KUANHAO: TEdit + Left = 437 + Top = 105 + Width = 125 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 16 + Visible = False + end + object GUIGE: TEdit + Left = 610 + Top = 105 + Width = 125 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 17 + Visible = False + end + end + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 372 + Top = 234 + end + object ADOQueryTmp: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 411 + Top = 234 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 663 + Top = 391 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 592 + Top = 393 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 188 + Top = 229 + end + object ADOQueryMain: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 447 + Top = 235 + end + object PopupMenu1: TPopupMenu + Left = 158 + Top = 229 + object N1: TMenuItem + Caption = #20840#36873 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #20840#24323 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 401 + Top = 279 + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 475 + Top = 278 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 439 + Top = 278 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 508 + Top = 277 + end + object ADOQuery1: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 227 + Top = 294 + end + object ADOQuery2: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 227 + Top = 294 + end +end diff --git a/坯布仓库/U_CPCKMXLR.pas b/坯布仓库/U_CPCKMXLR.pas new file mode 100644 index 0000000..a5bf3b6 --- /dev/null +++ b/坯布仓库/U_CPCKMXLR.pas @@ -0,0 +1,945 @@ +unit U_CPCKMXLR; + +interface + +uses + Windows, Messages, SysUtils, StrUtils, Variants, Classes, Graphics, Controls, + Forms, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, MMSystem, + cxDataStorage, cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGridLevel, cxClasses, cxControls, cxGridCustomView, + cxGrid, StdCtrls, ComCtrls, ExtCtrls, ToolWin, cxButtonEdit, cxDropDownEdit, + DBClient, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, BtnEdit, cxContainer, + cxTextEdit, cxCurrencyEdit, cxCheckBox, Menus, RM_Common, RM_Class, RM_e_Xls, + RM_Dataset, RM_System, RM_GridReport, cxLookAndFeels, cxLookAndFeelPainters, + cxNavigator, cxMaskEdit; + +type + TfrmCPCKMXLR = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + Panel3: TPanel; + ADOQueryMain: TADOQuery; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + ADOQueryPrint: TADOQuery; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + cxGrid2: TcxGrid; + TvMX: TcxGridDBTableView; + vMXColumn1: TcxGridDBColumn; + cxGridDBColumn8: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + ToolButton3: TToolButton; + vMXColumn2: TcxGridDBColumn; + Panel1: TPanel; + ComboBox1: TComboBox; + Label1: TLabel; + Label2: TLabel; + XS: TEdit; + vMXColumn3: TcxGridDBColumn; + vMXColumn4: TcxGridDBColumn; + Label3: TLabel; + Qty: TEdit; + Label4: TLabel; + ComboBox2: TComboBox; + Label5: TLabel; + gangno: TEdit; + vMXColumn5: TcxGridDBColumn; + Label6: TLabel; + KGQTY: TEdit; + Edit1: TEdit; + Edit2: TEdit; + Edit3: TEdit; + CheckBox1: TCheckBox; + MXNOTE: TEdit; + Label7: TLabel; + CheckBox2: TCheckBox; + ComboBox3: TComboBox; + ToolButton4: TToolButton; + TvMXColumn1: TcxGridDBColumn; + ToolButton5: TToolButton; + LABNAME: TcxButtonEdit; + Label8: TLabel; + Label9: TLabel; + Label10: TLabel; + TT: TEdit; + Label11: TLabel; + KH: TEdit; + Label12: TLabel; + KUANHAO: TEdit; + Label13: TLabel; + GUIGE: TEdit; + TvMXColumn2: TcxGridDBColumn; + TvMXColumn3: TcxGridDBColumn; + TvMXColumn4: TcxGridDBColumn; + TvMXColumn5: TcxGridDBColumn; + ADOQuery1: TADOQuery; + ADOQuery2: TADOQuery; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure v1P_CodeNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure TBCloseClick(Sender: TObject); + procedure FHAddressBtnDnClick(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure TvMXCustomDrawIndicatorCell(Sender: TcxGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; var ADone: Boolean); + procedure ToolButton3Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure TvMXKeyPress(Sender: TObject; var Key: Char); + procedure TvMXKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); + procedure QtyKeyPress(Sender: TObject; var Key: Char); + procedure KGQTYKeyPress(Sender: TObject; var Key: Char); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure LABNAMEPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + private + procedure InitGrid(); + procedure PrtData(FJYID: string); + function savedate(): Boolean; + { Private declarations } + public + fkeyNO,fkeyNOS, fkeyID, FMXGangHao: string; + FType: integer; + fCKName: string; + FCRTYPE: string; + { Public declarations } + end; + +var + frmCPCKMXLR: TfrmCPCKMXLR; + +implementation + +uses + U_DataLink, U_Fun10, U_ZDYHelp, U_ZdyAttachment, U_FUN; + +{$R *.dfm} +procedure TfrmCPCKMXLR.PrtData(FJYID: string); +var + fPrintFile: string; + Txt, fImagePath, Txt2, fImagePath2: string; + Moudle: THandle; + Makebar: TMakebar; + Mixtext: TMixtext; +begin + + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add(' EXEC P_Print_JYLab '); + SQL.Add(' @mjID=''' + Trim(FJYID) + ''''); + Open; + end; + if ADOQueryPrint.IsEmpty then + begin + application.MessageBox('ǩδҵ', 'ʾϢ', MB_ICONERROR); + exit; + end; + + ExportFtErpFile('ƥǩ.rmf', ADOQueryTmp); + + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ƥǩ.rmf'; + + if FileExists(fPrintFile) then + begin + RMVariables['MXMJXH'] := CDS_MAIN.FIELDBYNAME('MXMJXH').ASSTRING; + RMVariables['MXGangHao'] := CDS_MAIN.FIELDBYNAME('MXGangHao').ASSTRING; + RMVariables['MXQty'] := CDS_MAIN.FIELDBYNAME('MXQty').ASSTRING; + RMVariables['MXQTY2'] := CDS_MAIN.FIELDBYNAME('MXQTY2').ASSTRING; + RMVariables['MXUnit'] := CDS_MAIN.FIELDBYNAME('MXUnit').ASSTRING; + RMVariables['MXFM'] := CDS_MAIN.FIELDBYNAME('MXFM').ASSTRING; + + RMVariables['mxtt'] := CDS_MAIN.FIELDBYNAME('mxtt').ASSTRING; + RMVariables['mxkh'] := CDS_MAIN.FIELDBYNAME('mxkh').ASSTRING; + RMVariables['mxkuanno'] := CDS_MAIN.FIELDBYNAME('mxkuanno').ASSTRING; + RMVariables['mxspec'] := CDS_MAIN.FIELDBYNAME('mxspec').ASSTRING; + + RM1.LoadFromFile(fPrintFile); + + RM1.DefaultCopies := strtointdef(trim(ComboBox3.Text), 1); + + RM1.PrintReport; + end + else + begin + Application.MessageBox(PChar('û' + fPrintFile), 'ʾ', 0); + end; +end; + +function TfrmCPCKMXLR.savedate(): Boolean; +var + MaxNo: string; +begin + result := false; + try + ADOQueryCmd.Connection.BeginTrans; + CDS_Main.DisableControls; + CDS_Main.First; + with CDS_Main do + begin + while not eof do + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * '); + sql.Add(',MaxRollNo=(select max(isnull(MXMJXH,0)) from CK_SXPB_CRMX X where X.CRNO=''' + trim(fkeyNo) + ''' )'); + sql.Add(' from CK_SXPB_CRMX A'); + sql.Add('where MXID=' + quotedstr(Trim(CDS_Main.FieldByName('MXID').AsString))); +// ShowMessage(sql.Text); + open; + end; + if ADOQueryCmd.IsEmpty then + begin + if GetLSNo(ADOQueryTmp, MaxNo, 'MCM', 'CK_SXPB_CRMX', 4, 1) = False then + begin + Application.MessageBox('ȡʧ!', 'ʾ', 0); + Exit; + end; + +// with ADOQueryCmd do +// begin +// close; +// sql.Clear; +// sql.Add('select * '); +// sql.Add(',MaxRollNo=(select max(isnull(MXMJXH,0)) from CK_SXPB_CRMX X where X.CRNO=''' + trim(fkeyNo) + ''' )'); +// sql.Add(' from CK_SXPB_CRMX A'); +// sql.Add('where CRNO=' + quotedstr(Trim(fkeyNo))); +//// ShowMessage(sql.Text); +// open; +// end; +// +// with CDS_Main do +// begin +// Edit; +// if FieldByName('mxmjxh').AsString = '' then +// begin +// FieldByName('mxmjxh').Value := ADOQueryCmd.fieldbyname('MaxRollNo').AsInteger + 1; +// end; +// +// Post; +// end; + + ADOQueryCmd.Append; + end + else + begin + MaxNo := Trim(CDS_Main.FieldByName('MXID').AsString); + ADOQueryCmd.Edit; + end; + + + + //ϸ + RTSetSaveDataCDS(ADOQueryCmd, TvMX, CDS_Main, 'CK_SXPB_CRMX', 0); + ADOQueryCmd.fieldbyname('kcqty').Value := CDS_Main.fieldbyname('MXqty').AsString; + ADOQueryCmd.fieldbyname('kcqty2').Value := CDS_Main.fieldbyname('MXqty2').AsString; + + ADOQueryCmd.FieldByName('CRZT').Value := trim(FCRTYPE); + + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('Update CK_SXPB_CRMX Set CKNO=(select kuwei from BP_InOut A where A.crno=CK_SXPB_CRMX.CRNO and A.CRID=CK_SXPB_CRMX.CRID)'); + sql.Add(' where CRNO=''' + Trim(fkeyNO) + ''''); + sql.Add(' and crid=''' + Trim(fkeyID) + ''''); +// ShowMessage(sql.Text); + ExecSQL; + end; + + //ID + ADOQueryCmd.FieldByName('CRNO').Value := trim(fkeyNo); + ADOQueryCmd.FieldByName('CRNOS').Value := trim(fkeyNoS); + ADOQueryCmd.FieldByName('CRID').Value := trim(fkeyID); + + ADOQueryCmd.FieldByName('MXNOTE').Value := trim(MXNOTE.Text); + + ADOQueryCmd.FieldByName('MXID').Value := trim(MaxNo); + + ADOQueryCmd.Post; + + CDS_Main.Edit; + CDS_Main.FieldByName('MXID').Value := trim(MaxNo); + CDS_Main.post; + +// ¿ + if Trim(edit3.Text) = 'Kg' then + begin + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update BP_InOut Set Qty=(select sum(isnull(mxqty,0)) from CK_SXPB_CRMX A where A.crno=BP_InOut.CRNO and A.CRID=BP_InOut.CRID'); + sql.Add('),RollNum=(select count(mxid) from CK_SXPB_CRMX A where A.crno=BP_InOut.CRNO and A.CRID=BP_InOut.CRID'); + sql.Add(' ) where CRNO=''' + Trim(fkeyNO) + ''''); + sql.Add(' and crid=''' + Trim(fkeyID) + ''''); +// ShowMessage(sql.Text); + ExecSQL; + end; + +// with ADOQueryCmd do +// begin +// Close; +// sql.Clear; +// sql.Add('Update BP_InOut Set MXKCQty=(select sum(isnull(Qty,0)*CRQtyFlag) from CK_SXPB_CR A where A.FZSPID=CK_SXPB_CR.SPID)'); +// sql.Add(',MXKCPiQty=(select sum(isnull(PiQty,0)*CRQtyFlag) from CK_SXPB_CR A where A.FZSPID=CK_SXPB_CR.SPID)'); +// sql.Add(' where SPID=''' + Trim(Edit2.Text) + ''''); +// ExecSQL; +// end; +// with ADOQueryTmp do +// begin +// Close; +// sql.Clear; +// sql.Add('select * from CK_SXPB_CR where SPID=''' + Trim(Edit2.Text) + ''''); +// Open; +// end; +// if ADOQueryTmp.FieldByName('MXKCQty').Value < 0 then +// begin +// CDS_Main.EnableControls; +// ADOQueryCmd.Connection.RollbackTrans; +// Application.MessageBox('ڿܱ!', 'ʾ', 0); +// Exit; +// end; + + end + else + begin + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update BP_InOut Set Qty=(select sum(isnull(mxqty2,0)) from CK_SXPB_CRMX A where A.crno=BP_InOut.CRNO and A.CRID=BP_InOut.CRID'); + sql.Add('),RollNum=(select count(mxid) from CK_SXPB_CRMX A where A.crno=BP_InOut.CRNO and A.CRID=BP_InOut.CRID'); + sql.Add(' ) where CRNO=''' + Trim(fkeyNO) + ''''); + sql.Add(' and crid=''' + Trim(fkeyID) + ''''); +// ShowMessage(sql.Text); + ExecSQL; + end; + +// with ADOQueryCmd do +// begin +// Close; +// sql.Clear; +// sql.Add('Update CK_SXPB_CR Set MXKCQty=(select sum(isnull(Qty,0)*CRQtyFlag) from CK_SXPB_CR A where A.FZSPID=CK_SXPB_CR.SPID)'); +// sql.Add(',MXKCPiQty=(select sum(isnull(PiQty,0)*CRQtyFlag) from CK_SXPB_CR A where A.FZSPID=CK_SXPB_CR.SPID)'); +// sql.Add(' where SPID=''' + Trim(Edit2.Text) + ''''); +// ExecSQL; +// end; +// with ADOQueryTmp do +// begin +// Close; +// sql.Clear; +// sql.Add('select * from CK_SXPB_CR where SPID=''' + Trim(Edit2.Text) + ''''); +// Open; +// end; +// if ADOQueryTmp.FieldByName('MXKCQty').Value < 0 then +// begin +// CDS_Main.EnableControls; +// ADOQueryCmd.Connection.RollbackTrans; +// Application.MessageBox('ڿܱ!', 'ʾ', 0); +// Exit; +// end; + end; + + with ADOQuery2 do + begin + Close; + sql.Clear; + SQL.Add('update CK_SXPB_CRMX set kcqty2=mxqty2-(select isnull(sum(mxqty2),0) from CK_SXPB_CRMX mx where mx.fzmxid=CK_SXPB_CRMX.mxid and crzt='''' ) '); + SQL.Add(' where mxid=''' + Trim(MaxNo) + ''' '); +// ShowMessage(sql.Text); + ExecSQL; + end; + + CDS_Main.next; + end; + end; + + CDS_Main.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + result := true; + except + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; + +procedure TfrmCPCKMXLR.InitGrid(); +begin + try + with adoqueryMain do + begin + close; + sql.Clear; + sql.Add('select * from CK_SXPB_CRMX A where CRNO=' + quotedstr(trim(fkeyNO))); + sql.Add(' and CRID=' + quotedstr(trim(fkeyID))); + sql.Add(' and CRZT= '''''); +// SQL.Add('AND CRZT=' + QuotedStr(FCRTYPE)); +// SQL.Add('AND NOT EXISTS(SELECT MXID FROM CK_SXPB_CRMX C WHERE C.FZMXID=A.MXID)'); + sql.Add(' order by MXID'); +// ShowMessage(SQL.Text); + open; + end; + SCreateCDS20(adoqueryMain, CDS_Main); + SInitCDSData20(adoqueryMain, CDS_Main); + MXNOTE.Text := adoqueryMain.FieldByName('MXNOTE').AsString; + finally + end; +// with ADOQueryTmp do +// begin +// close; +// sql.Clear; +// sql.Add('select * from JYOrder_Main A inner join JYOrder_sub b on a.mainid=b.mainid '); +// SQL.Add('where subid=(select ordsubidrk from CK_SXPB_CR c where c.spid= ' + QuotedStr(Trim(fkeyNO))); +// sql.Add(')'); +// +//// ShowMessage(SQL.Text); +// open; +// end; +// if ADOQueryTmp.IsEmpty = false then +// begin +// KUANHAO.TEXT := ADOQueryTmp.FieldByName('PRTKUANNO').AsString; +// KH.TEXT := ADOQueryTmp.FieldByName('BQKH').AsString; +// GUIGE.TEXT := ADOQueryTmp.FieldByName('MPRTCF').AsString; +// tt.TEXT := ADOQueryTmp.FieldByName('BJTT').AsString; +// xs.TEXT := ADOQueryTmp.FieldByName('prtbili').AsString; +// end; +// with ADOQueryTmp do +// begin +// close; +// sql.Clear; +// sql.Add('select * from CK_SXPB_CRMX A where CRNO=' + quotedstr(trim(fkeyNO))); +// +// sql.Add(' order by MXID'); +//// ShowMessage(SQL.Text); +// open; +// end; +// +// if ADOQueryTmp.IsEmpty = false then +// begin +// KUANHAO.TEXT := ADOQueryTmp.FieldByName('mxkuanno').AsString; +// KH.TEXT := ADOQueryTmp.FieldByName('mxkh').AsString; +// GUIGE.TEXT := ADOQueryTmp.FieldByName('mxspec').AsString; +// tt.TEXT := ADOQueryTmp.FieldByName('mxtt').AsString; +// end +// else +// begin +// with ADOQueryTmp do +// begin +// close; +// sql.Clear; +// SQL.Add('select top 1 a.* from CK_SXPB_CRMX a inner join CK_SXPB_CR b on a.crno=b.spid '); +// SQL.Add('where b.QCorderNo=(select QCorderNo from CK_SXPB_CR b where spid=' + QuotedStr(Trim(fkeyNO))); +// SQL.Add(')'); +// sql.Add('order by mxid desc'); +// Open; +// end; +// KUANHAO.TEXT := ADOQueryTmp.FieldByName('mxkuanno').AsString; +// KH.TEXT := ADOQueryTmp.FieldByName('mxkh').AsString; +// GUIGE.TEXT := ADOQueryTmp.FieldByName('mxspec').AsString; +// tt.TEXT := ADOQueryTmp.FieldByName('mxtt').AsString; +// if ADOQueryTmp.IsEmpty = True then +// begin +// with ADOQueryTmp do +// begin +// close; +// sql.Clear; +// SQL.Add('SELECT * FROM JYORDER_MAIN A INNER JOIN JYORDER_SUB B ON A.MAINID=B.MAINID WHERE '); +// SQL.Add('B.MAINID=(SELECT ORDMAINIDRK FROM CK_SXPB_CR C WHERE C.SPID=' + QuotedStr(Trim(fkeyNO))); +// SQL.Add(')'); +//// ShowMessage(sql.Text); +// Open; +// end; +// KUANHAO.TEXT := ADOQueryTmp.FieldByName('prtkuanno').AsString; +// KH.TEXT := ADOQueryTmp.FieldByName('CustomerNoName').AsString; +// GUIGE.TEXT := ADOQueryTmp.FieldByName('MPRTSpec').AsString; +// end; +// end; + +end; + +procedure TfrmCPCKMXLR.FormDestroy(Sender: TObject); +begin + frmCPCKMXLR := nil; +end; + +procedure TfrmCPCKMXLR.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := cahide; +end; + +procedure TfrmCPCKMXLR.FormShow(Sender: TObject); +var + fbhType, fInoutNo: string; +begin + readCxGrid(self.Caption, TvMX, 'ϲֿ1'); + InitGrid(); +end; + +procedure TfrmCPCKMXLR.TBSaveClick(Sender: TObject); +var + FQTY, FKGQTY, FPIQTY: Double; + FQTY1, FPIQTY1: Double; +begin + if cds_main.IsEmpty then + exit; + ToolBar1.SetFocus; +// FKGQTY := TvMX.DataController.Summary.FooterSummaryValues[1]; +// FQTY := TvMX.DataController.Summary.FooterSummaryValues[3]; +// FPIQTY := TvMX.DataController.Summary.FooterSummaryValues[2]; +// +// FKGQTY1 := StrToFloatDef(Edit1.Text, 0); +// FQTY1 := StrToFloatDef(Edit3.Text, 0); +// FPIQTY1 := StrToFloatDef(Edit2.Text, 0); +// +// if (FKGQTY > FKGQTY1) or (FQTY > FQTY1) or (FPIQTY > FPIQTY1) then +// begin +// application.MessageBox('ڿ', 'ʾϢ'); +// Exit; +// end; + if savedate() then + begin + + application.MessageBox('ݱɹ', 'ʾϢ'); + ModalResult := 1; + Exit; + end + else + begin +// application.MessageBox('ݱʧܣ', 'ʾϢ', MB_ICONERROR); + end; +end; + +procedure TfrmCPCKMXLR.v1P_CodeNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'Cloth'; + flagname := ''; + if ShowModal = 1 then + begin + Self.CDS_Main.Edit; + Self.CDS_Main.FieldByName('P_CodeName').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.CDS_Main.FieldByName('P_Code').Value := Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmCPCKMXLR.TBCloseClick(Sender: TObject); +begin + writeCxGrid(self.Caption, TvMX, 'ϲֿ1'); +// ModalResult := 1; + close; +end; + +procedure TfrmCPCKMXLR.FHAddressBtnDnClick(Sender: TObject); +begin + TBtnEditC(Sender).Text := ''; + TBtnEditC(Sender).TxtCode := ''; +end; + +procedure TfrmCPCKMXLR.N1Click(Sender: TObject); +begin + SelOKNo(CDS_Main, True); +end; + +procedure TfrmCPCKMXLR.N2Click(Sender: TObject); +begin + SelOKNo(CDS_Main, False); +end; + +procedure TfrmCPCKMXLR.ToolButton1Click(Sender: TObject); +var + i: Integer; +begin + for i := 1 to 10 do + begin + with CDS_Main do + begin + Append; + FieldByName('MXGangHao').Value := FMXGangHao; + FieldByName('MXQty').Value := 0; + FieldByName('MXQty2').Value := 0; + Post; + end; + end; +end; + +procedure TfrmCPCKMXLR.ToolButton2Click(Sender: TObject); +begin + if cds_main.IsEmpty then + exit; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_SXPB_CRMX where MXID=' + quotedstr(Trim(CDS_Main.FieldByName('MXID').AsString))); + ExecSQL; + end; + CDS_Main.Delete; +end; + +procedure TfrmCPCKMXLR.TvMXCustomDrawIndicatorCell(Sender: TcxGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; var ADone: Boolean); +var + FValue: string; + FBounds: TRect; +begin + FBounds := AViewInfo.Bounds; + if (AViewInfo is TcxGridIndicatorRowItemViewInfo) then + begin + ACanvas.FillRect(FBounds); + ACanvas.DrawComplexFrame(FBounds, clBtnHighlight, clBtnShadow, [bBottom, bLeft, bRight], 1); + FValue := IntToStr(TcxGridIndicatorRowItemViewInfo(AViewInfo).GridRecord.Index + 1); + InflateRect(FBounds, -1, -1); //Platform specific. May not work on Linux. + ACanvas.Font.Color := clBlack; + ACanvas.Brush.Style := bsClear; + ACanvas.DrawText(FValue, FBounds, cxAlignCenter or cxAlignTop); + ADone := True; + end; +end; + +procedure TfrmCPCKMXLR.ToolButton3Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then + Exit; + OneKeyPost(TvMX, CDS_Main); +end; + +procedure TfrmCPCKMXLR.cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; + FZL, FCD, FXS: DOUBLE; +begin + + mvalue := TcxTextEdit(Sender).EditingText; + FFieldName := Trim(TvMX.Controller.FocusedColumn.DataBinding.FilterFieldName); + with cds_main do + begin + Edit; + FieldByName(FFieldName).Value := (strtofloatdef(trim(mvalue), 0)); + + Post; + end; + with cds_main do + begin + Edit; + FZL := (strtofloatdef(trim(FieldByName('MXQTY').ASSTRING), 0)); // + FCD := (strtofloatdef(trim(FieldByName('MXQTY2').ASSTRING), 0)); // + + FXS := (strtofloatdef(trim(xs.TEXT), 0)); //ϵ + if FFieldName = 'mxqty' then + begin + FieldByName('mxqty2').Value := FZL * FXS; + end; + if FFieldName = 'mxqty2' then + begin + FieldByName('mxqty').Value := FCD * FXS; + end; + Post; + end; + + TvMX.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmCPCKMXLR.TvMXKeyPress(Sender: TObject; var Key: Char); +begin + TvMX.OptionsData.Editing := False; + if Key = #13 then + Key := #40; + TvMX.OptionsData.Editing := True; +end; + +procedure TfrmCPCKMXLR.TvMXKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); +begin + TvMX.OptionsData.Editing := False; + if Key = 13 then + Key := 40; + TvMX.OptionsData.Editing := True; +end; + +procedure TfrmCPCKMXLR.QtyKeyPress(Sender: TObject; var Key: Char); +begin + if Key = #13 then + begin + CDS_Main.Last; + CopyAddRowCDS(CDS_Main); + with CDS_Main do + begin + Edit; + FieldByName('MXGangHao').Value := gangno.Text; + + FieldByName('mxtt').Value := TT.Text; + FieldByName('mxkh').Value := KH.Text; + FieldByName('mxkuanno').Value := KUANHAO.Text; + FieldByName('mxspec').Value := guige.Text; + + FieldByName('MXID').Value := ''; + FieldByName('CRNO').Value := ''; +// FieldByName('MXMJXH').Value := null; + FieldByName('MXMJXH').Value := StrToFloatDef(FieldByName('MXMJXH').asstring, 0) + 1; + if CDS_Main.FieldByName('MXUnit').AsString = '' then + FieldByName('MXUnit').Value := 'Y'; + if XS.Text <> '' then + begin + if ComboBox2.Text = 'KG' then + begin + FieldByName('MXQty').Value := strtofloatdef(KGQty.Text, 0); + FieldByName('MXQty2').Value := Format('%.1f', [StrToFloatDef(KGQty.Text, 0) * StrToFloatDef(xs.Text, 0)]); + end + else + begin + FieldByName('MXQty2').Value := strtofloatdef(Qty.Text, 0); + FieldByName('MXQty').Value := Format('%.1f', [StrToFloatDef(Qty.Text, 0) * StrToFloatDef(xs.Text, 0)]); +// FieldByName('MXUnit').Value := combobox2.Text; + end; + end + else + begin + FieldByName('MXQty').Value := strtofloatdef(KGQty.Text, 0); + FieldByName('MXQty2').Value := strtofloatdef(Qty.Text, 0); + + end; + + Post; + end; + if CheckBox2.Checked = True then + begin + PrtData(Edit2.Text); + end; + Qty.Text := ''; + KGQTY.Text := ''; + KGQty.SetFocus; + end; + +end; + +procedure TfrmCPCKMXLR.KGQTYKeyPress(Sender: TObject; var Key: Char); +begin + if Key = #13 then + begin + + if CheckBox1.Checked = True then + begin + CDS_Main.Last; + CopyAddRowCDS(CDS_Main); + with CDS_Main do + begin + Edit; + FieldByName('MXGangHao').Value := gangno.Text; + FieldByName('mxtt').Value := TT.Text; + FieldByName('mxkh').Value := KH.Text; + FieldByName('mxkuanno').Value := KUANHAO.Text; + FieldByName('mxspec').Value := guige.Text; + FieldByName('MXID').Value := ''; + FieldByName('CRNO').Value := ''; +// FieldByName('MXMJXH').Value := null; + FieldByName('MXMJXH').Value := StrToFloatDef(FieldByName('MXMJXH').asstring, 0) + 1; + if CDS_Main.FieldByName('MXUnit').AsString = '' then + FieldByName('MXUnit').Value := 'Y'; + if XS.Text <> '' then + begin + if ComboBox2.Text = 'KG' then + begin + FieldByName('MXQty').Value := strtofloatdef(KGQty.Text, 0); + FieldByName('MXQty2').Value := Format('%.1f', [StrToFloatDef(KGQty.Text, 0) * StrToFloatDef(xs.Text, 0)]); + end + else + begin + FieldByName('MXQty2').Value := strtofloatdef(Qty.Text, 0); + FieldByName('MXQty').Value := Format('%.1f', [StrToFloatDef(Qty.Text, 0) * StrToFloatDef(xs.Text, 0)]); +// FieldByName('MXUnit').Value := combobox2.Text; + end; + end + else + begin + FieldByName('MXQty').Value := strtofloatdef(KGQty.Text, 0); + FieldByName('MXQty2').Value := strtofloatdef(Qty.Text, 0); + + end; + + Post; + end; + if CheckBox2.Checked = True then + begin + PrtData(Edit2.Text); + end; + Qty.Text := ''; + KGQTY.Text := ''; + KGQty.SetFocus; + end + else + begin + QTY.SetFocus; + end; + + end; +// if Key = #13 then +// begin +// CopyAddRowCDS(CDS_Main); +// with CDS_Main do +// begin +// Edit; +// FieldByName('MXGangHao').Value := gangno.Text; +// FieldByName('MXID').Value := ''; +// FieldByName('CRNO').Value := ''; +// FieldByName('MXMJXH').Value := null; +// if CDS_Main.FieldByName('MXUnit').AsString = '' then +// FieldByName('MXUnit').Value := 'M'; +// if XS.Text <> '' then +// begin +// if ComboBox2.Text = 'KG' then +// begin +// FieldByName('MXQty').Value := strtofloatdef(KGQty.Text, 0); +// FieldByName('MXQty2').Value := Format('%.1f', [StrToFloatDef(KGQty.Text, 0) * StrToFloatDef(xs.Text, 0)]); +// end +// else +// begin +// FieldByName('MXQty2').Value := strtofloatdef(Qty.Text, 0); +// FieldByName('MXQty').Value := Format('%.1f', [StrToFloatDef(Qty.Text, 0) * StrToFloatDef(xs.Text, 0)]); +// FieldByName('MXUnit').Value := combobox2.Text; +// end; +// end +// else +// begin +// FieldByName('MXQty').Value := strtofloatdef(KGQty.Text, 0); +// FieldByName('MXQty2').Value := strtofloatdef(Qty.Text, 0); +// if combobox2.Text <> 'KG' then +// begin +// FieldByName('MXUnit').Value := combobox2.Text; +// end +// else +// begin +// FieldByName('MXUnit').Value := 'M'; +// end; +// +// end; +// +// Post; +// end; +// +// Qty.Text := ''; +// KGQTY.Text := ''; +// Qty.SetFocus; +// end; +end; + +procedure TfrmCPCKMXLR.ToolButton4Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then + Exit; + if CDS_Main.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + CDS_Main.DisableControls; + with CDS_Main do + begin + First; + while not Eof do + begin + if CDS_Main.FieldByName('SSel').AsBoolean = True then + begin + PrtData(CDS_Main.fieldbyname('MXID').AsString); + end; + Next; + end; + end; + CDS_Main.EnableControls; +end; + +procedure TfrmCPCKMXLR.ToolButton5Click(Sender: TObject); +var + fPrintFile: string; + Txt, fImagePath, Txt2, fImagePath2: string; + Moudle: THandle; + Makebar: TMakebar; + Mixtext: TMixtext; +begin + + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add(' EXEC P_Print_JYLab '); + SQL.Add(' @mjID=''' + Trim(CDS_Main.fieldbyname('MXID').AsString) + ''''); + Open; + end; + if ADOQueryPrint.IsEmpty then + begin + application.MessageBox('ǩδҵ', 'ʾϢ', MB_ICONERROR); + exit; + end; + + ExportFtErpFile('ƥǩ.rmf', ADOQueryTmp); + + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ƥǩ.rmf'; + + if FileExists(fPrintFile) then + begin + RMVariables['MXMJXH'] := CDS_MAIN.FIELDBYNAME('MXMJXH').ASSTRING; + RMVariables['MXGangHao'] := CDS_MAIN.FIELDBYNAME('MXGangHao').ASSTRING; + RMVariables['MXQty'] := CDS_MAIN.FIELDBYNAME('MXQty').ASSTRING; + RMVariables['MXQTY2'] := CDS_MAIN.FIELDBYNAME('MXQTY2').ASSTRING; + RMVariables['MXUnit'] := CDS_MAIN.FIELDBYNAME('MXUnit').ASSTRING; + RMVariables['MXFM'] := CDS_MAIN.FIELDBYNAME('MXFM').ASSTRING; + RMVariables['mxtt'] := CDS_MAIN.FIELDBYNAME('mxtt').ASSTRING; + RMVariables['mxkh'] := CDS_MAIN.FIELDBYNAME('mxkh').ASSTRING; + RMVariables['mxkuanno'] := CDS_MAIN.FIELDBYNAME('mxkuanno').ASSTRING; + RMVariables['mxspec'] := CDS_MAIN.FIELDBYNAME('mxspec').ASSTRING; + RM1.LoadFromFile(fPrintFile); + + RM1.DefaultCopies := strtointdef(trim(ComboBox3.Text), 1); + + RM1.showReport; + end + else + begin + Application.MessageBox(PChar('û' + fPrintFile), 'ʾ', 0); + end; +end; + +procedure TfrmCPCKMXLR.LABNAMEPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin +// try +// frmZDYHelp := TfrmZDYHelp.Create(Application); +// with frmZDYHelp do +// begin +// flag := 'LABNAME'; +// flagname := 'ǩʽ'; +// if ShowModal = 1 then +// begin +// Self.LABNAME.Text := Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString); +// end; +// end; +// finally +// frmZDYHelp.Free; +// end; +end; + +end. + diff --git a/坯布仓库/U_CPKWListSel.dfm b/坯布仓库/U_CPKWListSel.dfm new file mode 100644 index 0000000..ee00544 --- /dev/null +++ b/坯布仓库/U_CPKWListSel.dfm @@ -0,0 +1,317 @@ +object frmCPKWListSel: TfrmCPKWListSel + Left = 154 + Top = 77 + Width = 1038 + Height = 618 + Caption = #24211#20301#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1022 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = BPCK_DataLink.ThreeImgList + Flat = True + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1022 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 203 + Top = 13 + Width = 24 + Height = 12 + Caption = #21697#21517 + end + object Label1: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #20179#20301#32534#21495 + end + object Label2: TLabel + Left = 559 + Top = 13 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object Label4: TLabel + Left = 378 + Top = 13 + Width = 24 + Height = 12 + Caption = #39068#33394 + end + object defstr1: TEdit + Tag = 2 + Left = 235 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = defstr1Change + end + object ZdyCode: TEdit + Tag = 2 + Left = 83 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = defstr1Change + end + object DEFstr3: TComboBox + Tag = 1 + Left = 588 + Top = 8 + Width = 81 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 2 + OnChange = defstr1Change + Items.Strings = ( + '' + #22266#23450#26550 + #22791#29992#26550 + #20020#26102#22791#29992#26550) + end + object defstr2: TEdit + Tag = 2 + Left = 408 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 3 + OnChange = defstr1Change + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1022 + Height = 335 + TabOrder = 2 + object Tv2: TcxGridDBTableView + OnDblClick = Tv2DblClick + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = BPCK_DataLink.SHuangSe + Styles.IncSearch = BPCK_DataLink.SHuangSe + Styles.Selection = BPCK_DataLink.SHuangSe + Styles.Header = BPCK_DataLink.handBlack + object v2Column6: TcxGridDBColumn + Caption = #20179#20301#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 124 + end + object v2Column8: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'DEFstr1' + HeaderAlignmentHorz = taCenter + Width = 97 + end + object v2Column10: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'DEFStr2' + HeaderAlignmentHorz = taCenter + Width = 79 + end + object v2Column11: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFStr3' + HeaderAlignmentHorz = taCenter + Width = 85 + end + object v2Column3: TcxGridDBColumn + Caption = #35774#23450#21305#25968 + DataBinding.FieldName = 'mrate' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 114 + end + object v2Column2: TcxGridDBColumn + Caption = #24211#23384#21305#25968 + DataBinding.FieldName = 'CPNUm' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 76 + end + object v2Column12: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column13: TcxGridDBColumn + Caption = #25805#20316#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Width = 153 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 700 + Top = 228 + end +end diff --git a/坯布仓库/U_CPKWListSel.pas b/坯布仓库/U_CPKWListSel.pas new file mode 100644 index 0000000..8c801bf --- /dev/null +++ b/坯布仓库/U_CPKWListSel.pas @@ -0,0 +1,161 @@ +unit U_CPKWListSel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, + cxNavigator; + +type + TfrmCPKWListSel = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + defstr1: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + v2Column8: TcxGridDBColumn; + Label2: TLabel; + DEFstr3: TComboBox; + v2Column10: TcxGridDBColumn; + v2Column11: TcxGridDBColumn; + v2Column12: TcxGridDBColumn; + v2Column13: TcxGridDBColumn; + defstr2: TEdit; + Label4: TLabel; + v2Column2: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure defstr1Change(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure Tv2DblClick(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + + public + + end; + +var + frmCPKWListSel: TfrmCPKWListSel; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmCPKWListSel.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select A.* '); +// sql.Add(' ,cpNum=(select count(MJID) from CK_BanCP_KC X where X.KCKW=A.zdyCode and X.kcQty>0)'); + sql.Add(' from KH_Zdy_Attachment A '); + sql.Add(' where Type=''CPKW'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; + ToolButton2.Click; +end; + + +procedure TfrmCPKWListSel.FormDestroy(Sender: TObject); +begin + frmCPKWListSel:=nil; +end; + +procedure TfrmCPKWListSel.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmCPKWListSel.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption,Tv2,'ͻԶ'); + Close; +end; +procedure TfrmCPKWListSel.FormShow(Sender: TObject); +begin + cxGrid2.Align:=alclient; + ReadCxGrid(self.Caption,Tv2,'ͻԶ'); + InitGrid(); +end; + +procedure TfrmCPKWListSel.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmCPKWListSel.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmCPKWListSel.defstr1Change(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmCPKWListSel.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid2); +// SelExportData(Tv2,ADOQueryMain,'Ӧб'); +end; + +procedure TfrmCPKWListSel.Tv2DblClick(Sender: TObject); +begin + ModalResult := 1; +end; + +end. + + diff --git a/坯布仓库/U_DataLink.dfm b/坯布仓库/U_DataLink.dfm new file mode 100644 index 0000000..a73e475 --- /dev/null +++ b/坯布仓库/U_DataLink.dfm @@ -0,0 +1,18108 @@ +object BPCK_DataLink: TBPCK_DataLink + OldCreateOrder = False + OnDestroy = DataModuleDestroy + Left = 244 + Top = 208 + Height = 349 + Width = 482 + object AdoDataLink: TADOQuery + Connection = ADOLink + Parameters = <> + Left = 136 + Top = 8 + end + object ADOLink: TADOConnection + LoginPrompt = False + Left = 48 + Top = 8 + end + object ThreeImgList: TImageList + Height = 24 + Width = 24 + Left = 48 + Top = 72 + 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 + object ThreeLookAndFeelCol: TcxLookAndFeelController + Kind = lfStandard + NativeStyle = False + Left = 253 + Top = 12 + end + object ThreeColorBase: TcxStyleRepository + Left = 139 + Top = 80 + PixelsPerInch = 96 + object SHuangSe: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = 4707838 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + TextColor = clBtnText + end + object SkyBlue: TcxStyle + AssignedValues = [svColor, svFont] + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object Default: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object QHuangSe: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object FontBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object TextSHuangSe: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + object FonePurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindow + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clPurple + end + object FoneClMaroon: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clMaroon + end + object FoneRed: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clRed + end + object RowColor: TcxStyle + AssignedValues = [svColor] + Color = 16311512 + end + object handBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxBlue: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16711731 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + end + object cxStyleRepository1: TcxStyleRepository + Left = 265 + Top = 174 + PixelsPerInch = 96 + object cxStyle1: TcxStyle + AssignedValues = [svColor] + Color = clInactiveCaption + end + object cxStyle2: TcxStyle + AssignedValues = [svColor, svTextColor] + Color = 4707838 + TextColor = clBtnText + end + object cxStyle_gridRow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16311512 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_gridFoot: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridHead: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridGroupBox: TcxStyle + AssignedValues = [svColor, svFont] + Color = clMoneyGreen + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_yellow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_fontBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_fontclFuchsia: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clFuchsia + end + object cxStyle_fontclPurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clPurple + end + object cxStyle_fontclGreen: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clGreen + end + object cxStyle_fontclBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object cxStyle_fontclTeal: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clTeal + end + object cxStyle_fontclOlive: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + end + object Timer1: TTimer + Enabled = False + Interval = 10000 + Left = 272 + Top = 104 + end +end diff --git a/坯布仓库/U_DataLink.pas b/坯布仓库/U_DataLink.pas new file mode 100644 index 0000000..07a8ad5 --- /dev/null +++ b/坯布仓库/U_DataLink.pas @@ -0,0 +1,87 @@ +unit U_DataLink; + +interface + +uses + SysUtils, Classes, DB, ADODB, ImgList, Controls, cxStyles, cxLookAndFeels, + Windows, Messages, forms, OleCtnrs, DateUtils, ExtCtrls, AppEvnts, cxClasses; + +var + DConString: string; {ȫַ} + server, dtbase, user, pswd: string; {ݿӲ} + DCurHandle: hwnd; //ǰ + DName: string; //#û#// + DCode: string; //#û#// + Ddatabase: string; //#ݿ#// + DTitCaption: string; //##// + DParameters1, DParameters2, DParameters3, DParameters4, DParameters5: string; // ⲿ + DParameters6, DParameters7, DParameters8, DParameters9, DParameters10: string; //ⲿ + OldDllApp: Tapplication; //ԭо + NewDllApp: Tapplication; //ǰ + MainApplication: Tapplication; + DFormCode: integer; //ǰں + IsDelphiLanguage: integer; + DServerDate: TdateTime; //ʱ + DCompany: string; //˾ + +type + TBPCK_DataLink = class(TDataModule) + AdoDataLink: TADOQuery; + ADOLink: TADOConnection; + ThreeImgList: TImageList; + ThreeLookAndFeelCol: TcxLookAndFeelController; + ThreeColorBase: TcxStyleRepository; + SHuangSe: TcxStyle; + SkyBlue: TcxStyle; + Default: TcxStyle; + QHuangSe: TcxStyle; + Red: TcxStyle; + FontBlue: TcxStyle; + TextSHuangSe: TcxStyle; + FonePurple: TcxStyle; + FoneClMaroon: TcxStyle; + FoneRed: TcxStyle; + RowColor: TcxStyle; + handBlack: TcxStyle; + cxBlue: TcxStyle; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxStyle_gridRow: TcxStyle; + cxStyle_gridFoot: TcxStyle; + cxStyle_gridHead: TcxStyle; + cxStyle_gridGroupBox: TcxStyle; + cxStyle_yellow: TcxStyle; + cxStyle_Red: TcxStyle; + cxStyle_fontBlack: TcxStyle; + cxStyle_fontclFuchsia: TcxStyle; + cxStyle_fontclPurple: TcxStyle; + cxStyle_fontclGreen: TcxStyle; + cxStyle_fontclBlue: TcxStyle; + cxStyle_fontclTeal: TcxStyle; + cxStyle_fontclOlive: TcxStyle; + Timer1: TTimer; + procedure DataModuleDestroy(Sender: TObject); + private + { Private declarations } + public + { Public declarations } + end; + + TMakebar = procedure(ucData: pchar; nDataLen: integer; nErrLevel: integer; nMask: integer; nBarEdition: integer; szBmpFileName: pchar; nScale: integer); stdcall; + + TMixtext = procedure(szSrcBmpFileName: PChar; szDstBmpFileName: PChar; sztext: PChar; fontsize, txtheight, hmargin, vmargin, txtcntoneline: integer); stdcall; + +var + BPCK_DataLink: TBPCK_DataLink; + +implementation +{$R *.dfm} + +procedure TBPCK_DataLink.DataModuleDestroy(Sender: TObject); +begin + BPCK_DataLink := nil; +end; + +end. + diff --git a/坯布仓库/U_GetDllForm.pas b/坯布仓库/U_GetDllForm.pas new file mode 100644 index 0000000..9929834 --- /dev/null +++ b/坯布仓库/U_GetDllForm.pas @@ -0,0 +1,293 @@ +unit U_GetDllForm; + +interface + +uses + Windows, Messages, forms, OleCtnrs, DateUtils, SysUtils, ADODB, dxCore, + ActiveX; + +function GetDllForm(App: Tapplication; FormH: hwnd; FormID: integer; Language: integer; WinStyle: integer; GCode: Pchar; GName: Pchar; DataBase: Pchar; Title: PChar; Parameters1: PChar; Parameters2: PChar; Parameters3: PChar; Parameters4: PChar; Parameters5: PChar; Parameters6: PChar; Parameters7: PChar; Parameters8: PChar; Parameters9: PChar; Parameters10: PChar; DataBaseStr: PChar): hwnd; export; stdcall; + +function ConnData(): Boolean; + +function GetsysParam(muserId: pchar; fparam1: pchar): Boolean; + +implementation + +uses + U_DataLink, U_BpRklist, U_Bpcklist, U_Bpkclist, U_ZDYHelp, U_BpJGlist; + + ///////////////////////////////////////////////////////////////// + // ˵:ȡDllеô // + // ˵App>>Ӧó // + // FormH>>ôھ // + // FormID>>ں; // + // Language>>; // + // WinStyle>>ͣ // +///////////////////////////////////////////////////////////////// +function GetDllForm(App: Tapplication; FormH: hwnd; FormID: integer; Language: integer; WinStyle: integer; GCode: Pchar; GName: Pchar; DataBase: Pchar; Title: PChar; Parameters1: PChar; Parameters2: PChar; Parameters3: PChar; Parameters4: PChar; Parameters5: PChar; Parameters6: PChar; Parameters7: PChar; Parameters8: PChar; Parameters9: PChar; Parameters10: PChar; DataBaseStr: PChar): hwnd; +var + mnewHandle: hwnd; + mstyle: TFormStyle; // 0:Ӵ; 1ͨ + mstate: TWindowState; + mborderstyle: TFormBorderStyle; +begin + mnewHandle := 0; + DName := GName; + DCode := GName; + DdataBase := DataBase; + DTitCaption := Title; + DParameters1 := Parameters1; + DParameters2 := Parameters2; + DParameters3 := Parameters3; + DParameters4 := Parameters4; + DParameters5 := Parameters5; + DParameters6 := Parameters6; + DParameters7 := Parameters7; + DParameters8 := Parameters8; + DParameters9 := Parameters9; + DParameters10 := Parameters10; + + MainApplication := App; + DCurHandle := FormH; + IsDelphiLanguage := Language; + + Application := TApplication(App); + DCurHandle := 0; + + + //ֵַ + SetLength(server, 255); + SetLength(dtbase, 255); + SetLength(user, 255); + SetLength(pswd, 255); + + server := '139.224.12.182,7781'; // 122.224.36.142,7781 + dtbase := 'aidengdata'; //jinzhicaidata + user := 'aidengsa'; + pswd := 'rightsoft@3203'; + + DConString := 'Provider=SQLOLEDB.1;Password=' + pswd + ';Persist Security Info=True;User ID=' + user + ';Initial Catalog=' + dtbase + ';Data Source=' + server; + if trim(DataBaseStr) <> '' then + DConString := DataBaseStr; + Parameters1:='ƥֿ'; + // DParameters1:='1'; + + // if GetLinkDog(DCurHandle,DConString)<0 then application.Terminate; + if not ConnData() then + begin + result := 0; + exit; + end; + GetsysParam('', ''); + // 崰 ״̬ + if WinStyle = 0 then + begin + mstyle := fsMDIChild; + mstate := wsMaximized; + mborderstyle := bsSizeable; + end + else + begin + mstyle := fsNormal; + mstate := wsNormal; + mborderstyle := bsSizeable; + end; + + ///////////////////// + //ģ鴰 + case FormID of + -1: + begin + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'BPCK'; + flagname := ''; + if ShowModal = 1 then + begin + + end; + free; + end; + end; + -2: + begin + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'BPRKTYPE'; + flagname := ''; + fnote := true; + if ShowModal = 1 then + begin + + end; + free; + end; + end; + -3: + begin + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'BPCKTYPE'; + flagname := ''; + fnote := true; + if ShowModal = 1 then + begin + + end; + free; + end; + end; + 10: // + begin + if frmBpRklist = nil then + begin + frmBpRklist := TfrmBpRklist.Create(application.MainForm); + with frmBpRklist do + begin + caption := Trim(Title); + fCkName := trim(Parameters1); + fManage := trim(DataBase); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmBpRklist.BringToFront; + // + mnewHandle := frmBpRklist.Handle; + + end; + + 20: // + begin + if frmBpCklist = nil then + begin + frmBpCklist := TfrmBpCklist.Create(application.MainForm); + with frmBpCklist do + begin + caption := Trim(Title); + fCkName := trim(Parameters1); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmBpCklist.BringToFront; + // + mnewHandle := frmBpCklist.Handle; + + end; + 30: // + begin + if frmBpkclist = nil then + begin + frmBpkclist := TfrmBpkclist.Create(application.MainForm); + with frmBpkclist do + begin + caption := Trim(Title); + fCkName := trim(Parameters1); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmBpkclist.BringToFront; + // + mnewHandle := frmBpkclist.Handle; + end; + 31: // + begin + if frmBpJGlist = nil then + begin + frmBpJGlist := TfrmBpJGlist.Create(application.MainForm); + with frmBpJGlist do + begin + caption := Trim(Title); + fCkName := trim(Parameters1); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmBpJGlist.BringToFront; + // + mnewHandle := frmBpJGlist.Handle; + end; + + end; // end case + + Result := mnewHandle; +// NewDllApp := Application; +end; +//=========================================================== + //ݿӳ +//=========================================================== + +function ConnData(): Boolean; +begin + if not Assigned(BPCK_DataLink) then + BPCK_DataLink := TBPCK_DataLink.Create(Application); + try + with BPCK_DataLink.ADOLink do + begin + if not Connected then + begin + Connected := false; + ConnectionString := DConString; + LoginPrompt := false; + Connected := true; + // BaseData10_DataLink.Timer1.Enabled:=true; + end; + end; + Result := true; + except + Result := false; + application.MessageBox('ݿʧܣ', '', mb_Ok + MB_ICONERROR); + end; + +end; +//========================================================= + //ȡϵͳ +//========================================================= + +function GetsysParam(muserId: pchar; fparam1: pchar): Boolean; +begin + result := true; + ////////////////////////////// + shortDateFormat := 'yyyy-MM-dd'; + // + with BPCK_DataLink.AdoDataLink do + begin + close; + sql.Clear; + sql.Add('select getDate()as dt'); + open; + DServerDate := fieldByName('dt').AsDatetime; + end; + result := true; +end; + +initialization + CoInitialize(nil); + dxUnitsLoader.Initialize; + + +finalization + BPCK_DataLink.Free; + application := NewDllApp; + dxUnitsLoader.Finalize; + +end. + diff --git a/坯布仓库/U_PackList.dfm b/坯布仓库/U_PackList.dfm new file mode 100644 index 0000000..07cd745 --- /dev/null +++ b/坯布仓库/U_PackList.dfm @@ -0,0 +1,648 @@ +object frmPackList: TfrmPackList + Left = 77 + Top = 101 + Width = 921 + Height = 634 + Caption = #25171#21253#20449#24687 + 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 = 913 + Height = 33 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = Packaged_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 47 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 49 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 48 + OnClick = ToolButton3Click + end + object TBExport: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #23548#20986#30721#21333 + ImageIndex = 44 + OnClick = TBExportClick + end + object TBClose: TToolButton + Left = 402 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 913 + Height = 56 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 239 + Top = 12 + Width = 48 + Height = 12 + Caption = #23458#25143#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label1: TLabel + Left = 24 + Top = 12 + Width = 48 + Height = 12 + Caption = #25171#21253#26085#26399 + end + object Label2: TLabel + Left = 240 + Top = 32 + Width = 48 + Height = 12 + Caption = #35745#21010#21333#21495 + end + object Label4: TLabel + Left = 444 + Top = 12 + Width = 48 + Height = 12 + Caption = #20135#21697#21517#31216 + end + object khName: TEdit + Left = 292 + Top = 7 + Width = 100 + Height = 20 + TabOrder = 0 + OnChange = khNameChange + end + object begdate: TDateTimePicker + Left = 76 + Top = 8 + Width = 97 + Height = 20 + Date = 41009.831677152770000000 + Format = 'yyyy-MM-dd' + Time = 41009.831677152770000000 + TabOrder = 1 + end + object enddate: TDateTimePicker + Left = 76 + Top = 28 + Width = 97 + Height = 20 + Date = 41009.831677152770000000 + Format = 'yyyy-MM-dd' + Time = 41009.831677152770000000 + TabOrder = 2 + end + object orderNo: TEdit + Left = 292 + Top = 28 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = khNameChange + end + object cpName: TEdit + Left = 500 + Top = 8 + Width = 100 + Height = 20 + TabOrder = 4 + OnChange = khNameChange + end + object CheckBox1: TCheckBox + Left = 444 + Top = 32 + Width = 97 + Height = 17 + Caption = #20840#36873 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 5 + OnClick = CheckBox1Click + end + end + object CXGrid1: TcxGrid + Left = 4 + Top = 89 + Width = 505 + Height = 316 + TabOrder = 2 + LookAndFeel.Kind = lfStandard + object TV1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = TV1CellClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = V1qtyMi + end + item + Kind = skSum + Column = V1qtyjz + end + item + Kind = skSum + Column = V1qtyMa + end + item + Kind = skSum + Column = V1QtyMz + end + item + Kind = skSum + Column = V1QtyPZ + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.ContentOdd = Packaged_DataLink.cxStyle_gridRow + Styles.Footer = Packaged_DataLink.cxStyle_gridFoot + Styles.GroupByBox = Packaged_DataLink.cxStyle_gridGroupBox + Styles.Header = Packaged_DataLink.cxStyle_gridHead + object V1SSel: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 50 + end + object V1packID: TcxGridDBColumn + Caption = #21253#26465#30721 + DataBinding.FieldName = 'packID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 74 + end + object V1FillTime: TcxGridDBColumn + Caption = #25171#21253#26085#26399 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 75 + end + object V1packNo: TcxGridDBColumn + Caption = #21253#21495 + DataBinding.FieldName = 'packNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 67 + end + object TV1KHName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'KHName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 80 + end + object TV1OrderNo: TcxGridDBColumn + Caption = #35745#21010#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 100 + end + object TV1CPName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'CPName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 109 + end + object V1qtyMi: TcxGridDBColumn + Caption = #31859#25968 + DataBinding.FieldName = 'qtyMi' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = Packaged_DataLink.cxStyle_fontclBlue + Styles.Footer = Packaged_DataLink.cxStyle_fontclBlue + Styles.Header = Packaged_DataLink.cxStyle_fontclBlue + Width = 50 + end + object V1qtyjz: TcxGridDBColumn + Caption = #20844#26020#25968 + DataBinding.FieldName = 'qtyjz' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = Packaged_DataLink.cxStyle_fontclFuchsia + Styles.Footer = Packaged_DataLink.cxStyle_fontclFuchsia + Styles.Header = Packaged_DataLink.cxStyle_fontclFuchsia + Width = 50 + end + object V1qtyMa: TcxGridDBColumn + Caption = #30721#25968 + DataBinding.FieldName = 'qtyMa' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 50 + end + object V1QtyMz: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'QtyMz' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 50 + end + object V1QtyPZ: TcxGridDBColumn + Caption = #30382#37325 + DataBinding.FieldName = 'QtyPZ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 50 + end + end + object CXGrid1L1: TcxGridLevel + GridView = TV1 + end + end + object cxSplitter1: TcxSplitter + Left = 641 + Top = 89 + Width = 8 + Height = 319 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salRight + Control = cxGrid2 + end + object cxGrid2: TcxGrid + Left = 649 + Top = 89 + Width = 264 + Height = 319 + Align = alRight + TabOrder = 4 + LookAndFeel.Kind = lfStandard + object tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = cxGridDBqtyMi + end + item + Kind = skSum + Column = cxGridDBqtyjz + end + item + Kind = skSum + Column = cxGridDBqtyMa + end + item + Kind = skSum + Column = cxGridDBQtyMz + end + item + Kind = skSum + Column = cxGridDBQtyPZ + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.ContentOdd = Packaged_DataLink.cxStyle_gridRow + Styles.Footer = Packaged_DataLink.cxStyle_gridFoot + Styles.GroupByBox = Packaged_DataLink.cxStyle_gridGroupBox + Styles.Header = Packaged_DataLink.cxStyle_gridHead + object cxGridDBTMID: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'TMID' + HeaderAlignmentHorz = taCenter + Width = 75 + end + object cxGridDBJH: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'JH' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object cxGridDBColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'Color' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 60 + end + object cxGridDBHX: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'HX' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 60 + end + object cxGridDBqtyMi: TcxGridDBColumn + Caption = #31859#25968 + DataBinding.FieldName = 'qtyMi' + HeaderAlignmentHorz = taCenter + Styles.Content = Packaged_DataLink.cxStyle_fontclBlue + Styles.Footer = Packaged_DataLink.cxStyle_fontclBlue + Styles.Header = Packaged_DataLink.cxStyle_fontclBlue + Width = 50 + end + object cxGridDBqtyjz: TcxGridDBColumn + Caption = #20844#26020#25968 + DataBinding.FieldName = 'qtyjz' + HeaderAlignmentHorz = taCenter + Styles.Content = Packaged_DataLink.cxStyle_fontclFuchsia + Styles.Footer = Packaged_DataLink.cxStyle_fontclFuchsia + Styles.Header = Packaged_DataLink.cxStyle_fontclFuchsia + Width = 50 + end + object cxGridDBqtyMa: TcxGridDBColumn + Caption = #30721#25968 + DataBinding.FieldName = 'qtyMa' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object cxGridDBQtyMz: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'QtyMz' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object cxGridDBQtyPZ: TcxGridDBColumn + Caption = #30382#37325 + DataBinding.FieldName = 'QtyPZ' + HeaderAlignmentHorz = taCenter + Width = 50 + end + end + object cxGridLevel1: TcxGridLevel + GridView = tv2 + end + end + object cxGrid3: TcxGrid + Left = 0 + Top = 408 + Width = 913 + Height = 194 + Align = alBottom + TabOrder = 5 + Visible = False + object TV3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource3 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + object TV3ORDERNO: TcxGridDBColumn + Caption = 'ORDER NO' + DataBinding.FieldName = 'ORDERNO' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 70 + end + object TV3BALNO: TcxGridDBColumn + Caption = 'BAL NO' + DataBinding.FieldName = 'PackNo' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 60 + end + object TV3TYpe: TcxGridDBColumn + DataBinding.FieldName = 'TYPE' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 60 + IsCaptionAssigned = True + end + object TV3DESNO: TcxGridDBColumn + Caption = 'DES NO' + DataBinding.FieldName = 'HX' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 60 + end + object TV31: TcxGridDBColumn + Caption = '1' + DataBinding.FieldName = 'ROW1' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV32: TcxGridDBColumn + Caption = '2' + DataBinding.FieldName = 'ROW2' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV33: TcxGridDBColumn + Caption = '3' + DataBinding.FieldName = 'ROW3' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV34: TcxGridDBColumn + Caption = '4' + DataBinding.FieldName = 'ROW4' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV35: TcxGridDBColumn + Caption = '5' + DataBinding.FieldName = 'ROW5' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV36: TcxGridDBColumn + Caption = '6' + DataBinding.FieldName = 'ROW6' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV37: TcxGridDBColumn + Caption = '7' + DataBinding.FieldName = 'ROW7' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV38: TcxGridDBColumn + Caption = '8' + DataBinding.FieldName = 'ROW8' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV39: TcxGridDBColumn + Caption = '9' + DataBinding.FieldName = 'ROW9' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV310: TcxGridDBColumn + Caption = '10' + DataBinding.FieldName = 'ROW10' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV3TTL: TcxGridDBColumn + Caption = 'TTL' + DataBinding.FieldName = 'ROWSUM' + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGrid3Level1: TcxGridLevel + GridView = TV3 + end + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 356 + Top = 181 + end + object ADOQuerymain: TADOQuery + Connection = Packaged_DataLink.ADOLink + Parameters = <> + SQL.Strings = ( + 'SELECT * FROM JD_Pack A' + '' + '' + '' + '' + '') + Left = 412 + Top = 164 + end + object ADOQuerysub: TADOQuery + Connection = Packaged_DataLink.ADOLink + Parameters = <> + Left = 684 + Top = 188 + end + object DataSource2: TDataSource + DataSet = ADOQuerysub + Left = 720 + Top = 248 + end + object ADOQueryPrint: TADOQuery + Connection = Packaged_DataLink.ADOLink + Parameters = <> + Left = 292 + Top = 408 + end + object DataSource3: TDataSource + DataSet = ADOQueryPrint + Left = 324 + Top = 408 + end + object ADOQueryCMD: TADOQuery + Connection = Packaged_DataLink.ADOLink + Parameters = <> + Left = 644 + Top = 45 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 468 + Top = 216 + end +end diff --git a/坯布仓库/U_ProductOrderList.dfm b/坯布仓库/U_ProductOrderList.dfm new file mode 100644 index 0000000..4f3f6a4 --- /dev/null +++ b/坯布仓库/U_ProductOrderList.dfm @@ -0,0 +1,544 @@ +object frmProductOrderList: TfrmProductOrderList + Left = 134 + Top = 115 + Width = 1094 + Height = 600 + Caption = #29983#20135#25351#31034#21333 + 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 = 1265 + AutoSize = True + 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 = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 106 + Visible = False + OnClick = ToolButton3Click + end + object TBExport: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + Visible = False + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1265 + Height = 67 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 179 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 318 + Top = 15 + Width = 26 + Height = 12 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 179 + Top = 39 + Width = 39 + Height = 12 + Caption = #36319#21333#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 318 + Top = 39 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 441 + Top = 39 + Width = 52 + Height = 12 + Caption = #20013#25991#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 441 + Top = 15 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 589 + Top = 39 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 589 + Top = 15 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNoM: TEdit + Tag = 2 + Left = 220 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoMChange + end + object CustomerNoName: TEdit + Tag = 2 + Left = 347 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 3 + OnChange = OrderNoMChange + end + object OrdPerson1: TEdit + Tag = 2 + Left = 220 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 4 + OnChange = OrderNoMChange + end + object PRTColor: TEdit + Tag = 2 + Left = 347 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 5 + OnChange = OrderNoMChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 495 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 6 + OnChange = OrderNoMChange + end + object OrdDefStr1: TEdit + Tag = 2 + Left = 495 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 7 + OnChange = OrderNoMChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 618 + Top = 35 + Width = 56 + Height = 20 + TabOrder = 8 + OnChange = OrderNoMChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 618 + Top = 11 + Width = 56 + Height = 20 + TabOrder = 9 + OnChange = OrderNoMChange + end + end + object cxGrid1: TcxGrid + Left = 16 + Top = 104 + Width = 1249 + Height = 369 + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = BPCK_DataLink.SHuangSe + Styles.IncSearch = BPCK_DataLink.SHuangSe + Styles.Selection = BPCK_DataLink.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = BPCK_DataLink.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 72 + end + object v1OrdDefStr1: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'OrdDefStr1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 90 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #36319#21333#21592 + DataBinding.FieldName = 'OrdPerson1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 73 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 72 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 62 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 62 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 69 + end + object v1MPRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 70 + end + object v1MPRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + Options.Focusing = False + Width = 54 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 63 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 67 + end + object v1PRTPrice: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PRTPrice' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 71 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 288 + Top = 184 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end +end diff --git a/坯布仓库/U_ProductOrderList.pas b/坯布仓库/U_ProductOrderList.pas new file mode 100644 index 0000000..9697ab0 --- /dev/null +++ b/坯布仓库/U_ProductOrderList.pas @@ -0,0 +1,527 @@ +unit U_ProductOrderList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP,ShellAPI + ,IniFiles; + +type + TfrmProductOrderList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNoM: TEdit; + TBExport: TToolButton; + v1OrderNo: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + Label4: TLabel; + CustomerNoName: TEdit; + v1MPRTCodeName: TcxGridDBColumn; + v1MPRTMF: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + v1PRTPrice: TcxGridDBColumn; + Label5: TLabel; + OrdPerson1: TEdit; + Label7: TLabel; + PRTColor: TEdit; + Label8: TLabel; + MPRTCodeName: TEdit; + v1MPRTKZ: TcxGridDBColumn; + v1OrdDefStr1: TcxGridDBColumn; + Label11: TLabel; + OrdDefStr1: TEdit; + Label12: TLabel; + MPRTKZ: TEdit; + Label13: TLabel; + MPRTMF: TEdit; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + v1Column4: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + procedure ReadINIFile(); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmProductOrderList: TfrmProductOrderList; + +implementation +uses + U_DataLink,U_Fun10; + + +{$R *.dfm} + +procedure TfrmProductOrderList.FormDestroy(Sender: TObject); +begin + frmProductOrderList:=nil; +end; + +procedure TfrmProductOrderList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderList.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderList.TBCloseClick(Sender: TObject); +begin + Close; + if FCloth<>1 then + WriteCxGrid('ָʾб',Tv1,'ָʾ') + else + WriteCxGrid('ָʾбѡ',Tv1,'ָʾ'); +end; + +procedure TfrmProductOrderList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select A.*,B.*,A.OrderNo OrderNoM from JYOrder_Main A left join JYOrder_Sub B on A.MainId=B.MainId '); + SQL.Add('where OrdDate>=:begdate and OrdDate<:enddate'); + if Trim(DParameters1)<>'' then + begin + sql.Add(' and A.Filler='''+Trim(DName)+''''); + end; + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderList.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderList.InitForm(); +begin + if SGetServerDate(ADOQueryTemp)>StrToDate('2014-07-11') then + begin + ToolBar1.Visible:=False; + Application.MessageBox('ҪϵӦ̣','ʾ',0); + Exit; + end; + if FCloth<>1 then + ReadCxGrid('ָʾб',Tv1,'ָʾ') + else + ReadCxGrid('ָʾбѡ',Tv1,'ָʾ'); + + + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmProductOrderList.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmProductOrderList.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + if IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + // SelExportData(Tv1,ADOQueryMain,'ָʾб'); +end; + +procedure TfrmProductOrderList.TBPrintClick(Sender: TObject); +var + fPrintFile:string; + Porderno:string; + i,j:Integer; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*,PRTColorEng=(select Note from KH_Zdy CC where ZdyName=B.PRTColor and CC.Type=''OrdColor'' ),ML='' '' '); + SQL.Add(',CPQty=(select isnull(Sum(PRTOrderQty),0) from JYOrder_Sub C where C.MainId=A.MainId)'); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId '); + sql.Add(' and A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print); + i:=ADOQueryPrint.RecordCount; + ADOQueryPrint.First; + if i<14 then + begin + for j:=1 to 19-i do + begin + with CDS_Print do + begin + Append; + FieldByName('ML').Value:=' '; + Post; + end; + end; + end; + with CDS_Print do + begin + Append; + FieldByName('Note').Value:=Trim(Order_Main.fieldbyname('Note').AsString); + FieldByName('OrdDefStr10').Value:=Trim(Order_Main.fieldbyname('OrdDefStr10').AsString); + FieldByName('OrdDefStr11').Value:=Trim(Order_Main.fieldbyname('OrdDefStr11').AsString); + FieldByName('OrdDefStr12').Value:=Trim(Order_Main.fieldbyname('OrdDefStr12').AsString); + FieldByName('OrdDefStr13').Value:=Trim(Order_Main.fieldbyname('OrdDefStr13').AsString); + FieldByName('OrdDefStr14').Value:=Trim(Order_Main.fieldbyname('OrdDefStr14').AsString); + FieldByName('OrdDefStr15').Value:=Trim(Order_Main.fieldbyname('OrdDefStr15').AsString); + FieldByName('OrdDefStr16').Value:=Trim(Order_Main.fieldbyname('OrdDefStr16').AsString); + FieldByName('OrdDefStr17').Value:=Trim(Order_Main.fieldbyname('OrdDefStr17').AsString); + FieldByName('OrdDefStr18').Value:=Trim(Order_Main.fieldbyname('OrdDefStr18').AsString); + FieldByName('OrdDefStr19').Value:=Trim(Order_Main.fieldbyname('OrdDefStr19').AsString); + FieldByName('OrdDefStr20').Value:=Trim(Order_Main.fieldbyname('OrdDefStr20').AsString); + FieldByName('OrdDefStr21').Value:=Trim(Order_Main.fieldbyname('OrdDefStr21').AsString); + FieldByName('OrdPerson1').Value:=Trim(Order_Main.fieldbyname('OrdPerson1').AsString); + FieldByName('OrdPerson2').Value:=Trim(Order_Main.fieldbyname('OrdPerson2').AsString); + FieldByName('OrdPerson3').Value:=Trim(Order_Main.fieldbyname('OrdPerson3').AsString); + FieldByName('OrdPerson4').Value:=Trim(Order_Main.fieldbyname('OrdPerson4').AsString); + FieldByName('Filler').Value:=Trim(Order_Main.fieldbyname('Filler').AsString); + FieldByName('Chker').Value:=Trim(Order_Main.fieldbyname('Chker').AsString); + FieldByName('ML').Value:=' '; + Post; + end; + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; +end; + +procedure TfrmProductOrderList.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + InitGridFH(); + end else + InitGrid(); +end; + +procedure TfrmProductOrderList.OrderNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderList.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderList.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmProductOrderList.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderList.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderList.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderList.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderList.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderList.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderList.ToolButton3Click(Sender: TObject); +begin + ModalResult:=1; +end; + +procedure TfrmProductOrderList.ReadINIFile(); +var + programIni:Tinifile; //ļ + FileName:string; +begin + FileName:=ExtractFilePath(Paramstr(0))+'SYSTEMSET.INI'; + programIni:=Tinifile.create(FileName); + server:=programIni.ReadString('SERVER','ַ','127.0.0.1'); + programIni.Free; +end; + +end. diff --git a/坯布仓库/U_ProductOrderNewList.dfm b/坯布仓库/U_ProductOrderNewList.dfm new file mode 100644 index 0000000..853dbb7 --- /dev/null +++ b/坯布仓库/U_ProductOrderNewList.dfm @@ -0,0 +1,632 @@ +object frmProductOrderNewList: TfrmProductOrderNewList + Left = 113 + Top = 117 + Width = 1094 + Height = 600 + Caption = #29983#20135#25351#31034#21333 + 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 = 1078 + AutoSize = True + 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 = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #36873#25321 + ImageIndex = 106 + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1078 + Height = 65 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 239 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 239 + Top = 39 + Width = 40 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 314 + Top = 99 + Width = 26 + Height = 12 + Caption = #26579#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 453 + Top = 16 + Width = 53 + Height = 12 + Caption = #19994' '#21153' '#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 588 + Top = 103 + Width = 54 + Height = 12 + Caption = #25104' '#20998 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 693 + Top = 15 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 453 + Top = 39 + Width = 52 + Height = 12 + Caption = #20013#25991#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 179 + Top = 99 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 729 + Top = 103 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 437 + Top = 99 + Width = 52 + Height = 12 + Caption = #20844#21496#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 861 + Top = 115 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 861 + Top = 91 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 280 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object CustomerNoName: TEdit + Tag = 2 + Left = 280 + Top = 35 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = OrderNoChange + end + object JGFactoryName: TEdit + Tag = 2 + Left = 343 + Top = 95 + Width = 76 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + end + object OrdPerson1: TEdit + Tag = 2 + Left = 507 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 5 + OnChange = OrderNoChange + end + object MPRTCF: TEdit + Tag = 2 + Left = 641 + Top = 99 + Width = 76 + Height = 20 + TabOrder = 6 + OnChange = OrderNoChange + end + object PRTColor: TEdit + Tag = 2 + Left = 722 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 7 + OnChange = OrderNoChange + end + object PRTCodeName: TEdit + Tag = 2 + Left = 507 + Top = 35 + Width = 100 + Height = 20 + TabOrder = 8 + OnChange = OrderNoChange + end + object ConNo: TEdit + Tag = 2 + Left = 220 + Top = 95 + Width = 77 + Height = 20 + TabOrder = 9 + OnChange = OrderNoChange + end + object MPRTSpec: TEdit + Tag = 2 + Left = 758 + Top = 99 + Width = 76 + Height = 20 + TabOrder = 10 + OnChange = OrderNoChange + end + object OrdDefStr1: TEdit + Tag = 2 + Left = 491 + Top = 95 + Width = 76 + Height = 20 + TabOrder = 11 + OnChange = OrderNoChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 890 + Top = 111 + Width = 56 + Height = 20 + TabOrder = 12 + OnChange = OrderNoChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 890 + Top = 87 + Width = 56 + Height = 20 + TabOrder = 13 + OnChange = OrderNoChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 97 + Width = 1078 + Height = 424 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.GroupByBox = False + Styles.Inactive = BPCK_DataLink.SHuangSe + Styles.IncSearch = BPCK_DataLink.SHuangSe + Styles.Selection = BPCK_DataLink.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = BPCK_DataLink.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 72 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 68 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 73 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 68 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 62 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 62 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'PRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 69 + end + object v1Column1: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1Column2: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'PRTRollNum' + HeaderAlignmentHorz = taCenter + Width = 82 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 97 + end + object v1Column8: TcxGridDBColumn + Caption = #22791#27880#21450#35201#27714 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 96 + end + object v1Column3: TcxGridDBColumn + Caption = #21457#36135#22320#22336 + DataBinding.FieldName = 'FHAddress' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 88 + end + object v1Column5: TcxGridDBColumn + Caption = #32852#31995#26041#24335 + DataBinding.FieldName = 'LXFS' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 89 + end + object v1EditTime: TcxGridDBColumn + Caption = #20462#25913#26085#26399 + DataBinding.FieldName = 'EditTime' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1ordderNote1: TcxGridDBColumn + Caption = #20462#25913#22791#27880 + DataBinding.FieldName = 'orddefNote1' + HeaderAlignmentHorz = taCenter + Width = 80 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 256 + Top = 176 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end +end diff --git a/坯布仓库/U_ProductOrderNewList.pas b/坯布仓库/U_ProductOrderNewList.pas new file mode 100644 index 0000000..da858fa --- /dev/null +++ b/坯布仓库/U_ProductOrderNewList.pas @@ -0,0 +1,457 @@ +unit U_ProductOrderNewList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus; + +type + TfrmProductOrderNewList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNo: TEdit; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + Label4: TLabel; + CustomerNoName: TEdit; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + Label2: TLabel; + JGFactoryName: TEdit; + Label5: TLabel; + OrdPerson1: TEdit; + Label6: TLabel; + MPRTCF: TEdit; + Label7: TLabel; + PRTColor: TEdit; + Label8: TLabel; + PRTCodeName: TEdit; + Label9: TLabel; + ConNo: TEdit; + Label10: TLabel; + MPRTSpec: TEdit; + Label11: TLabel; + OrdDefStr1: TEdit; + Label12: TLabel; + MPRTKZ: TEdit; + Label13: TLabel; + MPRTMF: TEdit; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column4: TcxGridDBColumn; + v1OrderNo: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1CustomerNoName: TcxGridDBColumn; + v1MPRTCodeName: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1EditTime: TcxGridDBColumn; + v1ordderNote1: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmProductOrderNewList: TfrmProductOrderNewList; + +implementation +uses + U_DataLink,U_Fun10; + + +{$R *.dfm} + +procedure TfrmProductOrderNewList.FormDestroy(Sender: TObject); +begin + frmProductOrderNewList:=nil; +end; + +procedure TfrmProductOrderNewList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderNewList.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderNewList.TBCloseClick(Sender: TObject); +begin + Close; + if FCloth<>1 then + WriteCxGrid('ָʾб10',Tv1,'ָʾ') + else + WriteCxGrid('ָʾбѡ',Tv1,'ָʾ'); +end; + +procedure TfrmProductOrderNewList.InitGrid(); +var + strwhere:string; +begin + strwhere:=''; + + strwhere:=strwhere+' and isnull(B.status,''0'')='''+inttostr(1)+''''; + + strwhere:=strwhere+' and isnull(B.orderType,''0'')='''''; + strwhere:=strwhere+' and not exists(select mainID from BP_inout X where X.mainID=A.mainID) '; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql') ; + parameters.ParamByName('WSql').Value:=strwhere; + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderNewList.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderNewList.InitForm(); +begin + + if FCloth<>1 then + ReadCxGrid('ָʾб10',Tv1,'ָʾ') + else + ReadCxGrid('ָʾбѡ',Tv1,'ָʾ'); + + if FCloth=1 then + begin + v1Column4.Visible:=True; + + end else + begin + v1Column4.Visible:=False; + end; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp); + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + //InitGrid(); +end; + +procedure TfrmProductOrderNewList.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmProductOrderNewList.DelData():Boolean; +begin +end; + +procedure TfrmProductOrderNewList.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + InitGridFH(); + end else + begin + InitGrid(); + end; +end; + +procedure TfrmProductOrderNewList.OrderNoChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderNewList.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderNewList.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmProductOrderNewList.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderNewList.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderNewList.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderNewList.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderNewList.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewList.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewList.ToolButton3Click(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + ModalResult:=1; +end; + +procedure TfrmProductOrderNewList.OrderNoKeyPress(Sender: TObject; + var Key: Char); +var + fsj:string; +begin +{ if Key=#13 then + begin + if Length(Trim(OrderNoM.Text))<4 then Exit; + fsj:='%'+Trim(OrderNoM.Text)+'%'; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql') ; + if Trim(DParameters1)<>'Ȩ' then + begin + Parameters.ParamByName('WSql').Value:=' and A.Filler='''+Trim(DName)+''''; + end else + begin + Parameters.ParamByName('WSql').Value:=' and A.OrderNo like '''+fsj+''''; + end; + Parameters.ParamByName('begdate').Value:='1900-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; } +end; + +procedure TfrmProductOrderNewList.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + ToolButton3.Click; +end; + +end. diff --git a/坯布仓库/U_ProductOrderNewListSEl.dfm b/坯布仓库/U_ProductOrderNewListSEl.dfm new file mode 100644 index 0000000..4d7b952 --- /dev/null +++ b/坯布仓库/U_ProductOrderNewListSEl.dfm @@ -0,0 +1,624 @@ +object frmProductOrderNewListSEl: TfrmProductOrderNewListSEl + Left = 89 + Top = 77 + Width = 1153 + Height = 602 + Caption = #29983#20135#25351#31034#21333 + 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 = 1137 + AutoSize = True + 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 = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #36873#25321 + ImageIndex = 106 + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1137 + Height = 65 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 239 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 239 + Top = 39 + Width = 40 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 314 + Top = 99 + Width = 26 + Height = 12 + Caption = #26579#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 453 + Top = 16 + Width = 53 + Height = 12 + Caption = #19994' '#21153' '#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 588 + Top = 103 + Width = 54 + Height = 12 + Caption = #25104' '#20998 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 693 + Top = 15 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 453 + Top = 39 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 179 + Top = 99 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 729 + Top = 103 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 437 + Top = 99 + Width = 52 + Height = 12 + Caption = #20844#21496#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 861 + Top = 115 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 861 + Top = 91 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 280 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object CustomerNoName: TEdit + Tag = 2 + Left = 280 + Top = 35 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = OrderNoChange + end + object JGFactoryName: TEdit + Tag = 2 + Left = 343 + Top = 95 + Width = 76 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + end + object OrdPerson1: TEdit + Tag = 2 + Left = 507 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 5 + OnChange = OrderNoChange + end + object MPRTCF: TEdit + Tag = 2 + Left = 641 + Top = 99 + Width = 76 + Height = 20 + TabOrder = 6 + OnChange = OrderNoChange + end + object PRTColor: TEdit + Tag = 2 + Left = 722 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 7 + OnChange = OrderNoChange + end + object PRTCodeName: TEdit + Tag = 2 + Left = 507 + Top = 35 + Width = 100 + Height = 20 + TabOrder = 8 + OnChange = OrderNoChange + end + object ConNo: TEdit + Tag = 2 + Left = 220 + Top = 95 + Width = 77 + Height = 20 + TabOrder = 9 + OnChange = OrderNoChange + end + object MPRTSpec: TEdit + Tag = 2 + Left = 758 + Top = 99 + Width = 76 + Height = 20 + TabOrder = 10 + OnChange = OrderNoChange + end + object OrdDefStr1: TEdit + Tag = 2 + Left = 491 + Top = 95 + Width = 76 + Height = 20 + TabOrder = 11 + OnChange = OrderNoChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 890 + Top = 111 + Width = 56 + Height = 20 + TabOrder = 12 + OnChange = OrderNoChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 890 + Top = 87 + Width = 56 + Height = 20 + TabOrder = 13 + OnChange = OrderNoChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 97 + Width = 1137 + Height = 424 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.GroupByBox = False + Styles.Inactive = BPCK_DataLink.SHuangSe + Styles.IncSearch = BPCK_DataLink.SHuangSe + Styles.Selection = BPCK_DataLink.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = BPCK_DataLink.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 100 + end + object v1Column6: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'conNo' + HeaderAlignmentHorz = taCenter + Width = 100 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 120 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 73 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 70 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 70 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'PRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 104 + end + object v1Column5: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'SOrddefstr1' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column1: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column7: TcxGridDBColumn + Caption = #33457#22411#33457#21495 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column2: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'PRTRollNum' + Visible = False + HeaderAlignmentHorz = taCenter + VisibleForCustomization = False + Width = 80 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 80 + end + object v1Column3: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column8: TcxGridDBColumn + Caption = #22791#27880#21450#35201#27714 + DataBinding.FieldName = 'SOrdDefNote1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = BPCK_DataLink.Default + Width = 80 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 256 + Top = 176 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end +end diff --git a/坯布仓库/U_ProductOrderNewListSEl.pas b/坯布仓库/U_ProductOrderNewListSEl.pas new file mode 100644 index 0000000..59244e2 --- /dev/null +++ b/坯布仓库/U_ProductOrderNewListSEl.pas @@ -0,0 +1,452 @@ +unit U_ProductOrderNewListSEl; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; + +type + TfrmProductOrderNewListSEl = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNo: TEdit; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + Label4: TLabel; + CustomerNoName: TEdit; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + Label2: TLabel; + JGFactoryName: TEdit; + Label5: TLabel; + OrdPerson1: TEdit; + Label6: TLabel; + MPRTCF: TEdit; + Label7: TLabel; + PRTColor: TEdit; + Label8: TLabel; + PRTCodeName: TEdit; + Label9: TLabel; + ConNo: TEdit; + Label10: TLabel; + MPRTSpec: TEdit; + Label11: TLabel; + OrdDefStr1: TEdit; + Label12: TLabel; + MPRTKZ: TEdit; + Label13: TLabel; + MPRTMF: TEdit; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column4: TcxGridDBColumn; + v1OrderNo: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1CustomerNoName: TcxGridDBColumn; + v1MPRTCodeName: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1Column3: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmProductOrderNewListSEl: TfrmProductOrderNewListSEl; + +implementation +uses + U_DataLink,U_Fun10; + + +{$R *.dfm} + +procedure TfrmProductOrderNewListSEl.FormDestroy(Sender: TObject); +begin + frmProductOrderNewListSEl:=nil; +end; + +procedure TfrmProductOrderNewListSEl.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderNewListSEl.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderNewListSEl.TBCloseClick(Sender: TObject); +begin + Close; + if FCloth<>1 then + WriteCxGrid('ָʾб10',Tv1,'ָʾ') + else + WriteCxGrid('ָʾбѡ',Tv1,'ָʾ'); +end; + +procedure TfrmProductOrderNewListSEl.InitGrid(); +var + strwhere:string; +begin + strwhere:=''; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select B.*,A.* '); + sql.Add('from JYorder_sub A'); + sql.Add('inner join JYorder_main B on B.mainID=A.MainID'); + sql.Add('where B.FillTime>='''+formatdateTime('yyyy-MM-dd',begdate.DateTime)+''''); + sql.Add('and B.FillTime<'''+formatdateTime('yyyy-MM-dd',enddate.DateTime+1)+''''); +// ShowMessage(sql.text); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderNewListSEl.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select A.*,B.* '); + sql.Add('from JYorder_sub A'); + sql.Add('inner join JYorder_main B on B.mainID=A.MainID'); + sql.Add('where B.FillTime>='''+formatdateTime('yyyy-MM-dd',begdate.DateTime)+''''); + sql.Add('and B.FillTime<'''+formatdateTime('yyyy-MM-dd',enddate.DateTime+1)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderNewListSEl.InitForm(); +begin + if FCloth<>1 then + ReadCxGrid('ָʾб10',Tv1,'ָʾ') + else + ReadCxGrid('ָʾбѡ',Tv1,'ָʾ'); + + if FCloth=1 then + begin + v1Column4.Visible:=True; + + end else + begin + v1Column4.Visible:=False; + end; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + //InitGrid(); +end; + +procedure TfrmProductOrderNewListSEl.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmProductOrderNewListSEl.DelData():Boolean; +begin +end; + +procedure TfrmProductOrderNewListSEl.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + InitGridFH(); + end else + begin + InitGrid(); + end; +end; + +procedure TfrmProductOrderNewListSEl.OrderNoChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderNewListSEl.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderNewListSEl.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmProductOrderNewListSEl.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderNewListSEl.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderNewListSEl.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderNewListSEl.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderNewListSEl.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewListSEl.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewListSEl.ToolButton3Click(Sender: TObject); +begin + ModalResult:=1; +end; + +procedure TfrmProductOrderNewListSEl.OrderNoKeyPress(Sender: TObject; + var Key: Char); +var + fsj:string; +begin +{ if Key=#13 then + begin + if Length(Trim(OrderNoM.Text))<4 then Exit; + fsj:='%'+Trim(OrderNoM.Text)+'%'; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql') ; + if Trim(DParameters1)<>'Ȩ' then + begin + Parameters.ParamByName('WSql').Value:=' and A.Filler='''+Trim(DName)+''''; + end else + begin + Parameters.ParamByName('WSql').Value:=' and A.OrderNo like '''+fsj+''''; + end; + Parameters.ParamByName('begdate').Value:='1900-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; } +end; + +procedure TfrmProductOrderNewListSEl.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + ToolButton3.Click; +end; + +end. diff --git a/坯布仓库/U_ZdyAttachCP.dfm b/坯布仓库/U_ZdyAttachCP.dfm new file mode 100644 index 0000000..5f149a1 --- /dev/null +++ b/坯布仓库/U_ZdyAttachCP.dfm @@ -0,0 +1,351 @@ +object frmZdyAttachCP: TfrmZdyAttachCP + Left = 108 + Top = 101 + Width = 1038 + Height = 618 + Caption = #20135#21697#36164#26009#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1022 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = BPCK_DataLink.ThreeImgList + Flat = True + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + Visible = False + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 374 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1022 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 191 + Top = 13 + Width = 48 + Height = 12 + Caption = #20135#21697#21517#31216 + end + object Label1: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #20135#21697#32534#21495 + end + object Label2: TLabel + Left = 369 + Top = 13 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object ZdyName: TEdit + Tag = 2 + Left = 241 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 71 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object DEFstr5: TComboBox + Tag = 1 + Left = 398 + Top = 8 + Width = 81 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 2 + OnChange = ZdyNameChange + Items.Strings = ( + #22383#24067 + #25104#21697 + '') + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1022 + Height = 510 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = BPCK_DataLink.SHuangSe + Styles.IncSearch = BPCK_DataLink.SHuangSe + Styles.Selection = BPCK_DataLink.SHuangSe + Styles.Header = BPCK_DataLink.handBlack + object v2Column2: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column6: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 124 + end + object v2Column11: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Width = 53 + end + object v2Column3: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column4: TcxGridDBColumn + Caption = #25104#20221 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v2Column5: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2DEFNote1: TcxGridDBColumn + Caption = #21517#31216 + DataBinding.FieldName = 'DEFNote1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 116 + end + object v2Column8: TcxGridDBColumn + Caption = #33457#21495 + DataBinding.FieldName = 'DEFstr4' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v2Column10: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'DEFstr6' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 61 + end + object v2Column9: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'DEFstr7' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v2Column7: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'DEFstr8' + HeaderAlignmentHorz = taCenter + Width = 61 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 114 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end +end diff --git a/坯布仓库/U_ZdyAttachCP.pas b/坯布仓库/U_ZdyAttachCP.pas new file mode 100644 index 0000000..de9f53a --- /dev/null +++ b/坯布仓库/U_ZdyAttachCP.pas @@ -0,0 +1,202 @@ +unit U_ZdyAttachCP; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmZdyAttachCP = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + ToolButton4: TToolButton; + Label2: TLabel; + DEFstr5: TComboBox; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column10: TcxGridDBColumn; + v2Column11: TcxGridDBColumn; + v2DEFNote1: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + { Private declarations } + procedure InitGrid(); + + public + + end; + +var + frmZdyAttachCP: TfrmZdyAttachCP; + +implementation +uses + U_DataLink,U_Fun10,U_ZDYHelp; + +{$R *.dfm} + + + +procedure TfrmZdyAttachCP.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where Type=''CP'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmZdyAttachCP.FormDestroy(Sender: TObject); +begin + frmZdyAttachCP:=nil; +end; + +procedure TfrmZdyAttachCP.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttachCP.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ʒ',Tv2,'ͻԶ'); + Close; +end; +procedure TfrmZdyAttachCP.TBDelClick(Sender: TObject); +begin +{ if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + sql.Add('delete KH_Zdy where ZdyNo='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; } +end; + +procedure TfrmZdyAttachCP.FormShow(Sender: TObject); +begin + ReadCxGrid('Ʒ',Tv2,'ͻԶ'); + InitGrid(); +end; + +procedure TfrmZdyAttachCP.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachCP.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmZdyAttachCP.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachCP.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + // SelExportData(Tv2,ADOQueryMain,'ͻб'); +end; + +procedure TfrmZdyAttachCP.ToolButton4Click(Sender: TObject); +begin +{ try + frmZdyAttInputCP:=TfrmZdyAttInputCP.Create(Application); + with frmZdyAttInputCP do + begin + FCYID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmZdyAttInputCP.Free; + end; } +end; + +procedure TfrmZdyAttachCP.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if CDS_HZ.IsEmpty then exit; + ModalResult:=1; +end; + +end. + + diff --git a/坯布仓库/U_ZdyAttachGYS.dfm b/坯布仓库/U_ZdyAttachGYS.dfm new file mode 100644 index 0000000..5a7adb1 --- /dev/null +++ b/坯布仓库/U_ZdyAttachGYS.dfm @@ -0,0 +1,331 @@ +object frmZdyAttachGYS: TfrmZdyAttachGYS + Left = 192 + Top = 103 + Width = 1038 + Height = 618 + Caption = #20379#24212#21830#36164#26009#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1022 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = BPCK_DataLink.ThreeImgList + Flat = True + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + Visible = False + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 374 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1022 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 203 + Top = 13 + Width = 60 + Height = 12 + Caption = #20379#24212#21830#21517#31216 + end + object Label1: TLabel + Left = 22 + Top = 13 + Width = 60 + Height = 12 + Caption = #20379#24212#21830#32534#21495 + end + object Label2: TLabel + Left = 395 + Top = 13 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object ZdyName: TEdit + Tag = 2 + Left = 267 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 83 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object DEFstr5: TComboBox + Tag = 1 + Left = 424 + Top = 8 + Width = 81 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 2 + OnChange = ZdyNameChange + Items.Strings = ( + #22383#24067 + #21152#24037#21378) + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1022 + Height = 510 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + OnDblClick = Tv2DblClick + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = BPCK_DataLink.SHuangSe + Styles.IncSearch = BPCK_DataLink.SHuangSe + Styles.Selection = BPCK_DataLink.SHuangSe + Styles.Header = BPCK_DataLink.handBlack + object v2Column6: TcxGridDBColumn + Caption = #20379#24212#21830#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 124 + end + object v2Column2: TcxGridDBColumn + Caption = #20379#24212#21830#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column8: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Width = 77 + end + object v2Column3: TcxGridDBColumn + Caption = #30005#35805 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column4: TcxGridDBColumn + Caption = #25163#26426 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v2Column5: TcxGridDBColumn + Caption = #20256#30495 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2Column7: TcxGridDBColumn + Caption = #20844#21496#22320#22336 + DataBinding.FieldName = 'DEFNote1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v2Column9: TcxGridDBColumn + Caption = #32852#31995#20154 + DataBinding.FieldName = 'DEFstr4' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 114 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end +end diff --git a/坯布仓库/U_ZdyAttachGYS.pas b/坯布仓库/U_ZdyAttachGYS.pas new file mode 100644 index 0000000..8b0c0a4 --- /dev/null +++ b/坯布仓库/U_ZdyAttachGYS.pas @@ -0,0 +1,213 @@ +unit U_ZdyAttachGYS; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmZdyAttachGYS = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + ToolButton4: TToolButton; + v2Column8: TcxGridDBColumn; + Label2: TLabel; + DEFstr5: TComboBox; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure Tv2DblClick(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + + public + + end; + +var + frmZdyAttachGYS: TfrmZdyAttachGYS; + +implementation +uses + U_DataLink,U_Fun10,U_ZDYHelp; + +{$R *.dfm} + + + +procedure TfrmZdyAttachGYS.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where Type=''GYS'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmZdyAttachGYS.FormDestroy(Sender: TObject); +begin + frmZdyAttachGYS:=nil; +end; + +procedure TfrmZdyAttachGYS.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttachGYS.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ӧ',Tv2); + Close; +end; +procedure TfrmZdyAttachGYS.TBDelClick(Sender: TObject); +begin +{ if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + sql.Add('delete KH_Zdy where ZdyNo='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete;} +end; + +procedure TfrmZdyAttachGYS.FormShow(Sender: TObject); +begin + ReadCxGrid('Ӧ',Tv2); + InitGrid(); +end; + +procedure TfrmZdyAttachGYS.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachGYS.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmZdyAttachGYS.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachGYS.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; +// SelExportData(Tv2,ADOQueryMain,'ͻб'); +end; + +procedure TfrmZdyAttachGYS.ToolButton4Click(Sender: TObject); +begin +{ try + frmZdyAttInputGYS:=TfrmZdyAttInputGYS.Create(Application); + with frmZdyAttInputGYS do + begin + FCYID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmZdyAttInputGYS.Free; + end; } +end; + +procedure TfrmZdyAttachGYS.ToolButton3Click(Sender: TObject); +begin +{ try + frmZdyAttInputGYS:=TfrmZdyAttInputGYS.Create(Application); + with frmZdyAttInputGYS do + begin + FCYID:=''; + if ShowModal=1 then + begin + + end; + end; + finally + frmZdyAttInputGYS.Free; + end; } +end; + +procedure TfrmZdyAttachGYS.Tv2DblClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then exit; + ModalResult:=1; +end; + +end. + + diff --git a/坯布仓库/U_ZdyAttachment.dfm b/坯布仓库/U_ZdyAttachment.dfm new file mode 100644 index 0000000..229c212 --- /dev/null +++ b/坯布仓库/U_ZdyAttachment.dfm @@ -0,0 +1,332 @@ +object frmZdyAttachment: TfrmZdyAttachment + Left = 130 + Top = 99 + Width = 1091 + Height = 577 + Caption = #23458#25143#36164#26009#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1075 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = BPCK_DataLink.ThreeImgList + Flat = True + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + Visible = False + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 374 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1075 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 190 + Top = 13 + Width = 48 + Height = 12 + Caption = #23458#25143#21517#31216 + end + object Label1: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #23458#25143#32534#21495 + end + object Label2: TLabel + Left = 350 + Top = 13 + Width = 36 + Height = 12 + Caption = #19994#21153#21592 + end + object ZdyName: TEdit + Tag = 2 + Left = 238 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 70 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object DEFstr5: TEdit + Tag = 2 + Left = 388 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 2 + OnChange = ZdyNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1075 + Height = 469 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = BPCK_DataLink.SHuangSe + Styles.IncSearch = BPCK_DataLink.SHuangSe + Styles.Selection = BPCK_DataLink.SHuangSe + Styles.Header = BPCK_DataLink.handBlack + object v2Column2: TcxGridDBColumn + Caption = #23458#25143#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 86 + end + object v2Column6: TcxGridDBColumn + Caption = #23458#25143#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 127 + end + object v2Column10: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Width = 56 + end + object v2Column3: TcxGridDBColumn + Caption = #30005#35805 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 71 + end + object v2Column4: TcxGridDBColumn + Caption = #25163#26426 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v2Column5: TcxGridDBColumn + Caption = #20256#30495 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2Column7: TcxGridDBColumn + Caption = #20844#21496#22320#22336 + DataBinding.FieldName = 'DEFNote1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 67 + end + object v2Column8: TcxGridDBColumn + Caption = #21457#36135#22320#22336 + DataBinding.FieldName = 'DEFNote2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column9: TcxGridDBColumn + Caption = #32852#31995#20154 + DataBinding.FieldName = 'DEFstr4' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 165 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end +end diff --git a/坯布仓库/U_ZdyAttachment.pas b/坯布仓库/U_ZdyAttachment.pas new file mode 100644 index 0000000..af6d22d --- /dev/null +++ b/坯布仓库/U_ZdyAttachment.pas @@ -0,0 +1,202 @@ +unit U_ZdyAttachment; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmZdyAttachment = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + v2Column10: TcxGridDBColumn; + ToolButton4: TToolButton; + Label2: TLabel; + DEFstr5: TEdit; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + { Private declarations } + procedure InitGrid(); + + public + fkhType:string; + + end; + +var + frmZdyAttachment: TfrmZdyAttachment; + +implementation +uses + U_DataLink,U_Fun10,U_ZDYHelp; + +{$R *.dfm} + + + +procedure TfrmZdyAttachment.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where Type=''KHName'' '); + // sql.Add(' and isnull(khType,'''')='+quotedstr(trim(fkhType))); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmZdyAttachment.FormDestroy(Sender: TObject); +begin + frmZdyAttachment:=nil; +end; + +procedure TfrmZdyAttachment.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttachment.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ͻ',Tv2,'ͻԶ'); + Close; +end; +procedure TfrmZdyAttachment.TBDelClick(Sender: TObject); +begin +{ if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + sql.Add('delete KH_Zdy where ZdyNo='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; } +end; + +procedure TfrmZdyAttachment.FormShow(Sender: TObject); +begin + ReadCxGrid('ͻ',Tv2,'ͻԶ'); + InitGrid(); +end; + +procedure TfrmZdyAttachment.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachment.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmZdyAttachment.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachment.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + // SelExportData(Tv2,ADOQueryMain,'ͻб'); +end; + +procedure TfrmZdyAttachment.ToolButton4Click(Sender: TObject); +begin +{ try + frmZdyAttInput:=TfrmZdyAttInput.Create(Application); + with frmZdyAttInput do + begin + FCYID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmZdyAttInput.Free; + end; } +end; + +procedure TfrmZdyAttachment.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if CDS_HZ.IsEmpty then exit; + ModalResult:=1; +end; + +end. + + diff --git a/坯布仓库/U_ZdyYS_Sel.dfm b/坯布仓库/U_ZdyYS_Sel.dfm new file mode 100644 index 0000000..fcb11ef --- /dev/null +++ b/坯布仓库/U_ZdyYS_Sel.dfm @@ -0,0 +1,278 @@ +object frmZdyYS_Sel: TfrmZdyYS_Sel + Left = 1087 + Top = 274 + Width = 813 + Height = 662 + Caption = #39068#33394 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 797 + Height = 592 + Align = alClient + Caption = 'Panel1' + TabOrder = 0 + object cxGrid2: TcxGrid + Left = 1 + Top = 40 + Width = 795 + Height = 551 + Align = alClient + TabOrder = 0 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + OnFocusedRecordChanged = Tv2FocusedRecordChanged + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = BPCK_DataLink.SHuangSe + Styles.IncSearch = BPCK_DataLink.SHuangSe + Styles.Selection = BPCK_DataLink.SHuangSe + Styles.Header = BPCK_DataLink.handBlack + object Tv2Column1: TcxGridDBColumn + OnGetDisplayText = Tv2Column1GetDisplayText + MinWidth = 30 + Options.HorzSizing = False + Width = 30 + IsCaptionAssigned = True + end + object v2Column2: TcxGridDBColumn + Caption = #39068#33394#20195#21495 + DataBinding.FieldName = 'Code' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 80 + end + object v2Column6: TcxGridDBColumn + Caption = #39068#33394#21517#31216 + DataBinding.FieldName = 'CodeName' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 200 + end + object v2Column14: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 147 + end + object Tv2Column2: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object Panel2: TPanel + Left = 1 + Top = 1 + Width = 795 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 231 + Top = 13 + Width = 48 + Height = 12 + Caption = #39068#33394#21517#31216 + end + object Label1: TLabel + Left = 34 + Top = 13 + Width = 48 + Height = 12 + Caption = #39068#33394#20195#21495 + end + object CodeName: TEdit + Tag = 2 + Left = 281 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 0 + OnChange = CodeNameChange + end + object Code: TEdit + Tag = 2 + Left = 83 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 1 + OnChange = CodeChange + end + object Edit1: TEdit + Tag = 2 + Left = 457 + Top = 13 + Width = 100 + Height = 20 + TabOrder = 2 + Visible = False + end + end + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 797 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = BPCK_DataLink.ThreeImgList + Flat = True + Images = BPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 1 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + Visible = False + OnClick = TBRafreshClick + end + object ToolButton1: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 41 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ADOQueryTemp: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 357 + Top = 73 + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 401 + Top = 145 + end + object ADOQueryMain: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 125 + Top = 169 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 320 + Top = 148 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 160 + Top = 176 + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 356 + Top = 164 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 247 + Top = 171 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 204 + Top = 172 + end + object DSsub: TDataSource + DataSet = CDSsub + Left = 512 + Top = 272 + end + object CDSsub: TClientDataSet + Aggregates = <> + Params = <> + Left = 540 + Top = 268 + end + object ADOQuerysub: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 484 + Top = 276 + end +end diff --git a/坯布仓库/U_ZdyYS_Sel.pas b/坯布仓库/U_ZdyYS_Sel.pas new file mode 100644 index 0000000..e2bfa3e --- /dev/null +++ b/坯布仓库/U_ZdyYS_Sel.pas @@ -0,0 +1,307 @@ +unit U_ZdyYS_Sel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls, + cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, + cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; + +type + TfrmZdyYS_Sel = class(TForm) + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + DSsub: TDataSource; + CDSsub: TClientDataSet; + ADOQuerysub: TADOQuery; + Panel1: TPanel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column2: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v2Column14: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + Tv2Column1: TcxGridDBColumn; + ToolButton1: TToolButton; + Panel2: TPanel; + Label3: TLabel; + Label1: TLabel; + CodeName: TEdit; + Code: TEdit; + Tv2Column2: TcxGridDBColumn; + Edit1: TEdit; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure TV1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); + procedure Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure v2Column6PropertiesEditValueChanged(Sender: TObject); + procedure Tv2Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); + procedure CodeChange(Sender: TObject); + procedure CodeNameChange(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + procedure InitSub(); + public + fDEFstr5: string; + end; + +var + frmZdyYS_Sel: TfrmZdyYS_Sel; + +implementation + +uses + U_DataLink, U_Fun, U_ZDYHelp; //, U_ZdyAttInputGYS, U_ZdyAttachCP10_help + +{$R *.dfm} + +procedure TfrmZdyYS_Sel.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + SQL.Clear; + sql.Add(' select mainid=cast(mainid as varchar(30)),* from CP_CMYS where Type=''ɫ'' '); + Open; + end; + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmZdyYS_Sel.InitSub(); +begin + with ADOQuerysub do + begin + Close; + SQL.Clear; + sql.Add(' select subid=cast(subid as varchar(30)),* from CP_CMYS_Sub where Mainid=''' + cds_hz.fieldbyname('Mainid').AsString + ''' '); +// ShowMessage(sql.Text); + Open; + end; + SCreateCDS20(ADOQuerysub, CDSsub); + SInitCDSData20(ADOQuerysub, CDSsub); +end; + +procedure TfrmZdyYS_Sel.FormDestroy(Sender: TObject); +begin + frmZdyYS_Sel := nil; +end; + +procedure TfrmZdyYS_Sel.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmZdyYS_Sel.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption, Tv2, 'ͻԶ'); + Close; +end; + +procedure TfrmZdyYS_Sel.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption, Tv2, 'ͻԶ'); + + InitGrid(); +end; + +procedure TfrmZdyYS_Sel.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyYS_Sel.Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + if cds_hz.IsEmpty then + exit; + self.ModalResult := 1; +end; + +procedure TfrmZdyYS_Sel.TV1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); +begin + AText := IntToStr(ARecord.Index + 1); +end; + +procedure TfrmZdyYS_Sel.Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + initsub(); +end; + +procedure TfrmZdyYS_Sel.ToolButton1Click(Sender: TObject); +var + Maxno, x, y: string; +begin + if cds_hz.IsEmpty then + exit; + try + CDS_HZ.DisableControls; + ADOQueryCmd.Connection.BeginTrans; + with CDS_HZ do + begin + First; + while not Eof do + begin + if CDS_HZ.FieldByName('SSel').AsBoolean then + begin + x := CDS_HZ.FieldByName('CodeName').AsString; + if y = '' then + begin + y := x; + end + else + begin + y := y + ',' + x; + end; + + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + CDS_HZ.EnableControls; + except + ADOQueryCmd.Connection.RollbackTrans; + CDS_HZ.EnableControls; + end; + Edit1.Text := Trim(y); + self.ModalResult := 1; +end; + +procedure TfrmZdyYS_Sel.ToolButton3Click(Sender: TObject); +var + FMainid: string; +begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from CP_CMYS_Sub where 1<>1'); + Open; + + Append; + fieldbyname('Mainid').Value := CDS_HZ.fieldbyname('Mainid').AsString; + Post; + end; + + InitSub(); +end; + +procedure TfrmZdyYS_Sel.ToolButton2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾɫ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CP_CMYS where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; + CDS_HZ.Delete; +end; + +procedure TfrmZdyYS_Sel.ToolButton4Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CP_CMYS_Sub where Subid=''' + Trim(CDSsub.fieldbyname('Subid').AsString) + ''''); + ExecSQL; + end; + CDSsub.Delete; +end; + +procedure TfrmZdyYS_Sel.v2Column6PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := ''; + end; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate CP_CMYS '); + sql.Add(' Set ' + FFieldName + '=' + Trim(mvalue)); + SQL.Add(' where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; +end; + +procedure TfrmZdyYS_Sel.Tv2Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); +begin + AText := IntToStr(ARecord.Index + 1) +end; + +procedure TfrmZdyYS_Sel.CodeChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel2, 1, 2)); + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + end; +end; + +procedure TfrmZdyYS_Sel.CodeNameChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel2, 1, 2)); + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + end; +end; + +end. + diff --git a/坯布仓库/U_testdll.dfm b/坯布仓库/U_testdll.dfm new file mode 100644 index 0000000..80d4cc0 --- /dev/null +++ b/坯布仓库/U_testdll.dfm @@ -0,0 +1,221 @@ +object Form1: TForm1 + Left = 97 + Top = 122 + Width = 791 + Height = 554 + Caption = 'Form1' + Color = clBtnFace + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + FormStyle = fsMDIForm + Menu = MainMenu1 + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnResize = FormResize + PixelsPerInch = 96 + TextHeight = 13 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 783 + Height = 25 + ButtonWidth = 57 + Caption = 'ToolBar1' + Flat = True + Images = ImageList1 + TabOrder = 0 + object Edit1: TEdit + Left = 0 + Top = 0 + Width = 81 + Height = 22 + TabOrder = 0 + Text = '1' + end + object ToolButton1: TToolButton + Left = 81 + Top = 0 + Caption = #20851#38381 + ImageIndex = 0 + OnClick = ToolButton1Click + end + object Label1: TLabel + Left = 138 + Top = 0 + Width = 79 + Height = 22 + Caption = ' DllName'#65306 + end + object DllName: TEdit + Left = 217 + Top = 0 + Width = 135 + Height = 22 + TabOrder = 1 + end + end + object MainMenu1: TMainMenu + Left = 232 + Top = 40 + object test1: TMenuItem + Caption = 'test' + OnClick = test1Click + end + end + object ImageList1: TImageList + Left = 320 + Top = 56 + Bitmap = { + 494C010101000400040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 + 0000000000003600000028000000400000001000000001002000000000000010 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000EFEFEF000000 + 0000EFEFEF00EFEFEF000000000000000000EFEFEF0000000000000000000000 + 0000EFEFEF00EFEFEF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000EFEFEF0000000000EFEFEF00EFEFEF0000000000EFEFEF00000000008080 + 00008080000000000000C0C0C000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EFEFEF00EFEFEF000000 + 0000EFEFEF00EFEFEF000000000000000000C0C0C00000000000000000008080 + 00008080000080800000EFEFEF00EFEFEF000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFEFEF0000000000000000000000000000000000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFEFEF0000000000808080008080800080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000008080000000000000808080008080800080808000000000008080 + 0000000000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000EFEFEF00EFEF + EF0000000000FFFF000080800000000000008080800080808000000000000000 + 0000000000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000FFFF0000FFFF0000808000000000000080808000000000008080 + 0000000000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000808000008080 + 000080800000FFFF0000FFFF0000FFFF00000000000080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000FFFF0000FFFF + 0000FFFF0000FFFF000000000000FFFF00000000000080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000FFFF0000FFFF0000FFFF00000000000080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000808000000000000080808000808080008080800080808000FFFF + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000808080008080800080808000808080000000 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000424D3E000000000000003E000000 + 2800000040000000100000000100010000000000800000000000000000000000 + 000000000000000000000000FFFFFF00FFFF000000000000D343000000000000 + F4810000000000009340000000000000F801000000000000F001000000000000 + F001000000000000C001000000000000C001000000000000C001000000000000 + C201000000000000C001000000000000F001000000000000F001000000000000 + FC03000000000000FFFF00000000000000000000000000000000000000000000 + 000000000000} + end + object ADOConnection1: TADOConnection + ConnectionString = + 'Provider=SQLOLEDB.1;Password=sa;Persist Security Info=True;User ' + + 'ID=sa;Initial Catalog=rzdata;Data Source=6GMFFMYKYMJDZW7' + LoginPrompt = False + Provider = 'SQLOLEDB.1' + Left = 408 + Top = 64 + end +end diff --git a/坯布仓库/U_testdll.pas b/坯布仓库/U_testdll.pas new file mode 100644 index 0000000..e990908 --- /dev/null +++ b/坯布仓库/U_testdll.pas @@ -0,0 +1,106 @@ +unit U_testdll; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ExtCtrls, StdCtrls, Menus, ToolWin, ComCtrls, ImgList, DB, ADODB; + +type + TForm1 = class(TForm) + MainMenu1: TMainMenu; + test1: TMenuItem; + ToolBar1: TToolBar; + Edit1: TEdit; + ToolButton1: TToolButton; + ImageList1: TImageList; + ADOConnection1: TADOConnection; + DllName: TEdit; + Label1: TLabel; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure test1Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure FormResize(Sender: TObject); + private + { Private declarations } + public + { Public declarations } + end; + +var + Form1: TForm1; + newh:hwnd; + +implementation + +{$R *.dfm} + +procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); +begin + sendmessage(newh,1034,4,0); + action:=cafree; +end; + +procedure TForm1.test1Click(Sender: TObject); +type + TMyFunc = function(App:Tapplication; FormH:hwnd; FormID:integer; + Language: integer; WinStyle:integer; + GCode: Pchar; GName: Pchar; DataBase:Pchar;Title:PChar; + Parameters1:PChar;Parameters2:PChar;Parameters3:PChar;Parameters4:PChar; + Parameters5:PChar;Parameters6:PChar;Parameters7:PChar;Parameters8:PChar; + Parameters9:PChar;Parameters10:PChar;DataBaseStr:PChar):hwnd;stdcall; +var + Tf: TMyFunc; + Tp: TFarProc; + Th:Thandle; +begin + //̬ + //newh:=getForm(Application,1,ADOConnection1,PChar('sa'),PChar('dsa')); + + //̬ + // showMessage(intTostr(application.Handle)); + Th := LoadLibrary('BPCK.dll'); + if Th > 0 then + begin + try + Tp := GetProcAddress(Th, 'GetDllForm'); + if Tp <> nil then + begin + Tf := TMyFunc(Tp); + newh:=Tf(Application,0,strToint(edit1.text),0,0, + PChar('sa'), + PChar('dsa'), + PChar('bsa'), + PChar('tsa'), + PChar('d1sa'), + PChar('d2sa'), + '','','','','','','','','' + ); + end + else + begin + ShowMessage('ӡִд'); + end; + finally + // FreeLibrary(); + end; + end + else + begin + ShowMessage('Ҳ'+Trim(DllName.Text)); + end; + +end; + +procedure TForm1.ToolButton1Click(Sender: TObject); +begin + close; +end; + +procedure TForm1.FormResize(Sender: TObject); +begin + sendmessage(newh,1034,1,0); +end; + +end. + diff --git a/坯布仓库/consvr.ini b/坯布仓库/consvr.ini new file mode 100644 index 0000000..3a03c34 --- /dev/null +++ b/坯布仓库/consvr.ini @@ -0,0 +1,2 @@ +[SERVER] +SERVER=192.168.88.254 \ No newline at end of file diff --git a/坯布仓库/testDll.cfg b/坯布仓库/testDll.cfg new file mode 100644 index 0000000..9db56f1 --- /dev/null +++ b/坯布仓库/testDll.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\borland\delphi7\Projects\Bpl" +-LN"d:\program files\borland\delphi7\Projects\Bpl" +-w-UNSAFE_TYPE +-w-UNSAFE_CODE +-w-UNSAFE_CAST diff --git a/坯布仓库/testDll.dof b/坯布仓库/testDll.dof new file mode 100644 index 0000000..e61bd28 --- /dev/null +++ b/坯布仓库/testDll.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=E:\ѧ\\Ŀ10\ljb\ֿ\testDll.exe +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/坯布仓库/testDll.dpr b/坯布仓库/testDll.dpr new file mode 100644 index 0000000..4be4b8a --- /dev/null +++ b/坯布仓库/testDll.dpr @@ -0,0 +1,14 @@ +program testDll; + +uses + Forms, + U_testdll in 'U_testdll.pas' {Form1}; + +{$R *.res} + +begin + Application.Initialize; + Application.CreateForm(TForm1, Form1); + Application.Run; +end. + diff --git a/坯布仓库/testDll.res b/坯布仓库/testDll.res new file mode 100644 index 0000000000000000000000000000000000000000..2d6f24c3d9a870364649288b1c0306b551768325 GIT binary patch literal 876 zcmaJ=Jx{|h5Pc?9%tTwkz(g}L7BMg|6oiDt01W(ruz1OWgw!H+AXAn~{FzE^Brlox z9gK_}J0Q&SIVr99IQ9AN-MzD~Rtx|M;amX24SU~e>Jc?cYMoANyAd5SNQg5+p~aQP zp5HA8_(Prt$CV+GqpB(v{1D!`;JAjld@@+K+i61a|MTdsd{~!%b1ms_KJEh}cpe(` z6jA?@e29>sU}iiwp;b>~TL@2U!O)h%Yr)7`8+a;b=@mD^tI-VbODr7!U{0?gh%d@~e3Ro)^HNMvvU1UHt)HYrq~&L`&fQ16Y1SeYiaObZ>3v kZ4W@7aBc_JIL8%khzs1(H@5yR{A*B1l9s#*|B4j80N@tIJOBUy literal 0 HcmV?d00001 diff --git a/基础资料维护(BaseInfo.dll)/BaseInfo.cfg b/基础资料维护(BaseInfo.dll)/BaseInfo.cfg new file mode 100644 index 0000000..7876259 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/BaseInfo.cfg @@ -0,0 +1,42 @@ +-$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"c:\program files (x86)\borland\delphi7\Projects\Bpl" +-LN"c:\program files (x86)\borland\delphi7\Projects\Bpl" +-U"D:\ͨERP" +-O"D:\ͨERP" +-I"D:\ͨERP" +-R"D:\ͨERP" +-w-UNSAFE_TYPE +-w-UNSAFE_CODE +-w-UNSAFE_CAST diff --git a/基础资料维护(BaseInfo.dll)/BaseInfo.dof b/基础资料维护(BaseInfo.dll)/BaseInfo.dof new file mode 100644 index 0000000..0f3a56b --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/BaseInfo.dof @@ -0,0 +1,138 @@ +[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=D:\ͨERP +Packages=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;dclOffice2k;Rave50CLX;Rave50VCL +Conditionals= +DebugSourceDirs= +UsePackages=0 +[Parameters] +RunParams= +HostApplication=D:\Ŀ\Ŀ\\ά(BaseInfo.dll)\testDll.exe +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= +[Excluded Packages] +c:\program files\borland\delphi7\Bin\DBWEBXPRT.BPL=Borland Web Wizard Package diff --git a/基础资料维护(BaseInfo.dll)/BaseInfo.dpr b/基础资料维护(BaseInfo.dll)/BaseInfo.dpr new file mode 100644 index 0000000..81e4a77 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/BaseInfo.dpr @@ -0,0 +1,64 @@ +library BaseInfo; + +uses + SysUtils, + classes, + forms, + WinTypes, + WinProcs, + U_DataLink in 'U_DataLink.pas' {DataLink_BaseInfo: TDataModule}, + U_GetDllForm in 'U_GetDllForm.pas', + U_Fun in '..\..\..\ThreeFun\Fun\U_Fun.pas', + U_ZDYHelp in '..\..\..\ThreeFun\Form\U_ZDYHelp.pas' {frmZDYHelp}, + U_SelExportField in '..\..\..\ThreeFun\Form\U_SelExportField.pas' {frmSelExportField}, + U_ColumnSet in '..\..\..\ThreeFun\Form\U_ColumnSet.pas' {frmColumnSet}, + U_ColumnBandSet in '..\..\..\ThreeFun\Form\U_ColumnBandSet.pas' {frmColumnBandSet}, + U_SelPrintFieldNew in '..\..\..\ThreeFun\Form\U_SelPrintFieldNew.pas' {frmSelPrintFieldNew}, + U_ZdyAttInputCP in 'U_ZdyAttInputCP.pas' {frmZdyAttInputCP}, + U_ZdyAttachCP10_help in 'U_ZdyAttachCP10_help.pas' {frmZdyAttachCP10_help}, + U_ZdyInput in 'U_ZdyInput.pas' {frmZdyInput}, + U_HZViewList in 'U_HZViewList.pas' {frmHZViewList}, + U_NengHaoInput in 'U_NengHaoInput.pas' {frmNengHaoInput}, + U_CPKWList in 'U_CPKWList.pas' {frmCPKWList}, + U_Fun10 in '..\..\..\ThreeFun\Fun\U_Fun10.pas', + U_ZdyAttachmentBJ_Edit in 'U_ZdyAttachmentBJ_Edit.pas' {frmZdyAttachmentBJ_Edit}, + getpic in 'getpic.pas' {FormGetPic}, + U_ZDYHelpSel in '..\..\..\ThreeFun\Form\U_ZDYHelpSel.pas' {frmZDYHelpSel}, + U_ZdyYS_Sel in '..\Ʒֿ\U_ZdyYS_Sel.pas' {frmZdyYS_Sel}, + U_FjList_RZ in 'U_FjList_RZ.pas' {frmFjList_RZ}, + U_CompressionFun in '..\..\..\ThreeFun\Fun\U_CompressionFun.pas', + U_ZdyCMZ_Sel in '..\Ʒֿ\U_ZdyCMZ_Sel.pas' {frmZdyCMZ_Sel}; + +// U_SelfForm in '..\..\SelfForm\U_SelfForm.pas', + // U_SelExportField in '..\..\SelfForm\U_SelExportField.pas' {frmSelExportField}, + // U_SelPrintField in '..\..\SelfForm\U_SelPrintField.pas' {frmSelPrintField}, + // U_SelPrintFieldNew in '..\..\SelfForm\U_SelPrintFieldNew.pas' {frmSelPrintFieldNew}, + //U_FormPas in '..\CommonPas\formPas\U_FormPas.pas', + //U_CxGridSet in '..\CommonPas\cxgridPas\U_CxGridSet.pas'; + +//U_RSFormPas in '..\CommonPas\RSCommon\U_RSFormPas.pas'; + +{$R *.res} + +procedure DllEnterPoint(dwReason: DWORD);far;stdcall; +begin + DLLProc := @DLLEnterPoint; + DllEnterPoint(DLL_PROCESS_ATTACH); +end; + +procedure DLLUnloadProc(Reason: Integer); register; +begin +// if (Reason = DLL_PROCESS_DETACH) or (Reason=DLL_THREAD_DETACH) then +// Application:=NewDllApp; +end; +exports + GetDllForm; +begin + try + NewDllApp:=Application; + DLLProc := @DLLUnloadProc; + except + + end; +end. + diff --git a/基础资料维护(BaseInfo.dll)/BaseInfo.res b/基础资料维护(BaseInfo.dll)/BaseInfo.res new file mode 100644 index 0000000000000000000000000000000000000000..2d6f24c3d9a870364649288b1c0306b551768325 GIT binary patch literal 876 zcmaJ=Jx{|h5Pc?9%tTwkz(g}L7BMg|6oiDt01W(ruz1OWgw!H+AXAn~{FzE^Brlox z9gK_}J0Q&SIVr99IQ9AN-MzD~Rtx|M;amX24SU~e>Jc?cYMoANyAd5SNQg5+p~aQP zp5HA8_(Prt$CV+GqpB(v{1D!`;JAjld@@+K+i61a|MTdsd{~!%b1ms_KJEh}cpe(` z6jA?@e29>sU}iiwp;b>~TL@2U!O)h%Yr)7`8+a;b=@mD^tI-VbODr7!U{0?gh%d@~e3Ro)^HNMvvU1UHt)HYrq~&L`&fQ16Y1SeYiaObZ>3v kZ4W@7aBc_JIL8%khzs1(H@5yR{A*B1l9s#*|B4j80N@tIJOBUy literal 0 HcmV?d00001 diff --git a/基础资料维护(BaseInfo.dll)/CPCK.cfg b/基础资料维护(BaseInfo.dll)/CPCK.cfg new file mode 100644 index 0000000..08e3903 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/CPCK.cfg @@ -0,0 +1,42 @@ +-$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"c:\program files\borland\delphi7\Projects\Bpl" +-LN"c:\program files\borland\delphi7\Projects\Bpl" +-U"D:\ͨERP" +-O"D:\ͨERP" +-I"D:\ͨERP" +-R"D:\ͨERP" +-w-UNSAFE_TYPE +-w-UNSAFE_CODE +-w-UNSAFE_CAST diff --git a/基础资料维护(BaseInfo.dll)/CPCK.dof b/基础资料维护(BaseInfo.dll)/CPCK.dof new file mode 100644 index 0000000..9bc7f91 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/CPCK.dof @@ -0,0 +1,138 @@ +[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=D:\ͨERP +Packages=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;dclOffice2k;Rave50CLX;Rave50VCL +Conditionals= +DebugSourceDirs= +UsePackages=0 +[Parameters] +RunParams= +HostApplication=F:\selfware_83398\selfware\ֿ\Ŀ\self\Dllʼ\testDll.exe +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= +[Excluded Packages] +c:\program files\borland\delphi7\Bin\DBWEBXPRT.BPL=Borland Web Wizard Package diff --git a/基础资料维护(BaseInfo.dll)/CPCK.res b/基础资料维护(BaseInfo.dll)/CPCK.res new file mode 100644 index 0000000000000000000000000000000000000000..2d6f24c3d9a870364649288b1c0306b551768325 GIT binary patch literal 876 zcmaJ=Jx{|h5Pc?9%tTwkz(g}L7BMg|6oiDt01W(ruz1OWgw!H+AXAn~{FzE^Brlox z9gK_}J0Q&SIVr99IQ9AN-MzD~Rtx|M;amX24SU~e>Jc?cYMoANyAd5SNQg5+p~aQP zp5HA8_(Prt$CV+GqpB(v{1D!`;JAjld@@+K+i61a|MTdsd{~!%b1ms_KJEh}cpe(` z6jA?@e29>sU}iiwp;b>~TL@2U!O)h%Yr)7`8+a;b=@mD^tI-VbODr7!U{0?gh%d@~e3Ro)^HNMvvU1UHt)HYrq~&L`&fQ16Y1SeYiaObZ>3v kZ4W@7aBc_JIL8%khzs1(H@5yR{A*B1l9s#*|B4j80N@tIJOBUy literal 0 HcmV?d00001 diff --git a/基础资料维护(BaseInfo.dll)/FieldExportSet/产品资料列表.INI b/基础资料维护(BaseInfo.dll)/FieldExportSet/产品资料列表.INI new file mode 100644 index 0000000..cb61921 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/FieldExportSet/产品资料列表.INI @@ -0,0 +1,2 @@ +[] +ֶ=Begin/Ʒ/Ʒ///ɷ/ɫ//ɫ/ŷ//ע///ƻ(%) diff --git a/基础资料维护(BaseInfo.dll)/FieldExportSet/客户资料列表.INI b/基础资料维护(BaseInfo.dll)/FieldExportSet/客户资料列表.INI new file mode 100644 index 0000000..cb61921 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/FieldExportSet/客户资料列表.INI @@ -0,0 +1,2 @@ +[] +ֶ=Begin/Ʒ/Ʒ///ɷ/ɫ//ɫ/ŷ//ע///ƻ(%) diff --git a/基础资料维护(BaseInfo.dll)/JCInfoSet.cfg b/基础资料维护(BaseInfo.dll)/JCInfoSet.cfg new file mode 100644 index 0000000..08e3903 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/JCInfoSet.cfg @@ -0,0 +1,42 @@ +-$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"c:\program files\borland\delphi7\Projects\Bpl" +-LN"c:\program files\borland\delphi7\Projects\Bpl" +-U"D:\ͨERP" +-O"D:\ͨERP" +-I"D:\ͨERP" +-R"D:\ͨERP" +-w-UNSAFE_TYPE +-w-UNSAFE_CODE +-w-UNSAFE_CAST diff --git a/基础资料维护(BaseInfo.dll)/JCInfoSet.dof b/基础资料维护(BaseInfo.dll)/JCInfoSet.dof new file mode 100644 index 0000000..9bc7f91 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/JCInfoSet.dof @@ -0,0 +1,138 @@ +[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=D:\ͨERP +Packages=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;dclOffice2k;Rave50CLX;Rave50VCL +Conditionals= +DebugSourceDirs= +UsePackages=0 +[Parameters] +RunParams= +HostApplication=F:\selfware_83398\selfware\ֿ\Ŀ\self\Dllʼ\testDll.exe +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= +[Excluded Packages] +c:\program files\borland\delphi7\Bin\DBWEBXPRT.BPL=Borland Web Wizard Package diff --git a/基础资料维护(BaseInfo.dll)/JCInfoSet.res b/基础资料维护(BaseInfo.dll)/JCInfoSet.res new file mode 100644 index 0000000000000000000000000000000000000000..2d6f24c3d9a870364649288b1c0306b551768325 GIT binary patch literal 876 zcmaJ=Jx{|h5Pc?9%tTwkz(g}L7BMg|6oiDt01W(ruz1OWgw!H+AXAn~{FzE^Brlox z9gK_}J0Q&SIVr99IQ9AN-MzD~Rtx|M;amX24SU~e>Jc?cYMoANyAd5SNQg5+p~aQP zp5HA8_(Prt$CV+GqpB(v{1D!`;JAjld@@+K+i61a|MTdsd{~!%b1ms_KJEh}cpe(` z6jA?@e29>sU}iiwp;b>~TL@2U!O)h%Yr)7`8+a;b=@mD^tI-VbODr7!U{0?gh%d@~e3Ro)^HNMvvU1UHt)HYrq~&L`&fQ16Y1SeYiaObZ>3v kZ4W@7aBc_JIL8%khzs1(H@5yR{A*B1l9s#*|B4j80N@tIJOBUy literal 0 HcmV?d00001 diff --git a/基础资料维护(BaseInfo.dll)/ProjectGroup1.bpg b/基础资料维护(BaseInfo.dll)/ProjectGroup1.bpg new file mode 100644 index 0000000..e6b2914 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/ProjectGroup1.bpg @@ -0,0 +1,20 @@ +#------------------------------------------------------------------------------ +VERSION = BWS.01 +#------------------------------------------------------------------------------ +!ifndef ROOT +ROOT = $(MAKEDIR)\.. +!endif +#------------------------------------------------------------------------------ +MAKE = $(ROOT)\bin\make.exe -$(MAKEFLAGS) -f$** +DCC = $(ROOT)\bin\dcc32.exe $** +BRCC = $(ROOT)\bin\brcc32.exe $** +#------------------------------------------------------------------------------ +PROJECTS = testDll.exe +#------------------------------------------------------------------------------ +default: $(PROJECTS) +#------------------------------------------------------------------------------ + +testDll.exe: testDll.dpr + $(DCC) + + diff --git a/基础资料维护(BaseInfo.dll)/ProjectGroup1.~bpg b/基础资料维护(BaseInfo.dll)/ProjectGroup1.~bpg new file mode 100644 index 0000000..7c050f6 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/ProjectGroup1.~bpg @@ -0,0 +1,23 @@ +#------------------------------------------------------------------------------ +VERSION = BWS.01 +#------------------------------------------------------------------------------ +!ifndef ROOT +ROOT = $(MAKEDIR)\.. +!endif +#------------------------------------------------------------------------------ +MAKE = $(ROOT)\bin\make.exe -$(MAKEFLAGS) -f$** +DCC = $(ROOT)\bin\dcc32.exe $** +BRCC = $(ROOT)\bin\brcc32.exe $** +#------------------------------------------------------------------------------ +PROJECTS = testDll.exe ProductPrice.dll +#------------------------------------------------------------------------------ +default: $(PROJECTS) +#------------------------------------------------------------------------------ + +testDll.exe: testDll.dpr + $(DCC) + +ProductPrice.dll: ProductPrice.dpr + $(DCC) + + diff --git a/基础资料维护(BaseInfo.dll)/SYSTEMSET.ini b/基础资料维护(BaseInfo.dll)/SYSTEMSET.ini new file mode 100644 index 0000000..f185e50 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/SYSTEMSET.ini @@ -0,0 +1,6 @@ +[SERVER] +ַ=139.224.12.182 +ַ=15 +ǷԶ=1 +=Ƿι + diff --git a/基础资料维护(BaseInfo.dll)/U_CPKWEdit.dfm b/基础资料维护(BaseInfo.dll)/U_CPKWEdit.dfm new file mode 100644 index 0000000..32cf7e0 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_CPKWEdit.dfm @@ -0,0 +1,201 @@ +object frmCPKWEdit: TfrmCPKWEdit + Left = 215 + Top = 191 + Width = 920 + Height = 370 + Caption = #20179#20301#36755#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 904 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object ToolButton3: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 31 + Width = 904 + Height = 300 + Align = alClient + TabOrder = 1 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object v2Column6: TcxGridDBColumn + Caption = #20179#20301#32534#21495 + DataBinding.FieldName = 'ZdyCode' + HeaderAlignmentHorz = taCenter + Width = 130 + end + object v2Column8: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column8PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 89 + end + object v2DEFStr6: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'DEFStr2' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2DEFStr6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 78 + end + object v2DEFStr7: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFStr3' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.Items.Strings = ( + #22266#23450#26550 + #22791#29992#26550 + #20020#26102#22791#29992#26550) + HeaderAlignmentHorz = taCenter + Width = 76 + end + object v2Column3: TcxGridDBColumn + Caption = #35774#23450#21305#25968 + DataBinding.FieldName = 'mrate' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 135 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 528 + Top = 200 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_CPKWEdit.pas b/基础资料维护(BaseInfo.dll)/U_CPKWEdit.pas new file mode 100644 index 0000000..ff06ae2 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_CPKWEdit.pas @@ -0,0 +1,302 @@ +unit U_CPKWEdit; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDropDownEdit,strutils, cxLookAndFeels, + cxLookAndFeelPainters, cxNavigator; + +type + TfrmCPKWEdit = class(TForm) + ToolBar1: TToolBar; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column6: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + v2DEFStr6: TcxGridDBColumn; + v2DEFStr7: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure v2Column8PropertiesEditValueChanged(Sender: TObject); + procedure v2DEFStr6PropertiesEditValueChanged(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + function SaveData():Boolean; + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmCPKWEdit: TfrmCPKWEdit; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + + + +procedure TfrmCPKWEdit.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where ATID='''+Trim(FCYID)+''' '); + sql.Add(' and type=''CPKW'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmCPKWEdit.FormDestroy(Sender: TObject); +begin + frmCPKWEdit:=nil; +end; + +procedure TfrmCPKWEdit.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmCPKWEdit.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption,Tv2,'ͻԶ'); + Close; +end; +procedure TfrmCPKWEdit.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption,Tv2,'ͻԶ'); + InitGrid(); + if Trim(FCYID)='' then + begin + CDS_HZ.Append; + CDS_HZ.Post; + end; +end; + +procedure TfrmCPKWEdit.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +function TfrmCPKWEdit.SaveData():Boolean; +var + maxId,CRID,fzdyCode:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if Trim(FCYID)='' then + begin + if GetLSNo(ADOQueryCmd,maxId,'KW','KH_Zdy_Attachment',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxId:=Trim(FCYID); + end; + + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment X where ATID='''+Trim(FCYID)+''' and defstr3=''̶'' '); + open; + end; + if not ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('UPDATE CK_BanCP_KC set kckw='''' '); + sql.Add('where kckw='+quotedstr(trim(ADOQueryTemp.fieldbyname('zdyCode').AsString))); + sql.Add('UPDATE CK_BanCP_CR set kckw='''' '); + sql.Add('where kckw='+quotedstr(trim(ADOQueryTemp.fieldbyname('zdyCode').AsString))); + execsql; + end; + end; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_Zdy_Attachment where ATID='''+Trim(FCYID)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(FCYID)='' then + begin + Append; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('zdyCode').Value:=Trim(fzdyCode); + end else + begin + Edit; + FieldByName('Editer').Value:=Trim(DName); + FieldByName('Edittime').Value:=SGetServerDateTime(ADOQueryTemp); + end; + FieldByName('ATID').Value:=Trim(maxId); + FieldByName('ZdyName').Value:=Trim(CDS_HZ.fieldbyname('ZdyCode').AsString); + + RTSetSaveDataCDS(ADOQueryCmd,Tv2,CDS_HZ,'',0); + FieldByName('Type').Value:='CPKW'; + FieldByName('mrate').Value:=CDS_HZ.fieldbyname('mrate').AsFloat; + FieldByName('Filler').Value:=Trim(DName); + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('ATID').Value:=Trim(maxId); + Post; + end; + + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment X where ATID='''+Trim(FCYID)+''' and defstr3=''̶'' '); + open; + end; + if not ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('UPDATE CK_BanCP_KC set kckw='+quotedstr(trim(ADOQueryTemp.fieldbyname('zdyCode').AsString))); + sql.Add('where C_CodeName='+quotedstr(trim(ADOQueryTemp.fieldbyname('defstr1').AsString))); + sql.Add('and C_color='+quotedstr(trim(ADOQueryTemp.fieldbyname('defstr2').AsString))); + sql.Add('UPDATE CK_BanCP_CR set kckw='+quotedstr(trim(ADOQueryTemp.fieldbyname('zdyCode').AsString))); + sql.Add('where C_CodeName='+quotedstr(trim(ADOQueryTemp.fieldbyname('defstr1').AsString))); + sql.Add('and C_color='+quotedstr(trim(ADOQueryTemp.fieldbyname('defstr2').AsString))); + execsql; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣!','ʾ',0); + end; +end; + +procedure TfrmCPKWEdit.ToolButton3Click(Sender: TObject); +begin + cxGrid2.SetFocus; + if Trim(CDS_HZ.FieldByName('ZdyCode').AsString)='' then + begin + Application.MessageBox('λŲΪ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪ','ʾ',32+4)<>IDYES then Exit; + + if SaveData() then + begin + Application.MessageBox('ɹ!','ʾ',0); + ModalResult:=1; + end; +end; + + +procedure TfrmCPKWEdit.v2Column8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + + IF trim(mvalue)='' then exit; + + IF rightBstr(trim(mvalue),1)<>'#'THEN + BEGIn + mvalue:=trim(mvalue)+'#'; + END; + + + with CDS_HZ do + begin + Edit; + FieldByName('DEFstr1').Value:=Trim(mvalue); + Post; + end; + self.tv2.Controller.EditingController.ShowEdit(); + + + +end; + +procedure TfrmCPKWEdit.v2DEFStr6PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + + IF trim(mvalue)='' then exit; + + IF rightBstr(trim(mvalue),1)<>'#'THEN + BEGIn + mvalue:=trim(mvalue)+'#'; + END; + + + with CDS_HZ do + begin + Edit; + FieldByName('DEFstr2').Value:=Trim(mvalue); + Post; + end; + self.tv2.Controller.EditingController.ShowEdit(); + + + +end; + +end. diff --git a/基础资料维护(BaseInfo.dll)/U_CPKWList.dfm b/基础资料维护(BaseInfo.dll)/U_CPKWList.dfm new file mode 100644 index 0000000..f5c9006 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_CPKWList.dfm @@ -0,0 +1,486 @@ +object frmCPKWList: TfrmCPKWList + Left = 337 + Top = 337 + Width = 1360 + Height = 424 + Caption = #20379#24212#21830#36164#26009#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1344 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton5: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #25171#21360#26631#31614 + ImageIndex = 12 + OnClick = ToolButton5Click + end + object ToolButton1: TToolButton + Left = 402 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 465 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1344 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 203 + Top = 13 + Width = 24 + Height = 12 + Caption = #21697#21517 + end + object Label1: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #20179#20301#32534#21495 + end + object Label2: TLabel + Left = 559 + Top = 13 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object Label4: TLabel + Left = 378 + Top = 13 + Width = 24 + Height = 12 + Caption = #39068#33394 + end + object defstr1: TEdit + Tag = 2 + Left = 235 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = defstr1Change + end + object ZdyCode: TEdit + Tag = 2 + Left = 83 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = defstr1Change + end + object DEFstr3: TComboBox + Tag = 1 + Left = 588 + Top = 8 + Width = 81 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 2 + OnChange = defstr1Change + Items.Strings = ( + '' + #22266#23450#26550 + #22791#29992#26550 + #20020#26102#22791#29992#26550) + end + object defstr2: TEdit + Tag = 2 + Left = 408 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 3 + OnChange = defstr1Change + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 796 + Height = 315 + Align = alClient + PopupMenu = PopupMenu1 + TabOrder = 2 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnFocusedRecordChanged = Tv2FocusedRecordChanged + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object Tv2Column1: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'ssel' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object v2Column6: TcxGridDBColumn + Caption = #20179#20301#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 124 + end + object v2Column8: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'DEFstr1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 97 + end + object v2Column10: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'DEFStr2' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 79 + end + object v2Column11: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFStr3' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 85 + end + object v2Column3: TcxGridDBColumn + Caption = #35774#23450#21305#25968 + DataBinding.FieldName = 'mrate' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 72 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 114 + end + object v2Column2: TcxGridDBColumn + Caption = #24211#23384#21305#25968 + DataBinding.FieldName = 'CPNUm' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 76 + end + object v2Column12: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v2Column13: TcxGridDBColumn + Caption = #25805#20316#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 153 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGrid1: TcxGrid + Left = 796 + Top = 70 + Width = 548 + Height = 315 + Align = alRight + TabOrder = 3 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource2 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object Tv1Column5: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'P_CodeName' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column6: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column1: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MXMJXH' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column2: TcxGridDBColumn + Caption = #37325#37327 + DataBinding.FieldName = 'KCQTY' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column3: TcxGridDBColumn + Caption = #38271#24230 + DataBinding.FieldName = 'KCqty2' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column4: TcxGridDBColumn + Caption = #38271#24230#21333#20301 + DataBinding.FieldName = 'MXUnit' + HeaderAlignmentHorz = taCenter + Width = 70 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 584 + Top = 137 + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 683 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 679 + Top = 192 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 763 + Top = 212 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 490 + Top = 155 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 767 + Top = 172 + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 376 + Top = 208 + end + object RMGridReport1: 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 = RMDBDataSet1 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 607 + Top = 216 + ReportData = {} + end + object RMDBDataSet1: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 727 + Top = 180 + end + object PopupMenu1: TPopupMenu + Left = 588 + Top = 296 + object N1: TMenuItem + Caption = #20840#36873 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #20840#24323 + OnClick = N2Click + end + end + object DataSource2: TDataSource + DataSet = CDS_Sub + Left = 1124 + Top = 165 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 1068 + Top = 161 + end + object ADOQuerySub: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 1024 + Top = 156 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_CPKWList.pas b/基础资料维护(BaseInfo.dll)/U_CPKWList.pas new file mode 100644 index 0000000..27f3b78 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_CPKWList.pas @@ -0,0 +1,346 @@ +unit U_CPKWList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls, + cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, + cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, Menus; + +type + TfrmCPKWList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + defstr1: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + ToolButton4: TToolButton; + v2Column8: TcxGridDBColumn; + Label2: TLabel; + DEFstr3: TComboBox; + v2Column10: TcxGridDBColumn; + v2Column11: TcxGridDBColumn; + v2Column12: TcxGridDBColumn; + v2Column13: TcxGridDBColumn; + defstr2: TEdit; + Label4: TLabel; + v2Column2: TcxGridDBColumn; + ToolButton5: TToolButton; + ADOQueryPrint: TADOQuery; + RMGridReport1: TRMGridReport; + RMDBDataSet1: TRMDBDataSet; + Tv2Column1: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + DataSource2: TDataSource; + CDS_Sub: TClientDataSet; + Tv1Column1: TcxGridDBColumn; + Tv1Column2: TcxGridDBColumn; + Tv1Column3: TcxGridDBColumn; + Tv1Column4: TcxGridDBColumn; + ADOQuerySub: TADOQuery; + Tv1Column5: TcxGridDBColumn; + Tv1Column6: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure defstr1Change(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + private + { Private declarations } + procedure InitGrid(); + public + end; + +var + frmCPKWList: TfrmCPKWList; + +implementation + +uses + U_DataLink, U_Fun, U_ZDYHelp, U_CPKWEdit; + +{$R *.dfm} + +procedure TfrmCPKWList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + SQL.Clear; + sql.Add(' select A.* '); +// sql.Add(' ,cpNum=(select count(MJID) from CK_BanCP_KC X where X.KCKW=A.zdyCode and X.kcQty>0)'); + sql.Add(' from KH_Zdy_Attachment A '); + sql.Add(' where Type=''CPKW'' '); + Open; + end; + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; + ToolButton2.Click; +end; + +procedure TfrmCPKWList.FormDestroy(Sender: TObject); +begin + frmCPKWList := nil; +end; + +procedure TfrmCPKWList.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmCPKWList.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption, Tv2, 'ͻԶ'); + WriteCxGrid(self.Caption, Tv1, 'ϸ'); + Close; +end; + +procedure TfrmCPKWList.TBDelClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString) <> '' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + ''''); + sql.Add('delete KH_Zdy where ZdyNo=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + ''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmCPKWList.FormShow(Sender: TObject); +begin + cxGrid2.Align := alclient; + ReadCxGrid(self.Caption, Tv2, 'ͻԶ'); + ReadCxGrid(self.Caption, Tv1, 'ϸ'); + InitGrid(); +end; + +procedure TfrmCPKWList.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmCPKWList.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + end; +end; + +procedure TfrmCPKWList.defstr1Change(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmCPKWList.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then + Exit; + TcxGridToExcel(self.Caption, cxgrid2); +// SelExportData(Tv2,ADOQueryMain,'Ӧб'); +end; + +procedure TfrmCPKWList.ToolButton4Click(Sender: TObject); +begin + try + frmCPKWEdit := TfrmCPKWEdit.Create(Application); + with frmCPKWEdit do + begin + FCYID := Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + if ShowModal = 1 then + begin + TBRafresh.Click; + end; + end; + finally + frmCPKWEdit.Free; + end; +end; + +procedure TfrmCPKWList.ToolButton3Click(Sender: TObject); +begin + try + frmCPKWEdit := TfrmCPKWEdit.Create(Application); + with frmCPKWEdit do + begin + FCYID := ''; + if ShowModal = 1 then + begin + TBRafresh.Click; + end; + end; + finally + frmCPKWEdit.Free; + end; +end; + +procedure TfrmCPKWList.ToolButton5Click(Sender: TObject); +var + fPrintFile: string; + Txt, fImagePath: string; + Moudle: THandle; + Makebar: TMakebar; + Mixtext: TMixtext; +begin + if CDS_HZ.IsEmpty then + Exit; + if CDS_HZ.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + CDS_HZ.DisableControls; + with CDS_HZ do + begin + First; + while not Eof do + begin + if CDS_HZ.FieldByName('SSel').AsBoolean then + begin + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add('select A.* '); + sql.Add(' from KH_Zdy_Attachment A'); + SQL.Add(' where ATID=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + ''''); + SQL.Add(' and Type=''CPKW'' '); + Open; + end; + try + Moudle := LoadLibrary('MakeQRBarcode.dll'); + @Makebar := GetProcAddress(Moudle, 'Make'); + @Mixtext := GetProcAddress(Moudle, 'MixText'); + Txt := Trim(ADOQueryPrint.fieldbyname('ATID').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); + CDS_HZ.EnableControls; + exit; + end; + + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\Ʒλǩ.rmf'; + if FileExists(fPrintFile) then + begin + RMVariables['QRBARCODE'] := fImagePath; + RM1.LoadFromFile(fPrintFile); + // RM1.ShowReport; + RM1.PrintReport; + sleep(200); + + end + else + begin + CDS_HZ.EnableControls; + Application.MessageBox(PChar('û' + trim(fPrintFile)), 'ʾ', 0); + Exit; + end; + end; + Next; + end; + end; + CDS_HZ.EnableControls; + +end; + +procedure TfrmCPKWList.N1Click(Sender: TObject); +begin + SelOKNo(CDS_HZ, true); +end; + +procedure TfrmCPKWList.N2Click(Sender: TObject); +begin + SelOKNo(CDS_HZ, false); +end; + +procedure TfrmCPKWList.Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + try + with ADOQuerySub do + begin + close; + sql.Clear; + sql.Add('select * from CK_SXPB_CRMX A'); + sql.Add(' INNER JOIN BP_InOut B on B.CRID=A.CRID and B.CRNO=A.CRNO '); + sql.Add(' where A.CKNO=' + quotedstr(trim(CDS_HZ.fieldbyname('ZdyCode').AsString))); + sql.Add(' and A.CRZT='''''); + sql.Add(' and A.kcqty2>0'); + +// SQL.Add('and not EXISTS(SELECT MXID FROM CK_SXPB_CRMX C WHERE C.FZMXID=A.MXID)'); + sql.Add(' order by A.MXID'); +// ShowMessage(SQL.text); + open; + end; + SCreateCDS20(ADOQuerySub, CDS_Sub); + SInitCDSData20(ADOQuerySub, CDS_Sub); + finally + end; +end; + +end. + diff --git a/基础资料维护(BaseInfo.dll)/U_ClothContractList_CG_help.dfm b/基础资料维护(BaseInfo.dll)/U_ClothContractList_CG_help.dfm new file mode 100644 index 0000000..4b28380 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ClothContractList_CG_help.dfm @@ -0,0 +1,535 @@ +object frmClothContractList_CG_help: TfrmClothContractList_CG_help + Left = 133 + Top = 0 + Width = 1217 + Height = 738 + Caption = #22383#24067#37319#36141#35745#21010#20449#24687 + 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 = 1201 + AutoSize = True + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBAdd: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = TBEditClick + end + object TBDel: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + OnClick = TBDelClick + end + object TBExport: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 441 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1201 + Height = 53 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 22 + Width = 52 + Height = 12 + Caption = #30331#35760#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 161 + Top = 22 + Width = 6 + Height = 12 + Caption = '-' + end + object Label3: TLabel + Left = 267 + Top = 22 + Width = 78 + Height = 12 + Caption = #37319#36141#35745#21010#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 440 + Top = 22 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 592 + Top = 22 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 720 + Top = 22 + Width = 26 + Height = 12 + Caption = #20379#26041 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 18 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 167 + Top = 18 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object ConNoM: TEdit + Tag = 2 + Left = 349 + Top = 18 + Width = 81 + Height = 20 + TabOrder = 2 + OnChange = ConNoMChange + OnKeyPress = conPress + end + object C_CodeNameM: TEdit + Tag = 2 + Left = 493 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = ConNoMChange + end + object C_Spec: TEdit + Tag = 2 + Left = 624 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 4 + OnChange = ConNoMChange + end + object FactoryNoName: TEdit + Tag = 2 + Left = 756 + Top = 18 + Width = 80 + Height = 20 + TabOrder = 5 + OnChange = ConNoMChange + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 85 + Width = 1201 + Height = 497 + Align = alTop + BorderStyle = bsNone + TabOrder = 2 + object cxGrid1: TcxGrid + Left = 0 + Top = 0 + Width = 1201 + Height = 497 + Align = alClient + TabOrder = 0 + object Tv1: TcxGridDBTableView + OnMouseDown = Tv1MouseDown + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + Column = v1Column1 + end + item + Kind = skSum + Column = v1PRTQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1OrderNo: TcxGridDBColumn + Caption = #37319#36141#35745#21010#21333#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 98 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DeliveryDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v1Column5: TcxGridDBColumn + Caption = #31614#35746#26085#26399 + DataBinding.FieldName = 'QDTime' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = #20379#26041 + DataBinding.FieldName = 'FactoryNoName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 108 + end + object v1Column2: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_CodeName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 58 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 66 + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'MFQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 61 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'KZQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 83 + end + object v1Qty1: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'Qty1' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 46 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'C_Qty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 58 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'C_Unit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 47 + end + object v1Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 57 + end + object v1PRTUnit: TcxGridDBColumn + Caption = #35745#20215#21333#20301 + DataBinding.FieldName = 'PriceUnit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 61 + end + object v1PRTQty: TcxGridDBColumn + Caption = #24635#20215 + DataBinding.FieldName = 'Money' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 58 + end + object v1Column4: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'C_Note' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1Column3: TcxGridDBColumn + Caption = #32852#31995#20154 + DataBinding.FieldName = 'LXPerson' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v1Column6: TcxGridDBColumn + Caption = #32852#31995#26041#24335 + DataBinding.FieldName = 'LXTel' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v1Column7: TcxGridDBColumn + Caption = #31614#35746#22320#22336 + DataBinding.FieldName = 'QDPalce' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 61 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 1128 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 936 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1000 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1040 + Top = 8 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 1168 + Top = 8 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 1096 + Top = 8 + end + object ClientDataSet3: TClientDataSet + Aggregates = <> + Params = <> + Left = 1112 + Top = 240 + end + object DataSource2: TDataSource + DataSet = ClientDataSet2 + Left = 880 + Top = 176 + end + object DataSource3: TDataSource + DataSet = ClientDataSet3 + Left = 1112 + Top = 216 + end + object ClientDataSet2: TClientDataSet + Aggregates = <> + Params = <> + Left = 920 + Top = 224 + 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 = 352 + Top = 192 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_PRT + Left = 400 + Top = 192 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 416 + Top = 248 + end + object CDS_PRT: TClientDataSet + Aggregates = <> + Params = <> + Left = 680 + Top = 32 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ClothContractList_CG_help.pas b/基础资料维护(BaseInfo.dll)/U_ClothContractList_CG_help.pas new file mode 100644 index 0000000..a25df35 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ClothContractList_CG_help.pas @@ -0,0 +1,576 @@ +unit U_ClothContractList_CG_help; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, + RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, + cxTextEdit; + +type + TfrmClothContractList_CG_help = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Label2: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + ConNoM: TEdit; + Label5: TLabel; + C_CodeNameM: TEdit; + TBExport: TToolButton; + Order_Main: TClientDataSet; + Label4: TLabel; + C_Spec: TEdit; + ScrollBox1: TScrollBox; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1PRTUnit: TcxGridDBColumn; + v1PRTQty: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + ClientDataSet3: TClientDataSet; + DataSource2: TDataSource; + DataSource3: TDataSource; + ClientDataSet2: TClientDataSet; + v1Qty1: TcxGridDBColumn; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + CDS_PRT: TClientDataSet; + Label6: TLabel; + FactoryNoName: TEdit; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure ToolButton5Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure conPress(Sender: TObject; var Key: Char); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + FInt,PFInt:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + { Private declarations } + public + { Public declarations } + end; + +var + frmClothContractList_CG_help: TfrmClothContractList_CG_help; + +implementation +uses + U_DataLink,U_ClothContractInPut_CG,U_Fun,U_ProductOrderList,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmClothContractList_CG_help.FormDestroy(Sender: TObject); +begin + frmClothContractList_CG_help:=nil; +end; + +procedure TfrmClothContractList_CG_help.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmClothContractList_CG_help.FormCreate(Sender: TObject); +begin + ScrollBox1.Align:=alClient; +end; + +procedure TfrmClothContractList_CG_help.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid(self.Caption,Tv1,'ָʾ'); +end; + +procedure TfrmClothContractList_CG_help.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select * '); + sql.Add('from Contract_Main A'); + sql.Add('inner join Contract_sub B on B.MainID=A.mainID '); + sql.Add('where A.FillTime>= '''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+''' '); + sql.Add('and A.FillTime< '''+Trim(FormatDateTime('yyyy-MM-dd',endDate.DateTime+1))+''' '); + sql.Add('and A.conType=''ɹƻ'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmClothContractList_CG_help.InitForm(); +begin + ReadCxGrid(self.Caption,Tv1,'ָʾ'); + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmClothContractList_CG_help.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothContractList_CG_help.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmClothContractInPut_CG:=TfrmClothContractInPut_CG.Create(Application); + with frmClothContractInPut_CG do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmClothContractInPut_CG.Free; + end; +end; + +procedure TfrmClothContractList_CG_help.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + if ClientDataSet2.IsEmpty=false then + begin + Application.MessageBox('ѵɾͬ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if trim(Order_Main.FieldByName('mainID').AsString)='CM001' then exit; + if DelData() then + begin + Order_Main.Delete; + end; +end; + +function TfrmClothContractList_CG_help.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_CR where MainID='''+Trim(Order_Main.fieldbyname('MainID').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + // sql.Add(' where CRID='+CRID); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmClothContractList_CG_help.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel('ͬб',cxGrid1); +end; + +procedure TfrmClothContractList_CG_help.TBPrintClick(Sender: TObject); +var + fPrintFile,FConNoM:string; + +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ͬ.rmf' ; + with ADOQueryTemp do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContract_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Parameters.ParamByName('MainId').Value:=Trim(Order_Main.fieldbyname('MainId').AsString); + Parameters.ParamByName('WSql').Value:=''; + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_PRT); + SInitCDSData20(ADOQueryTemp,CDS_PRT); + FConNoM:=Trim(CDS_PRT.fieldbyname('ConNoM').AsString); + //SDofilter(ADOQueryMain,' ConNoM='''+Trim(Order_Main.fieldbyname('ConNoM').AsString)+''''); + //SCreateCDS20(ADOQueryMain,Order_Main); + //SInitCDSData20(ADOQueryMain,Order_Main); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ͬ.rmf'),'ʾ',0); + end; + //SDofilter(ADOQueryMain,''); + //SCreateCDS20(ADOQueryMain,Order_Main); + //SInitCDSData20(ADOQueryMain,Order_Main); + //Order_Main.Locate('ConNoM',FConNoM,[]); + //SelPrintData(TV4,ADOQueryMain,'ͬѯ'); +end; + +procedure TfrmClothContractList_CG_help.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmClothContractList_CG_help.TBAddClick(Sender: TObject); +begin + try + frmClothContractInPut_CG:=TfrmClothContractInPut_CG.Create(Application); + with frmClothContractInPut_CG do + begin + PState:=0; + FMainId:=''; + if ShowModal=1 then + begin + + end; + end; + finally + frmClothContractInPut_CG.Free; + end; +end; + +procedure TfrmClothContractList_CG_help.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothContractList_CG_help.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmClothContractList_CG_help.Tv2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=2; +end; + +procedure TfrmClothContractList_CG_help.Tv1MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=1; +end; + +procedure TfrmClothContractList_CG_help.ToolButton5Click(Sender: TObject); +var + maxno:string; +begin + if ClientDataSet3.IsEmpty then Exit; + if ClientDataSet2.IsEmpty then Exit; + if Trim(ClientDataSet2.fieldbyname('MXId').AsString)='' then + begin + Application.MessageBox('δȷ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('OrderNo',null,[]) then + begin + Application.MessageBox('ָŲΪգ','ʾ',0); + Exit; + end; + BegDate.SetFocus; + try + ADOQueryCmd.Connection.BeginTrans; + //ȥ + with ClientDataSet3 do + begin + First; + while not eof do + begin + if Trim(ClientDataSet3.fieldbyname('ToId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,maxno,'To','Contract_Sub_MxTo',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡȥˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(ClientDataSet3.fieldbyname('ToId').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub_MxTo where ToId='''+Trim(ClientDataSet3.fieldbyname('ToId').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(ClientDataSet3.fieldbyname('ToId').AsString)='' then + Append + else + Edit; + FieldByName('MxId').Value:=Trim(ClientDataSet2.fieldbyname('MxId').AsString); + FieldByName('ToId').Value:=Trim(maxno); + FieldByName('OrdSubId').Value:=Trim(ClientDataSet3.fieldbyname('OrdSubId').AsString); + FieldByName('TPDate').Value:=ClientDataSet3.fieldbyname('TPDate').Value; + FieldByName('TPPerson').Value:=ClientDataSet3.fieldbyname('TPPerson').Value; + FieldByName('TPNote').Value:=ClientDataSet3.fieldbyname('TPNote').Value; + if Trim(ClientDataSet3.fieldbyname('TPQty').AsString)<>'' then + FieldByName('TPQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value + else + FieldByName('TPQty').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty1').AsString)<>'' then + FieldByName('Qty1').Value:=ClientDataSet3.fieldbyname('Qty1').Value + else + FieldByName('Qty1').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty2').AsString)<>'' then + FieldByName('Qty2').Value:=ClientDataSet3.fieldbyname('Qty2').Value + else + FieldByName('Qty2').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty3').AsString)<>'' then + FieldByName('Qty3').Value:=ClientDataSet3.fieldbyname('Qty3').Value + else + FieldByName('Qty3').Value:=0; + Post; + end; + with ClientDataSet3 do + begin + Edit; + FieldByName('ToId').Value:=Trim(maxno); + Post; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +procedure TfrmClothContractList_CG_help.ToolButton3Click(Sender: TObject); +begin + if FInt=2 then + begin + if ClientDataSet2.IsEmpty then Exit; + if ClientDataSet3.IsEmpty=false then + begin + Application.MessageBox('Ѳݣɾ¼','ʾ',0); + Exit; + end; + if Trim(ClientDataSet2.fieldbyname('MxId').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub_Mx where MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + ExecSQL; + end; + ClientDataSet2.Delete; + end else + if FInt=3 then + begin + if ClientDataSet3.IsEmpty then Exit; + if Trim(ClientDataSet3.fieldbyname('ToId').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub_MxTo where ToId='''+Trim(ClientDataSet3.fieldbyname('ToId').AsString)+''''); + ExecSQL; + end; + ClientDataSet3.Delete; + with ClientDataSet2 do + begin + Edit; + if ClientDataSet3.IsEmpty=False then + // FieldByName('KCSL').Value:=ClientDataSet2.fieldbyname('MxQty').Value-tv3.DataController.Summary.FooterSummaryValues[0] + else + FieldByName('KCSL').Value:=ClientDataSet2.fieldbyname('MxQty').Value; + Post; + end; + end; +end; + +procedure TfrmClothContractList_CG_help.v2Column3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='RKPlace'; + flagname:='ص'; + if ShowModal=1 then + begin + with ClientDataSet2 do + begin + Edit; + FieldByName('RKPlace').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractList_CG_help.conPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(ConNoM.Text))<4 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContract_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and OM.conNo like '''+'%'+Trim(ConNoM.Text)+'%'+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmClothContractList_CG_help.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + IF Order_Main.IsEmpty then exit; + ModalResult:=1; +end; + +end. diff --git a/基础资料维护(BaseInfo.dll)/U_DataLink.dfm b/基础资料维护(BaseInfo.dll)/U_DataLink.dfm new file mode 100644 index 0000000..65bcaca --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_DataLink.dfm @@ -0,0 +1,17974 @@ +object DataLink_BaseInfo: TDataLink_BaseInfo + OldCreateOrder = False + OnDestroy = DataModuleDestroy + Left = 261 + Top = 201 + Height = 349 + Width = 482 + object AdoDataLink: TADOQuery + Connection = ADOLink + Parameters = <> + Left = 136 + Top = 8 + end + object ADOLink: TADOConnection + LoginPrompt = False + Left = 48 + Top = 8 + end + object ThreeImgList: TImageList + Height = 24 + Width = 24 + Left = 48 + Top = 72 + 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 + object ThreeLookAndFeelCol: TcxLookAndFeelController + Kind = lfStandard + NativeStyle = False + Left = 253 + Top = 12 + end + object ThreeColorBase: TcxStyleRepository + Left = 139 + Top = 80 + PixelsPerInch = 96 + object SHuangSe: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = 4707838 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + TextColor = clBtnText + end + object SkyBlue: TcxStyle + AssignedValues = [svColor, svFont] + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object Default: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object QHuangSe: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object FontBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object TextSHuangSe: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + object FonePurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindow + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clPurple + end + object FoneClMaroon: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clMaroon + end + object FoneRed: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clRed + end + object RowColor: TcxStyle + AssignedValues = [svColor] + Color = 16311512 + end + object handBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxBlue: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16711731 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_DataLink.pas b/基础资料维护(BaseInfo.dll)/U_DataLink.pas new file mode 100644 index 0000000..68d39bd --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_DataLink.pas @@ -0,0 +1,85 @@ +unit U_DataLink; + +interface + +uses + SysUtils, Classes, DB, ADODB, ImgList, Controls, cxStyles, cxLookAndFeels, + 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; {ݿӲ} + DCurHandle: hwnd; //ǰ + DName: string; //#û#// + DCode: string; //#û#// + PicSvr: string; + Ddatabase: string; //#ݿ#// + DTitCaption: string; //##// + DParameters1, DParameters2, DParameters3, DParameters4, DParameters5: string; // ⲿ + DParameters6, DParameters7, DParameters8, DParameters9, DParameters10: string; //ⲿ + OldDllApp: Tapplication; //ԭо + NewDllApp: Tapplication; //ǰ + MainApplication: Tapplication; + DFormCode: integer; //ǰں + IsDelphiLanguage: integer; + DServerDate: TdateTime; //ʱ + DCompany: string; //˾ + +type + TDataLink_BaseInfo = class(TDataModule) + AdoDataLink: TADOQuery; + ADOLink: TADOConnection; + ThreeImgList: TImageList; + ThreeLookAndFeelCol: TcxLookAndFeelController; + ThreeColorBase: TcxStyleRepository; + SHuangSe: TcxStyle; + SkyBlue: TcxStyle; + Default: TcxStyle; + QHuangSe: TcxStyle; + Red: TcxStyle; + FontBlue: TcxStyle; + TextSHuangSe: TcxStyle; + FonePurple: TcxStyle; + FoneClMaroon: TcxStyle; + FoneRed: TcxStyle; + RowColor: TcxStyle; + handBlack: TcxStyle; + cxBlue: TcxStyle; + procedure DataModuleDestroy(Sender: TObject); + private + { Private declarations } + public + { Public declarations } + end; + + TMakebar = procedure(ucData: pchar; nDataLen: integer; nErrLevel: integer; nMask: integer; nBarEdition: integer; szBmpFileName: pchar; nScale: integer); stdcall; + + TMixtext = procedure(szSrcBmpFileName: PChar; szDstBmpFileName: PChar; sztext: PChar; fontsize, txtheight, hmargin, vmargin, txtcntoneline: integer); stdcall; + +var + DataLink_BaseInfo: TDataLink_BaseInfo; + +implementation +{$R *.dfm} + +procedure TDataLink_BaseInfo.DataModuleDestroy(Sender: TObject); +begin + DataLink_BaseInfo := nil; +end; + +end. + diff --git a/基础资料维护(BaseInfo.dll)/U_FjList_RZ.dfm b/基础资料维护(BaseInfo.dll)/U_FjList_RZ.dfm new file mode 100644 index 0000000..a50c743 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_FjList_RZ.dfm @@ -0,0 +1,183 @@ +object frmFjList_RZ: TfrmFjList_RZ + Left = 177 + Top = 159 + Width = 796 + Height = 501 + BorderIcons = [biSystemMenu, biMinimize] + Caption = #38468#20214#20449#24687 + 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 + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ListView1: TListView + Left = 40 + Top = 20 + Width = 429 + Height = 77 + Columns = <> + TabOrder = 0 + OnDblClick = ListView1DblClick + end + object Panel1: TPanel + Left = 629 + Top = 0 + Width = 151 + Height = 463 + Align = alRight + TabOrder = 1 + object FileName: TcxButton + Left = 30 + Top = 60 + Width = 75 + Height = 25 + Hint = 'Filesother' + Caption = #28155#21152 + TabOrder = 0 + OnClick = FileNameClick + LookAndFeel.Kind = lfOffice11 + end + object cxButton1: TcxButton + Left = 30 + Top = 96 + Width = 75 + Height = 25 + Hint = 'Filesother' + Caption = #21024#38500 + TabOrder = 1 + OnClick = cxButton1Click + LookAndFeel.Kind = lfOffice11 + end + object cxButton2: TcxButton + Left = 30 + Top = 132 + Width = 75 + Height = 25 + Hint = 'Filesother' + Caption = #20445#23384 + TabOrder = 2 + OnClick = cxButton2Click + LookAndFeel.Kind = lfOffice11 + end + object cxButton3: TcxButton + Left = 30 + Top = 172 + Width = 75 + Height = 25 + Hint = 'Filesother' + Caption = #20851#38381 + TabOrder = 3 + Visible = False + OnClick = cxButton3Click + LookAndFeel.Kind = lfOffice11 + end + end + object Panel2: TPanel + Left = 176 + Top = 140 + Width = 193 + Height = 41 + BevelInner = bvRaised + BevelOuter = bvLowered + Caption = 'Panel2' + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + OnDblClick = Panel2DblClick + end + object cxGrid1: TcxGrid + Left = 8 + Top = 84 + Width = 593 + Height = 345 + TabOrder = 3 + object Tv1: TcxGridDBTableView + OnDblClick = Tv1DblClick + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + object v1Column1: TcxGridDBColumn + Caption = #25991#20214#21517#31216 + DataBinding.FieldName = 'FileName' + HeaderAlignmentHorz = taCenter + Width = 146 + end + object v1Column4: TcxGridDBColumn + Caption = #25991#20214#20462#25913#26102#38388 + DataBinding.FieldName = 'TFdate' + HeaderAlignmentHorz = taCenter + Width = 140 + end + object v1Column2: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Width = 83 + end + object v1Column3: TcxGridDBColumn + Caption = #19978#20256#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Width = 140 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOQueryTmp: TADOQuery + Connection = ADOConnection1 + Parameters = <> + Left = 520 + Top = 28 + end + object ADOQueryCmd: TADOQuery + Connection = ADOConnection1 + Parameters = <> + Left = 568 + Top = 32 + end + object ImageList1: TImageList + Left = 536 + Top = 228 + end + object IdFTP1: TIdFTP + MaxLineAction = maException + ReadTimeout = 0 + ProxySettings.ProxyType = fpcmNone + ProxySettings.Port = 0 + Left = 500 + Top = 198 + end + object ADOConnection1: TADOConnection + LoginPrompt = False + Left = 532 + Top = 240 + end + object DataSource1: TDataSource + DataSet = ADOQueryTmp + Left = 548 + Top = 140 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_FjList_RZ.pas b/基础资料维护(BaseInfo.dll)/U_FjList_RZ.pas new file mode 100644 index 0000000..190a911 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_FjList_RZ.pas @@ -0,0 +1,443 @@ +unit U_FjList_RZ; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ExtCtrls, ComCtrls, Menus, cxLookAndFeelPainters, StdCtrls, + cxButtons, DB, ADODB, ImgList,shellapi, IdBaseComponent, IdComponent, + IdTCPConnection, IdTCPClient, IdFTP, cxStyles, cxCustomData, cxGraphics, + cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxGridLevel, cxClasses, cxControls, + cxGridCustomView, cxGrid; + +type + TfrmFjList_RZ = class(TForm) + ListView1: TListView; + Panel1: TPanel; + FileName: TcxButton; + cxButton1: TcxButton; + cxButton2: TcxButton; + cxButton3: TcxButton; + ADOQueryTmp: TADOQuery; + ADOQueryCmd: TADOQuery; + ImageList1: TImageList; + Panel2: TPanel; + IdFTP1: TIdFTP; + ADOConnection1: TADOConnection; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + DataSource1: TDataSource; + v1Column4: TcxGridDBColumn; + procedure cxButton3Click(Sender: TObject); + procedure FormDestroy(Sender: TObject); + procedure FileNameClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ListView1DblClick(Sender: TObject); + procedure cxButton1Click(Sender: TObject); + procedure cxButton2Click(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure Panel2DblClick(Sender: TObject); + procedure Tv1DblClick(Sender: TObject); + private + procedure InitData(); + { Private declarations } + public + fkeyNO:string; + fType:string; + fId:integer; + fstatus:integer; + // fmanage:string; + + { Public declarations } + end; + +var +frmFjList_RZ: TfrmFjList_RZ; + +implementation + uses + U_DataLink,U_Fun10,U_CompressionFun; +{$R *.dfm} +procedure TfrmFjList_RZ.InitData(); +var + ListItem: TListItem; + Flag: Cardinal; + info: SHFILEINFOA; + Icon: TIcon; +begin + ListView1.Items.Clear; + try + + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from TP_File '); + sql.Add('where WBID='+quotedstr(trim(fkeyNO))); + sql.Add('and TFType='+quotedstr(trim(fType))); + open; + { if not IsEmpty then + begin + while not eof do + begin + with ListView1 do + begin + LargeImages := ImageList1; + Icon := TIcon.Create; + ListItem := Items.Add; + Listitem.Caption := trim(fieldbyname('fileName').AsString); + // Listitem.SubItems.Add(OpenDiaLog.FileName); + Flag := (SHGFI_SMALLICON or SHGFI_ICON or SHGFI_USEFILEATTRIBUTES); + SHGetFileInfo(Pchar(trim(fieldbyname('fileName').AsString)), 0, info, Sizeof(info), Flag); + Icon.Handle := info.hIcon; + ImageList1.AddIcon(Icon); + ListItem.ImageIndex := ImageList1.Count - 1; + end; + next; + end; + end; } + end; + except + end; +end; + +procedure TfrmFjList_RZ.cxButton3Click(Sender: TObject); +begin + ADOQueryTmp.Close; + ADOQuerycmd.Close; + ListView1.Items.Free; + ModalResult:=-1; +end; + +procedure TfrmFjList_RZ.FormDestroy(Sender: TObject); +begin + frmFjList_RZ:=nil; +end; + +procedure TfrmFjList_RZ.FileNameClick(Sender: TObject); +var + OpenDiaLog: TOpenDialog; + fFileName:string; + fFilePath:string; + maxNo:string; +// myStream: TADOBlobStream; + FJStream : TMemoryStream; + mfileSize:integer; + mCreationTime:TdateTime; + mWriteTime:TdateTime; +begin + + try + OpenDiaLog := TOpenDialog.Create(Self); + if OpenDiaLog.Execute then + begin + fFilePath:=OpenDiaLog.FileName; + fFileName:=ExtractFileName(OpenDiaLog.FileName); + + + { with adoqueryCmd do + begin + close; + sql.Clear; + sql.Add('select TFId from TP_File '); + sql.Add('where WBID<>'+quotedstr(trim(fkeyNO))); + sql.Add('and TFType='+quotedstr(trim(fType))); + sql.Add('and FileName='+quotedstr(trim(fFileName))); + open; + IF not adoqueryCmd.IsEmpty then + begin + application.MessageBox('˸Ѵڣ޸ļϴ','ʾϢ',MB_ICONERROR); + exit; + end; + end; + } + + Panel2.Caption:='ϴݣԵ...'; + Panel2.Visible:=true; + application.ProcessMessages; + + if GetLSNo(ADOQueryCmd,maxNo,'FJ','TP_File',4,1)=False then + begin + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + + //ȡļϢ + GetFileInfo(fFilePath,mfileSize,mCreationTime,mWriteTime); + + adoqueryCmd.Connection.BeginTrans; + + + with adoqueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from TP_File '); + sql.Add('where TFID='+quotedstr(trim(maxNO))); + // sql.Add('where WBID='+quotedstr(trim(fkeyNO))); + // sql.Add('and TFType='+quotedstr(trim(fType))); + // sql.Add('and FileName='+quotedstr(trim(fFileName))); + execsql; + end; + + try + FJStream:=TMemoryStream.Create; + with adoqueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from TP_File '); + sql.Add('where TFID='+quotedstr(trim(maxNO))); + // sql.Add('where WBID='+quotedstr(trim(fkeyNO))); + // sql.Add('and TFType='+quotedstr(trim(fType))); + // sql.Add('and FileName='+quotedstr(trim(fFileName))); + open; + append; + fieldbyname('TFID').Value:=trim(maxNO); + fieldbyname('WBID').Value:=trim(fkeyNO); + fieldbyname('TFType').Value:=trim(fType); + fieldbyname('Filler').Value:=trim(DName); + fieldbyname('FileName').Value:=trim(fFileName); + fieldbyname('TFDate').Value:=mWriteTime; + FJStream.LoadFromFile(fFilePath); + CompressionStream(FJStream); + tblobfield(FieldByName('Filesother')).LoadFromStream(FJStream); + post; + end; + + { if fFilePath <> '' then + begin + try + IdFTP1.Host := PicSvr; + IdFTP1.Username := 'three'; + IdFTP1.Password := '641010'; + IdFTP1.Connect(); + IdFTP1.Put(fFilePath, 'FJ\' + Trim(fFileName)); + IdFTP1.Quit; + except + IdFTP1.Quit; + Application.MessageBox('ϴͻͼļʧܣļ', 'ʾ', MB_ICONWARNING); + end; + end; + IdFTP1.Quit; + } + Panel2.Visible:=false; + initdata(); + finally + FJStream.Free; + end; + + end; + adoqueryCmd.Connection.CommitTrans; + except + adoqueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmFjList_RZ.FormCreate(Sender: TObject); +begin + with ADOConnection1 do + begin + Connected:=false; + ConnectionString:=DConString; + //ConnectionString:=''; + Connected:=true; + end; + cxGrid1.Align:=alclient; + fstatus:=0; +end; + +procedure TfrmFjList_RZ.FormShow(Sender: TObject); +begin + IF fstatus=0 then Panel1.Visible:=true + else Panel1.Visible:=false; + initdata(); +end; + +procedure TfrmFjList_RZ.ListView1DblClick(Sender: TObject); +var + sFieldName:string; + fileName:string; +begin + if ListView1.Items.Count<1 THEN EXIT; + + if listView1.SelCount<1 then exit; + sFieldName:='D:\ͼƬ鿴'; + + if not DirectoryExists(pchar(sFieldName)) then + CreateDirectory(pchar(sFieldName),nil); + + fileName:=ListView1.Selected.Caption; + + sFieldName:=sFieldName+'\'+trim(fileName); + + try + IdFTP1.Host := PicSvr; + IdFTP1.Username := 'three'; + IdFTP1.Password := '641010'; + IdFTP1.Connect(); + except + ; + end; + + if IdFTP1.Connected then + begin + + Panel2.Caption:='ݣԵ...'; + Panel2.Visible:=true; + application.ProcessMessages; + try + IdFTP1.Get('FJ\'+ Trim(fileName), sFieldName,false, true); + except + Panel2.Visible:=false; + Application.MessageBox('ͻͼļ', 'ʾ', MB_ICONWARNING); + IdFTP1.Quit; + Exit; + end; + end + else + begin + Panel2.Visible:=false; + Application.MessageBox('޷ļ', 'ʾ', MB_ICONWARNING); + IdFTP1.Quit; + Exit; + end; + Panel2.Visible:=false; + if IdFTP1.Connected then IdFTP1.Quit; + ShellExecute(Handle, 'open',PChar(sFieldName),'', '', SW_SHOWNORMAL); + +end; + +procedure TfrmFjList_RZ.cxButton1Click(Sender: TObject); +var + fFileName:string; + fFilePath:string; +begin + // if listView1.SelCount<1 then exit; + + IF ADOQueryTmp.IsEmpty then exit; + + try + // fFileName:=ListView1.Selected.Caption; + // ADOQueryTmp.Locate('fileName',fFileName,[]); + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from TP_File '); + sql.Add('where TFID='+quotedstr(trim(ADOQueryTmp.fieldbyname('TFID').AsString))); + // sql.Add('and TFType='+quotedstr(trim(fType))); + // sql.Add('and FileName='+quotedstr(trim(fFileName))); + execsql; + end; + + initData(); + + except + end; + +end; + +procedure TfrmFjList_RZ.cxButton2Click(Sender: TObject); +var + SaveDialog: TSaveDialog; + fFileName:string; + fFilePath:string; + ff: TADOBlobStream; + FJStream : TMemoryStream; +begin + if adoqueryTmp.IsEmpty then exit; + + try + + fFileName:=adoqueryTmp.fieldbyname('FileName').AsString; + + SaveDialog := TSaveDialog.Create(Self); + + SaveDialog.FileName:=fFileName; + if SaveDialog.Execute then + begin + Panel2.Caption:='ڱݣԵ...'; + Panel2.Visible:=true; + application.ProcessMessages; + fFilePath:=SaveDialog.FileName; + + try + ff := TADOBlobstream.Create(adoqueryTmp.fieldByName('FilesOther') as TblobField, bmRead); + + fjStream:= TMemoryStream.Create ; + ff.SaveToStream(fjStream); + UnCompressionStream(fjStream); + fjStream.SaveToFile(fFilePath); + // ShellExecute(Handle, 'open',PChar(sFieldName),'', '', SW_SHOWNORMAL); + finally + fjStream.free; + ff.Free; + end; + + + Panel2.Visible:=false; + // if IdFTP1.Connected then IdFTP1.Quit; + end; + except + Panel2.Visible:=false; + end; +end; + +procedure TfrmFjList_RZ.FormClose(Sender: TObject; var Action: TCloseAction); +begin + if fId=10 then Action:=cafree + else + Action:=cahide; +end; + +procedure TfrmFjList_RZ.Panel2DblClick(Sender: TObject); +begin + Panel2.Visible:=false; +end; + +procedure TfrmFjList_RZ.Tv1DblClick(Sender: TObject); +var + sFieldName:string; + fileName:string; + ff: TADOBlobStream; + FJStream : TMemoryStream; +begin + + IF adoqueryTmp.IsEmpty then exit; + + sFieldName:='D:\ͼƬ鿴'; + + if not DirectoryExists(pchar(sFieldName)) then + CreateDirectory(pchar(sFieldName),nil); + + fileName:=adoqueryTmp.fieldbyname('FileName').AsString; + + sFieldName:=sFieldName+'\'+trim(fileName); + + try + ff := TADOBlobstream.Create(adoqueryTmp.fieldByName('FilesOther') as TblobField, bmRead); + + fjStream:= TMemoryStream.Create ; + ff.SaveToStream(fjStream); + UnCompressionStream(fjStream); + fjStream.SaveToFile(sFieldName); + ShellExecute(Handle, 'open',PChar(sFieldName),'', '', SW_SHOWNORMAL); + finally + fjStream.free; + ff.Free; + end; + + + +end; + +end. diff --git a/基础资料维护(BaseInfo.dll)/U_GetDllForm.pas b/基础资料维护(BaseInfo.dll)/U_GetDllForm.pas new file mode 100644 index 0000000..8383691 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_GetDllForm.pas @@ -0,0 +1,332 @@ +unit U_GetDllForm; + +interface + +uses + Windows, Messages, forms, OleCtnrs, DateUtils, SysUtils, ADODB, Dxcore, + activex; + +function GetDllForm(App: Tapplication; FormH: hwnd; FormID: integer; Language: integer; WinStyle: integer; GCode: Pchar; GName: Pchar; DataBase: Pchar; Title: PChar; Parameters1: PChar; Parameters2: PChar; Parameters3: PChar; Parameters4: PChar; Parameters5: PChar; Parameters6: PChar; Parameters7: PChar; Parameters8: PChar; Parameters9: PChar; Parameters10: PChar; DataBaseStr: PChar): hwnd; export; stdcall; + +function ConnData(): Boolean; + +implementation + +uses + U_DataLink, U_KHInfo, U_ZdyAttachment, U_ZdyAttachGYS, U_ZdyAttachCP, + U_NengHaoList, U_HZViewList, U_CPKWlist, U_ZdyAttachCP10, U_ZdyAttachmentBJ; + + ///////////////////////////////////////////////////////////////// + // ˵:ȡDllеô // + // ˵App>>Ӧó // + // FormH>>ôھ // + // FormID>>ں; // + // Language>>; // + // WinStyle>>ͣ // +///////////////////////////////////////////////////////////////// +function GetDllForm(App: Tapplication; FormH: hwnd; FormID: integer; Language: integer; WinStyle: integer; GCode: Pchar; GName: Pchar; DataBase: Pchar; Title: PChar; Parameters1: PChar; Parameters2: PChar; Parameters3: PChar; Parameters4: PChar; Parameters5: PChar; Parameters6: PChar; Parameters7: PChar; Parameters8: PChar; Parameters9: PChar; Parameters10: PChar; DataBaseStr: PChar): hwnd; +var + mnewHandle: hwnd; + mstyle: TFormStyle; // 0:Ӵ; 1ͨ + mstate: TWindowState; + mborderstyle: TFormBorderStyle; +begin + mnewHandle := 0; + DName := GName; + DCode := GCode; + DdataBase := DataBase; + DTitCaption := Title; + DParameters1 := Parameters1; + DParameters2 := Parameters2; + DParameters3 := Parameters3; + DParameters4 := Parameters4; + DParameters5 := Parameters5; + DParameters6 := Parameters6; + DParameters7 := Parameters7; + DParameters8 := Parameters8; + DParameters9 := Parameters9; + DParameters10 := Parameters10; + + MainApplication := App; + DCurHandle := FormH; + IsDelphiLanguage := Language; + + Application := TApplication(App); + DCurHandle := 0; + + + //ֵַ + SetLength(server, 255); + SetLength(dtbase, 255); + SetLength(user, 255); + SetLength(pswd, 255); + +// server := '.'; +// dtbase := 'rtjydata12'; +// user := 'sa'; +// pswd := 'rightsoft'; + server := '139.224.12.182,7781'; + dtbase := 'aidengdata'; + user := 'aidengsa'; + pswd := 'rightsoft@3203'; + DConString := 'Provider=SQLOLEDB.1;Password=' + pswd + ';Persist Security Info=True;User ID=' + user + ';Initial Catalog=' + dtbase + ';Data Source=' + server; + if trim(DataBaseStr) <> '' then + DConString := DataBaseStr; + +// DParameters1 := 'Ȩ'; +// DParameters1 := 'ɱ'; + // DataBase:='ӹ'; +//DataBase:=''; + if not ConnData() then + begin + result := 0; + exit; + end; + + // 崰 ״̬ + if WinStyle = 0 then + begin + mstyle := fsMDIChild; + mstate := wsMaximized; + mborderstyle := bsSizeable; + end + else + begin + mstyle := fsNormal; + mstate := wsNormal; + mborderstyle := bsSizeable; + end; + ///////////////////// + //ģ鴰 + case FormID of + 1: //ͻά + begin + if frmZdyAttachment = nil then + begin + frmZdyAttachment := TfrmZdyAttachment.Create(application.MainForm); + with frmZdyAttachment do + begin + caption := Trim(Title); + fkhType := trim(DataBase); + Fmanage := trim(Parameters1); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmZdyAttachment.BringToFront; + // + mnewHandle := frmZdyAttachment.Handle; + + end; + 2: //Ӧά + begin + if frmZdyAttachGYS = nil then + begin + frmZdyAttachGYS := TfrmZdyAttachGYS.Create(application.MainForm); + with frmZdyAttachGYS do + begin + caption := Trim(Title); + // fDEFstr5:=trim(''); + fDEFstr5 := trim(DataBase); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmZdyAttachGYS.BringToFront; + // + mnewHandle := frmZdyAttachGYS.Handle; + + end; + 3: //Ʒά + begin + if frmZdyAttachCP = nil then + begin + frmZdyAttachCP := TfrmZdyAttachCP.Create(application.MainForm); + with frmZdyAttachCP do + begin + caption := Trim(Title); + // fkhType:=''; + fkhType := trim(DataBase); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmZdyAttachCP.BringToFront; + // + mnewHandle := frmZdyAttachCP.Handle; + + end; + 31: //Ʒά + begin + if frmZdyAttachCP10 = nil then + begin + frmZdyAttachCP10 := TfrmZdyAttachCP10.Create(application.MainForm); + with frmZdyAttachCP10 do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmZdyAttachCP10.BringToFront; + // + mnewHandle := frmZdyAttachCP10.Handle; + + end; + 4: //ܺĵǼ + begin + if frmNengHaoList = nil then + begin + frmNengHaoList := TfrmNengHaoList.Create(application.MainForm); + with frmNengHaoList do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmNengHaoList.BringToFront; + // + mnewHandle := frmNengHaoList.Handle; + + end; + 5: //ͳƻܲѯ + begin + if frmHZViewList = nil then + begin + frmHZViewList := TfrmHZViewList.Create(application.MainForm); + with frmHZViewList do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmHZViewList.BringToFront; + // + mnewHandle := frmHZViewList.Handle; + + end; + 6: //ͳƻܲѯ + begin + if frmCPKWList = nil then + begin + frmCPKWList := TfrmCPKWList.Create(application.MainForm); + with frmCPKWList do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmCPKWList.BringToFront; + // + mnewHandle := frmCPKWList.Handle; + + end; + 7: //ͻ + begin + if frmZdyAttachmentCB = nil then + begin + frmZdyAttachmentCB := TfrmZdyAttachmentCB.Create(application.MainForm); + with frmZdyAttachmentCB do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmZdyAttachmentCB.BringToFront; + // + mnewHandle := frmZdyAttachmentCB.Handle; + + end; + + 8: //λ + begin + if frmCPKWList = nil then + begin + frmCPKWList := TfrmCPKWList.Create(application.MainForm); + with frmCPKWList do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmCPKWList.BringToFront; + // + mnewHandle := frmCPKWList.Handle; + + end; + end; // end case + + Result := mnewHandle; +// NewDllApp := Application; +end; +//=========================================================== + //ݿӳ +//=========================================================== + +function ConnData(): Boolean; +begin + if not Assigned(DataLink_BaseInfo) then + DataLink_BaseInfo := TDataLink_BaseInfo.Create(Application); + try + with DataLink_BaseInfo.ADOLink do + begin + if not Connected then + begin + Connected := false; + ConnectionString := DConString; + LoginPrompt := false; + Connected := true; + end; + end; + Result := true; + except + Result := false; + application.MessageBox('ݿʧܣ', '', mb_Ok + MB_ICONERROR); + end; + +end; + +initialization + CoInitialize(nil); + dxUnitsLoader.Initialize; + + +finalization + DataLink_Baseinfo.Free; + application := NewDllApp; + dxUnitsLoader.Finalize; + +end. + diff --git a/基础资料维护(BaseInfo.dll)/U_HZViewList.dfm b/基础资料维护(BaseInfo.dll)/U_HZViewList.dfm new file mode 100644 index 0000000..253af05 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_HZViewList.dfm @@ -0,0 +1,797 @@ +object frmHZViewList: TfrmHZViewList + Left = 49 + Top = 51 + Width = 1024 + Height = 706 + Caption = #33021#32791#30331#35760 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1008 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + end + object TBDel: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + end + object ToolButton1: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + Visible = False + OnClick = ToolButton1Click + end + object ToolButton5: TToolButton + Left = 378 + Top = 0 + Caption = #25171#21360 + ImageIndex = 12 + OnClick = ToolButton5Click + end + object TBClose: TToolButton + Left = 437 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 31 + Width = 1008 + Height = 636 + Align = alClient + BevelInner = bvSpace + BevelKind = bkFlat + TabOrder = 1 + object Panel1: TPanel + Left = 0 + Top = 0 + Width = 1000 + Height = 48 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 0 + object Label1: TLabel + Left = 302 + Top = 21 + Width = 24 + Height = 12 + Caption = #36710#38388 + end + object Label4: TLabel + Left = 22 + Top = 21 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label5: TLabel + Left = 171 + Top = 22 + Width = 12 + Height = 12 + Caption = '--' + end + object BegDate: TDateTimePicker + Left = 72 + Top = 16 + Width = 97 + Height = 20 + Date = 41457.671719525460000000 + Time = 41457.671719525460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 184 + Top = 16 + Width = 97 + Height = 20 + Date = 41457.671719525460000000 + Time = 41457.671719525460000000 + TabOrder = 1 + end + object Chejian: TComboBox + Tag = 1 + Left = 328 + Top = 16 + Width = 137 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 2 + OnChange = ChejianChange + end + end + object Panel2: TPanel + Left = 0 + Top = 48 + Width = 1000 + Height = 260 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 1 + object cxGrid2: TcxGrid + Left = 2 + Top = 2 + Width = 353 + Height = 256 + Align = alLeft + TabOrder = 0 + object Tv1: TcxGridDBBandedTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DS_NH + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Column3 + end + item + Kind = skSum + Column = v1Column4 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_BaseInfo.Default + Styles.BandHeader = DataLink_BaseInfo.FontBlue + Bands = < + item + Caption = #33021#32791#32479#35745 + Width = 338 + end> + object v1Column1: TcxGridDBBandedColumn + Caption = #36710#38388 + DataBinding.FieldName = 'Chejian' + HeaderAlignmentHorz = taCenter + Width = 84 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object v1Column2: TcxGridDBBandedColumn + Caption = #33021#32791#31867#21035 + DataBinding.FieldName = 'NHType' + HeaderAlignmentHorz = taCenter + Width = 72 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v1Column3: TcxGridDBBandedColumn + Caption = #29992#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Width = 86 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object v1Column4: TcxGridDBBandedColumn + Caption = #37329#39069 + DataBinding.FieldName = 'NHMoney' + HeaderAlignmentHorz = taCenter + Width = 96 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv1 + end + end + object cxGrid1: TcxGrid + Left = 355 + Top = 2 + Width = 345 + Height = 256 + Align = alLeft + TabOrder = 1 + object Tv2: TcxGridDBBandedTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DS_JWL + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBBandedColumn3 + end + item + Kind = skSum + Column = cxGridDBBandedColumn2 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_BaseInfo.Default + Styles.BandHeader = DataLink_BaseInfo.FontBlue + Bands = < + item + Caption = #26426#29289#26009#29992#37327#32479#35745 + Width = 334 + end> + object cxGridDBBandedColumn1: TcxGridDBBandedColumn + Caption = #36710#38388 + DataBinding.FieldName = 'chejian' + HeaderAlignmentHorz = taCenter + Width = 81 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn2: TcxGridDBBandedColumn + Caption = #37329#39069 + DataBinding.FieldName = 'JWLMoney' + HeaderAlignmentHorz = taCenter + Width = 83 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn3: TcxGridDBBandedColumn + Caption = #29992#37327 + DataBinding.FieldName = 'CRQty' + HeaderAlignmentHorz = taCenter + Width = 52 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object v2Column1: TcxGridDBBandedColumn + Caption = #21407#26009#21697#21517 + DataBinding.FieldName = 'YCLName' + HeaderAlignmentHorz = taCenter + Width = 71 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v2Column2: TcxGridDBBandedColumn + Caption = #21333#20301 + DataBinding.FieldName = 'CRUnit' + HeaderAlignmentHorz = taCenter + Width = 47 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv2 + end + end + object cxGrid3: TcxGrid + Left = 700 + Top = 2 + Width = 298 + Height = 256 + Align = alClient + TabOrder = 2 + object Tv3: TcxGridDBBandedTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DS_RHL + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBBandedColumn6 + end + item + Kind = skSum + Column = cxGridDBBandedColumn5 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_BaseInfo.Default + Styles.BandHeader = DataLink_BaseInfo.FontBlue + Bands = < + item + Caption = #26579#21270#26009#29992#37327#32479#35745 + Width = 323 + end> + object cxGridDBBandedColumn4: TcxGridDBBandedColumn + Caption = #36710#38388 + DataBinding.FieldName = 'chejian' + HeaderAlignmentHorz = taCenter + Width = 74 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn5: TcxGridDBBandedColumn + Caption = #37329#39069 + DataBinding.FieldName = 'RHLMoney' + HeaderAlignmentHorz = taCenter + Width = 66 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn6: TcxGridDBBandedColumn + Caption = #29992#37327 + DataBinding.FieldName = 'CRQty' + HeaderAlignmentHorz = taCenter + Width = 73 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object v3Column1: TcxGridDBBandedColumn + Caption = #21407#26009#21697#21517 + DataBinding.FieldName = 'YCLName' + Width = 66 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v3Column2: TcxGridDBBandedColumn + Caption = #21333#20301 + DataBinding.FieldName = 'CRUnit' + HeaderAlignmentHorz = taCenter + Width = 44 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + end + object cxGridLevel3: TcxGridLevel + GridView = Tv3 + end + end + end + object Panel3: TPanel + Left = 0 + Top = 308 + Width = 1000 + Height = 320 + Align = alClient + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 2 + object cxGrid4: TcxGrid + Left = 2 + Top = 2 + Width = 353 + Height = 316 + Align = alLeft + TabOrder = 0 + object Tv4: TcxGridDBBandedTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DS_PB + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBBandedColumn9 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_BaseInfo.Default + Styles.BandHeader = DataLink_BaseInfo.FontBlue + Bands = < + item + Caption = #22383#24067#29992#37327#32479#35745 + Width = 338 + end> + object cxGridDBBandedColumn8: TcxGridDBBandedColumn + Caption = #22383#24067#21517#31216 + DataBinding.FieldName = 'YCLName' + HeaderAlignmentHorz = taCenter + Width = 84 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn9: TcxGridDBBandedColumn + Caption = #29992#37327 + DataBinding.FieldName = 'CRQty' + HeaderAlignmentHorz = taCenter + Width = 98 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object v4Column1: TcxGridDBBandedColumn + Caption = #23458#25143 + DataBinding.FieldName = 'GYSName' + HeaderAlignmentHorz = taCenter + Width = 62 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object v4Column2: TcxGridDBBandedColumn + Caption = #21333#20301 + DataBinding.FieldName = 'CRUnit' + HeaderAlignmentHorz = taCenter + Width = 54 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object v4Column3: TcxGridDBBandedColumn + Caption = #21305#25968 + DataBinding.FieldName = 'PS' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 40 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + end + object cxGridLevel4: TcxGridLevel + GridView = Tv4 + end + end + object cxGrid5: TcxGrid + Left = 355 + Top = 2 + Width = 643 + Height = 316 + Align = alClient + TabOrder = 1 + object Tv5: TcxGridDBBandedTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DS_CP + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBBandedColumn12 + end + item + Kind = skSum + Column = v5Column1 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_BaseInfo.Default + Styles.BandHeader = DataLink_BaseInfo.FontBlue + Bands = < + item + Caption = #25104#21697#29983#20135#32479#35745 + Width = 673 + end> + object cxGridDBBandedColumn11: TcxGridDBBandedColumn + Caption = #25104#21697#21517#31216 + DataBinding.FieldName = 'PCode' + HeaderAlignmentHorz = taCenter + Width = 73 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn12: TcxGridDBBandedColumn + Caption = #29983#20135#25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Width = 78 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object Tv5Column1: TcxGridDBBandedColumn + Caption = #35268#26684 + DataBinding.FieldName = 'PSpec' + HeaderAlignmentHorz = taCenter + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object Tv5Column2: TcxGridDBBandedColumn + Caption = #25104#20221 + DataBinding.FieldName = 'PCF' + HeaderAlignmentHorz = taCenter + Width = 50 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object Tv5Column3: TcxGridDBBandedColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object Tv5Column4: TcxGridDBBandedColumn + Caption = #23458#25143 + DataBinding.FieldName = 'KHName' + HeaderAlignmentHorz = taCenter + Width = 78 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object Tv5Column5: TcxGridDBBandedColumn + Caption = #39068#33394 + DataBinding.FieldName = 'ColorNo' + HeaderAlignmentHorz = taCenter + Width = 52 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object Tv5Column6: TcxGridDBBandedColumn + Caption = #21305#25968 + DataBinding.FieldName = 'JSL' + HeaderAlignmentHorz = taCenter + Width = 54 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object Tv5Column7: TcxGridDBBandedColumn + Caption = #31867#21035 + DataBinding.FieldName = 'MJType' + HeaderAlignmentHorz = taCenter + Width = 69 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object v5Column1: TcxGridDBBandedColumn + Caption = #37329#39069 + DataBinding.FieldName = 'CPMoney' + FooterAlignmentHorz = taCenter + HeaderAlignmentHorz = taCenter + Width = 86 + Position.BandIndex = 0 + Position.ColIndex = 10 + Position.RowIndex = 0 + end + object v5Column2: TcxGridDBBandedColumn + Caption = #21333#20301 + DataBinding.FieldName = 'LenUnit' + HeaderAlignmentHorz = taCenter + Width = 47 + Position.BandIndex = 0 + Position.ColIndex = 9 + Position.RowIndex = 0 + end + end + object cxGridLevel5: TcxGridLevel + GridView = Tv5 + end + end + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 557 + Top = 217 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 581 + Top = 217 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 157 + Top = 273 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 480 + Top = 232 + end + object DS_NH: TDataSource + DataSet = CDS_NH + Left = 187 + Top = 227 + end + object CDS_NH: TClientDataSet + Aggregates = <> + Params = <> + Left = 216 + Top = 224 + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 248 + Top = 224 + end + object CDS_JWL: TClientDataSet + Aggregates = <> + Params = <> + Left = 448 + Top = 232 + end + object DS_JWL: TDataSource + DataSet = CDS_JWL + Left = 419 + Top = 235 + end + object DS_RHL: TDataSource + DataSet = CDS_RHL + Left = 819 + Top = 267 + end + object CDS_RHL: TClientDataSet + Aggregates = <> + Params = <> + Left = 848 + Top = 264 + end + object cxGridPopupMenu3: TcxGridPopupMenu + PopupMenus = <> + Left = 880 + Top = 264 + end + object DS_PB: TDataSource + DataSet = CDS_PB + Left = 163 + Top = 531 + end + object CDS_PB: TClientDataSet + Aggregates = <> + Params = <> + Left = 192 + Top = 528 + end + object cxGridPopupMenu4: TcxGridPopupMenu + PopupMenus = <> + Left = 224 + Top = 528 + end + object DS_CP: TDataSource + DataSet = CDS_CP + Left = 611 + Top = 547 + end + object CDS_CP: TClientDataSet + Aggregates = <> + Params = <> + Left = 640 + Top = 544 + end + object cxGridPopupMenu5: TcxGridPopupMenu + PopupMenus = <> + Left = 672 + Top = 544 + end + object dxComponentPrinter1: TdxComponentPrinter + CurrentLink = dxComponentPrinter1Link1 + Version = 0 + Left = 472 + Top = 281 + object dxComponentPrinter1Link1: TdxCustomContainerReportLink + Active = True + Component = ScrollBox1 + PrinterPage.DMPaper = 9 + PrinterPage.Footer = 6350 + PrinterPage.GrayShading = True + PrinterPage.Header = 6350 + PrinterPage.Margins.Bottom = 12700 + PrinterPage.Margins.Left = 12700 + PrinterPage.Margins.Right = 12700 + PrinterPage.Margins.Top = 12700 + PrinterPage.Orientation = poLandscape + PrinterPage.PageSize.X = 210000 + PrinterPage.PageSize.Y = 297000 + PrinterPage._dxMeasurementUnits_ = 0 + PrinterPage._dxLastMU_ = 2 + ReportDocument.CreationDate = 45068.620899756940000000 + ReportTitle.Text = #20135#20540#27719#24635#34920 + BuiltInReportLink = True + HiddenComponents = {} + ExcludedComponents = {} + AggregatedReportLinks = {} + end + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_HZViewList.pas b/基础资料维护(BaseInfo.dll)/U_HZViewList.pas new file mode 100644 index 0000000..a409d15 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_HZViewList.pas @@ -0,0 +1,322 @@ +unit U_HZViewList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxGridBandedTableView, cxGridDBBandedTableView, + dxPSGlbl, dxPSUtl, dxPSEngn, dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, + dxPSCompsProvider, dxPSFillPatterns, dxPSEdgePatterns, dxPSCore, + dxPScxCommon, dxPScxGridLnk, dxPSContainerLnk, cxLookAndFeels, + cxLookAndFeelPainters, cxNavigator, dxPSPDFExportCore, dxPSPDFExport, + cxDrawTextUtils, dxPSPrVwStd, dxPSPrVwAdv, dxPSPrVwRibbon, + dxPScxPageControlProducer, dxPScxGridLayoutViewLnk, + dxPScxEditorProducers, dxPScxExtEditorProducers; +// dxfQuickTyp, +type + TfrmHZViewList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_NH: TDataSource; + ToolButton3: TToolButton; + ToolButton4: TToolButton; + CDS_NH: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + CDS_JWL: TClientDataSet; + DS_JWL: TDataSource; + DS_RHL: TDataSource; + CDS_RHL: TClientDataSet; + cxGridPopupMenu3: TcxGridPopupMenu; + DS_PB: TDataSource; + CDS_PB: TClientDataSet; + cxGridPopupMenu4: TcxGridPopupMenu; + DS_CP: TDataSource; + CDS_CP: TClientDataSet; + cxGridPopupMenu5: TcxGridPopupMenu; + ToolButton5: TToolButton; + dxComponentPrinter1: TdxComponentPrinter; + ScrollBox1: TScrollBox; + Panel1: TPanel; + Label1: TLabel; + Label4: TLabel; + Label5: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Chejian: TComboBox; + Panel2: TPanel; + cxGrid2: TcxGrid; + Tv1: TcxGridDBBandedTableView; + v1Column1: TcxGridDBBandedColumn; + v1Column2: TcxGridDBBandedColumn; + v1Column3: TcxGridDBBandedColumn; + v1Column4: TcxGridDBBandedColumn; + cxGridLevel1: TcxGridLevel; + cxGrid1: TcxGrid; + Tv2: TcxGridDBBandedTableView; + cxGridDBBandedColumn1: TcxGridDBBandedColumn; + cxGridDBBandedColumn2: TcxGridDBBandedColumn; + cxGridDBBandedColumn3: TcxGridDBBandedColumn; + v2Column1: TcxGridDBBandedColumn; + v2Column2: TcxGridDBBandedColumn; + cxGridLevel2: TcxGridLevel; + cxGrid3: TcxGrid; + Tv3: TcxGridDBBandedTableView; + cxGridDBBandedColumn4: TcxGridDBBandedColumn; + cxGridDBBandedColumn5: TcxGridDBBandedColumn; + cxGridDBBandedColumn6: TcxGridDBBandedColumn; + v3Column1: TcxGridDBBandedColumn; + v3Column2: TcxGridDBBandedColumn; + cxGridLevel3: TcxGridLevel; + Panel3: TPanel; + cxGrid4: TcxGrid; + Tv4: TcxGridDBBandedTableView; + cxGridDBBandedColumn8: TcxGridDBBandedColumn; + cxGridDBBandedColumn9: TcxGridDBBandedColumn; + v4Column1: TcxGridDBBandedColumn; + v4Column2: TcxGridDBBandedColumn; + cxGridLevel4: TcxGridLevel; + cxGrid5: TcxGrid; + Tv5: TcxGridDBBandedTableView; + cxGridDBBandedColumn11: TcxGridDBBandedColumn; + cxGridDBBandedColumn12: TcxGridDBBandedColumn; + Tv5Column1: TcxGridDBBandedColumn; + Tv5Column2: TcxGridDBBandedColumn; + Tv5Column3: TcxGridDBBandedColumn; + Tv5Column4: TcxGridDBBandedColumn; + Tv5Column5: TcxGridDBBandedColumn; + Tv5Column6: TcxGridDBBandedColumn; + Tv5Column7: TcxGridDBBandedColumn; + v5Column1: TcxGridDBBandedColumn; + v5Column2: TcxGridDBBandedColumn; + cxGridLevel5: TcxGridLevel; + dxComponentPrinter1Link1: TdxCustomContainerReportLink; + v4Column3: TcxGridDBBandedColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure NHBiaoNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ChejianChange(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + + public + + end; + +var + frmHZViewList: TfrmHZViewList; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp,U_NengHaoInput; + +{$R *.dfm} + + + +procedure TfrmHZViewList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + sql.Add('select Sum(Qty) Qty,sum(Qty*Price) NHMoney,CheJian, NHType from NengHao '); + sql.Add(' where NHDate>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+''''); + sql.Add(' and NHDate<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''); + sql.Add('Group by CheJian ,NHType'); + Open; + SCreateCDS20(ADOQueryMain,CDS_NH); + SInitCDSData20(ADOQueryMain,CDS_NH); + end; + with ADOQueryMain do + begin + Close; + sql.Clear; + sql.Add('select Sum(CRQty) CRQty,sum(CRQty*YCLPrice) JWLMoney,ZdyStr1 chejian,YCLName,CRUnit from CK_YCL_CR '); + sql.Add(' where CRTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+''''); + sql.Add(' and CRTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''); + sql.Add(' and CKName=''ϲֿ'' '); + sql.Add(' and CRType='''' '); + sql.Add('Group by ZdyStr1,YCLName,CRUnit'); + Open; + SCreateCDS20(ADOQueryMain,CDS_JWL); + SInitCDSData20(ADOQueryMain,CDS_JWL); + end; + with ADOQueryMain do + begin + Close; + sql.Clear; + sql.Add('select Sum(CRQty) CRQty,sum(CRQty*YCLPrice) RHLMoney,ZdyStr1 chejian,YCLName,CRUnit from CK_YCL_CR '); + sql.Add(' where CRTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+''''); + sql.Add(' and CRTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''); + sql.Add(' and CKName=''Ⱦϲֿ'' '); + sql.Add(' and CRType='''' '); + sql.Add('Group by ZdyStr1,YCLName,CRUnit'); + Open; + SCreateCDS20(ADOQueryMain,CDS_RHL); + SInitCDSData20(ADOQueryMain,CDS_RHL); + end; + with ADOQueryMain do + begin + Close; + sql.Clear; + sql.Add('select Sum(CRQty) CRQty,sum(PS) PS,YCLName,CRUnit,GYSName from CK_PB_CR '); + sql.Add(' where CRTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+''''); + sql.Add(' and CRTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''); + //sql.Add(' and CKName=''Ⱦϲֿ'' '); + sql.Add(' and CRType='''' '); + sql.Add('Group by GYSName,YCLName,CRUnit'); + Open; + SCreateCDS20(ADOQueryMain,CDS_PB); + SInitCDSData20(ADOQueryMain,CDS_PB); + end; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select sum(AA.Qty) Qty ,sum(AA.KgQty) KgQty,sum(AA.KgQtyP) KgQtyP,Count(*) JSL,LenUnit,PCode,ColorNo,MJDate,KHName,CKNO,OrderNo '); + sql.Add(',PSpec,PCF,PHuaNo,PColorNo ,MJFK,MJSJKZ,MJType,CPMoney=Sum(CPMoney)'); + SQL.Add(' from(select A.Qty ,A.KgQty ,A.KgQtyP,A.CKNO,D.LenUnit,D.PCode,D.ColorNo,D.OrderNo,CPMoney=Qty*A.Price,'); + sql.Add('MJDate=convert(varchar(10),A.CRTime,120),A.KHName'); + sql.Add(',D.PSpec,D.PCF,D.PHuaNo,D.PColorNo,D.MJFK,D.MJSJKZ,D.MJType,D.BatchNo'); + sql.add('from CK_BanCP_CR A '); + Sql.add(' inner join XH_MJJY D on A.MJId=D.MJId'); + sql.add('where A.CRTime>=:begdate and A.CRTime<:enddate'); + SQL.Add(' and CRType='''' ) AA'); + sql.Add(' Group by LenUnit,PCode,ColorNo,MJDate,KHName,CKNO,OrderNo,PSpec,PCF,PHuaNo,PColorNo ,MJFK,MJSJKZ,MJType,BatchNo'); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime)); + Parameters.ParamByName('enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',enddate.DateTime+1)); + Open; + //ShowMessage(SQL.Text); + end; + SCreateCDS20(ADOQueryMain,CDS_CP); + SInitCDSData20(ADOQueryMain,CDS_CP); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmHZViewList.FormDestroy(Sender: TObject); +begin + frmHZViewList:=nil; +end; + +procedure TfrmHZViewList.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmHZViewList.TBCloseClick(Sender: TObject); +begin + WriteCxBandedGrid('HZѯ1',Tv1,'ͻԶ'); + WriteCxBandedGrid('HZѯ2',Tv2,'ͻԶ'); + WriteCxBandedGrid('HZѯ3',Tv3,'ͻԶ'); + WriteCxBandedGrid('HZѯ4',Tv4,'ͻԶ'); + WriteCxBandedGrid('HZѯ5',Tv5,'ͻԶ'); + Close; +end; +procedure TfrmHZViewList.FormShow(Sender: TObject); +begin + //ReadCxGrid('ܺIJѯ',Tv2,'ͻԶ'); + ReadCxBandedGrid('HZѯ1',Tv1,'ͻԶ'); + ReadCxBandedGrid('HZѯ2',Tv2,'ͻԶ'); + ReadCxBandedGrid('HZѯ3',Tv3,'ͻԶ'); + ReadCxBandedGrid('HZѯ4',Tv4,'ͻԶ'); + ReadCxBandedGrid('HZѯ5',Tv5,'ͻԶ'); + //InitGrid(); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Code=ZdyNo,Name=ZdyName from KH_Zdy where Type=''chejian'' '); + Open; + end; + Chejian.Items.Clear; + with ADOQueryTemp do + begin + First; + while not Eof do + begin + Chejian.Items.Add(Trim(ADOQueryTemp.fieldbyname('Name').AsString)); + Next; + end; + end; + Chejian.Items.Add(''); + BegDate.Date:=SGetServerDate(ADOQueryTemp); + EndDate.Date:=BegDate.Date; +end; + +procedure TfrmHZViewList.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmHZViewList.NHBiaoNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmHZViewList.ToolButton1Click(Sender: TObject); +begin + //if ADOQueryMain.IsEmpty then Exit; + // SelExportData(Tv2,ADOQueryMain,'ܺб'); +end; + +procedure TfrmHZViewList.ChejianChange(Sender: TObject); +begin + if CDS_NH.Active=True then + SDofilter10(CDS_NH,SGetFilters(Panel1,1,2)); + if CDS_JWL.Active=True then + SDofilter10(CDS_JWL,SGetFilters(Panel1,1,2)); + if CDS_RHL.Active=True then + SDofilter10(CDS_RHL,SGetFilters(Panel1,1,2)); +end; + +procedure TfrmHZViewList.ToolButton2Click(Sender: TObject); +begin + if CDS_NH.Active=True then + SDofilter10(CDS_NH,SGetFilters(Panel1,1,2)); + if CDS_JWL.Active=True then + SDofilter10(CDS_JWL,SGetFilters(Panel1,1,2)); + if CDS_RHL.Active=True then + SDofilter10(CDS_RHL,SGetFilters(Panel1,1,2)); +end; + +procedure TfrmHZViewList.ToolButton5Click(Sender: TObject); +begin + dxComponentPrinter1.Preview(False,nil); + dxComponentPrinter1.ReportLink[0].Preview; +end; + +end. + + diff --git a/基础资料维护(BaseInfo.dll)/U_KHAdd.dfm b/基础资料维护(BaseInfo.dll)/U_KHAdd.dfm new file mode 100644 index 0000000..a9eb4ae --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_KHAdd.dfm @@ -0,0 +1,262 @@ +object frmKHAdd: TfrmKHAdd + Left = 93 + Top = 232 + Width = 1130 + Height = 388 + Caption = #23458#25143#36164#26009#32534#36753 + Color = clBtnFace + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 13 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1122 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YPGLWT.ThreeImgList + Flat = True + Images = DataLink_YPGLWT.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object ToolButton6: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 111 + OnClick = ToolButton6Click + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 31 + Width = 1122 + Height = 320 + Align = alClient + TabOrder = 1 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_BJ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_YPGLWT.Default + object v2Column2: TcxGridDBColumn + Caption = #23458#25143#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 87 + end + object v2Column16: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'DEFstr1' + HeaderAlignmentHorz = taCenter + Width = 62 + end + object v2Column14: TcxGridDBColumn + Caption = #24402#23646#20154 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + HeaderAlignmentHorz = taCenter + Width = 59 + end + object v2Column10: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'MainType' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + HeaderAlignmentHorz = taCenter + Width = 82 + end + object v2Column9: TcxGridDBColumn + Caption = #32852#31995#20154 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column3: TcxGridDBColumn + Caption = #32852#31995#26041#24335 + DataBinding.FieldName = 'DEFNote1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2Column7: TcxGridDBColumn + Caption = #20844#21496#22320#22336 + DataBinding.FieldName = 'DEFNote2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 67 + end + object v2Column6: TcxGridDBColumn + Caption = #20844#21496#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 77 + end + object v2Column4: TcxGridDBColumn + Caption = #20844#21496#21517#31216'('#20013#25991')' + DataBinding.FieldName = 'DEFstr9' + Width = 100 + end + object v2Column5: TcxGridDBColumn + Caption = #20844#21496#31867#22411 + DataBinding.FieldName = 'DEFstr4' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column5PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 67 + end + object v2Column11: TcxGridDBColumn + Caption = #23458#25143#26469#28304 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2Column12: TcxGridDBColumn + Caption = #20027#33829#24066#22330 + DataBinding.FieldName = 'DEFstr6' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column12PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 62 + end + object v2Column13: TcxGridDBColumn + Caption = #20027#33829#20135#21697 + DataBinding.FieldName = 'DEFstr7' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column13PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2Column15: TcxGridDBColumn + Caption = #23458#25143#21306#22495 + DataBinding.FieldName = 'DEFstr8' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column15PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 67 + end + object v2Column8: TcxGridDBColumn + Caption = #20844#21496#24773#20917 + DataBinding.FieldName = 'DEFstr10' + Width = 66 + end + object v2Column17: TcxGridDBColumn + Caption = #20854#20182#20449#24687 + DataBinding.FieldName = 'DEFNote3' + Width = 66 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 84 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object DS_BJ: TDataSource + DataSet = CDS_SQ + Left = 435 + Top = 147 + end + object CDS_SQ: TClientDataSet + Aggregates = <> + Params = <> + Left = 392 + Top = 152 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YPGLWT.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 117 + Top = 145 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YPGLWT.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 261 + Top = 169 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YPGLWT.ADOLink + Parameters = <> + Left = 317 + Top = 121 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 216 + Top = 117 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_KHAdd.pas b/基础资料维护(BaseInfo.dll)/U_KHAdd.pas new file mode 100644 index 0000000..3f4ce2b --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_KHAdd.pas @@ -0,0 +1,303 @@ +unit U_KHAdd; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, BtnEdit, ComCtrls, cxStyles, cxCustomData, cxGraphics, + cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ToolWin, + cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, + cxClasses, cxControls, cxGridCustomView, cxGrid, cxCalendar, DBClient, + ADODB, cxButtonEdit, cxDropDownEdit, cxGridCustomPopupMenu, + cxGridPopupMenu, cxTextEdit; + +type + TfrmKHAdd = class(TForm) + ToolBar1: TToolBar; + ToolButton6: TToolButton; + TBClose: TToolButton; + DS_BJ: TDataSource; + CDS_SQ: TClientDataSet; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + cxGridPopupMenu1: TcxGridPopupMenu; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column2: TcxGridDBColumn; + v2Column16: TcxGridDBColumn; + v2Column14: TcxGridDBColumn; + v2Column10: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column11: TcxGridDBColumn; + v2Column12: TcxGridDBColumn; + v2Column13: TcxGridDBColumn; + v2Column15: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + v2Column8: TcxGridDBColumn; + v2Column17: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure ToolButton6Click(Sender: TObject); + procedure v2Column5PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column12PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column13PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column15PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + private + { Private declarations } + public + { Public declarations } + FCYID,FYSID,FPrice:String; + end; + +var + frmKHAdd: TfrmKHAdd; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmKHAdd.FormDestroy(Sender: TObject); +begin + frmKHAdd:=nil; +end; + +procedure TfrmKHAdd.FormShow(Sender: TObject); +var + FBZType,fsj:string; +begin + ReadCxGrid('ͻAdd',Tv2,''); + fsj:='select UserId code,UserName Name from SY_User where UserId not in(''Admin'',''Test'')'; + SInitCxGridComboBoxBySql(ADOQueryTemp,v2Column14,fsj,1,False,''); + fsj:='select UserId code,UserName Name from SY_User where UserId not in(''Admin'',''Test'')'; + SInitCxGridComboBoxBySql(ADOQueryTemp,v2Column10,fsj,1,False,''); + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment where ATID='''+Trim(FYSID)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_SQ); + SInitCDSData20(ADOQueryMain,CDS_SQ); + if CDS_SQ.IsEmpty then + begin + with CDS_SQ do + begin + Append; + Post; + end; + end; + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmKHAdd.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ͻAdd',Tv2,''); +end; + +procedure TfrmKHAdd.ToolButton6Click(Sender: TObject); +var + maxno:String; +begin + if Trim(CDS_SQ.fieldbyname('ZdyCode').AsString)='' then + begin + Application.MessageBox('ͻŲΪ!','ʾ',0); + Exit; + end; + ToolBar1.SetFocus; + try + ADOQueryCmd.Connection.BeginTrans; + if Trim(FYSID)='' then + begin + if GetLSNo(ADOQueryCmd,maxno,'AT','KH_Zdy_Attachment',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡͻIDʧ!','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(FYSID); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment where ATID='''+Trim(maxno)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(FYSID)='' then + begin + Append; + FieldByName('Filler').Value:=Trim(DName); + end else + begin + Edit; + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOQueryTemp); + end; + FieldByName('ATID').Value:=Trim(maxno); + FieldByName('Type').Value:='KHName'; + FieldByName('ZdyName').Value:=CDS_SQ.fieldbyname('ZdyName').Value; + FieldByName('MainType').Value:=CDS_SQ.fieldbyname('MainType').Value; + FieldByName('ZdyCode').Value:=CDS_SQ.fieldbyname('ZdyCode').Value; + FieldByName('DEFstr1').Value:=CDS_SQ.fieldbyname('DEFstr1').Value; + FieldByName('DEFstr2').Value:=CDS_SQ.fieldbyname('DEFstr2').Value; + FieldByName('DEFstr3').Value:=CDS_SQ.fieldbyname('DEFstr3').Value; + FieldByName('DEFstr4').Value:=CDS_SQ.fieldbyname('DEFstr4').Value; + FieldByName('DEFstr5').Value:=CDS_SQ.fieldbyname('DEFstr5').Value; + FieldByName('DEFstr6').Value:=CDS_SQ.fieldbyname('DEFstr6').Value; + FieldByName('DEFstr7').Value:=CDS_SQ.fieldbyname('DEFstr7').Value; + FieldByName('DEFstr8').Value:=CDS_SQ.fieldbyname('DEFstr8').Value; + FieldByName('DEFstr9').Value:=CDS_SQ.fieldbyname('DEFstr9').Value; + FieldByName('DEFstr10').Value:=CDS_SQ.fieldbyname('DEFstr10').Value; + FieldByName('DEFNote1').Value:=CDS_SQ.fieldbyname('DEFNote1').Value; + FieldByName('DEFNote2').Value:=CDS_SQ.fieldbyname('DEFNote2').Value; + FieldByName('DEFNote3').Value:=CDS_SQ.fieldbyname('DEFNote3').Value; + FieldByName('DEFNote4').Value:=CDS_SQ.fieldbyname('DEFNote4').Value; + FieldByName('DEFNote5').Value:=CDS_SQ.fieldbyname('DEFNote5').Value; + Post; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select Count(*) FFCount from KH_Zdy_Attachment where ZdyCode='''+Trim(CDS_SQ.fieldbyname('ZdyCode').AsString)+''''); + Open; + end; + if ADOQueryCmd.FieldByName('FFCount').AsInteger>1 then + begin + ADOQueryCmd.Connection.RollbackTrans; + //FYSID:=''; + Application.MessageBox('ظ!','ʾ',0); + Exit; + end; + FYSID:=Trim(maxno); + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ!','ʾ',0); + ModalResult:=1; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣!','ʾ',0); + end; +end; + +procedure TfrmKHAdd.v2Column5PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='DEFstr4GSLX'; + flagname:='˾'; + //MainType:=Trim(DName); + if ShowModal=1 then + begin + with Self.CDS_SQ do + begin + Edit; + FieldByName('DEFstr4').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmKHAdd.v2Column12PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='DEFstr6ZYSC'; + flagname:='Ӫг'; + //MainType:=Trim(DName); + if ShowModal=1 then + begin + with Self.CDS_SQ do + begin + Edit; + FieldByName('DEFstr6').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmKHAdd.v2Column13PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='DEFstr7ZYCP'; + flagname:='ӪƷ'; + //MainType:=Trim(DName); + if ShowModal=1 then + begin + with Self.CDS_SQ do + begin + Edit; + FieldByName('DEFstr7').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmKHAdd.v2Column15PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='DEFstr8KHQY'; + flagname:='ͻ'; + //MainType:=Trim(DName); + if ShowModal=1 then + begin + with Self.CDS_SQ do + begin + Edit; + FieldByName('DEFstr8').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +end. diff --git a/基础资料维护(BaseInfo.dll)/U_KHHelp.dfm b/基础资料维护(BaseInfo.dll)/U_KHHelp.dfm new file mode 100644 index 0000000..d4f324a --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_KHHelp.dfm @@ -0,0 +1,17996 @@ +object frmKHHelp: TfrmKHHelp + Left = 437 + Top = 207 + Width = 432 + Height = 528 + Caption = #23458#25143#21517#31216 + 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 + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object cxGrid1: TcxGrid + Left = 16 + Top = 80 + Width = 369 + Height = 200 + 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.FocusFirstCellOnNewRecord = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + object V1Column1: TcxGridDBColumn + Caption = #23458#25143#32534#21495 + DataBinding.FieldName = 'ZdyCode' + HeaderAlignmentHorz = taCenter + Width = 120 + end + object V1Name: TcxGridDBColumn + Tag = 2 + Caption = #23458#25143#21517#31216 + DataBinding.FieldName = 'ZDYName' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 122 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = TV1 + end + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 424 + 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 TBClose: TToolButton + Left = 59 + Top = 0 + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 29 + Width = 424 + Height = 44 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 2 + object Label1: TLabel + Left = 18 + Top = 17 + Width = 48 + Height = 12 + Caption = #23458#25143#21517#31216 + end + object ZDYName: TEdit + Tag = 2 + Left = 69 + Top = 12 + Width = 169 + Height = 20 + TabOrder = 0 + OnChange = ZDYNameChange + end + end + object ADOQueryMain: TADOQuery + Connection = ADOConnection1 + LockType = ltReadOnly + Parameters = <> + Left = 48 + Top = 136 + end + object ADOQueryTemp: TADOQuery + Connection = ADOConnection1 + LockType = ltReadOnly + Parameters = <> + Left = 80 + Top = 144 + end + object ADOQueryCmd: TADOQuery + Connection = ADOConnection1 + Parameters = <> + Left = 112 + Top = 152 + end + object DataSource1: TDataSource + DataSet = ClientDataSet1 + Left = 280 + Top = 144 + end + object ClientDataSet1: TClientDataSet + Aggregates = <> + Params = <> + Left = 208 + Top = 144 + end + object ADOConnection1: TADOConnection + LoginPrompt = False + Left = 120 + Top = 264 + 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 + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 168 + Top = 152 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_KHHelp.pas b/基础资料维护(BaseInfo.dll)/U_KHHelp.pas new file mode 100644 index 0000000..e08b5de --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_KHHelp.pas @@ -0,0 +1,167 @@ +unit U_KHHelp; + +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, cxTextEdit, cxGridCustomPopupMenu, cxGridPopupMenu; + +type + TfrmKHHelp = class(TForm) + TV1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + V1Name: TcxGridDBColumn; + ToolBar1: TToolBar; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + DataSource1: TDataSource; + ClientDataSet1: TClientDataSet; + TBClose: TToolButton; + ToolButton1: TToolButton; + ADOConnection1: TADOConnection; + Panel1: TPanel; + Label1: TLabel; + ZDYName: TEdit; + ThreeImgList: TImageList; + cxGridPopupMenu1: TcxGridPopupMenu; + V1Column1: TcxGridDBColumn; + procedure FormCreate(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure TV1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure ZDYNameChange(Sender: TObject); + procedure FormDestroy(Sender: TObject); + private + procedure InitGrid(); + { Private declarations } + public + flag,flagname,snote,MainType:string; + fnote,forderno,fZdyFlag:Boolean; + PPSTE:integer; + { Public declarations } + end; + +var + frmKHHelp: TfrmKHHelp; + +implementation +uses + U_DataLink,U_Fun; + +{$R *.dfm} + +procedure TfrmKHHelp.FormCreate(Sender: TObject); +begin + try + cxGrid1.Align:=alClient; + with ADOConnection1 do + begin + Connected:=false; + ConnectionString:=DConString; + //ConnectionString:=''; + Connected:=true; + end; + except + frmZDYHelp.Free; + end; +end; + +procedure TfrmKHHelp.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + ZDYName.SetFocus; + Action:=caFree; +end; + +procedure TfrmKHHelp.InitGrid(); +var + CYType:String; +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from SY_User where UserId='''+Trim(DCode)+''''); + Open; + end; + CYType:=Trim(ADOQueryTemp.fieldbyname('DPID').AsString); + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + sql.Add('exec P_Select_User_KHName :CYType'); + Parameters.ParamByName('CYType').Value:=Trim(CYType); + Open; + end; + SCreateCDS20(ADOQueryMain,ClientDataSet1); + SInitCDSData20(ADOQueryMain,ClientDataSet1); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmKHHelp.TBCloseClick(Sender: TObject); +begin + ModalResult:=2; + ZDYName.SetFocus; + WriteCxGrid('ͻ',TV1,''); + Close; +end; + +procedure TfrmKHHelp.FormShow(Sender: TObject); +begin + InitGrid(); + ReadCxGrid('ͻ',TV1,''); +end; + +procedure TfrmKHHelp.ToolButton1Click(Sender: TObject); +begin + ZDYName.SetFocus; + ModalResult:=1; +end; + +procedure TfrmKHHelp.TV1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if TV1.OptionsData.Editing=False then + begin + ModalResult:=1; + end; +end; + +procedure TfrmKHHelp.ZDYNameChange(Sender: TObject); +var + fsj:String; +begin + if Trim(ZDYName.Text)<>'' then + begin + fsj:=' zdyname like '''+'%'+Trim(ZDYName.Text)+'%'+'''' + +' or ZJM like '''+'%'+Trim(ZDYName.Text)+'%'+''''; + end; + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,ClientDataSet1); + SInitCDSData20(ADOQueryMain,ClientDataSet1); + end; +end; + +procedure TfrmKHHelp.FormDestroy(Sender: TObject); +begin + frmKHHelp:=nil; +end; + +end. diff --git a/基础资料维护(BaseInfo.dll)/U_KHInfo.dfm b/基础资料维护(BaseInfo.dll)/U_KHInfo.dfm new file mode 100644 index 0000000..d07f573 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_KHInfo.dfm @@ -0,0 +1,314 @@ +object frmKHInfo: TfrmKHInfo + Left = 41 + Top = 136 + Width = 1154 + Height = 577 + Caption = #23458#25143#20449#24687 + 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 = 1146 + 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_CPCK.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + end + object TBExport: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBTP: TToolButton + Left = 189 + Top = 0 + Caption = #26356#26032 + ImageIndex = 106 + OnClick = TBTPClick + end + object TBClose: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1146 + Height = 42 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 27 + Top = 15 + Width = 52 + Height = 12 + Caption = #23458#25143#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 174 + Top = 15 + Width = 26 + Height = 12 + Caption = #20195#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object OrderNo: TEdit + Tag = 2 + Left = 80 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 0 + OnChange = WFBCodeNameChange + end + object WFBCodeName: TEdit + Tag = 2 + Left = 203 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 1 + OnChange = WFBCodeNameChange + end + end + object cxGrid1: TcxGrid + Left = 32 + Top = 112 + Width = 969 + Height = 200 + TabOrder = 2 + object TV1: TcxGridDBBandedTableView + NavigatorButtons.ConfirmDelete = False + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Bands = < + item + Width = 174 + end + item + Width = 145 + end + item + Width = 90 + end + item + Width = 99 + end + item + Width = 71 + end + item + Width = 84 + end + item + Width = 157 + end> + object V1Column1: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object V1Column2: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object V1Column3: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object V1Column4: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object V1Column5: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object V1Column6: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object V1Column7: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object V1Column8: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object V1Column9: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object V1Column10: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 9 + Position.RowIndex = 0 + end + object V1Column11: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 10 + Position.RowIndex = 0 + end + object V1Column12: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 11 + Position.RowIndex = 0 + end + object V1Column13: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 12 + Position.RowIndex = 0 + end + object V1Column14: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 13 + Position.RowIndex = 0 + end + object V1Column15: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 14 + Position.RowIndex = 0 + end + object V1Column16: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 15 + Position.RowIndex = 0 + end + object V1Column17: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 16 + Position.RowIndex = 0 + end + object V1Column18: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 17 + Position.RowIndex = 0 + end + object V1Column19: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 18 + Position.RowIndex = 0 + end + object V1Column20: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 19 + Position.RowIndex = 0 + end + object V1Column21: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 20 + Position.RowIndex = 0 + end + object V1Column22: TcxGridDBBandedColumn + Position.BandIndex = 0 + Position.ColIndex = 21 + Position.RowIndex = 0 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = TV1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 760 + Top = 136 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 704 + Top = 136 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 664 + Top = 112 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_CPCK.ADOLink + Parameters = <> + Left = 648 + Top = 40 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_CPCK.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 688 + Top = 40 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_KHInfo.pas b/基础资料维护(BaseInfo.dll)/U_KHInfo.pas new file mode 100644 index 0000000..0c8b670 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_KHInfo.pas @@ -0,0 +1,186 @@ +unit U_KHInfo; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, ADODB, DBClient, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, StdCtrls, ComCtrls, ExtCtrls, + ToolWin, cxCalendar, cxButtonEdit, cxCheckBox, cxGridBandedTableView, + cxGridDBBandedTableView; + +type + TfrmKHInfo = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBExport: TToolButton; + TBClose: TToolButton; + TBTP: TToolButton; + Panel1: TPanel; + Label3: TLabel; + Label5: TLabel; + OrderNo: TEdit; + WFBCodeName: TEdit; + cxGridPopupMenu1: TcxGridPopupMenu; + DataSource1: TDataSource; + Order_Main: TClientDataSet; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + TV1: TcxGridDBBandedTableView; + V1Column1: TcxGridDBBandedColumn; + V1Column2: TcxGridDBBandedColumn; + V1Column3: TcxGridDBBandedColumn; + V1Column4: TcxGridDBBandedColumn; + V1Column5: TcxGridDBBandedColumn; + V1Column6: TcxGridDBBandedColumn; + V1Column7: TcxGridDBBandedColumn; + V1Column8: TcxGridDBBandedColumn; + V1Column9: TcxGridDBBandedColumn; + V1Column10: TcxGridDBBandedColumn; + V1Column11: TcxGridDBBandedColumn; + V1Column12: TcxGridDBBandedColumn; + V1Column13: TcxGridDBBandedColumn; + V1Column14: TcxGridDBBandedColumn; + V1Column15: TcxGridDBBandedColumn; + V1Column16: TcxGridDBBandedColumn; + V1Column17: TcxGridDBBandedColumn; + V1Column18: TcxGridDBBandedColumn; + V1Column19: TcxGridDBBandedColumn; + V1Column20: TcxGridDBBandedColumn; + V1Column21: TcxGridDBBandedColumn; + V1Column22: TcxGridDBBandedColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBRafreshClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure WFBCodeNameChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure v1Column16PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + private + { Private declarations } + procedure InitGrid(); + function DelData():Boolean; + public + { Public declarations } + end; + +var + frmKHInfo: TfrmKHInfo; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmKHInfo.FormDestroy(Sender: TObject); +begin + frmKHInfo:=nil; +end; + +procedure TfrmKHInfo.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmKHInfo.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; +procedure TfrmKHInfo.InitGrid(); +begin +end; + +procedure TfrmKHInfo.FormShow(Sender: TObject); +begin + ReadCxBandedGrid('״̬б',Tv1,'޷IJ'); + InitGrid(); +end; + +procedure TfrmKHInfo.WFBCodeNameChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmKHInfo.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxBandedGrid('״̬б',Tv1,'޷IJ'); +end; + +procedure TfrmKHInfo.FormCreate(Sender: TObject); +begin + cxGrid1.Align:=alClient; +end; + +procedure TfrmKHInfo.TBTPClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + except + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +function TfrmKHInfo.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Order_Sub_KC where KCId='''+Trim(Order_Main.fieldbyname('KCId').AsString)+''''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmKHInfo.TBExportClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + TcxGridToExcel('״̬б',cxGrid1); +end; + +procedure TfrmKHInfo.v1Column16PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='hdmc'; + flagname:=''; + if ShowModal=1 then + begin + Order_Main.Edit; + Order_Main.FieldByName('OSStr1').Value:=ClientDataSet1.fieldbyname('ZDYName').AsString; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +end. diff --git a/基础资料维护(BaseInfo.dll)/U_NengHaoInput.dfm b/基础资料维护(BaseInfo.dll)/U_NengHaoInput.dfm new file mode 100644 index 0000000..160451d --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_NengHaoInput.dfm @@ -0,0 +1,240 @@ +object frmNengHaoInput: TfrmNengHaoInput + Left = 292 + Top = 254 + Width = 697 + Height = 370 + Caption = #33021#32791#30331#35760 + 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 = 681 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object ToolButton3: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 31 + Width = 681 + Height = 300 + Align = alClient + TabOrder = 1 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + Column = v2Column3 + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v2Column3 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object v2Column6: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'NHDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 104 + end + object v2Column4: TcxGridDBColumn + Caption = #36710#38388 + DataBinding.FieldName = 'chejian' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column4PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v2Column2: TcxGridDBColumn + Caption = #33021#32791#31867#21035 + DataBinding.FieldName = 'NHType' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.ImmediatePost = True + Properties.Items.Strings = ( + #27827#27700 + #33258#26469#27700 + #27745#27700 + #22825#28982#27668 + #33976#27773 + #30005 + #23792#30005 + #23574#30005 + #35895#30005 + '' + '' + '') + HeaderAlignmentHorz = taCenter + Width = 79 + end + object v2Column8: TcxGridDBColumn + Caption = #34920#21517 + DataBinding.FieldName = 'NHBiaoName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column8PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 81 + end + object v2Column5: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v2Column3: TcxGridDBColumn + Caption = #29992#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 83 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + Width = 93 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 528 + Top = 200 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_NengHaoInput.pas b/基础资料维护(BaseInfo.dll)/U_NengHaoInput.pas new file mode 100644 index 0000000..bf4919c --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_NengHaoInput.pas @@ -0,0 +1,254 @@ +unit U_NengHaoInput; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDropDownEdit; + +type + TfrmNengHaoInput = class(TForm) + ToolBar1: TToolBar; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column6: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + v2Column1: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure v2Column4PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column8PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + private + { Private declarations } + procedure InitGrid(); + function SaveData():Boolean; + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmNengHaoInput: TfrmNengHaoInput; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + + + +procedure TfrmNengHaoInput.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from NengHao where NHID='''+Trim(FCYID)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmNengHaoInput.FormDestroy(Sender: TObject); +begin + frmNengHaoInput:=nil; +end; + +procedure TfrmNengHaoInput.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmNengHaoInput.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ܺ¼',Tv2,'ͻԶ'); + Close; +end; +procedure TfrmNengHaoInput.FormShow(Sender: TObject); +begin + ReadCxGrid('ܺ¼',Tv2,'ͻԶ'); + InitGrid(); + if Trim(FCYID)='' then + begin + CDS_HZ.Append; + CDS_HZ.Post; + end; +end; + +procedure TfrmNengHaoInput.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +function TfrmNengHaoInput.SaveData():Boolean; +var + maxId,CRID:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if Trim(FCYID)='' then + begin + if GetLSNo(ADOQueryCmd,maxId,'NH','NengHao',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxId:=Trim(FCYID); + end; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from NengHao where NHID='''+Trim(FCYID)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(FCYID)='' then + begin + Append; + FieldByName('Filler').Value:=Trim(DName); + end else + begin + Edit; + FieldByName('Editer').Value:=Trim(DName); + FieldByName('Edittime').Value:=SGetServerDateTime(ADOQueryTemp); + end; + FieldByName('NHID').Value:=Trim(maxId); + //FieldByName('ZdyName').Value:=Trim(CDS_HZ.fieldbyname('ZdyName').AsString); + RTSetSaveDataCDS(ADOQueryCmd,Tv2,CDS_HZ,'NengHao',0); + if Trim(CDS_HZ.fieldbyname('Price').AsString)<>'' then + begin + FieldByName('Price').Value:=CDS_HZ.fieldbyname('Price').Value; + end else + begin + FieldByName('Price').Value:=0; + end; + FieldByName('Filler').Value:=Trim(DName); + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('NHID').Value:=Trim(maxId); + Post; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣!','ʾ',0); + end; +end; + +procedure TfrmNengHaoInput.ToolButton3Click(Sender: TObject); +begin + if Trim(CDS_HZ.FieldByName('NHDate').AsString)='' then + begin + Application.MessageBox('ڲΪ!','ʾ',0); + Exit; + end; + if Trim(CDS_HZ.FieldByName('NHType').AsString)='' then + begin + Application.MessageBox('ܺΪ!','ʾ',0); + Exit; + end; + + if Application.MessageBox('ȷҪ','ʾ',32+4)<>IDYES then Exit; + ToolBar1.SetFocus; + if SaveData() then + begin + Application.MessageBox('ɹ!','ʾ',0); + ModalResult:=1; + end; +end; + + +procedure TfrmNengHaoInput.v2Column4PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='chejian'; + flagname:=''; + if ShowModal=1 then + begin + CDS_HZ.Edit; + CDS_HZ.FieldByName('chejian').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmNengHaoInput.v2Column8PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='NHBiaoName'; + flagname:=''; + MainType:=Trim(CDS_HZ.fieldbyname('chejian').AsString); + if ShowModal=1 then + begin + CDS_HZ.Edit; + CDS_HZ.FieldByName('NHBiaoName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +end. diff --git a/基础资料维护(BaseInfo.dll)/U_NengHaoList.dfm b/基础资料维护(BaseInfo.dll)/U_NengHaoList.dfm new file mode 100644 index 0000000..b96522d --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_NengHaoList.dfm @@ -0,0 +1,359 @@ +object frmNengHaoList: TfrmNengHaoList + Left = 209 + Top = 16 + Width = 1036 + Height = 618 + Caption = #33021#32791#30331#35760 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1020 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object ToolButton5: TToolButton + Left = 378 + Top = 0 + Caption = #25171#21360 + ImageIndex = 12 + OnClick = ToolButton5Click + end + object TBClose: TToolButton + Left = 437 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1020 + Height = 66 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 439 + Top = 21 + Width = 24 + Height = 12 + Caption = #34920#21517 + end + object Label1: TLabel + Left = 302 + Top = 21 + Width = 24 + Height = 12 + Caption = #36710#38388 + end + object Label2: TLabel + Left = 574 + Top = 20 + Width = 48 + Height = 12 + Caption = #33021#32791#31867#21035 + end + object Label4: TLabel + Left = 22 + Top = 21 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label5: TLabel + Left = 142 + Top = 21 + Width = 78 + Height = 12 + Caption = '-------------' + end + object NHBiaoName: TEdit + Tag = 2 + Left = 463 + Top = 17 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = NHBiaoNameChange + end + object Chejian: TEdit + Tag = 2 + Left = 327 + Top = 17 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = NHBiaoNameChange + end + object NHType: TComboBox + Tag = 1 + Left = 627 + Top = 17 + Width = 81 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 2 + OnChange = NHBiaoNameChange + Items.Strings = ( + #27827#27700 + #33258#26469#27700 + #27745#27700 + #22825#28982#27668 + #33976#27773 + #30005 + #23792#30005 + #23574#30005 + #35895#30005 + '') + end + object BegDate: TDateTimePicker + Left = 72 + Top = 16 + Width = 97 + Height = 20 + Date = 41457.671719525460000000 + Time = 41457.671719525460000000 + TabOrder = 3 + end + object EndDate: TDateTimePicker + Left = 184 + Top = 16 + Width = 97 + Height = 20 + Date = 41457.671719525460000000 + Time = 41457.671719525460000000 + TabOrder = 4 + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 97 + Width = 1020 + Height = 482 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v2Column3 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object v2Column6: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'NHDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 98 + end + object v2Column4: TcxGridDBColumn + Caption = #36710#38388 + DataBinding.FieldName = 'chejian' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 88 + end + object v2Column2: TcxGridDBColumn + Caption = #33021#32791#31867#21035 + DataBinding.FieldName = 'NHType' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 79 + end + object v2Column8: TcxGridDBColumn + Caption = #34920#21517 + DataBinding.FieldName = 'NHBiaoName' + HeaderAlignmentHorz = taCenter + Width = 81 + end + object v2Column5: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 71 + end + object v2Column3: TcxGridDBColumn + Caption = #29992#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 87 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + Width = 80 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 728 + Top = 192 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = CDS_HZ + Left = 688 + Top = 192 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 832 + Top = 192 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 771 + Top = 251 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 768 + Top = 208 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_NengHaoList.pas b/基础资料维护(BaseInfo.dll)/U_NengHaoList.pas new file mode 100644 index 0000000..927c164 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_NengHaoList.pas @@ -0,0 +1,261 @@ +unit U_NengHaoList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmNengHaoList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + NHBiaoName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column6: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + Label1: TLabel; + Chejian: TEdit; + ToolButton4: TToolButton; + v2Column8: TcxGridDBColumn; + Label2: TLabel; + NHType: TComboBox; + BegDate: TDateTimePicker; + Label4: TLabel; + EndDate: TDateTimePicker; + Label5: TLabel; + v2Column1: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + ToolButton5: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure NHBiaoNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + + public + + end; + +var + frmNengHaoList: TfrmNengHaoList; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp,U_NengHaoInput; + +{$R *.dfm} + + + +procedure TfrmNengHaoList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from NengHao '); + sql.Add(' where NHDate>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+''''); + sql.Add(' and NHDate<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''); + sql.Add(' order by Chejian,NHTYpe,NHDate'); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmNengHaoList.FormDestroy(Sender: TObject); +begin + frmNengHaoList:=nil; +end; + +procedure TfrmNengHaoList.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmNengHaoList.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ܺIJѯ',Tv2,'ͻԶ'); + Close; +end; +procedure TfrmNengHaoList.TBDelClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('NHID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete NengHao where NHID='''+Trim(CDS_HZ.fieldbyname('NHID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmNengHaoList.FormShow(Sender: TObject); +begin + ReadCxGrid('ܺIJѯ',Tv2,'ͻԶ'); + EndDate.Date:=SGetServerDate(ADOQueryTemp); + BegDate.Date:=EndDate.Date; + InitGrid(); +end; + +procedure TfrmNengHaoList.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmNengHaoList.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmNengHaoList.NHBiaoNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmNengHaoList.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'ܺб'); +end; + +procedure TfrmNengHaoList.ToolButton4Click(Sender: TObject); +begin + try + frmNengHaoInput:=TfrmNengHaoInput.Create(Application); + with frmNengHaoInput do + begin + FCYID:=Trim(Self.CDS_HZ.fieldbyname('NHID').AsString); + if ShowModal=1 then + begin + Self.CDS_HZ.Locate('NHID',FCYID,[]); + with Self.CDS_HZ do + begin + Edit; + FieldByName('NHDate').Value:=frmNengHaoInput.CDS_HZ.fieldbyname('NHDate').Value; + FieldByName('chejian').Value:=frmNengHaoInput.CDS_HZ.fieldbyname('chejian').Value; + FieldByName('NHType').Value:=frmNengHaoInput.CDS_HZ.fieldbyname('NHType').Value; + FieldByName('NHBiaoName').Value:=frmNengHaoInput.CDS_HZ.fieldbyname('NHBiaoName').Value; + FieldByName('Price').Value:=frmNengHaoInput.CDS_HZ.fieldbyname('Price').Value; + FieldByName('Qty').Value:=frmNengHaoInput.CDS_HZ.fieldbyname('Qty').Value; + FieldByName('Note').Value:=frmNengHaoInput.CDS_HZ.fieldbyname('Note').Value; + //FieldByName('NHID').Value:=frmNengHaoInput.CDS_HZ.fieldbyname('NHID').Value; + Post; + end; + end; + end; + finally + frmNengHaoInput.Free; + end; +end; + +procedure TfrmNengHaoList.ToolButton3Click(Sender: TObject); +begin + try + frmNengHaoInput:=TfrmNengHaoInput.Create(Application); + with frmNengHaoInput do + begin + FCYID:=''; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('NHDate').Value:=frmNengHaoInput.CDS_HZ.fieldbyname('NHDate').Value; + FieldByName('chejian').Value:=frmNengHaoInput.CDS_HZ.fieldbyname('chejian').Value; + FieldByName('NHType').Value:=frmNengHaoInput.CDS_HZ.fieldbyname('NHType').Value; + FieldByName('NHBiaoName').Value:=frmNengHaoInput.CDS_HZ.fieldbyname('NHBiaoName').Value; + FieldByName('Price').Value:=frmNengHaoInput.CDS_HZ.fieldbyname('Price').Value; + FieldByName('Qty').Value:=frmNengHaoInput.CDS_HZ.fieldbyname('Qty').Value; + FieldByName('Note').Value:=frmNengHaoInput.CDS_HZ.fieldbyname('Note').Value; + FieldByName('NHID').Value:=frmNengHaoInput.CDS_HZ.fieldbyname('NHID').Value; + Post; + end; + end; + end; + finally + frmNengHaoInput.Free; + end; +end; + +procedure TfrmNengHaoList.ToolButton5Click(Sender: TObject); +var + fPrintFile,FConNoM,RPTName:string; + +begin + if CDS_HZ.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ܺı.rmf' ; + if FileExists(fPrintFile) then + begin + RMVariables['begdate']:=BegDate.DateTime; + RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+RPTName),'ʾ',0); + end; + +end; + +end. + + diff --git a/基础资料维护(BaseInfo.dll)/U_ReceivableImport.dfm b/基础资料维护(BaseInfo.dll)/U_ReceivableImport.dfm new file mode 100644 index 0000000..4cb5b13 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ReceivableImport.dfm @@ -0,0 +1,324 @@ +object frmReceivableImport: TfrmReceivableImport + Left = 380 + Top = 419 + Width = 1546 + Height = 542 + Caption = #24212#25910#27454#23548#20837 + Color = clWhite + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poDesktopCenter + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Tag = 1 + Left = 0 + Top = 0 + Width = 1530 + Height = 34 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Images = DataLink_BaseInfo.ThreeImgList + List = True + ShowCaptions = True + TabOrder = 0 + object TSave: TToolButton + Left = 0 + Top = 2 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TSaveClick + end + object ToolButton4: TToolButton + Left = 63 + Top = 2 + AutoSize = True + Caption = #25171#24320#25991#20214 + ImageIndex = 5 + OnClick = ToolButton4Click + end + object ToolButton2: TToolButton + Left = 150 + Top = 2 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + object TBClose: TToolButton + Left = 213 + Top = 2 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 34 + Width = 1530 + Height = 469 + Align = alClient + TabOrder = 1 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + DataController.DataSource = DS_1 + DataController.Filter.AutoDataSetFilter = True + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Qty + end + item + Kind = skSum + Column = v1Money + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column5 + end> + DataController.Summary.SummaryGroups = <> + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_BaseInfo.FonePurple + object v1InvoiceNo: TcxGridDBColumn + Tag = 1 + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'InvoiceNo' + HeaderAlignmentHorz = taCenter + Width = 77 + end + object v1InvoiceType: TcxGridDBColumn + Tag = 1 + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'InvoiceType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1InvoiceTypePropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 75 + end + object v1InvoiceDate: TcxGridDBColumn + Tag = 1 + Caption = #38754#36741#26009#21517#31216 + DataBinding.FieldName = 'ToFactoryName' + HeaderAlignmentHorz = taCenter + Width = 79 + end + object v1FactoryName: TcxGridDBColumn + Tag = 1 + Caption = #24037#24207#21517#31216 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1FactoryNamePropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column1: TcxGridDBColumn + Tag = 1 + Caption = #25104#20998 + DataBinding.FieldName = 'ToFactoryName1' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column2: TcxGridDBColumn + Tag = 1 + Caption = #23494#24230 + DataBinding.FieldName = 'SYRName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column2PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column3: TcxGridDBColumn + Tag = 2 + Caption = #19968#32423#20215#26684 + DataBinding.FieldName = 'P_Code' + HeaderAlignmentHorz = taCenter + Width = 75 + end + object v1P_CodeName: TcxGridDBColumn + Tag = 2 + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + HeaderAlignmentHorz = taCenter + Width = 94 + end + object v1P_Spec: TcxGridDBColumn + Tag = 2 + Caption = #25104#21697#35268#26684 + DataBinding.FieldName = 'P_Spec' + HeaderAlignmentHorz = taCenter + Width = 81 + end + object v1ToFactoryName: TcxGridDBColumn + Caption = #36827#26041 + DataBinding.FieldName = 'ToFactoryName' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v1Qty: TcxGridDBColumn + Tag = 2 + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1QtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Price: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column1: TcxGridDBColumn + Tag = 2 + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1QtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1QtyUnit: TcxGridDBColumn + Tag = 2 + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + HeaderAlignmentHorz = taCenter + Width = 78 + end + object v1Money: TcxGridDBColumn + Tag = 2 + Caption = #37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1MoneyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 81 + end + object v1PriceUnit: TcxGridDBColumn + Tag = 2 + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v1Column4: TcxGridDBColumn + Tag = 2 + Caption = #31246#29575'(%)' + DataBinding.FieldName = 'tax' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column4PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column5: TcxGridDBColumn + Tag = 2 + Caption = #21547#31246#37329#39069 + DataBinding.FieldName = 'taxMoney' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1note: TcxGridDBColumn + Tag = 2 + Caption = #22791#27880 + DataBinding.FieldName = 'P_Note' + HeaderAlignmentHorz = taCenter + Width = 145 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv1 + end + end + object DS_1: TDataSource + DataSet = CDS_Import + Left = 500 + Top = 248 + end + object CDS_Import: TClientDataSet + Aggregates = <> + Params = <> + Left = 384 + Top = 252 + end + object GPM_1: TcxGridPopupMenu + PopupMenus = <> + Left = 296 + Top = 104 + end + object ADOQueryTmp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 88 + Top = 108 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 188 + Top = 108 + end + object OpenDialog1: TOpenDialog + Left = 386 + Top = 170 + end + object CDS_LM: TClientDataSet + Aggregates = <> + Params = <> + Left = 504 + Top = 176 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 484 + Top = 100 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ReceivableImport.pas b/基础资料维护(BaseInfo.dll)/U_ReceivableImport.pas new file mode 100644 index 0000000..bdcdb71 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ReceivableImport.pas @@ -0,0 +1,545 @@ +unit U_ReceivableImport; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, cxStyles, cxCustomData, cxGraphics, cxFilter, + cxData, cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, + DBClient, ExtCtrls, StdCtrls, BtnEdit, cxButtonEdit, cxTextEdit, + cxDropDownEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, cxCalendar, + dxSkinsCore, dxBarBuiltInMenu, ComObj, cxCheckBox, 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 + TfrmReceivableImport = class(TForm) + DS_1: TDataSource; + CDS_Import: TClientDataSet; + GPM_1: TcxGridPopupMenu; + ToolBar1: TToolBar; + TSave: TToolButton; + TBClose: TToolButton; + ADOQueryTmp: TADOQuery; + ADOQueryCmd: TADOQuery; + ToolButton2: TToolButton; + ToolButton4: TToolButton; + OpenDialog1: TOpenDialog; + CDS_LM: TClientDataSet; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1InvoiceNo: TcxGridDBColumn; + v1InvoiceDate: TcxGridDBColumn; + v1InvoiceType: TcxGridDBColumn; + v1FactoryName: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1P_CodeName: TcxGridDBColumn; + v1P_Spec: TcxGridDBColumn; + v1ToFactoryName: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1Price: TcxGridDBColumn; + v1QtyUnit: TcxGridDBColumn; + v1Money: TcxGridDBColumn; + v1PriceUnit: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1note: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Tv1Column1: TcxGridDBColumn; + cxGridPopupMenu1: TcxGridPopupMenu; + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TSaveClick(Sender: TObject); + procedure FormDestroy(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure v1InvoiceTypePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1FactoryNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1QtyPropertiesEditValueChanged(Sender: TObject); + procedure v1MoneyPropertiesEditValueChanged(Sender: TObject); + procedure v1Column4PropertiesEditValueChanged(Sender: TObject); + private + procedure initGrid(); + procedure SaveDate(); + { Private declarations } + public + FFFID: string; + fInvoiceFlag: string; + { Public declarations } + end; + +var + frmReceivableImport: TfrmReceivableImport; + +implementation + +uses + U_Fun, U_ZDYHelp, U_dataLink, U_ZdyAttachGYS; +{$R *.dfm} + +procedure TfrmReceivableImport.SaveDate(); +var + MaxNo, FInvoiceID: string; + XH: Integer; +begin + ADOQueryCmd.Connection.BeginTrans; + try + with CDS_Import do + begin + first; + XH := 1; + if GetLSNo(ADOQueryTmp, MaxNo, 'DR', 'FD_Invoice', 4, 1) = False then + begin + Application.MessageBox('ȡʧܣ', 'ʾ', 0); + Exit; + end; + + while not eof do + begin + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.add('select * from FD_Invoice where InvoiceNo=''' + trim(CDS_Import.fieldbyname('InvoiceNo').AsString) + ''''); + open; + if isempty then + begin + append; + ADOQueryCmd.FieldByName('Filler').Value := Trim(DName); + ADOQueryCmd.FieldByName('Filltime').Value := SGetServerDateTime(ADOQueryTmp); + end + else + edit; + + SSetSaveDataCDSNew(ADOQueryCmd, Tv1, CDS_Import, 'FD_Invoice', 1); + fieldbyname('Invoiceflag').Value := strtoint('0'); + fieldbyname('chkstatus').AsString := '0'; + fieldbyname('ishd').Value := 'δ˶'; + fieldbyname('MainID').AsString := MaxNo + '-' + IntToStr(XH); + post; + end; + XH := XH + 1; + next; + end; + + first; + while not eof do + begin + + if GetLSNo(ADOQueryTmp, FInvoiceID, 'FP', 'FD_InvoiceSub', 4, 1) = False then + begin + Application.MessageBox('ȡʧܣ', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.add('select * from FD_InvoiceSub where InvoiceNo=''' + trim(CDS_Import.fieldbyname('InvoiceNo').AsString) + ''' '); + sql.add('and InvoiceID=''' + trim(FInvoiceID) + ''''); + open; + end; + if ADOQueryCmd.IsEmpty then + begin + ADOQueryCmd.append; + end + else + begin + ADOQueryCmd.edit; + end; + + ADOQueryCmd.fieldbyname('InvoiceNo').Value := trim(CDS_Import.fieldbyname('InvoiceNo').AsString); + ADOQueryCmd.fieldbyname('InvoiceID').Value := FInvoiceID; + SSetSaveDataCDSNew(ADOQueryCmd, Tv1, CDS_Import, 'FD_InvoiceSub', 2); + ADOQueryCmd.fieldbyname('Qty').Value := CDS_Import.fieldbyname('Qty').AsFloat; + ADOQueryCmd.fieldbyname('Price').Value := CDS_Import.fieldbyname('Price').AsFloat; + ADOQueryCmd.fieldbyname('Money').Value := CDS_Import.fieldbyname('Money').AsFloat; + ADOQueryCmd.fieldbyname('tax').Value := CDS_Import.fieldbyname('tax').AsFloat; + ADOQueryCmd.fieldbyname('TaxMoney').Value := CDS_Import.fieldbyname('TaxMoney').AsFloat; + ADOQueryCmd.Post; + next; + + end; + end; + ADOQueryCmd.Connection.CommitTrans; + +// with ADOQueryCmd do +// begin +// close; +// sql.Clear; +// sql.add('delete from FD_InvoiceSub where InvoiceNo=''' + trim(CDS_Import.fieldbyname('InvoiceNo').AsString) + ''' '); +// execsql; +// end; + + application.MessageBox('ɹ', 'ʾ'); + Modalresult := 1; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); + end; + +end; + +procedure TfrmReceivableImport.initGrid(); +begin + with ADOQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from FD_Invoice A inner join FD_Invoicesub B on B.InvoiceNo=A.InvoiceNo where 1<>1'); + open; + end; + + SCreateCDS20(ADOQueryTmp, CDS_Import); + SInitCDSData20(ADOQueryTmp, CDS_Import); +end; + +procedure TfrmReceivableImport.TBCloseClick(Sender: TObject); +begin + writeCxGrid(Self.Caption, Tv1, 'Ʊ'); + Close; +end; + +procedure TfrmReceivableImport.FormShow(Sender: TObject); +begin + ReadCxGrid(Self.Caption, Tv1, 'Ʊ'); + with CDS_LM do + begin + FieldDefs.Clear; + FieldDefs.Add('LXH', ftInteger, 0); + FieldDefs.Add('lCode', ftString, 40); + FieldDefs.Add('LName', ftString, 40); + close; + CreateDataSet; + end; + initGrid(); +end; + +procedure TfrmReceivableImport.TSaveClick(Sender: TObject); +begin + if CDS_Import.Locate('InvoiceNo', null, []) then + begin + application.MessageBox('Ʊ벻Ϊ', 'ʾ'); + exit; + end; + + if CDS_Import.Locate('InvoiceNo', '', []) then + begin + application.MessageBox('Ʊ벻Ϊ', 'ʾ'); + exit; + end; + + if CDS_Import.Locate('ToFactoryName', null, []) then + begin + application.MessageBox('ԷλΪ', 'ʾ'); + exit; + end; + + if CDS_Import.Locate('ToFactoryName', '', []) then + begin + application.MessageBox('ԷλΪ', 'ʾ'); + exit; + end; + + if CDS_Import.Locate('Money', null, []) then + begin + application.MessageBox('Ϊ', 'ʾ'); + exit; + end; + + if CDS_Import.Locate('Money', 0, []) then + begin + application.MessageBox('Ϊ0', 'ʾ'); + exit; + end; + + if CDS_Import.Locate('taxMoney', null, []) then + begin + application.MessageBox('˰Ϊ', 'ʾ'); + exit; + end; + + if CDS_Import.Locate('taxMoney', 0, []) then + begin + application.MessageBox('˰Ϊ0', 'ʾ'); + exit; + end; + + SaveDate(); +end; + +procedure TfrmReceivableImport.FormDestroy(Sender: TObject); +begin + frmReceivableImport := nil; +end; + +procedure TfrmReceivableImport.ToolButton2Click(Sender: TObject); +begin + if CDS_Import.IsEmpty then + exit; + CDS_Import.delete; +end; + +procedure TfrmReceivableImport.ToolButton3Click(Sender: TObject); +begin + WriteCxGrid(Self.Caption, Tv1, '财务管理'); +end; + +procedure TfrmReceivableImport.ToolButton4Click(Sender: TObject); +var + excelApp, WorkBook: Variant; + i, j, k, LX, ExcelRowCount: integer; + maxId, FCPID, FCPName, t1, t2, t3, FFID: string; +begin + + try + excelApp := CreateOleObject('Excel.Application'); + openDialog1.Filter := '*.CSV;*.xls'; + if opendialog1.Execute then + begin + WorkBook := excelApp.WorkBooks.Open(OpenDialog1.FileName); + end + else + exit; + excelApp.Visible := false; + ExcelRowCount := WorkBook.WorkSheets[1].UsedRange.Rows.Count; + except + application.MessageBox('EXCEL', 'Ϣ', MB_ICONERROR); + exit; + end; + + CDS_LM.EmptyDataSet; + + for j := 0 to Tv1.ColumnCount - 1 do + begin + with CDS_LM do + begin + Append; + FieldByName('LCode').Value := trim(Tv1.Columns[j].DataBinding.FieldName); + FieldByName('LName').Value := trim(Tv1.Columns[j].Caption); + Post; + end; + end; + + try + for i := 1 to 50 do + begin + if trim(WorkBook.WorkSheets[1].Cells[1, i].value) = '' then + continue; + if CDS_LM.Locate('LName', trim(WorkBook.WorkSheets[1].Cells[1, i].value), []) then + begin + with CDS_LM do + begin + Edit; + FieldByName('LXH').Value := i; + Post; + end; + end; + end; + except + application.MessageBox('', 'Ϣ', MB_ICONERROR); + exit; + end; + + try + for i := 2 to ExcelRowCount do + begin + with CDS_Import do + begin + Append; + CDS_LM.First; + while not CDS_LM.Eof do + begin + if CDS_LM.FieldByName('LXH').AsInteger > 0 then + CDS_Import.fieldbyname(CDS_LM.FieldByName('LCode').AsString).Value := WorkBook.WorkSheets[1].Cells[i, CDS_LM.FieldByName('LXH').AsInteger].Value; + CDS_LM.Next; + end; +// CDS_Import.fieldbyname('OurCoNo').Value := '91330602MA2JTEXX4B'; +// CDS_Import.fieldbyname('OurCoName').Value := 'ԲԲ'; + Post; + end; + end; + WorkBook.Close; + excelApp.Quit; + excelApp := Unassigned; + WorkBook := Unassigned; + except + WorkBook.Close; + excelApp.Quit; + excelApp := Unassigned; + WorkBook := Unassigned; + exit; + end; + +end; + +procedure TfrmReceivableImport.v1InvoiceTypePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'InvoiceType'; + flagname := 'Ʊ'; + if ShowModal = 1 then + begin + Self.CDS_Import.Edit; + Self.CDS_Import.FieldByName('InvoiceType').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmReceivableImport.v1FactoryNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'DFTaiTou'; + flagname := 'Ʊλ'; + if ShowModal = 1 then + begin + Self.CDS_Import.Edit; + Self.CDS_Import.FieldByName('FactoryName').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmReceivableImport.v1Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application); + with frmZdyAttachGYS do + begin + if ShowModal = 1 then + begin + Self.CDS_Import.Edit; + Self.CDS_Import.FieldByName('TOFactoryName').Value := Trim(CDS_HZ.fieldbyname('ZdyName').AsString); + Self.CDS_Import.FieldByName('FactoryName').Value := Trim(CDS_HZ.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZdyAttachGYS.Free; + end; +end; + +procedure TfrmReceivableImport.v1Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'SYRName'; + flagname := '˾̧ͷ'; + if Trim(flag) = 'SYRName' then + begin + flag := 'OrdDefStr2'; + V1Name.Caption := ''; + V1Note.Caption := 'Ӣ'; + fnote := True; + end; + if ShowModal = 1 then + begin + Self.CDS_Import.Edit; + Self.CDS_Import.FieldByName('SYRName').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmReceivableImport.v1QtyPropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_Import do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + FieldbyName('Money').Value := format('%.2f', [FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat]); + FieldbyName('taxMoney').Value := format('%.2f', [FieldByName('money').AsFloat * (1 + FieldByName('tax').AsFloat / 100.00)]); + Post; + end; + tv1.Controller.EditingController.ShowEdit(); + +end; + +procedure TfrmReceivableImport.v1MoneyPropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + with CDS_Import do + begin + Edit; + FieldByName('Money').Value := Trim(mvalue); + if fieldbyname('Qty').AsFloat > 0 then + FieldbyName('price').Value := format('%.4f', [FieldByName('money').AsFloat / FieldByName('Qty').AsFloat]) + else + FieldbyName('price').Value := 0; + FieldbyName('taxMoney').Value := format('%.2f', [FieldByName('money').AsFloat * (1 + FieldByName('tax').AsFloat / 100.00)]); + Post; + end; + tv1.Controller.EditingController.ShowEdit(); + +end; + +procedure TfrmReceivableImport.v1Column4PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_Import do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + FieldbyName('taxMoney').Value := format('%.2f', [FieldByName('money').AsFloat * (1 + FieldByName('tax').AsFloat / 100.00)]); + Post; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +end. + diff --git a/基础资料维护(BaseInfo.dll)/U_SYDept.dfm b/基础资料维护(BaseInfo.dll)/U_SYDept.dfm new file mode 100644 index 0000000..13d00c3 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_SYDept.dfm @@ -0,0 +1,277 @@ +object frmSYDept: TfrmSYDept + Left = 209 + Top = 173 + Width = 872 + Height = 509 + Caption = #32452#32455#32467#26500 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 864 + Height = 33 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YPGLWT.ThreeImgList + Flat = True + Images = DataLink_YPGLWT.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object TBAdd: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #26032#22686#23376#31867 + ImageIndex = 3 + OnClick = TBAddClick + end + object ToolButton1: TToolButton + Left = 150 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = ToolButton1Click + end + object TBDel: TToolButton + Left = 213 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton2: TToolButton + Left = 276 + Top = 0 + Caption = #32452#32455#20998#37197 + ImageIndex = 132 + OnClick = ToolButton2Click + end + object TBClose: TToolButton + Left = 359 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxDBTreeList1: TcxDBTreeList + Left = 0 + Top = 33 + Width = 249 + Height = 439 + Align = alLeft + Bands = < + item + end> + BufferedPaint = False + DataController.DataSource = DataSource1 + DataController.ParentField = 'DPParent' + DataController.KeyField = 'DPID' + OptionsBehavior.ExpandOnDblClick = False + OptionsSelection.CellSelect = False + OptionsView.CellAutoHeight = True + OptionsView.Headers = False + RootValue = -1 + Styles.Inactive = DataLink_YPGLWT.Red + Styles.Selection = DataLink_YPGLWT.Red + Styles.IncSearch = DataLink_YPGLWT.Red + TabOrder = 1 + OnClick = cxDBTreeList1Click + OnDblClick = cxDBTreeList1DblClick + object cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn + DataBinding.FieldName = 'DPName' + Width = 210 + Position.ColIndex = 1 + Position.RowIndex = 0 + Position.BandIndex = 0 + end + end + object Panel1: TPanel + Left = 249 + Top = 33 + Width = 315 + Height = 439 + Align = alLeft + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 2 + object Label1: TLabel + Left = 66 + Top = 40 + Width = 48 + Height = 12 + Caption = #19978#32423#32452#32455 + end + object Label2: TLabel + Left = 66 + Top = 81 + Width = 48 + Height = 12 + Caption = #32452#32455#21517#31216 + end + object Label3: TLabel + Left = 66 + Top = 121 + Width = 48 + Height = 12 + Caption = #32452#32455#32534#30721 + end + object Label4: TLabel + Left = 24 + Top = 16 + Width = 60 + Height = 14 + Caption = #32452#32455#32467#26500 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object DPTopName: TEdit + Left = 129 + Top = 37 + Width = 121 + Height = 20 + ReadOnly = True + TabOrder = 0 + end + object DPName: TEdit + Left = 129 + Top = 77 + Width = 121 + Height = 20 + TabOrder = 1 + OnKeyPress = DPNameKeyPress + end + object DPNo: TEdit + Left = 129 + Top = 117 + Width = 121 + Height = 20 + TabOrder = 2 + end + end + object cxGrid4: TcxGrid + Left = 564 + Top = 33 + Width = 300 + Height = 439 + Align = alClient + TabOrder = 3 + object Tv4: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DSUser + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_YPGLWT.SHuangSe + Styles.IncSearch = DataLink_YPGLWT.SHuangSe + Styles.Selection = DataLink_YPGLWT.SHuangSe + object cxGridDBColumn1: TcxGridDBColumn + Caption = #21592#24037#32534#21495 + DataBinding.FieldName = 'UserId' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YPGLWT.Default + Width = 84 + end + object cxGridDBColumn7: TcxGridDBColumn + Caption = #21592#24037#21517#31216 + DataBinding.FieldName = 'UserName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YPGLWT.Default + Width = 87 + end + object cxGridDBColumn8: TcxGridDBColumn + Caption = #21592#24037#32452#32455 + DataBinding.FieldName = 'dept' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YPGLWT.Default + Width = 74 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv4 + end + end + object DataSource1: TDataSource + DataSet = CDS_Tree + Left = 147 + Top = 219 + end + object ADOQueryTree: TADOQuery + Connection = DataLink_YPGLWT.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 117 + Top = 145 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YPGLWT.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 357 + Top = 177 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YPGLWT.ADOLink + Parameters = <> + Left = 397 + Top = 177 + end + object CDS_Tree: TClientDataSet + Aggregates = <> + Params = <> + Left = 96 + Top = 256 + end + object CDS_User: TClientDataSet + Aggregates = <> + Params = <> + Left = 680 + Top = 272 + end + object DSUser: TDataSource + DataSet = CDS_User + Left = 675 + Top = 211 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_SYDept.pas b/基础资料维护(BaseInfo.dll)/U_SYDept.pas new file mode 100644 index 0000000..ed400a8 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_SYDept.pas @@ -0,0 +1,314 @@ +unit U_SYDept; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, ExtCtrls, DBClient, cxFilter, cxData, cxDataStorage, cxEdit, + cxDBData, cxGridLevel, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxClasses, cxGridCustomView, cxGrid; + +type + TfrmSYDept = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBAdd: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + cxDBTreeList1: TcxDBTreeList; + cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn; + DataSource1: TDataSource; + ADOQueryTree: TADOQuery; + ToolButton1: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + Label1: TLabel; + Label2: TLabel; + Label3: TLabel; + DPTopName: TEdit; + DPName: TEdit; + DPNo: TEdit; + CDS_Tree: TClientDataSet; + cxGrid4: TcxGrid; + Tv4: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn7: TcxGridDBColumn; + cxGridDBColumn8: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + Label4: TLabel; + ToolButton2: TToolButton; + CDS_User: TClientDataSet; + DSUser: TDataSource; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBRafreshClick(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure cxDBTreeList1Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure DPNameKeyPress(Sender: TObject; var Key: Char); + procedure FormShow(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure cxDBTreeList1DblClick(Sender: TObject); + private + { Private declarations } + PState:Integer; + FCPID,FTopID:String; + procedure InitTree(); + + public + { Public declarations } + end; + +var + frmSYDept: TfrmSYDept; + +implementation +uses + U_DataLink,U_Fun; + +{$R *.dfm} + +procedure TfrmSYDept.InitTree(); +var + i:Integer; +begin + try + ADOQueryTree.DisableControls; + with ADOQueryTree do + begin + Close; + SQL.Clear; + SQL.Add('select * from SY_Dept order by DPlevel,DPOrder,DPName'); + Open; + end; + SCreateCDS20(ADOQueryTree,CDS_Tree); + SInitCDSData20(ADOQueryTree,CDS_Tree); + cxDBTreeList1.Items[0].Expand(false); + finally + ADOQueryTree.EnableControls; + end; + //cxDBTreeList1.Items[1].Expand(False); +end; + +procedure TfrmSYDept.FormDestroy(Sender: TObject); +begin + frmSYDept:=nil; +end; + +procedure TfrmSYDept.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmSYDept.TBRafreshClick(Sender: TObject); +begin + InitTree(); +end; + +procedure TfrmSYDept.TBCloseClick(Sender: TObject); +begin + Close; +end; + +procedure TfrmSYDept.TBAddClick(Sender: TObject); +begin + PState:=11; + DPTopName.Text:=Trim(CDS_Tree.fieldbyname('DPName').AsString); + //FTopID:=Trim(ADOQueryTree.fieldbyname('CPID').AsString); + FCPID:=''; + DPName.Text:=''; + DPNo.Text:=''; + DPName.SetFocus; +end; + +procedure TfrmSYDept.cxDBTreeList1Click(Sender: TObject); +begin + PState:=22; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from SY_Dept where DPID='''+Trim(CDS_Tree.fieldbyname('DPParent').AsString)+''''); + Open; + end; + FCPID:=Trim(CDS_Tree.fieldbyname('DPID').AsString); + DPTopName.Text:=Trim(ADOQueryTemp.fieldbyname('DPName').AsString); + DPName.Text:=Trim(CDS_Tree.fieldbyname('DPName').AsString); + DPNo.Text:=Trim(CDS_Tree.fieldbyname('DPNo').AsString); +end; + +procedure TfrmSYDept.ToolButton1Click(Sender: TObject); +var + maxId:String; +begin + if Trim(DPName.Text)='' then + begin + Application.MessageBox('ƲΪգ','ʾ',0); + Exit; + end; + if Trim(DPNo.Text)='' then + begin + Application.MessageBox('벻Ϊգ','ʾ',0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + if PState=11 then + begin + if GetLSNo(ADOQueryCmd,maxId,'DP','SY_Dept',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxId:=Trim(FCPID); + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from SY_Dept where DPID='''+Trim(FCPID)+''''); + Open; + end; + with ADOQueryCmd do + begin + if PState=11 then + begin + Append; + FieldByName('DPID').Value:=Trim(maxId); + FieldByName('DPName').Value:=Trim(DPName.Text); + FieldByName('DPNo').Value:=Trim(DPNo.Text); + FieldByName('DPParent').Value:=Trim(CDS_Tree.fieldbyname('DPID').AsString); + FieldByName('DPLevel').Value:=CDS_Tree.fieldbyname('DPLevel').AsInteger+1; + Post; + end else + if PState=22 then + begin + Edit; + FieldByName('DPID').Value:=Trim(maxId); + FieldByName('DPName').Value:=Trim(DPName.Text); + FieldByName('DPNo').Value:=Trim(DPNo.Text); + //FieldByName('CPParent').Value:=Trim(ADOQueryTree.fieldbyname('CPID').AsString); + //FieldByName('CPOrder').Value:=ADOQueryTree.fieldbyname('CPOrder').AsInteger+1; + Post; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ!','ʾ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; + +procedure TfrmSYDept.TBDelClick(Sender: TObject); +begin + if ADOQueryTree.FieldByName('DPLevel').AsInteger=0 then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from SY_Dept where DPParent='''+Trim(CDS_Tree.fieldbyname('DPID').AsString)+''''); + Open; + if not IsEmpty then + begin + Application.MessageBox('Ѿ¼֯ɾ','ʾ',0); + Exit; + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from SY_User where DPID='''+Trim(CDS_Tree.fieldbyname('DPID').AsString)+''''); + Open; + if not IsEmpty then + begin + Application.MessageBox('֯Աɾ','ʾ',0); + Exit; + end; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete SY_Dept where DPID='''+Trim(CDS_Tree.fieldbyname('DPID').AsString)+''''); + sql.Add('delete SY_Dept where DPParent='''+Trim(CDS_Tree.fieldbyname('DPID').AsString)+''''); + ExecSQL; + end; + InitTree(); +end; + +procedure TfrmSYDept.DPNameKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + DPNo.SetFocus; +end; + +procedure TfrmSYDept.FormShow(Sender: TObject); +begin + InitTree(); +end; + +procedure TfrmSYDept.ToolButton2Click(Sender: TObject); +begin + if CDS_Tree.IsEmpty=False then + begin + if CDS_User.IsEmpty then Exit; + if Application.MessageBox('ȷҪ֯','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('Update SY_User Set DPID='''+Trim(CDS_Tree.fieldbyname('DPID').AsString)+''''); + sql.Add(' where UserId='''+Trim(CDS_User.fieldbyname('UserId').AsString)+''''); + ExecSQL; + end; + with CDS_User do + begin + Edit; + FieldByName('Dept').Value:=Trim(CDS_Tree.fieldbyname('DPName').AsString); + Post; + end; + end; +end; + +procedure TfrmSYDept.cxDBTreeList1DblClick(Sender: TObject); +begin + if CDS_Tree.FieldByName('DPLevel').Value=0 then + begin + with ADOQueryTemp do + begin + Close; + SQL.Clear; + SQL.Add('select A.*,Dept=(select DPName from SY_Dept where DPID=A.DPID) '); + SQL.Add(' from SY_User A where UserId not in(''Admin'',''Test'') '); + SQL.Add(' and Valid=''Y'' '); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_User); + SInitCDSData20(ADOQueryTemp,CDS_User); + end else + begin + with ADOQueryTemp do + begin + Close; + SQL.Clear; + SQL.Add('exec P_Select_Dept_User :CYType'); + Parameters.ParamByName('CYType').Value:=Trim(CDS_Tree.fieldbyname('DPID').AsString); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_User); + SInitCDSData20(ADOQueryTemp,CDS_User); + end; +end; + +end. diff --git a/基础资料维护(BaseInfo.dll)/U_UserHelpSel.dfm b/基础资料维护(BaseInfo.dll)/U_UserHelpSel.dfm new file mode 100644 index 0000000..c0d6d9d --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_UserHelpSel.dfm @@ -0,0 +1,23820 @@ +object frmUserHelpSel: TfrmUserHelpSel + Left = 157 + Top = 108 + Width = 681 + Height = 603 + BorderIcons = [] + Caption = #21592#24037#24110#21161#21015#34920 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poDesktopCenter + OnCreate = FormCreate + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Splitter1: TSplitter + Left = 157 + Top = 70 + Height = 495 + end + object ToolBar2: TToolBar + Left = 0 + Top = 0 + Width = 665 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Flat = True + Images = ThreeImgList + List = True + ShowCaptions = True + TabOrder = 0 + object TOk: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #30830#23450 + ImageIndex = 41 + OnClick = TOkClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxDBTreeList1: TcxDBTreeList + Left = 0 + Top = 70 + Width = 157 + Height = 495 + Align = alLeft + Bands = < + item + end> + BufferedPaint = False + DataController.DataSource = DataSource1 + DataController.ParentField = 'frametop' + DataController.KeyField = 'frameNo' + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OptionsSelection.CellSelect = False + OptionsView.ColumnAutoWidth = True + OptionsView.Headers = False + ParentFont = False + RootValue = -1 + TabOrder = 1 + OnClick = cxDBTreeList1Click + object cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn + DataBinding.FieldName = 'frameName' + Width = 494 + Position.ColIndex = 1 + Position.RowIndex = 0 + Position.BandIndex = 0 + end + end + object cxGrid1: TcxGrid + Left = 160 + Top = 70 + Width = 400 + Height = 495 + Align = alLeft + TabOrder = 2 + object tv1: TcxGridDBTableView + OnDblClick = tv1DblClick + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoGroupsAlwaysExpanded] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnGrouping = False + OptionsCustomize.ColumnSorting = False + OptionsData.Deleting = False + OptionsData.Inserting = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.ContentOdd = cxStyle_gridRow + Styles.Header = cxStyle_gridHead + Styles.Indicator = cxStyle_gridHead + object tv1Column1: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'Ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 60 + end + object tv1Code: TcxGridDBColumn + Caption = #21592#24037#32534#21495 + DataBinding.FieldName = 'UserID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 112 + end + object tv1Name: TcxGridDBColumn + Caption = #21592#24037#21517#31216 + DataBinding.FieldName = 'UserName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 175 + end + end + object DBGrid1Level1: TcxGridLevel + GridView = tv1 + end + end + object GroupBox1: TGroupBox + Left = 0 + Top = 32 + Width = 665 + Height = 38 + Align = alTop + TabOrder = 3 + object Label1: TLabel + Left = 276 + Top = 15 + Width = 60 + Height = 12 + Caption = #21592#24037#21517#31216#65306 + end + object Label2: TLabel + Left = 24 + Top = 16 + Width = 60 + Height = 12 + Caption = #21592#24037#32534#21495#65306 + end + object Edt_name: TEdit + Left = 337 + Top = 11 + Width = 120 + Height = 20 + TabOrder = 0 + OnChange = Edt_nameChange + end + object Edt_Code: TEdit + Left = 84 + Top = 12 + Width = 120 + Height = 20 + TabOrder = 1 + OnChange = Edt_nameChange + end + end + object ADOQueryDept: TADOQuery + Connection = ADOConnection1 + LockType = ltReadOnly + Parameters = <> + Left = 88 + Top = 104 + end + object DataSource1: TDataSource + DataSet = ADOQueryDept + Left = 96 + Top = 152 + end + object ADOConnection1: TADOConnection + LoginPrompt = False + Left = 292 + Top = 4 + end + object cxStyleRepository1: TcxStyleRepository + Left = 243 + Top = 128 + object cxStyle1: TcxStyle + AssignedValues = [svColor, svFont] + Color = clInactiveCaption + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle2: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = 4707838 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + TextColor = clBtnText + end + object cxStyle_gridRow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16311512 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_gridFoot: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_gridHead: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridGroupBox: TcxStyle + AssignedValues = [svColor, svFont] + Color = clMoneyGreen + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_yellow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyleTree: TcxStyle + AssignedValues = [svColor, svFont] + Color = clWindow + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + end + object ADOQueryHelp: TADOQuery + Connection = ADOConnection1 + LockType = ltReadOnly + CommandTimeout = 300 + Parameters = <> + Left = 408 + Top = 176 + end + object DataSource2: TDataSource + DataSet = ClientDataSet1 + Left = 448 + Top = 176 + end + object ImageList1: TImageList + Left = 376 + Top = 4 + Bitmap = { + 494C0101A800A900040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 + 000000000000360000002800000040000000B0020000010020000000000000B0 + 0200000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000E2B4A000E2B4A000E2B4A000E2B4A000E2B4A000E2B4A000E2B + 4A000E2B4A000E2B4A000E2B4A000E2B4A000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000162F1D00060E + 080000000000699A7D0000000000000000000000000000000000000000000000 + 0000000000000E2B4A00CFFFFF0094DAEC0075C5E20075C5E20054B0D70054B0 + D7002397E1002397E1002397E1000E2B4A00000000000000000033337B003333 + 7B0033337B0033337B0033337B0033337B0033337B0033337B0033337B003333 + 7B0033337B0033337B00000000000000000000000000294B2900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000162F1D0098C0A90098C0A900699A + 7D0038634700060E080000000000000000000000000000000000000000000000 + 0000000000000E2B4A00CFFFFF001E548B001E548B001E548B001E548B001E54 + 8B001E548B001E548B002397E1000E2B4A000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000294B2900268C2600268C + 2600268C2600268C2600268C2600268C2600268C2600268C2600268C2600268C + 2600268C2600268C260000000000000000000000000000000000000000000000 + 00000000000000000000162F1D0098C0A900C7DFD300C7DFD30098C0A900699A + 7D00699A7D00162F1D0000000000000000000000000000000000000000000E2B + 4A000E2B4A000E2B4A00CFFFFF0094DAEC0075C5E20075C5E20075C5E20054B0 + D70054B0D70054B0D7002397E1000E2B4A0000000000000000006677DE000000 + 00007BA9B2007FAAB30084ACB5008AAFB60091B2B70096B4BA009DB7BC00A3BA + BE00ABBCC100AFC0C200000000000000000000000000294B29008FE08F008FE0 + 8F008FE08F008FE08F008FE08F008FE08F008FE08F008FE08F008FE08F008FE0 + 8F008FE08F008FE08F000000000000000000000000000000000000000000060E + 0800162F1D0098C0A900AECEBD0069C07D00C7DFD300C7DFD30098C0A900699A + 7D00699A7D0038634700699A7D00000000000000000000000000000000000E2B + 4A00CFFFFF000E2B4A00CFFFFF0094DAEC0094DAEC001E548B001E548B001E54 + 8B001E548B001E548B0054B0D7000E2B4A000000000033337B006677DE006272 + DB005D68D5000000000084ACB5008AAFB60091B3B90096B4BB009DB6BC00A4BA + BE00ABBCC000EEFBFE00000000000000000000000000294B2900294B2900294B + 2900294B2900294B2900294B2900294B2900294B2900294B2900294B2900294B + 2900294B2900294B29000000000000000000000000000000000000000000162F + 1D00C7DFD30083CE9400069A0800009A0000009A000083CE940098C0A900699A + 7D00699A7D00699A7D0000000000000000000000000000000000000000000E2B + 4A00CFFFFF000E2B4A00CFFFFF0094DAEC0094DAEC0094DAEC0075C5E20075C5 + E20075C5E20054B0D70054B0D7000E2B4A0000000000000000006677DE006271 + DB005D68D6005861D0005358CB000000000091B2B90096B4BB009DB7BC00A4BA + BE00EAF9FD00EEFCFE0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004F7F + 61000CAE1100AECEBD0083CE940038C04700AECEBD0038C0470098C0A900699A + 7D00699A7D00699A7D00060E080000000000000000000E2B4A000E2B4A000E2B + 4A00CFFFFF000E2B4A00CFFFFF000A0AB0000A0AB0000A0AB00094DAEC0094DA + EC0094DAEC0094DAEC0054B0D7000E2B4A0000000000000000006677DE006271 + DB005D69D5005860D0005358CB004E50C6000000000096B4BA009DB6BC00E4F7 + FB00EAFAFD00EFFCFE00000000000000000000000000294B2900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000699A7D0098C0 + A900009A000083CE9400C7DFD300C7DFD300C7DFD30083CE940098C0A900699A + 7D00699A7D00699A7D00162F1D00699A7D00000000000E2B4A00CFFFFF000E2B + 4A00CFFFFF000E2B4A00CFFFFF00CFFFFF00CFFFFF00CFFFFF00CFFFFF00CFFF + FF00CFFFFF00CFFFFF0094DAEC000E2B4A000000000033337B006677DE006371 + DA005D69D5005861D0005358CB004E4FC6000000000098B5BB00DEF4F900E3F8 + FB00EAF9FC00EFFBFE00000000000000000000000000294B2900268C2600268C + 2600268C2600268C2600268C2600268C2600268C2600268C2600268C2600268C + 2600268C2600268C260000000000000000000000000000000000060E0800AECE + BD000CAE1100009A0000C7DFD30083CE9400009A000038C0470098C0A900699A + 7D00699A7D00699A7D003863470000000000000000000E2B4A00CFFFFF000E2B + 4A00CFFFFF000E2B4A000E2B4A000E2B4A000E2B4A000E2B4A000E2B4A000E2B + 4A000E2B4A000E2B4A000E2B4A000E2B4A0000000000000000006677DE006271 + DA005D69D5005861D0005358CB004D50C60000000000D8F3F800DEF5F900E4F7 + FB00EAF9FC00EEFBFE00000000000000000000000000294B29008FE08F008FE0 + 8F008FE08F008FE08F008FE08F008FE08F008FE08F008FE08F008FE08F008FE0 + 8F008FE08F008FE08F0000000000000000000000000000000000162F1D00C7DF + D30038C0470038C0470038C047000CAE11000CAE110038C0470098C0A900699A + 7D00699A7D00699A7D00699A7D0000000000000000000E2B4A00CFFFFF000E2B + 4A00CFFFFF000A0AB0000A0AB0000A0AB00094DAEC0094DAEC0094DAEC0094DA + EC0054B0D7000E2B4A00000000000000000000000000000000006677DE006271 + DA005D69D5005861D0005258CB004D50C50000000000D9F2F800DEF4F900E3F7 + FB00EAFAFD00EFFCFE00000000000000000000000000294B2900294B2900294B + 2900294B2900294B2900294B2900294B2900294B2900294B2900294B2900294B + 2900294B2900294B2900000000000000000000000000000000004F7F6100C7DF + D300C7DFD300C7DFD300AECEBD0038C04700F2F7F500C5DFD100F2F7F500DFEC + E500C5DFD100699A7D00699A7D00060E0800000000000E2B4A00CFFFFF000E2B + 4A00CFFFFF00CFFFFF00CFFFFF00CFFFFF00CFFFFF00CFFFFF00CFFFFF00CFFF + FF0094DAEC000E2B4A0000000000000000000000000033337B006677DE006271 + DB005D69D5005861D0005258CB004D50C60000000000D8F2F800DEF4F900E4F7 + FB00E9FAFC00EEFCFE0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000699A7D0098C0A900C7DF + D300C7DFD300C7DFD300F2F7F500C5DFD100699A7D0083AE9400C7DFD300C7DF + D300C7DFD300F2F7F500DFECE50036614600000000000E2B4A00CFFFFF000E2B + 4A000E2B4A000E2B4A000E2B4A000E2B4A000E2B4A000E2B4A000E2B4A000E2B + 4A000E2B4A000E2B4A00000000000000000000000000000000006677DE006371 + DB005D69D5005861D0005358CB004E50C600000000008AAFB6008AAFB6008AAF + B6008AAFB6008AAFB60000000000000000000000000026267F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000060E0800AECEBD00C7DF + D300F2F7F500C5DFD100162F1D00699A7D00699A7D00C7DFD300C7DFD300C7DF + D300C7DFD300DFECE500DFECE50036614600000000000E2B4A00CFFFFF000A0A + B0000A0AB0000A0AB00094DAEC0094DAEC0094DAEC0094DAEC0054B0D7000E2B + 4A000000000000000000000000000000000000000000000000006677DE006271 + DB005D69D5005860D0005358CB004D50C5000000000000000000000000000000 + 0000000000000000000000000000000000000000000026267F000607C9000607 + C9000607C9000607C9000607C9000607C9000607C9000607C9000607C9000607 + C9000607C9000607C900000000000000000000000000162F1D00FBFDFC00C5DF + D100699A7D00699A7D00162F1D00699A7D0098C0A900C7DFD300C7DFD300DFEC + E500DFECE50067987B00060E080000000000000000000E2B4A00CFFFFF00CFFF + FF00CFFFFF00CFFFFF00CFFFFF00CFFFFF00CFFFFF00CFFFFF0094DAEC000E2B + 4A00000000000000000000000000000000000000000000000000000000000000 + 00005E69D5005861D0005358CB004D50C5000000000000000000000000000000 + 0000000000000000000000000000000000000000000026267F008080F9008080 + F9008080F9008080F9008080F9008080F9008080F9008080F9008080F9008080 + F9008080F9008080F900000000000000000000000000162F1D00FBFDFC00699A + 7D00699A7D00699A7D00162F1D00699A7D00C7DFD300DFECE500DFECE5006798 + 7B00060E0800000000000000000000000000000000000E2B4A000E2B4A000E2B + 4A000E2B4A000E2B4A000E2B4A000E2B4A000E2B4A000E2B4A000E2B4A000E2B + 4A00000000000000000000000000000000000000000000000000000000000000 + 000000000000000000005358CA004E50C5000000000000000000000000000000 + 0000000000000000000000000000000000000000000026267F0026267F002626 + 7F0026267F0026267F0026267F0026267F0026267F0026267F0026267F002626 + 7F0026267F0026267F0000000000000000000000000000000000162F1D00FBFD + FC00FFFFFF00FFFFFF00162F1D00AECEBD00DFECE50067987B00060E08000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000162F1D00699A7D00FBFDFC00FBFDFC00162F1D0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000062616200626162006261 + 6200626162006261620062616200626162006261620062616200626162006261 + 6200626162006261620062616200626162000000000000000000000000000000 + 0000000000000000000000000000000000004A84BD004A84BD0084BDFF000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000004A84BD004A84BD0084BDFF000000 + 000000000000000000000000000000000000000000000000000000000000AFAF + AF00A09FA000A1A1A100A09FA000B1B1B1000000000000000000000000000000 + 000000000000000000000000000000000000A78B6900412C1300412C1300412C + 1300412C1300412C1300412C1300412C1300412C1300412C1300412C1300412C + 1300412C1300412C1300412C1300626162000000000000000000000000000000 + 0000000000000000000000000000000000004A84BD004A84BD0084BDFF00006B + 8400000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000004A84BD004A84BD0084BDFF00006B + 84005C5C5C0000000000000000000000000000000000000000009A9A9A008585 + 85008E8E8E0085858500B1B1B100000000000000000000000000000000000000 + 000000000000000000000000000000000000A78B6900DAEEE200D5ECDD00D5EC + DD00CFE9DA00C7E6D200BEE1CC00B6DDC500AED8BE00A8D6BA009FD0B10097CC + AA0090C8A5008CC5A100412C1300626162000000000000000000000000000000 + 00000000000000000000000000000000000000216B004A84BD0084BDFF00006B + 8400006B84000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000216B004A84BD0084BDFF005CA0 + B000B3D3DA005C5C5C0000000000000000000000000098989800505050008686 + 860050505000A9A9A90000000000929292000D0D0D000D0D0D000D0D0D000D0D + 0D001A1A1A00929292000000000000000000A78B6900DAEEE2007C5D37007C5D + 3700CFE9DA007C5D37007C5D37007C5D37007C5D37007C5D3700000064000000 + 640090C8A5008BC49F00412C1300626162000000000000000000000000004B00 + 0700000000000000000000000000000000004A84BD004A84BD0084BDFF00006B + 8400006B8400006B840000000000000000000000000000000000000000000021 + 6B00000000000000000000000000000000004A84BD004A84BD00B0D5FF00B3D3 + DA0018189400B3D3DA005C5C5C00000000000000000047474700797979004747 + 4700797979000000000047474700020202000D0D0D000D0D0D00757575007575 + 75000D0D0D00020202004747470000000000A78B6900DAEEE200D5ECDD00D5EC + DD00CFE9DA00C7E6D200BEE1CC00B6DDC500AED8BE00A8D6BA00000064000000 + 8C00000064008BC49F00412C1300626162000000000085344A0085344A004B00 + 07004B00070000000000000000000000000000216B004A84BD0084BDFF00006B + 8400006B8400006B84000000000000000000000000004A84BD004A84BD000021 + 6B0000216B0000000000000000000000000000216B008BB0D500DAEBFF001818 + BD000000DB0018189400B3B3B300000000008A8A8A0035353500898989003535 + 35000000000092929200020202000D0D0D000D0D0D0047474700474747004747 + 4700757575000D0D0D000202020092929200A78B6900DAEEE2007C5D37007C5D + 3700CFE9DA007C5D37007C5D37007C5D37000000640000006400000064009696 + FF0000008C0000006400855D2E0062616200000000004B00070085344A004B00 + 07004B0007004B00070000000000000000004A84BD004A84BD0084BDFF00006B + 8400006B8400006B840000000000000000000000000000216B004A84BD000021 + 6B0000216B0000216B0000000000000000008BB0D500C9DAEB002929FF007B7B + FF000000DB000000DB0018189400000000005A5A5A00656565005A5A5A006565 + 6500000000001A1A1A000D0D0D004747470047474700A09FA000898A8900898A + 890047474700757575000D0D0D000D0D0D00A78B6900DAEEE200D5ECDD00D5EC + DD00CFE9DA00C7E6D200BEE1CC00B6DDC500000064009696FF0000008C000000 + FF000000FF0000008C0000006400888888000000000085344A0085344A004B00 + 07004B00070085344A0085344A004A84BD0000216B0000216B0000216B00006B + 8400006B8400006B84000000000000000000000000004A84BD004A84BD000021 + 6B0000216B004A84BD004A84BD004A84BD0000216B005C71A000B3BDD3002929 + FF000000DB0018189400B3B3B30000000000313131008E8E8E00313131008E8E + 8E00000000001A1A1A005757570047474700D4D4D400A09FA0000D0D0D00898A + 8900898A890047474700757575000D0D0D00A78B6900DAEEE200D5ECDD00D5EC + DD00CFE9DA00C7E6D200BEE1CC00B6DDC500000064009696FF000000FF000000 + FF000000FF000000FF000000DC0000006400000000004B00070085344A004B00 + 070085344A0085344A004B00070000216B0084BDFF0084BDFF0084BDFF000021 + 6B00006B8400006B840000000000000000000000000000216B004A84BD000021 + 6B004A84BD004A84BD0000216B0000216B0084BDFF0084BDFF00DAEBFF002929 + FF000000DB0018189400B3B3B30000000000313131008E8E8E00313131008E8E + 8E00000000001A1A1A00A09FA00047474700EEEEEE000D0D0D00BFBFBF000D0D + 0D00898A890047474700757575000D0D0D00A78B6900DAEEE2007C5D37007C5D + 37007C5D37007C5D37007C5D37007C5D3700000064009696FF009696FF009696 + FF000000FF000000FF0000006400888888000000000085344A0085344A004B00 + 07004B0007004B000700B35C720084BDFF0084BDFF0084BDFF0084BDFF0084BD + FF0000216B00006B84000000000000000000000000004A84BD004A84BD000021 + 6B0000216B0000216B0084BDFF0084BDFF0084BDFF0084BDFF00DAEBFF002929 + FF000000DB0018189400B3B3B30000000000313131008E8E8E00313131008E8E + 8E000000000005050500A09FA00047474700EEEEEE00A09FA0000D0D0D00A09F + A000A09FA000474747000D0D0D000D0D0D00A78B6900DAEEE200D5ECDD00D5EC + DD00CFE9DA00C7E6D200BEE1CC00B6DDC5000000640000006400000064009696 + FF000000FF0000006400855D2E00626162000000000085344A004B0007004B00 + 0700B35C7200B35C7200B35C7200B35C720084BDFF0084BDFF0084BDFF0084BD + FF0084BDFF0000216B000000000000000000000000004A84BD0000216B000021 + 6B0084BDFF0084BDFF0084BDFF0084BDFF0084BDFF0084BDFF00DAEBFF002929 + FF000000DB0018189400B3B3B300000000005A5A5A00656565005A5A5A006565 + 65000000000027272700A09FA0000D0D0D0047474700EEEEEE00EEEEEE00D4D4 + D400474747000D0D0D000D0D0D001A1A1A00A78B6900DAEEE2004B93C50073C6 + E50073C6E50073C6E50073C6E500B6DDC500AED8BE00A8D6BA00000064009696 + FF00000064008BC49F00412C130062616200000000004B000700B35C7200B35C + 7200B35C7200B35C7200B3B3B300B35C7200B35C720084BDFF0084BDFF0084BD + FF00000000000000000000000000000000000000000000216B0084BDFF0084BD + FF0084BDFF0084BDFF00FFFFFF0084BDFF0084BDFF0084BDFF00DAEBFF002929 + FF000000DB001818940000000000000000008A8A8A0035353500898989003535 + 3500000000009292920027272700A09FA0000D0D0D0047474700474747004747 + 47000D0D0D000D0D0D000202020092929200A78B6900DAEEE2004B93C5004B93 + C5004B93C5004B93C50073C6E500B6DDC500AED8BE00A6D5B800000064000000 + 640090C8A5008BC49F00412C1300626162000000000000000000B35C7200B35C + 7200B3B3B300B3B3B300B3B3B300B3B3B300B35C7200B35C7200000000000000 + 000000000000000000000000000000000000000000000000000084BDFF0084BD + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0084BDFF0084BDFF00B3B3B3002929 + FF007B7BFF00181894000000000000000000000000005A5A5A00858585005A5A + 5A0085858500000000004747470027272700A09FA000A09FA000A09FA0005757 + 57000D0D0D00020202004747470000000000A78B6900DAEEE200D5ECDD00D5EC + DD00CFE9DA00C7E6D200BEE1CC00B6DDC500AED8BE00A6D5B8009FD0B10097CC + AA0090C8A5008BC49F00412C130062616200000000000000000000000000B35C + 7200B35C7200B3B3B300B35C7200B35C72000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000000000000084BD + FF0084BDFF00FFFFFF0084BDFF0084BDFF000000000000000000000000002929 + FF002929FF002929FF00000000000000000000000000A1A1A100696969009292 + 920069696900AFAFAF000000000092929200272727001A1A1A000D0D0D000505 + 05000D0D0D00929292000000000000000000A78B6900A78B6900A78B6900A78B + 6900A78B6900A78B6900A78B6900A78B6900A78B6900A78B6900A78B6900A78B + 6900A78B6900A78B6900A78B6900000000000000000000000000000000000000 + 0000B35C7200B35C720000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000084BDFF0084BDFF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A2A2A2009191 + 91009898980091919100B4B4B400000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000B3B3 + B300A9A9A900A9A9A900A9A9A900B4B4B4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000285C0000285C0000285C000028 + 5C0000285C0000285C0000285C0000285C0000285C0000285C0000285C000028 + 5C0000285C0000285C0000285C0000285C00000000000000A8000000A8000000 + A8000000A8000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000DB002424E7000000 + A800D0700000E78D24007A4200000000DB002424E7000000A800D0700000E78D + 24007A4200000000DB002424E7000000A8000000000000000000000000000000 + 000000000000000000000000000000000000003C5F00004C7800000000000000 + 0000000000000000000000000000000000003D78B500CFFFFF0071D0F40071D0 + F40092929200555555002323230005050500050505000505050055555500208C + D700208CD700208CD700208CD70000285C00000000002424E7002424E7002424 + E7000000A8000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000DB002424E7000000 + A800D0700000E78D24007A4200000000DB002424E7000000A800D0700000E78D + 24007A4200000000DB002424E7000000A8000000000000000000000000000000 + 0000000000000000000000000000000000005BC3FF00004C7800004C7800004C + 7800000000000000000000000000000000003D78B500CFFFFF0071D0F4007A7A + 7A001E1E1E002D2D2D006A6A6A009C9C9C006A6A6A004545450045454500208C + D700208CD700208CD700208CD70000285C00000000000000DB000000DB000000 + DB000000DB000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000DB002424E7000000 + A800D0700000E78D24007A4200000000DB002424E7000000A800D0700000E78D + 24007A4200000000DB006464F9000000A8000000000000000000000000000000 + 000000000000000000000000000000000000000000005BC3FF00E5508F00A400 + 0000A40000000000000000000000000000003D78B5007A7A7A002D2D2D001E1E + 1E0045454500A1A1A10048AEE50048AEE50048AEE50048AEE500208CD700208C + D7002D2D2D0055555500208CD70000285C00000000007A4200007A4200007A42 + 00007A4200007A4200007A4200007A4200007A4200007A4200007A4200007A42 + 000000000000000000000000000000000000000000000000DB002424E7000000 + A800D0700000E78D24007A4200000000DB002424E7000000A800D0700000E78D + 24007A4200000000DB000000DB000000DB000000000000000000000000000000 + 000000000000000000000000000000000000000000005BC3FF00E5508F00A400 + 0000A4000000A400000000000000000000003D78B500A1A1A1002D2D2D002D2D + 2D00A1A1A10071D0F40071D0F40048AEE50048AEE50048AEE50048AEE500208C + D7002D2D2D00232323002D2D2D0000285C0000000000E78D2400E78D2400E78D + 2400E78D2400E78D2400E78D2400E78D2400E78D2400E78D2400E78D24007A42 + 000000000000000000000000000000000000000000000000DB006464F9000000 + A800D0700000E78D24007A4200000000DB002424E7000000A800D0700000E78D + 24007A4200000000000000000000000000000000000000000000626162006261 + 6200626162006261620062616200626162006261620000000000A4000000FFC7 + D800A4000000A4000000A4000000000000003D78B500CFFFFF00232323002D2D + 2D002D2D2D0071D0F40071D0F40071D0F40048AEE50048AEE50048AEE5009C9C + 9C002D2D2D0005050500208CD70000285C0000000000D0700000D0700000D070 + 0000D0700000D0700000D0700000D0700000D0700000D0700000D0700000D070 + 000000000000000000000000000000000000000000000000DB000000DB000000 + DB00D0700000E78D24007A4200000000DB002424E7000000A800D0700000E78D + 24007A4200000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000A400 + 0000FFC7D800A4000000A4000000A40000003D78B500CFFFFF0090E9FF0090E9 + FF0071D0F40071D0F40071D0F40071D0F40048AEE50048AEE50048AEE50048AE + E500208CD70005050500208CD70000285C00000000000000A8000000A8000000 + A8000000A8000000A8000000A8000000A8000000A8000000A8000000A8000000 + A8000000A8000000A80000000000000000000000000000000000000000000000 + 0000D0700000F4B163007A4200000000DB002424E7000000A800D0700000E78D + 24007A4200000000000000000000000000000000000000000000E4E4E4000000 + 0000FFA73700FF9E340080000000FF732600FF69230080000000FF3110000000 + 0000A4000000FFC7D800A4000000000000003D78B500CFFFFF00050505009C9C + 9C0071D0F40071D0F40071D0F40071D0F40071D0F40048AEE50048AEE50048AE + E5009C9C9C0005050500208CD70000285C00000000002424E7002424E7002424 + E7002424E7002424E7002424E7002424E7002424E7002424E7002424E7002424 + E7002424E7000000A80000000000000000000000000000000000000000000000 + 0000D0700000D0700000D07000000000DB002424E7000000A800D0700000E78D + 24007A4200000000000000000000000000000000000000000000E7E8E7000000 + 0000FFB13B00FFA7370080000000FF7C2800FF71250080000000FF3D1400FF2F + 0F0000000000A400000000000000000000003D78B500CFFFFF00232323006A6A + 6A0090E9FF0071D0F40071D0F40071D0F40071D0F40048AEE50048AEE50048AE + E5006A6A6A0023232300208CD70000285C00000000000000DB000000DB000000 + DB000000DB000000DB000000DB000000DB000000DB000000DB000000DB000000 + DB000000DB000000DB0000000000000000000000000000000000000000000000 + 00000000000000000000000000000000DB002424E7000000A800D0700000E78D + 24007A4200000000000000000000000000000000000000000000000000000000 + 0000800000008000000080000000800000008000000080000000800000008000 + 0000000000006261620000000000000000003D78B500CFFFFF00555555002D2D + 2D00A1A1A10090E9FF0071D0F40071D0F40071D0F40071D0F40071D0F400A1A1 + A1002D2D2D0055555500208CD70000285C00000000007A4200007A4200007A42 + 00007A4200007A4200007A4200007A4200007A42000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000DB002424E7000000A800D0700000F4B1 + 63007A4200000000000000000000000000000000000000000000F6F6F6000000 + 0000FFD14500FFCC440080000000FFAA3800FFA0350080000000FF752700FF6A + 2300000000006261620000000000000000003D78B500CFFFFF00929292001E1E + 1E0045454500A1A1A10090E9FF002D2D2D0071D0F40071D0F400A1A1A1004545 + 45001E1E1E009292920048AEE50000285C0000000000E78D2400E78D2400E78D + 2400E78D2400E78D2400E78D2400E78D24007A42000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000DB002424E7000000A800D0700000D070 + 0000D07000000000000000000000000000000000000000000000F9F8F8000000 + 0000FFD14500FFD1450080000000FFB33C00FFA9370080000000FF7D2A00FF73 + 2600000000006261620000000000000000003D78B500CFFFFF00B9F2FF007A7A + 7A001E1E1E002D2D2D006A6A6A002D2D2D002D2D2D0071D0F40071D0F4001E1E + 1E007A7A7A0071D0F40048AEE50000285C0000000000D0700000D0700000D070 + 0000D0700000D0700000D0700000D0700000D070000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000DB006464F9000000A800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000006261620000000000000000003D78B500CFFFFF00B9F2FF00B9F2 + FF0092929200555555002323230005050500050505000505050071D0F40071D0 + F40071D0F40071D0F40048AEE50000285C00000000000000A8000000A8000000 + A8000000A8000000A8000000A800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000DB000000DB000000DB00000000000000 + 0000000000000000000000000000000000000000000000000000FFFFFF000000 + 0000F9F8F800F5F6F500EBECEB00E8E9E80000000000D9D8D900D4D5D400D0D0 + D000000000006261620000000000000000003D78B500CFFFFF00B9F2FF00B9F2 + FF00B9F2FF00B9F2FF00B9F2FF002D2D2D002D2D2D0090E9FF0090E9FF0090E9 + FF0071D0F40071D0F40071D0F40000285C00000000002424E7002424E7002424 + E7002424E7002424E7000000A800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000003D78B500CFFFFF00CFFFFF00CFFF + FF00CFFFFF00CFFFFF00CFFFFF00CFFFFF00CFFFFF00CFFFFF00CFFFFF00CFFF + FF00CFFFFF00CFFFFF0071D0F40000285C00000000000000DB000000DB000000 + DB000000DB000000DB000000DB00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000003D78B5003D78B5003D78B5003D78 + B5003D78B5003D78B5003D78B5003D78B5003D78B5003D78B5003D78B5003D78 + B5003D78B5003D78B5003D78B5003D78B5000000000000000000000000000000 + 000000000000A3A3A3009A9A9A009A9A9A009A9A9A009A9A9A00A3A3A3000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A3A3A3006B6B6B004E4E4E004E4E4E004E4E4E004E4E4E006B6B6B00A3A3 + A300000000000000000000000000000000000000000000000000000000000000 + 0000CEEBF900C6E5F700BEE0F400B5DAF000ABD3ED00A1CDE90097C6E6008EC0 + E30085BBDF00000000000000000000000000000000007A420000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000004E4E4E009A9A + 9A0000000000000000000000000000000000000000000000000051A1D8000000 + 0000CEEAF9001127360011273600112736001127360011273600112736001127 + 360085BBDF00000000000000000000000000000000000000A8007A4200000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000007A42000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00009C636300FFFFCC00FFCC9900FFCC9900CE9C9C00000000004E4E4E009A9A + 9A0000000000000000000000000000000000000000000000000051A1D8000000 + 0000CDEAF900C6E5F700BDE0F400B5D9F100ABD3ED00A1CDEA0097C7E6008EC0 + E20085BADF0000000000000000000000000000000000000000000000A8007A42 + 0000000000000000000000000000000000000000000000000000000000000000 + 00007A420000000000007A420000000000000000000005050500000000000505 + 0500000000000505050000000000000000000505050005050500050505000505 + 05000505050005050500000000000000000000000000A3A3A3009A9A9A009A9A + 9A009C636300FFFFCC00FFCC9900FFCC9900CE9C9C0000000000454545007D7D + 7D009A9A9A009A9A9A00A3A3A30000000000000000000000000051A1D8000000 + 0000CDEAF9001127360011273600112736001127360011273600112736001127 + 360085BBE00000000000000000000000000000000000000000000000A8000000 + 00007A42000000000000000000000000000000000000000000007A4200007A42 + 00000000000000000000000000007A4200000000000000000000000000000000 + 0000000000000000000000000000005A00004ED34E004ED34E004ED34E004ED3 + 4D00050505000A6C0A000505050000000000A3A3A3006B6B6B004E4E4E004E4E + 4E009C636300FFFFCC00FFCC9900FFCC9900CE9C9C0000000000323232004545 + 45004E4E4E004E4E4E006B6B6B00A3A3A300000000000000000051A1D8000000 + 0000CDEAF900C6E6F600BEDFF300B4DAF000ABD3EC00A0CCE90097C7E6008EC0 + E30085BAE0000000000000000000000000000000000000000000000000000000 + A800000000007A42000000000000000000007A4200007A420000000000000000 + 0000000000000000000000000000000000000000000005050500000000000505 + 0500000000000505050000000000005A000069DB690069DB690069DB690069DB + 690005050500107A100010791000050505000000000000000000000000000000 + 000000000000FFFFCC00FFCC9900FFCC9900CE9C9C0000000000000000000000 + 000000000000000000004E4E4E009A9A9A00000000000000000051A1D8000000 + 0000CEEBF9001127360011273600112736001127360011273600112736001127 + 360085BBDF000000000000000000000000000000000000000000000000000000 + A80000000000000000007A4200007A4200000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000005A000083E3830083E3830083E3830083E383000505 + 0500178817001687160017881700050505009C636300CE9C9C00CE9C9C00CE9C + 9C00CE9C9C00CE9C9C00FFCC9900FFCC9900CE9C9C00CE9C9C00CE9C9C00CE9C + 9C00CE9C9C00000000004E4E4E009A9A9A00000000000000000051A1D8000000 + 0000CEEBF900C6E5F600BDE0F300B5D9F000AAD3EC00A1CDEA0097C7E6008EC0 + E30085BADF000000000000000000000000000000000000000000000000000000 + 00000000A8000000000000000000000000000000000000000000000000000000 + 0000000000000000A80000000000000000000000000000000000000000000000 + 00000000000000000000005A00009EEE9E009EEE9E009EED9E009EEE9E000505 + 05001D931C001D941C0005050500000000009C636300FFFFCC00FFCC9900FFCC + 9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC + 9900CE9C9C00000000004E4E4E009A9A9A00000000000000000051A1D8000000 + 0000CEEAF9001127360011273600112736001127360011273600112736001127 + 360085BBE0000000000000000000000000000000000000000000000000000000 + 00000000A80000000000000000000000000000000000000000000000A8000000 + A8000000A800000000000000A800000000000505050000000000050505000000 + 000005050500005A0000B9F8B900BAF8B900B9F8B900B9F8B9000505050021A0 + 210021A0210021A0210005050500000000009C636300FFFFCC00FFCC9900FFCC + 9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC + 9900CE9C9C00000000004E4E4E009A9A9A00000000000000000051A1D8000000 + 0000CEEAF900C6E5F700BEE0F400B4DAF000AAD4ED00A1CCEA0097C7E6008EC1 + E30085BBDF000000000000000000000000000000000000000000000000000000 + 0000000000000000A8000000000000000000000000000000A800000000000000 + 00000000000000000000000000000000A8000000000000000000000000000000 + 000000000000005A0000CCFFCC00CCFFCC00CCFFCC00CCFFCC000505050025AD + 250025AD25000505050000000000000000009C636300FFFFCC00FFFFCC00FFFF + CC00FFFFCC00FFFFCC00FFCC9900FFCC9900CE9C9C00FFFFCC00FFFFCC00FFFF + CC00FFFFCC00000000006B6B6B00A3A3A300000000000000000051A1D8000000 + 0000CEEAF9001127360011273600112736001127360011273600112736001127 + 360085BAE0000000000000000000000000000000000000000000000000000000 + 000000000000000000000000A800000000000000A80000000000000000000000 + 0000000000000000000000000000000000000000000005050500000000000505 + 050000000000005A0000005A0000005A0000005A0000005A0000005A0000005A + 00002AB92B000505050000000000000000009C6363009C6363009C6363009C63 + 63009C636300FFFFCC00FFCC9900FFCC9900CE9C9C009C6363009C6363009C63 + 63009C63630000000000A3A3A30000000000000000000000000051A1D8000000 + 0000CEEAF900C6E5F700BDE0F400B5D9F000AAD3ED00A0CCE90097C6E6008EC0 + E20085BADF000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000A8000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000005A000000FF000000FF000000FF000000FF000000FF + 0000005A00000000000000000000000000000000000000000000000000000000 + 00009C636300FFFFCC00FFCC9900FFCC9900CE9C9C00000000004E4E4E009A9A + 9A0000000000000000000000000000000000000000000000000051A1D8000000 + 000000000000C6E5F60000000000B5DAF00000000000A1CDEA00000000008EC0 + E200000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000505050000000000050505000000 + 0000050505000000000000000000005A0000005A0000005A0000005A0000005A + 0000005A00000000000000000000000000000000000000000000000000000000 + 00009C636300FFFFCC00FFCC9900FFCC9900CE9C9C00000000004E4E4E009A9A + 9A0000000000000000000000000000000000000000000000000051A1D80051A1 + D800000000007B7B7B00000000007B7B7B00000000007B7B7B00000000007B7B + 7B00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00009C636300FFFFCC00FFFFCC00FFFFCC00FFFFCC00000000006B6B6B00A3A3 + A3000000000000000000000000000000000000000000000000000000000051A1 + D800000000007B7B7B00000000007B7B7B00000000007B7B7B00000000007B7B + 7B00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00009C6363009C6363009C6363009C6363009C6363009C636300A3A3A3000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000084B400142E4C00142E4C00142E4C00505050003E3E3E000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000084B4000078E100008CE8000055D6002A2A2A005E5E5E006666 + 6600383838000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000004B4B4B004B4B4B004B4B4B00828282008282 + 8200000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000A0A0A0000B0F0000378E100008CE8000055D6002E2E2E00666666007272 + 72007C7C7C004242420000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000004B4B4B004B4B4B0082828200828282009E9E9E004B4B4B008282 + 8200828282008282820000000000000000000000000034261600342616003426 + 1600342616003426160000000000000000000000000000000000AE824E003426 + 1600342616003426160034261600000000000000000000000000000000000000 + 00001010100008B0F0000D7EE6000A8EEA000656D600323232006E6E6E007C7C + 7C00626262000000000000000000000000006D4236006D4236006D4236006D42 + 36006D4236006D4236006D4236006D4236006D4236003737AD003737AD003737 + AD003737AD003737AD003737AD003737AD000000000000000000000000004B4B + 4B004B4B4B0082828200828282004B4B4B00FFE4D5004B4B4B00919191008282 + 820091919100919191009191910091919100AE824E00E1C29300E1C29300E1C2 + 9300E1C293003426160000000000000000000000000000000000AE824E00AE82 + 4E00E1C29300E1C29300906D4300342616000000000000000000000000000000 + 00001616160022B8F4001E88E6001E98EC001A63E100383838003A3A3A008080 + 8000808080004040400000000000000000006D42360000000000000000006D42 + 360000000000000000006D42360000000000000000003737AD00000000000000 + 00003737AD0000000000000000003737AD00000000004B4B4B004B4B4B000000 + 0000000000004B4B4B00FFE4D500FFE4D500FFE4D5004B4B4B00ABABAB000000 + 000091919100919191009191910000000000AE824E00E1C29300906D43003426 + 1600B6A69300000000000000000000000000000000000000000000000000B6A6 + 9300AE824E00E1C29300906D4300342616000000000000000000000000000000 + 00001E1E1E0036C2F8002BA0F3002ABCF6002C6FE3004E94F0002C496F002020 + 2000404040002020200000000000000000006D42360000000000000000000000 + 000000000000000000006D423600000000000000000000000000000000000000 + 00003737AD000000000000000000000000004B4B4B0082828200828282005252 + 520052525200FFE4D50053535A0053535A0053535A0053535A0000000000C6C6 + C6000000000053535A000000000000000000AE824E00E1C29300906D43003426 + 1600000000000000000000000000000000000000000000000000000000000000 + 0000AE824E00E1C29300906D4300342616000000000000000000649AAD00243A + 56004ECCF8004ECCF80046CAF8003EC4F8003E7EEB0066A4F400375173000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000006B5B2E00DADADA00DADADA000000 + 000000000000DADADA00DADADA00DBDAD900DADAD90000000000A8A8A8000000 + 0000A8A8A800DBDAD90053535A0000000000AE824E00E1C29300906D43003426 + 1600000000000000000000000000000000000000000000000000000000000000 + 0000AE824E00E1C29300906D43003426160000000000000000002C496F00649A + AD0066D6FB0066D6FB005ED4F90056D0F800538FF0007AB0F800475E7C000000 + 000000000000000000000000000000000000847A8400847A8400847A8400847A + 8400847A8400847A8400847A8400847A8400847A840000000000000000000000 + 0000000000000000000000000000000000006B5B2E00F1F1F100F1F1F100F1F1 + F100F1F1F100F1F1F100F1F1F100F1F1F100F1F1F10078787800F1F1F100F1F1 + F100F1F1F100F1F1F1000000000000000000AE824E00E1C29300906D43003426 + 1600000000000000000000000000000000000000000000000000000000000000 + 0000AE824E00E1C29300906D43003426160000000000000000003751730076A6 + B3007EE0FF007EE0FF0076DCFF006EDAFF00659CF600227CFD00566983000000 + 000000000000000000000000000000000000847A840084A5C30084A5C30084AF + C30085AFC30084AFC30085AFC30085AFC30085AFC30012658D00C4F1F7006ACD + DC0043A5C7002982B5001864A100000000006B5B2E000101B2000101B2000101 + B2000101B2000101B2000101B2000101B2000101B20078787800FA8D8100FA8D + 8100FFE2B300000000000000000000000000AE824E00E1C29300906D43003426 + 1600000000000000000000000000000000000000000000000000000000000000 + 0000AE824E00E1C29300906D4300342616000000000000000000475E7C0088B0 + B90096ECFF0096ECFF00C3F1FF0083B3FF00227CFD006A82A2008092AA000000 + 000000000000000000000000000000000000847A840084A5C30084A5C30085AF + C30085AFC30085AFC30085AFC30085AFC30085AFC30012658D00C4F1F70084DC + ED0058B3D700378EC1001864A100000000006B5B2E00D2C18800D2C08800D2C1 + 8800D2C08700D2C18800D2C18700D1C08800D2C0880078787800564924005649 + 240056492400B6B6B6000000000000000000AE824E00E1C29300906D43003426 + 1600000000000000000000000000000000000000000000000000000000000000 + 0000AE824E00E1C29300906D430034261600000000000000000056698300A9BD + C1006DA5FF006DA5FF00224E8F000E3C8300206AD9002E486D00000000000000 + 000000000000000000000000000000000000847A840084A5C30084A5C30084AF + C30085AFC30084AFC30085AFC30085AFC30085AFC30012658D00C4F1F70084DC + ED0058B3D700378EC1001864A100000000006B5B2E00C2AB6800C2AB6800C2AB + 6900C3AB6800C2AC6800C2AB6900C2AB6800C2AC6900FFC49D00FFE4D5004B4B + 4B00ABABAB00E9E9E9004B4B4B0000000000AE824E00E1C29300906D43003426 + 1600000000000000000000000000000000000000000000000000000000000000 + 0000AE824E00E1C29300906D430034261600000000000000000000000000588E + A100222222005E6E87000C459C001D53A6000808080000000000000000000000 + 000000000000000000000000000000000000847A840084A5C30084A5C30085AF + C30085AFC30085AFC30085AFC30085AFC30085AFC30012658D00C4F1F70084DC + EE0058B1D700388CC1001864A10000000000000000000000000035353500ABAB + AB00FFE4D500FFE4D500FFC49D00FFC49D00FFE4D5003F3F3F00A0A0A000D1D1 + D1004B4B4B004B4B4B000000000000000000AE824E00E1C29300906D43003426 + 1600B6A69300000000000000000000000000000000000000000000000000B6A6 + 9300AE824E00E1C29300906D4300342616000000000000000000000000000000 + 00000000000084A8D6002BA0F3003E7EEB002C2C2C0000000000000000000000 + 000000000000000000000000000000000000847A840084A5C30084A5C30085AF + C30085AFC30085AFC30085AFC30085AFC30085AFC30012658D00C4F1F70082DC + EE0059B1D700378EC1001864A100000000000000000000000000000000004B4B + 4B004B4B4B00FFE4D500FFE4D500575757008A8A8A00C2C2C2004B4B4B004B4B + 4B0000000000000000000000000000000000AE824E00E1C29300906D43003426 + 1600342616003426160000000000000000000000000000000000AE824E003426 + 160034261600E1C29300906D4300342616000000000000000000000000000000 + 0000000000006097DD00C3F1FF0083B3FF002E2E2E0000000000000000000000 + 000000000000000000000000000000000000847A840084A5C30084A5C30084AF + C30085AFC30084AFC30085AFC30085AFC30085AFC30012658D00C4F1F700C4F1 + F700C4F1F700C4F1F700B5EFF700000000000000000000000000000000003535 + 3500ABABAB004B4B4B00B6B6B600D8D8D8004B4B4B004B4B4B00000000000000 + 00000000000000000000000000000000000000000000AE824E00AE824E00AE82 + 4E00AE824E003426160000000000000000000000000000000000AE824E00AE82 + 4E00AE824E00AE824E00AE824E00000000000000000000000000000000000000 + 00000000000000000000525252003A3A3A000000000000000000000000000000 + 0000000000000000000000000000000000009A9A9A009A9A9A009A9A9A009A9A + 9A009A9A9A009A9A9A009A9A9A009A9A9A009A9A9A0012658D0012658D001265 + 8D0012658D0012658D0012658D00000000000000000000000000000000000000 + 00004B4B4B00E4E4E4004B4B4B004B4B4B000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000004B4B4B0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000939393009393 + 9300939393009393930093939300939393009393930093939300939393009393 + 9300939393009393930093939300000000000000000000000000000000000000 + 0000000000000000000000000000727272000000000072727200000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000093939300000000000000000000000000000000000000 + 0000000000000000000072727200000000003E92D90000000000727272000000 + 0000000000000000000000000000000000001414140014141400141414001414 + 1400141414001414140000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001414140014141400141414001414 + 1400141414001414140000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000006A514A00F8E7DC00E4A6 + 8800E1A18400DD9C7F00D8987B00D3947700CD8F7400C78A7000C0876D00B983 + 6900B47E66000000000093939300000000000000000000000000000000000000 + 00000000000072727200000000003F99D9003E99D9003E99D900000000007272 + 72000000000000000000000000000000000012658D00CCFFFF009FE1F0006ABE + DE003DA0CF001414140000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000012658D00CCFFFF009FE1F0006ABE + DE003DA0CF001414140000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000006A514A00F8E7DC00E4A6 + 8800E1A18400DD9C7F00D8987B00D3947700CD8F7400C78A7000C0876D00B983 + 6900B47E66000000000093939300000000000000000000000000000000000000 + 000072727200000000004BA6E5004B9FE500000000003F9FE5003E99D9000000 + 00007272720000000000000000000000000012658D00CCFFFF009FE2F0006ABE + DE003DA0CF001414140000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000012658D00CCFFFF009FE2F0006ABE + DE003DA0CF001414140000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000006A514A00F8E7DC005F5F + EE005F5FEE00E3A2850048484800484848004848480048484800484848004848 + 4800BA846A000000000093939300000000000000000000000000000000007272 + 7200000000004CACE6004CACE60000000000D9F3FF00000000003F9FE5003F99 + D9000000000072727200000000000000000012658D0012658D0012658D001265 + 8D0012658D0012658D0000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000012658D0012658D0012658D001265 + 8D0012658D0012658D0000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000006A514A00F8E7DC00E7AF + 9700E6AB9100E5A78A00E3A38600DF9E8100DB9A7D00D6967800D0917600C98D + 7200C3886F000000000093939300000000000000000000000000727272000000 + 000058B3E6007272720072727200D9F3FF00D9F3FF00D9F3FF00000000003F9F + E5003E99D9000000000072727200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000014147900141493000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000014147900141493000000 + 000000000000000000000000000000000000000000006A514A00F8E7DC004848 + EB004848EB00E6AC92004848480048484800484848004848480048484800D193 + 7600CB8E720000000000939393000000000000000000727272000000000065BF + F20065BFF300727272000000000000000000327298004CA6E6004CA6E6000000 + 00003F9FE5003E99D90000000000727272001414140014141400141414001414 + 14001414140014141400000000000000000014147900141479001414D1001817 + 9700000000000000000000000000000000001414140014141400141414001414 + 14001414140014141400000000000000000014147900141479001414D1001817 + 970000000000000000000000000000000000000000006A514A00F8E7DC00E7BA + A600E7B6A000E7B29900E7AD9300E5A88E00E4A68800E1A18400DC9C7E00D897 + 7A00D3937700000000009393930000000000727272000000000065BFF20065C6 + F30000000000D9F3FF003292CC007ECCFF003272980000000000000000004BA6 + E500000000003F99E5003E99D9000000000019199F00ABABFA008383EA004C4C + E4002828C000141414001414790014147900141479001414D1003414B1003D3D + CA002021A40000000000000000000000000019199F00ABABFA008383EA004C4C + E4002828C000141414001414790014147900141479001414D1003414B1003D3D + CA002021A400000000000000000000000000000000006A514A00F8E7DC004848 + D8004848D800E7B7A10048484800484848004848480048484800484848004848 + 4800D8987B000000000093939300000000000000000059BFF20065C6F3000000 + 0000D9F3FF00D9F3FF003292CC007ECCFF007ECCFF003292CC00327298000000 + 00004BA6E5003F9FE500000000000000000019199F00ABABFA008383EB004C4C + E4002828C00014141400000000001414D1001414D1003414B100000000007E7E + E3004545D2002D2DB300000000000000000019199F00ABABFA008383EB004C4C + E4002828C00014141400000000001414D1001414D1003414B100000000007E7E + E3004545D2002D2DB3000000000000000000000000006A514A00F8E7DC00E7C5 + B500E7C1AF00E7BCA900E7B7A300E7B39C00E7AF9700E6AB9100E5A78A00E3A2 + 8500DF9E8100000000009393930000000000000000000000000065C6F30072CC + F30000000000D9F3FF007ED9FF00327298007ECCFF007ECCFF00E672A500B332 + 32000000000000000000000000000000000019199F0019199F0019199F001919 + 9F0019199F0019199F0000000000000000003414B10000000000000000000000 + 00009494E2004C4CDB003839C2000000000019199F0019199F0019199F001919 + 9F0019199F0019199F0000000000000000003414B10000000000000000000000 + 00009494E2004C4CDB003839C20000000000000000006A514A00F8E7DC004848 + C2004848C200E7C1B00048484800484848004848480048484800484848004848 + 4800E3A4870000000000939393000000000000000000000000000000000072CC + F30072D3FF00000000007ED9FF00000000007ECCFF00E672A500E672A500E672 + A500B33232000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000B3B3E1005454E4004344D1000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000B3B3E1005454E4004344D100000000006A514A00F8E7DC00E8D0 + C600E7CBBE00E7C7B700E7C3B300E7BEAC00E7BAA600E7B69F00E7B19900E7AD + 9300E5A88E000000000093939300000000000000000000000000000000000000 + 000072D3FF0072D3FF000000000072D3FF0000000000FF5B5B00FFCCE500E672 + A500E672A500B332320000000000000000001414140014141400141414001414 + 1400141414001414140000000000000000000000000000000000000000000000 + 00000000000000000000000000005B5BEE001414140014141400141414001414 + 1400141414001414140000000000000000000000000000000000000000000000 + 00000000000000000000000000005B5BEE00000000006A514A00F8E7DC004848 + B0004848B000E8CCC0004848480048484800484848004848480048484800E7B3 + 9A00E6AE95000000000093939300000000000000000000000000000000000000 + 00000000000072D3FF0072D3FF000000000072CCF30000000000FF5B5B00FFCC + E500E672A500E672A500B33232000000000012658D00CCFFFF009FE1F0006ABE + DE003DA0CF001414140000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000012658D00CCFFFF009FE1F0006ABE + DE003DA0CF001414140000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000006A514A00F8E7DC00EBDC + D600EAD7CF00E9D2C700E8CDC100E7C8BA00E7C5B500E7C0AE00E7BBA700E7B7 + A300E7B39B000000000093939300000000000000000000000000000000000000 + 0000000000000000000072CCF30065CCF30065C6F3000000000000000000FF5B + 5B00FFCCE500E672A500E672A500B332320012658D00CCFFFF009FE1F0006ABE + DE003DA0CF001414140000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000012658D00CCFFFF009FE1F0006ABE + DE003DA0CF001414140000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000006A514A00F8E7DC00F8E7 + DC00F8E7DC00F8E7DC00F8E7DC00F8E7DC00F8E7DC00F8E7DC00F8E7DC00F8E7 + DC00F8E7DC000000000093939300000000000000000000000000000000000000 + 000000000000000000000000000065C6F3000000000000000000000000000000 + 0000FF5B5B00FFCCE500E672A5000000000012658D0012658D0012658D001265 + 8D0012658D0012658D0000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000012658D0012658D0012658D001265 + 8D0012658D0012658D0000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000006A514A006A514A006A51 + 4A006A514A006A514A006A514A006A514A006A514A006A514A006A514A006A51 + 4A006A514A000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000FF5B5B0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000777777000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000009E9E9E009B9B9B00979797009393 + 93008E8E8E008A8A8A0086868600828282007E7E7E007A7A7A00767676007272 + 72006E6E6E006969690065656500616161000000000000000000777777007777 + 7700777777007777770077777700777777007777770077777700777777007777 + 7700777777007777770000000000000000000000000000000000777777003399 + CC00CCFFFF00C2F9FC00B4EFF700A5E5F20094D9EC0084CFE70075C5E20065BB + DD0054B0D60047A6D30000000000777777000000000000000000777777007777 + 7700777777007777770077777700777777007777770077777700777777007777 + 7700777777007777770000000000000000009D9D9D00CAC9CA00EFEEEF00EFEE + EF00EFEEEF00EDECED00C1BCBF00A7A3A600BBB9BB00D5D2D200E7E7E700EFEE + EF00EFEEEF00EFEEEF00E2E1E200979797000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000007777770000000000000000000000000000000000000000003399 + CC00CCFFFF00C2F9FC00B5F0F700A4E4F10094DAEC0084CFE70075C5E20064BA + DC0054B0D70047A6D20000000000777777000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000007777770000000000000000009C9C9C00B3B2B300E7E7E700C4C2 + C400C9C9C900A9A6A8007B747A00B4B2B400CECECF00D8D8D800D8D8D800D0D0 + D000BCBABC00D0D0D000F1F1F10093939300000000003399CC00CCFFFF00C2F9 + FC00B4EFF700A5E5F20094D9EC0084CFE70075C5E20065BBDD0054B0D60047A6 + D30000000000777777000000000000000000000000003399CC00CCFFFF003399 + CC00CCFFFF00C2F8FC00B5EFF700A5E4F10094DAEC0085D0E70075C6E20064BA + DC0055AFD70047A7D2000000000077777700000000003399CC00CCFFFF00C2F9 + FC00B4EFF700A5E5F20094D9EC0084CFE70075C5E20065BBDD0054B0D60047A6 + D300000000007777770000000000000000009B9B9B00D6D6D600E3E2E300E4E3 + E400BAB8BA00BBBBBB003A363C0073678100B9B5CA00D5D5D500EAEAEA00D6D6 + D600DCDCDC00F6F6F600F1F1F1008E8E8E00000000003399CC00CCFFFF00C2F9 + FC00B5F0F700A4E4F10094DAEC0084CFE70075C5E20064BADC0054B0D70047A6 + D20000000000777777000000000000000000000000003399CC00CCFFFF003399 + CC00CCFFFF00C3F9FC00B5EFF700A4E5F20094DAEC0084D0E70075C5E20064BA + DC0055B0D60047A7D2000000000077777700000000003399CC00CCFFFF00C2F9 + FC00B5F0F700A4E4F10094DAEC0084CFE70075C5E20064BADC0054B0D70047A6 + D200000000007777770000000000000000009A9A9A00B3B2B300A09DA000BAB9 + BA009B999B00B3B2B30089849B005B4D9100544B7E009693B200DEDCEE00FDFD + FE00FCFCFC00FEFEFE00F1F1F1008A8A8A00000000003399CC00CCFFFF00C2F8 + FC00B5EFF700A5E4F10094DAEC0085D0E70075C6E20064BADC0055AFD70047A7 + D20000000000777777000000000000000000000000003399CC00CCFFFF003399 + CC00CCFFFF00C2F9FC00B5EFF700A5E4F20094DAEC0084CFE70076C5E20065BA + DC0055B0D70047A6D2000000000077777700000000003399CC00CCFFFF00C2F8 + FC00B5EFF7008080800080808000808080007E7E7E008F8F8F0055AFD70047A7 + D2000000000077777700000000000000000099999900D6D6D600E5E5E500D7D7 + D700C9C9C900D6D6D600D3CFDB00A0A0E6007571B9004237620053497C00A6A0 + C000E0E0E300F6F6F600F1F1F10086868600000000003399CC00CCFFFF00C3F9 + FC00B5EFF700A4E5F20094DAEC0084D0E70075C5E20064BADC0055B0D60047A7 + D20000000000777777000000000000000000000000003399CC00CCFFFF003399 + CC00CCFFFF00C3F9FC00B4EFF700A4E5F20094DAEC0085CFE70075C6E20065BB + DC0054AFD70047A6D2000000000077777700000000003399CC00CCFFFF00C3F9 + FC00808080008080800094DAEC0084D0E7007E7E7E008F8F8F0055B0D60047A7 + D2000000000077777700000000000000000098989800B3B2B300CFCFCF00B4B1 + B4009B9B9B00A7A6A700A6A4A700B5B5DF009DA0F0007470BF00383162002724 + 48008A88AB00FAFBFC00F1F0F10082828200000000003399CC00CCFFFF00C2F9 + FC00B5EFF700A5E4F20094DAEC0084CFE70076C5E20065BADC0055B0D70047A6 + D20000000000777777000000000000000000000000003399CC00CCFFFF003399 + CC00CCFFFF00C2F9FB00B4EFF700A5E5F20094D9EC0084CFE70075C5E20065BA + DC0054B0D60047A6D3000000000077777700000000003399CC00CCFFFF00C2F9 + FC00808080008080800094DAEC0084CFE700808080008F8F8F0055B0D70047A6 + D2000000000077777700000000000000000096969600D6D6D600E4E4E400D2D2 + D200DBDBDB00DBDBDB00D8D8D800CBCED700AEB6F300898FE0004F5EAB00272B + 5800242044008083A400E9E8E9007E7E7E00000000003399CC00CCFFFF00C3F9 + FC00B4EFF700A4E5F20094DAEC0085CFE70075C6E20065BBDC0054AFD70047A6 + D20000000000777777000000000000000000000000003399CC00CCFFFF003399 + CC00CCFFFF00C2F9FC00B5F0F700A4E4F10094DAEC0085D0E70075C5E10064BA + DD0055B0D70047A7D2000000000077777700000000003399CC00CCFFFF00C3F9 + FC00B4EFF700808080008080800080808000808080008F8F8F0054AFD70047A6 + D2000000000077777700000000000000000095959500B3B2B30093929300918D + 9100908B9000B6B6B6009E9E9E00BCB8BC00AAABCB006293EC00385CB2002E4B + 980025245800231D42006A81B3007A7A7A00000000003399CC00CCFFFF00C2F9 + FB00B4EFF700A5E5F20094D9EC0084CFE70075C5E20065BADC0054B0D60047A6 + D30000000000777777000000000000000000000000003399CC00CCFFFF003399 + CC00CCFFFF00C2F8FC00B5EFF700A4E5F10094DAEC0085D0E70075C6E20064BA + DC0055AFD70046A7D2000000000077777700000000003399CC00CCFFFF00C2F9 + FB00B4EFF700A5E5F20094D9EC0084CFE700808080008F8F8F0054B0D60047A6 + D3000000000077777700000000000000000094949400D6D6D600DEDEDE00DADA + DA00E1E0E100D7D7D700D0D0D000D3D2D300E4E4E500B0C2E200538DE900385C + B2002F4B9600272858001619320076767600000000003399CC00CCFFFF00C2F9 + FC00B5F0F700A4E4F10094DAEC0085D0E70075C5E10064BADD0055B0D70047A7 + D20000000000777777000000000000000000000000003399CC00CCFFFF003399 + CC00CCFFFF00C2F9FC00B4EFF700A5E5F20094D9EC0084D0E70075C5E1000000 + 000000000000000000000000000077777700000000003399CC00CCFFFF00C2F9 + FC00B5F0F7008080800080808000808080007E7E7E0064BADD0055B0D70047A7 + D2000000000077777700000000000000000093939300B3B2B300C4C2C400908D + 900088858800858085009D9C9D00A6A4A6009E9C9E009B979D009AA7D0005288 + E900375CB2002D4A95001619320072727200000000003399CC00CCFFFF00C2F8 + FC00B5EFF700A4E5F10094DAEC0085D0E70075C6E20064BADC0055AFD70046A7 + D20000000000777777000000000000000000000000003399CC00CCFFFF003399 + CC00CCFFFF00C2F9FC00B5EFF700A4E5F20094D9EC0085CFE70075C5E200005F + 8F0050ACD500000000007777770000000000000000003399CC00CCFFFF00C2F8 + FC00B5EFF700A4E5F10094DAEC0085D0E70075C6E20064BADC0055AFD70046A7 + D2000000000077777700000000000000000092929200D6D6D600E6E6E600CACA + CA00C6C4C600BEBDBE00C1C0C100C8C7C800C8C6C800B8B7B800CDCBCF00A5B8 + E0004F87E800385AAF003657AB006E6E6E00000000003399CC00CCFFFF00C2F9 + FC00B4EFF700A5E5F20094D9EC0084D0E70075C5E10000000000000000000000 + 000000000000777777000000000000000000000000003399CC00CCFFFF003399 + CC00CCFFFF00C2F9FB00B4EFF700A5E5F20094DAED0084CFE70075C5E200005F + 8F0000000000777777000000000000000000000000003399CC00CCFFFF00C2F9 + FC00B4EFF700A5E5F20094D9EC0084D0E70075C5E10000000000000000000000 + 00000000000077777700000000000000000091919100B3B2B300B8B7B8009C98 + 9C00C3C2C300C6C5C600A29FA200A7A6A7009C999C00C9C9C900DBDADB00E1E1 + E30091A7D0004E80E4003657AB0069696900000000003399CC00CCFFFF00C2F9 + FC00B5EFF700A4E5F20094D9EC0085CFE70075C5E200005F8F0050ACD5000000 + 000077777700000000000000000000000000000000003399CC00CCFFFF003399 + CC00005F8F00005F8F00005F8F00005F8F00005F8F00005F8F00005F8F00005F + 8F0077777700000000000000000000000000000000003399CC00CCFFFF00C2F9 + FC00B5EFF700A4E5F20094D9EC0085CFE70075C5E200005F8F0050ACD5000000 + 00007777770000000000000000000000000090909000D6D6D600D1D0D100CFCC + CF00E0DEE000DDDCDD00C8C6C800D7D6D700D0CED000D2D2D200CAC8CA00D6D4 + D600CFCDD100A7BEE9003657AB0065656500000000003399CC00CCFFFF00C2F9 + FB00B4EFF700A5E5F20094DAED0084CFE70075C5E200005F8F00000000007777 + 770000000000000000000000000000000000000000003399CC00CCFFFF00C2F9 + FB00B4EFF700A5E5F20094DAED0084CFE70075C5E200005F8F00000000007777 + 770000000000000000000000000000000000000000003399CC00CCFFFF00C2F9 + FB00B4EFF700A5E5F20094DAED0084CFE70075C5E200005F8F00000000007777 + 7700000000000000000000000000000000008F8F8F00FCFCFC00F4F4F400F4F4 + F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4F400F4F4 + F400F4F4F400F1F1F300FDFDFE0061616100000000003399CC00005F8F00005F + 8F00005F8F00005F8F00005F8F00005F8F00005F8F00005F8F00777777000000 + 000000000000000000000000000000000000000000003399CC00005F8F00005F + 8F00005F8F00005F8F00005F8F00005F8F00005F8F00005F8F00777777000000 + 000000000000000000000000000000000000000000003399CC00005F8F00005F + 8F00005F8F00005F8F00005F8F00005F8F00005F8F00005F8F00777777000000 + 0000000000000000000000000000000000009F9F9F009E9E9E009D9D9D009C9C + 9C009B9B9B009A9A9A0099999900989898009696960095959500949494009393 + 93009292920091919100909090008F8F8F0000000000333333005C5C95005C5C + 95005C5C95005C5C95005C5C95005C5C95005C5C95005C5C95005C5C95005C5C + 95005C5C95005C5C950033333300000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000033333300333333003333 + 3300333333003333330033333300333333003333330033333300333333003333 + 3300333333003333330033333300333333000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001384 + BB0029B8FF0029B8FF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000006769B400333333004C4C710095BA + C10095BAC10099BBC2009DBDC400A1BFC500A7C1C500E1F5F900E5F6FA00E9F9 + FC00EEFAFD00F2FDFE0033333300333333000000000000000000626162006261 + 6200626162006261620062616200626162006261620062616200626162006261 + 62000000000000007B0000004200000000009C63630000000000000000006814 + 1400681414006814140068141400000000006814140068141400681414000000 + 0000681414006814140068141400000000000000000000000000000000001384 + BB00D8FBFB0029B8FF0000000000000000006814140068141400681414000000 + 0000000000000000000000000000000000006769B4005C5C95008592E5004C4C + 710095BAC10099BBC2009DBDC400A1BFC50009491E00E1F5F90009491E00E9F9 + FC00EEFAFD00F1FCFE0033333300333333000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000007B0000007B0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001384 + BB00D8FBFB000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000006769B400333333008592E5007173 + D1003333330099BBC2009DBDC40009491E0009491E0009491E0009491E000949 + 1E00EEFAFD00F1FDFE00333333003333330000000000000000000808FF000000 + 000044B8E9003CB5E7008000000027A4D9000000000000000000000000000000 + 7B0000007B000000000000000000000000009C63630000000000000000006814 + 1400681414006814140068141400000000006814140068141400681414000000 + 0000681414006814140068141400000000000000000000000000000000001384 + BB001384BB001384BB0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000006769B400333333008592E5007172 + D1003333330099BBC20009491E00A1BFC50009491E00E1F5F90009491E00E9F9 + FC0009491E00F2FDFE0033333300333333000000000000000000000000000000 + 0000000000000000000000000000373737009C9C39009C9C39009C9C39000000 + 000000007B006261620000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000006769B4005C5C95008592E5007172 + D1003333330099BBC20009491E00E0F5F90009491E00E1F5F90009491E00E9F9 + FC0009491E00F2FCFE0033333300333333000000000000000000E4E4E4000000 + 0000FFA83700FF9E340059595900DEDE7B00BDBD0000BDBD0000BDBD00009C9C + 3900000000006261620000000000000000009C63630000000000000000006814 + 1400681414006814140068141400000000006814140068141400681414000000 + 0000681414006814140068141400000000000000000000000000000000000000 + 0000000000000000000000000000000000001384BB0029B8FF0029B8FF000000 + 0000000000000000000000000000000000006769B400333333008592E5007173 + D1003333330099BBC2009DBDC400E0F5F90009491E00E1F5F90009491E000949 + 1E00EEFAFD00F1FCFE0033333300333333000000000000000000E7E8E7000000 + 0000FFB13B00FFA7370059595900DEDE3900BDBD0000BDBD0000BDBD0000BDBD + 0000000000006261620000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001384BB00D8FBFB0029B8FF000000 + 0000000000006814140068141400681414006769B400333333008592E5007173 + D1003333330099BBC200E0F5F900E0F5F90009491E0009491E0009491E00E9F9 + FC00EEFBFD00F2FDFE0033333300333333000000000000000000000000000000 + 0000800000008000000059595900BDBD3900FFFFBD00FFFFBD00DEDE7B009C9C + 3900000000006261620000000000000000009C63630000000000000000006814 + 1400681414006814140068141400000000006814140068141400681414000000 + 0000681414006814140068141400000000000000000000000000000000000000 + 0000000000000000000000000000000000001384BB00D8FBFB00000000000000 + 0000000000000000000000000000000000006769B4005C5C95008592E5007173 + D1003333330099BBC200E0F5F90009491E0009491E00E0F5F90009491E00E9F9 + FC00EDFBFD00F1FDFE0033333300333333000000000000000000F5F6F5000000 + 0000FFD14500FFCC44008000000059595900BDBD0000BDBD00009C9C21003737 + 3700000000006261620000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001384BB001384BB001384BB000000 + 0000000000000000000000000000000000006769B400333333008592E5007173 + D10033333300A1BFC50009491E00A1BFC50009491E00A1BFC50009491E00A1BF + C500A1BFC500A1BFC50033333300000000000000000000000000F5F6F5000000 + 0000FFD14500FFD1450080000000FFB33C00595959005959590059595900FF73 + 2600000000006261620000000000000000009C63630000000000000000006814 + 1400681414006814140068141400000000006814140068141400681414000000 + 0000681414006814140068141400000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000333333008592E5007173 + D100333333000000000009491E000000000009491E000000000009491E000000 + 000009491E000000000000000000000000000000000000000000F5F6F5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000006261620000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001384BB0029B8FF0029B8 + FF00000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000005C5C95007173 + D10033333300000000000000000009491E0009491E0009491E0009491E000949 + 1E00000000000000000000000000000000000000000000000000F5F6F5000000 + 0000F5F6F500F5F6F500EBECEB00E8E9E80000000000D9D8D900D4D5D400D0D0 + D000000000006261620000000000000000009C6363009C6363009C6363009C63 + 63009C6363009C6363009C6363009C6363009C6363009C6363009C6363009C63 + 63009C6363009C6363009C6363009C636300000000001384BB00D8FBFB0029B8 + FF00000000000000000068141400681414006814140000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000005C5C + 95003333330000000000000000000000000009491E000000000009491E000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001384BB00D8FBFB000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000333333000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000002828 + AD002828AD002828AD002828AD00000000002828AD002828AD002828AD000000 + 00002828AD002828AD002828AD0000000000000000001384BB001384BB001384 + BB00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000009C63630000000000000000000000 + 0000000000000000000000000000000000000000000000000000C78E8E00D5AA + AA00D5AAAA00D5AAAA00D5AAAA00D5AAAA00D5AAAA00D5AAAA00D5AAAA00D5AA + AA00D5AAAA00D5AAAA00AA808000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000FFFFCC009C636300000000000000 + 0000000000000000000000000000000000000000000000000000D5AAAA00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FDFDFD00FDFDFD00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00AA808000000000000000000000000000B7B7B7009F9F + 9F009F9F9F00B7B7B7000000000000000000C7C7C700D7D7D700000000000000 + 00000000000000000000000000000000000000000000000000007D7D7D007D7D + 7D007D7D7D007D7D7D007D7D7D007D7D7D007D7D7D007D7D7D007D7D7D007D7D + 7D007D7D7D007D7D7D007D7D7D007D7D7D000000000000000000000000000000 + 0000000000000000000000000000CE9C9C00FFFF9900FFFFCC009C6363000000 + 0000000000000000000000000000000000000000000000000000D5AAAA00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00E3E8F900617AE200A4B2ED00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00AA80800000000000000000009C636300000000000000 + 0000000000009F9F9F000000000000000000A7A7A700A7A7A700D7D7D7000000 + 0000000000000000000000000000000000005656560056565600565656005656 + 5600565656005656560056565600565656005656560056565600565656005656 + 56005656560056565600565656007D7D7D000000000000000000000000000000 + 00000000000000000000CE9C9C00FFCC9900FFCC9900FFFF9900FFFFCC009C63 + 6300000000000000000000000000000000000000000000000000D5AAAA00FFFF + FF00FFFFFF00FFFFFF00F2F4FD008498E9004564E100526EE100E9ECFA00FFFF + FF00FFFFFF00FFFFFF00AA80800000000000000000009C636300FFFF9900FFCC + 9900000000009F9F9F00000000009C6363000000000087878700A7A7A700D7D7 + D7000000000000000000000000000000000056565600F7EA9D00F6E79C00F4E3 + 9A00BA7C7C00F1D9970012126D0012128700EAC99900E8C59000E7BF8E00BA7C + 7C00E4B68A00E3B38A00565656007D7D7D000000000000000000000000000000 + 000000000000CE9C9C00FFCC9900FFCC9900FFCC9900FFCC9900FFFF9900FFFF + CC009C6363000000000000000000000000000000000000000000D5AAAA00FFFF + FF00FFFFFF00FFFFFF00ADBBF1004E6CE2004564E1004564E1005974DF00E3E8 + F900FEFEFE00FFFFFF00AA80800000000000000000009C636300FFFF9900FFCC + 9900000000009F9F9F00000000009C6363009C6363000000000087878700A7A7 + A700D7D7D70000000000000000000000000056565600F7EA9D00F6E79C00F4E3 + 9A00BA7C7C0012126D0012126D001212C90015148B00E8C59000E7BF8E00BA7C + 7C00E4B68A00E3B38A00565656007D7D7D000000000000000000000000000000 + 0000CE9C9C00FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFFF + 9900FFFFCC009C63630000000000000000000000000000000000D5AAAA00FFFF + FF00FEFEFE00E5E9FB005773E4004564E1004564E1004564E1004766E10098A9 + EC00FDFEFE00FEFEFE00AA80800000000000000000009C636300FFFF9900FFCC + 9900000000009F9F9F00000000009C636300FFFFCC009C636300000000008787 + 8700A7A7A700D7D7D700000000000000000056565600F7EA9D00F6E79C001212 + 6D0012126D0012126D001212C9002E12A6003636C1001C1D9800E7BF8E00BA7C + 7C00E4B68A00E3B38A00565656007D7D7D000000000000000000000000000000 + 00000000000000000000CE9C9C00FFCC9900FFCC9900FFCC9900FFFF99000000 + 0000000000000000000000000000000000000000000000000000D5AAAA00FFFF + FF00FEFEFF00ACB9F1008297EB005975E4004564E1004564E1008196EA008095 + EA00FBFBFD00FFFFFF00AA80800000000000000000009C636300FFFF9900FFCC + 9900000000009F9F9F00000000009C636300FFFFCC00FFCC99009C6363000000 + 000087878700A7A7A700D7D7D7000000000056565600F7EA9D00F6E69C00F4E3 + 9A001212C9001212C9002E12A600BA7C7C007272DE003D3DCA002828A800BA7C + 7C00E3B68B00E3B38A00565656007D7D7D000000000000000000000000000000 + 00000000000000000000CE9C9C00FFCC9900FFCC9900FFCC9900FFFF99009C63 + 6300000000000000000000000000000000000000000000000000D5AAAA00FFFF + FF00FEFEFE00FEFEFE00FEFEFF008297EB004564E1004564E100FDFDFE00FCFD + FE00FEFEFE00FEFEFE00AA80800000000000000000009C636300FFFF9900FFCC + 9900000000009F9F9F00000000009C636300FFFFCC00FFCC9900FFCC99009C63 + 6300000000008F8F8F00BFBFBF000000000056565600F7EA9D00F6E79C00F4E3 + 9A00BA7C7C002E12A600EED39500BA7C7C00EAC99A008888DD004343D4003132 + B800E3B68A00E3B38A00565656007D7D7D000000000000000000000000000000 + 00000000000000000000CE9C9C00FFCC9900FFCC9900FFCC9900FFFF99009C63 + 6300000000000000000000000000000000000000000000000000D5B1AA00FFFF + FF00FFFFFF00FFFFFF00FEFEFF008297EB004564E1004564E100FDFDFF00FDFD + FD00FFFFFF00FFFFFF00AA80800000000000000000009C636300FFFF9900FFCC + 9900000000009F9F9F00000000009C636300FFFFCC00FFCC9900FFCC9900FFFF + 99009C63630000000000D7D7D7000000000056565600F7EA9D00F6E79C00F4E3 + 9A00BA7C7C00F0D99700EED39500BA7C7C00EBC99900E9C59000A8A8DB004B4B + DF003B3CC900E3B38A00565656007D7D7D000000000000000000000000000000 + 00000000000000000000CE9C9C00FFCC9900FFCC9900FFCC9900FFFF99009C63 + 6300000000000000000000000000000000000000000000000000D5BFAA00FFFF + FF00FFFFFF00FFFFFF00FEFEFF008297EB004564E1004564E100FDFDFF00FEFD + FD00FFFFFF00FFFFFF00AA80800000000000000000009C636300FFFF9900FFCC + 9900000000009F9F9F00000000009C636300FFFFCC00FFCC9900FFFF9900FFCC + 990000000000D7D7D700000000000000000056565600F7EA9D00F6E79C00F4E3 + 9A00BA7C7C00F0D99700EED39500BA7C7C00EBC99900E9C59000E7BF8E00BA7C + 7C005151EB00E3B38A00565656007D7D7D000000000000000000000000000000 + 00000000000000000000CE9C9C00FFCC9900FFCC9900FFCC9900FFFF99009C63 + 6300000000000000000000000000000000000000000000000000D5BFBF00FFFF + FF00FFFFFF00FFFFFF00FEFEFF009BABEA006A81E0007D91E400FDFEFF00FEFE + FF00FFFFFF00FFFFFF008E80800000000000000000009C636300FFFF9900FFCC + 9900000000009F9F9F00000000009C636300FFFFCC00FFFF9900FFCC99000000 + 0000D7D7D7000000000000000000000000005656560056565600565656005656 + 5600565656005656560056565600565656005656560056565600565656005656 + 56005656560056565600565656007D7D7D000000000000000000000000000000 + 00000000000000000000CE9C9C00FFCC9900FFCC9900FFCC9900FFFF99009C63 + 6300000000000000000000000000000000000000000000000000D5BFBF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FEFEFF00FEFEFE00FEFEFF00F1E2E200D5AA + AA00D5AAAA00D5AAAA00AA80800000000000000000009C636300FFFF9900FFCC + 9900000000009F9F9F00000000009C636300FFFFCC00FFCC990000000000D7D7 + D70000000000000000000000000000000000565656007ED0EE0079CCEE0072C9 + EE002323230064C1EE005DBCEE002323230054B6F0004BB0EE0044ABEE002323 + 23003BA5EE0038A2EE00565656007D7D7D000000000000000000000000000000 + 00000000000000000000CE9C9C00FFCC9900FFCC9900FFCC9900FFFF99009C63 + 6300000000000000000000000000000000000000000000000000D5BFBF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00EAD4D400CAAC + 8800C0AA6000C09C58009C80800000000000000000009C636300FFFF9900FFCC + 9900000000009F9F9F00000000009C636300FFCC990000000000D7D7D7000000 + 000000000000000000000000000000000000565656007ED0EE0079CCEE0072C9 + EE002323230064C1EE005DBCEE002323230054B6F0004BB0EE0044ABEE002323 + 23003BA5EE0038A2EE00565656007D7D7D000000000000000000000000000000 + 00000000000000000000CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C009C63 + 6300000000000000000000000000000000000000000000000000D5BFBF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00EAD4D400E0B1 + 9900C0B16600A3877C000000000000000000000000009C636300FFFF9900FFCC + 990000000000B7B7B700000000009C63630000000000D7D7D700000000000000 + 000000000000000000000000000000000000565656007ED0EE0079CEEE0072C9 + EE002323230064BFEE005DBCEE002323230054B6F0004BB0EE0044ADEE002323 + 23003BA4EE0038A2EE00565656007D7D7D000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000D3B9AE00FAED + E100FAEDE100FAEDE100FAEDE100FAEDE100F4ECE400EAEAEA00DCBFBF00D5A0 + 90009C808000000000000000000000000000000000009C6363009C6363009C63 + 63009C63630000000000000000009C6363000000000000000000000000000000 + 0000000000000000000000000000000000005656560056565600565656005656 + 5600565656005656560056565600565656005656560056565600565656005656 + 5600565656005656560056565600000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000009A8F8400A598 + 8C00A5988C00A5988C00A5988C00A5988C00A0978F0095959500958787009580 + 8000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000212121004A4A4A004A4A4A004A4A4A000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001818180063636300636363006363 + 63003131310031313100313131004A4A4A004A4A4A004A4A4A006B6B6B006B6B + 6B004A4A4A000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000062626200626262006262 + 6200000000000000000000000000929292009292920092929200929292000000 + 000000000000000000000000000000000000000000000000000006638A000663 + 8A0006638A0006638A0006638A0006638A0006638A0006638A0006638A000663 + 8A0006638A0006638A00000000000000000052525200ADADAD009C9C9C008C8C + 8C00848484007373730063636300636363006363630073737300848484006B6B + 6B0094949400949494004A4A4A00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000009E9E9E0092929200868686006262 + 6200626262006262620062626200626262006262620062626200000000009292 + 920092929200929292000000000000000000000000000000000006638A00D1F6 + FF004ABEEB0044B9E9003CB4E70034B0E6002DABE40026A7E3001FA2E1001A9F + E1002E90B90006638A00000000000000000000000000AD9C7B009C8C0000A594 + 5200AD9C5A00ADADAD00B5B5B500A5A5A500B5B5B500D6D6D6009C8429005242 + 21009494940094949400949494004A4A4A000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000440700001B1B0000AAAA + AA00B6B6B600B6B6B600AAAAAA009292920086868600CECECE001B0000009292 + 9200929292009292920092929200929292000000000006638A00D1F6FF0055C5 + EE004FC1EB0048BCEB0040B7E80039B2E70031AEE5002AA9E40023A5E2001DA1 + E1002E90B9000000000006638A0000000000000000005A5A5A00DEB52900FFCE + 7300D6BD4200D6A52900A5940000A5945200B5A56300CE9C4A00C6942100BD9C + 6B004A4A4A004A4A4A004A4A4A004A4A4A000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000009C6363000000 + 00000000000000000000000000000000000000000000B6B6B600CB300000CB30 + 00001B1B00001B1B00001B1B0000AAAAAA00CECECE001B000000440700000000 + 0000000000000000000000000000000000000000000006638A00D1F6FF005AC8 + EE0053C4EC004CBFEB0045BBEA003EB6E80036B0E7002FACE50028A7E30021A3 + E20006638A000000000006638A00000000000000000000000000A59C7B00FFDE + 7B00FFC66300FFC66300FFD68400FFCE7300D6BD4200FFD69400FFDEAD00FFD6 + 8C00393121000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000FFCC99009C63 + 63000000000000000000000000000000000000000000000000001B000000CB72 + 1400CB721400CB721400CB721400CB3000001B1B0000CB590000CB721400CB72 + 14000000000000000000000000000000000006638A00D1F6FF0066CFF1005FCB + EF0057C7EE0051C2EC004ABDEA0042B9E9003BB4E70034B0E6002CAAE5002E90 + B900000000002E90B9002E90B9000000000000000000000000005A5A5A00CEB5 + 5A00FFCE7300FFEFC600FFD69400FFCE7B00FFC66B00FFD69400FFEFCE00FFD6 + 8400BD9C6B00000000000000000000000000000000009C636300CE9C9C00CE9C + 9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00FFCC9900FFCC + 99009C6363000000000000000000000000000000000000000000B6B6B600CB72 + 1400CB721400CB721400CB721400CB721400CB721400CBAB7200CB721400CB72 + 14000000000000000000000000000000000006638A00D1F6FF006BD3F20063CE + F0005CCAEE0055C5ED004FC1EB0047BCEA0040B7E80038B2E60031AEE5002E90 + B900000000002E90B9002E90B90000000000000000000000000000000000A59C + 7B00FFE78400FFD68C00FFF7D600FFF7D600FFF7D600FFF7D600FFF7EF00FFD6 + 8400FFCE7300393121000000000000000000000000009C636300FFFFCC00FFCC + 9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC + 9900FFCC99009C63630000000000000000000000000000000000000000001B00 + 0000CB721400CB721400CB721400CB721400CB721400CB721400CBAB7200CB72 + 1400CB72140000000000000000000000000006638A0006638A0006638A000663 + 8A0006638A0006638A0006638A0006638A0006638A0006638A0006638A000663 + 8A002E90B9005CC9EE002E90B900000000000000000000000000000000005A5A + 5A00CEAD5200FFE79C00FFF7CE00FFF7D600FFF7D600FFF7D600FFF7D600FFF7 + DE00FFC66B00BDAD73000000000000000000000000009C636300FFFFCC00FFCC + 9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC + 9900FFCC9900FFFF99009C63630000000000000000000000000000000000B6B6 + B600CBCB3900CB721400CB721400CB721400CB721400CB721400CBCBCB00CB72 + 1400CB7214000000000000000000000000000000000006638A00D1F6FF0091EC + FA008DE9F9008AE7F80086E4F80080E1F7007CDDF50076DAF30070D7F3006BD3 + F10065CFF1005FCBEF002E90B900000000000000000000000000000000000000 + 00005A5A5A00AD9C8400D6BD8C00E7C66B00FFF7CE00FFF7CE00FFEFCE00FFF7 + EF00FFE7AD00E7D694002929290000000000000000009C636300FFFFCC00FFCC + 9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC + 9900FFFF9900FFCC990000000000000000000000000000000000000000000000 + 0000B6B6B6001B000000CBCB7200CBCB7200CB721400CB721400CB8E3900CBAB + 7200CB721400CBCB720000000000000000000000000006638A00D1F6FF0093ED + FA0090EBF9008CE9F90088E6F80084E3F7007FE0F6007ADCF500D1F6FF00D1F6 + FF00D1F6FF00D1F6FF002E90B900000000000000000000000000000000000000 + 00000000000000000000292929005A5A5A00AD9C8400D6BD8C00E7C66B00FFF7 + D600E7D69400C6BDA5002929290000000000000000009C636300FFFFCC00FFFF + CC00FFFFCC00FFFFCC00FFFFCC00FFFFCC00FFFFCC00FFFFCC00FFCC9900FFFF + 9900FFCC99000000000000000000000000000000000000000000000000000000 + 00000000000000000000B6B6B600B6B6B6001B000000CBCB7200CBCB7200CBCB + CB00CBCB7200CECECE0000000000000000000000000006638A00D1F6FF0093ED + FA0092ECFA008FEBF9008BE8F80087E5F700D1F6FF0006638A0006638A000663 + 8A0006638A0006638A0006638A00000000000000000000000000000000000000 + 0000000000000000000000000000DEDEDE00737373006363630063636300B5AD + 9400E7D6BD00393939000000000000000000000000009C6363009C6363009C63 + 63009C6363009C6363009C6363009C6363009C6363009C636300FFFF9900FFCC + 9900000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000B6B6B600CECECE001B00 + 0000FFFFFF00000000000000000000000000000000000000000006638A00D1F6 + FF00D1F6FF00D1F6FF00D1F6FF00D1F6FF0006638A0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000073737300EFEFEF00F7F7F700F7F7F7007B7B + 7B007B7B7B00E7E7E70000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000009C636300FFCC99000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000663 + 8A0006638A0006638A0006638A0006638A000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000007B7B7B00BDBDBD00FFFF + FF00FFFFFF00FFFFFF0063636300000000000000000000000000000000000000 + 000000000000000000000000000000000000000000009C636300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00007B7B7B00BDBDBD00E7E7E700000000000000000000000000000000000000 + 000000000000000000000000000000000000000000009C636300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000CCFFFF003399CC00000000000000 + 0000000000000000000000000000000000000000000000000000663333000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000CCFFFF003399CC003399CC003399 + CC0000000000000000000000000000000000000000000000000066333300CCFF + FF00257AA500257AA500257AA500257AA500257AA500257AA500257AA500257A + A500000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000002A2A2A0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000663333000000000000000000CCFFFF003399CC003399CC003399 + CC003399CC003399CC000000000000000000000000000000000066333300CCFF + FF0057A3C90057A3C90057A3C90057A3C90057A3C90057A3C90057A3C900257A + A500000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00002A2A2A002A2A2A004D4D4D000000000000000000116D9400116D9400116D + 9400116D9400116D9400116D9400116D9400116D9400116D9400116D9400116D + 9400116D9400116D940008080800000000000000000000000000000000000000 + 000000000000663333007574740000000000CCFFFF003399CC003399CC003399 + CC003399CC003399CC003399CC0000000000000000000000000066333300CCFF + FF0057A3C90057A3C900141479001414930057A3C90057A3C90057A3C900257A + A500000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000002A2A + 2A002A2A2A004D4D4D00000000000000000000000000D1F6FF0063CEF0005DC9 + EE0056C5ED0050C1EC0049BEEA0043B9E9003CB4E80034B0E6002EACE50028A8 + E40021A4E2002E90B90008080800000000000000000000000000000000000000 + 000000000000663333007475750000000000CCFFFF003399CC003399CC003399 + CC003399CC003399CC003399CC0000000000000000000000000066333300CCFF + FF0057A3C90014147900141479001414D1001817970057A3C90057A3C900257A + A50000000000000000000000000000000000000000000000000000000000A3A3 + A300646464001010100010101000646464000000000010A9FF002A2A2A002A2A + 2A004D4D4D0000000000000000000000000000000000D1F6FF0068D1F10061CC + EF005BC9EE0054C4ED004EC0EB0048BBEA0041B7E9003AB3E70032AEE5002CAA + E50025A6E3002E90B90008080800000000000000000000000000000000000000 + 000000000000663333007474750000000000CCFFFF003399CC00000000000000 + 00003399CC003399CC003399CC00000000000000000000000000663333001414 + 790014147900141479001414D1003414B1003D3DCA002021A40057A3C900257A + A500000000000000000000000000000000000000000000000000646464000000 + 000030303000D2AF9A00D2AF9A0030303000000000000000000010A9FF004D4D + 4D000000000000000000000000000000000000000000D1F6FF006DD4F20066D0 + F1005FCCEF0059C7EE0052C3EC004CBFEB0045BBEA003EB6E80038B1E70030AD + E50029A9E3002E90B90008080800000000000000000000000000FFCC99000000 + 000000000000000000000000000000000000CCFFFF003399CC00C0C0C000C0C0 + C0003399CC003399CC003399CC0000000000000000000000000066333300CCFF + FF001414D1001414D1003414B10057A3C9007E7EE3004545D2002D2DB300257A + A5000000000000000000000000000000000000000000A3A3A30000000000D2AF + 9A00FEE3C400FFE3C700FED7B500FECFA800D2AF9A0000000000000000000000 + 00000000000000000000000000000000000000000000D1F6FF0071D8F3006BD3 + F10064CEF0005DCAEE0056C6ED0050C1EC004ABDEB0043BAE9003CB4E80035B0 + E6002EACE5002E90B900080808000000000066333300FFCC9900FFFFCC00FFFF + CC00FFFFCC00FFFFCC00FFFFCC0000000000CCFFFF003399CC003399CC003399 + CC003399CC003399CC003399CC0000000000000000000000000066333300CCFF + FF0057A3C9003414B10057A3C90057A3C90057A3C9009494E2004C4CDB003839 + C20000000000000000000000000000000000000000006464640030303000FFE8 + CD00FFEBD300FFEDD500FEE1C200FED7B500FECDA70030303000646464000000 + 00000000000000000000000000000000000000000000D1F6FF0077DBF3006FD6 + F30069D1F10062CDF0005BC9EF0054C5EC004EC1EC0048BCEA0041B8E9003AB3 + E80033AFE6002E90B900080808000000000066333300FFFFCC00FFFFCC00FFFF + CC00FFFFCC00FFFFCC00FFFFCC0000000000CCFFFF003399CC003399CC003399 + CC003399CC003399CC003399CC0000000000000000000000000066333300CCFF + FF0057A3C900747474002828280057A3C90057A3C90057A3C900B3B3E1005454 + E4004344D1000000000000000000000000000000000010101000E8C7B100FFEE + D900FFF2E300FFF6E600FFEDD700FEDDBF00FED3AE00D2AF9A00101010000000 + 00000000000000000000000000000000000000000000D1F6FF007BDEF50075D9 + F3006DD4F20067D0F0005FCBEF0059C7ED0052C3ED004CBFEB0045BBEA003EB7 + E90037B2E7002E90B90008080800000000000000000066333300FFFFCC000000 + 000066333300663333006633330000000000CCFFFF003399CC003399CC003399 + CC003399CC003399CC003399CC0000000000000000000000000066333300CCFF + FF0057A3C900E1E1E1007474740057A3C90057A3C90057A3C90057A3C900257A + A5005B5BEE000000000000000000000000000000000010101000E8C7B100FFF2 + E300FFF8EE00FFFAF000FFF6E800FFEDD700FED5B500D2AF9A00101010000000 + 00000000000000000000000000000000000000000000D1F6FF0080E0F60079DC + F50072D8F3006BD3F10064CFF0005DCBEE0057C6ED0051C2EC004ABEEA0043BA + E9003DB5E7002E90B90008080800000000000000000000000000663333000000 + 000000000000663333007474740000000000CCFFFF003399CC003399CC003399 + CC003399CC003399CC003399CC0000000000000000000000000066333300CCFF + FF0057A3C90057A3C90057A3C90057A3C90057A3C90057A3C90057A3C900257A + A50000000000000000000000000000000000000000006464640030303000FFEF + D900FFF4E300FFF6E800FFEDD700FEDDBF00FED3AE0030303000646464000000 + 00000000000000000000000000000000000000000000D1F6FF00A0E9FA00A0E9 + FA00A0E9FA00A0E9FA00A0E9FA00A0E9FA00A0E9FA00A0E9FA00A0E9FA00A0E9 + FA00A0E9FA002E90B90008080800000000000000000000000000000000006633 + 3300000000006633330074747500000000009C636300CCFFFF0066CCFF003399 + CC003399CC003399CC003399CC0000000000000000000000000066333300CCFF + FF0057A3C90057A3C90057A3C90057A3C90057A3C90057A3C90057A3C900257A + A5000000000000000000000000000000000000000000A3A3A30000000000D2AF + 9A00FFEBD300FFEDD700FEDFC200FED7B500D2AF9A0010101000A3A3A3000000 + 0000000000000000000000000000000000000000000041A8D30041A8D30041A8 + D30041A8D30041A8D30041A8D30006638A0006638A0006638A0006638A000663 + 8A0006638A0006638A0000000000000000000000000000000000000000000000 + 0000000000006633330074757400807F7F008A8B8B00000000009C636300CCFF + FF0066CCFF003399CC003399CC0000000000000000000000000066333300CCFF + FF00CCFFFF00CCFFFF00CCFFFF00CCFFFF00CCFFFF00CCFFFF00CCFFFF00CCFF + FF00000000000000000000000000000000000000000000000000646464000000 + 000030303000E8C7B100D2AF9A00303030001010100064646400000000000000 + 00000000000000000000000000000000000000000000D1F6FF00D1F6FF00D1F6 + FF00D1F6FF00D1F6FF0008080800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000006633330074757500807F7F008A8B8A00969596009F9FA0000000 + 00009C636300CCFFFF0066CCFF00000000000000000000000000663333006633 + 3300663333006633330066333300663333006633330066333300663333006633 + 330066333300000000000000000000000000000000000000000000000000A3A3 + A30064646400101010001010100064646400A3A3A30000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000006633330066333300663333006633330066333300663333006633 + 3300663333006633330066333300663333000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000062616200626162006261 + 6200626162006261620062616200626162006261620062616200626162006261 + 6200626162006261620062616200626162000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000006633330000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000A78B6900412C1300412C1300412C + 1300412C1300412C1300412C1300412C1300412C1300412C1300412C1300412C + 1300412C1300412C1300412C1300626162000000000062616200626162006261 + 6200626162006261620062616200626162006261620062616200626162006261 + 62006261620062616200626162006261620066333300E0FDFD00257AA500257A + A500257AA500257AA500257AA500257AA500257AA500257AA500257AA500257A + A500257AA500257AA500257AA500000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000A78B6900FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00412C130062616200A78B6900412C1300412C1300412C + 1300412C1300412C1300412C1300412C1300412C1300412C1300412C1300412C + 1300412C1300412C1300412C13006261620066333300E0FDFD00DC6363007432 + 320081CCF100DC6363007432320081CCF1004848D0001B1B860081CCF100DC63 + 63007432320081CCF100257AA5000000000006063F0006063F0006063F000606 + 3F0006063F00000000000000000000000000000000000000000000000000826E + 6400A1877B00A1877B00A1877B00A1877B00A78B6900FFFFFF00FFFFFF000000 + 0000FFFFFF0000000000FFFFFF0000000000FFFFFF0000000000FFFFFF000000 + 0000FFFFFF00FFFFFF00412C130062616200A78B6900DAEEE200D5ECDD00D5EC + DD00CFE9DA00C7E6D20000007F00B6DDC50000007F00A8D6BA009FD0B10097CC + AA0090C8A5008CC5A100412C13006261620066333300E0FDFD00DC6363007432 + 320081CCF100DC6363007432320081CCF1004848D0001B1B860081CCF100DC63 + 63007432320081CCF100257AA50000000000000091000000D8000000D8000000 + D80006063F00000000000000000000000000000000000000000000000000826E + 6400F6DCD000F6DCD000F6DCD000A1877B00A78B6900FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00412C130062616200A78B6900DAEEE200D5ECDD00D5EC + DD00CFE9DA0000007F0000007F0000007F0000007F0000007F009FD0B10097CC + AA0090C8A5008BC49F00412C13006261620066333300E0FDFD00DC6363007432 + 320081CCF100DC6363007432320081CCF1004848D0001B1B860081CCF100DC63 + 63007432320081CCF100257AA5000000000000009100000AEA00000AEA00000A + EA0006063F000000000000000000000000000A0A64000000000000000000826E + 6400EED2C500EED2C500EED2C400A1877B00A78B6900FFFFFF0000000000FFFF + FF0000000000FFFFFF0000000000FFFFFF0000000000FFFFFF0000000000FFFF + FF0000000000FFFFFF00412C130062616200A78B6900DAEEE200D5ECDD00D5EC + DD0000007F00C7E6D20000007F00B6DDC50000007F00A8D6BA0000007F0097CC + AA0090C8A5008CC5A100412C13006261620066333300E0FDFD00DC6363007432 + 320081CCF100DC6363007432320081CCF1004848D0001B1B860081CCF100DC63 + 63007432320081CCF100257AA5000000000000009100073AF000073FF000073F + F00006063F002121CD000A0A64000A0A64000A0A64000A0A640000000000826E + 6400E2C4B600E2C4B500E2C4B600A1877B00A78B6900FFFFFF0000000000FFFF + FF0000000000FFFFFF0000000000FFFFFF0000000000FFFFFF0000000000FFFF + FF0000000000FFFFFF00412C130062616200A78B6900DAEEE200D5ECDD00D5EC + DD0000007F00C7E6D20000007F00B6DDC50000007F00A6D5B80000007F0097CC + AA0090C8A5008BC49F00412C13006261620066333300E0FDFD00DC6363007432 + 320081CCF100DC6363007432320081CCF1004848D0001B1B860081CCF100DC63 + 63007432320081CCF100257AA50000000000000091002868F400286CF400286C + F40006063F002121CD000C0C8D000C0C8D000C0C8D000C0C8D000C0C8D00826E + 6400D4B4A500D4B4A400D4B4A500A1877B00A78B6900FFFFFF0000000000FFFF + FF0000000000FFFFFF0000000000FFFFFF0000000000FFFFFF0000000000FFFF + FF0000000000FFFFFF00412C130062616200A78B6900DAEEE200D5ECDD00D5EC + DD00CFE9DA00C7E6D20000007F00B6DDC50000007F0000007F009FD0B10099CE + AD0091C9A6008CC5A100412C13006261620066333300E0FDFD00DC6363007432 + 320081CCF100DC6363007432320081CCF1004848D0001B1B860081CCF100DC63 + 63007432320081CCF100257AA50000000000000091005297F8005294F8005294 + F80006063F002121CD002121CD002121CD002121CD000C0C8D0000000000826E + 6400C8A69500C8A69600C8A69600A1877B00A78B6900FFFFFF0000000000FFFF + FF0000000000FFFFFF0000000000FFFFFF0000000000FFFFFF0000000000FFFF + FF0000000000FFFFFF00412C130062616200A78B6900DAEEE200D5ECDD00D5EC + DD00CFE9DA00C7E6D20000007F0000007F0000007F00A6D5B8009FD0B10097CC + AA0090C8A5008BC49F00412C13006261620066333300E0FDFD00DC6363007432 + 320081CCF100DC6363007432320081CCF10081CCF10081CCF10081CCF100DC63 + 63007432320081CCF100257AA500000000000000910078B4FB0074B4FA0074B4 + FA0006063F000000000000000000000000002121CD000000000000000000826E + 6400BB968400BB968400BB968500A1877B00A78B6900FFFFFF0000000000FFFF + FF0000000000FFFFFF0000000000FFFFFF0000000000FFFFFF0000000000FFFF + FF0000000000FFFFFF00412C130062616200A78B6900DAEEE200D5ECDD00D5EC + DD00CFE9DA0000007F0000007F00B6DDC50000007F00A6D5B8009FD0B10097CC + AA0090C8A5008BC49F00412C13006261620066333300E0FDFD00DC6363007432 + 320081CCF100DC6363007432320081CCF10081CCF10081CCF10081CCF100DC63 + 63007432320081CCF100257AA5000000000000009100A8D5FE00A8D5FE00A8D5 + FE0006063F00000000000000000000000000000000000000000000000000826E + 6400AF887500AE887600AF887500A1877B00A78B6900FFFFFF0000000000FFFF + FF0000000000FFFFFF0000000000FFFFFF0000000000FFFFFF0000000000FFFF + FF0000000000FFFFFF00412C130062616200A78B6900DAEEE200D5ECDD00D5EC + DD0000007F00C7E6D20000007F00B6DDC50000007F00A6D5B8009FD0B10097CC + AA0090C8A5008BC49F00412C13006261620066333300E0FDFD0081CCF10081CC + F10081CCF100DC6363007432320081CCF10081CCF10081CCF10081CCF100DC63 + 63007432320081CCF100257AA500000000000000910000009100000091000000 + 910006063F00000000000000000000000000000000000000000000000000826E + 6400826E6400826E6400826E6400826E6400A78B6900FFFFFF0000000000FFFF + FF0000000000FFFFFF0000000000FFFFFF0000000000FFFFFF0000000000FFFF + FF0000000000FFFFFF00412C130062616200A78B6900DAEEE200D5ECDD00D5EC + DD0000007F00C7E6D20000007F00B6DDC50000007F00A6D5B80000007F0097CC + AA0090C8A5008BC49F00412C13006261620066333300E0FDFD0081CCF10081CC + F10081CCF100DC6363007432320081CCF10081CCF10081CCF10081CCF10081CC + F10081CCF10081CCF100257AA500000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000A78B6900FFFFFF0000000000FFFF + FF0000000000FFFFFF0000000000FFFFFF0000000000FFFFFF0000000000FFFF + FF0000000000FFFFFF00412C130062616200A78B6900DAEEE200D5ECDD00D5EC + DD00CFE9DA0000007F0000007F0000007F0000007F0000007F009FD0B10097CC + AA0090C8A5008BC49F00412C13006261620066333300E0FDFD0081CCF10081CC + F10081CCF100DC6363007432320081CCF10081CCF10081CCF10081CCF10081CC + F10081CCF10081CCF100257AA500000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000A78B6900FFFFFF0000000000FFFF + FF0000000000FFFFFF0000000000FFFFFF0000000000FFFFFF0000000000FFFF + FF0000000000FFFFFF00412C130062616200A78B6900DAEEE200D5ECDD00D5EC + DD00CFE9DA00C7E6D20000007F00B6DDC50000007F00A6D5B8009FD0B10097CC + AA0090C8A5008BC49F00412C13006261620066333300E0FDFD0081CCF10081CC + F10081CCF10081CCF10081CCF10081CCF10081CCF10081CCF10081CCF10081CC + F10081CCF10081CCF100257AA500000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000A78B6900FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00412C130062616200A78B6900A78B6900A78B6900A78B + 6900A78B6900A78B6900A78B6900A78B6900A78B6900A78B6900A78B6900A78B + 6900A78B6900A78B6900A78B69000000000066333300E0FDFD00E0FDFD00E0FD + FD00E0FDFD00E0FDFD00E0FDFD00E0FDFD00E0FDFD00E0FDFD00E0FDFD00E0FD + FD00E0FDFD00E0FDFD00E0FDFD00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000A78B6900A78B6900A78B6900A78B + 6900A78B6900A78B6900A78B6900A78B6900A78B6900A78B6900A78B6900A78B + 6900A78B6900A78B6900A78B6900000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000006633330066333300663333006633 + 3300663333006633330066333300663333006633330066333300663333006633 + 3300663333006633330066333300663333000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004616 + 0A0046160A0046160A0046160A0046160A0046160A0046160A0046160A004616 + 0A0046160A00000000000000000000000000000000009C9C9C009C9C9C009C9C + 9C009C9C9C009C9C9C009C9C9C009C9C9C009C9C9C009C9C9C009C9C9C009C9C + 9C009C9C9C009C9C9C009C9C9C00000000000000000000000000000000000000 + 0000000000000000000000000000000000001D1D1D001D1D1D001D1D1D006262 + 6200000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000B670 + 6000EDEDCC00F1956C00F1956900F1936800F1916600F1916600F0906500EE8D + 610046160A000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000009C9C9C00000000000000000000000000000000000000 + 000000000000000000001D1D1D001D1D1D0062626200B0B0B000626262006262 + 620062626200626262000000000000000000000000000000000000000000B7B7 + B7009F9F9F009F9F9F00B7B7B700000000000000000000000000000000000000 + 0000D7D7D700C7C7C7000000000000000000000000000000000000000000B670 + 6000EDEDCC00F2997100F2976E00F1936800F1946A00F1946A00F1936800F090 + 650046160A000000000000000000000000005F5F5F00ECECEC00E4E3E400DBDB + DB00D1D2D100C8C7C800BDBDBD00B2B2B200A7A8A8009D9D9D00939393008989 + 8900807F8000000000009C9C9C00000000000000000000000000000000000000 + 0000000000001D1D1D0062626200626262001D1D1D001D1D1D00969696001D1D + 1D007575750075757500757575007575750000000000000000009C6363000000 + 000000000000000000009F9F9F0000000000000000000000000000000000D7D7 + D70000000000A7A7A7000000000000000000000000000000000000000000B670 + 6000EDEDCC00EDEDCC00EDEDCC00EDEDCC00EDEDCC00EDEDCC00EDEDCC00EDED + CC0046160A000000000000000000000000005F5F5F00ECECEC00E4E4E400DBDB + DB00D1D2D100C7C8C700BDBDBD00B2B2B200A8A8A8009D9D9E00939393008989 + 8900807F7F00000000009C9C9C000000000000000000000000001D1D1D001D1D + 1D0062626200626262001D1D1D00FFDDCB00FFDDCB00FFDDCB001D1D1D007575 + 75007575750075757500757575000000000000000000000000009C636300FFFF + 9900FFCC9900000000009F9F9F00000000000000000000000000D7D7D7000000 + 0000000000009F9F9F000000000000000000000000000000000000000000B670 + 6000B6706000B6706000B6706000B6706000B6706000B6706000B6706000B670 + 6000B67060000000000000000000000000005F5F5F00ECECEC00E4E3E400DBDB + DB0000009E00C7C7C700BDBDBD00B2B2B200A7A8A7009D9E9D00939393008989 + 8900807F8000000000009C9C9C0000000000000000001D1D1D00626262000000 + 00001D1D1D00007BBD000000000000000000FFB58400FFCCAD001D1D1D009696 + 96001D1D1D0000000000000000000000000000000000000000009C636300FFFF + 9900FFCC9900000000009F9F9F000000000000000000D7D7D70000000000CE9C + 9C00000000009F9F9F0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000005F5F5F00ECECEC00E4E4E4000000 + A60000009E000000950000008D000000840000007C000000750000006E008989 + 8900807F7F00000000009C9C9C000000000000000000868686001D1D1D0000AD + FF00007BBD000094DE000094DE00007BBD0000000000FFB58400FF9500001D1D + 1D007575750000000000000000000000000000000000000000009C636300FFFF + 9900FFCC9900000000009F9F9F00D7D7D700D7D7D70000000000CE9C9C00FFCC + 9900000000009F9F9F0000000000000000000000000000000000000000000000 + 0000000000000000960000000000000000000000000000000000000096000000 + 0000000000000000000000000000000000005F5F5F00ECECEC00E4E4E400DBDB + DB0000009D00C7C7C700BDBDBD00B2B2B200A7A8A8009D9D9D00939393000000 + 690080808000000000009C9C9C000000000000000000D6D6D600000000000000 + 000000ADFF00000000008CD6FF0000395A0000000000FFDDCB00FFDDCB001D1D + 1D00969696001D1D1D00000000000000000000000000000000009C636300FFFF + 9900FFCC99000000000097979700B7B7B70000000000CE9C9C00FFCC9900FFCC + 9900000000009F9F9F0000000000000000000000000000000000000000000000 + 0000000096000000960000009600000000000000000000000000000096000000 + 0000000000000000000000000000000000005F5F5F00ECECEC00E4E4E400DBDB + DB00D1D2D100C7C7C700BDBDBD00B2B2B200A7A8A7009D9D9D00939393000000 + 69007F807F00000000009C9C9C000000000000000000007BBD0000000000B5E7 + FF00007BBD00FFB58400000000000094DE000094DE00FFB58400FFB58400FFDD + CB001D1D1D0075757500000000000000000000000000000000009C636300FFFF + 9900FFCC9900000000008F8F8F0000000000CE9C9C00FFCC9900FFCC9900FFCC + 9900000000009F9F9F0000000000000000000000000000000000000000000000 + 0000000000000000960000000000000000000000000000009600000096000000 + 9600000000000000000000000000000000005F5F5F00ECECEC00E4E4E400DBDB + DB00D1D2D100C7C8C700BDBDBD00B2B2B200A8A8A7009D9D9D00939393008989 + 89007F7F8000000000009C9C9C00000000000000000000ADFF00106394000000 + 00004ABDFF000094DE0000ADFF0000ADFF00FFB58400FFDDCB00FFCCAD00FF95 + 00001D1D1D00969696001D1D1D000000000000000000000000009C636300FFFF + 9900FFCC9900000000009C636300FFFFCC00FFFF9900FFCC9900FFCC9900FFCC + 9900000000009F9F9F0000000000000000000000000000000000000000000000 + 0000000000000000960000000000000000000000000000000000000096000000 + 0000000000000000000000000000000000005F5F5F00ECECEC000000AE00DBDB + DB00D1D2D100C7C8C700BDBDBD00B2B2B200A8A8A7009D9D9D00939393008989 + 89007F7F8000000000009C9C9C000000000000ADFF0000ADFF00000000000000 + 000000000000B5E7FF00184A6300B5E7FF0000000000FF950000FFCCAD00FFDD + CB001D1D1D0096969600363636000000000000000000000000009C636300FFFF + 9900FFCC9900000000009F9F9F009C636300FFFFCC00FFFF9900FFCC9900FFCC + 9900000000009F9F9F0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000005F5F5F00ECECEC000000AE00DBDB + DB00D1D1D100C7C8C800BDBDBD00B2B2B200A8A8A80000007500939393008989 + 8900807F7F00000000009C9C9C00000000000000000000000000007BBD000000 + 00001884BD000000000000000000FF950000FFCCAD00FFDDCB001D1D1D009696 + 9600BBBBBB001D1D1D001D1D1D000000000000000000000000009C636300FFFF + 9900FFCC9900000000009F9F9F00000000009C636300FFFFCC00FFFF9900FFCC + 9900000000009F9F9F0000000000000000000000000000000000000000004616 + 0A0046160A0046160A0046160A0046160A0046160A0046160A0046160A004616 + 0A0046160A000000000000000000000000005F5F5F00ECECEC00E4E4E4000000 + A60000009E000000950000008D000000840000007C000000750000006E008989 + 890080808000000000009C9C9C00000000000000000000ADFF004ABDFF004ABD + FF00B5E7FF00107BB500FFCCAD00FFDDCB001D1D1D0096969600BBBBBB001D1D + 1D001D1D1D0000000000000000000000000000000000000000009C636300FFFF + 9900FFCC9900000000009F9F9F0000000000000000009C636300FFFFCC00FFFF + 9900000000009F9F9F000000000000000000000000000000000000000000B670 + 6000EDEDCC00F1956C00F1956900F1936800F1916600F1916600F0906500EE8D + 610046160A000000000000000000000000005F5F5F00ECECEC00E4E4E400DBDB + DB00D1D1D200C7C8C700BDBDBD00B2B2B200A8A8A70000007500939393008989 + 890080808000000000009C9C9C0000000000000000000000000000000000B5E7 + FF001D1D1D00000000001D1D1D00A4A4A400C5C5C5001D1D1D001D1D1D000000 + 00000000000000000000000000000000000000000000000000009C636300FFFF + 9900FFCC9900000000009F9F9F000000000000000000000000009C636300FFFF + CC0000000000A7A7A7000000000000000000000000000000000000000000B670 + 6000EDEDCC00F2997100F2976E00F1936800F1946A00F1946A00F1936800F090 + 650046160A000000000000000000000000005F5F5F00ECECEC00E4E4E400DBDB + DB00D1D1D100C7C7C700BDBDBD00B2B2B200A8A8A8009D9D9D00939393008989 + 8900807F8000000000009C9C9C00000000000000000000000000000000000000 + 000000000000E3E3E300D6D6D6001D1D1D001D1D1D0000000000000000000000 + 00000000000000000000000000000000000000000000000000009C636300FFFF + 9900FFCC990000000000B7B7B700000000000000000000000000000000009C63 + 630000000000C7C7C7000000000000000000000000000000000000000000B670 + 6000EDEDCC00EDEDCC00EDEDCC00EDEDCC00EDEDCC00EDEDCC00EDEDCC00EDED + CC0046160A000000000000000000000000005F5F5F00ECECEC00E4E4E300DBDB + DB00D1D1D100C8C7C700BDBDBD00B2B2B200A8A7A8009D9D9D00939393008989 + 890080807F00000000009C9C9C00000000000000000000000000000000000000 + 0000000000001D1D1D001D1D1D00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000B670 + 6000B6706000B6706000B6706000B6706000B6706000B6706000B6706000B670 + 6000B67060000000000000000000000000005F5F5F005F5F5F005F5F5F005F5F + 5F005F5F5F005F5F5F005F5F5F005F5F5F005F5F5F005F5F5F005F5F5F005F5F + 5F005F5F5F000000000000000000000000000000000000000000C78E8E00D5AA + AA00D5AAAA00D5AAAA00D5AAAA00D5AAAA00D5AAAA00D5AAAA00D5AAAA00D5AA + AA00D5AAAA00D5AAAA00AA808000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000D5AAAA00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FEFEFF00FDFDFE00FDFDFE00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00AA808000000000000000000000000000000000000000 + 0000000000000000000000000000D7D7D700C7C7C7000000000000000000B7B7 + B7009F9F9F009F9F9F00B7B7B700000000000000000000000000000000003399 + CC0066CCFF0066CCFF003399CC00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000D5AAAA00FFFF + FF00FFFFFF00FFFEFE00FDFEFF008498E7002D4ED6002D4ED600FDFDFF00FFFF + FF00FFFFFF00FFFFFF00AA808000000000000000000000000000000000000000 + 00000000000000000000D7D7D70000000000A7A7A700000000009C6363000000 + 000000000000000000009F9F9F00000000000000000000000000000000003399 + CC0066CCFF0066CCFF003399CC00000000009C6363009C6363009C6363009C63 + 63009C6363009C63630000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000D5AAAA00FFFF + FF00FFFFFF00FEFDFD00FEFEFF008297EB004564E1004564E100FDFDFF00FFFF + FF00FFFFFF00FFFFFF00AA808000000000000000000000000000000000000000 + 000000000000D7D7D70000000000000000009F9F9F00000000009C636300FFFF + 9900FFCC9900000000009F9F9F000000000000000000000000009C6363003399 + CC0066CCFF0066CCFF003399CC0000000000CE9C9C00CE9C9C00CE9C9C00CE9C + 9C00CE9C9C00CE9C9C009C636300000000000000000000000000000000000000 + 0000D3D3D300B9B9B90000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000D5AAAA00FFFF + FF00FEFEFE00FDFDFD00FEFEFF008297EB004564E1004564E100FDFDFF00FFFF + FF00FEFEFE00FFFFFF00AA808000000000000000000000000000000000000000 + 0000D7D7D70000000000CE9C9C00000000009F9F9F00000000009C636300FFFF + 9900FFCC9900000000009F9F9F000000000000000000000000009C6363003399 + CC0066CCFF0066CCFF003399CC0000000000CE9C9C00CE9C9C00CE9C9C00CE9C + 9C0000FF0000CE9C9C009C63630000000000000000000000000000000000D3D3 + D3001B1B9600858585009F9F9F00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000D5AAAA00FFFF + FF00FEFEFE00FBFBFD00FCFCFE008196EA004564E1004564E100FDFDFF00FEFE + FF00FEFEFE00FEFEFF00AA80800000000000000000000000000000000000D7D7 + D70000000000CE9C9C00FFCC9900000000009F9F9F00000000009C636300FFFF + 9900FFCC9900000000009F9F9F000000000000000000000000009C6363003399 + CC00FFFFFF0066CCFF003399CC00000000009C6363009C6363009C6363009C63 + 63009C6363009C6363009C636300000000000000000000000000CACACA001B1B + 7D001B1B7D001F1E9A007C7C7C009F9F9F000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000D5AAAA00FFFF + FF00FCFCFE0095A7EC004564E1004564E1004564E1004564E1004564E100617B + E500FEFEFE00FEFEFE00AA808000000000000000000000000000D7D7D7000000 + 0000CE9C9C00FFCC9900FFCC9900000000009F9F9F00000000009C636300FFFF + 9900FFCC9900000000009F9F9F000000000000000000000000009C6363003399 + CC00FFFFFF00FFFFFF00C6C6C60000000000CE9C9C00CE9C9C00CE9C9C00CE9C + 9C00CE9C9C00CE9C9C009C6363000000000000000000C2C2C2001B1B7D001B1B + 7D001B1BD2001B1BD2002728A600858585009F9F9F0000000000000000000000 + 0000000000000000000000000000000000000000000000000000D5AAAA00FFFF + FF00FDFEFE00E5EAF9004F6CE2004564E1004564E1004564E1005773E300C6CF + F500FEFEFE00FEFEFE00AA8080000000000000000000EFEFEF0000000000CE9C + 9C00FFCC9900FFCC9900FFCC9900000000009F9F9F00000000009C636300FFFF + 9900FFCC9900000000009F9F9F000000000000000000000000009C636300FFFF + FF003399CC003399CC0000000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF009C636300000000001B1B7D001B1B7D001B1B7D001B1B + D2003A1BB3004343CB001B1BD2003333B500858585009F9F9F00000000000000 + 0000000000000000000000000000000000000000000000000000D5B1AA00FFFF + FF00FFFFFF00FFFFFF00B9C4F0004C69DF004564E1004564E100B0BDF100FBFC + FE00FFFFFF00FFFFFF00AA80800000000000000000009C636300FFFFCC00FFFF + 9900FFCC9900FFCC9900FFCC9900000000009F9F9F00000000009C636300FFFF + 9900FFCC9900000000009F9F9F00000000000000000000000000000000009C63 + 630000000000FFFFFF0000000000CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C + 9C00CE9C9C00CE9C9C00FFFFFF0000000000000000001B1BD2001B1BD2003A1B + B300D3D3D300000000004A4AD3001B1BD2002728A600858585009F9F9F000000 + 0000000000000000000000000000000000000000000000000000D5BFAA00FFFF + FF00FFFFFF00FFFFFF00F9FAFD0097A8EB004564E100617AE200F2F4FD00FFFF + FF00FFFFFF00FFFFFF00AA8080000000000000000000000000009C636300FFFF + CC00FFFF9900FFCC9900FFCC9900000000009F9F9F00000000009C636300FFFF + 9900FFCC9900000000009F9F9F00000000000000000000000000000000000000 + 000000000000C6C6C600000000009C6363009C6363009C6363009C6363009C63 + 63009C6363009C6363009C6363000000000000000000000000003A1BB3000000 + 00000000000000000000000000005252DC001B1BD2003333B500858585009F9F + 9F00000000000000000000000000000000000000000000000000D5BFBF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FEFDFD008FA1EA00E3E7F900FFFFFF00FFFF + FF00FFFFFF00FFFFFF008E808000000000000000000000000000000000009C63 + 6300FFFFCC00FFFF9900FFCC9900000000009F9F9F00000000009C636300FFFF + 9900FFCC9900000000009F9F9F00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000005A5AD1001B1BD2003E3FC4008585 + 85009F9F9F000000000000000000000000000000000000000000D5BFBF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FDFDFD00FFFFFF00F1E2E200D5AA + AA00D5AAAA00D5AAAA00AA808000000000000000000000000000000000000000 + 00009C636300FFFFCC00FFFF9900000000009F9F9F00000000009C636300FFFF + 9900FFCC9900000000009F9F9F00000000000000000000000000000000000000 + 0000848484008484840084848400000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000006666F1001B1BD2004949 + D200858585009F9F9F0000000000000000000000000000000000D5BFBF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00EAD4D400CAAC + 8800C0AA6000C09C58009C808000000000000000000000000000000000000000 + 0000000000009C636300FFFFCC0000000000A7A7A700000000009C636300FFFF + 9900FFCC9900000000009F9F9F000000000084848400C6C6C600000000000000 + 0000C6C6C600C6C6C600C6C6C600848484000000000000000000FFFFFF000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000007D7DE0001B1B + D2005555E10085858500A8A8A800000000000000000000000000D5BFBF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00EAD4D400E0B1 + 9900C0B16600A3877C0000000000000000000000000000000000000000000000 + 000000000000000000009C63630000000000C7C7C700000000009C636300FFFF + 9900FFCC990000000000B7B7B7000000000084848400FFFFFF0084848400C6C6 + C600FFFFFF00C6C6C600C6C6C600C6C6C60084848400FFFFFF00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000009B9B + D6001B1BD2006060EF00B0B0B000000000000000000000000000D3B9AE00FAED + E100FAEDE100FAEDE100FAEDE100FAEDE100F4ECE400EAEAEA00DCBFBF00D5A0 + 90009C8080000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000009C6363009C63 + 63009C6363009C636300000000000000000084848400FFFFFF00848484008484 + 8400FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B7B7D7001B1BD200000000000000000000000000000000009A8F8400A598 + 8C00A5988C00A5988C00A5988C00A5988C00A0978F0095959500958787009580 + 8000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000008484840084848400000000000000 + 0000848484008484840084848400848484000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000C1BD + CB007C797900909194008A8D8F006B6C6C0045434B00474459009395A9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000FFF9 + D100FFF1C200FFECC100FFF0CE00FFF8DE00FFF2D200FBEBCA00B8B69400756F + 6100544A5400B1ADB10000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000FFFE + E300FFEDC500FFD5A000FFD7A200DEF5C900E8F2CE00FFFFFF00FFFFFF00FFFF + FF00FFFFFF006C655C00827C8200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C009C63 + 6300000000000000000000000000000000000000000000000000F9DDA400F9E9 + B700FFFFE900FFEAC900FFD8AB00CAE6B1000084000014B11300089D060039AB + 3200FFFFFF00FFFFFF006C666E00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000CE9C9C00FFCC9900FFCC9900FFCC9900FFFF99009C63 + 6300000000000000000000000000000000000000000000000000F8C98600F7B7 + 6A00FCC98800FFE4B100FFF0C900C8F3C400007D00001BAB1D00B1ECAE006CC6 + 69002AAD1B00FFFFEA0084748400D2CEDA0000000000A3A3A3009A9A9A009A9A + 9A009A9A9A009A9A9A009A9A9A009A9A9A009A9A9A009A9A9A009A9A9A009A9A + 9A009A9A9A009A9A9A00A3A3A300000000000000000000000000000000000000 + 000000000000CE9C9C0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000CE9C9C00FFCC9900FFCC9900FFCC9900FFFF99009C63 + 63000000000000000000000000000000000000000000FCDFB000F8C58700F3BF + 7B00F3C18000F3C07D00F6D59C00B4EDB20008930000007D000037B03100FFFF + FF009BDC8B00D2E9AC00908D7F00BCB7C900A3A3A3006B6B6B004E4E4E004E4E + 4E004E4E4E004E4E4E004E4E4E004E4E4E004E4E4E004E4E4E004E4E4E004E4E + 4E004E4E4E004E4E4E006B6B6B00A3A3A3000000000000000000000000000000 + 0000CE9C9C00FFCC990000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000CE9C9C00FFCC9900FFCC9900FFCC9900FFFF99009C63 + 63000000000000000000000000000000000000000000FCD59A00FFCB9600FFC7 + 8900FFCA9000FFC98E00F3DAA4008AE89B00FFFFFF00FFFFFF0054BD510088CB + 8200FFFFEE00FFFCE800C3C0A400AFAFC4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000004E4E4E009A9A9A00000000000000000000000000CE9C + 9C00FFCC9900FFCC9900CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C + 9C00CE9C9C00CE9C9C0000000000000000000000000000000000000000000000 + 00000000000000000000CE9C9C00FFCC9900FFCC9900FFCC9900FFFF99009C63 + 63000000000000000000000000000000000000000000FECE8F00FFD3AA00FFCE + 9A00FFCF9F00FFCE9A00FFD5A50075D173004BC25800FFFFFF00B3EFB3000AA7 + 0A007CD17200FFF2E300DFD4B0006A6676009C636300CE9C9C00CE9C9C00CE9C + 9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C + 9C00CE9C9C00000000004E4E4E009A9A9A000000000000000000CE9C9C00FFCC + 9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC + 9900FFCC9900CE9C9C0000000000000000000000000000000000000000000000 + 00000000000000000000CE9C9C00FFCC9900FFCC9900FFCC9900FFFF99009C63 + 63000000000000000000000000000000000000000000FFD29300FFDEB800FFDC + AB00FFDEB700FFDEB500FFDDAF00F8E9C10000A5110000800000008D00000093 + 000041B73F00FFF9E500EEE5D200444157009C636300FFFFCC00FFCC9900FFCC + 9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC + 9900CE9C9C00000000004E4E4E009A9A9A009C636300FFFFCC00FFFF9900FFCC + 9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC + 9900FFCC9900CE9C9C0000000000000000000000000000000000000000000000 + 00000000000000000000CE9C9C00FFCC9900FFCC9900FFCC9900FFFF99009C63 + 63000000000000000000000000000000000000000000FFE1A700FFE5C600FFE2 + AB00FFE2AE00FFE4BC00FFE5C000FFE4BE00F5EBC6008ACE77004EBA520086CE + 74005EBE4E00F2E8AB00EFE7BA0058515C009C636300FFFFCC00FFCC9900FFCC + 9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC + 9900CE9C9C00000000004E4E4E009A9A9A00000000009C636300FFFFCC00FFFF + 9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC + 9900FFCC9900CE9C9C0000000000000000000000000000000000000000000000 + 00000000000000000000CE9C9C00FFCC9900FFCC9900FFCC9900FFFF99000000 + 00000000000000000000000000000000000000000000FFF8BD00FFFFF900FFFF + F300FFFBD400FFF9C900FFFACF00FFFFDC00FFFFF900FFFFEC00FFFFFA00FFFF + FF00FFFFFF00FFFFEC00F6F5C700696258009C636300FFFFCC00FFFFCC00FFFF + CC00FFFFCC00FFFFCC00FFFFCC00FFFFCC00FFFFCC00FFFFCC00FFFFCC00FFFF + CC00FFFFCC00000000006B6B6B00A3A3A30000000000000000009C636300FFFF + CC00FFFF9900FFCC9900FFFF9900FFFF9900FFFF9900FFFF9900FFFF9900FFFF + 9900FFFF9900CE9C9C0000000000000000000000000000000000000000000000 + 0000CE9C9C00FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFCC9900FFFF + 9900FFFFCC009C636300000000000000000000000000E4B07C00E9B98B00F8FA + D000FFFFE900FFFAD900FEE0B100E6AB7700E5B08300EAB28500EAAB7700F2B6 + 8100F6D9AA00FFFFF200FFFFFF00808D99009C6363009C6363009C6363009C63 + 63009C6363009C6363009C6363009C6363009C6363009C6363009C6363009C63 + 63009C63630000000000A3A3A300000000000000000000000000000000009C63 + 6300FFFFCC00FFFF9900000000009C6363009C6363009C6363009C6363009C63 + 63009C6363009C63630000000000000000000000000000000000000000000000 + 000000000000CE9C9C00FFCC9900FFCC9900FFCC9900FFCC9900FFFF9900FFFF + CC009C63630000000000000000000000000000000000DBA17800FFDAC200FAE9 + C800FFF6D000EAD0B000ECB18300D7722100DC782700E49B5F00ECB58A00F2BB + 8D00F4B37900F9AB6A00FCD19800828695000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00009C636300FFFFCC0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000CE9C9C00FFCC9900FFCC9900FFFF9900FFFFCC009C63 + 63000000000000000000000000000000000000000000A0967D00DADBBE00FFE8 + BD0092857F00EFEFEF000000000000000000EEC09700E5904800E9944B00EBBA + 8C00F0DCC600FFFFF800FFDB9B008F7C74000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000009C63630000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000CE9C9C00FFFF9900FFFFCC009C6363000000 + 00000000000000000000000000000000000000000000FFE1BD00FFE2C0000000 + 0000000000000000000000000000000000000000000000000000F1A46200C880 + 420076625F00C1B0B300E1B08800635551000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000FFFFCC009C636300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000009C63630000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001D1D1D001D1D1D001D1D1D001D1D + 1D001D1D1D001D1D1D001D1D1D001D1D1D001D1D1D001D1D1D001D1D1D001D1D + 1D001D1D1D001D1D1D001D1D1D001D1D1D000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000031313100313131003131 + 3100313131003131310031313100313131003131310000000000000000000000 + 0000000000000000000000000000000000000000000072727200727272007272 + 7200727272007272720072727200727272007272720072727200727272007272 + 7200727272007272720072727200727272001D1D1D00AC968700AC968700AC96 + 8700AC968700AC968700AC968700AC968700AC968700AC968700AC968700AC96 + 8700AC968700AC968700AC9687001D1D1D0000000000000000001A1A91000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000724B3900925A3F00925A + 3F00925A3F00925A3F00925A3F00925A3F003131310000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000727272001D1D1D007F6F6400F1D3C100F2D6 + C500F4DACA00F5DECE00F6E1D300F7E4D800F9E8DC00FBECE100FCF0E600FDF3 + EB00FEF6EF00FFF8F100AC9687001D1D1D0000000000000000001A1ABD001A1A + 9100000000000000000000000000000000000000000000000000000000000000 + 000000000000000000001A1A91000000000000000000724B3900925A3F003131 + 3100925A3F0031313100925A3F00313131003131310000000000000000000000 + 0000000000000000FF0000000000000000000000000095D9F60093D7F50091D4 + F4008DD1F2008ACEF10087CBEF0083C7ED0080C4EC007DC1EA007ABDE80076BA + E60073B7E60071B5E30000000000727272001D1D1D007F6F6400F1D3C000F3D6 + C500B09F7000B09F7000B09F7000B09F7000F9E8DC00FAEDE100FCF0E700FDF3 + EA00FEF6EE00FFF8F100AC9687001D1D1D0000000000000000001A1ABD007D7D + FF001A1A91000000000000000000000000000000000000000000000000000000 + 0000000000001A1A910033537D000000000000000000724B3900925A3F00925A + 3F00925A3F00925A3F00925A3F00925A3F003131310000000000000000004715 + 1500471515000000FF000000FF00000000000000000095D9F60093D7F50091D4 + F4008DD1F2008ACEF10087CBEF0083C8ED0080C5EC007DC1EA007ABDE90076BB + E60073B7E50070B4E30000000000727272001D1D1D007F6F6400F1D3C100F2D7 + C500B09F7000B09F7000B09F7000B09F7000F9E8DD00FAECE200FCF0E600FDF3 + EA00FEF6EF00FFF8F100AC9687001D1D1D000000000000000000000000002D2D + FE001A1ABD001A1A910000000000000000000000000000000000000000000000 + 00001A1A91001A1ABD00000000000000000000000000724B39009A6348003131 + 31009A634800313131009A634800313131003131310000000000471515000000 + 0000000000000000FF0000000000000000000000000095D9F6005B7181005B71 + 81005B7181008ACEF1005B7181005B7181005B7181005B7181005B7181005B71 + 81005B71810070B4E30000000000727272001D1D1D007F6F6400F1D3C000F2D6 + C500F4DAC900F5DDCE00F6E1D400F7E4D700F9E8DC00FAEDE100FCEFE600FDF3 + EB00FEF6EE00FFF8F100AC9687001D1D1D000000000000000000000000000000 + 00002D2DFE001A1ABD001A1A9100000000000000000000000000000000001A1A + 91001A1ABD0000000000000000000000000000000000724B3900A6705600A670 + 5600A6705600A6705600A6705600A67056003131310000000000471515000000 + 0000000000000000000000000000000000000000000095D9F60093D7F50091D4 + F4008DD1F2008ACEF10087CBEF0083C8ED0080C5EC007DC1EA007ABDE90076BB + E60073B7E50070B4E30000000000727272001D1D1D007F6F6400F1D3C000F3D6 + C500F4DACA00F5DECE00F6E1D400F8E5D800F9E8DD00FAECE200FCF0E700FDF3 + EA00FEF6EF00FFF8F100AC9687001D1D1D000000000000000000000000000000 + 0000000000002D2DFE001A1ABD001A1A910000000000000000001A1A91001A1A + BD000000000000000000000000000000000000000000724B3900B37E65003131 + 3100B37E650031313100B37E6500313131003131310000000000000000004715 + 1500000000000000000000000000000000000000000095D9F6005B7181005B71 + 81005B7181008ACEF1005B7181005B7181005B7181005B7181005B7181005B71 + 81005B71810070B4E30000000000727272001D1D1D007F6F6400F1D3C100F2D7 + C500F3DAC90041B7E30041B7E30041B7E30041B7E30041B7E300FCF0E600FDF3 + EA00FEF6EF00FFF8F100AC9687001D1D1D000000000000000000000000000000 + 000000000000000000002D2DFE001A1ABD001A1A91001A1A91001A1ABD000000 + 00000000000000000000000000000000000000000000724B3900BF8B7300BF8B + 7300BF8B7300BF8B7300BF8B7300BF8B73003131310000000000000000000000 + 0000471515000000000000000000000000000000000095D9F60093D7F50091D4 + F4008DD1F2008ACEF10087CBEF0083C8ED0080C5EC007DC1EA007ABDE90076BB + E60073B7E50070B4E30000000000727272001D1D1D007F6F6400F1D3C000F2D6 + C500F4DAC90041B7E30041B7E30041B7E30041B7E30041B7E300FCEFE600FDF3 + EB00FEF6EF00FFF8F100AC9687001D1D1D000000000000000000000000000000 + 00000000000000000000000000001A1A91001A1ABD001A1A9100000000000000 + 00000000000000000000000000000000000000000000724B3900CC998200FFFF + FF00FFFFFF00FFFFFF00FFFFFF00CC9982003131310000000000000000000000 + 0000000000004715150000000000000000000000000095D9F600BF6F4C00BF6F + 4C00BF6F4C00BF6F4C00BF6F4C00BF6F4C00BF6F4C00BF6F4C00BF6F4C00BF6F + 4C00BF6F4C0070B4E30000000000727272001D1D1D007F6F6400F1D3C000F3D6 + C500F4DACA00F5DECE00F6E1D400F8E5D800F9E8DD00FAECE200FCF0E7007FCF + 90007FCF90007FCF9000AC9687001D1D1D000000000000000000000000000000 + 000000000000000000001A1A91001A1ABD002D2DFE001A1ABD001A1A91000000 + 00000000000000000000000000000000000000000000724B3900D9A78F00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00D9A78F003131310000000000000000000000 + 0000000000000000000047151500000000000000000095D9F60093D7F50091D4 + F4008DD1F2008ACEF10087CBEF0083C8ED0080C5EC007DC1EA007ABDE90076BB + E60073B7E50070B4E30000000000727272001D1D1D007F6F6400F1D3C000F3D6 + C500F4DACA00F5DECE00F6E1D400F8E5D800F9E8DD00FAECE200FCF0E7007FCF + 90007FCF90007FCF9000AC9687001D1D1D000000000000000000000000000000 + 0000000000001A1A91001A1ABD001A1ABD0000000000000000002D2DFE001A1A + 91000000000000000000000000000000000000000000724B3900E1B09900FFFF + FF00FFFFFF00FFFFFF00FFFFFF00E1B099003131310000000000471515004715 + 1500471515004715150000000000000000000000000095D9F6000909B5000909 + B5000909B5008ACEF10087CBEF0083C8ED0080C5EC007DC1EA007ABDE90076BB + E60073B7E50070B4E30000000000727272001D1D1D007F6F6400F1D3C1004040 + C0004040C0004040C0004040C0004040C000F9E9DC00FAECE100FCF0E600FDF3 + EA00FEF6EE00FFF8F100AC9687001D1D1D000000000000000000000000000000 + 00001A1A91001A1ABD001A1ABD00000000000000000000000000000000002D2D + FE001A1A910000000000000000000000000000000000724B3900E1B09900FFFF + FF00FFFFFF00FFFFFF00FFFFFF00E1B099003131310000000000000000000000 + 0000000000000000000000000000000000000000000095D9F60093D7F50091D4 + F4008DD1F2008ACEF10087CBEF0083C8ED0080C5EC007DC1EA007ABDE90076BB + E60073B7E50070B4E30000000000727272001D1D1D007F6F6400F1D3C0004040 + C0004040C0004040C0004040C0004040C000F9E8DC00FAEDE100FCEFE600FDF3 + EB00FEF6EE00FFF8F100AC9687001D1D1D000000000000000000000000001A1A + 91001A1ABD001A1ABD0000000000000000000000000000000000000000000000 + 00002D2DFE001A1A9100000000000000000000000000724B3900E1B09900E1B0 + 9900E1B09900E1B09900E1B09900E1B099003131310000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001D1D1D007F6F6400F1D3C000F2D7 + C500F3DACA00F5DDCF00F6E1D300F7E5D800F9E9DC00FAECE100FCF0E600FDF3 + EB00FEF6EF00FFF8F100AC9687001D1D1D0000000000000000001A1A91001A1A + 91001A1ABD000000000000000000000000000000000000000000000000000000 + 0000000000002D2DFE001A1A91000000000000000000724B3900724B3900724B + 3900724B3900724B3900724B3900724B39003131310000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001D1D1D007F6F64007F6F64007F6F + 64007F6F64007F6F64007F6F64007F6F64007F6F64007F6F64007F6F64007F6F + 64007F6F64007F6F64007F6F64001D1D1D000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001D1D1D001D1D1D001D1D1D001D1D + 1D001D1D1D001D1D1D001D1D1D001D1D1D001D1D1D001D1D1D001D1D1D001D1D + 1D001D1D1D001D1D1D001D1D1D001D1D1D000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000C49D7E00E2804D00E1804D00E180 + 4D00E1804D00E1804D00E1804D00E1804D00E1804D00E1804D00E1804D00E180 + 4D00E1804D00E0804D00E3814D00A58374000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EB8D5800E6AA8700E5B69B00E4B5 + 9900E4B59900E4B59900E4B59900E5B69900E4B59900E4B59900E4B59900E3B5 + 9900E3B59900E4B69B00E8895500725449000000000000009900000099000000 + 9900000099000000990000009900000099000000990000009900000099000000 + 9900000099000000990000009900000099000000000000000000121228001212 + 2800121228001212280012122800121228001212280012122800121228001212 + 2800121228001212280000000000000000000000000000000000000000000000 + 000000000000D3D3D300B9B9B900000000000000000000000000000000000000 + 000000000000000000000000000000000000EB8F5B00E8BDA300F7FEFE00EDF2 + F300EBF0F000EDF2F100E9EEEC00D7D7EC00E2E6ED00EBF0EE00E3ECED00DEEA + EA00DEEDEE00E6DDD400E98A560071554A007D5454007D5454007D5454007D54 + 54007D5454007D5454007D545400000000007D5454007D5454007D5454007D54 + 54007D5454007D5454007D54540000009900000000000000000030306D003030 + EF00A4A4F6006B6BEF006B6BEF004040CC003030BF0030309F0030306D003030 + 9F001B1B4A001212280000000000000000000000000000000000000000000000 + 0000D3D3D3001B1B9600858585009F9F9F000000000000000000000000000000 + 000000000000000000000000000000000000EB8F5B00E8BDA300F7FEFE00F6FA + FA00F9FBF900F5F5F200B6A9E9006B4BF200AA99F000EFEFF100E7EEED00E0EB + EA00DAEAEB00E2DBD100E98A560071554A007D545400ECFCFF00E2F8FC00D5F3 + F900C8EDF300BBE8EF00AFE2EB0000000000ECFCFF00E2F8FC00D5F3F900C8ED + F300BBE8EF00AFE2EB007D54540000009900000000000000000030306D003030 + EF00A4A4F6006B6BEF006B6BEF004040CC003030BF0030309F0030306D003030 + 9F001B1B4A00121228000000000000000000000000000000000000000000CACA + CA001B1B7D001B1B7D001F1E9A007C7C7C009F9F9F0000000000000000000000 + 000000000000000000000000000000000000EB8F5B00E8BDA300F7FEFE00F8FC + FD00DCD9F0008E78EC004117F1003009F600532FF400BDB2EA00F5F6F200EBEF + EE00E2ECEC00E3DBD100E98A560071554A007D545400ECFCFF00E2F8FC00D5F2 + F900C7ECF500BBE6F000AFE0EC0000000000ECFCFF00E2F8FC00D5F2F900C7EC + F500BBE6F000AFE0EC007D54540000009900000000000000000030306D003030 + EF00A4A4F6006B6BEF006B6BEF004040CC003030BF0030309F0030306D003030 + 9F001B1B4A001212280000000000000000000000000000000000C2C2C2001B1B + 7D001B1B7D001B1BD2001B1BD2002728A600858585009F9F9F00000000000000 + 000000000000000000000000000000000000EB8F5B00E7BDA300F9FCFE00D3D0 + F4006B4EEE004B23F3008773E4006F55E7003108FC007358F000E8E6ED00F6F6 + F200E6EEEF00E3DBD200E98A560071554A007D545400ECFCFF008A5624008A56 + 24008A5624008A562400AFE0EC0000000000ECFCFF008A5624008A5624008A56 + 24008A562400AFE0EC007D54540000009900000000000000000030306D003030 + EF00A4A4F6006B6BEF006B6BEF004040CC003030BF0030309F0030306D003030 + 9F001B1B4A00121228000000000000000000000000001B1B7D001B1B7D001B1B + 7D001B1BD2003A1BB3004343CB001B1BD2003333B500858585009F9F9F000000 + 000000000000000000000000000000000000EB8F5B00E7BDA300F8FCFE00CCC8 + F9009A84FE00BFB6F500FAFDF600D5D0F7004B27F8002F08FC009F8BEF00F1EE + F100EAF2F100E4DCD200E98A560071554A007D545400ECFCFF00E2F8FC00D5F2 + F800C7EDF300BBE8F000AFE2EC00FFFFFF00ECFCFF00E2F8FC00D5F2F800C7ED + F300BBE8F000AFE2EC007D545400000099000000000000000000000000003030 + BF003030BF006B6BEF004040CC004040CC003030BF0030309F0030306D003030 + 6D0030306D0000000000000000000000000000000000000000001B1BD2001B1B + D2003A1BB300D3D3D300000000004A4AD3001B1BD2002728A600858585009F9F + 9F0000000000000000000000000000000000EB8F5B00E7BDA300FAFEFF00F9FB + FF00F9F8FE00FAFCFD00F9FFFE00F8F9FA009480F300350EFC005331F600C7BC + EF00EDF7F200E4DCD200E98A560071554A007D545400ECFCFF008A5624008A56 + 24008A5624008A562400AEE2EC0000000000ECFCFF008A5624008A5624008A56 + 24008A562400AEE2EC007D545400000099000000000000000000000000000000 + 0000000000003030BF003030BF003030BF0030306D0030306D0030306D000000 + 0000000000000000000000000000000000000000000000000000000000003A1B + B300000000000000000000000000000000005252DC001B1BD2003333B5008585 + 85009F9F9F00000000000000000000000000EB8F5B00E7BDA300FAFFFF00F8FF + FF00F7FFFF00F6FFFF00F6FFFF00FAFFFE00E8E7F300836AF0002C08FB006548 + EF00D8DEEA00E4DDD100E98A560071554A007D545400ECFCFF00E2F8FC00D5F2 + F900C8ECF300BBE8F000AFE0EC0000000000ECFCFF00E2F8FC00D5F2F900C8EC + F300BBE8F000AFE0EC007D545400000099000000000000000000000000000000 + 0000000000000000000030306D003030950030306D0012122800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000005A5AD1001B1BD2003E3F + C400858585009F9F9F000000000000000000EB8F5B00E7BDA300F9FFFF00F7FF + FF00F7FFFF00F7FFFF00F6FFFF00F7FFFF00FAFDFB00CCC8F4005C3CFB005430 + F900B3B0EB00E0D8D000E98A560071554A007D545400ECFCFF008A5624008A56 + 24008A5624008A562400AFE2EC0000000000ECFCFF008A5624008A5624008A56 + 24008A562400AFE2EC007D545400000099000000000000000000000000000000 + 00000000000030306D00303095003030950030309F0030306D00121228000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000006666F1001B1B + D2004949D200858585009F9F9F0000000000EB8F5B00E8BDA300F7FFFF00F6FF + FF00FAFFFF00FBFFFF00FBFFFF00FBFFFF00FBFFFF00F9FBFF00DFDDFE00D3CD + FB00D8D8F800E5DBD400E98A560071554A007D545400ECFCFF00E3F9FE00D5F3 + F900C7ECF500BBE6F000AFE2EC0000000000ECFCFF00E3F9FE00D5F3F900C7EC + F500BBE6F000AFE2EC007D545400000099000000000000000000000000000000 + 000030306D00A4A4F6003030BF003030BF003030BF0030309F0030309F001212 + 2800000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000007D7D + E0001B1BD2005555E1008585850000000000EB8F5B00E8BDA300F7FFFF00F8FF + FF00E7E9E900D7D9D900D9DADB00D8D9DA00D6D8D900D8DBDC00D3D5D300D4D8 + D300F5FAF800EDE1D600E88A560071554A007D545400ECFCFF0000007B006868 + DF006868DF006868DF00AFE0EC0000000000ECFCFF008A5624008A5624008A56 + 24008A562400AFE0EC007D545400000099000000000000000000000000000000 + 000030309500A4A4F600A4A4F600A4A4F600A4A4F600A4A4F6003030EF003030 + 9500000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00009B9BD6001B1BD2006060EF0000000000EB8F5B00E7BDA200F5F0EB00E9E2 + DF00818186007D777A0079767A00716E7200706C70006E686C00514D53008882 + 8500F2EAE600ECDCD000E88A56006D5146007D545400ECFCFF0000007B000000 + 7B0000007B006868DF00AFE2EC00FFFFFF00ECFCFF00E2F9FC00D5F2F800C7EC + F300BBE8F000AFE2EC007D545400000099000000000000000000000000000000 + 0000000000003030950030309500303095003030950030309500303095000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000B7B7D7001B1BD20000000000EB8C5700E8A67E00E9AF8C00E1AA + 8900B5927C009FA7A400C4C6C700C5C3C300939293005C6F73008D6A5600C389 + 6800EBA88100E9A78000E9875200806559007D545400ECFCFF00E2F9FC00D5F2 + F800C7ECF300BBE8F000AFE2EC0000000000ECFCFF00E2F9FC00D5F2F800C7EC + F300BBE8F000AFE2EC007D545400000099000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000DDCFC000EBAE8B00EBAF8C00EBAF + 8C00E3AD8C00939F9C00D6D9DC00E1E1E1008E8E900049636A00CD9D7F00F0AF + 8A00EBAD8A00EBAD8A00E9A98600D8C1B5007D5454007D5454007D5454007D54 + 54007D5454007D5454007D545400000000007D5454007D5454007D5454007D54 + 54007D5454007D5454007D545400000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EEEEEE00EFEDEC00EFEDEC00EFED + EC00EBE9E900BEBFC100BBBBBC00B3B3B300949594006F6E7100D7D7D600F1EF + EE00EFEDEC00EFEDEC00EEEDEC00EEEDED000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001010100010101000101010001010 + 1000101010009C9C9C0021212100000000000000000000000000000000000000 + 0000101010001010100010101000101010001010100010101000101010001010 + 1000101010001010100010101000101010001010100010101000101010001010 + 1000101010001010100010101000101010000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000002382A800E3EEF700E1ECF600DDE9 + F40021212100737373009C9C9C00C6C6C600C6C6C600B5B5B500636363002121 + 210000000000212121009BBDD900101010002382A800E3EEF700E1ECF600DDE9 + F400D6E6F200CBDBE800BECFDD00BFD3E400C1D7E900BBD3E600B4CFE400AECA + E100A6C6DE00A0C1DC009BBDD9001010100000000000818181003636C6008181 + 8100818181008181810081818100818181008181810081818100818181008181 + 8100818181003636A7000000000000000000000000000000000014148B000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000014148B0000000000000000002382A800E3EEF700E0ECF500DBE9 + F40073737300C6C6C600F0EFF000ADADAD00C6C6C600A5A5A500B5B5B5008484 + 84004242420063636300212121009C9C9C002382A800E3EEF700E0ECF500DBE9 + F400CFDEE900AEBCC70094A2AD00A4B5C300BACFE100BCD4E700B4CFE400AECA + E100A6C6DE00A0C1DC009CBED90010101000000000003636C6003636C6003636 + A700D6F0F400CAE9EF00BEE1E800B1D8E200A4D0DC0097C8D5008ABFCF007FB9 + C80077B3C5008181810000000000000000000000000014148B00000000000000 + 0000155A8B0080D1F60072C6F2005CB7EB004AAAE500349BDE002690DA000000 + 0000000000000000000014148B00000000002382A80083ACCE0083ACCE0083AC + CE0084848400A5A5A500DEDEDE00A5A5A500C6C6C600A5A5A500A5A5A5004242 + 4200424242008484840063636300212121002382A80083ACCE0083ACCE007EA6 + C7006C8EAA001B1B9600445A6B00526B80006C8EAA007EA6C70083ACCE0083AC + CE0083ACCE0083ACCE0083ACCE0010101000000000003636C6009999FF003636 + A7003636A700CAE9EF00BEE1E800B0D8E200A4D1DB0097C8D5008AC0CF007FB8 + C8003636A7008181810000000000000000000000000014148B00000000000000 + 0000155A8B0080D1F60071C6F2005CB8EB0049A9E500359BDF002690DA000000 + 0000000000000000000014148B00000000002382A800E3EEF700E1ECF600DDE9 + F40084848400A5A5A500DEDEDE00C6C6C600CECECE00B5B5B500A5A5A5007373 + 73004242420063636300212121009C9C9C002382A800DBE6EE00CAD4DD00AFB9 + C1001B1B7D001B1B7D001F1E9A00606A7300788691009BAFBE00AEC8DC00AECA + E100A6C6DE00A0C1DC009CBED90010101000000000005494A5005252FE003636 + C6003636A7005494A5005494A5005494A5005494A5005494A5005494A5003636 + A7005494A5005494A50000000000000000000000000014148B00000000000000 + 0000155A8B00155A8B00155A8B00155A8B00155A8B00155A8B00155A8B00155A + 8B00000000000000000014148B00000000002382A800E3EEF700E1ECF600DDE9 + F40084848400A5A5A500C6C6C600A5A5A500A5A5A50063636300636363004242 + 420042424200A0C1DC009CBED900101010002382A800D3DDE600ABB4BB001B1B + 7D001B1B7D001B1BD2001B1BD2002728A60065707A007584900095ABBD00A8C3 + D900A6C6DE00A0C1DC009CBED900101010000000000000000000000000005252 + FE003636C6003636A700000000000000000000000000000000003636A7003636 + C600000000000000000000000000000000000000000014148B00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000014148B00000000002382A80083ACCE0083ACCE0083AC + CE0084848400A5A5A50042424200424242004242420042424200424242008484 + 84004242420083ACCE0083ACCE00101010002382A8001B1B7D001B1B7D001B1B + 7D001B1BD2003A1BB3004343CB001B1BD2003333B500445A6B00526B80006C8E + AA007EA6C70083ACCE0083ACCE00101010000000000081818100818181008181 + 81005252FE003636C6003636A70081818100818181003636A7003636C6008181 + 8100818181008181810000000000000000000000000014148B00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000014148B00000000002382A800E3EEF700E0ECF500DDE9 + F400636363004242420042424200424242004242420042424200424242004242 + 420084848400A0C1DC009BBDD900101010002382A800E3EEF7001B1BD2001B1B + D2003A1BB300AEBCC700C5D7E6004A4AD3001B1BD2002728A6005E6C77006C7E + 8C0089A4B8009ABAD4009BBDD90010101000000000005494A500DEF5F800DEF5 + F800D6F0F4005252FE003636C6003636A7003636A7003636C6008AC0CF007FB8 + C90077B3C50081818100000000000000000014148B0000000000000000000000 + 0000155A8B0080D1F60071C6F1005DB8EB0049A9E500349BDF002690DA000000 + 000000000000000000000000000014148B002382A800E3EEF700E0ECF500DDE9 + F4008484840095959500DEDEDE00848484008484840084848400848484004242 + 420042424200A0C1DC009CBED900101010002382A800E3EEF700E0ECF5003A1B + B300C7D6E100CBDBE800CCDFEE00C6DBEC005252DC001B1BD2003333B5005B69 + 7500687B8A0084A0B60096B7D10010101000000000005494A500DEF5F800DEF5 + F800D6F0F400CAE9EF003636A7003636C6003636A70097C8D5008AC0CF007FB9 + C90077B3C5008181810000000000000000000000000014148B00000000000000 + 0000155A8B0080D1F60071C6F1005DB8EB0049AAE500359ADF002690DA000000 + 0000000000000000000014148B00000000002382A80083ACCE0083ACCE0083AC + CE0083ACCE00A5A5A500A5A5A500A5A5A500A5A5A50063636300636363004242 + 420083ACCE0083ACCE0083ACCE00101010002382A80083ACCE0083ACCE0083AC + CE0083ACCE0083ACCE0083ACCE0083ACCE0083ACCE005A5AD1001B1BD2003E3F + C400445A6B00526B80006C8EAA0010101000000000005494A5005494A5005494 + A5005494A5003636A7003636C6005252FE003636C6003636A7005494A5005494 + A5005494A5005494A50000000000000000000000000014148B00000000000000 + 0000155A8B00155A8B00155A8B00155A8B00155A8B00155A8B00155A8B00155A + 8B00000000000000000014148B00000000002382A800E3EEF7001F1E9A00DBE9 + F400D7E6F200D2E3F000CCDFEE00C6DBEC00C1D7E900972A2900B4CFE400AECA + E100A6C6DE00A0C1DC009BBDD900101010002382A800E3EEF700E0ECF500DBE9 + F400D7E6F200D2E3F000CCDFEE00C6DBEC00C1D7E900BBD3E6006666F1001B1B + D2004949D2005365730061768700101010000000000000000000000000000000 + 00003636A7003636C6003636C60000000000000000005252FE003636A7000000 + 0000000000000000000000000000000000000000000014148B00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000014148B00000000002382A8001F1E9A001B1BD2001F1E + 9A00D7E6F200D2E3F000CCDFEE00C6DBEC00972A2900972A2900972A2900AECA + E100A6C6DE00A0C1DC009CBED900101010002382A800E3EEF700E1ECF600DDE9 + F400D7E6F200D2E3F000CCDFEE00C6DBEC00C1D7E900BBD3E600B4CFE4007D7D + E0001B1BD2005555E100516371001010100000000000818181003636A7003636 + A7003636C6003636C600818181008181810081818100818181005252FE003636 + A700818181008181810000000000000000000000000014148B00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000014148B00000000002382A8001B1BD20083ACCE001B1B + D2001F1E9A0083ACCE0083ACCE0083ACCE0083ACCE00972A290083ACCE0083AC + CE0083ACCE0083ACCE0083ACCE00101010002382A80083ACCE0083ACCE0083AC + CE0083ACCE0083ACCE0083ACCE0083ACCE0083ACCE0083ACCE0083ACCE0083AC + CE009B9BD6001B1BD2006060EF0010101000000000005252FE009999FF003636 + C6003636C600CAE9EE00BEE1E800B0D8E200A4D0DB0097C8D5008AC0CE005252 + FE003636A7008181810000000000000000000000000014148B00000000000000 + 0000155A8B0080D1F60071C6F2005DB7EB0049AAE500359ADF002690DA000000 + 0000000000000000000014148B00000000002382A800E3EEF700E0ECF500DDE9 + F4001B1BD2006060EF00972A2900972A2900972A2900BBD3E600B4CFE400AECA + E100A6C6DE00A0C1DC009BBDD900101010002382A800E3EEF700E0ECF500DDE9 + F400D6E6F200D2E3F000CCDFEE00C6DBEC00C1D8E900BBD3E600B4CFE400AECA + E100A6C6DE00B7B7D7001B1BD20010101000000000005252FE005252FE005252 + FE00D6F0F400CBE9EE00BEE0E800B0D8E200A4D0DB0098C8D5008AC0CF007FB8 + C90077B3C5003636A70000000000000000000000000014148B00000000000000 + 0000155A8B0080D1F60071C6F1005DB7EB004AAAE500359BDF002690DA000000 + 0000000000000000000014148B00000000002382A800E3EEF700E1ECF600DDE9 + F400D6E6F2001B1BD200CCDFEE00C6DBEC00C1D7E900BBD3E600B4CFE400AECA + E100A6C6DE00A0C1DC009BBDD900101010002382A800E3EEF700E1ECF600DDE9 + F400D6E6F200D2E3F000CCDFEE00C6DBEC00C1D7E900BBD3E600B4CFE400AECA + E100A6C6DE00A0C1DC009BBDD90010101000000000005494A5005494A5005494 + A5005494A5005494A5005494A5005494A5005494A5005494A5005494A5005494 + A5005494A5005494A5000000000000000000000000000000000014148B000000 + 0000155A8B00155A8B00155A8B00155A8B00155A8B00155A8B00155A8B00155A + 8B000000000014148B0000000000000000002382A8002382A8002382A8002382 + A8002382A8002382A8002382A8002382A8002382A8002382A8002382A8002382 + A8002382A8002382A8002382A8002382A8002382A8002382A8002382A8002382 + A8002382A8002382A8002382A8002382A8002382A8002382A8002382A8002382 + A8002382A8002382A8002382A8002382A8000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001818940018189400181894001818 + 9400181894001818940018189400181894001818940018189400181894001818 + 9400181894001818940018189400181894001818940018189400181894001818 + 9400181894001818940018189400181894001818940018189400181894001818 + 9400181894001818940018189400181894000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000CC660000CC660000CC33 + 0000000000000000000000000000000000001818940000000000000000001818 + BD00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000018189400181894001818940000000000000000000000 + 000000000000000000000000000000000000000000000000BA000000BA000000 + BA000000BA000000BA000000BA00181894001818940018189400181894001818 + 9400181894001818940018189400181894001818940018189400181894001818 + 9400181894001818940018189400181894000000000000000000000000000000 + 00000000000000000000000000000000000000000000CC660000CC660000CC33 + 0000CC33000000000000000000000000000018189400000000001818BD001818 + BD00181894007B7B7B007B7B7B007B7B7B007B7B7B007B7B7B007B7B7B007B7B + 7B007B7B7B007B7B7B007B7B7B00181894001818940000000000000000000000 + 000000000000000000000000000000000000000000000000BA00FFFFFF000000 + BA000000BA000000BA00FFFFFF00181894001818940000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000181894000000000000000000000000000000 + 0000000000000000000000000000000000000000000099330000CC330000CC66 + 0000CC660000CC33000000000000000000001818940031527B001818BD007B7B + FF00181894001818940031527B0031527B0031527B0031527B0031527B003152 + 7B0031527B001818940031527B00181894001818940000000000000000000000 + 000000000000000000000000000000000000000000000000BA000000BA00FFFF + FF000000BA00FFFFFF000000BA00181894001818940000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000018189400CC33000099330000993300009933 + 000099330000993300009933000099330000CC3300000000000099330000CC66 + 0000CC66000099330000CC33000000000000181894006394C600DEFFFF002929 + FF001818BD00181894006BBDEF006BBDEF006BBDEF004AA5DE004AA5DE004AA5 + DE00181894004AA5DE0031527B00181894001818940000000000000000000000 + 000000000000000000000000000000000000000000000000BA000000BA000000 + BA00FFFFFF000000BA000000BA00181894001818940000000000000000000000 + 0000000000000000000000000000005A00004AD64A004AD64A004AD64A004AD6 + 4A0000000000086B08000000000018189400CC330000CC993300CC993300CC66 + 0000CC660000CC660000CC660000CC660000CC33000000000000000000009933 + 0000CC660000CC660000CC33000000000000181894006394C600DEFFFF003152 + 7B002929FF001818BD001818940031527B0031527B0031527B0031527B001818 + 94001818BD004AA5DE0031527B00181894001818940000000000000000000000 + 000000000000000000000000000000000000000000000000BA000000BA00FFFF + FF000000BA00FFFFFF000000BA00181894001818940000000000000000000000 + 0000000000000000000000000000005A00006BDE6B006BDE6B006BDE6B006BDE + 6B0000000000107B1000107B100018189400CC330000CC993300CC993300CC66 + 0000CC330000CC660000CC660000CC660000CC33000000000000000000000000 + 0000CC330000CC660000CC33000000000000181894006394C600DEFFFF00A5EF + FF008CDEF7002929FF001818BD00181894006BBDEF006BBDEF00181894001818 + BD004AA5DE004AA5DE0031527B00181894001818940000000000000000000000 + 0000000000000000000000000000005A00004AD64A000000BA00FFFFFF000000 + BA000000BA000000BA00FFFFFF00181894001818940000000000000000000000 + 00000000000000000000005A000084E7840084E7840084E7840084E784000000 + 0000108C100010841000108C100018189400CC330000CCCC6600CC663300CC99 + 3300CC9933009933000000000000000000000000000000000000000000000000 + 000000000000CC660000CC66000099330000181894006394C600DEFFFF003152 + 7B0031527B0031527B002929FF001818BD0018189400181894001818BD003152 + 7B0031527B004AA5DE0031527B00181894001818940000000000000000000000 + 0000000000000000000000000000005A00006BDE6B000000BA000000BA000000 + BA000000BA000000BA000000BA00181894001818940000000000000000000000 + 00000000000000000000005A00009CEF9C009CEF9C009CEF9C009CEF9C000000 + 000018941800189418000000000018189400CC330000CCCC6600CC663300CC99 + 3300CC993300CC33000099330000000000000000000000000000000000000000 + 000000000000CC660000CC66000099330000181894006394C600DEFFFF00A5EF + FF00A5EFFF00A5EFFF008CDEF700181894001818BD00181894006BBDEF006BBD + EF006BBDEF006BBDEF0031527B00181894001818940000000000000000000000 + 00000000000000000000005A000084E7840084E7840084E7840084E784000000 + 0000108C100010841000108C1000181894001818940000000000000000000000 + 000000000000005A0000BDFFBD00BDFFBD00BDFFBD00BDFFBD000000000021A5 + 210021A5210021A521000000000018189400CC330000CCCC6600CC6633009933 + 0000CC663300CC993300CC993300993300000000000000000000000000000000 + 000099330000CC660000CC66000099330000181894006394C600DEFFFF00A5EF + FF00A5EFFF0031527B00181894001818BD002929FF001818BD00181894003152 + 7B0031527B006BBDEF0031527B00181894001818940000000000000000000000 + 00000000000000000000005A00009CEF9C009CEF9C009CEF9C009CEF9C000000 + 0000189418001894180000000000181894001818940000000000000000000000 + 000000000000005A0000CEFFCE00CEFFCE00CEFFCE00CEFFCE000000000021AD + 210021AD2100000000000000000018189400CC330000CCCC6600CC6633000000 + 000099330000CC993300CC993300CC330000993300000000000000000000CC33 + 0000CC330000CC660000CC66000000000000181894006394C600DEFFFF00A5EF + FF00A5EFFF00181894001818BD001818BD008CDEF7008CDEF7002929FF001818 + 94008CDEF7006BBDEF0031527B00181894001818940000000000000000000000 + 000000000000005A0000BDFFBD00BDFFBD00BDFFBD00BDFFBD000000000021A5 + 210021A5210021A5210000000000181894001818940000000000000000000000 + 000000000000005A0000005A0000005A0000005A0000005A0000005A0000005A + 000029BD2900000000000000000018189400CC330000CCCC6600CC6633000000 + 00000000000099330000CC333300CC993300CC993300CC660000CC330000CC66 + 0000CC660000CC3300009933000000000000181894006394C600DEFFFF001818 + 9400181894001818BD001818BD00A5EFFF00A5EFFF00A5EFFF00A5EFFF002929 + FF00181894008CDEF70031527B00181894001818940000000000000000000000 + 000000000000005A0000CEFFCE00CEFFCE00CEFFCE00CEFFCE000000000021AD + 210021AD21000000000000000000181894001818940000000000000000000000 + 00000000000000000000005A000000FF000000FF000000FF000000FF000000FF + 0000005A0000000000000000000018189400CC330000CCCC6600CC6633000000 + 0000000000000000000099330000CC663300CC993300CC993300CC993300CC66 + 0000CC660000993300000000000000000000181894006394C6002929FF007B7B + FF001818BD001818BD00DEFFFF00DEFFFF00DEFFFF00DEFFFF00DEFFFF00DEFF + FF002929FF001818940031527B00181894001818940000000000000000000000 + 000000000000005A0000005A0000005A0000005A0000005A0000005A0000005A + 000029BD29000000000000000000181894001818940000000000000000000000 + 0000000000000000000000000000005A0000005A0000005A0000005A0000005A + 0000005A00000000000000000000181894000000000099330000CC3300000000 + 000000000000000000000000000000000000993300009933000099330000CC33 + 000000000000000000000000000000000000181894006394C6002929FF002929 + FF002929FF006394C6006394C6006394C6006394C6006394C6006394C6006394 + C6006394C6006394C60018189400181894001818940000000000000000000000 + 00000000000000000000005A000000FF000000FF000000FF000000FF000000FF + 0000005A00000000000000000000181894001818940000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000181894000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001818940000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000181894001818940000000000000000000000 + 0000000000000000000000000000005A0000005A0000005A0000005A0000005A + 0000005A00000000000000000000181894001818940018189400181894001818 + 9400181894001818940018189400181894001818940018189400181894001818 + 9400181894001818940018189400181894000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001818940018189400181894001818 + 9400181894001818940018189400181894001818940018189400181894001818 + 9400181894001818940018189400181894001818940018189400181894001818 + 9400181894001818940018189400181894001818940018189400181894001818 + 9400181894001818940018189400181894000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000CBCBCB00A0A0A0006A6A6A006E6E6E0088888800CCCCCC000000 + 0000000000000000000000000000000000000000000000000000000000009C9C + 9C00212121000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000BA000000BA000000 + BA000000BA000000BA000000BA000000BA000000000000000000000000000000 + 0000000000007676760091919100C6C6C600D4D4D40088888800949494000000 + 0000000000000000000000000000000000000000000000000000212121007373 + 73009C9C9C00C6C6C600C6C6C600B5B5B5006363630021212100000000002121 + 2100000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000BA00FFFFFF000000 + BA000000BA000000BA00FFFFFF000000BA00C9C9C900C3C3C300A1A1A1007777 + 77008E8E8E00D2D2D200E1E1E100D8D8D800DADADA00DCA3DC00925992008E8E + 8E0000000000000000000000000000000000000000000000000073737300C6C6 + C600F0EFF00084848400C6C6C60084848400B5B5B50084848400424242006363 + 6300212121009C9C9C000000000000000000000000000000000084807F008480 + 7F0084807F0084807F0084807F0084807F0084807F0084807F0084807F008480 + 7F00000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000BA000000BA00FFFF + FF000000BA00FFFFFF000000BA000000BA00C9C9C9007E7E7E0090909000C6C6 + C600DBDBDB00D9D9D900DCDCDC00DEDEDE00DADADA00E3AAE300C78EC7006868 + 6800000000000000000000000000000000000000000000000000848484008484 + 8400DEDEDE0084848400C6C6C60084848400A5A5A50042424200424242008484 + 8400636363002121210000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000BA000000BA000000 + BA00FFFFFF000000BA000000BA000000BA006B6B6B00B4B4B400DFDFDF00D8D8 + D800DEDEDE00DEDEDE00DEDEDE00DEDEDE00DEDEDE00DEDEDE00CBCBCB00B0B0 + B000666666000000000000000000000000000000000000000000848484008484 + 8400DEDEDE0084848400C6C6C60084848400A5A5A50042424200424242006363 + 6300212121009C9C9C0000000000000000000000000000000000FC929100FC92 + 9100FC929100FC929100FC929100FC929100FC929100FC929100FC929100FC92 + 9100000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000BA000000BA00FFFF + FF000000BA00FFFFFF000000BA000000BA0066666600BABABA00D6D6D600DEDE + DE00DEDEDE00DEDEDE00DEDEDE00DEDEDE00DEDEDE00DADADA00D4D4D400C0C0 + C0006D6D6D00ABABAB0000000000000000000000000000000000848484008484 + 8400DEDEDE0084848400CECECE0084848400A5A5A50073737300424242000000 + 0000000000000000000000000000000000000000000000000000F2F2F200FC92 + 9100ECECEC00FC929100ECECEC00FC929100ECECEC00FC929100ECECEC00FC92 + 9100000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000005A00004AD64A000000BA00FFFFFF000000 + BA000000BA000000BA00FFFFFF000000BA0068686800BABABA00D8D8D800DEDE + DE00DEDEDE00DEDEDE00DEDEDE00DEDEDE00DDDDDD00DBDBDB00E1E1E100D5D5 + D500A0A0A0006B6B6B000000000000000000000000000000000084848400A5A5 + A500C6C6C600A5A5A500A5A5A500636363006363630042424200424242000000 + 0000000000000000000000000000000000000000000000000000FC929100FC92 + 9100FC929100FC929100FC929100FC929100FC929100FC929100FC929100FC92 + 9100000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000005A00006BDE6B000000BA000000BA000000 + BA000000BA000000BA000000BA000000BA0068686800BABABA00D8D8D800DEDE + DE00DEDEDE00DEDEDE00DCDCDC00D8D8D800E0E0E000E6E6E600E9E9E900CDCD + CD00C2C2C200646464000000000000000000000000000000000084848400A5A5 + A500424242004242420042424200424242004242420084848400424242000000 + 0000000000000000000000000000000000000000000000000000F8F8F800FC92 + 9100ECECEC00FC929100ECECEC00FC929100ECECEC0000420000004200000042 + 0000004200000042000000000000000000000000000000000000000000000000 + 00000000000000000000005A000084E7840084E7840084E7840084E784000000 + 0000108C100010841000108C10000000000068686800BABABA00D8D8D800DEDE + DE00DDDDDD00DBDBDB00DFDFDF00E3E3E300DEDEDE00E8E8E900E9EBEC009F9F + 9D00C7C7C700C6C6C6006A4E6A00000000000000000000000000636363004242 + 4200424242004242420042424200424242004242420042424200848484000000 + 0000000000000000000000000000000000000000000000000000FF909000FC90 + 8C00FF909000FC929100FF909000FC929100FF909000004200006E24FF000000 + FF006E24FF000042000000000000000000000000000000000000000000000000 + 00000000000000000000005A00009CEF9C009CEF9C009CEF9C009CEF9C000000 + 00001894180018941800000000000000000068686800BABABA00D6D6D600DCDC + DC00E0E0E000E2E2E200CFCFCF009C9C9C00A2A4A400877E6D00988064009898 + 9A00CDCDCD00BABABA00876B8700000000000000000000000000848484009595 + 9500DEDEDE008484840084848400848484008484840042424200424242000000 + 0000000000000000000000000000000000000000000000000000EDEDED00FC90 + 8C00EDEDED00FC929100EDEDED00FC92910000420000004200006E24FF000000 + FF006E24FF000042000000420000004200000000000000000000000000000000 + 000000000000005A0000BDFFBD00BDFFBD00BDFFBD00BDFFBD000000000021A5 + 210021A5210021A52100000000000000000067676700BBBBBB00DADADA00DEDE + DE00D3D3D300DADADA00F1F1F100A9A9A900F2F4F400B4B3B000AC8435009680 + 500083838400848484000000000000000000000000000000000000000000A5A5 + A500A5A5A500A5A5A500A5A5A500636363006363630042424200000000000000 + 0000000000000000000000000000000000000000000000000000FC929100FC92 + 9100FC929100FC929100FC929100004200006E24FF000000FF000000FF000000 + FF000000FF000000FF006E24FF00004200000000000000000000000000000000 + 000000000000005A0000CEFFCE00CEFFCE00CEFFCE00CEFFCE000000000021AD + 210021AD210000000000000000000000000065656500BDBDBD00D362D300AEAE + AE00F0F0F000E1E1E100B3B3B300C3C3C300FBFBFB00A6A8A80066635A00A480 + 37007D644100BEBEC10000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000ECECEC00FF91 + 9300ECECEC00FC929100ECECEC00FF919300004200006E24FF000000FF000000 + FF000000FF006E24FF0000420000000000000000000000000000000000000000 + 000000000000005A0000005A0000005A0000005A0000005A0000005A0000005A + 000029BD2900000000000000000000000000BFBFBF008383830095959500ABAB + AB00A5A5A5008A8A8A00F3F3F300FEFEFE00DFDFDF005A5A5A00B6B6B5009393 + 9500A6884F00866E4900BDBDBF00000000000000000000000000000000000000 + 000000000000000000000000BD00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000FF919300FF91 + 9300FF919300FF919300FF919300FF919300FF919300004200006E24FF000000 + FF006E24FF000042000000000000000000000000000000000000000000000000 + 00000000000000000000005A000000FF000000FF000000FF000000FF000000FF + 0000005A000000000000000000000000000000000000BABABA00939393007A7A + 7A009797970070707000AAAAAA00FEFEFE00B0B0B00082828200000000000000 + 0000918F8B00A38B52008E745200B9B9BE000000000000000000000000000000 + BD0000000000000000000000BD00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000FFFFFF00FF91 + 9300FFFFFF00FF919300FFFFFF00FF919300FFFFFF002D1F1F00004200006E24 + FF00004200000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000005A0000005A0000005A0000005A0000005A + 0000005A0000000000000000000000000000000000000000000000000000C5C5 + C500909090009960990092929200AAAAAA0073737300B9B9B900000000000000 + 00000000000093939600A68854007B6A480000000000000000000000BD000000 + BD000000BD000000BD0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000212121000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000C8C8C800969696008686860000000000000000000000 + 00000000000000000000979794008E8A7E000000000000000000000000000000 + BD00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000939393009393 + 9300939393009393930093939300939393009393930093939300939393009393 + 9300939393009393930093939300000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00009C9C9C002121210000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A0A0A000A0A0A000A0A0A000A0A0A000A0A0A000A0A0A000A0A0A000A0A0 + A000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000093939300000000000000000000000000000000002679 + A3002679A3002679A3002679A3002679A3002679A3002679A3002679A3002679 + A3002679A3002679A30000000000000000000000000000000000000000002121 + 2100737373009C9C9C00C6C6C600C6C6C600B5B5B50063636300212121000000 + 0000212121000000000000000000000000000000000000000000000000000000 + 00005D5E5E00565657004F4F4F0047484800404041003A3B3B0035353600A0A0 + A00000000000000000000000000000000000000000006A514A00F8E7DC00E4A6 + 8800E1A18400DD9C7F00D8987B00D3947700CD8F7400C78A7000C0876D00B983 + 6900B47E66000000000093939300000000000000000000000000000000002679 + A300FFFFFF0054C5FD009DDDFD009DDDFD0054C5FD0054C5FD0054C5FD0054C5 + FD0046B1E6002679A30000000000000000000000000000000000000000007373 + 7300C6C6C600F0EFF000ADADAD00C6C6C600A5A5A500B5B5B500848484004242 + 420063636300212121009C9C9C00000000000000000000000000000000000000 + 00007C7D7D0072727200686869005F5E6000555656004E4E4F0047474800A0A0 + A00000000000000000000000000000000000000000006A514A00F8E7DC00E4A6 + 8800E1A18400DD9C7F00D8987B00D3947700CD8F7400C78A7000C0876D00B983 + 6900B47E660000000000939393000000000000000000000000003399CC00FFFF + FF009DDDFD009DDDFD0054C5FD0054C5FD009DDDFD0054C5FD0054C5FD0054C5 + FD0046B1E600000000002679A300000000000000000000000000000000008484 + 8400A5A5A500DEDEDE00A5A5A500C6C6C600A5A5A500A5A5A500424242004242 + 4200848484006363630021212100000000000000000000000000000000000000 + 0000000000005B402E00EABA8200CD975E00AC79450000000000A0A0A0000000 + 000000000000000000000000000000000000000000006A514A00F8E7DC005F5F + EE005F5FEE00E3A2850048484800484848004848480048484800484848004848 + 4800BA846A0000000000939393000000000000000000000000003399CC00FFFF + FF009DDDFD009DDDFD009DDDFD009DDDFD0054C5FD009DDDFD0054C5FD0054C5 + FD002679A300000000002679A300000000000000000000000000000000008484 + 8400A5A5A500DEDEDE00A5A5A500C6C6C600A5A5A500A5A5A500424242004242 + 420063636300212121009C9C9C00000000000000000000000000000000000000 + 0000000000005B402E00EABA8200CD975E00AC79450000000000A0A0A0000000 + 000000000000000000000000000000000000000000006A514A00F8E7DC00E7AF + 9700E6AB9100E5A78A00E3A38600DF9E8100DB9A7D00D6967800D0917600C98D + 7200C3886F00000000009393930000000000000000003399CC00FFFFFF009DDD + FD009DDDFD009DDDFD009DDDFD009DDDFD009DDDFD0054C5FD009DDDFD0046B1 + E600000000002679A30046B1E600000000000000000000000000000000008484 + 8400B5B5B500DEDEDE00C6C6C600CECECE00B5B5B500A5A5A500737373004242 + 42000000000000000000000000000000000000000000A0A0A000A0A0A000A0A0 + A00000000000000000005B402E00CE975E0000000000A0A0A00000000000A0A0 + A000A0A0A000A0A0A0000000000000000000000000006A514A00F8E7DC004848 + EB004848EB00E6AC92004848480048484800484848004848480048484800D193 + 7600CB8E7200000000009393930000000000000000003399CC00FFFFFF009DDD + FD009DDDFD009DDDFD009DDDFD009DDDFD0054C5FD009DDDFD0054C5FD0046B1 + E6000000000046B1E60046B1E600000000000000000000000000000000008484 + 8400A5A5A500C6C6C600A5A5A500A5A5A5006363630063636300424242004242 + 420000000000000000000000000000000000000000001381BA00036A9F00003E + 7C00A0A0A000000000005B402E00CD975D0000000000A0A0A000000000001381 + BA00036A9F00003E7C00A0A0A00000000000000000006A514A00F8E7DC00E7BA + A600E7B6A000E7B29900E7AD9300E5A88E00E4A68800E1A18400DC9C7E00D897 + 7A00D3937700000000009393930000000000000000003399CC003399CC003399 + CC003399CC003399CC003399CC003399CC003399CC003399CC003399CC003399 + CC0046B1E600A9DEF80046B1E600000000000000000000000000000000008484 + 8400A5A5A5004242420042424200424242004242420042424200848484004242 + 4200000000000000000000000000000000005B402E0094DAEC0075C5E20054B0 + D70000000000A0A0A000000000005B402E00A0A0A000000000005B402E0094DA + EC0075C5E20054B0D70000000000A0A0A000000000006A514A00F8E7DC004848 + D8004848D800E7B7A10048484800484848004848480048484800484848004848 + 4800D8987B0000000000939393000000000000000000000000003399CC00FFFF + FF00A9DEF800A9DEF800A9DEF800A9DEF800A9DEF800A9DEF800FFFFFF00FFFF + FF00FFFFFF00FFFFFF0046B1E600000000000000000000000000000000006363 + 6300424242004242420042424200424242004242420042424200424242008484 + 840000000000000000000000000000000000000000005B402E00A0A0A0005B40 + 2E00A0A0A00000000000000000005B402E00A0A0A00000000000000000005B40 + 2E00A0A0A0005B402E00A0A0A00000000000000000006A514A00F8E7DC00E7C5 + B500E7C1AF00E7BCA900E7B7A300E7B39C00E7AF9700E6AB9100E5A78A00E3A2 + 8500DF9E810000000000939393000000000000000000000000003399CC00FFFF + FF00A9DEF800A9DEF800A9DEF800A9DEF800FFFFFF003399CC003399CC003399 + CC003399CC003399CC003399CC00000000000000000000000000000000008484 + 840095959500DEDEDE0084848400848484008484840084848400424242004242 + 42000000000000000000000000000000000000000000000000005B402E00A0A0 + A0000000000000000000000000005B402E00A0A0A00000000000000000000000 + 00005B402E00A0A0A0000000000000000000000000006A514A00F8E7DC004848 + C2004848C200E7C1B00048484800484848004848480048484800484848004848 + 4800E3A487000000000093939300000000000000000000000000000000003399 + CC00FFFFFF00FFFFFF00FFFFFF00FFFFFF003399CC0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A5A5A500A5A5A500A5A5A500A5A5A5006363630063636300424242000000 + 00000000000000000000000000000000000000000000000000005B402E005B40 + 2E00A0A0A000A0A0A0007C7D7D005B402E007C7D7D00A0A0A000A0A0A0005B40 + 2E005B402E00A0A0A000A0A0A00000000000000000006A514A00F8E7DC00E8D0 + C600E7CBBE00E7C7B700E7C3B300E7BEAC00E7BAA600E7B69F00E7B19900E7AD + 9300E5A88E000000000093939300000000000000000000000000000000000000 + 00003399CC003399CC003399CC003399CC000000000000000000000000000000 + 000000000000000000000000000000000000000000001F1E9A00000000000000 + 000000000000000000000000000000000000972A290000000000000000000000 + 000000000000000000000000000000000000000000007C7D7D007C7D7D006868 + 69005B402E005B402E005B402E005B402E005B402E005B402E005B402E006868 + 69007C7D7D007C7D7D00A0A0A00000000000000000006A514A00F8E7DC004848 + B0004848B000E8CCC0004848480048484800484848004848480048484800E7B3 + 9A00E6AE95000000000093939300000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001F1E9A001B1BD2001F1E9A000000 + 0000000000000000000000000000972A2900972A2900972A2900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005B402E00A0A0A00000000000000000000000 + 000000000000000000000000000000000000000000006A514A00F8E7DC00EBDC + D600EAD7CF00E9D2C700E8CDC100E7C8BA00E7C5B500E7C0AE00E7BBA700E7B7 + A300E7B39B000000000093939300000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001B1BD200000000001B1BD2001F1E + 9A0000000000000000000000000000000000972A290000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005B402E00A0A0A00000000000000000000000 + 000000000000000000000000000000000000000000006A514A00F8E7DC00F8E7 + DC00F8E7DC00F8E7DC00F8E7DC00F8E7DC00F8E7DC00F8E7DC00F8E7DC00F8E7 + DC00F8E7DC000000000093939300000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001B1B + D2006060EF00972A2900972A2900972A29000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000006A514A006A514A006A51 + 4A006A514A006A514A006A514A006A514A006A514A006A514A006A514A006A51 + 4A006A514A000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001B1BD2000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001414140014141400141414001414 + 14001414140014141400000000002A2AD1001414790000000000000000000000 + 0000000000000000000014147900000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000636363008F8FF9008181F5007273F1006463ED005655E9004B4BE5004343 + E1003D3DDC003737D8002E2FD200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000012658D003DA0CF003DA0CF003DA0 + CF003DA0CF0014141400000000004545FE002A2AD10014147900000000000000 + 000000000000141479009191D100000000000000000000000000000000000000 + 000000000000B0D0F0008FBFDF00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000636363009898FB008989F7007A7AF2006B6CEF005D5DEB005050E8004646 + E3004141DF003B3BDA003333D400000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000012658D00CCFFFF009FE2F0006ABE + DE003DA0CF001414140000000000000000004545FE002A2AD100141479000000 + 0000141479007979E20000000000000000000000000000000000000000000000 + 000000000000B0D0F0008FBFDF008FBFDF006FA0CF0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000636363009E9FFD009191F9008282F6007575F2006565ED005756E9004C4B + E6004545E2003F3EDD003737D800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000012658D0012658D0012658D001265 + 8D0012658D0012658D000000000000000000000000004545FE002A2AD1002A2A + B0002A2AD1000000000000000000000000000000000000000000000000000000 + 0000B0D0F000B0D0F0008FBFDF008FBFDF008FBFDF006FA0CF006FA0CF000000 + 000000000000000000000000000000000000000000000000000063636300B2E6 + F70063636300A5A6FF009898FB008A8AF7007C7CF3006D6EF0005E5FEC005152 + E8004847E4004141DF003B3BDA000000000000000000004B6D00004B6D000000 + 0000004B6D00004B6D0000000000004B6D00004B6D0000000000EF8E6300EF8E + 630000000000EF8E6300EF8E6300000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000141479002A2AD1002A2A + D100141479000000000000000000000000000000000000000000000000000000 + 0000B0D0F000B0D0F0008FBFDF008FBFDF008FBFDF006FA0CF006FA0CF006FA0 + CF006FA0CF00000000000000000000000000000000000000000063636300C3ED + FA0063636300A7A7FF00A1A0FD009393FA008484F6007575F2006667ED005959 + EA004D4DE7004545E2003F3FDD00000000000000000064FFFF0000AAFF000000 + 000000AAFF0000AAFF000000000000AAFF00004B6D0000000000EF8E6300EF8E + 630000000000EF8E6300EF8E6300000000001414140014141400141414001414 + 140014141400141414000000000000000000141479002A2AD1003414B1000000 + 00004545FE00141479000000000000000000000000000000000000000000B0D0 + F000B0D0F000B0D0F000B0D0F0008FBFDF00000000000000000030709F006FA0 + CF006FA0CF00000000000000000000000000000000000000000063636300D2F3 + FC0063636300A7A7FF00A7A7FF009A9BFC008C8DF7007E7EF4006F6FF0006060 + ED005353E8004948E4004242DF00000000000000000064FFFF0000AAFF000000 + 000000AAFF0000AAFF000000000000AAFF00004B6D0000000000EF8E6300EF8E + 630000000000EF8E6300EF8E63000000000012658D003DA0CF003DA0CF003DA0 + CF003DA0CF001414140000000000141479002A2AD1003414B100000000000000 + 0000000000007979E2001414790000000000000000000000000000000000B0D0 + F000B0D0F00000007F0000007F008FBFDF00000000007FCFFF0030709F000000 + 00000000000000000000000000000000000063636300B2E6F70063636300DEF9 + FF0063636300A7A7FF00A7A7FF00A2A2FE009494FA008586F6007877F2006969 + EE005A5BEB004E4EE7004646E200000000000000000064FFFF0000AAFF0000AA + FF0000AAFF0000AAFF0000AAFF0000AAFF00004B6D00EF8E6300EF8E6300EF8E + 6300EF8E6300EF8E6300EF8E63000000000012658D00CCFFFF009FE1F0006ABE + DE003DA0CF001414140000000000000000003414B10000000000000000000000 + 000000000000000000009191D100000000000000000000000000DFEFF000B0D0 + F00000007F0000007F0000007F008FBFDF003090CF007FCFFF007FCFFF003090 + CF0030709F0000000000000000000000000063636300C3EDFA0063636300E2FB + FF00636363006363630063636300636363006363630063636300636363006363 + 6300636363006363630063636300636363000000000064FFFF0000AAFF0000AA + FF0000AAFF0000AAFF0000AAFF0000AAFF00004B6D00EF8E6300EF8E6300EF8E + 6300EF8E6300EF8E6300EF8E63000000000012658D0012658D0012658D001265 + 8D0012658D0012658D0000000000000000000000000014147900141493000000 + 0000000000000000000000000000000000000000000000000000DFEFF000B0D0 + F000B0D0F000B0D0F00000007F008FBFDF008FBFDF0030709F007FCFFF007FCF + FF00E070A000B0303000000000000000000063636300D2F3FC0063636300E2FB + FF00E2FBFF00D2F3FC00BAE9F800A2DEF5008BD4F20073CBEF005DC2EC004FB9 + E40048AEDB000000000000000000000000000000000064FFFF0000AAFF0000AA + FF0000AAFF0000AAFF0000AAFF0000AAFF00004B6D00EF8E6300EF8E6300EF8E + 6300EF8E6300EF8E6300EF8E6300000000000000000000000000000000000000 + 00000000000000000000000000000000000014147900141479001414D1001817 + 97000000000000000000000000000000000000000000DFEFF000DFEFF000B0D0 + F000B0D0F000B0D0F00000007F008FBFDF008FBFDF00000000007FCFFF00E070 + A000E070A000E070A000B03030000000000063636300DEF9FF0063636300E2FB + FF00E2FBFF00DEF9FF00CAF1FC00B2E6F70099DCF30082D2F1006BC8EE0058BE + EA004CB5E2000000000000000000000000000000000064FFFF0064FFFF0064FF + FF0064FFFF0064FFFF0064FFFF0064FFFF00004B6D00EF8E6300EF8E6300EF8E + 6300EF8E6300EF8E6300EF8E6300000000001414140014141400141414001414 + 140014141400141414000000000014147900141479001414D1003414B1003D3D + CA002021A40000000000000000000000000000000000DFEFF000DFEFF0000000 + 0000B0D0F000B0D0F000B0D0F00000007F008FBFDF008FBFDF0000000000FF5F + 5F00FFCFE000E070A000E070A000B030300063636300E2FBFF00636363006363 + 6300636363006363630063636300636363006363630063636300636363006363 + 6300636363006363630000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000012658D003DA0CF003DA0CF003DA0 + CF003DA0CF0014141400000000001414D1001414D1003414B100000000007E7E + E3004545D2002D2DB300000000000000000000000000000000000000000000FF + FF000000000000000000B0D0F00000007F008FBFDF008FBFDF00000000000000 + 0000FF5F5F00FFCFE000E070A000E070A00063636300E2FBFF00E2FBFF00D2F3 + FC00BAE9F800A2DEF5008BD4F20073CBEF005DC2EC004FB9E40048AEDB000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000012658D00CCFFFF009FE1F0006ABE + DE003DA0CF001414140000000000000000003414B10000000000000000000000 + 00009191D1004C4CDB003839C2000000000000000000000000000000000000D0 + FF0000D0FF0000D0FF000000000000007F008FBFDF0000000000000000000000 + 000000000000FF5F5F00FFCFE000E070A00063636300E2FBFF00E2FBFF00DEF9 + FF00CAF1FC00B2E6F70099DCF30082D2F1006BC8EE0058BEEA004CB5E2000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000012658D0012658D0012658D001265 + 8D0012658D0012658D0000000000000000000000000000000000000000000000 + 000000000000000000005454E4004344D1000000000000000000000000000000 + 00000000000000FFFF0000000000B0D0F0008FBFDF0000000000000000000000 + 00000000000000000000FF5F5F00FFCFE0006363630063636300636363006363 + 6300636363006363630063636300636363006363630063636300636363006363 + 6300000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005B5BEE000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000FFCFE0000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000606060006060 + 6000606060006060600060606000606060006060600060606000606060006060 + 6000606060006060600060606000606060000000000000000000C7C7C700D7D7 + D7000000000000000000000000000000000000000000B7B7B7009F9F9F009F9F + 9F00B7B7B7000000000000000000000000000000000000000000626162006261 + 6200626162006261620062616200626162006261620062616200626162006261 + 6200626162006261620062616200000000001414140014141400141414001414 + 1400141414001414140000000000681414006814140068141400681414006814 + 1400681414006814140068141400000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000606060000000000000000000A7A7A700A7A7 + A700D7D7D7000000000000000000000000009C63630000000000000000000000 + 00009F9F9F0000000000000000000000000000000000512A2A00512A2A00512A + 2A00512A2A00512A2A00512A2A003737AD003737AD003737AD003737AD00512A + 2A00512A2A00512A2A00626162000000000012658D003DA0CF003DA0CF003DA0 + CF003DA0CF001414140000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000002C5273008FE5FF0082DCFF0082CA + EE00315C8200AAAFFE009EA4FD009199FC00868EFB007B83FA006E77F800626B + F8005861F600515BF6000000000060606000000000009C636300000000008787 + 8700A7A7A700D7D7D70000000000000000009C636300FFFF9900FFCC99000000 + 00009F9F9F0000000000000000000000000000000000512A2A00000000000000 + 0000512A2A0000000000000000003737AD0000000000000000003737AD000000 + 000000000000512A2A00626162000000000012658D00CCFFFF009FE1F0006ABE + DE003DA0CF001414140000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000002C5273008FE5FF0082DCFF0082CA + EE00315C8200AAAFFD009EA4FC009298FC00868DFB007B82F9006E77F800626C + F7005861F600515BF6000000000060606000000000009C6363009C6363000000 + 000087878700A7A7A700D7D7D700000000009C636300FFFF9900FFCC99000000 + 00009F9F9F0000000000000000000000000000000000512A2A00000000000000 + 00000000000000000000000000003737AD000000000000000000000000000000 + 000000000000512A2A00000000000000000012658D0012658D0012658D001265 + 8D0012658D0012658D0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000002C527300315C8200315C8200315C + 8200315C82008231310082313100823131008231310082313100823131008231 + 310082313100823131000000000060606000000000009C636300FFFFCC009C63 + 63000000000087878700A7A7A700D7D7D7009C636300FFFF9900FFCC99000000 + 00009F9F9F000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000002C5273008FE5FF0082DCFF0082CA + EE00315C8200E3AF7200DBA66B00D29D6200CA935B00C28A5300B8814A00B076 + 4200A86E3B00A26836000000000060606000000000009C636300FFFFCC00FFCC + 99009C6363000000000087878700A7A7A7009C636300FFFF9900FFCC99000000 + 00009F9F9F000000000000000000000000000000000000000000000000006261 + 6200626162006261620062616200626162006261620062616200626162006261 + 6200626162006261620062616200000000001414140014141400141414001414 + 1400141414001414140000000000681414006814140068141400681414006814 + 1400681414006814140068141400000000002C5273008FE5FF0082DCFF0082CA + EE00315C8200E3AF7200DCA76A00D29D6300C9935A00C18A5300B8804A00AF76 + 4200A86E3B00A26836000000000060606000000000009C636300FFFFCC00FFCC + 9900FFCC99009C636300000000008F8F8F009C636300FFFF9900FFCC99000000 + 00009F9F9F000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000626162000000000012658D003DA0CF003DA0CF003DA0 + CF003DA0CF001414140000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000002C527300315C8200315C8200315C + 8200315C82008231310082313100823131008231310082313100823131008231 + 310082313100823131000000000060606000000000009C636300FFFFCC00FFCC + 9900FFCC9900FFFF99009C636300000000009C636300FFFF9900FFCC99000000 + 00009F9F9F000000000000000000000000000000000000000000F3DF6B00F1DB + 690097393900E9C76100E7BE5F0097393900E0AF5A00DEA8570097393900D899 + 5200D48D4E0000000000626162000000000012658D00CCFFFF009FE1F0006ABE + DE003DA0CF001414140000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000002C5273008FE5FF0082DCFF0082CA + EE00315C8200AAAFFE009EA4FD009199FC00868EFB007B83FA006E77F800626B + F8005861F600515BF6000000000060606000000000009C636300FFFFCC00FFCC + 9900FFFF9900FFCC990000000000D7D7D7009C636300FFFF9900FFCC99000000 + 00009F9F9F000000000000000000000000000000000000000000F4E26C00F3DF + 6A0097393900EDD06500EAC9630097393900E5B95E00E1B25A0097393900DCA3 + 5600D99B530000000000626162000000000012658D0012658D0012658D001265 + 8D0012658D0012658D0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000002C5273008FE5FF0082DCFF0082CA + EE00315C8200AAAFFD009EA4FC009298FC00868DFB007B82F9006E77F800626C + F7005861F600515BF6000000000060606000000000009C636300FFFFCC00FFFF + 9900FFCC990000000000D7D7D700000000009C636300FFFF9900FFCC99000000 + 00009F9F9F000000000000000000000000000000000000000000F3DF6B00F1DB + 690097393900EED46600ECCE640097393900E7BE5F00E4B65C0097393900DEA8 + 5700DBA055000000000062616200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000002C527300315C8200315C8200315C + 8200315C82008231310082313100823131008231310082313100823131008231 + 310082313100823131000000000060606000000000009C636300FFFFCC00FFCC + 990000000000D7D7D70000000000000000009C636300FFFF9900FFCC99000000 + 00009F9F9F000000000000000000000000000000000000000000F4E26C00F3DF + 6A0097393900EED46600ECCE640097393900E7BE5F00E4B65C0097393900DEA8 + 5700DBA055000000000062616200000000001414140014141400141414001414 + 1400141414001414140000000000681414006814140068141400681414006814 + 1400681414006814140068141400000000002C5273008FE5FF0082DCFF0082CA + EE00315C8200E3AF7200DBA66B00D29D6200CA935B00C28A5300B8814A00B076 + 4200A86E3B00A26836000000000060606000000000009C636300FFCC99000000 + 0000D7D7D7000000000000000000000000009C636300FFFF9900FFCC99000000 + 00009F9F9F000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000626162000000000012658D003DA0CF003DA0CF003DA0 + CF003DA0CF001414140000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000002C5273008FE5FF0082DCFF0082CA + EE00315C8200E3AF7200DCA76A00D29D6300C9935A00C18A5300B8804A00AF76 + 4200A86E3B00A26836000000000060606000000000009C63630000000000D7D7 + D700000000000000000000000000000000009C636300FFFF9900FFCC99000000 + 0000B7B7B7000000000000000000000000000000000000000000ACE5F600A4E1 + F6009BDFF600414141008CD8F60085D6F6007ED3F600414141006FCEF60068CA + F60061C8F60000000000626162000000000012658D00CCFFFF009FE1F0006ABE + DE003DA0CF001414140000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000002C5273002C5273002C5273002C52 + 73002C5273002C5273002C5273002C5273002C5273002C5273002C5273002C52 + 73002C5273002C5273002C52730000000000000000009C636300000000000000 + 0000000000000000000000000000000000009C6363009C6363009C6363009C63 + 6300000000000000000000000000000000000000000000000000ACE5F600A4E1 + F6009BDFF600414141008CD8F60085D6F6007ED3F600414141006FCEF60068CA + F60061C7F60000000000626162000000000012658D0012658D0012658D001265 + 8D0012658D0012658D0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000717171007171 + 7100717171007171710071717100717171007171710071717100717171007171 + 7100717171007171710071717100000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00004A4A4A00C6C6C60000000000747474009B9B9B0074747400000000000000 + 000000000000000000000000000000000000000000003737F4003737F4003737 + F4003737F4003737F4003737F4003737F4003737F4003737F4003737F4003737 + F4003737F4003737F4003737F4003737F400000000000D0D0D000D0D0D000D0D + 0D000D0D0D000D0D0D000D0D0D000D0D0D000D0D0D000D0D0D000D0D0D000D0D + 0D000D0D0D000D0D0D0071717100000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000004A4A4A004A4A + 4A00000000009494940068686800ECECEC00ECECEC00E7E7E7009B9B9B007474 + 740000000000000000000000000000000000000000003737F4003737F4003737 + F4003737F4003737F4003737F4003737F4003737F4003737F4003737F4003737 + F4003737F4003737F4003737F4003737F400000000006A6A6A00E8E8E800E3E3 + E300DDDDDD00D4D4D400CBCBCB00C1C2C200B8B8B800B0B0AF00A7A8A7009E9E + 9F00949495000D0D0D007171710000000000000000001384BB00D8FBFB000000 + 000000000000681414006814140068141400000000001384BB00D8FBFB000000 + 0000000000006814140068141400681414004A4A4A004A4A4A004A4A4A004A4A + 4A009494940068686800E7E7E700C9C9C900000000008C734200ECECEC00E7E7 + E7009B9B9B00747474000000000000000000000000003C3C3C003737F4003737 + F4003737F4003737F4003737F4003737F4003737F4003737F4003737F4003737 + F4003737F4003737F4003737F4003737F400000000006A6A6A00E8E8E8000D0D + 0D000D0D0D000D0D0D000D0D0D000D0D0D000D0D0D000D0D0D000D0D0D000D0D + 0D00949594000D0D0D007171710000000000000000001384BB00D8FBFB000000 + 000000000000000000000000000000000000000000001384BB00D8FBFB000000 + 00000000000000000000000000000000000000000000000000004A4A4A000000 + 00004F4F4F00DADADA00818181000000000039526300E7E7E700ECECEC008C73 + 4200ECECEC00DADADA000000000000000000000000003C3C3C003737F4003737 + F4003737F4003737F4003737F4003737F4003737F4003737F4003737F4003737 + F4003737F4003737F4003737F4003737F400000000006A6A6A00E8E8E800E3E4 + E3000D0D0D000D0D0D00CBCBCB00C2C1C200B9B8B800B0AFB000A8A8A8000D0D + 0D00949495000D0D0D007171710000000000000000001384BB001384BB000000 + 000000000000000000000000000000000000000000001384BB001384BB000000 + 0000000000000000000000000000000000000000000000000000000000004F4F + 4F00D2D2D200C9C9C90074747400638CA50010101000E7E7E7008C73420000E1 + E100ECECEC0000000000000000000000000000000000F4B163003C3C3C003737 + F4003737F4003737F4003737F4003737F4003737F4003737F4003737F4003C3C + 3C003737F4003737F4003737F4003737F400000000006A6A6A00E8E8E800E3E3 + E300DCDDDC000D0D0D000D0D0D00C2C2C200B9B8B800B0B0AF00A7A8A8009F9E + 9E00959494000D0D0D0071717100000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000B3B3 + B300B3B3B300818181000000000039526300DADADA00DADADA008C734200E7E7 + E70000E1E10000000000000000000000000000000000F4B16300F4B163003C3C + 3C003737F4003737F4003737F4003737F4003737F4003737F4003C3C3C003C3C + 3C003737F4003737F4003737F4003737F400000000006A6A6A00E8E8E800E4E3 + E400DCDCDC00D3D4D4000D0D0D000D0D0D00B8B8B800B0B0B000A8A7A8009E9E + 9F00949594000D0D0D0071717100000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000F7F7F7000000 + 00006868B3006868B300638CA5000000000000000000DADADA00DADADA000000 + 00000000000000E1E1000000000000000000000000003C3C3C00F4B16300F4B1 + 63003C3C3C003737F4003737F4003737F4003C3C3C003C3C3C00F4B16300F4B1 + 63003C3C3C003C3C3C003737F4003737F400000000006A6A6A00E8E8E800E3E4 + E300DCDCDC00D4D4D400CBCBCB000D0D0D000D0D0D00AFAFAF00A8A7A7009E9E + 9E00959595000D0D0D007171710000000000000000001384BB00D8FBFB000000 + 000000000000681414006814140068141400000000001384BB00D8FBFB000000 + 0000000000006814140068141400681414000000000000000000F7F7F700F7F7 + F700F7F7F70000000000395263004F4F81004F5A9B006868B300000000000000 + 0000000000000000000000E1E10000000000000000003C3C3C00F4B16300F4B1 + 6300F4B163003C3C3C003C3C3C003C3C3C00F4B16300F4B163003C3C3C003C3C + 3C00F4B16300F4B163003C3C3C003737F400000000006A6A6A00E8E8E800E3E4 + E400DDDDDC00D4D4D4000D0D0D000D0D0D00B8B8B800B0AFB000A7A7A8009E9E + 9E00959495000D0D0D007171710000000000000000001384BB00D8FBFB000000 + 000000000000000000000000000000000000000000001384BB00D8FBFB000000 + 00000000000000000000000000000000000000000000F7F7F700F7F7F7009494 + 9400000000000000000000000000000000004F4F81004F4F81004F5A9B006868 + B3000000000000000000000000000000000000000000000000003C3C3C00F4B1 + 6300F4B163003C3C3C00F4B16300F4B16300F4B163003C3C3C00000000000000 + 00003C3C3C00F4B16300F4B163003C3C3C00000000006A6A6A00E8E8E800E4E3 + E300DDDCDC000D0D0D000D0D0D00C2C2C200B9B8B800B0AFAF00A8A8A8009E9E + 9E00949494000D0D0D007171710000000000000000001384BB001384BB000000 + 000000000000000000000000000000000000000000001384BB001384BB000000 + 00000000000000000000000000000000000000000000F7F7F70000000000BDA5 + 7B00E7CE9C00E7CE9C0042290000F7F7F700F7F7F70000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000003C3C + 3C00F4B16300F4B16300F4B16300F4B163003C3C3C0000000000000000000000 + 0000000000003C3C3C00F4B16300F4B16300000000006A6A6A00E8E8E800E3E3 + E3000D0D0D000D0D0D00CBCBCB00C2C2C100B8B8B800AFB0AF00A8A7A8000D0D + 0D00949495000D0D0D0071717100000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F7F7F700F7F7F7006B522100C6AD + 8400D6BD8C00DEC69400E7CE9C0000000000F7F7F70000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00003C3C3C00F4B16300F4B16300F4B163003C3C3C0000000000000000000000 + 000000000000000000003C3C3C00F4B16300000000006A6A6A00E8E8E8000D0D + 0D000D0D0D000D0D0D000D0D0D000D0D0D000D0D0D000D0D0D000D0D0D000D0D + 0D00949594000D0D0D0071717100000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F7F7F700846B3900F7DE + AD00846B3900A58C5A00DEC69400000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00003C3C3C00F4B16300F4B163003C3C3C000000000000000000000000000000 + 00000000000000000000000000003C3C3C00000000006A6A6A00E8E8E800E3E3 + E300DCDCDC00D4D4D400CBCBCB00C2C2C100B9B8B900AFAFB000A8A8A7009F9E + 9F00959495000D0D0D007171710000000000000000001384BB00D8FBFB000000 + 000000000000681414006814140068141400000000001384BB00D8FBFB000000 + 000000000000681414006814140068141400000000000000000000000000BDA5 + 7300AD945A008C7342004A310000949494000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003C3C3C003C3C3C00000000000000000000000000000000000000 + 000000000000000000000000000000000000000000006A6A6A006A6A6A006A6A + 6A006A6A6A006A6A6A006A6A6A006A6A6A006A6A6A006A6A6A006A6A6A006A6A + 6A006A6A6A006A6A6A000000000000000000000000001384BB00D8FBFB000000 + 000000000000000000000000000000000000000000001384BB00D8FBFB000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000846B3900846B390000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003C3C3C0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001384BB001384BB000000 + 000000000000000000000000000000000000000000001384BB001384BB000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000002121 + CD0023239B0023239B000C0C5D0000000000000000000000000000000000671D + 0F0000000000671D0F0000000000000000000000000000000000000000003939 + 3900080808006363630000000000000000000000000000000000393939000808 + 0800636363000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000B3D7F0008EBAD9000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000002121CD00218C + C400218CC40021577600215776000C0C5D0000000000671D0F00671D0F00671D + 0F00671D0F00671D0F00671D0F0000000000000000000000000039393900DEDE + DE009C9C9C005252520008080800080808000808080039393900DEDEDE009C9C + 9C00525252000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000B3D7F0008EBAD9008EBAD9006BA5CE00000000000000 + 000000000000000000000000000000000000000000002121CD006FFAFF0021B8 + FF0021B8FF0021B8FF000F8FCA00215776000C0C5D000000000000000000671D + 0F0000000000671D0F0000000000671D0F0000000000000000006B6B6B009C9C + 9C00ADADAD00C6C6C600CECECE00CECECE00CECECE00CECECE00ADADAD009C9C + 9C009C9C9C00393939000000000000000000000000006D420000FFEAC9006D42 + 00006D4200006D4200006D4200006D4200006D4200006D4200006D4200006D42 + 00006D4200000000000000000000000000000000000000000000000000000000 + 000000000000B3D7F000B3D7F0008EBAD90000007F0000007F006BA5CE006BA5 + CE00000000000000000000000000000000002121CD006FFAFF0021D1FF0021D1 + FF0021D1FF0021B8FF0021B8FF000F8FCA00215776000C0C5D0000000000671D + 0F0000000000671D0F0000000000671D0F000000000000000000ADADAD00F7F7 + F700ADADAD00ADADAD00ADADAD00ADADAD00DEDEDE00FFFFFF0084848400FFFF + FF009C9C9C00000000000000000000000000000000006D420000FFEAC900FF9C + 0000FF9C0000FF9C0000FF9C0000FF9C0000FF9C0000FF9C0000FF9C0000FF9C + 00006D4200000000000000000000000000000000000000000000000000000000 + 000000000000B3D7F000B3D7F00000007F0000007F0000007F006BA5CE006BA5 + CE006BA5CE006BA5CE0000000000000000002121CD006FFAFF0021D1FF0021D1 + FF0021D1FF0021B8FF0021B8FF0021B8FF00215776000C0C5D00671D0F00671D + 0F00671D0F00671D0F00671D0F00000000000000000000000000ADADAD00FFFF + FF00FFFFFF00FFFFFF00DEDEDE00DEDEDE00CECECE00C6C6C60052525200C6C6 + C6009C9C9C00000000000000000000000000000000006D420000FFEAC900FFEA + C900FFEAC900FFEAC900FFEAC900FFEAC900FFEAC900FFEAC900FFEAC900FFEA + C900FFEAC9000000000000000000000000000000000000000000000000000000 + 0000B3D7F000B3D7F000B3D7F000B3D7F0008EBAD90000007F006BA5CE006BA5 + CE006BA5CE006BA5CE0000000000000000009595FF006FFAFF006FFAFF0021D1 + FF0021D1FF0021D1FF0021D1FF0021B8FF000F8FCA00671D0F0000000000671D + 0F0000000000671D0F0000000000000000000000000039393900DEDEDE00CECE + CE00C6C6C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6 + C600C6C6C600393939000000000000000000000000006D4200006D4200006D42 + 00006D4200006D4200006D4200006D4200006D4200006D4200006D4200006D42 + 00006D4200000000000000000000000000000000000000000000000000000000 + 0000B3D7F000B3D7F00000007F0000007F008EBAD90000007F006BA5CE006BA5 + CE006BA5CE00000000000000000000000000000000009595FF006FFAFF006FFA + FF0021D1FF0021D1FF0021D1FF000F8FCA0023239B00671D0F0000000000671D + 0F0000000000671D0F0000000000000000000000000000000000DEDEDE00DEDE + DE00F7F7F700F7F7F700F7F7F700F7F7F700F7F7F700FFFFFF00FFFFFF00FFFF + FF00DEDEDE005252520000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D9EA + F600B3D7F00000007F0000007F0000007F008EBAD9008EBAD90000007F006BA5 + CE006BA5CE0000000000000000000000000000000000000000009595FF006FFA + FF006FFAFF0021B8FF000F8FCA0023239B000000000000000000671D0F00671D + 0F00671D0F00671D0F00671D0F00671D0F000000000000000000DEDEDE006B6B + 6B00DFAE9400E0B19700DFAE9400DAA48900D2967A00C9866800C1785800BE71 + 5000CECECE006363630000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D9EA + F600B3D7F000B3D7F000B3D7F00000007F008EBAD9008EBAD90000007F006BA5 + CE00000000000000000000000000000000000000000000000000000000009595 + FF002121CD0023239B0023239B0000000000000000000000000000000000671D + 0F0000000000671D0F0000000000000000000000000000000000DEDEDE006B6B + 6B00E9C3AC00EBC9B300E9C2AC00E2B59D00DAA48A00CF917500C47F5F00BE71 + 5000CECECE006363630000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000D9EAF600D9EA + F600B3D7F000B3D7F000B3D7F00000007F008EBAD9008EBAD90000007F006BA5 + CE00000000000000000000000000000000000000000000000000000000005D5D + 5D00FFFFFF008888890021212100000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000DEDEDE006B6B + 6B00F2D7C200F7E0CC00F3D7C200E9C2AC00DDAE9400D3987E00C9846600C074 + 5300CECECE00636363000000000000000000000000006D420000FFEAC9006D42 + 00006D4200006D4200006D4200006D4200006D4200006D4200006D4200006D42 + 00006D4200000000000000000000000000000000000000000000D9EAF600D9EA + F60000000000B3D7F000B3D7F000B3D7F00000007F008EBAD9008EBAD9000000 + 0000000000000000000000000000000000000000000000000000000000002121 + CD002121CD0023239B0023239B00000000000000000000000000000000000000 + 00002121CD000C0C8D000A0A6400000000000000000000000000F7F7F7006B6B + 6B00F7DFCD00FFF0E000F7E0CC00EBC9B300E0B19700D49C8100C9866700C075 + 5500CECECE00636363000000000000000000000000006D420000FFEAC900FF9C + 0000FF9C0000FF9C0000FF9C0000FF9C0000FF9C0000FF9C0000FF9C0000FF9C + 00006D4200000000000000000000000000000000000000000000000000000000 + 000000FFFF000000000000000000B3D7F00000007F008EBAD9008EBAD9000000 + 000000000000000000000000000000000000000000002121CD002121CD002121 + E9002121E9002121E9002121E90023239B0023239B0000000000000000000000 + 00002121CD000C0C8D000A0A6400000000000000000000000000FFFFFF006B6B + 6B00F2D7C200F7E0CC00F2D7C300E9C2AC00DDAE9400D4987D00C8846500BF74 + 5300CECECE00636363000000000000000000000000006D420000FFEAC900FFEA + C900FFEAC900FFEAC900FFEAC900FFEAC900FFEAC900FFEAC900FFEAC900FFEA + C900FFEAC9000000000000000000000000000000000000000000000000000000 + 000000D7FE0000D7FE0000D7FE000000000000007F008EBAD900000000000000 + 0000000000000000000000000000000000009595FF002121E90089CDFF0089CD + FF0089CDFF0089CDFF0089CDFF0089CDFF002121E90023239B00000000000000 + 00002121CD000C0C8D000A0A6400000000000000000000000000FFFFFF006B6B + 6B006B6B6B006B6B6B006B6B6B006B6B6B006B6B6B006B6B6B006B6B6B008484 + 8400C6C6C600393939000000000000000000000000006D4200006D4200006D42 + 00006D4200006D4200006D4200006D4200006D4200006D4200006D4200006D42 + 00006D4200000000000000000000000000000000000000000000000000000000 + 0000000000000000000000FFFF0000000000B3D7F0008EBAD900000000000000 + 0000000000000000000000000000000000009595FF002121E9002121E9002121 + E9002121E9002121E9002121E9002121E9002121E90023239B00000000002121 + CD000C0C8D000C0C8D000A0A64000A0A64000000000000000000FFFFFF00DEDE + DE00DEDEDE00DEDEDE00DEDEDE00DEDEDE00DEDEDE00CECECE00CECECE00CECE + CE00CECECE003939390000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000009595FF002121E90089CDFF0089CD + FF0089CDFF0089CDFF0089CDFF0089CDFF002121E90023239B00000000000000 + 00002121CD000C0C8D000A0A64000000000000000000636363009C9C9C00C6C6 + C600CECECE00CECECE00CECECE00C6C6C600ADADAD00ADADAD00ADADAD00ADAD + AD00848484003939390000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000009595FF007B7BF9007B7BF9007B7B + F9007B7BF9007B7BF9007B7BF9007B7BF9007B7BF9007B7BF900000000000000 + 0000000000002121CD0000000000000000000000000000000000393939005252 + 5200ADADAD00ADADAD006B6B6B00525252005252520052525200525252005252 + 5200393939000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000392A1A0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000392A1A00A3948000A3948000A394 + 8000AA9D8B00AA9D8B00AA9D8B00AA9D8B00AA9D8B00AA9D8B00AA9D8B00AA9D + 8B00AA9D8B00AA9D8B00AA9D8B00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000392A1A0096877200968772009687 + 7200BFB3A300BFB3A300BFB3A3002F221300BFB3A300BFB3A300BFB3A300BFB3 + A300BFB3A300BFB3A300BFB3A30000000000B6AA9C00E3DED8002E211600C3B4 + AD00C6BCB100BFB4A8009A8B7B009A8B7B00BDB2A500BDB2A500BDB2A500BDB2 + A500BDB2A500BDB2A500BDB2A500000000000000000000000000000000000000 + 00000000000000000000B3DEF500000000000000000000000000000000000000 + 00000000000000000000000000000000000098671D0098671D006D4200006D42 + 00006D4200006D4200006D4200006D4200006D4200006D4200006D4200006D42 + 00006D4200006D4200006D42000000000000392A1A0091806B0091806B009180 + 6B009586720000000000000000000000000000000000BFB3A300BFB3A300BFB3 + A3000037090000831300BFB3A30000000000B1A49600E3DED80041312300C1B7 + AB00C4BFB400BCB6AA008F7F6E008F7F6E00BDB2A500BDB2A500BDB2A500BDB2 + A500BDB2A500BDB2A500BDB2A500000000000000000000000000000000000000 + 000000000000B3DEF500B3DEF500B3DEF5000000000000000000000000000000 + 00000000000000000000000000000000000098671D00FFEAC900C2945700C294 + 5700C2945700C2945700C2945700C2945700C2945700C2945700C2945700C294 + 5700C2945700C29457006D42000000000000392A1A008D7C67008D7C67008D7C + 6700FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF0000000000AC9F9000E3DED80041312300BFB9 + AD00C4BFB400BCB6AA0038291C00000000000000000000000000000000000000 + 00000000000000000000CFC6BC00000000000000000000000000000000000000 + 0000B3DEF500B3DEF500AD6D6600B3DEF500B3DEF50000000000000000000000 + 00000000000000000000000000000000000098671D00FFEAC900C29457000000 + 0000FFFFFF0000000000FFFFFF0000000000FFFFFF0000000000FFFFFF00FFFF + FF00C6C6C600000000006D42000000000000392A1A00392A1A00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000A89A8B00E3DED80041312300C1B7 + AB00C6BCB100BFB4A800B1A59C00A0928800A2948400FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF000000000000000000000000000000000000000000B3DE + F500B3DEF500AD6D6600FFFFFF00AD6D66000000000000000000000000000000 + 00000000000000000000000000009900000098671D00FFEAC900C2945700C294 + 5700C2945700C2945700C2945700C2945700C2945700C2945700C2945700C294 + 5700C2945700C29457006D420000000000000000000000000000392A1A00A79A + 8800A79A8800D0C6BB00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF000000000000000000A3958500E3DED80041312300C1B7 + AB00C4BAB400BFB4A800B6A59C009C8D7D009C8D7D005C4B3A00EF9C0000E291 + 0000D68800007968520000000000000000000000000000000000B3DEF500B3DE + F500AD6D6600FFFFFF00FFFFFF000000000074B8DC0074B8DC0074B8DC0074B8 + DC0074B8DC0074B8DC0074B8DC009900000098671D00FFEAC900C29457000000 + 0000FFFFFF0000000000FFFFFF0000000000FFFFFF0000000000FFFFFF000000 + 0000FFFFFF00000000006D420000000000000000000000000000392A1A00A495 + 8300A4958300D0C6BB005D4C3700796851007968510079685100796851007968 + 510079685100FFFFFF000000000000000000A08D8200E3DED80041312300C1B7 + AB00C6BCB100D5CEC500B3A7990092887200928878005C4B3A00F8A20000ED97 + 0000DF8F000079685200000000000000000000000000B3DEF500B3DEF500AD6D + 6600FFFFFF00FFFFFF00000000003399CC00B3DEF50000000000000000003399 + CC00B3DEF500B3DEF500B3DEF5009900000098671D00FFEAC900C2945700C294 + 5700C2945700C2945700C2945700C2945700C2945700C2945700C2945700C294 + 5700C2945700C29457006D420000000000000000000000000000392A1A00A093 + 7F00A0937F00D0C6BB005D4C3700EEB54500E6AF3F00DFA83800D89F2F00D197 + 280079685100FFFFFF000000000000000000978D7800E3DED80041312300C1B7 + AB00C4BAB40000000000B1AA97008D826C00917D6C005C4B3A00FFA80000F6A0 + 0000E99700007968520000000000000000000000000000000000B3DEF500B3DE + F500AD6D66000000000000000000000000000000000000000000FFFFFF000000 + 000000000000B3DEF500B3DEF5009900000098671D00FFEAC90000000000C6C6 + C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C600C2945700C294 + 5700C2945700C29457006D420000000000000000000000000000392A1A009E8F + 7B009E8F7B00D0C6BB005D4C3700F3BC4C00EDB44600E6AD3D00DEA53500D89C + 2E0079685100FFFFFF00000000000000000098897300E3DED80041312300BFB9 + AD00C6BCB10000000000B6AA970038291C008B7B6A00CFC6BC00CFC6BC00CFC6 + BC00CFC6BC00CFC6BC000000000000000000000000000000000000000000B3DE + F500B3DEF500AD6D6600000000003399CC003399CC0000000000000000003399 + CC00B3DEF500B3DEF500000000009900000098671D00FFEAC90000000000FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C6C6C600C2945700C294 + 5700C2945700C29457006D420000000000000000000000000000392A1A009588 + 740095887400D0C6BB005D4C3700F7C25200F2BB4B00EAB34500E5AC3C00DEA5 + 350079685100FFFFFF00000000000000000090856F00E3DED80041312300C3B4 + AD00C6BCB10000000000B6A59700A5928200D5CEC50000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B3DEF500B3DEF500AD6D660000000000B3DEF5003399CC003399CC00B3DE + F500B3DEF500B3DEF500000000000000000098671D00FFEAC900000000000000 + 0000000000000000000000000000000000000000000000000000C2945700C294 + 5700C2945700C29457006D420000000000000000000000000000392A1A009485 + 700094857000D0C6BB005D4C3700FBC75700F6C15100EFBA4A00EBB44400E5AB + 3C0079685100FFFFFF0000000000000000008F7F6E00E3DED80041312300C1B7 + AB00C6BCB10000000000B6AA970000360800D5CEC50000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000B3DEF500B3DEF500AD6D660000000000B3DEF500B3DEF500B3DE + F500B3DEF50000000000000000000000000098671D00FFEAC900FFEAC900FFEA + C900FFEAC900FFEAC900FFEAC900FFEAC900FFEAC900FFEAC900FFEAC900FFEA + C900FFEAC900FFEAC90098671D00000000000000000000000000392A1A009484 + 700094847000D0C6BB005D4C37005D4C37005D4C37005D4C37005D4C37005D4C + 37005D4C3700FFFFFF0000000000000000008C7C6B00E3DED80041312300C1B7 + AB00C8BAAE0000000000B1AA9C00A0978200D5CEC50000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000B3DEF500B3DEF5000000000000000000000000000000 + 0000000000000000000000000000000000000000000098671D0098671D009867 + 1D0098671D0098671D0098671D0098671D0098671D0098671D0098671D009867 + 1D0098671D0098671D0098671D0000000000000000000000000000000000392A + 1A0094847000D0C6BB00D0C6BB00D0C6BB00D0C6BB00D0C6BB00D0C6BB00D0C6 + BB00D0C6BB00D0C6BB0000000000000000008B7B6A00E3DED80041312300C1B7 + AB00C6BCB10000000000B6A59C00A2948400D5CEC50000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000B3DEF500B3DEF500B3DEF500000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000392A1A00392A1A00392A1A00392A1A00392A1A00392A1A00392A1A00392A + 1A00392A1A00392A1A00000000000000000038291C00E3DED80083736200E3DE + D800E3DED800E3DED800E3DED800E3DED800D5CEC50000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000B3DEF50000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000626162006261620062616200626162006261620062616200626162006261 + 6200626162006261620062616200626162000000000000000000000000004D75 + 6300141414001414140035483F00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000004A84BD004A84BD0084BDFF000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000003037A000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000006261620000000000000000001414140075B4 + 7C0075B57C0075B57B0035483F00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000004A84BD004A84BD0084BDFF00006B + 840000000000000000000000000000000000593A0E00FFDECF00915535009155 + 3500915535000000000003037A0003037A0003037A0003037A0003037A000303 + 7A00000000000000000000000000000000000000000000000000000000000000 + 00000808FF000000000044B8E9003CB5E7008000000027A4D900259FD3008000 + 00001D8EC1001A8ABC000000000062616200000000001414140077BA830079BC + 850078BD850079BC840035483F00000000000000000000000000141414001414 + 1400000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000216B004A84BD0084BDFF00006B + 8400006B8400000000000000000000000000593A0E00FFDECF00FFA09000FFA0 + 900091553500000000000000000003037A000000000000000000000000000000 + 000003037A000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000626162004D7563007BC088007BC38C007DC4 + 8E007DC68F0035483F0035483F0000000000000000001414140074B47A0072B0 + 7500141414000000000000000000000000000000000000000000000000000021 + 6B00000000000000000000000000000000004A84BD004A84BD0084BDFF00006B + 8400006B8400006B84000000000000000000593A0E00FFDECF00FFDECF00FFDE + CF00FFA090000000000000000000000000000000000000000000000000000000 + 000003037A000000000000000000000000000000000000000000000000000000 + 0000E4E4E40000000000FFA83700FF9E340080000000FF732600FF6923008000 + 0000FF311000FF230B000000000062616200141414007EC791007FCB960081CD + 980035483F000000000000000000000000001414140079BF870077B9810073B4 + 790071AF7400141414000000000000000000000000004A84BD004A84BD000021 + 6B0000216B0000000000000000000000000000216B004A84BD0084BDFF00006B + 8400006B8400006B84000000000000000000593A0E00593A0E00593A0E00593A + 0E00593A0E00593A0E0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000E7E8E70000000000FFB13B00FFA7370080000000FF7D2900FF7125008000 + 0000FF3D1400FF2F0F0000000000626162001414140082CF9A0083D29E003548 + 3F00000000000000000000000000141414007FCA95007CC58E007ABF870076B8 + 7F0073B2790071AD730014141400000000000000000000216B004A84BD000021 + 6B0000216B0000216B0000000000000000004A84BD004A84BD0084BDFF00006B + 8400006B8400006B84000000000000000000000000000000000003037A000000 + 0000000000000000000003037A0003037A0003037A00000000000E395900CFFF + FF0059B7FE0059B7FE0059B7FE000000000000000000000000000000000046E3 + FF0046E3FF000000000080000000800000008000000080000000800000008000 + 0000800000008000000000000000626162001414140085D6A20088DAA7003548 + 3F00000000000000000035483F0035483F0035483F00141414007DC48C0078BD + 840035483F0035483F0035483F0035483F00000000004A84BD004A84BD000021 + 6B0000216B004A84BD004A84BD004A84BD0000216B0000216B0000216B00006B + 8400006B8400006B840000000000000000000000000003037A0003037A000303 + 7A00000000000000000003037A0003037A0000000000000000000E395900CFFF + FF00CFFFFF00CFFFFF0090FFFF000000000046E3FF0000000000000000003C3C + 3C0046E3FF000000000046E3FF0046E3FF0080000000FFAA3800FFA035008000 + 0000FF752700FF6A230000000000626162001414140088DBA9008BE1AF003548 + 3F000000000000000000000000000000000000000000141414007EC892007AC0 + 880035483F000000000000000000000000000000000000216B004A84BD000021 + 6B004A84BD004A84BD0000216B00B3BDD30084BDFF0084BDFF0084BDFF000021 + 6B00006B8400006B84000000000000000000000000000000000003037A000000 + 0000000000000000000003037A000000000003037A00000000000E3959000E39 + 59000E3959000E3959000E3959000E3959003C3C3C0046E3FF00000000003C3C + 3C0046E3FF0046E3FF003C3C3C0046E3FF0080000000FFB33C00FFA837008000 + 0000FF7D2900FF7326000000000062616200141414008BE1AF008FE8B7003548 + 3F0000000000000000000000000000000000000000001414140080CB96007BC3 + 8C0035483F00000000000000000000000000000000004A84BD004A84BD000021 + 6B0000216B0000216B00DAEBFF000000DB00DAEBFF00DAEBFF00DAEBFF00DAEB + FF00B3BDD300B3D3DA00B3B3B30000000000000000000000000003037A000000 + 00000000000000000000000000000000000003037A0000000000000000000000 + 00000000000000000000000000000000000046E3FF003C3C3C00DAFAFF003C3C + 3C0046E3FF003C3C3C0046E3FF00000000000000000000000000000000000000 + 000000000000000000000000000062616200141414008EE5B40091ECBD007FC9 + 9300141414000000000000000000000000001414140072B0750081CD98007DC4 + 8E0035483F00000000000000000000000000000000004A84BD0000216B000021 + 6B0084BDFF00DAEBFF000000DB000000DB000000DB000000DB000000DB000000 + DB000000DB000000DB000000DB0000000000000000000000000003037A000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000003C3C3C003C3C3C003C3C3C00DAFA + FF003C3C3C0046E3FF00F8F8F800F5F6F500EBECEB00E8E9E80000000000D9D8 + D900D4D5D400D0D0D00000000000626162004D7563007FC9930092EEBF0095F5 + C8007FC9930014141400141414001414140072B0750086D6A20081CD990072B0 + 75004D7563000000000000000000000000000000000000216B0084BDFF0084BD + FF0084BDFF0084BDFF00FFFFFF000000DB00DAEBFF00DAEBFF00DAEBFF00DAEB + FF00B3B3B300B3B3B30000000000000000000000000000000000000000000000 + 00000000000000000000000000000E395900CFFFFF0059B7FE0059B7FE0059B7 + FE000000000000000000000000000000000046E3FF00DAFAFF003C3C3C0046E3 + FF00DAFAFF003C3C3C003C3C3C003C3C3C0046E3FF0000000000000000000000 + 000000000000000000000000000000000000000000001414140091EDBD0094F3 + C40095F5C70094F3C40091EDBD008DE5B40089DCAA0085D4A10072B075003548 + 3F0000000000000000000000000000000000000000000000000084BDFF0084BD + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0084BDFF0084BDFF00000000000000 + 0000000000000000000000000000000000000E395900CFFFFF0059B7FE0059B7 + FE0059B7FE0000000000000000000E395900CFFFFF00CFFFFF00CFFFFF0090FF + FF0000000000000000000000000000000000DAFAFF003C3C3C0046E3FF003C3C + 3C0046E3FF003C3C3C0046E3FF00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000141414007FC9 + 930092EFBF0091EDBD008EE8B7008BE1AF0087DAA70072B0750035483F000000 + 00000000000000000000000000000000000000000000000000000000000084BD + FF0084BDFF00FFFFFF00DAEBFF00DAEBFF00B3B3B300B3B3B300000000000000 + 0000000000000000DB0000000000000000000E395900CFFFFF00CFFFFF00CFFF + FF0090FFFF0000000000000000000E3959000E3959000E3959000E3959000E39 + 59000E3959000000000000000000000000003C3C3C0046E3FF00000000003C3C + 3C0046E3FF0046E3FF003C3C3C0046E3FF000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004D75 + 630035483F0035483F0035483F0035483F0035483F004D756300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000084BDFF00DAEBFF000000DB000000DB000000DB000000DB000000DB000000 + DB000000DB000000DB000000DB00000000000E3959000E3959000E3959000E39 + 59000E3959000E39590000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000046E3FF0000000000000000003C3C + 3C0046E3FF000000000046E3FF003C3C3C000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000DB0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000003C3C + 3C0046E3FF000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000072727200000000007272720000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000072727200000000003E92D9000000000072727200000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000400000004000000040000000 + 40000000400000004000000000000000000000000000000000008A8079008A80 + 79008A8079008A8079008A8079008A8079000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000072727200000000003E99D9003E99D9003F99D90000000000727272000000 + 0000000000000000000000000000000000000101950001019500010195000101 + 9500010195000101950001019500010195000101950001019500010195000101 + 9500010195000101950001019500010195004486B80094DAEC0075C5E20054B0 + D7002FA1D1000000400000000000000000000000830000000000BBA19000FFD8 + A400F0CB9F00DDBA9900CAA993008A8079000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000007272 + 7200000000003E99D9003F9FE500000000004B9FE5004BA6E500000000007272 + 7200000000000000000000000000000000000101950000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000010195004486B80094DAEC0075C5E20054B0 + D7002FA1D1000000400000008300000083000000830000008300BBA19000FFD8 + A400F0CB9F00DDBA9900CAA993008A80790046160A0046160A0046160A004616 + 0A0046160A000000000000000000000000000000000000000000000000004616 + 0A0046160A0046160A0046160A0046160A000000000000000000727272000000 + 00003F99D9003F9FE50000000000D9F3FF00000000004CACE6004CACE6000000 + 0000727272000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000004486B8004486B8004486B8004486 + B8004486B8004486B80000000000000000000000830000000000BBA19000BBA1 + 9000BBA19000BBA19000BBA19000BBA19000B6706000EDEDCC00F2997100F297 + 6D0046160A00000000000000000000000000000096000000000000000000B670 + 6000EDEDCC00F2997100F2976D0046160A000000000072727200000000003E99 + D9003F9FE50000000000D9F3FF00D9F3FF00D9F3FF000000000072D3FF0058B3 + E600000000007272720000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000B6706000EDEDCC00F2997100F195 + 6C0046160A00000000000000960000009600000096000000960000000000B670 + 6000EDEDCC00F2997100F1956C0046160A0072727200000000003E99D9003F9F + E50000000000D9F3FF00D9F3FF00D9F3FF00D9F3FF00D9F3FF000000000065BF + F30065BFF2000000000072727200000000000E3959004194D3004194D3004194 + D3004194D3000E3959004194D3004194D3004194D3004194D3000E3959004194 + D3004194D3004194D3004194D300000000000000400000004000000040000000 + 4000000040000000400000000000000000000000000000000000090931000909 + 310009093100090931000909310009093100B6706000EDEDCC00F2976E00F195 + 690046160A00000000000000000000000000000096000000000000000000B670 + 6000EDEDCC00F2976E00F195690046160A00000000003E99D9003F99E5000000 + 00004BA6E50000000000D9F3FF00D9F3FF00D9F3FF00D9F3FF00D9F3FF000000 + 000065C6F30065BFF20000000000727272000E395900CFFFFF0059B7FE0059B7 + FE004194D3000E395900CFFFFF0059B7FE0059B7FE004194D3000E395900CFFF + FF0059B7FE0059B7FE004194D300000000004486B80094DAEC0075C5E20054B0 + D7002FA1D1000000400000000000000000000000830000000000232369009090 + FF007474F0005152DE003535CF0009093100B6706000EDEDCC00F1946A00F193 + 680046160A00000000000000000000000000000000000000000000000000B670 + 6000EDEDCC00F1946A00F193680046160A0000000000000000003F9FE5004BA6 + E5000000000072D3FF0000000000D9F3FF00D9F3FF00D9F3FF00D9F3FF00D9F3 + FF000000000065C6F30059BFF200000000000E395900CFFFFF0059B7FE0059B7 + FE004194D3000E395900CFFFFF0059B7FE0059B7FE004194D3000E395900CFFF + FF0059B7FE0059B7FE004194D300000000004486B80094DAEC0075C5E20054B0 + D7002FA1D1000000400000008300000083000000830000008300232369009090 + FF007474F0005252DE003535CF0009093100B6706000EDEDCC00F1946A00F191 + 660046160A00000000000000000000000000000000000000000000000000B670 + 6000EDEDCC00F1946A00F191660046160A0000000000000000000000000065C6 + F30065C6F3000000000072D3FF0000000000D9F3FF00D9F3FF00D9F3FF000000 + 000072CCF30065C6F30000000000000000000E395900CFFFFF00CFFFFF00CFFF + FF0090FFFF000E395900CFFFFF00CFFFFF00CFFFFF0090FFFF000E395900CFFF + FF00CFFFFF00CFFFFF0090FFFF00000000004486B8004486B8004486B8004486 + B8004486B8004486B80000000000000000000000830000000000232369002323 + 690023236900232369002323690023236900B6706000EDEDCC00F1946A00F191 + 660046160A00000000000000000000009600000000000000000000000000B670 + 6000EDEDCC00F1946A00F191660046160A000000000000000000000000000000 + 000065C6F30065C6F3000000000072D3FF0000000000D9F3FF000000000072D3 + FF0072CCF3000000000000000000000000000E3959000E3959000E3959000E39 + 59000E3959000E3959000E3959000E3959000E3959000E3959000E3959000E39 + 59000E3959000E3959000E3959000E3959000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000B6706000EDEDCC00F1936800F090 + 650046160A00000000000000960000009600000096000000960000000000B670 + 6000EDEDCC00F1936800F090650046160A000000000000000000000000000000 + 00000000000065C6F30065C6F3000000000072D3FF000000000072D3FF0072D3 + FF00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000400000004000000040000000 + 40000000400000004000000000000000000000000000000000008A8079008A80 + 79008A8079008A8079008A8079008A807900B6706000EDEDCC00EDEDCC00EDED + CC0046160A00000000000000000000009600000000000000000000000000B670 + 6000EDEDCC00EDEDCC00EDEDCC0046160A000000000000000000000000000000 + 0000000000000000000065C6F30072CCF3000000000072D3FF0072D3FF000000 + 0000000000000000000000000000000000000101950000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000010195004486B80094DAEC0075C5E20054B0 + D7002FA1D1000000400000000000000000000000830000000000BBA19000FFD8 + A400F0CB9F00DDBA9900CAA992008A807900B6706000B6706000B6706000B670 + 6000B6706000000000000000000000000000000000000000000000000000B670 + 6000B6706000B6706000B6706000B67060000000000000000000000000000000 + 000000000000000000000000000065C6F30065CCF30072CCF300000000000000 + 0000000000000000000000000000000000000101950001019500010195000101 + 9500010195000101950001019500010195000101950001019500010195000101 + 9500010195000101950001019500010195004486B80094DAEC0075C5E20054B0 + D7002FA1D1000000400000008300000083000000830000008300BBA19000FFD8 + A400F0CB9F00DDBA9900CAA993008A8079000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000065C6F30000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000004486B8004486B8004486B8004486 + B8004486B8004486B80000000000000000000000830000000000BBA19000BBA1 + 9000BBA19000BBA19000BBA19000BBA190000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000FFFFFF00CDC3E3009B99CD009995 + C7009795C3009799C500979BC7009797C7009B97CF009597CD009395CB009795 + CB009193C9009597C900C9C5DF00FFFFFF000000000000000000000000000000 + 0000000000000000000000000000002DB5000052FF0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004A4A + 4A004A4A4A00E7E7E700DEDEDE00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000BFC7E300273DAF00213FCF002D47 + CF002B4BD1002745CB00274BCB002543CF002D3DD9001B3DCF00193FD900113B + DB00153FD7001B3BD500272FA100C1C1DB00000000000000000000000000002D + B5000052FF0000000000000000000052FF00008BFF0000000000000000000000 + 000000000000000000000000000000000000000000004A4A4A004A4A4A004A4A + 4A0000000000E7E7E70000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001A1A + BD00000000000000000000000000000000000000000000000000000000000000 + 000000000000000000001A1A9100000000009BA3D3002949D3002B4FEB003B57 + E9004157F1004357E5004B67DB004361D7004B5FDB003F5BDB00314FEF001D47 + F7000F43EB00153FE7002D41CD00959BC7000000000000000000000000000052 + FF00008BFF000000000000000000000000000000000000000000000000000000 + 0000002DB5000052FF000000000000000000000000004A4A4A004A4A4A004A4A + 4A00E7E7E700D6D6D600FFFFFF0000000000E7E7E70000000000E7E7E700E7E7 + E70000000000E7E7E700E7E7E7000000000000000000000000001A1ABD001A1A + BD001A1A91007A7A7A007A7A7A007A7A7A007A7A7A007A7A7A007A7A7A007A7A + 7A007A7A7A007A7A7A007A7A7A007A7A7A009DA3DD003153E1003355F5004F61 + EF005F69E1008B97ED00C1D5FD00D3EDFF00D9F1FF00BDD9FD007D95EB003D5B + DD00274FF300113BE9002D45CD00919BC3000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000052FF00008BFF0000000000000000000000000000000000000000000000 + 0000E7E7E700C6C6C600FFFFFF0000000000E7E7E7000000000000000000E7E7 + E7000000000000000000E7E7E700000000000000000033537D001A1ABD007D7D + FF001A1A91001A1A910033537D0033537D0033537D0033537D0033537D003353 + 7D0033537D001A1A910033537D007A7A7A009B9FDD003359E9003B5FFB005F6D + E300ABC3EF00CDE5FD00919FED006D7BE1006371DD00859FE700C3E5F90091B5 + ED002D51DF00113FE9001F43C9008B99C3000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000E7E7 + E700DEDEDE00B5B5B500FFFFFF0000000000E7E7E7000000000000000000E7E7 + E7000000000000000000E7E7E70000000000000000006493C400D9FFFF002D2D + FE001A1ABD001A1A91006DBEEA006DBEEA006DBEEA004DA3DF004DA3DF004DA3 + DF001A1A91004DA3DF0033537D007A7A7A00A1A7DF003D5FE5004B69F30093A5 + F100C9E1FB006D83DF005D69DF008191F5007585F1004D63E3005977DB00BDDB + FB007393EF00274FE900274BCB00919DC3000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000E7E7 + E700DEDEDE00B5B5B50000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000006493C400D9FFFF003353 + 7D002D2DFE001A1ABD001A1A910033537D0033537D0033537D0033537D001A1A + 91001A1ABD004DA3DF0033537D007A7A7A00A7AFDD004965E3005B71E300CFDD + FD009DADF100576DED00596BE9009FB3EB0099ADE3003D5FE3003353E7007D95 + E500B7D3FB003553D7002B49C900939FC3000000000000000000F3AE8F00F4AD + 8D00F3AA8A00F3AA8700F3AE8F00F4AD8D00F3AC8B00F4AD8D00F3AC8B00F3AA + 8A00F3AA8700F4A88500FFFFBE00C84628000000000000000000E7E7E700E7E7 + E700DEDEDE00C6C6C600A5A5A5008C8C8C007B7B7B00000000006BA500006B6B + 000000000000000000000000000000000000000000006493C400D9FFFF00A6ED + FF008DD9F6002D2DFE001A1ABD001A1A91006DBEEA006DBEEA001A1A91001A1A + BD004DA3DF004DA3DF0033537D007A7A7A00A9ABE1005567EF006577E300EFF7 + FF007F7DD900616FFB00556BEB00A5B3ED009FB1E5003D5FE7003957F1005561 + D900E1F5FF003955DB002B47D3009197C5000000000000000000FFFFBE00FFFF + BE00FFFFBE00FFFFBE00FFFFBE00FFFFBE00FFFFBE00FFFFBE00FFFFBE00FFFF + BE00FFFFBE00FFFFBE00FFFFBE00C84628000000000000000000E7E7E700E7E7 + E700DEDEDE00C6C6C6009C9C9C000000000073ADCE0073B5D6006BAD00006B6B + 000000639400000000000000000000000000000000006493C400D9FFFF003353 + 7D0033537D0033537D002D2DFE001A1ABD001A1A91001A1A91001A1ABD003353 + 7D0033537D004DA3DF0033537D007A7A7A00B1B1E7005D6DED006379E100EBFB + FF007D79D900596BF3005369EB00A5B3E700A1B3E5003B55E9003557F100455B + D700E3F7FF003557D9002747C9009599C5000000000000000000C8462800C846 + 2800C8462800C8462800C8462800C8462800C8462800C8462800C8462800C846 + 2800C8462800C8462800C8462800C846280000000000E7E7E700E7E7E700E7E7 + E700DEDEDE00B5B5B50000000000639C000073B5D6007BC6E70084BD10006B6B + 00000073AD00525200000000000000000000000000006493C400D9FFFF00A6ED + FF00A6EDFF00A6EDFF008DD9F6001A1A91001A1ABD001A1A91006DBEEA006DBE + EA006DBEEA006DBEEA0033537D007A7A7A00ADB1E100697FF3007189EF00D1E7 + FD009DABEF005B6BED00576BED00A1B1E5009FAFE3003953F3002F4FE9007397 + E700C9DBFD003D59E3002F45C500999BC5000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000009A2C1900B94C + 2E000000000000000000000000000000000000000000E7E7E700E7E7E700E7E7 + E700DEDEDE00ADADAD00000000007BB5080084CEEF0094D6F70094C631006363 + 0000007BBD005A5A00000000000000000000000000006493C400D9FFFF00A6ED + FF00A6EDFF0033537D001A1A91001A1ABD002D2DFE001A1ABD001A1A91003353 + 7D0033537D006DBEEA0033537D007A7A7A00ABB5DF006983ED00738BF700A7BD + F500D5E7FB007F91DF005D6DDD007991E5007383EB004759E700576BDD00C9E1 + FD00878DEF003B57ED002F49C9009395C5000000000000000000000000000000 + 000000000000002DB5000052FF00000000000000000000000000B94C2E00D788 + 6A0000000000000000000000000000000000E7E7E700E7E7E700E7E7E700E7E7 + E700DEDEDE00ADADAD00000000008CC6290094D6F70094D6F70094DE00006394 + 00000084C600636300000000000000000000000000006493C400D9FFFF00A6ED + FF00A6EDFF001A1A91001A1ABD001A1ABD008DD9F6008DD9F6002D2DFE001A1A + 91008DD9F6006DBEEA0033537D007A7A7A00A9B3DD007593F1007B91FD008595 + E700C3D1F300DBE9FB009FAFED00677BD700656DDB00879BE500D1E1FD00A9B9 + EF004555E9003157F1002B4BCB009599C50000000000000000009A2C1900B94C + 2E00000000000052FF00008BFF00000000000000000000000000000000000000 + 0000002DB5000052FF0000000000000000000000000000000000E7E7E700E7E7 + E700E7E7E700DEDEDE000000000094CE2100BDDEEF0021B5FF00429C5200009C + EF00009CEF00737300000000000000000000000000006493C400D9FFFF001A1A + 91001A1A91001A1ABD001A1ABD00A6EDFF00A6EDFF00A6EDFF00A6EDFF002D2D + FE001A1A91008DD9F60033537D007A7A7A00ADB1DD00839BED008FA5FD008B99 + F7008797E100A3B7EF00CFE1FD00E5EFFF00E5EFFF00D1E7FD008DA1E7005B71 + D7003D5BF3003763F3002F4DCB009397C3000000000000000000B94C2E00D788 + 6A00000000000000000000000000000000009A2C1900B94C2E00000000000000 + 00000052FF00008BFF0000000000000000000000000000000000000000000000 + 0000E7E7E700E7E7E700E7E7E70073AD00006394000021B5FF0000639400429C + 520063940000639400000000000000000000000000006493C4002D2DFE007D7D + FF001A1ABD001A1ABD00D9FFFF00D9FFFF00D9FFFF00D9FFFF00D9FFFF00D9FF + FF002D2DFE001A1A910033537D007A7A7A00B9B5E10097ABF5009FB9FF008F9F + F9008595F9007791F7007F99E900838FE7007F8DE7007B8DE3006371EF005D6F + F1004B67F7003D5DEB002F4BCB009797C5000000000000000000000000000000 + 0000002DB5000052FF000000000000000000B94C2E00D7886A00000000000000 + 000000000000000000009A2C1900B94C2E000000000000000000000000000000 + 00000000000000000000E7E7E7000000000042B5EF00FFFFFF0021638C002184 + B50000000000000000000000000000000000000000006493C4002D2DFE002D2D + FE002D2DFE006493C4006493C4006493C4006493C4006493C4006493C4006493 + C4006493C4006493C4001A1A910000000000D9D5E9008393E5007FA5FF007791 + FB007585F900657BFD005F7FF3006577F9006575F500616FEF004F69F5005167 + FB003D5FF7003955EB00374DBF00C9C3E3000000000000000000000000000000 + 00000052FF00008BFF0000000000000000000000000000000000000000000000 + 00000000000000000000B94C2E00D7886A000000000000000000000000000000 + 00000000000000000000000000000000000000000000639400000000000021B5 + FF00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000FFFFFF00DDD5F100B5BDE500B5B7 + E300B7B3E100B3B3E700AFB3E300B3B3E700AFAFE300B5B3E500A7ADDF00ABAF + E300A7ABE500A3A9DF00C9C5E500FFFFFF000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000606060006060 + 6000606060006060600060606000606060006060600060606000606060006060 + 6000606060006060600060606000606060000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000088D3EB0054BBDE00006BB000005AA4000000 + 000000000000000000000000000000000000FFFFFF00DEDEDE00B8B1AF00B8B1 + AF00B8B1AF00B8B1AF00B8B1AF0075635C0075635C0075635C0075635C007563 + 5C0075635C00CFC6C200000000006B595200674B30003F0F0F003F0F0F003F0F + 0F003F0F0F000B2134000B2134000B2134000B2134000B2134000B2134000B21 + 34000B2134000B2134000B213400606060000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000007B00000042000000000000000000000000000000 + 00000000000088D3EB0054BBDE0035A8D40000000000000000001B95CA00005A + A400005AA400000000000000000000000000FFFFFF00DEDEDE00DE000000B8B1 + AF00B8B1AF00B8B1AF00B8B1AF0075635C0075635C0075635C0075635C007563 + 5C0075635C00CFC6C200000000006B595200674B3000E3AF7200C28A5300A86E + 3B003F0F0F00BBCBD100B0C4CD00A1B9C6008DAEBD007AA2B5006497AE004B89 + A600307A9D00176F95000B213400606060000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000007B0000007B00000000000000000000000000000000000000 + 000054BBDE0035A8D40000000000000000000000000000000000000000000000 + 000088D3EB001B95CA000000000000000000FFFFFF00DEDEDE00B8B1AF00DE00 + 0000DE000000DE000000B8B1AF0075635C0075635C0075635C0075635C007563 + 5C0075635C00CFC6C200000000006B595200674B3000E3AF7200C28A5300A86E + 3B003F0F0F00BBCBD100B0C4CD00A1B9C7008DAEBE007AA2B6006496AE004B89 + A600307A9D00176F95000B213400606060000000000000000000000000000000 + 0000004A6B004ABDFF00007BBD00000000000000000000000000000000000000 + 000000007B0000007B0000000000000000000000000000000000000000000000 + 000000000000000000001B95CA00005AA4000000000000000000000000000000 + 0000000000001B95CA000000000000000000FFFFFF00DEDEDE00B8B1AF00DE00 + 0000B8B1AF00B8B1AF00B8B1AF0075635C0075635C0075635C0075635C007563 + 5C0075635C00CFC6C200000000006B595200674B30003F0F0F003F0F0F003F0F + 0F003F0F0F0020415E0020415E0020415E0020415E0020415E0020415E002041 + 5E0020415E0020415E000B2134006060600000000000007BBD004ABDFF000000 + 0000004A6B004ABDFF00000000000094DE00373737005E7B4D005E5E2200C4C4 + 88000000000000007B0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001B95CA00005AA400000000000000 + 000035A8D400000000000000000000000000FFFFFF00DEDEDE00DE000000B8B1 + AF00B8B1AF00A87A1B00A87A1B0075635C0075635C0075635C0075635C007563 + 5C0075635C00CFC6C200000000006B595200674B3000E3AF7200C28A5300A86E + 3B003F0F0F00BBCBD100B0C4CD00A1B9C6008DAEBD007AA2B5006497AE004B89 + A600307A9D00176F95000B2134006060600000000000007BBD00B5E7FF004ABD + FF004ABDFF0000ADFF0000ADFF005959590085A37500718F2B0071710000D7D7 + 6600C4C488000000000000000000000000000000000000000000000000000000 + 0000000000000000000088D3EB000067AD0088D3EB001B95CA00000000000000 + 0000005AA400000000000000000000000000FFFFFF00DEDEDE00B8B1AF00A87A + 1B00A87A1B00DE9400000000000075635C0075635C0075635C0075635C007563 + 5C0075635C00CFC6C200000000006B595200674B3000E3AF7200C28A5300A86E + 3B003F0F0F00BBCBD100B0C4CD00A1B9C7008DAEBE007AA2B6006496AE004B89 + A600307A9D00176F95000B2134006060600000000000007BBD000094DE004ABD + FF00007BBD000000000000ADFF0059595900858522007171000071710000D7D7 + 6600D7D766000000000000000000000000000000000000000000000000000000 + 000088D3EB000067AD00A69A7900A2967400004D9A001B95CA000171B400005A + A400005AA400000000000000000000000000FFFFFF00FFD68C00A87A1B00DE94 + 00000000000075635C0075635C0075635C0075635C0075635C0075635C007563 + 5C0075635C00CFC6C200000000006B595200674B30003F0F0F003F0F0F003F0F + 0F003F0F0F0020415E0020415E0020415E0020415E0020415E0020415E002041 + 5E0020415E0020415E000B21340060606000007BBD004ABDFF004ABDFF00007B + BD004ABDFF00004A6B00000000005959590071AD7B0099B79C0099B79C008585 + 4A00C4C48800000000000000000000000000000000000000000088D3EB000067 + AD00B3A88700B6AC8A00B7AC8A00B3A98600ADA27F0088D3EB000171B40035A8 + D400005AA400000000000000000000000000FFFFFF00FFF7D60000000000BAAE + A90075635C0075635C0075635C0075635C0075635C0075635C0075635C007563 + 5C0075635C00CFC6C200000000006B595200674B3000E3AF7200C28A5300A86E + 3B003F0F0F00BBCBD100B0C4CD00A1B9C6008DAEBD007AA2B5006497AE004B89 + A600307A9D00176F95000B21340060606000007BBD00B5E7FF004ABDFF00007B + BD004ABDFF00004A6B000000000000ADFF0059595900718F2B00718F2B005E5E + 1400373737000000000000000000000000000000000000000000004D9A00BAAF + 8E00C2B79600C6BC9C00C6BC9C00C1B89600BAAF8E00004D9A001B95CA000000 + 000000000000000000000000000000000000000000000000000000000000BA77 + 0000BA770000BAAEA90075635C0075635C0075635C0075635C0075635C007563 + 5C0075635C00CFC6C200000000006B595200674B3000E3AF7200C28A5300A86E + 3B003F0F0F00BBCBD100B0C4CD00A1B9C7008DAEBE007AA2B6006496AE004B89 + A600307A9D00176F95000B2134006060600000000000007BBD000094DE004ABD + FF00007BBD000000000000ADFF00808080000000000059595900595959005959 + 590000000000000000000000000000000000000000000000000088D3EB00C6BC + 9C00CFC6A600D5CCAD00D5CCAD00CFC6A700C6BC9C00BAAF8E0088D3EB001B95 + CA00000000000000000000000000000000000000000000000000000000007563 + 5C0075635C00BA770000BA770000BAAEA90075635C0075635C00BAAEA900BAAE + A90075635C00CFC6C200000000006B595200674B30003F0F0F003F0F0F003F0F + 0F003F0F0F0020415E0020415E0020415E0020415E0020415E0020415E002041 + 5E0020415E0020415E000B2134006060600000000000007BBD004ABDFF004ABD + FF004ABDFF0000ADFF0000ADFF0000ADFF00004A6B00004A6B00000000000000 + 000000000000000000000000000000000000000000000000000000000000004D + 9A00DBD2B400E2DABC00E2DABC00DBD2B300D0C6A600C1B79600004D9A001B95 + CA00005AA4000000000000000000000000000000000000000000000000000000 + 000075635C0075635C0075635C00BA770000BA770000BAAEA90000000000BA77 + 000000000000BAAEA900000000006B595200674B3000E3AF7200C28A5300A86E + 3B003F0F0F00BBCBD100B0C4CD00A1B9C6008DAEBD007AA2B5006497AE004B89 + A600307A9D00176F95000B2134006060600000000000007BBD00B5E7FF000000 + 0000004A6B004ABDFF00000000000094DE00004A6B00004A6B00000000000000 + 00000000000000000000000000000000000000000000000000000000000088D3 + EB00E2DABD00ECE4C700ECE4C700E2DABC00D5CCAD00C6BC9B00B6AC8A0088D3 + EB001B95CA000000000000000000000000000000000000000000000000000000 + 0000000000000000000075635C0075635C0075635C00BA770000BA770000BA77 + 0000BA770000EEAE00009A5900006B595200674B3000E3AF7200C28A5300A86E + 3B003F0F0F00BBCBD100B0C4CD00A1B9C7008DAEBE007AA2B6006496AE004B89 + A600307A9D00176F95000B213400606060000000000000000000007BBD00007B + BD00007BBD00B5E7FF00007BBD00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000004D9A00ECE4C700ECE4C700E2DABD00D5CCAD00C6BC9C00B6AC8B00004D + 9A001B95CA00005AA40000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000075635C0075635C0075635C00BA77 + 0000BA770000EEAE00009A5900006B595200674B3000674B3000674B3000674B + 3000674B30002C5273002C5273002C5273002C5273002C5273002C5273002C52 + 73002C5273002C5273002C527300000000000000000000000000000000000000 + 0000007BBD00007BBD0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000088D3EB00E2DABC00E2DABC00DBD2B400D0C6A600C1B79600B3A88700A296 + 740088D3EB001B95CA0000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000075635C007563 + 5C0075635C00BA7700009A5900006B5952000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000088D3EB0088D3EB0088D3EB0088D3EB0088D3EB0088D3EB0088D3 + EB0088D3EB001B95CA0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000075635C0091817A00CFC6C2006B5952000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000072727200727272007272 + 7200727272007272720072727200727272007272720072727200727272007272 + 7200727272007272720072727200727272000000000000000000606060003C35 + 2A00395A6000395A6000395A6000395A60004894A2004894A2004894A2000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000727272000000000000000000000000003C35 + 2A00253C4000253C4000253C4000253C4000253C4000253C40004894A2004894 + A200000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000008ABC008B61530000000000000000000000 + 0000000000000000000000000000000000000000000072CCF3006FCAF2002A45 + 0D0067C2EE0063BDEC005FB9E9005AB4E70056B0E50051ACE3004DA7E00048A3 + DE00449FDD00419CDA0000000000727272000000000000000000B79E71003C35 + 2A003C352A007BB2BC007BB2BC007BB2BC005FDFF6005FDFF600253C4000253C + 40004894A2000000000000000000000000000000000000000000959595000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000008ABC000000000000000000009CDB009771640000000000000000007847 + 3800000000001C06030000000000000000000000000072CCF3006FCAF2002A45 + 0D0067C2EE0063BDEC005FB9E9001E3548001E3548001E3548001E3548001E35 + 48001E354800419BDA00000000007272720000000000B79E7100B79E71003C35 + 2A00665941003C352A007BB2BC007BB2BC005FDFF6005FDFF6005FDFF600253C + 4000253C40000000000000000000000000000000000000000000A5A5A500A5A5 + A500A5A5A500A5A5A500A5A5A500A5A5A500A5A5A500A5A5A500A5A5A500A5A5 + A500A5A5A50000000000000000000000000000000000000000000000000000AF + FF00009CDB00008ABC00008ABC00009CDB00977164009771640091695C008B61 + 53008B6153000000000000000000000000000000000072CCF3006FCAF2002A45 + 0D0067C2EE0063BDEC005FB9E9001E354800D9F3FF00D9F3FF00D9F3FF00D9F3 + FF001E354800409BDA00000000007272720000000000B79E7100000000003C35 + 2A006659410066594100253C4000253C4000253C4000253C4000253C40004F4F + FF0030305B004747C20000000000000000000000000000000000B4B4B300B4B4 + B300820B0000820B0000820B0000820B0000820B0000820B0000820B0000B4B4 + B300B4B4B3000000000000000000000000000000000000000000000000000000 + 000000AFFF00009CDB00009CDB005FBCFF00D1B9B2009771640097716400713D + 2F00000000000000000000000000000000000000000072CCF3006FCAF2002A45 + 0D0067C2EE0063BDEC005FB9E9001E354800D9F3FF00D9F3FF00D9F3FF00D9F3 + FF001E354800419BDA0000000000727272000000000000000000E8C99200E8C9 + 92003C352A006659410030305B004F4FFF004F4FFF004F4FFF004F4FFF004F4F + FF0030305B004747C20000000000000000000000000000000000C4C4C400C3C3 + C400C3C3C400C3C4C400C4C4C300C4C3C300C4C4C300C4C3C300C3C4C400C4C3 + C400C3C3C4000000000000000000000000000000000000000000000000000000 + 00000057770000AFFF00008ABC000000000000000000D1B9B200977164005F2B + 1F0000000000000000000000000000000000000000002A450D002A450D002A45 + 0D002A450D002A450D005FB9E9001E354800D9F3FF00D9F3FF00D9F3FF00D9F3 + FF001E354800419BDA00000000007272720000000000E8C99200E8C99200E8C9 + 9200E8C992003C352A0030305B004F4FFF004F4FFF004F4FFF004F4FFF004F4F + FF0030305B004747C20000000000000000000000000000000000D2D2D200D2D2 + D200820B0000820B0000820B0000820B0000820B0000820B0000820B0000D2D2 + D200D2D2D200000000000000000000000000000000000000000000AFFF0000AF + FF0000AFFF00009CDB0000000000000000000000000000000000D1B9B200885D + 4F007F5041006834270000000000000000000000000072CCF3006FCAF2002A45 + 0D0067C2EE0063BDEC005FB9E9001E354800D9F3FF00D9F3FF00D9F3FF00D9F3 + FF001E354800409CDA00000000007272720000000000E8C99200E8C99200E8C9 + 9200E8C99200E8C9920030305B004F4FFF004F4FFF004F4FFF004F4FFF004F4F + FF0030305B004747C20000000000000000000000000000000000E0E0E000E0E0 + E000E0E0E000E0E0E000E0E0E000E0E0E000E0E0E000E0E0E000E0E0E000E0E0 + E000E0E0E0000000000000000000000000000000000000000000B5E5FF00B5E5 + FF00B5E5FF00008ABC0000000000000000000000000000000000B99D94009771 + 640097716400977164000000000000000000000000002A450D002A450D002A45 + 0D002A450D002A450D005FB9E9001E3548001E3548001E3548001E3548001E35 + 48001E354800409CDA00000000007272720000000000E8C99200E8C99200E8C9 + 9200E8C99200E8C9920030305B004F4FFF004F4FFF004F4FFF004F4FFF004F4F + FF0030305B004747C20000000000000000000000000000000000EDEDED00EDED + ED00820B0000820B0000820B0000820B0000820B0000820B0000820B0000EDED + ED00EDEDED000000000000000000000000000000000000223800000000000000 + 00000057770000AFFF00008ABC0000000000000000007C4B3D00A17F7400632F + 2300000000000000000000000000000000000000000072CCF3006FCAF2002A45 + 0D0067C2EE0063BDEC005FB9E9001E35480056B1E50051ACE3004CA8E00048A3 + DE001E354800419CDA0000000000727272000000000000000000E8C99200E8C9 + 9200E8C99200E8C9920030305B004F4FFF004F4FFF004F4FFF004F4FFF003030 + 5B0030305B0030305B0000000000000000000000000000000000F7F7F700F7F7 + F700F7F7F700F7F7F700F7F7F700F7F7F700F7F7F700F7F7F700F7F7F700F7F7 + F700F7F7F7000000000000000000000000000000000000000000000000000000 + 00005FBCFF005FBCFF005FBCFF00009CDB0097716400A17F7400A17F7400A17F + 7400000000000000000000000000000000000000000072CCF3002A450D006CC6 + F0002A450D0063BDEC005FB9E9001E3548001E3548001E3548001E3548001E35 + 48001E354800419BDB0000000000727272000000000000000000000000000000 + 0000E8C99200E8C9920030305B0030305B0030305B0030305B0030305B004141 + 7E0041417E0041417E0000000000000000000000000000000000FFFFFF00FFFF + FF00820B0000820B0000820B0000820B0000820B0000820B0000820B0000FFFF + FF00FFFFFF00000000000000000000000000000000000000000000000000B5E5 + FF0000AFFF005FBCFF005FBCFF005FBCFF00B99D9400B99D9400E2D0C900B99D + 9400A17F7400000000000000000000000000000000002A450D006FCAF2006CC6 + F00067C2EE002A450D005FB9E9005AB5E70056B1E50051ACE3004DA7E10048A4 + DE00449FDC00409BDA0000000000727272000000000000000000000000000000 + 00000000000000000000000000000000000041417E0041417E0041417E004141 + 7E0041417E0041417E0000000000000000000000000000000000FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00000000000000000000000000000000000000000016000B000000 + 0000B5E5FF0000000000225F7700B5E5FF00B99D9400713D2F0000000000E2D0 + C900000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000041417E0041417E004141 + 7E0041417E000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001600 + 0B00000000000000000000000000B5E5FF00E2D0C90000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000041417E004141 + 7E00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000775D3A004C3318004C3318004C3318005151 + 5100414141000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000775D3A008D745100937B5800624C30004C33 + 18005F5F5F006060600041414100000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000425B5000141414001414 + 14005A8A75000000000000000000000000000000000000000000A3A3A3008B8B + 8B00A3A3A3000000000000000000000000000000000000000000000000000000 + 000000000000BABABA00ABABAB00000000000000000072727200727272007272 + 7200727272007272720072727200727272007272720072727200727272007272 + 7200727272007272720072727200727272000000000000000000000000000000 + 0000000000000000000021110500947C5A008D745100937B5800624C30004C33 + 1800606060006F6F6F007D7D7D00414141000000000000000000000000000000 + 00000000000000000000000000000000000000000000425B500073B1770072AE + 730070AC700014141400000000000000000000000000B2B2B2002A2AD1005C5C + 5C0074747400A3A3A30000000000000000000000000000000000000000000000 + 0000000000002A2AB000B2B2B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000727272000000000000000000000000000000 + 00000000000000000000231205009A836100937B58009A836100624C30004D34 + 19006E6E6E007D7D7D0060606000000000000000000000000000000000000000 + 00001414140014141400000000000000000000000000425B500076B87E0074B4 + 7A0072B0760070AC71001414140000000000000000002A2AD1002A2AD1002A2A + B000545454007B7B7B0000000000000000000000000000000000000000000000 + 0000ABABAB00A3A3A300BABABA00000000000000000095D9F60093D7F5002A45 + 0D008DD1F2008ACEF10087CBEF0083C7ED0080C4EC007DC1EA007ABDE80076BA + E60073B7E60071B5E30000000000727272000000000000000000000000000000 + 0000000000000000000023120500A28C6B009A836100A18B6900766042005D43 + 25005D4325007E7E7E007E7E7E00414141000000000000000000000000001414 + 14007DC790007EC89200141414000000000000000000425B5000425B500077BB + 820075B67C0073B0760071AC71005A8A7500000000002A2AD1009F9FFF002A2A + B0002A2AB000646464009B9B9B0000000000000000000000000000000000A3A3 + A3002A2AB000A3A3A30000000000000000000000000095D9F60093D7F5002A45 + 0D008DD1F2008ACEF10087CBEF0083C8ED0080C5EC007DC1EA007ABDE90076BB + E60073B7E50070B4E3000000000072727200000000000000B100000000000000 + 0000000000000000000038220E0099836300A8937200A89372007E674900B6A3 + 84006E54320023232300414141002323230000000000000000001414140080CB + 960082CF990083D19C0083D19D0014141400000000000000000000000000425B + 500079BC840075B57C0073B075001414140000000000000000004545FE002A2A + D1002A2AB0005C5C5C0074747400A3A3A3000000000000000000A3A3A3002A2A + B00083838300B2B2B20000000000000000000000000095D9F60093D7F5002A45 + 0D008DD1F2008ACEF10087CBEF005B7181005B7181005B7181005B7181005B71 + 81005B71810070B4E30000000000727272000000B1000000B1000000B1000000 + 0000A18B6900563C1F00BCAA8E00A9947600B6A38400B6A384008D775800BDAB + 8F006F553300000000000000000000000000000000001414140081CE990084D2 + 9E0086D6A30087D8A60088D9A60087D8A6001414140000000000000000000000 + 0000425B500078BB820074B47B00141414000000000000000000000000004545 + FE002A2AD1002A2AB0005C5C5C00747474009B9B9B009B9B9B002A2AB0002A2A + D100A3A3A3000000000000000000000000000000000095D9F60093D7F5002A45 + 0D008DD1F2008ACEF10087CBEF0083C8ED0080C5EC007DC1EA007ABDE90076BB + E60073B7E50070B4E3000000000072727200000000000000B1000000B1000000 + B1006E543200A18B6900C2B29700B09D7F00C2B29700BCAA8E0096816100CFC2 + AB007D644100000000000000000000000000425B5000425B5000425B5000425B + 500089DEAC008BE1AF0014141400425B5000425B5000425B5000000000000000 + 0000425B50007ABF880077B87F00141414000000000000000000000000000000 + 00004545FE002A2AD1002A2AB0005C5C5C00646464002A2AB0002A2AD100A3A3 + A30000000000000000000000000000000000000000002A450D002A450D002A45 + 0D002A450D002A450D0087CBEF005B7181005B7181005B7181005B7181005B71 + 81005B71810070B4E300000000007272720000000000000000000000B1000000 + B1000000B100A9947300CFC2AB00C0B09500C9BAA100C9BAA1009E896B00A893 + 7200866D4900000000000000000000000000000000000000000000000000425B + 50008EE6B4008FE9B90014141400000000000000000000000000000000000000 + 0000425B50007CC38C0078BB8300141414000000000000000000000000000000 + 0000000000004545FE002A2AD1002A2AB0002A2AB0002A2AD1008B8B8B000000 + 0000000000000000000000000000000000000000000095D9F60093D7F5002A45 + 0D008DD1F2008ACEF10087CBEF0083C8ED0080C5EC007DC1EA007ABDE90076BB + E60073B7E50070B4E30000000000727272000000000000000000000000000000 + B1000000B1000000B100D5C9B500C8B9A000E8E0D400CFC2AB00A8937200A18B + 6900AF9B7B00000000000000000000000000000000000000000000000000425B + 500091EDBD0093F1C20014141400000000000000000000000000000000000000 + 0000425B50007DC6900079BE8600141414000000000000000000000000000000 + 000000000000A3A3A3002A2AB0002A2AD1002A2AB0006B6B6B007B7B7B00A3A3 + A30000000000000000000000000000000000000000002A450D002A450D002A45 + 0D002A450D002A450D0087CBEF00BF6F4C00BF6F4C00BF6F4C00BF6F4C00BF6F + 4C00BF6F4C0070B4E30000000000727272000000000000000000000000000000 + 00000000B1000000B100C9BAA100C9BAA100765C3900664B2B009A8361006E54 + 320000000000000000000000000000000000000000000000000000000000425B + 500093F2C20096F8C9007FC99300141414000000000000000000000000001414 + 140074B47B007EC892007BC0870014141400000000000000000000000000B2B2 + B2009B9B9B002A2AB0002A2AD1004545FE002A2AD1002A2AB0007B7B7B007B7B + 7B00A3A3A3000000000000000000000000000000000095D9F60093D7F5002A45 + 0D008DD1F2008ACEF10087CBEF0083C8ED0080C5EC007DC1EA007ABDE90076BB + E60073B7E50070B4E3000000000072727200000000000000B100000000000000 + B1000000B1000000B10039230E008C735000765C39007D644100211105000000 + 0000000000000000000000000000000000000000000000000000000000005A8A + 75007FC9930098FACD009AFFD3007FC9930014141400141414001414140074B4 + 7B0083D19D007FC9930074B47B005A8A75000000000000000000A3A3A3007B7B + 7B002A2AB0002A2AD1002A2AD100A3A3A300000000004545FE002A2AB0007B7B + 7B007B7B7B00A3A3A30000000000000000000000000095D9F6002A450D0093D7 + F5002A450D008DD1F2008ACEF10083C8ED0080C5EC007DC1EA007ABDE90076BB + E60073B7E50070B4E3000000000072727200000000000000B1000000B1000000 + B1000000B1000000000000000000BDAB8F00A8937200AF9B7B004C3318000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000425B500096F7CA0098FACD0096F7CA0093F1C30090EAB9008BE0B00087D8 + A50082D09C007FC99200141414000000000000000000B2B2B2002A2AB0002A2A + B0002A2AD1002A2AD100A3A3A3000000000000000000000000004545FE002A2A + B000838383008B8B8B00ABABAB0000000000000000002A450D0093D7F50091D4 + F4008DD1F2002A450D0087CBEF0083C8ED0080C5EC007DC1EA007ABDE90076BB + E60073B7E50070B4E3000000000072727200000000000000B1000000B1000000 + B100000000000000000000000000B6A38400E8E0D400CFC2AB004C3318000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000425B50007FC9930093F1C20090ECBD008DE5B40089DDAC0086D6 + A20074B47B00141414000000000000000000000000004545FE009F9FFF002A2A + D1002A2AD100A3A3A30000000000000000000000000000000000000000004545 + FE002A2AB000A3A3A300A3A3A300000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000B1000000B1000000 + B1000000B1000000000000000000000000006F5533005D432500000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000005A8A7500425B5000425B5000425B5000425B5000425B + 50005A8A7500000000000000000000000000000000004545FE004545FE004545 + FE00B2B2B2000000000000000000000000000000000000000000000000000000 + 0000000000002A2AB000BABABA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000060000000600000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000004B4B4B004B4B4B004B4B4B00828282008282 + 8200000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 600000008F000000600000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000004B4B4B004B4B4B0082828200828282009E9E9E004B4B4B008282 + 8200828282008282820000000000000000000000000000000000606060006060 + 6000606060006060600060606000606060006060600060606000000060000000 + 8F000000FF00000060000000600000006000232369009090FF007373F0005252 + DE003535CF0000000000000000000000000000000000000000005B402E00FFB8 + 5A00E4A05000C18146009E633A00000000000000000072727200727272007272 + 7200727272007272720072727200727272007272720072727200727272007272 + 7200727272007272720072727200727272000000000000000000000000004B4B + 4B004B4B4B0082828200828282004B4B4B00FFE4D5004B4B4B00919191008282 + 8200919191009191910091919100919191000000000000000000000000000000 + 000000000000000000000000000000000000000000000000600000008F000000 + FF000000FF0000008F0000008F0000006000232369009090FF007374F0005252 + DE003535CF0000000000000000000000000000000000000000005B402E00FFB8 + 5A00E4A05000C18145009E633A00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000072727200000000004B4B4B004B4B4B008282 + 8200828282004B4B4B00FFE4D500FFE4D500FFE4D5004B4B4B00ABABAB004B4B + 4B009191910091919100919191000000000000000000F0F0F000F0F0F000BF7F + 7F00FFDFA000FFD0A000BF7F7F00FFC09F00000060009090FF000000FF000000 + FF000000FF000000FF0000008F00000060002323690023236900232369002323 + 69002323690023236900000000000000000000000000000000005B402E005B40 + 2E005B402E005B402E005B402E005B402E0000000000F3F1EF00EFEDE900E9E6 + E100E1DDD600D9D4CC00D0CBC200C8C3B800C1BAAE00B9B1A400B1A89A00A89F + 8F00A09685009A8F7E0000000000727272004B4B4B008282820000ADFF00004A + 6B00004A6B00FFE4D500FFD6BE00FFC49D00FFD6BE00FFE4D5004B4B4B009191 + 91009191910000000000000000000000000000000000F0F0F000F0F0F000BF7F + 7F00FFDFAF00FFDFA000BF7F7F00FFCF9F00FFC09F00000060009090FF000000 + FF009090FF009090FF009090FF00000060000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F3F1EF00615543006155 + 4300615543006155430061554300615543006155430061554300615543006155 + 4300615543009B8F7E00000000007272720000ADFF000000000000ADFF000000 + 00000094DE00004A6B0000000000FFE4D500FFC49D00FFC49D003F3F3F00ABAB + AB004B4B4B0000000000000000000000000000000000BF7F7F00BF7F7F00BF7F + 7F00BF7F7F00BF7F7F00BF7F7F00BF7F7F00BF7F7F00BF7F7F00000060009090 + FF009090FF000000600000006000000060000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F3F1EF0061554300EFED + E900EFEDE900EFEDE900EFEDE900EFEDE900EFEDE900EFEDE900EFEDE900EFED + E900615543009B907E000000000072727200000000004ABDFF0000639C0000AD + FF000000000000000000FFC49D00FFC49D00FFE4D500FFE4D500FFE4D5004B4B + 4B009191910000000000000000000000000000000000F0F0F000F0F0F000BF7F + 7F00FFDFA000FFD0A000BF7F7F00FFC09F00FFC09F00BF7F7F00FFC09F000000 + 60009090FF00000060000000000000000000232369009090FF007474F0005152 + DE003535CF0000000000000000000000000000000000000000005B402E00FFB8 + 5A00E4A05000C18146009F633A000000000000000000F3F1EF0061554300EFED + E900EFEDE900EFEDE900EFEDE900EFEDE900EFEDE900EFEDE900EFEDE900EFED + E900615543009A8F7E00000000007272720000ADFF00007BBD0000ADFF000000 + 00000094DE00004A6B00004A6B0000ADFF00004A6B00004A6B00FFD6BE004B4B + 4B00ABABAB004B4B4B00000000000000000000000000F0F0F000F0F0F000BF7F + 7F00FFDFAF00FFDFA000BF7F7F00FFCF9F00FFC09F00BF7F7F00FFC09F00FFC0 + 9F0000006000000060000000000000000000232369009090FF007474F0005252 + DE003535CF0000000000000000000000000000000000000000005B402E00FFB8 + 5A00E4A05000C18146009E633A000000000000000000F3F1EF0061554300EFED + E900EFEDE900EFEDE900EFEDE900EFEDE900EFEDE900EFEDE900EFEDE900EFED + E900615543009A8F7E000000000072727200007BBD00007BBD0000639C000000 + 00000000000000ADFF000000000000ADFF00000000000094DE00004A6B000000 + 00004B4B4B00B6B6B600000000000000000000000000BF7F7F00BF7F7F00BF7F + 7F00BF7F7F00BF7F7F00BF7F7F00BF7F7F00BF7F7F00BF7F7F00BF7F7F00BF7F + 7F00000000006060600000000000000000002323690023236900232369002323 + 69002323690023236900000000000000000000000000000000005B402E005B40 + 2E005B402E005B402E005B402E005B402E0000000000F3F1EF00615543006155 + 4300615543006155430061554300615543006155430061554300615543006155 + 4300615543009A8F7E00000000007272720000ADFF004ABDFF004ABDFF0000AD + FF000094DE00000000004ABDFF0000639C0000ADFF0000000000000000004B4B + 4B00ABABAB00E9E9E9004B4B4B000000000000000000F0F0F000F0F0F000BF7F + 7F00FFEFAF00FFEFAF00BF7F7F00FFDFAF00FFD0A000BF7F7F00FFC09F00FFC0 + 9F00000000006060600000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F3F1EF0061554300D3C3 + A800D0BC9E00CCB49100C7AC8400C5A57A00C19E7000BC976700B98E5D00B488 + 5400615543009A907E000000000072727200007BBD00000000004ABDFF00004A + 6B00007BBD0000ADFF00007BBD0000ADFF00000000000094DE00004A6B00004A + 6B004B4B4B004B4B4B00000000000000000000000000FFFFFF00FFFFFF00BF7F + 7F00FFEFAF00FFEFAF00BF7F7F00FFDFAF00FFDFA000BF7F7F00FFCFA000FFC0 + 9F00000000006060600000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F3F1EF00615543006155 + 4300615543006155430061554300615543006155430061554300615543006155 + 4300615543009A8F7E0000000000727272000000000000000000007BBD000000 + 000000000000007BBD00007BBD0000639C000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000606060000000000000000000232369009090FF007474F0005152 + DE003535CF0000000000000000000000000000000000000000005B402E00FFB8 + 5A00E4A15000C18146009E6339000000000000000000F3F1EF00EEEDE900E9E5 + E000E2DDD600D9D4CC00D1CBC200C8C2B700C1BAAE00B9B2A300B1A89900A89F + 8F00A09786009A8F7F0000000000727272000000000000000000000000003535 + 3500ABABAB0000ADFF004ABDFF004ABDFF0000ADFF000094DE00004A6B000000 + 000000000000000000000000000000000000000000000000F0000000EF000000 + EF000000E0000000DF000000D0000000CF000000C0000000BF000000B0000000 + B00000000000606060000000000000000000232369009090FF007374F0005251 + DE003535CF0000000000000000000000000000000000000000005B402E00FFB8 + 5A00E4A05000C18146009E633A00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00004B4B4B00007BBD00000000004ABDFF00004A6B0000000000000000000000 + 000000000000000000000000000000000000000000000000F0000000EF000000 + EF000000E0000000DF000000D0000000CF000000C0000000BF000000B0000000 + B000000000006060600000000000000000002323690023236900232369002323 + 69002323690023236900000000000000000000000000000000005B402E005B40 + 2E005B402E005B402E005B402E005B402E000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000004B4B4B0000000000007BBD000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + C100020285000202850000005700000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000000000C1000000 + E3000074B600003A5B000000E300000057000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000006261 + 6200626162006261620062616200626162006261620062616200626162006261 + 6200626162006261620062616200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000CFEF + FF00C0E0F000BFE0F000B0DFF000AFD0EF00A0CFEF0090C0E0008FC0E00080BF + DF0000000000000000000000000000000000000000000000C1000000E3000074 + B60000A8FF0000A8FF00003A5B000000E3000000570000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000062616200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000050A0DF0000000000CFEF + FF003C77A5003C77A500614040006140400061404000614040003C77A5000000 + 0000089CE7000000000000000000000000000000C1000000E30054F9FF0000C6 + FF0000A8FF0000A8FF0000A8FF00003A5B000000E3000000570000000000671D + 0F0000000000671D0F0000000000000000000000000000000000DADADA00DADA + DA0055555500EAB77500EAB173009F555500EA986B00EA9269009F555500EA71 + 5F00EA695B000000000062616200000000000000000000000000000000000000 + 000000000000C4C4C400C3C3C400C3C4C400C4C4C300C4C4C300C4C3C300C3C4 + C400C3C3C4000000000000000000000000000000000050A0DF0000000000CFEF + FF006140400061404000C4B59900C3B09900BDAF9900B6A69100614040000000 + 0000000000000000000000000000000000000000C1000000E30054F9FF0000C6 + FF0000C10000006A000000A8FF00003A5B000000E300671D0F00671D0F00671D + 0F00671D0F00671D0F00671D0F00000000000000000000000000DCDCDC00DCDC + DC0055555500EABD7700EAB675009F555500EA9D6C00EA966A009F555500EA78 + 6000EA705E000000000062616200000000000000000000000000000000000000 + 000000000000D2D2D300820B0000820B0000820B0000820B0000820B0000820B + 0000D2D2D3000000000000000000000000000000000050A0DF0000000000CFEF + FF006140400096907F0097948100979682009794810096907E00958A7A006140 + 4000000000000000000000000000000000007E7EFF000000E30054F9FF0000C6 + FF0000FF0000009A000000A8FF0000A8FF000000E3000202850000000000671D + 0F0000000000671D0F0000000000671D0F000000000000000000555555005555 + 5500800000008000000080000000800000008000000080000000800000009F55 + 55009F5555000000000062616200000000000000000000000000000000000000 + 000000000000E0E0E000E0E0E000E0E0E000E0E0E000E0E0E000E0E0E000E0E0 + E000E0E0E0000000000000000000000000000000000050A0DF00000000006140 + 4000CBBA9C00CCC0A100C7C5A400C7C1A500C0BFA400B9B49A00B8AD9600B0A5 + 910061404000000000000000000000000000000000007E7EFF000000E30054F9 + FF0000C6FF0000C6FF0000A8FF000000E300020285000000000000000000671D + 0F0000000000671D0F0000000000671D0F000000000000000000DADADA00DADA + DA00800000000000DC000000DC000000DC000000DC000000DC0080000000EA99 + 6C00EA9369000000000062616200000000000000000000000000000000000000 + 0000000000000000780000007800820B0000820B0000820B0000820B0000820B + 0000EDEDEC000000000000000000000000000000000050A0DF00000000006140 + 400097948100989C86009AA38B009AA68E009AA38B00989B860097948100B1A8 + 92006140400000000000000000000000000000000000000000007E7EFF000000 + E30054F9FF0000A8FF000000E300020285000000000000000000671D0F00671D + 0F00671D0F00671D0F00671D0F00000000000000000000000000DCDCDC00DCDC + DC00800000000000DC000000DC000000DC000000DC000000DC0080000000EA9D + 6E00EA986B000000000062616200000000000000000000000000000000000000 + 0000000078000000C80000007800F7F7F700F7F7F700F7F7F700F7F7F700F7F7 + F700F7F7F7000000000000000000000000000000000050A0DF00000000006140 + 4000CCC0A000CDC7A600C9CFAC00C9CFAF00C3C9AB00BBBA9F00B8B29A00B1A9 + 9300614040000000000000000000000000000000000000000000000000007E7E + FF000000C10002028500020285000000000000000000671D0F0000000000671D + 0F0000000000671D0F0000000000000000000000000000000000555555005555 + 5500800000008000000080000000800000008000000080000000800000009F55 + 55009F5555000000000062616200000000000000000000000000000078000000 + 0000000078000000C80000007800820B0000820B0000820B0000820B0000820B + 0000FFFFFF000000000000000000000000000000000050A0DF00000000006140 + 400097948100989C86009AA28B009AA68E009AA38B00989C860097948100B1A8 + 9300614040000000000000000000000000000000000000000000000000004040 + 4000FFFFFF0070707100000000000000000000000000671D0F0000000000671D + 0F0000000000671D0F0000000000000000000000000000000000E4E4E400E4E4 + E40055555500EACF7D00EACC7D009F555500EAB87600EAB274009F555500EA99 + 6C00EA9369000000000062616200000000000000000000000000000078000000 + 78000000C80000007800FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF000000000000000000000000000000000050A0DF0000000000CFEF + FF0061404000CCC0A100C7C5A400C6C1A500C0BFA400B9B49A00B8AD96006140 + 4000000000000000000000000000000000000000000000000000000000000000 + C1000000C1000202850002028500000000000000000000000000671D0F00671D + 0F00671D0F00671D0F00671D0F00671D0F000000000000000000E6E5E500E6E5 + E50055555500EACF7D00EACF7D009F555500EABD7800EAB775009F555500EA9D + 6E00EA986B000000000062616200000000000000000000000000000078000000 + C8000000C8000000C80000007800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000050A0DF0000000000CFEF + FF00614040006140400097948100979582009794810097907E00614040006140 + 400000000000000000000000000000000000000000000000C1000000C1000000 + E3000000E3000000E3000000E30002028500020285000000000000000000671D + 0F0000000000671D0F0000000000000000000000000000000000555555005555 + 5500555555005555550055555500555555005555550055555500555555005555 + 5500555555000000000062616200000000000000000000000000000078000000 + C8000000C8000000780000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000050A0DF0000000000CFEF + FF00C0E0F000BFE0F000614040006140400061404000614040008FC0E00080BF + DF00000000000000000000000000000000007E7EFF000000E30071C1FF0071C1 + FF0071C1FF0071C1FF0071C1FF0071C1FF000000E30002028500000000000000 + 0000000000000000000000000000000000000000000000000000ADDCEA00A6D8 + EA009FD6EA005555550093D1EA008ECFEA0087CCEA00555555007BC8EA0075C5 + EA006FC4EA000000000062616200000000000000000000000000000078000000 + C800000078000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000050A0DF00000000000000 + 0000C0E0F00000000000B0DFF00000000000A0CFEF00000000008FC0E0000000 + 0000000000000000000000000000000000007E7EFF000000E3000000E3000000 + E3000000E3000000E3000000E3000000E3000000E30002028500000000000000 + 0000000000000000000000000000000000000000000000000000ADDCEA00A6D8 + EA009FD6EA005555550093D1EA008ECFEA0087CCEA00555555007BC8EA0076C5 + EA006FC4EA000000000062616200000000000000000000000000000078000000 + 7800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000050A0DF000000 + 00007F7F7F00000000007F7F7F00000000007F7F7F00000000007F7F7F000000 + 0000000000000000000000000000000000007E7EFF000000E30071C1FF0071C1 + FF0071C1FF0071C1FF0071C1FF0071C1FF000000E30002028500000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000078000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000007E7EFF006161F7006161F7006161 + F7006161F7006161F7006161F7006161F7006161F7006161F700000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D774 + 5800D7745800D77458000000000000000000D7745800D7745800000000000000 + 0000D7745800D774580000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000064000000 + 6400000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000068141400681414006814 + 1400681414006814140068141400681414000000000062616200626162006261 + 6200626162006261620062616200626162006261620062616200626162006261 + 620062616200626162006261620062616200000000000000000000000000D774 + 5800D774580000000000D7745800D77458000000000000000000D77458000000 + 0000D77458000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000064000000 + 8C00000064000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000006633330000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000626162000000000000000000000000000000 + 000000000000D7745800D774580000000000E5EAF000E5EAF000000000000000 + 0000000000000000000000000000000000000000000000000000626162006261 + 6200626162006261620062616200626162000000640000006400000064009696 + FF0000008C000000640000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000066333300F7F1DE00F5EEDA00F5EE + DA00F4E9D400F2E3CD00F0DDC500EED7BC00ECD0B500EBCAAE00E8C4A500E6BD + 9D00E3B89600E2B4900000000000626162000000000000000000000000000000 + 0000000000000000000000000000E5EAF000E5EAF000E5EAF000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000064009696FF000000FF000000 + FF000000FF0000008C0000006400000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000001384BB00CCFF + FF0029B8FF0029B8FF00000000000000000066333300F7F1DE00000099000000 + 9900F4E9D4000000000000000000000000000000000000000000000000000000 + 000000000000E2B4900000000000626162000000000000000000000000000000 + 00000000000000000000E5EAF000E5EAF0000000000000000000000000000000 + 00000000000000000000000000000000000000000000F1F1F100F1F1F100BE7B + 7B00FBDBA700FBD6A500BE7B7B00FBC49D00000064009696FF000000FF000000 + FF000000FF000000FF000000DC00000064000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000001384BB00CCFF + FF0029B8FF0029B8FF00000000000000000066333300F7F1DE00F5EEDA00F5EE + DA00F4E9D400F2E3CC00EFDDC500EED6BC00ECD0B500EAC9AE00E7C4A500E6BF + 9D00E3B89600E2B4900000000000626162000000000000000000000000000000 + 0000000000000000000000000000E5EAF000E5EAF000E5EAF000E5EAF000E5EA + F0000000000000000000000000000000000000000000F2F2F200F2F2F200BE7B + 7B00FBDEA800FBDAA700BE7B7B00FBC89E00000064009696FF009696FF009696 + FF000000FF000000FF0000006400000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000001384BB00CCFF + FF0029B8FF0029B8FF00000000000000000066333300F7F1DE00000099000000 + 9900F4E9D4000000000000000000000000000000000000000000000000000000 + 000000000000E1B4900000000000626162000000000000000000000000000000 + 0000B7ECF100B7ECF10000000000E5EAF000E5EAF000E5EAF000E5EAF0000000 + 00000000000000000000000000000000000000000000BE7B7B00BE7B7B00BE7B + 7B00BE7B7B00BE7B7B00BE7B7B00BE7B7B000000640000006400000064009696 + FF000000FF000000640000000000000000000000000068141400681414006814 + 14006814140068141400681414006814140000000000000000001384BB00CCFF + FF00CCFFFF0000000000000000000000000066333300F7F1DE00F5EEDA00F5EE + DA00F4E9D400F2E3CD00F0DCC400EED6BC00ECD0B500EBCAAE00E7C4A500E6BD + 9E00E3B99700E2B5900000000000626162000000000000000000000000000000 + 0000A5E1EC00A6E1EC0000000000E5EAF000E5EAF000E5EAF000E5EAF000E5EA + F0000000000000000000000000000000000000000000F1F1F100F1F1F100BE7B + 7B00FBDBA700FBD6A500BE7B7B00FBC49D00FBC09B00BE7B7B00000064009696 + FF00000064006261620000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000001384BB001384 + BB001384BB001384BB00000000000000000066333300F7F1DE00755835007558 + 3500755835007558350075583500755835007558350075583500755835007558 + 350075583500E2B49000000000006261620000000000000000000000000093D4 + E60092D5E70027698800E5EAF000E5EAF000E5EAF000E5EAF000E5EAF000E5EA + F000E5EAF00000000000000000000000000000000000F2F2F200F2F2F200BE7B + 7B00FBDEA800FBDAA700BE7B7B00FBC89E00FBC39D00BE7B7B00000064000000 + 6400000000006261620000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000066333300F7F1DE00F5EEDA00F5EE + DA00F4E9D400F2E3CD00F0DDC500EED6BC00ECD0B500EACAAD00E7C6A500E6BD + 9D00E3B89600E1B49000000000006261620000000000000000000000000080CA + E20080C9E20080C9E20080C9E20000000000E5EAF000E5EAF000DB292900E5EA + F0000000000000000000000000000000000000000000BE7B7B00BE7B7B00BE7B + 7B00BE7B7B00BE7B7B00BE7B7B00BE7B7B00BE7B7B00BE7B7B00BE7B7B00BE7B + 7B000000000062616200000000000000000000000000000000001384BB00D8FB + FB0029B8FF0029B8FF0000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000066333300F7F1DE0000567E0021A4 + FF0021A4FF0021A4FF0021A4FF00EED6BC00ECD0B500EAC9AE00E7C4A500E6BF + 9D00E3B89600E2B4900000000000626162000000000000000000000000006EBE + DD006EBEDD006EBEDC0000000000E5EAF000E5EAF000E5EAF000000000000000 + 00000000000000000000000000000000000000000000F7F7F700F7F7F700BE7B + 7B00FBEAAE00FBE8AD00BE7B7B00FBDBA800FBD7A600BE7B7B00FBC59E00FBC0 + 9B000000000062616200000000000000000000000000000000001384BB00D8FB + FB0029B8FF0029B8FF0000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000066333300F7F1DE0000567E000056 + 7E0000567E0000567E0021A4FF00EED6BC00ECD0B500EACAAD00E7C6A500E6BD + 9D00E3B89600E1B4900000000000626162000000000000000000000000005BB3 + D7005BB2D7005AB2D70080808000E5EAF000E5EAF000E5EAF000E5EAF0000000 + 00000000000000000000000000000000000000000000F8F8F800F8F8F800BE7B + 7B00FBEAAE00FBEAAE00BE7B7B00FBDFA900FBDBA700BE7B7B00FBC8A000FBC4 + 9D000000000062616200000000000000000000000000000000001384BB00D8FB + FB0029B8FF0029B8FF0000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000066333300F7F1DE00F5EEDA00F5EE + DA00F4E9D400F2E3CD00F0DDC500EED6BC00ECD0B500EACAAD00E7C6A500E6BD + 9D00E3B89600E1B49000000000006261620000000000000000000000000049A8 + D20049A7D20049A8D300000000000000000080808000E5EAF000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000062616200000000000000000000000000000000001384BB00D8FB + FB00D8FBFB000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000006633330066333300663333006633 + 3300663333006633330066333300663333006633330066333300663333006633 + 3300663333006633330066333300000000000000000000000000000000000000 + 00003DA0CF003DA0CF003DA0CF003DA0CF003DA0CF003DA0CF003DA0CF000000 + 000000000000000000000000000000000000000000000000F5000000EF000000 + E9000000E2000000DB000000D4000000CD000000C5000000BD000000B7000000 + B1000000000062616200000000000000000000000000000000001384BB001384 + BB001384BB001384BB0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000F5000000EF000000 + E9000000E2000000DB000000D4000000CD000000C5000000BE000000B7000000 + B100000000006261620000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000FF333300FF33330000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000C0C0C000868686008686860000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000003399 + CC0066CCFF0066CCFF003399CC00000000008686860000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000FF33 + 3300FFFF0000FF99000066000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B2B2B200C0C0C00077777700000000000000000086868600777777000000 + 0000000000000000000000000000000000000000000000000000000000003399 + CC0066CCFF0066CCFF003399CC00000000000000000086868600777777000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00006633330000000000000000000000000000000000000000001C1C1C00FFFF + 0000FF9900006600000000000000000000000000000000000000000000001212 + 2800000000000000000012122800121228001212280012122800121228001212 + 2800121228001212280012122800000000000000000000000000C0C0C000C0C0 + C0007777770077777700CCCCCC00A4A0A000A4A0A00000000000000000008686 + 8600777777000000000000000000000000000000000000000000C0C0C0003399 + CC0066CCFF0066CCFF003399CC0000000000A4A0A00000000000000000008686 + 8600777777000000000000000000000000000000000000000000000000000000 + 00003399CC00CCFFFF00C2F8FB00B3EEF600A2E3F100FF333300FFFF0000FF99 + 0000660000003399CC003DA0D000000000000000000000000000000000003030 + 6D0000000000000000006B6BEF006B6BEF004040CC003030BF0030309F003030 + 6D0030309F001B1B4A0012122800000000000000000086868600777777007777 + 7700CCCCCC00CCCCCC00C0C0C000A4A0A0009999990096969600868686000000 + 0000000000007777770000000000000000000000000086868600777777003399 + CC0066CCFF0066CCFF003399CC00000000009999990096969600868686000000 + 0000000000007777770000000000000000000000000000000000000000000000 + 00003399CC00CCFFFF009C6363009C636300FF333300FFFF0000FF9900006600 + 00003399CC004CA9D4003DA0CF00000000000000000000000000000000003030 + 6D0000000000000000006B6BEF006B6BEF004040CC003030BF0030309F003030 + 6D0030309F001B1B4A0012122800000000008686860077777700D7D7D700CCCC + CC00CCCCCC00C0C0C000C0C0C000A4A0A0009999990096969600969696008686 + 8600868686000000000000000000000000008686860077777700D7D7D7003399 + CC00FFFFFF0066CCFF003399CC00000000009999990096969600969696008686 + 8600868686000000000000000000000000000000000000000000000000000000 + 00003399CC00CCFFFF00C1F8FC00FF333300FF990000FF990000660000003399 + CC005DB5DA004CAAD5003EA0D000000000000000000000000000000000003030 + 6D003030EF0000000000000000006B6BEF004040CC003030BF0030309F003030 + 6D0030309F001B1B4A00121228000000000086868600F8F8F800CCCCCC00CCCC + CC00C0C0C000C0C0C000F8F8F80099999900A4A0A00096969600868686008686 + 86007777770086868600777777000000000086868600F8F8F800CCCCCC003399 + CC00FFFFFF00FFFFFF00C6C6C60000000000A4A0A00096969600868686008686 + 8600777777008686860077777700000000000000000000000000804848008048 + 48001C1C1C002222220099999900F0FBFF0066666600660000003399CC009C63 + 63009C6363009C6363003DA0CF00000000000000000000000000000000003030 + 6D003030EF00A4A4F60000000000000000004040CC003030BF0030309F003030 + 6D0030309F001B1B4A00121228000000000086868600F8F8F800C0C0C000C0C0 + C000F8F8F800F8F8F800CCCCCC00CCCCCC00CCCCCC0096969600969696008686 + 86008686860077777700777777000000000086868600F8F8F800C0C0C000C0C0 + C0003399CC003399CC0000000000CCCCCC00CCCCCC0096969600969696008686 + 8600868686007777770077777700000000000000000080484800E3E3C5003399 + CC00C2F8FB00B3EEF6002222220099999900660000003399CC007FCCE5006FC1 + E0005DB5DA004CAAD5003DA0CF00000000000000000000000000000000000000 + 00003030BF003030BF0000000000000000004040CC003030BF0030309F003030 + 6D0030306D0030306D00000000000000000086868600F8F8F800F8F8F800F8F8 + F800D7D7D700D7D7D7000000FF003300CC00CCCCCC00CCCCCC00C0C0C0008686 + 86008686860086868600777777000000000086868600F8F8F800F8F8F800F8F8 + F80000000000FFFFFF00000000003300CC00CCCCCC00CCCCCC00C0C0C0008686 + 86008686860086868600777777000000000080484800E3E3C500E3E3C5003399 + CC00C2F8FB00BC8E8E00BC8E8E001C1C1C009C6363009C6363009C6363009C63 + 63009C6363009C6363003DA0CF00000000000000000000000000000000000000 + 0000000000000000000000000000000000003030BF0030306D0030306D003030 + 6D000000000000000000000000000000000086868600F8F8F800DDDDDD00DDDD + DD0000FF000000996600CCCCCC00CCCCCC00D7D7D70077777700868686000000 + 0000C0C0C00077777700777777000000000086868600F8F8F800DDDDDD00DDDD + DD0000000000C6C6C60000000000CCCCCC00D7D7D70077777700868686000000 + 0000C0C0C00077777700777777000000000080484800E3E3C500E3E3C5003399 + CC00C2F8FB00B3EEF600A2E3F1001C1C1C00A2E3F10090D7EB0080CCE6006FC1 + E0005DB5DA004CAAD4003DA0D000000000000000000000000000000000000000 + 0000000000000000000000000000000000003030950030306D00121228000000 + 000000000000000000000000000000000000000000008686860086868600F8F8 + F800DDDDDD00D7D7D700D7D7D7008686860077777700C0C0C000C0C0C0000000 + 0000C0C0C000777777007777770000000000000000008686860086868600F8F8 + F8000000000000000000000000008686860077777700C0C0C000C0C0C0000000 + 0000C0C0C00077777700777777000000000080484800E3E3C500E3E3C5003399 + CC00C2F8FB00B3EEF600A2E3F1001C1C1C009C6363009C6363009C6363009C63 + 63009C6363009C6363003EA0CF00000000000000000000000000000000000000 + 0000000000000000000000000000303095003030950030309F0030306D001212 + 2800000000000000000000000000000000000000000000000000000000008686 + 860086868600F8F8F80077777700C0C0C000C0C0C000DDDDDD00E3E3E300DDDD + DD00000000000000000000000000000000000000000000000000000000008686 + 860084848400848484008484840000000000C0C0C000DDDDDD00000000000000 + 00000000000000000000000000000000000080484800E3E3C500E3E3C5003399 + CC00C2F8FB00BC8E8E00BC8E8E001C1C1C00A1E3F10090D7EB007FCCE5006FC1 + E0005DB5DA004CA9D5003DA0D000000000000000000000000000000000000000 + 00000000000030306D00A4A4F6003030BF003030BF003030BF0030309F003030 + 9F00121228000000000000000000000000000000000000000000000000000000 + 0000000000008686860086868600D7D7D700DDDDDD00EAEAEA00EAEAEA00F1F1 + F100DDDDDD0000000000000000000000000084848400C6C6C600000000000000 + 0000C6C6C600C6C6C600C6C6C600848484000000000000000000FFFFFF000000 + 0000DDDDDD000000000000000000000000000000000080484800E3E3C5003399 + CC00C2F8FB00B3EEF6001C1C1C003399CC009C6363009C63630080CCE5006FC1 + E000000000000000000000000000000000000000000000000000000000000000 + 00000000000030309500A4A4F600A4A4F600A4A4F600A4A4F600A4A4F6003030 + EF00303095000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000086868600E3E3E300EAEAEA00F1F1F100F8F8 + F800F8F8F800DDDDDD00000000000000000084848400FFFFFF0084848400C6C6 + C600FFFFFF00C6C6C600C6C6C600C6C6C60084848400FFFFFF0000000000F8F8 + F800F8F8F800DDDDDD0000000000000000000000000000000000804848008048 + 48001C1C1C00222222003399CC00B3EFF700A2E3F10090D7EB0080CCE6006FC1 + E000005F8F003399CC0066CCFF00000000000000000000000000000000000000 + 0000000000000000000030309500303095003030950030309500303095003030 + 9500000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000086868600F1F1F100F1F1F100F8F8 + F8008686860086868600000000000000000084848400FFFFFF00848484008484 + 8400FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000000F1F1F100F8F8 + F800868686008686860000000000000000000000000000000000000000000000 + 00003399CC00CCFFFF00C1F8FC00B3EEF600A2E2F10090D7EB007FCCE5006FC1 + E000005F8F0066CCFF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000086868600868686008686 + 8600000000000000000000000000000000008484840084848400000000000000 + 0000848484008484840084848400848484000000000086868600868686008686 + 8600000000000000000000000000000000000000000000000000000000000000 + 00003399CC00005F8F00005F8F00005F8F00005F8F00005F8F00005F8F00005F + 8F00005F8F00005F8F0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000004042200040422000404 + 2200040422000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000003037A0003037A0003037A0003037A0003037A000303 + 7A00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000313131003131310031313100313131003131 + 310031313100313131003131310000000000000000003A3B7500333590003334 + 9000040422000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000593A0E00FFDECF00915535009155 + 3500915535000000000000000000000000000000000000000000000000000000 + 000003037A000000000000000000000000000000000000000000000000000000 + 00006D4236006D42360000000000000000006D42360000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000724B3900925A3F00925A3F00925A3F00925A + 3F00925A3F00925A3F003131310000000000000000003A3B75003B3E9A003A3E + 9A00040422000000000000000000471515000000000000000000000000000000 + 000000000000000000000000000000000000593A0E00FFDECF00FFA09000FFA0 + 9000915535000000000000000000000000000000000000000000000000000303 + 7A0003037A0003037A0000000000000000000000000000000000000000000000 + 00000000000000000000E5EAF000E5EAF0000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000FF000000000000000000724B3900925A3F0031313100925A3F003131 + 3100925A3F00313131003131310000000000000000003A3B7500424AA5004349 + A60004042200000000004715150047151500471515004715150000000000200D + 0500200D0500200D0500200D0500200D0500593A0E00FFDECF00FFDECF00FFDE + CF00FFA090000000000000000000000000000000000000000000000000000000 + 000003037A000000000000000000000000000000000000000000000000000000 + 000000000000E5EAF000E5EAF00000000000000000006D423600000000006D42 + 3600000000000000000000000000000000000000000000000000471515004715 + 15000000FF000000FF0000000000724B3900925A3F00925A3F00925A3F00925A + 3F00925A3F00925A3F003131310000000000000000003A3B75004C55B2004C55 + B20004042200000000000000000047151500000000000000000000000000724B + 3900925A3F00925A3F00925A3F00200D0500593A0E00593A0E00593A0E00593A + 0E00593A0E00593A0E0003037A0003037A000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E5EAF000E5EAF000E5EAF00000000000FFFFFF000000 + 0000000000000000000000000000000000000000000047151500000000000000 + 00000000FF000000000000000000724B39009A634900313131009A6349003131 + 31009A634800313131003131310000000000000000003A3B75005460BE005461 + BE0004042200000000000000000000000000000000000000000000000000724B + 3900A7705600A6715600A6705700200D0500000000000000000003037A000000 + 00000000000000000000000000000000000003037A00000000000E395900CFFF + FF0059B7FE0059B7FE0059B7FE000000000000000000000000000000000085D0 + E70084D0E700E5EAF000E5EAF000E5EAF000E5EAF00000000000CEDCED000000 + 0000000000000000000000000000000000000000000047151500000000000000 + 0000000000000000000000000000724B3900A7705600A6715600A7715600A770 + 5600A6705600A67057003131310000000000000000003A3B75005C6AC9005C6B + C90004042200000000000000000000000000000000000000000000000000724B + 3900B47F6500B37E6500B47E6500200D0500000000000000000003037A000000 + 00000000000000000000000000000000000003037A00000000000E395900CFFF + FF00CFFFFF00CFFFFF0090FFFF00000000000000000000000000000000006ABE + DE006ABEDE0000000000E5EAF000E5EAF000E5EAF000E5EAF00000000000CEDC + ED00000000000000000000000000000000000000000000000000471515000000 + 0000000000000000000000000000724B3900B47F650031313100B47E65003131 + 3100B37E6500313131003131310000000000000000003A3B75006577D5006576 + D50004042200000000000000000000000000000000000000000000000000724B + 3900CC9A8100CD998200CC998200200D0500000000000000000003037A000000 + 000000000000000000000000000003037A0003037A0003037A000E3959000E39 + 59000E3959000E3959000E3959000E3959000000000000000000000000004FAD + D5004FADD50000000000E5EAF000E5EAF0000000000000000000CEDCED00CEDC + ED00000000000000000000000000000000000000000000000000000000004715 + 1500000000000000000000000000724B3900C08C7300BF8C7300BF8C7300BF8C + 7300C08C7300BF8B73003131310000000000000000003A3B75006E82E2006D82 + E10004042200000000000000000000000000471515000000000000000000724B + 3900E1B09900E1B09900E1B09900200D05000000000003037A0003037A000303 + 7A000000000000000000000000000000000003037A0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000003DA0 + CF003DA0CF003DA0CF0000000000E5EAF000E5EAF00000000000CEDCED00CEDC + ED00CEDCED000000000000000000000000000000000000000000000000000000 + 0000471515000000000000000000724B3900CC9A8100FFFFFF00FFFFFF00FFFF + FF00FFFFFF00CC9982003131310000000000000000003A3B7500768DED00768C + ED0004042200000000004715150047151500471515004715150000000000724B + 3900724B3900724B3900724B3900200D0500000000000000000003037A000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00003DA0CF003DA0CF003DA0CF003DA0CF003DA0CF0000000000CEDCED000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000004715150000000000724B3900D8A68F00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00D9A78F003131310000000000000000003A3B75007D97F7007D97 + F700040422000000000000000000000000004715150000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000E395900CFFFFF0059B7FE0059B7FE0059B7 + FE00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000084848400CEDCED00CEDC + ED00000000000000000000000000000000000000000047151500471515004715 + 1500471515000000000000000000724B3900E1B09900FFFFFF00FFFFFF00FFFF + FF00FFFFFF00E1B099003131310000000000000000003A3B7500829DFE00829D + FE00040422000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000E395900CFFFFF0059B7FE0059B7 + FE0059B7FE0000000000000000000E395900CFFFFF00CFFFFF00CFFFFF0090FF + FF00000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000006E6E6E006E6E6E006E6E6E006E6E6E006E6E + 6E00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000724B3900E1B09900FFFFFF00FFFFFF00FFFF + FF00FFFFFF00E1B099003131310000000000000000003A3B75003A3B75003A3B + 7500040422000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000E395900CFFFFF00CFFFFF00CFFF + FF0090FFFF0000000000000000000E3959000E3959000E3959000E3959000E39 + 59000E3959000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000724B3900E1B09900E1B09900E1B09900E1B0 + 9900E1B09900E1B0990031313100000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000E3959000E3959000E3959000E39 + 59000E3959000E39590000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000724B3900724B3900724B3900724B3900724B + 3900724B3900724B390031313100000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004A4A + 4A004A4A4A0000000000E7E7E70000000000000000000000000070707000B7B7 + B700B7B7B7000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000004A4A4A004A4A4A004A4A + 4A004A4A4A00E7E7E700E7E7E700E7E7E700000000002828280000000000008C + D50000000000888888000000000000000000101A1000101A1000101A1000101A + 1000101A100000000000000000000000000000000000000000002F392F00101A + 1000101A1000101A1000101A100000000000101A1000101A1000101A1000101A + 1000101A100000000000000000000000000000000000000000002F392F00101A + 1000101A1000101A1000101A1000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000002A2A2A000000000000000000000000004A4A4A004A4A4A004A4A + 4A0000000000E7E7E700E7E7E700B5B5B50024B4FF0000000000404040000CAC + FF00008CD40000000000000000000000000018271900C5E3C700476B49002E49 + 3100101A100000000000000000000000000000000000000000002F392F00C5E3 + C700476B49002E493100101A10000000000018271900C5E3C700476B49002E49 + 3100101A100000000000000000000000000000000000000000002F392F00C5E3 + C700476B49002E493100101A1000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00002A2A2A002A2A2A004D4D4D00000000000000000000000000000000004A4A + 4A00E7E7E700E7E7E700ADADAD006B6B6B00616161000A0A0A000000000000A3 + F800009AEA0010101000000000000000000018271900C5E3C700476B49002E49 + 3100101A100000000000000000000000000000000000000000002F392F00C5E3 + C700476B49002E493100101A10000000000018271900C5E3C700476B49002E49 + 3100101A100000000000000000000000000000000000000000002F392F00C5E3 + C700476B49002E493100101A1000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000002A2A + 2A002A2A2A004D4D4D0000000000000000000000000000000000000000000000 + 0000E7E7E700ADADAD006B6B6B003131310015AFFF0001A8FF000AABFF0013AE + FF0000A3F80000000000000000000000000018271900101A1000101A1000101A + 1000101A1000101A1000101A100000000000101A1000101A1000101A1000101A + 1000101A1000101A1000101A10000000000018271900101A1000101A1000101A + 1000101A1000101A1000101A100000000000101A1000101A1000101A1000101A + 1000101A1000101A1000101A100000000000000000000000000000000000A3A3 + A300646464001010100010101000646464000000000010A9FF002A2A2A002A2A + 2A004D4D4D00000000000000000000000000000000000000000000000000E7E7 + E700ADADAD003131310000BD7B000094630034BAFF00000000000E0E0E0001A8 + FF00282828005858580000000000000000001827190033503600C5E3C700476B + 4900101A1000101A1000101A1000101A1000101A1000C5E3C700476B49002E49 + 31002E493100101A1000101A1000000000001827190033503600C5E3C700476B + 4900101A1000101A1000101A1000101A1000101A1000C5E3C700476B49002E49 + 31002E493100101A1000101A1000000000000000000000000000646464000000 + 000030303000D2AF9A00D2AF9A0030303000000000000000000010A9FF004D4D + 4D0000000000000000000000000000000000000000000000000000000000E7E7 + E70000BD7B000094630000946300009463000094630021B3FF0003A9FF0004A9 + FF00009CED000000000000000000000000001827190033503600C5E3C700476B + 4900101A1000101A1000A8CCAB00101A1000101A1000C5E3C700476B49002E49 + 31002E493100101A1000101A1000000000001827190033503600C5E3C700476B + 4900101A1000101A1000A8CCAB00101A1000101A1000C5E3C700476B49002E49 + 31002E493100101A1000101A10000000000000000000A3A3A30000000000D2AF + 9A00FEE3C400FFE3C700FED7B500FECFA800D2AF9A0000000000000000000000 + 0000000000000000000000000000000000000000000000000000E7E7E700E7E7 + E70031313100008C5A00007B520000734A00007B4A00008C5A00007850001EB2 + FF00000000000000000000000000000000001827190033503600C5E3C700476B + 4900101A1000101A1000A8CCAB00101A1000101A1000C5E3C700476B49002E49 + 31002E493100101A1000101A1000000000001827190033503600C5E3C700476B + 4900101A1000101A1000A8CCAB00101A1000101A1000C5E3C700476B49002E49 + 31002E493100101A1000101A100000000000000000006464640030303000FFE8 + CD00FFEBD300FFEDD500FEE1C200FED7B500FECDA70030303000646464000000 + 0000000000000000000000000000000000000000000000000000E7E7E700E7E7 + E700E7E7E7003131310000734A006BFFFF003939390000734A00007B4A00008C + 630000ADAD00000000000000000000000000000000001827190018271900101A + 1000101A1000101A1000101A1000101A1000101A1000101A1000101A1000101A + 1000101A1000101A10000000000000000000000000001827190018271900101A + 1000101A1000101A1000101A1000101A1000101A1000101A1000101A1000101A + 1000101A1000101A100000000000000000000000000010101000E8C7B100FFEE + D900FFF2E300FFF6E600FFEDD700FEDDBF00FED3AE00D2AF9A00101010000000 + 00000000000000000000000000000000000000000000E7E7E700E7E7E700E7E7 + E700E7E7E700E7E7E70021FFAD0000D68C0000FFFF006BFFFF00393939000073 + 4A0000734A00009494000000000000000000000000000000000018271900C5E3 + C700476B4900101A1000101A10000000000018271900C5E3C700476B49002E49 + 3100101A1000000000000000000000000000000000000000000018271900C5E3 + C700476B4900101A1000101A10000000000018271900C5E3C700476B49002E49 + 3100101A10000000000000000000000000000000000010101000E8C7B100FFF2 + E300FFF8EE00FFFAF000FFF6E800FFEDD700FED5B500D2AF9A00101010000000 + 00000000000000000000000000000000000000000000E7E7E700E7E7E700E7E7 + E700E7E7E70021FFAD0000DE940000DE940000DE940000CE840000DEDE0000FF + FF003131310000734A0000000000000000000000000000000000182719001827 + 1900476B4900101A1000101A1000000000001827190018271900476B49002E49 + 3100101A10000000000000000000000000000000000000000000182719001827 + 1900476B4900101A1000101A1000000000001827190018271900476B49002E49 + 3100101A1000000000000000000000000000000000006464640030303000FFEF + D900FFF4E300FFF6E800FFEDD700FEDDBF00FED3AE0030303000646464000000 + 000000000000000000000000000000000000000000000000000000000000E7E7 + E700E7E7E7003939390000DE940000DE940000D68C0000C6840000BD7B0000BD + 7B0000D6BD0000DEDE0000000000000000000000000000000000000000001827 + 1900182719001827190000000000000000000000000018271900182719001827 + 1900000000000000000000000000000000000000000000000000000000001827 + 1900182719001827190000000000000000000000000018271900182719001827 + 19000000000000000000000000000000000000000000A3A3A30000000000D2AF + 9A00FFEBD300FFEDD700FEDFC200FED7B500D2AF9A0010101000A3A3A3000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E7E7E700E7E7E7003939390000BD7B0000BD7B0000B5730000A5 + 6B0000A56B0000A56B0000CEC600000000000000000000000000000000001B28 + 1C00C5E3C700000000000000000000000000000000001B281C00C5E3C7000000 + 0000000000000000000000000000000000000000000000000000000000001B28 + 1C00C5E3C700000000000000000000000000000000001B281C00C5E3C7000000 + 0000000000000000000000000000000000000000000000000000646464000000 + 000030303000E8C7B100D2AF9A00303030001010100064646400000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000E7E7E7000000000000000000009463000094 + 6300009463000094630000000000000000000000000000000000000000001B28 + 1C001B281C00182719000000000000000000000000001B281C001B281C001B28 + 1C00000000000000000000000000000000000000000000000000000000001B28 + 1C001B281C00182719000000000000000000000000001B281C001B281C001B28 + 1C0000000000000000000000000000000000000000000000000000000000A3A3 + A30064646400101010001010100064646400A3A3A30000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000009463000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000002A2AD1002A2AB00000000000000000000000 + 00000000000000000000000000002A2AB0000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000009D9D9D00616161006161610061616100616161009D9D9D000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000004545FE002A2AD1002A2AB000000000000000 + 000000000000000000002A2AB0002A2AD1000000000000000000000000006261 + 6200626162006261620062616200626162006261620062616200626162006261 + 6200626162006261620062616200000000000000000000000000000000009D9D + 9D0061616100616161005DD2EF005DD2EF005DD2EF005DD2EF00616161006161 + 61009D9D9D000000000000000000000000000000000000000000000000004A4A + 4A004A4A4A0000000000E7E7E70000000000000000003C352A00395A6000395A + 60004894A2000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000004545FE002A2AD1002A2AB0000000 + 0000000000002A2AB0002A2AD100000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000626162000000000000000000000000009D9D9D006161 + 61005DD2EF005DD2EF005DD2EF005DD2EF005DD2EF005DD2EF00E2C88000E2C8 + 8000616161009D9D9D000000000000000000000000004A4A4A004A4A4A004A4A + 4A004A4A4A00E7E7E700E7E7E700E7E7E700000000003C352A007BB2BC007BB2 + BC005FDFF600253C400000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000004545FE002A2AD1004545 + FE002A2AB0002A2AD10000000000000000000000000000000000E6E6E600E6E6 + E600964A4A00F7C07800F7B97600964A4A00F79E6D00F7986B00964A4A00F774 + 5F00F76B5C00000000006261620000000000000000009D9D9D00616161005DD2 + EF005DD2EF005DD2EF005DD2EF005DD2EF005DD2EF00E2C88000E2C88000E2C8 + 8000E2C88000616161009D9D9D0000000000000000004A4A4A004A4A4A004A4A + 4A0000000000E7E7E700E7E7E700B5B5B500B79E71003C352A0066594100253C + 4000253C40004F4FFF004747C2000000000000000000000000006D4236006D42 + 360000000000000000006D4236000000000000000000000000002A2AB0002A2A + D1002A2AB0000000000000000000000000000000000000000000E8E8E800E8E8 + E800964A4A00F7C57A00F7BF7800964A4A00F7A46E00F79D6D00964A4A00F77C + 6200F7735F0000000000626162000000000000000000616161005DD2EF005DD2 + EF005DD2EF005DD2EF005DD2EF005DD2EF005DD2EF00E2C88000E2C88000E2C8 + 8000E2C88000E2C8800061616100000000000000000000000000000000004A4A + 4A00E7E7E700E7E7E700ADADAD006B6B6B00E8C99200E8C992003C352A004F4F + FF004F4FFF004F4FFF004747C200000000000000000000000000000000000000 + 0000E5EAF000E5EAF0000000000000000000000000002A2AB0002A2AD1004545 + FE002A2AD1002A2AB00000000000000000000000000000000000964A4A00964A + 4A00964A4A00964A4A00964A4A00964A4A00964A4A00964A4A00964A4A00964A + 4A00964A4A000000000062616200000000009D9D9D00616161005DD2EF005DD2 + EF005DD2EF005DD2EF005DD2EF005DD2EF005DD2EF00E2C88000E2C88000E2C8 + 8000E2C88000E2C88000616161009D9D9D000000000000000000000000000000 + 0000E7E7E700ADADAD006B6B6B0031313100E8C99200E8C99200E8C992004F4F + FF004F4FFF004F4FFF004747C20000000000000000000000000000000000E5EA + F000E5EAF0000000000000000000000084002A2AB0002A2AD1002A2AD1000000 + 0000000000004545FE002A2AB000000000000000000000000000E6E6E600E6E6 + E600964A4A00F7C07800F7B97600964A4A00F79E6D00F7986B00964A4A00F79F + 6E00F7986B00000000006261620000000000616161005DD2EF005DD2EF005DD2 + EF005DD2EF005DD2EF005DD2EF005DD2EF00E2C88000E2C88000E2C88000E2C8 + 8000E2C88000E2C88000E2C8800061616100000000000000000000000000E7E7 + E700ADADAD003131310000BD7B00009463000094630000000000E8C992003030 + 5B0030305B0041417E0041417E00000000000000000000000000000000000000 + 0000E5EAF000E5EAF000E5EAF000000000002A2AD1002A2AD100000000000000 + 000000000000000000004545FE002A2AB0000000000000000000E8E8E800E8E8 + E800964A4A00F7C57A00F7BF7800964A4A00F7A46E00F79D6D00964A4A00F7A4 + 7000F79E6D00000000006261620000000000616161005DD2EF005DD2EF005DD2 + EF005DD2EF005DD2EF005DD2EF005DD2EF00E2C88000E2C88000E2C88000E2C8 + 8000E2C88000E2C88000E2C8800061616100000000000000000000000000E7E7 + E70000BD7B00009463000094630000946300009463000094630000DEDE000000 + 000041417E0041417E0000000000000000000000000085D0E70084D0E700E5EA + F000E5EAF000E5EAF000E5EAF00000000000CEDCED0000000000000000000000 + 00000000000000000000000000004545FE000000000000000000964A4A00964A + 4A00964A4A00964A4A00964A4A00964A4A00964A4A00964A4A00964A4A00964A + 4A00964A4A00000000006261620000000000616161005DD2EF005DD2EF005DD2 + EF005DD2EF005DD2EF005DD2EF004E4EDD00E2C88000E2C88000E2C88000E2C8 + 8000E2C88000E2C88000E2C88000616161000000000000000000E7E7E700E7E7 + E70031313100008C5A00007B520000734A00007B4A00008C5A000094630000CE + CE0000000000000000000000000000000000000000006ABEDE006ABEDE000000 + 0000E5EAF000E5EAF000E5EAF000E5EAF00000000000CEDCED00000000000000 + 0000000000000000000000000000000000000000000000000000F1F1F100F1F1 + F100964A4A00F7DA8100F7D78000964A4A00F7C17900F7BB7700964A4A00F79F + 6E00F7986B00000000006261620000000000616161005DD2EF005DD2EF005DD2 + EF005DD2EF004E4EDD004E4EDD004E4EDD004E4EDD00E2C88000E2C88000E2C8 + 8000E2C88000E2C88000E2C88000616161000000000000000000E7E7E700E7E7 + E700E7E7E7003131310000734A006BFFFF0039393900B3D5C900B3D8C900008C + 630000ADAD00000000000000000000000000000000004FADD5004FADD5000000 + 0000E5EAF000E5EAF0000000000000000000CEDCED00CEDCED00000000000000 + 0000000000000000000000000000000000000000000000000000F3F3F300F3F3 + F300964A4A00F7DA8100F7DA8100964A4A00F7C77B00F7C07800964A4A00F7A4 + 7000F79E6D000000000062616200000000009D9D9D00616161005DD2EF004E4E + DD004E4EDD004E4EDD004E4EDD004E4EDD004E4EDD004E4EDD00E2C88000E2C8 + 8000E2C88000E2C88000616161009D9D9D0000000000E7E7E700E7E7E700E7E7 + E700E7E7E700E7E7E70021FFAD0000D68C000000E1000000E1000000E100B3D5 + C90000734A00009494000000000000000000000000003DA0CF003DA0CF003DA0 + CF0000000000E5EAF000E5EAF00000000000CEDCED00CEDCED00CEDCED000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000626162000000000000000000616161004E4EDD004E4E + DD004E4EDD004E4EDD004E4EDD004E4EDD004E4EDD004E4EDD004E4EDD00E2C8 + 8000E2C88000E2C88000616161000000000000000000E7E7E700E7E7E700E7E7 + E700E7E7E70021FFAD0000DE940000DE9400B3F5DF000000E1000000E1000000 + E1003131310000734A00000000000000000000000000000000003DA0CF003DA0 + CF003DA0CF003DA0CF003DA0CF0000000000CEDCED0000000000000000000000 + 00000000000000000000000000000000000000000000000000000000F5000000 + EF000000E9000000E2000000DB000000D4000000CD000000C5000000BD000000 + B7000000B100000000006261620000000000000000009D9D9D00616161004E4E + DD004E4EDD004E4EDD004E4EDD004E4EDD004E4EDD004E4EDD004E4EDD004E4E + DD00E2C88000616161009D9D9D0000000000000000000000000000000000E7E7 + E700E7E7E7003939390000DE940000DE94000000E1000000E1000000E100B3EB + D80000D6BD0000DEDE0000000000000000000000000000000000000000000000 + 000000000000000000000000000084848400CEDCED00CEDCED00000000000000 + 00000000000000000000000000000000000000000000000000000000F5000000 + EF000000E9000000E2000000DB000000D4000000CD000000C5000000BE000000 + B7000000B10000000000626162000000000000000000000000009D9D9D006161 + 61004E4EDD004E4EDD004E4EDD004E4EDD004E4EDD004E4EDD004E4EDD004E4E + DD00616161009D9D9D0000000000000000000000000000000000000000000000 + 000000000000E7E7E700E7E7E70039393900B3EBD8000000E1000000E1000000 + E10000A56B0000A56B0000CEC600000000000000000000000000000000000000 + 0000000000006E6E6E006E6E6E006E6E6E006E6E6E006E6E6E00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000009D9D + 9D0061616100616161004E4EDD004E4EDD004E4EDD004E4EDD00616161006161 + 61009D9D9D000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000E7E7E70000000000B3B3B300B3DFD1000094 + 6300009463000094630000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000009D9D9D00616161006161610061616100616161009D9D9D000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000009463000000000000000000000000000000000000000000000000000000 + 0000626162006261620062616200626162006261620062616200626162006261 + 6200626162006261620062616200626162000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000626162000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000062616200626162006261 + 6200626162006261620062616200626162006261620062616200626162006261 + 6200626162006261620062616200626162000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000E4E4E40000000000FFA83700FF9E340080000000FF732600FF6923008000 + 0000FF311000FF230B0000000000626162000000000000000000000000000000 + 00001F79A500FFFFFF0066CCFF0066CCFF0066CCFF0066CCFF0066CCFF0066CC + FF0066CCFF0066CCFF0066CCFF0000000000A78B6900412C1300412C1300412C + 1300412C1300412C1300412C1300412C1300412C1300412C1300412C1300412C + 1300412C1300412C1300412C1300626162000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000E7E8E70000000000FFB13B00FFA7370080000000FF7C2800FF7125008000 + 0000FF3D1400FF2F0F0000000000626162000000000000000000000000000000 + 00001F79A500FFFFFF0066CCFF00000000000000000000000000000000000000 + 0000000000000000000066CCFF0000000000A78B6900DAEEE200D5ECDD00D5EC + DD00CFE9DA00C7E6D200BEE1CC00B6DDC500AED8BE00A8D6BA009FD0B10097CC + AA0090C8A5008CC5A100412C1300626162000000000000000000000000000000 + 0000471515000000000000000000313131003131310031313100313131003131 + 3100313131003131310031313100000000000000000000000000000000000000 + 0000000000000000000080000000800000008000000080000000800000008000 + 0000800000008000000000000000626162000000000000000000000000000000 + 00001F79A500FFFFFF0066CCFF000000000066CCFF001F79A50066CCFF001F79 + A50066CCFF000000000066CCFF0000000000A78B6900DAEEE2007C5D37007C5D + 3700CFE9DA007C5D37007C5D37007C5D37007C5D37007C5D37007C5D37007C5D + 37007C5D37008CC5A100412C1300626162000000000047151500471515004715 + 1500471515004715150000000000724B3900925A3F00925A3F00925A3F00925A + 3F00925A3F00925A3F0031313100000000000000000000000000000000000000 + 0000F6F6F60000000000FFD14500FFCC440080000000FFAA3800FFA035008000 + 0000FF752700FF6A230000000000626162000000000000000000000000000000 + 00001F79A500FFFFFF0066CCFF00000000000000000000000000000000000000 + 0000000000000000000066CCFF0000000000A78B6900DAEEE200D5ECDD00D5EC + DD00CFE9DA00C7E6D200BEE1CC00B6DDC500AED8BE00A8D6BA009FD0B10097CC + AA0090C8A5008CC5A100412C1300626162000000000000000000000000000000 + 0000471515000000000000000000724B39009A6349009A6449009A6349009A64 + 48009A6348009A644900313131000000000000000000A3A2A300A3A2A3000000 + 0000F9F8F80000000000FFD14500FFD1450080000000FFB33C00FFA837008000 + 0000FF7D2A00FF73260000000000626162000000000000000000000000000000 + 00001F79A500FFFFFF0066CCFF0066CCFF0066CCFF0066CCFF0066CCFF0066CC + FF0066CCFF0066CCFF0066CCFF0000000000A78B6900DAEEE2007C5D37007C5D + 3700CFE9DA007C5D37007C5D37007C5D37007C5D37007C5D37007C5D37007C5D + 37007C5D37008BC49F00412C1300626162000000000000000000000000000000 + 0000000000000000000000000000724B3900A7705600A6715600A7715600A770 + 5600A6705600A670570031313100000000006A6A6A006A6A6A006A6A6A000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000062616200000000009C6363009C6363009C63 + 63001F79A500FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF0000000000A78B6900DAEEE200D5ECDD00D5EC + DD00CFE9DA00C7E6D200BEE1CC00B6DDC500AED8BE00A8D6BA009FD0B10099CE + AD0091C9A6008CC5A100412C1300626162000000000000000000000000000000 + 0000000000000000000000000000724B3900B47F6500B37E6500B47E6500B37F + 6500B37E6500B47E650031313100000000006A6A6A00EFEFEF006A6A6A000000 + 0000FFFFFF0000000000F9F8F800F5F6F500EBECEB00E8E9E80000000000D9D8 + D900D4D5D400D0D0D00000000000626162009C636300CE9C9C00CE9C9C00CE9C + 9C001F79A5001F79A5001F79A5001F79A5001F79A5001F79A5001F79A5001F79 + A5001F79A5001F79A5001F79A50000000000A78B6900DAEEE2007C5D37007C5D + 37007C5D37007C5D37007C5D37007C5D37007C5D37007C5D37007C5D37007C5D + 37007C5D37008CC5A100412C1300626162000000000000000000000000000000 + 0000000000000000000000000000724B3900C08C7300BF8C7300BF8C7300BF8C + 7300C08C7300BF8B730031313100000000006A6A6A00F1F1F1006A6A6A000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000009C636300CE9C9C0000FF0000CE9C + 9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C + 9C009C636300000000000000000000000000A78B6900DAEEE200D5ECDD00D5EC + DD00CFE9DA00C7E6D200BEE1CC00B6DDC500AED8BE00A6D5B8009FD0B10097CC + AA0090C8A5008BC49F00412C1300626162000000000000000000000000000000 + 0000000000000000000000000000724B3900CC9A8100CD998200CC9A8100CC99 + 8200CD9A8200CC99820031313100000000006A6A6A006A6A6A006A6A6A00B46A + 6A00B46A6A00B46A6A00B46A6A00B46A6A00B46A6A00B46A6A00B46A6A006A6A + 6A00A3A2A3000000000000000000000000009C636300CE9C9C009C6363009C63 + 63009C6363009C6363009C6363009C6363009C6363009C6363009C6363009C63 + 63009C636300000000000000000000000000A78B6900DAEEE2004B93C50073C6 + E50073C6E50073C6E50073C6E500B6DDC500AED8BE00A8D6BA009FD0B10097CC + AA0090C8A5008CC5A100412C1300626162000000000000000000000000000000 + 0000471515000000000000000000724B3900D8A68F00D9A69000D8A78F00D9A7 + 8F00D8A79000D9A78F0031313100000000006A6A6A00FAFAFA006A6A6A00FFE5 + 9700FFE29600B8707000FFCF8F00FFCA8E00B8707000FFB28600FFAB84006A6A + 6A00A3A2A3000000000000000000000000009C636300CE9C9C00CE9C9C00CE9C + 9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C + 9C009C636300000000000000000000000000A78B6900DAEEE2004B93C5004B93 + C5004B93C5004B93C50073C6E500B6DDC500AED8BE00A6D5B8009FD0B10097CC + AA0090C8A5008BC49F00412C1300626162000000000047151500471515004715 + 1500471515004715150000000000724B3900E1B09900E1B09900E1B09900E1B0 + 9900E1B09900E1B0990031313100000000006A6A6A00FBFBFB006A6A6A00FFE5 + 9700FFE59700B8707000FFD49200FFCE8F00B8707000FFB68800FFB085006A6A + 6A00A3A2A3000000000000000000000000009C636300FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF009C636300000000000000000000000000A78B6900DAEEE200D5ECDD00D5EC + DD00CFE9DA00C7E6D200BEE1CC00B6DDC500AED8BE00A6D5B8009FD0B10097CC + AA0090C8A5008BC49F00412C1300626162000000000000000000000000000000 + 0000471515000000000000000000724B3900724B3900724B3900724B3900724B + 3900724B3900724B390031313100000000006A6A6A006A6A6A006A6A6A006A6A + 6A006A6A6A006A6A6A006A6A6A006A6A6A006A6A6A006A6A6A006A6A6A006A6A + 6A00A3A2A300000000000000000000000000000000009C636300CE9C9C00CE9C + 9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C9C00CE9C + 9C00FFFFFF00000000000000000000000000A78B6900A78B6900A78B6900A78B + 6900A78B6900A78B6900A78B6900A78B6900A78B6900A78B6900A78B6900A78B + 6900A78B6900A78B6900A78B6900000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000006A6A6A00FFFFFF006A6A6A00FBFB + FB00F9FAF900F3F4F300F1F2F1006A6A6A00E9E8E900E6E6E600E3E3E3006A6A + 6A00A3A2A30000000000000000000000000000000000000000009C6363009C63 + 63009C6363009C6363009C6363009C6363009C6363009C6363009C6363009C63 + 63009C6363000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000006A6A6A006A6A6A006A6A6A006A6A + 6A006A6A6A006A6A6A006A6A6A006A6A6A006A6A6A006A6A6A006A6A6A006A6A + 6A00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000B27F4F00AC743B00A96E3500A96E + 3500AF783D00AD743800AA6E3500AB713700AB733900A86D3600A76E3800A970 + 3C00A8703E00A0633700A0663D00E4D4CA000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000683E68000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000008E400000A86E2D00C7A17800CBA7 + 83009B530A00BC8D5A00C39C7000BC8C5B00B27E4600BB8D5D00B4815100954F + 13008A3E0000B6886100873C0000AA775900FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00808080000000000000000000000000000000000000000000000000000000 + 000000000000683E6800683E68009300D600804C800000000000000000000000 + 0000000000000000000000000000000000009C636300FFFFFF00FFCC99006633 + 3300000000000000000000000000000000000000000000000000939393009393 + 930000000000A86F6A00A168660000000000964C0000A35F1400E0CEB500E4D4 + BE00994D0000E4D2B800EDE1D100D2B28900DBC3A300B9895200B98A5500B07A + 4300C7A47F00E8DACA009B5C2100AC7A530000000000FFFFFF00000000008080 + 8000FFFFFF000000000080808000FFFFFF000000000080808000FFFFFF000000 + 000080808000000000000000000000000000000000000000000000000000683E + 6800683E68009300D600CC66CC00D6E7E700C0C0C000804C8000000000000000 + 0000000000000000000000000000000000009C636300FFFFFF00FFCC99006633 + 3300000000000000000000000000000000000000000000000000939393009393 + 930000000000A76F6A00A068660000000000994E0000C3986400E3CFB400E0C9 + AA00B0762B00CCA67500F5EFE600C3975F00F1E8DB00CDAA7C00D2B49000BE91 + 6000D0B28E00E4D2BF00934E0900AD7B53000000000080808000C0C0C000C0C0 + C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0 + C000C0C0C00080808000808080000000000000000000683E6800683E68009300 + D600CC66CC00D6E7E700D6E7E700D6E7E700C0C0C000C0C0C000804C80000000 + 0000000000000000000000000000000000009C636300FFFFFF00FFCC99006633 + 3300000000000000000000000000000000000000000000000000939393009393 + 930000000000A86F6900A1686500000000009D550000A35C0000AD6F1900A45C + 0000A8640400AD6D1300B0732300AB6A1000AB6C1A00A15B03009D5503009C55 + 00009D580C00A0601A00924C0000B07E53000000000080808000C0C0C00000FF + 0000C0C0C000C0C0C000C0C0C000000000000000000000000000000000000000 + 0000C0C0C0008080800080808000000000007A457A009300D600CC66CC00D6E7 + E700D6E7E700C0C0C000C0C0C0007A457A009999990090A9AD00C0C0C000804C + 8000000000000000000000000000000000009C636300FFFFFF00FFCC99006633 + 3300663333006633330066333300663333006633330066333300663333006633 + 330066333300A8706900A168650000000000A0570000A7620000A8630600C08E + 4600B1711A00AA660000A9630000A8630000A5600000A5600000A35E0000A05A + 00009C55000097500000954F0000B08053000000000080808000C0C0C000C0C0 + C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0 + C000C0C0C0008080800080808000000000007A457A0099999900D6E7E700C0C0 + C00090A9AD007A457A007A457A00955D9500000000008686860099999900C0C0 + C000804C80000000000000000000000000009C636300FFFFFF00FFCC9900FAC7 + 9600F3C09300ECB78F00E3AE8900D9A58500D29B8000C9937C00C18A7700B881 + 7300B0776E00A7706900A168650000000000A45C0000AC680000D2AD7600FFFF + FF00F6EEE100AF670000B06C0000AE6A0000AC680000A9650000A7620000A45F + 0000A15A00009D56010099530100B38253000000000000000000808080008080 + 8000808080008080800080808000808080008080800080808000808080008080 + 800080808000C0C0C00080808000000000007A457A0099999900C0C0C0007A45 + 7A007A457A00B46CB400B46CB400955D9500955D950000000000666666009999 + 990090A9AD00804C800000000000000000009C636300FFFFFF00FFCC9900FAC7 + 9700F4C09300ECB78F00E3AE8900DAA48500D29B8000CA937C00C18A7700B881 + 7200B0776D00A86F6900A168660000000000A75F0000AF6B0000DBBA8B00FFFF + FF00FAF6F000B26A0000B46E0000B16D0000AF6A0000AC680000A8640000A561 + 0000A25C00009E5800009A540000B48353000000000000000000000000008080 + 8000808080008080800080808000808080008080800080808000808080008080 + 80008080800080808000C0C0C000000000007A457A007A457A007A457A00B46C + B400B46CB400B46CB400B46CB400B46CB400955D9500955D9500000000006666 + 66009999990086868600804C8000000000009C636300FFFFFF00FFCC9900FAC7 + 9700004B7100004B7100004B7100004B7100004B7100004B7100004B7100004B + 7100004B7100A8706900A169660000000000AB630000B36F0000DBBB8900FFFF + FF00FAF6EE00B76F0000B46B0000B36A0000B0680000AD650000A9620000A45D + 0000A5600000A15B00009D570100B6855300000000000000000000000000FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00808080000000000000000000000000007A457A00F8B9F800B46CB400B46C + B400B46CB400B46CB400B46CB400B46CB400955D9500955D9500955D95000000 + 00006666660099999900804C8000000000009C636300FFFFFF00FFCC99003399 + CC00CCFFFF00C0F7FB00AFECF5009CDFEF0089D2E90076C6E20063B9DC0050AC + D5003EA1D000004B7100A169650000000000AE650000B6720000DDBC8900FFFF + FF00FAF6EE00B86E0000E7CFA900F1E3CB00EFE2CB00EFE1CB00EFE1CC00D5B3 + 8500A55F0000A25D00009F580000B7865200000000000000000000000000FFFF + FF0000000000808000008080000000000000000000000000000080800000FFFF + FF0080808000000000000000000000000000000000007A457A00F8B9F800B46C + B400B46CB400B46CB400B46CB400B46CB400955D9500955D9500955D95007A43 + 7A000000000066666600804C8000000000009C636300FFFFFF00FFCC99003399 + CC00CCFFFF00C0F7FB00AFECF6009BDFEF0088D2E90076C6E20063B9DC0050AC + D5003FA1D000004B7100A168660000000000B2680000BA750000DFBE8900FFFF + FF00FBF6EE00BC6F0000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FCFA + F600A45C0000A5600000A15A0000B8885300000000000000000000000000FFFF + FF00000000008080000000000000FFFFFF00FFFFFF000000000080800000FFFF + FF008080800000000000000000000000000000000000000000007A457A00F8B9 + F800B46CB400B46CB400B46CB400B46CB400B46CB400955D9500955D95007A43 + 7A007A437A0000000000804C8000000000009C636300FFFFFF00FFCC99003399 + CC00CCFFFF00C0F7FC00AFECF6009CDFEF0089D2E90076C6E30063B9DC004FAC + D5003FA1D000004B7100A168660000000000B36A0000BC780000E1C08900FFFF + FF00FBF7EE00C2760000D6A65800DDB67A00DBB47900D8B27900D6AF7A00BD85 + 3A00A8630000A5600000A25C0000B9885300000000000000000000000000FFFF + FF000000000080800000FFFFFF00FF000000FF0000000000000080800000FFFF + FF00808080000000000000000000000000000000000000000000000000007A45 + 7A00F8B9F800B46CB400B46CB400B46CB400B46CB400955D9500955D95007A43 + 7A007A437A007A437A0000000000000000009C636300FFFFFF00FFCC99003399 + CC00CCFFFF00C0F7FB00AFEBF5009CDFEF0088D2E80077C6E30063B9DC0050AC + D6003FA1D000004B7100A168660000000000B66D0000C17B0000E3C18900FFFF + FF00FFFFFF00E6C58C00E6C78E00E4C58D00E2C48D00E0C28D00DEC08D00DCBF + 9000C5955200A6610000A35D0000BA895300000000000000000000000000FFFF + FF0000000000FFFF00000000000000000000000000008080000080800000FFFF + FF00808080000000000000000000000000000000000000000000000000000000 + 00007A457A00F8B9F800B46CB400B46CB400B46CB400955D9500955D95007A43 + 7A007A437A00643C640000000000000000009C636300FFFFFF00FFCC99003399 + CC00CCFFFF00C0F7FB00AFEBF5009CDFEF0088D2E80076C6E20063BADD0050AC + D6003FA1D000004B7100A168650000000000B86E0000C27C0000E3C08500FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00A2590000A35E0000BA895300000000000000000000000000FFFF + FF0000000000000000000000000000000000000000000000000000000000FFFF + FF00808080000000000000000000000000000000000000000000000000000000 + 0000000000007A457A00F8B9F800B46CB400B46CB400B46CB400955D9500643C + 6400000000000000000000000000000000009C636300FFFFFF00FFCC99003399 + CC00CCFFFF00C0F7FB00B0ECF6009CDFEE0088D2E80076C6E20063B9DC004FAD + D6003EA1D000004B71000000000000000000BA710000C47E0000CD8A1500F6EA + D400F7ECD500F8ECD500F7EBD500F5EAD500F5E9D500F4E9D500F3E8D500F2E8 + D600DEC59C00A6610000A45F0000BA885100000000000000000000000000FFFF + FF00C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0 + C000808080000000000000000000000000000000000000000000000000000000 + 000000000000000000007A457A00F8B9F800B46CB400643C6400000000000000 + 0000000000000000000000000000000000009C636300FFFFFF00FFFFFF008888 + 8800CCFFFF00C0F7FB00B0ECF6009CDFEF0088D2E80076C6E30063B9DC004FAC + D6003FA1D00066666600C0C0C00000000000BF7C1D00C8841700CD871700D490 + 1900DA961A00DB971A00D5911A00CF8B1A00C9871A00C3821A00BE7D1A00B878 + 1A00AF6C1600AC6C1700A8661600CBA67F000000000000000000000000000000 + 0000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0 + C000FFFFFF000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000007A457A000000000000000000000000000000 + 0000000000000000000000000000000000009C6363009C6363009C6363009C63 + 63009C6363009C6363009C6363009C6363009C6363009C6363009C6363009C63 + 63009C6363009C6363009C6363009C6363000000000066666700666667006666 + 6700666667006666670066666700666667006666670066666700666667006666 + 6700666667006666670066666700666667000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000066666700666667006666 + 6700666667006666670066666700666667006666670066666700666667006666 + 6700666667006666670066666700666667000000000066666700666667006666 + 6700666667006666670066666700666667006666670066666700666667006666 + 67006666670066666700666667006666670000285C0000285C0000285C000028 + 5C0000285C0000285C0000285C0000285C0000285C0000285C0000285C000028 + 5C0000285C0000285C0000285C0066666700000000007A420000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000285C0000285C0000285C000028 + 5C0000285C0000285C0000285C0000285C0000285C0000285C0000285C000028 + 5C0000285C0000285C0000285C006666670000285C0000285C0000285C000028 + 5C0000285C0000285C0000285C0000285C0000285C0000285C0000285C000028 + 5C0000285C0000285C0000285C00666667003D78B50090E9FF008BE5FD0084DE + FA007AD7F70070CFF30066C7F0005BBEED0052B6E80048AEE5003FA6E100349E + DE002A95DA001F8DD60000285C0066666700000000000000A8007A4200000000 + 0000000000000000000000000000000000000000000062350000000000000000 + 0000000000007A42000000000000000000003D78B50090E9FF008BE5FD0084DE + FA007AD7F70070CFF30066C7F0005BBEED0052B6E80048AEE5003FA6E100349E + DE002A95DA001F8DD60000285C00666667003D78B50090E9FF008BE5FD0084DE + FA007AD7F70070CFF3005AB1DB004FA5D5004FB0E20048AEE5003FA6E100349E + DE002A95DA001F8DD60000285C00666667003D78B50090E9FF00192D5C000004 + 3800000438004C8FB80066C6F0005CBEEC0052B5E80023578C00000438000004 + 38000D326B00208DD60000285C006666670000000000000000000000A8007A42 + 0000000000000000000062350000000000000000000062350000000000000000 + 00007A420000000000007A420000000000003D78B50090E9FF008AE4FD000004 + 3800000438000004380000043800000438000004380008174C00153B71002E89 + C8002A95DA00208DD60000285C00666667003D78B50090E9FF008AE4FD0078CC + EA002F558100050E4100000438000004380001073B00173A6F003794CF00359E + DE002A95DA00208DD60000285C00666667003D78B50090E9FF004E83A8000004 + 3800000438001E3A6A004180AD003A7AAA003374A8000B1E5200000438000004 + 38001C65A4001F8DD60000285C006666670000000000000000000000A8000000 + 00007A42000000000000623500000000000000000000000000007A4200007A42 + 00000000000000000000000000007A4200003D78B50090E9FF008AE4FD000004 + 380000043800000438000004380000043800000438000004380000043800081C + 51002994D7001F8DD60000285C00666667003D78B50090E9FF0084D9F4001424 + 5500000438000004380000043800000438000004380000043800081A4F003194 + D3002A96DA001F8DD60000285C00666667003D78B50090E9FF0080D2ED000207 + 3B0000043800000438000004380000043800000438000004380000043800030E + 43002990D5001F8CD70000285C00666667000000000000000000000000000000 + A800000000007A42000000000000000000007A4200007A420000000000000000 + 0000623500000000000000000000000000003D78B50090E9FF008BE4FD000004 + 38000004380000043800386F9D003A7AAB00275A8D0000043800000438000004 + 38002278BA001F8CD70000285C00666667003D78B50090E9FF0046749B000004 + 380000043800112254004689B6004289BA000C1F520000043800000438001C57 + 91002A95DA001F8CD70000285C00666667003D78B50090E9FF008BE4FD002A4A + 7600000438000004380011255700193669000B1C50000004380000043800143F + 77002A95DA00208DD70000285C00666667000000000000000000000000000000 + A80000000000000000007A4200007A4200000000000000000000000000000000 + 0000623500000000000000000000000000003D78B50090E9FF008BE4FD000004 + 3800000438000004380058ACD7005CBEEC0052B6E90007154900000438000004 + 38002278BA00208DD70000285C00666667003D78B50090E9FF001A2D5C000004 + 3800000438004D8FB80066C6EF005CBEEC004293C600030C400012346B00236C + A9002A95DA00208DD70000285C00666667003D78B50090E9FF008AE4FD005795 + B90000043800000438002E5C8B005BBEEC0017366A000004380000043800287A + B6002A95DA00208CD70000285C00666667000000000000000000000000000000 + 00000000A8000000000000000000000000006235000000000000000000000000 + 0000000000000000A80000000000000000003D78B50090E9FF008AE4FD000004 + 380000043800000438002042720021487A00132E610000043800000438000D2B + 61002A95DA00208CD70000285C00666667003D78B50090E9FF00000438000004 + 38000004380062B5DA0066C7EF005BBEEC0052B6E80046A9E0003FA6E200349E + DD002A95DA00208CD70000285C00666667003D78B50090E9FF008BE4FD0080D8 + F4000A154800000438000F21530058B5E400030A3E0000043800081A4F00349D + DD002A95DA00208DD70000285C00666667000000000000000000000000000000 + 00000000A80000000000000000000000000062350000000000000000A8000000 + A8000000A800000000000000A800000000003D78B50090E9FF008BE4FD000004 + 380000043800000438000004380000043800000438000004380013376D00339B + DA002A95DA00208DD70000285C00666667003D78B50090E9FF00000438000004 + 38000004380060B2D80066C6EF005CBEEC0052B6E90048AEE5003EA6E200349D + DD002A95DA00208DD70000285C00666667003D78B50090E9FF008AE4FD0083DE + FA00335C870000043800000438003169990000043800000438001F538B00349E + DD002A95DA00208CD70000285C00666667000000000000000000000000000000 + 7F00000000000000A8000000000000000000000000000000A800000000000000 + 00000000000000007F00000000000000A8003D78B50090E9FF008AE4FD000004 + 380000043800000438004486B2004693C20018396C0000043800000438001E5E + 98002A95DA00208CD70000285C00666667003D78B50090E9FF00172A59000004 + 3800000438004B8CB50066C7EF005BBEEC00469BCE00255C92002D78B2003194 + D2002A95DA00208CD70000285C00666667003D78B50090E9FF008BE4FD0084DF + FA0062AED2000004380000043800040D40000004380000043800358EC900349D + DD002A95DA00208DD70000285C00666667000000000000000000000000000000 + 7F0000000000000000000000A800000000000000A80000000000000000000000 + 7F000000000000007F0000000000000000003D78B50090E9FF008BE4FD000004 + 3800000438000004380058ACD7005CBEEC0026578B0000043800000438000E2D + 65002A95DA00208DD70000285C00666667003D78B50090E9FF003E6890000004 + 3800000438000B184A004282AE004289B9000F25590000043800000438001E5D + 98002A95DA00208DD70000285C00666667003D78B50090E9FF008AE4FD0083DE + FA007BD7F700132658000004380000043800000438000E265B003FA6E200349E + DD002A95DA00208CD70000285C00666667000000000000000000000000000000 + 00000000000000000000000000000000A8000000000000000000000000000000 + 7F00000000000000000000000000000000003D78B50090E9FF008AE4FD000004 + 3800000438000004380000043800000438000004380000043800000438001749 + 82002A95DA00208CD70000285C00666667003D78B50090E9FF0081D5F0001424 + 55000004380000043800000438000004380000043800000438000B1F55003299 + D8002A95DA00208CD70000285C00666667003D78B50090E9FF008BE4FD0083DE + FA007BD7F8003E74A00000043800000438000004380029659A003EA7E200359E + DE002A95DB001F8DD60000285C00666667000000000000000000000000000000 + 0000000000000000000000007F00000000000000000000000000000000000000 + 0000000000000000000000000000000000003D78B50090E9FF008BE4FD000004 + 38000004380000043800000438000004380000043800050F4400184379003397 + D6002A95DB001F8DD60000285C00666667003D78B50090E9FF008BE4FD0078CC + EA002F558200050E41000004380000043800030A3E001C457A003897D100359E + DE002A95DB001F8DD60000285C00666667003D78B50090E9FF008BE5FD0083DE + FB007AD7F70070CFF30066C6F0005CBEEC0052B6E90048AEE5003EA6E200359D + DD002A95DA001F8DD60000285C00666667000000000000000000000000000000 + 0000000000000000000000007F00000000000000000000000000000000000000 + 0000000000000000000000000000000000003D78B50090E9FF008BE5FD0083DE + FB007AD7F70070CFF30066C6F0005CBEEC0052B6E90048AEE5003EA6E200359D + DD002A95DA001F8DD60000285C00666667003D78B50090E9FF008BE5FD0083DE + FB007AD7F70070CFF3005AB0DB0050A5D40052B6E90048AEE5003EA6E200359D + DD002A95DA001F8DD60000285C00666667003D78B5003D78B5003D78B5003D78 + B5003D78B5003D78B5003D78B5003D78B5003D78B5003D78B5003D78B5003D78 + B5003D78B5003D78B5003D78B500000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000003D78B5003D78B5003D78B5003D78 + B5003D78B5003D78B5003D78B5003D78B5003D78B5003D78B5003D78B5003D78 + B5003D78B5003D78B5003D78B500000000003D78B5003D78B5003D78B5003D78 + B5003D78B5003D78B5003D78B5003D78B5003D78B5003D78B5003D78B5003D78 + B5003D78B5003D78B5003D78B500000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000424D3E000000000000003E000000 + 2800000040000000B00200000100010000000000801500000000000000000000 + 000000000000000000000000FFFFFF0000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000F800FFFFFFFFFF83F80080018001FE03 + F80080008001F803E00000008001E001E00000008001E001E0000000FFFFE001 + 800000008001C000800000008001C000800000008001C000800300008001C000 + 80030000FFFF80008003000180018000800F807F80018001800FE07F80018007 + 800FF87F8001C01FFFFFFE7FFFFFF07FFFFFFF1FFF1FFFFF8000FE0FFE0FE0FF + 0000FE07FE07C1FF0000EE03EE03820300008601860184010000020102010800 + 0000000100010800000000010001080000000001000108000000000100010800 + 000000010001080000000003000308000000800F800384010000C03FC0238203 + 0001E0FFE0FFC1FFFFFFF3FFF3FFE0FF00000000FE3F000007FF0000FE0F0000 + 07FF0000FE07000007FF0000FF030000000F0000FF010000000F0007C0000000 + 000F0007800000000003700780010000000370078003000000037E0780030000 + 007F7E0780030000007F7E0780030000007F7E3F8003000001FF7E3F80030000 + 01FF7FFF8007000001FF7FFFFFFF0000F81FF0070000FFFFF00FC0033FFFFFFF + F00F80031FFBFFFFF00F80034FF5AB038001800357CEFE01000080036B3FAA00 + 000080036CFFFC000000800377FBFC010000800377C55001000080037BBEF803 + 000080037D7FA803000180037EFFFC07F00F80037FFF5607F00F80077FFFFFFF + F00FC0077FFFFFFFF01FEAAF7FFFFFFFF81FFFFFFFFFFFFFF007FFFFFE0FFFFF + F003FFFFF80383C1F0070000E00003C0F0036DB6800107E0F0037DF700030FF0 + C01FFFFF00010FF0C01F000000030FF0C01F000000030FF0C01F000000030FF0 + C03F000000010FF0E07F0000C00307E0F87F0000E00F03C0F87F0000E03F83C1 + FCFF0000F0FFFFFFFFFFFFFFFBFFFFFF0000FE3FFFFFFFFF0000FC1F03FF03FF + 0000F80F03FF03FF0000F00703FF03FF0000E00303FF03FF0000C001FF9FFF9F + 00008000030F030F000000000007000700000001022302230000800303710371 + 0000C003FFF8FFF80000E00103FE03FE0000F00003FF03FF0000F80003FF03FF + 0000FC6103FF03FF0000FEF3FFFFFFFFFFFFE000FFFF0000C003C000C0030000 + 8003800080030000800380008003000080038000800300008003800080030000 + 8003800080030000800380008003000080038000800300008003800080030000 + 8003800080030000800380018003000080038003800300008007800780070000 + 800F800F800F0000801F801F801F00008001FFFFFFFFE1FF8000FFF9FFFFE1FF + 0000C0016111E11F00008001FFFFE1FF000080036111E3FF00008003FFFFFF0F + 000080036111FF0F00008003FFFFFF08000080036111FF0F00008003FFFFFF1F + 00018003611187FF85578003FFFF87FFC60F80030000847FE75F8007FFFF87FF + F7FFFFFFE1118FFFFFFFFFFFFFFFFFFFFF7FC001FFFFFFFFFE3FC001C33FC000 + FC1FC001821F0000F80FC001820F0000F007C00182070000E003C00182030000 + C001C00182010000F80FC00182010000F80FC00182010000F80FC00182030000 + F80FC00182070000F80FC001820F0000F80FC001821F0000F80FC003823F0000 + F80FC00786FF0001FFFFC00FFFFFFFFFFFFFFFFF80FFFFFFFFFFE0000007FFFF + 001FC0000001FFBF0003C0000000FF9F000080008000FF8F800F800080078007 + 800F0000C0038003C0070000C0038001C0070000E0018000E0038000E0018001 + E0038000F8018003F8018001FC038007FF03C07FFE01FF8FFFE7E0FFFE01FF9F + FFFFFFFFFFC0FFBFFFFFFFFFFFF9FFFFFE3FFFFFFFFFFFFFFE0FC007FFF7FFFF + FE03C007FFE3FFFFF800C007FFC18001F800C007FF838001E800C007E0078001 + C800C007C00F80018000C007801F80010000C007801F80010000C007801F8001 + 8000C007801F8001C800C007801F8001E800C007801F8003F800C007C03F81FF + F800C007E07FFFFFF800FFFFFFFFFFFFFFFF8000FFFF0000FFFF000080000000 + FFFF00000000000007E000000000000007E00000000000000760000000000000 + 0020000000000000000000000000000000200000000000000760000000000000 + 07E000000000000007E0000000000000FFFF000000000000FFFF000000000000 + FFFF000000010000FFFF0001FFFF0000FFFFFFFFE0078001FF0FFFFFE0070001 + FC03E1F3E0070001F000C1E3E0070001C001C1C3E00700010007C183FFFF0001 + 0007C003FBDF00018003C003F1DF00010003C003FB8F00018001C003FBDF0001 + 0001C003FFFF00010001C103E00700010007C183E0070001801FC1C3E0070001 + F07FC1E3E0070001F9FFFFFFE0070003C001FFFFF1FFFFFFC001FE61E003FFFF + C001FC41E001FFFFC001F841C000F3FFC001F041C000E1FFC001E041C000C0FF + C001C041C000807FC0018041C000003FC0018041E000841FC001C041F001DE0F + C001E041F1FFFF07C001F04110CFFF83C001F841000FFFC1C003FC41001FFFE1 + C007FEC3003FFFF3C00FFFFF307FFFFFE01FFFFFFFFFFFFFE003FFFFFFFFF80F + E001FFFFFDFFF80FC001FFFFF9FFF80FC0008001F1FFF80F80000000E001F80F + 80000000C001F80F800000008001F80F800000000001F80F800000008001C001 + 80000000C001E00380000001E001F0078000FFFFF1FFF80F8300FFFFF9FFFC1F + 9FC0FFFFFDFFFE3FFFFFFFFFFFFFFF7FFFFFFFFF0000FFFF807F80000000DFFF + 807F00000000CFFD807B00000000C7F9806100000000E3F3805B00000000F1E7 + 805F00000000F8CF806F00000000FC1F807700000000FE3F807B00000000FC1F + 807D00000000F8CF804300000000F1E7807F00000000E3F3807F00010000C7F9 + 807FFFFF0000FFFFFFFFFFFF0000FFFFFFFFFFFF0000FFFFFFFFFFFF00008000 + C003F9FF00000000C003F0FF00000000C003E07F00000000C003C03F00000000 + C003801F00000000E007C20F00000000F81FEF0700000000FC3FFF8300000000 + F81FFFC100000000F00FFFE100000000F00FFFF100000000F81FFFF900000000 + FFFFFFFF00000101FFFFFFFF0000FFFF00000000FFFFFFFF000000008003D00B + 000000008003B00D000000008003B00D000000008003B00D00000000E3CFBFFD + 000000008003B00D000000008003700E000000008003B00D000000008003B00D + 00000000F19FBFFD000000008003B00D000000008003B00D000000008003B00D + 000000008003D00B00000000FFFFFFFFFFFF00000000FFFFFF8F6FFC7F800000 + FF8740007F807FFEFF8300007F802B02004100007F807E00006100002B002A00 + 007100007E007C0003F800002A007C0001F800007C00500000F000007C007802 + 10610000500028021801000078027C061C030000280256069F0F00007C067FFE + FFFF7FFE56060000FFFF00000000FFFFFFFFF81FE03FFFFFFF80F81FC00FFFFF + FF80000FC003C00FFF80000FC0038007FF800007C0038007AB000003C01F8007 + FE000003C01F8007AA000003C01F8003FC000001C01F8003FC010001C01F8000 + 50010003E03F8000F8030003FFFF8001A8030001FDFF8003FC078030EDFF8007 + 5607E038C3FF8007FFFFFC7CEFFFFFFFFFFFC001F000F01FF00F8001E000E007 + F00F8001E000E001F00F8001C000E001F81F8001C000E001F81F80018000E00F + 8C2380018000E00F842180018000E00F02408001C000E00F86618001C001E00F + CE738001E07FF01FC0018001F0F7BF7F80018001FF771E3FFE7F8001FE0F4F7F + FE7F8001FF7FE0FFFFFF8003FFFFF7FFF000FFFF027DF8FFF000FFFF0239F03F + F000FFFF0313F00FC00000000387E003C0000000FF87E001C00000000313C001 + 000000000239C00300000000037D800300000000039F800100030000FF0F0000 + 00030000020700000003000002238000000FFFFF0371C010000FFFFF03FCE018 + 000FFFFFFFFEF83CFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFFC000CF87C0010201 + 00008707800103FF00008307B6D903FF00008107BEFB03FF00008007FFFFFFFF + 00008007E001020100008007800103FF00008007800103FF00008007800103FF + 000081078001FFFF000083078001020100008707800103FF00008F07800103FF + 0001BF0F800103FFFFFFFFFF8003FFFFFFFFFFFFFF7F0000C001FFFFF01F0000 + 80018F8FC0070000800188880003000080018F8FC003000080019F9FE0070000 + 8001FFFFC007000080018F8FC01B000080018888801D000080018F8F80074030 + 80019F9F000760788001FFFF007F707C80018F8F007F70FE80018888C0FF79FF + 80038F8FE0FF7BFFFFFF9F9FFDFF7FFFFFFFFC7FE1EBE3C7FFFFF81FC081C007 + 8003F807806AC0038003F001002AC0038003F0000001C0038003E000002B8003 + 8003E001802B8003FFFFC001C0C08003FFFFC003E1EB800380038003E1FF8003 + 80038007E1F180038003C007807180038003E00F003180038003F00F00208003 + FFFFFC1F00318003FFFFFFFF003BC007FFFF0000FFFFFFFFFFFF0000FC00FDFF + 800100000000F8FF000000000000F07F000000000001E03E000000010001C000 + 0000C001000180000000C001000100000000C001000180000000C0010001C000 + 0000C001007FE0010000C001007FF0030000C001007FF8078001E001007FFC1F + FFFFF003007FFE3FFFFFFFFFFFFFFF7FFFFFFF1FFFFFF000E1FFFE0F02FFE000 + C1FFFE07000FE00081CFEE0302F7E0000187860103F7E0000703020103C0E000 + 0E010001DC40E0000C0000018CC060000F870001DD4020000F870001DF7F0000 + 07070001DE0700000007000302070001800F800F020701FFC01FC03B020720FF + E03FE00103FF64FFFFFFF3FBFFFFE7FFFC7FFFFFFFFFFFFFF83FFFFF03C0FFFF + F01F00000340FFFFE00F7FFE000007E0C007FFFF0340076080030000FFFF0420 + 0001000003C0076000000000034007E080000000000007E0C0010000034006E0 + E0030000FFFF0420F007FFFF03C006E0F80F7FFE034007E0FC1F00000000FFFF + FE3FFFFF0340FFFFFF7FFFFFFFFFFFFFFBFFFFFF0000FE7FE1FFFFFF0000E67F + 8001EFFD0000E7F38000C0000000FFF3E00080000000FFFFE000800000008000 + C001800000008000C0078000000080008003800000008000800180000000FFCF + 000180000000F9CF000180000000C9F3800180000000CF33E00180000000F33C + F80780010000F3FCFF8FFFFF0000FFFFFFFFFFFFFF3FFFFFC000FFFCFC0F0000 + 0000FFF8F00300000000F0F8F1E100000000C001F873000000008003FE330000 + 00008003F807000000008003E007000000000003C00700000000000780074000 + 0000800FC007E0000000801FC007F0000000801FE003FC000000C03FE003FF00 + 0001F0FFF001FFC0FFFFFFFFF003FFF0FFFFF01FFFFFFFFF8000C00FBFFFFC3F + 000080039FFFE427000000018007C003000000018003C003000000018003E007 + 0000000180038001000000018003818100000001800381810000000180038001 + 000080018003E0070000C0018003C0030000F0018003C0030001FE01C007E427 + FFFFFF03FFFFFC3FFFFFFF8FFFFFFFFFFE07FFFFFFFFFFFFFC01FF87C7F98000 + FC00FF8383F90000FC01F38183F10000FC00E18081E30000BC00C0E0C0C30000 + 10078070E007000080070030F00F0000C007E1F0F81F0000E007E1F0F80F0000 + F00FE0E0E0070000A01FE000C0830000861FF00181C100008E1FF80383E10001 + 873FFC0787F9FFFFFFFFFFFFFFFFFFFFFFFFFFF3FFFFFFFFFE0FFFE303C0FFFF + F803C00003408000E000000000000000800100000340000000070000FFFF0000 + 0007000003C00000000700030340000000030003000000000003000303400000 + 00010003FFFF00000003000303C00000C00F000303400000E00F000300000001 + F01F00030340FFFFFA3F0007FFFFFFFFFFFDE1FFFFFFFFFFE008C0FFE001FFFF + 8001807F8001F8070003002B8001F003000700018001F0030007002A8001F003 + 0007806A8001F0030007C0C18001F0030007E1AB8001D0030007E1AB8001C003 + 0007E1C08001C0070007806B8001C3FF0007003F8001C7FF0007003F8001CFFF + 800F003F8003DFFFD55F003FFFFFFFFFFFFFFFFFE003FFCFFF808000C003FFC7 + FFFF0000E007C003FFC10000F01F0001FFC10000F80F0000FFC10000F0070001 + FFC10000F007000380C10000E0070003FFC30000C0030003C1FF0000C0070003 + C1FF0000C00F0003C1FF0000C00F0003C1FF0000C01F0003C1FF0001E00F0003 + C3FFFFFFF01F0003FFFFFFFFFFFF0007F3FFFC7FF07FFFF3F3FFF01FE01FFFE1 + FFFFC007C007F000E00180018001F000E00180018001F000E00100010001F000 + E00100000000C000E00100000000800090030000000000009C0F000000000000 + 801F800180010000C00FE00700070000F807F80300038000F807FE000000C000 + FC0FFF030003F001FFFFFF8F300FF003FFFFFFFFFFFFFFFF87FF000FFFFFFE01 + 87FF03F7E03FFE0186FF03E3F07FF601842003F7F007C20186E000C0E00FB601 + 87E0DF40C00FBE0187E0DF40C007DE0187E0DE00C007EE0187608F7FC003F601 + 8420DE07E007FA01877F0207F007860187FF0207FC07FE0187FF0207FE0FFE01 + FFFF03FFFFFFFE01FFFFFFFFFFFFFFFFFDFFFFFFFFFFFFFFE0C7FFFFFFFFFFF7 + 800307C107C1FFE3800307C107C1FFC1E00307C107C1FF83E00701010101E007 + E00300010001C00FC00700010001801FC00F00010001801F800780038003801F + 8003C107C107801F0003C107C107801FC001E38FE38F801FF000E38FE38FC03F + FC81E38FE38FE07FFFE3FFFFFFFFFFFFFE7EFFFFF81FFDFFFE3CE001E007E083 + FF198001C0038001FF8380018001800180C780018001E001C18380010000E001 + C01980010000E001803C80010000C001003E80010000C003001F800100008007 + 001F800100008003000F800180010003801F80018001C001C01F8001C003F000 + F01F8003E007FC81F83FFFFFF81FFFE3F000FFFFFFFFFFFFE000F8018000FFFF + E000F0000000FFFFE000F0000000F601E000F00000008201E000F0000000F601 + 8000C0000000FE01000080000000FE01000000010000FE01000100030000FE01 + 000700030000F6010007000300008201000700030000F601000780030001FFFF + 0007C007FFFFFFFF000FFFFFFFFFFFFF0000000FFE7F800000000007F83F0000 + 00008003E01F000000008001800F000000008001000700000000800100030000 + 0000C001000100000000E001000000000000E003000000000000E00380010000 + 0000E003C00100000000E003E00000000000E003F00100000000E003F8070000 + 0000E003FC1F00000000F003FE7F0000800000008000800000003FFF00000000 + 00001FBB0000000000004DB500000000000055CE0000000000006B3700000000 + 00006CF7000000000000777B00000000000077450000000000006BBA00000000 + 00006D6B0000000000007EEF0000000000007DFF0000000000007DFF00000000 + 00017FFF00010001FFFF7FFFFFFFFFFF00000000000000000000000000000000 + 000000000000} + end + object ThreeImgList: TImageList + Height = 24 + Width = 24 + Left = 364 + Top = 292 + 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 + object ClientDataSet1: TClientDataSet + Aggregates = <> + Params = <> + Left = 320 + Top = 212 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_UserHelpSel.pas b/基础资料维护(BaseInfo.dll)/U_UserHelpSel.pas new file mode 100644 index 0000000..d37681e --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_UserHelpSel.pas @@ -0,0 +1,234 @@ +unit U_UserHelpSel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, cxFilter, + cxData, cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, cxInplaceContainer, cxDBTL, + cxTLData, ComCtrls, ToolWin, ADODB, ImgList,StrUtils, ExtCtrls, + cxCheckBox, DBClient; + +type + TfrmUserHelpSel = class(TForm) + ToolBar2: TToolBar; + TOk: TToolButton; + TBClose: TToolButton; + cxDBTreeList1: TcxDBTreeList; + cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn; + cxGrid1: TcxGrid; + tv1: TcxGridDBTableView; + tv1Code: TcxGridDBColumn; + tv1Name: TcxGridDBColumn; + DBGrid1Level1: TcxGridLevel; + GroupBox1: TGroupBox; + ADOQueryDept: TADOQuery; + DataSource1: TDataSource; + ADOConnection1: TADOConnection; + tv1Column1: TcxGridDBColumn; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxStyle_gridRow: TcxStyle; + cxStyle_gridFoot: TcxStyle; + cxStyle_gridHead: TcxStyle; + cxStyle_gridGroupBox: TcxStyle; + cxStyle_yellow: TcxStyle; + cxStyle_Red: TcxStyle; + ADOQueryHelp: TADOQuery; + DataSource2: TDataSource; + Label1: TLabel; + Edt_name: TEdit; + ImageList1: TImageList; + cxStyleTree: TcxStyle; + Label2: TLabel; + Edt_Code: TEdit; + Splitter1: TSplitter; + ThreeImgList: TImageList; + ClientDataSet1: TClientDataSet; + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TOkClick(Sender: TObject); + procedure tv1DblClick(Sender: TObject); + procedure Edt_nameChange(Sender: TObject); + procedure cxDBTreeList1Click(Sender: TObject); + private + procedure InitTree(); + procedure DoQuery(); + procedure FilterData(strdepotno,strcode,strname:string); + public + fFrameNo:string; + fFrameName:string; + fIsYwy:boolean; + ReturnStr:string; + end; + +var + frmUserHelpSel: TfrmUserHelpSel; + +implementation +uses + U_DataLink,U_Fun; +{$R *.dfm} +/////////////////////////////////////////////////////////// +//////ܣ +/////////////////////////////////////////////////////////// +procedure TfrmUserHelpSel.FilterData(strdepotno,strcode,strname:string); +var + filterStr:string; +begin + filterStr:=''; + if trim(strdepotno)<>'' then + filterStr:=filterStr+' and dept like '+quotedstr('%'+trim(strdepotno)+'%'); + if trim(strcode)<>'' then + filterStr:=filterStr+' and userID like '+quotedstr('%'+trim(strcode)+'%'); + if trim(strname)<>'' then + filterStr:=filterStr+' and userName like '+quotedstr('%'+trim(strname)+'%'); + + try + ADOQueryHelp.DisableControls ; + if trim(filterStr)='' then + begin + ADOQueryHelp.Filtered:=false; + ADOQueryHelp.EnableControls; + exit; + end; + filterStr:=trim(RightBStr(filterStr,length(filterStr)-5)); + // showmessage(filterStr); + with ADOQueryHelp do + begin + filtered:=false; + filter:=filterStr; + filtered:=true; + end; + finally + ADOQueryHelp.EnableControls; + SCreateCDS20(ADOQueryHelp,ClientDataSet1); + SInitCDSData20(ADOQueryHelp,ClientDataSet1); + end; +end; +////////////////////////////////////////////////////// +procedure TfrmUserHelpSel.InitTree(); +var + strsql,strwhere:string; +begin + strsql:=' SELECT distinct UDept=''ALL'',UDeptTop='''',UDeptName=''в'',Framelevel=0 '+ + ' union '+ + ' SELECT distinct UDept,UDeptTop=''ALL'',UDept,Framelevel=1 '+ + ' FROM BD_staff A '+ + ' WHERE USERID<>''ADMIN'' and ISNULL(UDept,'''')<>'''' '; + + strwhere:=' where A.Valid=''Y'' '; +{ if fIsYwy then + strwhere:=strwhere+' and A.YWYFlag=''Y'' '; + if trim(fFrameNo)<>'' then + strwhere:=strwhere+' and A.dept='+quotedstr(trim(fFrameNo)); + if trim(fFrameName)<>'' then + strwhere:=strwhere+' and B.frameName like '+quotedstr('%'+trim(fFrameName)+'%'); + strsql:=strsql+ strwhere; } + + with ADOQueryDept do + begin + close; + sql.Clear ; + sql.Add( strsql); + Open; + end; + cxDBTreeList1.FullExpand; + + DoQuery(); +end; + +procedure TfrmUserHelpSel.FormShow(Sender: TObject); +begin + InitTree(); +end; + +procedure TfrmUserHelpSel.FormCreate(Sender: TObject); +begin + cxGrid1.Align :=alclient; + with ADOConnection1 do + begin + Connected:=false; + ConnectionString:=DConString; + Connected:=true; + end; +end; +////////////////////////////////////////////////// + // +////////////////////////////////////////////////// +procedure TfrmUserHelpSel.DoQuery(); +var + strsql,strwhere:string; +begin + strsql:=' select * '+ + ' from BD_staff A '+ + ' where isnull(UserID,'''')<>''ADMIN'' '; + strwhere:=' and A.Valid=''Y'' '; + if fIsYwy then + strwhere:=strwhere+' and A.Isywy=1 '; + + strsql:=strsql+ strwhere +' order by A.userID '; + + with ADOQueryHelp do + begin + close; + sql.Clear ; + sql.Add( strsql); + Open; + end; + SCreateCDS20(ADOQueryHelp,ClientDataSet1); + SInitCDSData20(ADOQueryHelp,ClientDataSet1); +end; + +procedure TfrmUserHelpSel.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmUserHelpSel.TOkClick(Sender: TObject); +begin + if ClientDataSet1.IsEmpty then exit; + + ReturnStr:=''; + with ClientDataSet1 do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean=True then + begin + ReturnStr:=ReturnStr+Trim(fieldbyname('UserName').AsString)+';' + end; + Next; + end; + end; + // if JiangeStr<>99 then + IF ReturnStr<>'' then + ReturnStr:=Copy(ReturnStr,1,Length(ReturnStr)-1); + ModalResult:=1; +end; + +procedure TfrmUserHelpSel.tv1DblClick(Sender: TObject); +begin + Tok.Click ; +end; + +procedure TfrmUserHelpSel.Edt_nameChange(Sender: TObject); +begin + FilterData('',edt_code.Text,Edt_name.Text); +end; + +procedure TfrmUserHelpSel.cxDBTreeList1Click(Sender: TObject); +begin + if ADOQueryDept.IsEmpty then exit; + if trim(ADOQueryDept.FieldByName('Framelevel').AsString)='0' then + FilterData('','','') + else + FilterData(ADOQueryDept.FieldByName('UDept').AsString,'',''); +end; + +end. diff --git a/基础资料维护(BaseInfo.dll)/U_ZDYHelp11.dfm b/基础资料维护(BaseInfo.dll)/U_ZDYHelp11.dfm new file mode 100644 index 0000000..f86dc56 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZDYHelp11.dfm @@ -0,0 +1,18066 @@ +object frmZDYHelp: TfrmZDYHelp + Left = 437 + Top = 207 + 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 = 8 + Top = 88 + Width = 417 + Height = 200 + 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.FocusFirstCellOnNewRecord = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + object V1Code: TcxGridDBColumn + Caption = #32534#21495 + DataBinding.FieldName = 'ZDYNo' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 97 + end + object V1OrderNo: TcxGridDBColumn + Caption = #39034#24207#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = V1OrderNoPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 46 + end + object V1Name: TcxGridDBColumn + Tag = 2 + Caption = #21517#31216 + DataBinding.FieldName = 'ZDYName' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = V1NamePropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 89 + end + object V1Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = V1NotePropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 121 + end + object V1ZdyFlag: TcxGridDBColumn + Caption = #26631#24535 + DataBinding.FieldName = 'ZdyFlag' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = V1Column1PropertiesEditValueChanged + Visible = False + HeaderAlignmentHorz = taCenter + Width = 57 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = TV1 + end + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 425 + 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 + Visible = False + 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 = 425 + Height = 44 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 2 + object Label1: TLabel + Left = 18 + Top = 17 + Width = 24 + Height = 12 + Caption = #21517#31216 + end + object Label2: TLabel + Left = 240 + Top = 11 + Width = 120 + Height = 24 + Caption = #27880#65306#28966#28857#31163#24320#24403#21069#32534#36753#13#10' '#21333#20803#26684#20445#23384#25968#25454#12290 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentColor = False + ParentFont = False + end + object ZDYName: TEdit + Tag = 2 + Left = 53 + Top = 12 + Width = 169 + Height = 20 + TabOrder = 0 + OnChange = ZDYNameChange + end + end + object ADOQueryMain: TADOQuery + Connection = ADOConnection1 + LockType = ltReadOnly + Parameters = <> + Left = 48 + Top = 136 + end + object ADOQueryTemp: TADOQuery + Connection = ADOConnection1 + LockType = ltReadOnly + Parameters = <> + Left = 80 + Top = 144 + end + object ADOQueryCmd: TADOQuery + Connection = ADOConnection1 + Parameters = <> + Left = 112 + Top = 152 + end + object DataSource1: TDataSource + DataSet = ClientDataSet1 + Left = 280 + Top = 144 + end + object ClientDataSet1: TClientDataSet + Aggregates = <> + Params = <> + Left = 208 + Top = 144 + end + object ADOConnection1: TADOConnection + LoginPrompt = False + Left = 120 + Top = 264 + 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 + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 168 + Top = 152 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZDYHelp11.pas b/基础资料维护(BaseInfo.dll)/U_ZDYHelp11.pas new file mode 100644 index 0000000..38022f8 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZDYHelp11.pas @@ -0,0 +1,628 @@ +unit U_ZDYHelp; + +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, cxTextEdit, cxGridCustomPopupMenu, cxGridPopupMenu; + +type + TfrmZDYHelp = 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; + Label2: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + V1ZdyFlag: 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); + procedure V1NamePropertiesEditValueChanged(Sender: TObject); + procedure V1OrderNoPropertiesEditValueChanged(Sender: TObject); + procedure V1NotePropertiesEditValueChanged(Sender: TObject); + procedure V1Column1PropertiesEditValueChanged(Sender: TObject); + private + procedure InitGrid(); + { Private declarations } + public + flag,flagname,snote,MainType:string; + fnote,forderno,fZdyFlag:Boolean; + PPSTE:integer; + { Public declarations } + end; + +var + frmZDYHelp: TfrmZDYHelp; + +implementation +uses + U_DataLink,U_Fun; + +{$R *.dfm} + +procedure TfrmZDYHelp.FormCreate(Sender: TObject); +begin + try + cxGrid1.Align:=alClient; + with ADOConnection1 do + begin + Connected:=false; + ConnectionString:=DConString; + //ConnectionString:=''; + Connected:=true; + end; + except + {if Application.MessageBox('ʧ,ǷҪٴ?','ʾ',32+4)=IDYES then + begin + try + with ADOConnection1 do + begin + Connected:=false; + ConnectionString:=DConString; + //ConnectionString:='23242'; + Connected:=true; + end; + except + end; + end; } + + frmZDYHelp.Free; + end; +end; + +procedure TfrmZDYHelp.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + ZDYName.SetFocus; + Action:=caFree; +end; + +procedure TfrmZDYHelp.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + sql.Add('select A.*,ZJM=dbo.getPinYin(A.ZdyName) from KH_ZDY A where A.Type='''+flag+''''); + if Trim(MainType)<>'' then + begin + sql.Add(' and A.MainType='''+Trim(MainType)+''''); + end; + Open; + end; + SCreateCDS20(ADOQueryMain,ClientDataSet1); + SInitCDSData20(ADOQueryMain,ClientDataSet1); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmZDYHelp.TBAddClick(Sender: TObject); +var + i:Integer; +begin + ZDYName.SetFocus; + TV1.OptionsData.Editing:=True; + TV1.OptionsSelection.CellSelect:=True; + for i:=0 to 5 do + begin + with ClientDataSet1 do + begin + Append; + Post; + end; + end; + +end; + +procedure TfrmZDYHelp.TBSaveClick(Sender: TObject); +var + maxno:string; +begin + if ClientDataSet1.IsEmpty then Exit; + ZDYName.SetFocus; + + if ClientDataSet1.Locate('ZDYName',null,[]) then + begin + Application.MessageBox('ƲΪգ','ʾ',0); + Exit; + end; + if ClientDataSet1.Locate('ZDYName','',[]) then + begin + Application.MessageBox('ƲΪգ','ʾ',0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + SQL.Add('select * from KH_ZDY where ZdyNo='''+Trim(flag)+''''); + open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('insert into KH_ZDY(ZDYNo,ZDYName,Type,MainType) select :ZDYNo,:ZDYName,:Type,:MainType '); + Parameters.ParamByName('ZDYNo').Value:=Trim(flag); + Parameters.ParamByName('ZDYName').Value:=Trim(flagname); + Parameters.ParamByName('Type').Value:='Main'; + Parameters.ParamByName('MainType').Value:=Trim(MainType); + ExecSQL; + end; + end; + with ADOQueryCmd do + begin + ClientDataSet1.DisableControls; + 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; + ClientDataSet1.EnableControls; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.add('select * from KH_Zdy where Type='''+Trim(flag)+''''); + if Trim(MainType)<>'' then + SQL.Add(' and MainType='''+Trim(MainType)+''''); + sql.Add(' and ZdyName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + if ADOQueryTemp.RecordCount>1 then + begin + ADOQueryCmd.Connection.RollbackTrans; + ClientDataSet1.EnableControls; + Application.MessageBox('ظ','ʾ',0); + Exit; + end; + if Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)='' then + begin + ADOQueryCmd.Connection.RollbackTrans; + ClientDataSet1.EnableControls; + Application.MessageBox('ظ','ʾ',0); + Exit; + end else + begin + if Trim(ADOQueryTemp.fieldbyname('ZdyNo').AsString)<>Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) then + begin + ADOQueryCmd.Connection.RollbackTrans; + ClientDataSet1.EnableControls; + Application.MessageBox('ظ','ʾ',0); + Exit; + end; + end; + 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; + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('ZDYNo').Value:=Trim(maxno); + ADOQueryCmd.FieldByName('ZDYName').Value:=ClientDataSet1.fieldbyname('ZDYName').AsString; + ADOQueryCmd.FieldByName('note').Value:=Trim(snote); + //ADOQueryCmd.FieldByName('orderno').Value:=ClientDataSet1.fieldbyname('Name').AsString; + ADOQueryCmd.FieldByName('Type').Value:=flag; + ADOQueryCmd.FieldByName('valid').Value:='Y'; + if Trim(MainType)<>'' then + ADOQueryCmd.FieldByName('MainType').Value:=Trim(MainType); + //ADOQueryCmd.FieldByName('sel').Value:=0; + ADOQueryCmd.Post; + ClientDataSet1.Edit; + ClientDataSet1.FieldByName('ZDYNo').Value:=Trim(maxno); + ClientDataSet1.Post; + Next; + end; + end; + ClientDataSet1.EnableControls; + end; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + TV1.OptionsData.Editing:=False; + TV1.OptionsSelection.CellSelect:=False; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; + +end; + +procedure TfrmZDYHelp.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 TfrmZDYHelp.TBCloseClick(Sender: TObject); +begin + ModalResult:=2; + ZDYName.SetFocus; + WriteCxGrid('Զ',TV1,'Զ'); + Close; +end; + +procedure TfrmZDYHelp.FormShow(Sender: TObject); +var + fsj,fsj1:string; +begin + {if PPSTE=1 then + begin + Application.Terminate; + Exit; + end; } + 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;} + //frmZDYHelp.Caption:=Trim(flagname)+'<'+Trim(flag)+'>'; + ReadCxGrid('Զ',TV1,'Զ'); + frmZDYHelp.Caption:=Trim(flagname); + V1Note.Visible:=fnote; + V1ZdyFlag.Visible:=fZdyFlag; + V1OrderNo.Visible:=forderno; +end; + +procedure TfrmZDYHelp.ToolButton1Click(Sender: TObject); +begin + ZDYName.SetFocus; + ModalResult:=1; +end; + +procedure TfrmZDYHelp.TBEditClick(Sender: TObject); +begin + TV1.OptionsData.Editing:=True; + TV1.OptionsSelection.CellSelect:=True; +end; + +procedure TfrmZDYHelp.TV1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if TV1.OptionsData.Editing=False then + begin + ModalResult:=1; + end; +end; + +procedure TfrmZDYHelp.ZDYNameChange(Sender: TObject); +var + fsj:String; +begin + if Trim(ZDYName.Text)<>'' then + begin + fsj:=' zdyname like '''+'%'+Trim(ZDYName.Text)+'%'+'''' + +' or Note like '''+'%'+Trim(ZDYName.Text)+'%'+'''' + +' or ZJM like '''+'%'+Trim(ZDYName.Text)+'%'+''''; + end; + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,ClientDataSet1); + SInitCDSData20(ADOQueryMain,ClientDataSet1); + end; +end; + +procedure TfrmZDYHelp.V1NamePropertiesEditValueChanged(Sender: TObject); +var + maxno,mvalue:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + //Application.MessageBox('ƲΪգ','ʾ',0); + Exit; + end; + with ClientDataSet1 do + begin + Edit; + FieldByName('ZdyName').Value:=Trim(mvalue); + Post; + end; + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + SQL.Add('select * from KH_ZDY where ZdyNo='''+Trim(flag)+''''); + open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('insert into KH_ZDY(ZDYNo,ZDYName,Type,MainType) select :ZDYNo,:ZDYName,:Type,:MainType '); + Parameters.ParamByName('ZDYNo').Value:=Trim(flag); + Parameters.ParamByName('ZDYName').Value:=Trim(flagname); + Parameters.ParamByName('Type').Value:='Main'; + Parameters.ParamByName('MainType').Value:=Trim(MainType); + ExecSQL; + end; + end; + with ADOQueryCmd do + begin + //ClientDataSet1.DisableControls; + //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; + //ClientDataSet1.EnableControls; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.add('select * from KH_Zdy where Type='''+Trim(flag)+''''); + if Trim(MainType)<>'' then + SQL.Add(' and MainType='''+Trim(MainType)+''''); + sql.Add(' and ZdyName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + if ADOQueryTemp.RecordCount>1 then + begin + ADOQueryCmd.Connection.RollbackTrans; + + //ClientDataSet1.EnableControls; + Application.MessageBox('ظ','ʾ',0); + Exit; + end; + if Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)='' then + begin + ADOQueryCmd.Connection.RollbackTrans; + //ClientDataSet1.EnableControls; + Application.MessageBox('ظ','ʾ',0); + Exit; + end else + begin + if Trim(ADOQueryTemp.fieldbyname('ZdyNo').AsString)<>Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) then + begin + ADOQueryCmd.Connection.RollbackTrans; + //ClientDataSet1.EnableControls; + Application.MessageBox('ظ','ʾ',0); + Exit; + end; + end; + 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; + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('ZDYNo').Value:=Trim(maxno); + ADOQueryCmd.FieldByName('ZDYName').Value:=ClientDataSet1.fieldbyname('ZDYName').AsString; + ADOQueryCmd.FieldByName('note').Value:=Trim(snote); + //ADOQueryCmd.FieldByName('orderno').Value:=ClientDataSet1.fieldbyname('Name').AsString; + ADOQueryCmd.FieldByName('Type').Value:=flag; + ADOQueryCmd.FieldByName('valid').Value:='Y'; + if Trim(MainType)<>'' then + ADOQueryCmd.FieldByName('MainType').Value:=Trim(MainType); + //ADOQueryCmd.FieldByName('sel').Value:=0; + ADOQueryCmd.Post; + ClientDataSet1.Edit; + ClientDataSet1.FieldByName('ZDYNo').Value:=Trim(maxno); + ClientDataSet1.Post; + // Next; + //end; + //end; + // ClientDataSet1.EnableControls; + end; + ADOQueryCmd.Connection.CommitTrans; + //Application.MessageBox('ɹ','ʾ',0); + //TV1.OptionsData.Editing:=False; + //TV1.OptionsSelection.CellSelect:=False; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TfrmZDYHelp.V1OrderNoPropertiesEditValueChanged(Sender: TObject); +var + mvalue:string; +begin + if Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)='' then + begin + Application.MessageBox('ƲΪ!','ʾ',0); + Exit; + end; + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + with ClientDataSet1 do + begin + Edit; + FieldByName('OrderNo').Value:=mvalue; + Post; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('Update KH_Zdy Set OrderNo='+mvalue); + sql.Add(' where ZdyNo='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmZDYHelp.V1NotePropertiesEditValueChanged(Sender: TObject); +var + mvalue:string; +begin + if Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)='' then + begin + Application.MessageBox('ƲΪ!','ʾ',0); + Exit; + end; + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + with ClientDataSet1 do + begin + Edit; + FieldByName('Note').Value:=mvalue; + Post; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('Update KH_Zdy Set Note='''+Trim(mvalue)+''''); + sql.Add(' where ZdyNo='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmZDYHelp.V1Column1PropertiesEditValueChanged(Sender: TObject); +var + mvalue:String; +begin + if Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)='' then + begin + Application.MessageBox('ƲΪ!','ʾ',0); + Exit; + end; + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + with ClientDataSet1 do + begin + Edit; + FieldByName('ZdyFlag').Value:=StrToInt(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('Update KH_Zdy Set ZdyFlag='+Trim(mvalue)); + sql.Add(' where ZdyNo='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); + ExecSQL; + end; +end; + +end. diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttInput.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyAttInput.dfm new file mode 100644 index 0000000..a267d86 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttInput.dfm @@ -0,0 +1,273 @@ +object frmZdyAttInput: TfrmZdyAttInput + Left = 329 + Top = 241 + Width = 1127 + Height = 450 + Caption = #23458#25143#36164#26009#24405#20837 + 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 = 1111 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object ToolButton3: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 31 + Width = 1111 + Height = 381 + Align = alClient + TabOrder = 1 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_BaseInfo.handBlack + object v2Column4: TcxGridDBColumn + Caption = #23458#25143#32534#21495 + DataBinding.FieldName = 'zdyCode' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v2Column6: TcxGridDBColumn + Caption = #23458#25143#21517#31216 + DataBinding.FieldName = 'ZdyName' + HeaderAlignmentHorz = taCenter + Width = 147 + end + object v2Column14: TcxGridDBColumn + Caption = #23458#25143#31616#31216 + DataBinding.FieldName = 'zdyNameZ' + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v2Column11: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'DEFStr6' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column11PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column12: TcxGridDBColumn + Caption = #22320#21306 + DataBinding.FieldName = 'DEFStr7' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column12PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column3: TcxGridDBColumn + Caption = #32852#31995#30005#35805 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 76 + end + object v2Column5: TcxGridDBColumn + Caption = #20256#30495 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 64 + end + object v2Column10: TcxGridDBColumn + Caption = #23458#25143#32852#31995#20154 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Width = 71 + end + object v2Column7: TcxGridDBColumn + Caption = #20844#21496#22320#22336 + DataBinding.FieldName = 'DEFNote1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 67 + end + object v2Column8: TcxGridDBColumn + Caption = #21457#36135#22320#22336 + DataBinding.FieldName = 'DEFNote2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 83 + end + object v2Column9: TcxGridDBColumn + Caption = #32852#31995#20154 + DataBinding.FieldName = 'DEFstr4' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v2DefFlt1: TcxGridDBColumn + Caption = #27424#27454#39069#24230 + DataBinding.FieldName = 'DefFlt1' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column2: TcxGridDBColumn + Caption = #23458#25143#26469#28304 + DataBinding.FieldName = 'DEFstr9' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column2PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 105 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 154 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end + object ADOQueryKH: TADOQuery + Parameters = <> + Left = 692 + Top = 31 + end + object DSKH: TDataSource + DataSet = ADOQueryKH + Left = 544 + Top = 224 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttInput.pas b/基础资料维护(BaseInfo.dll)/U_ZdyAttInput.pas new file mode 100644 index 0000000..1e211c5 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttInput.pas @@ -0,0 +1,367 @@ +unit U_ZdyAttInput; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmZdyAttInput = class(TForm) + ToolBar1: TToolBar; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + v2Column10: TcxGridDBColumn; + v2Column11: TcxGridDBColumn; + v2Column12: TcxGridDBColumn; + v2DefFlt1: TcxGridDBColumn; + ADOQueryKH: TADOQuery; + DSKH: TDataSource; + v2Column14: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure v2Column11PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column12PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + private + { Private declarations } + procedure InitGrid(); + function SaveData():Boolean; + + public + fkhType:string; + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmZdyAttInput: TfrmZdyAttInput; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + + + +procedure TfrmZdyAttInput.InitGrid(); +begin + try + + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where ATID='''+Trim(FCYID)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmZdyAttInput.FormDestroy(Sender: TObject); +begin + //frmZdyAttInput:=nil; +end; + +procedure TfrmZdyAttInput.FormClose(Sender: TObject; var Action: TCloseAction); +begin + //Action:=caFree; +end; + +procedure TfrmZdyAttInput.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ͻ¼2',Tv2,'ͻԶ'); + Close; +end; +procedure TfrmZdyAttInput.FormShow(Sender: TObject); +begin + ReadCxGrid('ͻ¼2',Tv2,'ͻԶ'); + InitGrid(); + if Trim(FCYID)='' then + begin + CDS_HZ.Append; + // CDS_HZ.FieldByName('DEFstr5').Value:=trim(Dname); + CDS_HZ.Post; + end; +end; + +procedure TfrmZdyAttInput.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +function TfrmZdyAttInput.SaveData():Boolean; +var + maxId,CRID:String; + fzdyCode:string; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if Trim(FCYID)='' then + begin + if GetLSNo(ADOQueryCmd,maxId,'AT','KH_Zdy_Attachment',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + end + else + begin + maxId:=Trim(FCYID); + end; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_Zdy_Attachment where ATID='''+Trim(FCYID)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(FCYID)='' then + begin + Append; + FieldByName('Filler').Value:=Trim(DName); + // FieldByName('zdyCode').Value:=Trim(fzdyCode); + end else + begin + Edit; + FieldByName('Editer').Value:=Trim(DName); + FieldByName('Edittime').Value:=SGetServerDateTime(ADOQueryTemp); + end; + FieldByName('ATID').Value:=Trim(maxId); + + RTSetSaveDataCDS(ADOQueryCmd,Tv2,CDS_HZ,'',0); + FieldByName('ZdyCode').Value:=Trim(CDS_HZ.fieldbyname('ZdyCode').AsString); + FieldByName('ZdyName').Value:=Trim(CDS_HZ.fieldbyname('ZdyName').AsString); + FieldByName('Type').Value:='KHName'; + FieldByName('khType').Value:=trim(fkhType); + FieldByName('DefFlt1').Value:=CDS_HZ.fieldbyname('DefFlt1').AsFloat; + FieldByName('Filler').Value:=Trim(DName); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment where ZdyCode='''+Trim(CDS_HZ.fieldbyname('ZdyCode').AsString)+''''); + sql.Add(' and Type=''KHName'' '); + sql.Add(' and isnull(khType,'''')='+quotedstr(trim(fkhType))); + Open; + end; + if ADOQueryCmd.RecordCount>1 then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ͻظ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment where ZdyName='''+Trim(CDS_HZ.fieldbyname('ZdyName').AsString)+''''); + sql.Add(' and Type=''KHName'' '); + sql.Add(' and isnull(khType,'''')='+quotedstr(trim(fkhType))); + Open; + end; + if ADOQueryCmd.RecordCount>1 then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ͻظ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment where ZdyCode='''+Trim(CDS_HZ.fieldbyname('ZdyCode').AsString)+''''); + sql.Add(' and Type=''KHName'' '); + Open; + end; + if ADOQueryCmd.RecordCount>1 then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ظ!','ʾ',0); + Exit; + end; + with CDS_HZ do + begin + Edit; + FieldByName('ATID').Value:=Trim(maxId); + Post; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣!','ʾ',0); + end; +end; + +procedure TfrmZdyAttInput.ToolButton3Click(Sender: TObject); +begin + + cxGrid2.SetFocus; + if Trim(CDS_HZ.FieldByName('ZdyCode').AsString)='' then + begin + Application.MessageBox('ͻŲΪ!','ʾ',0); + Exit; + end; + if Trim(CDS_HZ.FieldByName('ZdyName').AsString)='' then + begin + Application.MessageBox('ͻƲΪ!','ʾ',0); + Exit; + end; +{ if Trim(CDS_HZ.FieldByName('DEFstr6').AsString)='' then + begin + Application.MessageBox('ȼΪ!','ʾ',0); + Exit; + end; + if Trim(CDS_HZ.FieldByName('DEFstr7').AsString)='' then + begin + Application.MessageBox('Ϊ!','ʾ',0); + Exit; + end; + if Trim(CDS_HZ.FieldByName('DEFstr9').AsString)='' then + begin + Application.MessageBox('ͻԴΪ!','ʾ',0); + Exit; + end; + if Trim(CDS_HZ.FieldByName('DEFstr1').AsString)='' then + begin + Application.MessageBox('ϵ绰Ϊ!','ʾ',0); + Exit; + end; + if Trim(CDS_HZ.FieldByName('DEFNote1').AsString)='' then + begin + Application.MessageBox('˾ַΪ!','ʾ',0); + Exit; + end; } + if Application.MessageBox('ȷҪ','ʾ',32+4)<>IDYES then Exit; + + if SaveData() then + begin + Application.MessageBox('ɹ!','ʾ',0); + ModalResult:=1; + end; +end; + + +procedure TfrmZdyAttInput.v2Column11PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='KHDJType'; + flagname:='ͻȼ'; + if ShowModal=1 then + begin + with CDS_HZ do + begin + Edit; + FieldByName('DEFStr6').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmZdyAttInput.v2Column12PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='KHDQType'; + flagname:='ͻ'; + if ShowModal=1 then + begin + with CDS_HZ do + begin + Edit; + FieldByName('DEFStr7').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmZdyAttInput.v2Column2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='KHLYType'; + flagname:='ͻԴ'; + if ShowModal=1 then + begin + with CDS_HZ do + begin + Edit; + FieldByName('DEFStr9').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +end. diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP.dfm new file mode 100644 index 0000000..48115f9 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP.dfm @@ -0,0 +1,269 @@ +object frmZdyAttInputCP: TfrmZdyAttInputCP + Left = 159 + Top = 176 + Width = 1080 + Height = 408 + Caption = #20135#21697#36164#26009#24405#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1064 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object ToolButton3: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 31 + Width = 1064 + Height = 339 + Align = alClient + TabOrder = 1 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object v2Column2: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column6: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 124 + end + object v2Column3: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column4: TcxGridDBColumn + Caption = #25104#20221 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 64 + end + object v2Mrate: TcxGridDBColumn + Caption = #35745#21010#32553#29575'(%)' + DataBinding.FieldName = 'Mrate' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column13: TcxGridDBColumn + Caption = #24037#33402 + DataBinding.FieldName = 'defNote2' + HeaderAlignmentHorz = taCenter + Width = 100 + end + object v2Column5: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2Column11: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFstr5' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + #22383#24067 + #25104#21697) + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column8: TcxGridDBColumn + Caption = #33457#21495 + DataBinding.FieldName = 'DEFstr4' + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v2Column10: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'DEFstr6' + HeaderAlignmentHorz = taCenter + Width = 61 + end + object v2Column9: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'DEFstr7' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v2Column7: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'DEFstr8' + HeaderAlignmentHorz = taCenter + Width = 61 + end + object v2Column16: TcxGridDBColumn + Caption = #20215#26684 + DataBinding.FieldName = 'defFlt2' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 114 + end + object v2Column12: TcxGridDBColumn + Caption = #20179#20301 + DataBinding.FieldName = 'DEFstr4' + Visible = False + HeaderAlignmentHorz = taCenter + Hidden = True + Width = 60 + end + object v2Column15: TcxGridDBColumn + Caption = #20215#26684#22686#24133 + DataBinding.FieldName = 'defflt1' + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '0.##;-,0.##' + Visible = False + HeaderAlignmentHorz = taCenter + Hidden = True + Width = 60 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 528 + Top = 200 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP.pas b/基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP.pas new file mode 100644 index 0000000..b5484bf --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP.pas @@ -0,0 +1,336 @@ +unit U_ZdyAttInputCP; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDropDownEdit,strutils, cxCurrencyEdit; + +type + TfrmZdyAttInputCP = class(TForm) + ToolBar1: TToolBar; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column6: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column10: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + v2Column11: TcxGridDBColumn; + v2Column13: TcxGridDBColumn; + v2Mrate: TcxGridDBColumn; + v2Column12: TcxGridDBColumn; + v2Column15: TcxGridDBColumn; + v2Column16: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure v2Column6PropertiesEditValueChanged(Sender: TObject); + procedure v2defstr9PropertiesEditValueChanged(Sender: TObject); + procedure v2Column5PropertiesEditValueChanged(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + function SaveData():Boolean; + + public + { Public declarations } + RKFlag,FCYID:String; + fkhType:string; + + end; + +var + frmZdyAttInputCP: TfrmZdyAttInputCP; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + + + +procedure TfrmZdyAttInputCP.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where ATID='''+Trim(FCYID)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmZdyAttInputCP.FormDestroy(Sender: TObject); +begin + frmZdyAttInputCP:=nil; +end; + +procedure TfrmZdyAttInputCP.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttInputCP.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ʒ¼',Tv2,'ͻԶ'); + Close; +end; +procedure TfrmZdyAttInputCP.FormShow(Sender: TObject); +begin + ReadCxGrid('Ʒ¼',Tv2,'ͻԶ'); + InitGrid(); + if Trim(FCYID)='' then + begin + CDS_HZ.Append; + CDS_HZ.Post; + end; +end; + +procedure TfrmZdyAttInputCP.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +function TfrmZdyAttInputCP.SaveData():Boolean; +var + maxId,CRID:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if Trim(FCYID)='' then + begin + if GetLSNo(ADOQueryCmd,maxId,'AT','KH_Zdy_Attachment',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxId:=Trim(FCYID); + end; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_Zdy_Attachment where ATID='''+Trim(FCYID)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(FCYID)='' then + begin + Append; + FieldByName('Filler').Value:=Trim(DName); + end else + begin + Edit; + FieldByName('Editer').Value:=Trim(DName); + FieldByName('Edittime').Value:=SGetServerDateTime(ADOQueryTemp); + end; + FieldByName('ATID').Value:=Trim(maxId); + + RTSetSaveDataCDS(ADOQueryCmd,Tv2,CDS_HZ,'KH_Zdy_Attachment',0); + FieldByName('ZdyName').Value:=Trim(CDS_HZ.fieldbyname('ZdyName').AsString); + FieldByName('ZdyCode').Value:=Trim(CDS_HZ.fieldbyname('ZdyCode').AsString); + FieldByName('Mrate').Value:=CDS_HZ.fieldbyname('Mrate').AsFloat; + FieldByName('defflt1').Value:=CDS_HZ.fieldbyname('defflt1').AsFloat; + FieldByName('defflt2').Value:=CDS_HZ.fieldbyname('defflt2').AsFloat; + FieldByName('Type').Value:='CP'; + FieldByName('khType').Value:=trim(fkhType); + FieldByName('Filler').Value:=Trim(DName); + Post; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_Zdy where ZdyNo='''+Trim(FCYID)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(FCYID)='' then + begin + Append; + end else + begin + Edit; + end; + FieldByName('ZdyNo').Value:=Trim(maxId); + FieldByName('ZdyName').Value:=Trim(CDS_HZ.fieldbyname('ZdyName').AsString); + FieldByName('Type').Value:='CP'; + FieldByName('MainType').Value:=Trim(CDS_HZ.fieldbyname('DEFstr5').AsString); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment where ZdyCode='''+Trim(CDS_HZ.fieldbyname('ZdyCode').AsString)+''''); + sql.Add(' and Type=''CP'' '); + Open; + end; + if ADOQueryCmd.RecordCount>1 then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ƷŲظ!','ʾ',0); + Exit; + end; + with CDS_HZ do + begin + Edit; + FieldByName('ATID').Value:=Trim(maxId); + Post; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣!','ʾ',0); + end; +end; + +procedure TfrmZdyAttInputCP.ToolButton3Click(Sender: TObject); +begin + cxGrid2.SetFocus; + if Trim(CDS_HZ.FieldByName('ZdyName').AsString)='' then + begin + Application.MessageBox('ӦƲΪ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪ','ʾ',32+4)<>IDYES then Exit; + + if SaveData() then + begin + Application.MessageBox('ɹ!','ʾ',0); + ModalResult:=1; + end; +end; + + +procedure TfrmZdyAttInputCP.v2Column6PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:string; +begin + { mvalue:=TcxTextEdit(Sender).EditingText; + + IF trim(mvalue)='' then exit; + + IF rightBstr(trim(mvalue),1)<>'#'THEN + BEGIn + mvalue:=trim(mvalue)+'#'; + END; + + + with CDS_HZ do + begin + Edit; + FieldByName('ZdyName').Value:=Trim(mvalue); + Post; + end; + self.tv2.Controller.EditingController.ShowEdit(); + } + + +end; + +procedure TfrmZdyAttInputCP.v2defstr9PropertiesEditValueChanged( + Sender: TObject); + +var + mvalue:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + + IF trim(mvalue)='' then exit; + + IF rightBstr(trim(mvalue),1)<>'#'THEN + BEGIn + mvalue:=trim(mvalue)+'#'; + END; + + + with CDS_HZ do + begin + Edit; + FieldByName('ZdyName').Value:=Trim(mvalue); + Post; + end; + self.tv2.Controller.EditingController.ShowEdit(); + + + + +end; + +procedure TfrmZdyAttInputCP.v2Column5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:string; +begin +{ mvalue:=TcxTextEdit(Sender).EditingText; + + IF trim(mvalue)='' then exit; + + IF rightBstr(trim(mvalue),1)<>'#'THEN + BEGIn + mvalue:=trim(mvalue)+'#'; + END; + + + with CDS_HZ do + begin + Edit; + FieldByName('DEFstr3').Value:=Trim(mvalue); + Post; + end; + self.tv2.Controller.EditingController.ShowEdit(); + + } + +end; + +end. diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP10.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP10.dfm new file mode 100644 index 0000000..017918d --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP10.dfm @@ -0,0 +1,710 @@ +object frmZdyAttInputCP10: TfrmZdyAttInputCP10 + Left = 392 + Top = 203 + Width = 876 + Height = 615 + Caption = #20135#21697#36164#26009#24405#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Label17: TLabel + Left = 32 + Top = 96 + Width = 48 + Height = 12 + Caption = #20960' '#39068' '#33394 + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 860 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object Tsave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TsaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 860 + Height = 545 + Align = alClient + BevelOuter = bvNone + TabOrder = 1 + object GroupBox1: TGroupBox + Left = 0 + Top = 0 + Width = 860 + Height = 545 + Align = alClient + Color = clSkyBlue + ParentColor = False + TabOrder = 0 + object Label1: TLabel + Left = 36 + Top = 28 + Width = 48 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label2: TLabel + Left = 249 + Top = 28 + Width = 48 + Height = 12 + Caption = #20135#21697#21517#31216 + end + object Label3: TLabel + Left = 36 + Top = 54 + Width = 48 + Height = 12 + Caption = #31867' '#22411 + end + object Label6: TLabel + Left = 249 + Top = 53 + Width = 54 + Height = 12 + Caption = #35268#26684'/'#23610#30721 + end + object Label13: TLabel + Left = 463 + Top = 16 + Width = 48 + Height = 12 + Caption = #20135#21697#22270#29255 + end + object Label12: TLabel + Left = 36 + Top = 80 + Width = 48 + Height = 12 + Caption = #25104' '#20998 + end + object Label39: TLabel + Left = 249 + Top = 77 + Width = 48 + Height = 12 + Caption = #23494' '#24230 + end + object Label4: TLabel + Left = 249 + Top = 101 + Width = 48 + Height = 12 + Caption = #20811' '#37325 + end + object Label5: TLabel + Left = 36 + Top = 106 + Width = 48 + Height = 12 + Caption = #38376' '#24133 + end + object Label7: TLabel + Left = 36 + Top = 254 + Width = 48 + Height = 12 + Caption = #22791' '#27880 + end + object Label8: TLabel + Left = 36 + Top = 129 + Width = 48 + Height = 12 + Caption = #25253#20215#31995#25968 + end + object Label9: TLabel + Left = 249 + Top = 126 + Width = 48 + Height = 12 + Caption = #20379' '#24212' '#21830 + end + object Label10: TLabel + Left = 242 + Top = 152 + Width = 60 + Height = 12 + Caption = #26368#20302#24211#23384#37327 + end + object Label11: TLabel + Left = 828 + Top = 250 + Width = 48 + Height = 12 + Caption = #19968#32423#20215#26684 + Visible = False + end + object Label14: TLabel + Left = 1041 + Top = 246 + Width = 48 + Height = 12 + Caption = #20108#32423#20215#26684 + Visible = False + end + object Label15: TLabel + Left = 768 + Top = 272 + Width = 48 + Height = 12 + Caption = #19977#32423#20215#26684 + Visible = False + end + object Label16: TLabel + Left = 36 + Top = 153 + Width = 48 + Height = 12 + Caption = #23610' '#30721 + end + object Label18: TLabel + Left = 250 + Top = 226 + Width = 48 + Height = 12 + Caption = #39068' '#33394 + Visible = False + end + object Label19: TLabel + Left = 36 + Top = 366 + Width = 48 + Height = 12 + Caption = #39068' '#33394 + end + object Label20: TLabel + Left = 559 + Top = 343 + Width = 48 + Height = 12 + Caption = #39068#33394#22270#29255 + end + object Label21: TLabel + Left = 36 + Top = 178 + Width = 52 + Height = 12 + Caption = #19968#32423#20215#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label22: TLabel + Left = 235 + Top = 176 + Width = 65 + Height = 12 + Caption = #20108#32423#25104#20154#20215 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label23: TLabel + Left = 36 + Top = 202 + Width = 52 + Height = 12 + Caption = #19977#32423#20215#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label24: TLabel + Left = 36 + Top = 228 + Width = 52 + Height = 12 + Caption = #23450#21046#20215#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label25: TLabel + Left = 235 + Top = 204 + Width = 65 + Height = 12 + Caption = #20108#32423#20799#31461#20215 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label26: TLabel + Left = 505 + Top = 291 + Width = 48 + Height = 12 + Caption = #26465' '#24418' '#30721 + Visible = False + end + object zdyCode: TEdit + Tag = 2 + Left = 90 + Top = 24 + Width = 140 + Height = 20 + TabOrder = 0 + Text = 'zdyCode' + end + object zdyName: TEdit + Tag = 2 + Left = 303 + Top = 24 + Width = 141 + Height = 20 + TabOrder = 1 + Text = 'zdyName' + end + object defstr1: TEdit + Tag = 2 + Left = 303 + Top = 49 + Width = 141 + Height = 20 + TabOrder = 2 + Text = 'Edit1' + end + object Picture4: TcxDBImage + Left = 457 + Top = 29 + Hint = 'FileName' + AutoSize = True + DataBinding.DataField = 'FilesOther' + DataBinding.DataSource = DataSource1 + Properties.GraphicClassName = 'TJPEGImage' + Properties.ReadOnly = True + Properties.ShowFocusRect = False + Style.BorderStyle = ebsSingle + TabOrder = 3 + OnDblClick = Picture6DblClick + Height = 220 + Width = 316 + end + object FileName: TcxButton + Left = 457 + Top = 248 + Width = 75 + Height = 25 + Hint = 'Filesother' + Caption = #21152#36733#22270#29255 + TabOrder = 4 + OnClick = FileNameClick + LookAndFeel.Kind = lfOffice11 + end + object defstr2: TEdit + Tag = 2 + Left = 90 + Top = 74 + Width = 140 + Height = 20 + TabOrder = 5 + Text = 'Edit1' + end + object defnote2: TEdit + Tag = 2 + Left = 303 + Top = 73 + Width = 141 + Height = 20 + TabOrder = 6 + Text = 'Edit1' + end + object defstr8: TEdit + Tag = 2 + Left = 303 + Top = 98 + Width = 141 + Height = 20 + TabOrder = 7 + Text = 'defstr8' + end + object defstr7: TEdit + Tag = 2 + Left = 90 + Top = 98 + Width = 140 + Height = 20 + TabOrder = 8 + Text = 'Edit1' + end + object note: TMemo + Tag = 2 + Left = 90 + Top = 253 + Width = 353 + Height = 101 + Lines.Strings = ( + 'note') + ScrollBars = ssVertical + TabOrder = 9 + end + object defstr5: TComboBox + Tag = 2 + Left = 90 + Top = 48 + Width = 140 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 10 + Items.Strings = ( + #33258#24049 + #23458#25143) + end + object defflt3: TcxCurrencyEdit + Tag = 2 + Left = 90 + Top = 124 + Properties.DisplayFormat = '0.##' + TabOrder = 11 + Width = 140 + end + object defnote3: TBtnEditA + Tag = 2 + Left = 303 + Top = 124 + Width = 141 + Height = 20 + TabOrder = 12 + OnBtnClick = defnote3BtnClick + end + object defflt4: TcxCurrencyEdit + Tag = 2 + Left = 303 + Top = 150 + Properties.DisplayFormat = '0.##' + TabOrder = 13 + Width = 141 + end + object fprice: TEdit + Tag = 2 + Left = 90 + Top = 175 + Width = 140 + Height = 20 + TabOrder = 14 + end + object sprice: TEdit + Tag = 2 + Left = 303 + Top = 174 + Width = 141 + Height = 20 + TabOrder = 15 + end + object tprice: TEdit + Tag = 2 + Left = 90 + Top = 199 + Width = 140 + Height = 20 + TabOrder = 16 + end + object CYCM: TBtnEditA + Tag = 2 + Left = 90 + Top = 149 + Width = 141 + Height = 20 + TabOrder = 17 + OnBtnClick = CYCMBtnClick + end + object cycolor: TBtnEditA + Tag = 2 + Left = 304 + Top = 222 + Width = 141 + Height = 20 + TabOrder = 18 + Visible = False + OnBtnClick = cycolorBtnClick + end + object Panel2: TPanel + Left = 90 + Top = 365 + Width = 465 + Height = 157 + Caption = 'Panel2' + TabOrder = 19 + object cxGrid2: TcxGrid + Left = 1 + Top = 32 + Width = 463 + Height = 124 + Align = alClient + TabOrder = 0 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnFocusedRecordChanged = Tv2FocusedRecordChanged + DataController.DataSource = DataSource2 + DataController.Filter.AutoDataSetFilter = True + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object v2Column2: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'cyys' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 220 + end + object Tv2Column1: TcxGridDBColumn + Caption = #39068#33394#22270#29255 + DataBinding.FieldName = 'YSFile' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = Tv2Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ToolBar2: TToolBar + Left = 1 + Top = 1 + Width = 463 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 1 + object ToolButton7: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#21152 + ImageIndex = 22 + OnClick = ToolButton7Click + end + object ToolButton9: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 100 + OnClick = ToolButton9Click + end + end + end + object Picture6: TcxDBImage + Left = 556 + Top = 366 + Hint = 'FileName' + DataBinding.DataField = 'FilesOther' + DataBinding.DataSource = DSImage + Properties.GraphicClassName = 'TJPEGImage' + Properties.ReadOnly = True + Properties.ShowFocusRect = False + Style.BorderStyle = ebsSingle + TabOrder = 20 + OnDblClick = Picture6DblClick + Height = 161 + Width = 229 + end + object DZprice: TEdit + Tag = 2 + Left = 90 + Top = 224 + Width = 141 + Height = 20 + TabOrder = 21 + end + object seprice: TEdit + Tag = 2 + Left = 303 + Top = 198 + Width = 141 + Height = 20 + TabOrder = 22 + end + object CPtxm: TEdit + Tag = 2 + Left = 559 + Top = 288 + Width = 141 + Height = 20 + TabOrder = 23 + Visible = False + end + end + end + object PopupMenu1: TPopupMenu + Left = 1140 + Top = 103 + object N1: TMenuItem + Caption = #21024#38500 + end + object N3: TMenuItem + Caption = '-' + end + object N2: TMenuItem + Caption = #21478#23384#20026'...' + end + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + EnableBCD = False + Parameters = <> + Left = 720 + Top = 71 + end + object ADOQueryTmp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + EnableBCD = False + Parameters = <> + Left = 720 + Top = 139 + end + object ADOQueryImage: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + EnableBCD = False + Parameters = <> + Left = 736 + Top = 227 + end + object ADOQuerymain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + EnableBCD = False + Parameters = <> + Left = 716 + Top = 191 + end + object IdFTP1: TIdFTP + MaxLineAction = maException + ReadTimeout = 0 + ProxySettings.ProxyType = fpcmNone + ProxySettings.Port = 0 + Left = 784 + Top = 178 + end + object DataSource1: TDataSource + DataSet = ADOQueryImage + Left = 804 + Top = 231 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 284 + Top = 344 + end + object DataSource2: TDataSource + DataSet = CDS_Sub + Left = 323 + Top = 347 + end + object ADOQuerySub: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 245 + Top = 345 + end + object ADOQueryImageYS: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + EnableBCD = False + Parameters = <> + Left = 800 + Top = 475 + end + object DSImage: TDataSource + DataSet = ADOQueryImageYS + Left = 644 + Top = 384 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP10.pas b/基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP10.pas new file mode 100644 index 0000000..e5b45cd --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP10.pas @@ -0,0 +1,648 @@ +unit U_ZdyAttInputCP10; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ExtCtrls, cxPC, cxControls, ComCtrls, ToolWin, StdCtrls, Menus, + cxTextEdit, cxCurrencyEdit, BtnEdit, cxContainer, cxEdit, cxImage, DB, ADODB, + cxDBEdit, cxLookAndFeelPainters, cxButtons, IdBaseComponent, IdComponent, + IdTCPConnection, IdTCPClient, IdFTP, ShellAPI, cxGraphics, cxLookAndFeels, + cxStyles, cxCustomData, cxFilter, cxData, cxDataStorage, cxNavigator, cxDBData, + cxButtonEdit, cxGridLevel, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxClasses, cxGridCustomView, cxGrid, DBClient, 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 + TfrmZdyAttInputCP10 = class(TForm) + ToolBar1: TToolBar; + Tsave: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + GroupBox1: TGroupBox; + Label1: TLabel; + zdyCode: TEdit; + Label2: TLabel; + zdyName: TEdit; + Label3: TLabel; + Label6: TLabel; + defstr1: TEdit; + Label13: TLabel; + Label17: TLabel; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + N3: TMenuItem; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + ADOQueryImage: TADOQuery; + ADOQuerymain: TADOQuery; + Picture4: TcxDBImage; + FileName: TcxButton; + IdFTP1: TIdFTP; + DataSource1: TDataSource; + Label12: TLabel; + defstr2: TEdit; + Label39: TLabel; + defnote2: TEdit; + defstr8: TEdit; + Label4: TLabel; + defstr7: TEdit; + Label5: TLabel; + note: TMemo; + Label7: TLabel; + defstr5: TComboBox; + Label8: TLabel; + defflt3: TcxCurrencyEdit; + Label9: TLabel; + defnote3: TBtnEditA; + Label10: TLabel; + defflt4: TcxCurrencyEdit; + Label11: TLabel; + Label14: TLabel; + Label15: TLabel; + sprice: TEdit; + tprice: TEdit; + Label16: TLabel; + CYCM: TBtnEditA; + Label18: TLabel; + cycolor: TBtnEditA; + Panel2: TPanel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column2: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ToolBar2: TToolBar; + ToolButton7: TToolButton; + ToolButton9: TToolButton; + Label19: TLabel; + CDS_Sub: TClientDataSet; + DataSource2: TDataSource; + ADOQuerySub: TADOQuery; + Tv2Column1: TcxGridDBColumn; + Picture6: TcxDBImage; + Label20: TLabel; + ADOQueryImageYS: TADOQuery; + DSImage: TDataSource; + Label21: TLabel; + Label22: TLabel; + Label23: TLabel; + Label24: TLabel; + DZprice: TEdit; + Label25: TLabel; + seprice: TEdit; + fprice: TEdit; + Label26: TLabel; + CPtxm: TEdit; + procedure FormDestroy(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TsaveClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Picture6DblClick(Sender: TObject); + procedure FileNameClick(Sender: TObject); + procedure MTypeBtnDnClick(Sender: TObject); + procedure defnote3BtnClick(Sender: TObject); + procedure CYCMBtnClick(Sender: TObject); + procedure cycolorBtnClick(Sender: TObject); + procedure ToolButton7Click(Sender: TObject); + procedure Tv2Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure ToolButton9Click(Sender: TObject); + private + function savedata(): Boolean; + procedure InitGrid(); + procedure InitImage(); + procedure InitImageYS(fwbid: string); + { Private declarations } + public + PState, CopyInt: Integer; + FATID, fFlileFlag: string; + { Public declarations } + end; + +var + frmZdyAttInputCP10: TfrmZdyAttInputCP10; + +implementation + +uses + U_DataLink, U_Fun10, U_ZDYHelp, getpic, getpicYS, U_ZdyAttachGYS_help, + U_ZdyCMZ_Sel, U_ZdyYS_Sel; +{$R *.dfm} + +function TfrmZdyAttInputCP10.savedata(): Boolean; +var + maxno: string; +begin + result := false; + try + if trim(FATID) = '' then + begin + if GetLSNo(ADOQueryCmd, FATID, 'AT', 'KH_Zdy_Attachment', 4, 1) = False then + begin + Result := False; + Application.MessageBox('ȡʧܣ', 'ʾ', 0); + Exit; + end; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_Zdy_Attachment where ATID=''' + Trim(FATID) + ''''); + Open; + if IsEmpty then + begin + append; + FieldByName('Filler').Value := Trim(DName); + end + else + begin + Edit; + FieldByName('Editer').Value := Trim(DName); + FieldByName('Edittime').Value := SGetServerDateTime(ADOQueryTmp); + end; + SSetsaveSqlNew(ADOQueryCmd, 'KH_Zdy_Attachment', GroupBox1, 2); + FieldByName('defflt3').Value := strtofloatdef(Trim(defflt3.text), 1); + FieldByName('defflt4').Value := strtofloatdef(Trim(defflt4.text), 0); + FieldByName('ATID').Value := Trim(FATID); + FieldByName('Type').Value := 'CP'; + post; + end; + + result := true; + except + end; + with ADOQueryTmp do + begin + Close; + sql.Clear; + sql.Add('Update KH_Zdy_CPCB set zdyCode=''' + Trim(zdyCode.Text) + ''' where ATID=''' + Trim(FATID) + ''' '); +// ShowMessage(SQL.text); + ExecSQL; + end; + + with CDS_Sub do //ɫ + begin + First; + while not Eof do + begin + if Trim(CDS_Sub.fieldbyname('YSId').AsString) = '' then + begin + if GetLSNo(ADOQueryCmd, maxno, 'YS', 'KH_YS', 4, 1) = False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ', 'ʾ', 0); + Exit; + end; + end + else + begin + maxno := Trim(CDS_Sub.fieldbyname('YSId').AsString); + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_YS where ATID=''' + Trim(FATID) + ''''); + sql.Add(' and YSId=''' + Trim(maxno) + ''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(CDS_Sub.fieldbyname('YSId').AsString) = '' then + begin + Append; + end + else + Edit; + FieldByName('ATID').Value := Trim(FATID); + FieldByName('YSId').Value := Trim(maxno); + FieldByName('code').Value := Trim(zdyCode.text); + RTSetSaveDataCDS(ADOQueryCmd, Tv2, CDS_Sub, 'KH_YS', 0); +// fieldbyname('SordQty1').Value := CDS_Sub.fieldbyname('SordQty1').AsFloat; + FieldByName('cyys').Value := CDS_Sub.FieldByName('cyys').AsString; + + Post; + end; + CDS_Sub.Edit; + CDS_Sub.FieldByName('YSId').Value := Trim(maxno); + CDS_Sub.FieldByName('ATID').Value := Trim(FATID); + Next; + end; + end; + +end; + +procedure TfrmZdyAttInputCP10.InitGrid(); +begin + with ADOQueryMain do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment A'); + if PState = 1 then + begin + sql.Add('where ATID=' + quotedstr(trim(FATID))); + end; + if PState = 0 then + begin + sql.Add(' where 1<>1'); + end; +// showmessage(sql.text); + open; + end; + + if not ADOQueryMain.IsEmpty then + begin +// zdyCode.Enabled := false; + SCSHDataNew(ADOQueryMain, GroupBox1, 2); + end; + with ADOQuerySub do + begin + close; + sql.Clear; + sql.Add('select * from KH_YS A'); + if PState = 1 then + begin + sql.Add('where ATID=' + quotedstr(trim(FATID))); + end; + if PState = 0 then + begin + sql.Add(' where 1<>1'); + end; +// showmessage(sql.text); + open; + end; +// if not ADOQuerySub.IsEmpty then +// if ADOQuerySub.IsEmpty then +// begin + SCreateCDS20(ADOQuerySub, CDS_Sub); + SInitCDSData20(ADOQuerySub, CDS_Sub); +// end; +// if PState = 1 then +// begin +// zdyCode.text := ''; +// end; +end; + +procedure TfrmZdyAttInputCP10.InitImage(); +begin + with ADOQueryImage do + begin + close; + sql.Clear; + sql.Add('select * from TP_File A'); + sql.Add('where TFid=' + quotedstr(trim(zdyCode.Text))); + open; + end; +end; + +procedure TfrmZdyAttInputCP10.InitImageYS(fwbid: string); +begin + ADOQueryImageYS.close; + if fwbid = '' then + exit; + with ADOQueryImageYS do + begin + close; + sql.Clear; + sql.Add('select * from TP_File A'); + sql.Add('where TFid=''' + CDS_Sub.fieldbyname('YSFile').asstring + ''''); + open; + end; +end; + +procedure TfrmZdyAttInputCP10.FormDestroy(Sender: TObject); +begin + frmZdyAttInputCP10 := nil; +end; + +procedure TfrmZdyAttInputCP10.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmZdyAttInputCP10.FormCreate(Sender: TObject); +begin + Panel1.Align := alclient; + clearControl(GroupBox1, 2); +end; + +procedure TfrmZdyAttInputCP10.TsaveClick(Sender: TObject); +begin + zdyName.SetFocus; + if trim(zdyCode.Text) = '' then + begin + application.MessageBox('ƷŲΪգ', 'ʾϢ', MB_ICONERROR); + exit; + end; + + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment X'); + sql.Add('where zdyCode=' + quotedstr(trim(zdyCode.Text))); + sql.Add('and ATID<>' + quotedstr(trim(FATID))); + sql.Add('and Type=''CP'' '); + open; + if not IsEmpty then + begin + application.MessageBox('Ʒظ', 'ʾϢ', MB_ICONERROR); + exit; + end; + end; + + AdoqueryCmd.Connection.BeginTrans; + try + if not savedata() then + begin + AdoqueryCmd.Connection.RollbackTrans; + application.MessageBox('ݱʧܣ', 'ʾϢ', MB_ICONERROR); + end + else + begin + AdoqueryCmd.Connection.CommitTrans; + application.MessageBox('ݱɹ', 'ʾϢ'); + self.ModalResult := 1; + end; + + except + AdoqueryCmd.Connection.RollbackTrans; + end; +end; + +procedure TfrmZdyAttInputCP10.FormShow(Sender: TObject); +var + fzdyCode: string; +begin + InitGrid(); + + if CopyInt = 99 then + begin + FATId := ''; + zdycode.text := ''; + with CDS_Sub do + begin + First; + while not Eof do + begin + Edit; + FieldByName('ATID').Value := ''; + FieldByName('YSId').Value := ''; + FieldByName('YSFile').Value := ''; + + Post; + Next; + end; + end; +// with ADOQueryMain do +// begin +// First; +// while not Eof do +// begin +// Edit; +// FieldByName('ATID').Value := ''; +// Post; +// Next; +// end; +// end; + end; + InitImage(); +end; + +procedure TfrmZdyAttInputCP10.Picture6DblClick(Sender: TObject); +var + sFieldName: string; + fileName: string; +begin +{ + IF TcxDBImage(Sender).Picture.Height=0 then exit; + + sFieldName:='D:\ͼƬ鿴'; + + if not DirectoryExists(pchar(sFieldName)) then + CreateDirectory(pchar(sFieldName),nil); + + fileName:=adoqueryImage.fieldbyname(TcxDBImage(Sender).Hint).asstring; + + sFieldName:=sFieldName+'\'+trim(fileName); + try + IdFTP1.Host := PicSvr; + IdFTP1.Username := 'three'; + IdFTP1.Password := '641010'; + IdFTP1.Connect(); + except + ; + end; + + if IdFTP1.Connected then + begin + try + IdFTP1.Get('TP\'+ Trim(fileName), sFieldName,false, true); + except + Application.MessageBox('ͻͼļ', 'ʾ', MB_ICONWARNING); + IdFTP1.Quit; + Exit; + end; + end + else + begin + Application.MessageBox('޷ļ', 'ʾ', MB_ICONWARNING); + IdFTP1.Quit; + Exit; + end; + if IdFTP1.Connected then IdFTP1.Quit; + ShellExecute(Handle, 'open',PChar(sFieldName),'', '', SW_SHOWNORMAL); } +end; + +procedure TfrmZdyAttInputCP10.FileNameClick(Sender: TObject); +begin + if trim(zdyCode.Text) = '' then + begin + application.MessageBox('ƷŲΪգ', 'ʾϢ', MB_ICONERROR); + exit; + end; + + try + FormGetPic := TFormGetPic.Create(Application); + with FormGetPic do + begin + fkeyNO := trim(zdyCode.Text); + pat1 := TCXbutton(Sender).Name; + pic1 := TCXbutton(Sender).Hint; + FTFType := 'Ʒ'; + // pat1:='PatFile1'; +// pic1:='Picture1'; + if ShowModal = 1 then + begin + // self.Timage(Tbutton(Sender).Hint).Picture.Assign(FormGetPic.Image2.Picture.Bitmap); + zdycode.Enabled := false; + end; + + Release; + end; + Initimage(); + except + if FormGetPic <> nil then + FormGetPic.Release; + end; +end; + +procedure TfrmZdyAttInputCP10.MTypeBtnDnClick(Sender: TObject); +begin + TBtnEditC(Sender).Text := ''; + TBtnEditC(Sender).TxtCode := ''; +end; + +procedure TfrmZdyAttInputCP10.defnote3BtnClick(Sender: TObject); +begin + frmZdyAttachGYS_help := TfrmZdyAttachGYS_help.create(self); + with frmZdyAttachGYS_help do + begin + if showmodal = 1 then + begin + defnote3.Text := trim(cds_hz.fieldbyname('zdyName').asstring); + end; + free; + end; +end; + +procedure TfrmZdyAttInputCP10.CYCMBtnClick(Sender: TObject); +begin + frmZdyCMZ_sel := TfrmZdyCMZ_sel.create(self); + with frmZdyCMZ_sel do + begin + if showmodal = 1 then + begin + + CYCM.text := CDS_HZ.fieldbyname('CodeName').AsString; + + end; + free; + end; +end; + +procedure TfrmZdyAttInputCP10.cycolorBtnClick(Sender: TObject); +begin + frmZdyYS_sel := TfrmZdyYS_sel.create(self); + with frmZdyYS_sel do + begin + if showmodal = 1 then + begin + + cycolor.text := CDS_HZ.fieldbyname('CodeName').AsString; + + end; + free; + end; +end; + +procedure TfrmZdyAttInputCP10.ToolButton7Click(Sender: TObject); +begin +// CopyAddRow(Tv2, CDS_Sub); +// with CDS_Sub do +// begin +// Edit; +// FieldByName('cyys').Value := ''; +// FieldByName('YSFile').Value := ''; +// Post; +// end; + frmZdyYS_sel := TfrmZdyYS_sel.create(self); + with frmZdyYS_sel do + begin +// if ShowModal = 1 then +// begin +// Self.CDS_Sub.Edit; +// Self.CDS_Sub.FieldByName('cyys').Value := trim(CDS_HZ.fieldbyname('CodeName').AsString); +//// Self.Order_Sub.FieldByName('SOrddefstr4').Value := Trim(ClientDataSet1.fieldbyname('Note').AsString); +// end; + if showmodal = 1 then + begin + CDS_HZ.First; + while not CDS_HZ.Eof do + begin + if CDS_HZ.fieldbyname('ssel').AsBoolean then + begin +// Self.CDS_Sub.Edit; +// Self.CDS_Sub.FieldByName('cyys').Value := trim(CDS_HZ.fieldbyname('CodeName').AsString); + CDS_Sub.Append; + CDS_Sub.FieldByName('cyys').Value := trim(CDS_HZ.fieldbyname('CodeName').AsString); + CDS_Sub.post; + end; + CDS_HZ.Next; + end; + tv2.Controller.EditingController.ShowEdit(); + free; + end; + end; +end; + +procedure TfrmZdyAttInputCP10.Tv2Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + FormGetPicYS := TFormGetPicYS.create(self); + with FormGetPicYS do + begin + fFlileFlag := self.fFlileFlag; + fkeyNo := CDS_Sub.fieldbyname('YSFile').asstring; + fkeyNo1 := CDS_Sub.fieldbyname('YSid').asstring; + pat1 := 'FileName'; + pic1 := 'FilesOther'; + FTFType := 'YS'; + if showmodal = 1 then + begin + CDS_Sub.edit; + CDS_Sub.fieldbyname('YSFile').Value := trim(fkeyNo); + end; + free; + end; +end; + +procedure TfrmZdyAttInputCP10.Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + initImageYS(CDS_Sub.fieldbyname('YSFile').AsString); +end; + +procedure TfrmZdyAttInputCP10.ToolButton9Click(Sender: TObject); +begin + if CDS_Sub.IsEmpty then + Exit; + + if Trim(CDS_Sub.fieldbyname('YSId').AsString) <> '' then + begin + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; +// with ADOCmd do +// begin +// Close; +// sql.Clear; +// sql.Add('delete TP_File where WBID=''' + Trim(CDS_HZ.fieldbyname('SubId').AsString) + ''' and TFType=''EWM'' '); +// ExecSQL; +// end; + with ADOQueryTmp do + begin + Close; + sql.Clear; + sql.Add('delete KH_YS where YSId=''' + Trim(CDS_Sub.fieldbyname('YSId').AsString) + ''''); + ExecSQL; + end; + end; + CDS_Sub.Delete; +end; + +end. + diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP_CB.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP_CB.dfm new file mode 100644 index 0000000..fcd39ac --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP_CB.dfm @@ -0,0 +1,1189 @@ +object frmZdyAttInputCP_CB: TfrmZdyAttInputCP_CB + Left = 300 + Top = 110 + Width = 1479 + Height = 748 + Caption = #20135#21697#36164#26009#24405#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Label17: TLabel + Left = 32 + Top = 96 + Width = 48 + Height = 12 + Caption = #20960' '#39068' '#33394 + end + object Label9: TLabel + Left = 836 + Top = 124 + Width = 48 + Height = 12 + Caption = #25104#20154#25104#26412 + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1463 + Height = 30 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object Tsave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TsaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 30 + Width = 1463 + Height = 679 + Align = alClient + BevelOuter = bvNone + TabOrder = 1 + object GroupBox1: TGroupBox + Left = 0 + Top = 0 + Width = 1463 + Height = 281 + Align = alTop + Color = clSkyBlue + Enabled = False + ParentColor = False + TabOrder = 0 + object Label1: TLabel + Left = 36 + Top = 28 + Width = 48 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label2: TLabel + Left = 249 + Top = 28 + Width = 48 + Height = 12 + Caption = #20135#21697#21517#31216 + end + object Label3: TLabel + Left = 36 + Top = 53 + Width = 48 + Height = 12 + Caption = #31867' '#22411 + end + object Label6: TLabel + Left = 249 + Top = 53 + Width = 48 + Height = 12 + Caption = #35268' '#26684 + end + object Label13: TLabel + Left = 459 + Top = 16 + Width = 48 + Height = 12 + Caption = #20135#21697#22270#29255 + end + object Label12: TLabel + Left = 36 + Top = 78 + Width = 48 + Height = 12 + Caption = #25104' '#20998 + end + object Label39: TLabel + Left = 249 + Top = 77 + Width = 48 + Height = 12 + Caption = #23494' '#24230 + end + object Label4: TLabel + Left = 1077 + Top = 161 + Width = 48 + Height = 12 + Caption = #20811' '#37325 + Visible = False + end + object Label5: TLabel + Left = 864 + Top = 162 + Width = 48 + Height = 12 + Caption = #38376' '#24133 + Visible = False + end + object Label7: TLabel + Left = 36 + Top = 174 + Width = 48 + Height = 12 + Caption = #22791' '#27880 + end + object Label8: TLabel + Left = 816 + Top = 60 + Width = 68 + Height = 16 + Caption = #25104#20154#25104#26412 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 816 + Top = 92 + Width = 68 + Height = 16 + Caption = #20799#31461#25104#26412 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 36 + Top = 106 + Width = 48 + Height = 12 + Caption = #19968#32423#20215#26684 + end + object Label14: TLabel + Left = 238 + Top = 102 + Width = 60 + Height = 12 + Caption = #20108#32423#25104#20154#20215 + end + object Label15: TLabel + Left = 36 + Top = 128 + Width = 48 + Height = 12 + Caption = #19977#32423#20215#26684 + end + object Label16: TLabel + Left = 36 + Top = 154 + Width = 48 + Height = 12 + Caption = #23450#21046#20215#26684 + end + object Label18: TLabel + Left = 241 + Top = 130 + Width = 60 + Height = 12 + Caption = #20108#32423#20799#31461#20215 + end + object Label19: TLabel + Left = 243 + Top = 154 + Width = 54 + Height = 12 + Caption = #39068' '#33394 + end + object zdyCode: TEdit + Tag = 2 + Left = 88 + Top = 24 + Width = 140 + Height = 20 + ReadOnly = True + TabOrder = 0 + Text = 'zdyCode' + end + object zdyName: TEdit + Tag = 2 + Left = 301 + Top = 24 + Width = 140 + Height = 20 + TabOrder = 1 + Text = 'zdyName' + end + object defstr1: TEdit + Tag = 2 + Left = 301 + Top = 49 + Width = 140 + Height = 20 + TabOrder = 2 + Text = 'Edit1' + end + object Picture4: TcxDBImage + Left = 457 + Top = 29 + Hint = 'FileName' + DataBinding.DataField = 'FilesOther' + DataBinding.DataSource = DataSource1 + Properties.GraphicClassName = 'TJPEGImage' + Properties.ReadOnly = True + Properties.ShowFocusRect = False + Style.BorderStyle = ebsSingle + TabOrder = 3 + OnDblClick = cxDBImage1DblClick + Height = 220 + Width = 316 + end + object FileName: TcxButton + Left = 457 + Top = 248 + Width = 75 + Height = 25 + Hint = 'Filesother' + Caption = #21152#36733#22270#29255 + TabOrder = 4 + Visible = False + OnClick = FileNameClick + LookAndFeel.Kind = lfOffice11 + end + object defstr2: TEdit + Tag = 2 + Left = 88 + Top = 74 + Width = 140 + Height = 20 + TabOrder = 5 + Text = 'Edit1' + end + object defnote2: TEdit + Tag = 2 + Left = 301 + Top = 73 + Width = 140 + Height = 20 + TabOrder = 6 + Text = 'Edit1' + end + object defstr8: TEdit + Tag = 2 + Left = 1129 + Top = 157 + Width = 140 + Height = 20 + TabOrder = 7 + Text = 'defstr8' + Visible = False + end + object defstr7: TEdit + Tag = 2 + Left = 916 + Top = 158 + Width = 140 + Height = 20 + TabOrder = 8 + Text = 'Edit1' + Visible = False + end + object note: TMemo + Tag = 2 + Left = 88 + Top = 172 + Width = 353 + Height = 101 + Lines.Strings = ( + 'note') + ScrollBars = ssVertical + TabOrder = 9 + end + object defstr5: TComboBox + Tag = 2 + Left = 88 + Top = 48 + Width = 140 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 10 + Items.Strings = ( + #33258#24049 + #23458#25143) + end + object DefFlt1: TEdit + Left = 888 + Top = 56 + Width = 121 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + end + object DefFlt2: TEdit + Left = 888 + Top = 88 + Width = 121 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 12 + end + object fprice: TEdit + Tag = 2 + Left = 90 + Top = 100 + Width = 140 + Height = 20 + TabOrder = 13 + end + object sprice: TEdit + Tag = 2 + Left = 300 + Top = 97 + Width = 141 + Height = 20 + TabOrder = 14 + end + object tprice: TEdit + Tag = 2 + Left = 90 + Top = 125 + Width = 140 + Height = 20 + TabOrder = 15 + end + object DZprice: TEdit + Tag = 2 + Left = 88 + Top = 149 + Width = 141 + Height = 20 + TabOrder = 16 + end + object seprice: TEdit + Tag = 2 + Left = 300 + Top = 125 + Width = 141 + Height = 20 + TabOrder = 17 + end + object CYColor: TBtnEditA + Left = 300 + Top = 149 + Width = 142 + Height = 20 + TabOrder = 18 + OnBtnClick = CYColorBtnClick + end + end + object Panel2: TPanel + Left = 0 + Top = 281 + Width = 1463 + Height = 398 + Align = alClient + BevelOuter = bvNone + Caption = 'Panel2' + TabOrder = 1 + object Panel3: TPanel + Left = 0 + Top = 0 + Width = 510 + Height = 398 + Align = alLeft + BevelOuter = bvNone + Caption = 'Panel3' + TabOrder = 0 + object ToolBar2: TToolBar + Left = 0 + Top = 0 + Width = 510 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#21152 + ImageIndex = 22 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 100 + OnClick = ToolButton2Click + end + object ToolButton9: TToolButton + Left = 126 + Top = 0 + Caption = #22797#21046 + ImageIndex = 51 + OnClick = ToolButton9Click + end + object Panel6: TPanel + Left = 185 + Top = 0 + Width = 185 + Height = 30 + BevelOuter = bvNone + Caption = #38754#36741#26009#20449#24687 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 31 + Width = 510 + Height = 367 + Align = alClient + TabOrder = 1 + object TV1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DS1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = V1Column3 + end + item + Kind = skSum + Column = V1Column5 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_BaseInfo.Default + object V1Column6: TcxGridDBColumn + Caption = #20379#24212#21830 + DataBinding.FieldName = 'defstr4' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = V1Column6PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 96 + end + object V1Column1: TcxGridDBColumn + Caption = #38754#36741#26009#21517#31216 + DataBinding.FieldName = 'defstr1' + HeaderAlignmentHorz = taCenter + Width = 100 + end + object V1Column2: TcxGridDBColumn + Caption = #25104#20154#29992#26009 + DataBinding.FieldName = 'defstr2' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = V1Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 80 + end + object V1Column3: TcxGridDBColumn + Caption = #25104#20154#36153#29992 + DataBinding.FieldName = 'DefFlt4' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = V1Column3PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_BaseInfo.FontBlue + Styles.Footer = DataLink_BaseInfo.FontBlue + Styles.Header = DataLink_BaseInfo.FontBlue + Width = 61 + end + object V1Column4: TcxGridDBColumn + Caption = #20799#31461#29992#26009 + DataBinding.FieldName = 'defstr3' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = V1Column4PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 80 + end + object V1Column5: TcxGridDBColumn + Caption = #20799#31461#36153#29992 + DataBinding.FieldName = 'DefFlt5' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = V1Column3PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_BaseInfo.FontBlue + Styles.Footer = DataLink_BaseInfo.FontBlue + Styles.Header = DataLink_BaseInfo.FontBlue + Width = 62 + end + object TV1Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'CBdj' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV1Column1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 60 + end + object TV1Column2: TcxGridDBColumn + Caption = #25439#32791'(%)' + DataBinding.FieldName = 'CBsh' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV1Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 60 + end + object TV1Column3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'CBColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = TV1Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 66 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = TV1 + end + end + end + object Panel4: TPanel + Left = 510 + Top = 0 + Width = 260 + Height = 398 + Align = alLeft + BevelOuter = bvNone + Caption = 'Panel3' + TabOrder = 1 + object ToolBar3: TToolBar + Left = 0 + Top = 0 + Width = 260 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object ToolButton3: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#21152 + ImageIndex = 22 + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 100 + OnClick = ToolButton4Click + end + object ToolButton10: TToolButton + Left = 126 + Top = 0 + Caption = #22797#21046 + ImageIndex = 51 + OnClick = ToolButton10Click + end + object Panel7: TPanel + Left = 185 + Top = 0 + Width = 61 + Height = 30 + BevelOuter = bvNone + Caption = #24037#33402#20449#24687 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 32 + Width = 260 + Height = 366 + Align = alClient + TabOrder = 1 + object TV2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DS2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn3 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_BaseInfo.Default + object cxGridDBColumn1: TcxGridDBColumn + Caption = #24037#24207#21517#31216 + DataBinding.FieldName = 'defstr1' + HeaderAlignmentHorz = taCenter + Width = 150 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #36153#29992 + DataBinding.FieldName = 'DefFlt4' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn3PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_BaseInfo.FontBlue + Width = 80 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + end + object Panel5: TPanel + Left = 770 + Top = 0 + Width = 260 + Height = 398 + Align = alLeft + BevelOuter = bvNone + Caption = 'Panel3' + TabOrder = 2 + object ToolBar4: TToolBar + Left = 0 + Top = 0 + Width = 260 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object ToolButton5: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#21152 + ImageIndex = 22 + OnClick = ToolButton5Click + end + object ToolButton6: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 100 + OnClick = ToolButton6Click + end + object ToolButton11: TToolButton + Left = 126 + Top = 0 + Caption = #22797#21046 + ImageIndex = 51 + OnClick = ToolButton11Click + end + object Panel8: TPanel + Left = 185 + Top = 0 + Width = 62 + Height = 30 + BevelOuter = bvNone + Caption = #20854#23427#36153#29992 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + end + end + object cxGrid3: TcxGrid + Left = 0 + Top = 32 + Width = 310 + Height = 366 + Align = alLeft + TabOrder = 1 + object Tv3: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DS3 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn8 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_BaseInfo.Default + object cxGridDBColumn6: TcxGridDBColumn + Caption = #36153#29992#21517#31216 + DataBinding.FieldName = 'defstr1' + HeaderAlignmentHorz = taCenter + Width = 150 + end + object cxGridDBColumn8: TcxGridDBColumn + Caption = #36153#29992 + DataBinding.FieldName = 'DefFlt4' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn8PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_BaseInfo.FontBlue + Width = 80 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + end + object Panel9: TPanel + Left = 1290 + Top = 0 + Width = 173 + Height = 398 + Align = alClient + BevelOuter = bvNone + Caption = 'Panel3' + TabOrder = 3 + object ToolBar5: TToolBar + Left = 0 + Top = 0 + Width = 173 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object ToolButton7: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#21152 + ImageIndex = 22 + OnClick = ToolButton7Click + end + object ToolButton8: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 100 + Wrap = True + OnClick = ToolButton8Click + end + object ToolButton12: TToolButton + Left = 0 + Top = 30 + Caption = #22797#21046 + ImageIndex = 51 + Wrap = True + OnClick = ToolButton12Click + end + object Panel10: TPanel + Left = 0 + Top = 60 + Width = 135 + Height = 30 + BevelOuter = bvNone + Caption = #20214#25968'/'#36153#29992 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + end + end + object cxGrid4: TcxGrid + Left = 0 + Top = 31 + Width = 173 + Height = 367 + Align = alClient + TabOrder = 1 + object TV4: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DS4 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_BaseInfo.Default + object TV4Column1: TcxGridDBColumn + Caption = #26368#23567#20214#25968 + DataBinding.FieldName = 'CBzxjs' + Width = 60 + end + object TV4Column2: TcxGridDBColumn + Caption = #26368#22823#20214#25968 + DataBinding.FieldName = 'CBzdjs' + Width = 60 + end + object TV4Column3: TcxGridDBColumn + Caption = #32541#32427#36153 + DataBinding.FieldName = 'CBfrf' + Width = 60 + end + object TV4Column4: TcxGridDBColumn + Caption = #35009#21098#36153 + DataBinding.FieldName = 'CBcjf' + Width = 60 + end + end + object cxGridLevel3: TcxGridLevel + GridView = TV4 + end + end + end + object Panel11: TPanel + Left = 1030 + Top = 0 + Width = 260 + Height = 398 + Align = alLeft + BevelOuter = bvNone + Caption = 'Panel3' + TabOrder = 4 + object ToolBar6: TToolBar + Left = 0 + Top = 0 + Width = 260 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object ToolButton13: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#21152 + ImageIndex = 22 + OnClick = ToolButton13Click + end + object ToolButton14: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 100 + OnClick = ToolButton14Click + end + object ToolButton15: TToolButton + Left = 126 + Top = 0 + Caption = #22797#21046 + ImageIndex = 51 + Visible = False + OnClick = ToolButton10Click + end + object Panel12: TPanel + Left = 185 + Top = 0 + Width = 61 + Height = 30 + BevelOuter = bvNone + Caption = #23610#30721' ' + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + end + end + object cxGrid5: TcxGrid + Left = 0 + Top = 32 + Width = 260 + Height = 366 + Align = alClient + TabOrder = 1 + object TV5: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DS5 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_BaseInfo.Default + object TV5Column2: TcxGridDBColumn + Caption = #23610#30721 + DataBinding.FieldName = 'defstr1' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object TV5Column1: TcxGridDBColumn + Caption = #26465#24418#30721 + DataBinding.FieldName = 'defstr2' + HeaderAlignmentHorz = taCenter + Width = 80 + end + end + object cxGridLevel4: TcxGridLevel + GridView = TV5 + end + end + end + end + end + object PopupMenu1: TPopupMenu + Left = 1140 + Top = 103 + object N1: TMenuItem + Caption = #21024#38500 + end + object N3: TMenuItem + Caption = '-' + end + object N2: TMenuItem + Caption = #21478#23384#20026'...' + end + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + EnableBCD = False + Parameters = <> + Left = 720 + Top = 71 + end + object ADOQueryTmp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + EnableBCD = False + Parameters = <> + Left = 720 + Top = 139 + end + object ADOQueryImage: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + EnableBCD = False + Parameters = <> + Left = 736 + Top = 227 + end + object ADOQuerymain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + EnableBCD = False + Parameters = <> + Left = 716 + Top = 191 + end + object IdFTP1: TIdFTP + MaxLineAction = maException + ReadTimeout = 0 + ProxySettings.ProxyType = fpcmNone + ProxySettings.Port = 0 + Left = 784 + Top = 178 + end + object DataSource1: TDataSource + DataSet = ADOQueryImage + Left = 804 + Top = 231 + end + object CDS1: TClientDataSet + Aggregates = <> + Params = <> + Left = 144 + Top = 351 + end + object CDS2: TClientDataSet + Aggregates = <> + Params = <> + Left = 212 + Top = 347 + end + object CDS3: TClientDataSet + Aggregates = <> + Params = <> + Left = 276 + Top = 335 + end + object DS3: TDataSource + DataSet = CDS3 + Left = 288 + Top = 372 + end + object DS2: TDataSource + DataSet = CDS2 + Left = 228 + Top = 384 + end + object DS1: TDataSource + DataSet = CDS1 + Left = 148 + Top = 384 + end + object DS4: TDataSource + DataSet = CDS4 + Left = 328 + Top = 380 + end + object CDS4: TClientDataSet + Aggregates = <> + Params = <> + Left = 332 + Top = 343 + end + object ADOQuery1: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + EnableBCD = False + Parameters = <> + Left = 600 + Top = 195 + end + object DataSource2: TDataSource + DataSet = ClientDataSet1 + Left = 60 + Top = 400 + end + object ClientDataSet1: TClientDataSet + Aggregates = <> + Params = <> + Left = 68 + Top = 343 + end + object CDS5: TClientDataSet + Aggregates = <> + Params = <> + Left = 396 + Top = 351 + end + object DS5: TDataSource + DataSet = CDS5 + Left = 392 + Top = 388 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP_CB.pas b/基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP_CB.pas new file mode 100644 index 0000000..ac21f45 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttInputCP_CB.pas @@ -0,0 +1,1402 @@ +unit U_ZdyAttInputCP_CB; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ExtCtrls, cxPC, cxControls, ComCtrls, ToolWin, StdCtrls, Menus, + cxTextEdit, cxCurrencyEdit, BtnEdit, cxContainer, cxEdit, cxImage, DB, ADODB, + cxDBEdit, cxLookAndFeelPainters, cxButtons, IdBaseComponent, IdComponent, + IdTCPConnection, IdTCPClient, IdFTP, ShellAPI, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxDBData, cxGridLevel, cxClasses, + cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, + cxGrid, DBClient, cxButtonEdit, cxLookAndFeels, 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 + TfrmZdyAttInputCP_CB = class(TForm) + ToolBar1: TToolBar; + Tsave: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + GroupBox1: TGroupBox; + Label1: TLabel; + zdyCode: TEdit; + Label2: TLabel; + zdyName: TEdit; + Label3: TLabel; + Label6: TLabel; + defstr1: TEdit; + Label13: TLabel; + Label17: TLabel; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + N3: TMenuItem; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + ADOQueryImage: TADOQuery; + ADOQuerymain: TADOQuery; + Picture4: TcxDBImage; + FileName: TcxButton; + IdFTP1: TIdFTP; + DataSource1: TDataSource; + Label12: TLabel; + defstr2: TEdit; + Label39: TLabel; + defnote2: TEdit; + defstr8: TEdit; + Label4: TLabel; + defstr7: TEdit; + Label5: TLabel; + note: TMemo; + Label7: TLabel; + defstr5: TComboBox; + Panel2: TPanel; + Panel3: TPanel; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + TV1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + CDS1: TClientDataSet; + CDS2: TClientDataSet; + CDS3: TClientDataSet; + V1Column1: TcxGridDBColumn; + V1Column2: TcxGridDBColumn; + V1Column3: TcxGridDBColumn; + V1Column4: TcxGridDBColumn; + V1Column5: TcxGridDBColumn; + Panel4: TPanel; + ToolBar3: TToolBar; + ToolButton3: TToolButton; + ToolButton4: TToolButton; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Panel5: TPanel; + ToolBar4: TToolBar; + ToolButton5: TToolButton; + ToolButton6: TToolButton; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn6: TcxGridDBColumn; + cxGridDBColumn8: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + Panel6: TPanel; + Panel7: TPanel; + Panel8: TPanel; + Label8: TLabel; + DefFlt1: TEdit; + Label9: TLabel; + Label10: TLabel; + DS3: TDataSource; + DS2: TDataSource; + DS1: TDataSource; + DefFlt2: TEdit; + V1Column6: TcxGridDBColumn; + Panel9: TPanel; + ToolBar5: TToolBar; + ToolButton7: TToolButton; + ToolButton8: TToolButton; + Panel10: TPanel; + cxGrid4: TcxGrid; + TV4: TcxGridDBTableView; + cxGridLevel3: TcxGridLevel; + DS4: TDataSource; + TV4Column1: TcxGridDBColumn; + TV4Column2: TcxGridDBColumn; + TV4Column3: TcxGridDBColumn; + TV4Column4: TcxGridDBColumn; + CDS4: TClientDataSet; + TV1Column1: TcxGridDBColumn; + TV1Column2: TcxGridDBColumn; + ToolButton9: TToolButton; + ADOQuery1: TADOQuery; + ToolButton10: TToolButton; + ToolButton11: TToolButton; + ToolButton12: TToolButton; + DataSource2: TDataSource; + ClientDataSet1: TClientDataSet; + TV1Column3: TcxGridDBColumn; + Label11: TLabel; + Label14: TLabel; + fprice: TEdit; + sprice: TEdit; + Label15: TLabel; + tprice: TEdit; + Label16: TLabel; + DZprice: TEdit; + Label18: TLabel; + seprice: TEdit; + CYColor: TBtnEditA; + Label19: TLabel; + Panel11: TPanel; + ToolBar6: TToolBar; + ToolButton13: TToolButton; + ToolButton14: TToolButton; + ToolButton15: TToolButton; + Panel12: TPanel; + cxGrid5: TcxGrid; + TV5: TcxGridDBTableView; + cxGridLevel4: TcxGridLevel; + CDS5: TClientDataSet; + DS5: TDataSource; + TV5Column1: TcxGridDBColumn; + TV5Column2: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TsaveClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure cxDBImage1DblClick(Sender: TObject); + procedure FileNameClick(Sender: TObject); + procedure MTypeBtnDnClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton6Click(Sender: TObject); + procedure V1Column3PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn3PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure V1Column6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure ToolButton7Click(Sender: TObject); + procedure ToolButton8Click(Sender: TObject); + procedure V1Column2PropertiesEditValueChanged(Sender: TObject); + procedure V1Column4PropertiesEditValueChanged(Sender: TObject); + procedure TV1Column1PropertiesEditValueChanged(Sender: TObject); + procedure TV1Column2PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton9Click(Sender: TObject); + procedure ToolButton10Click(Sender: TObject); + procedure ToolButton11Click(Sender: TObject); + procedure ToolButton12Click(Sender: TObject); + procedure TV1Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure CYColorBtnClick(Sender: TObject); + procedure ToolButton13Click(Sender: TObject); + procedure ToolButton14Click(Sender: TObject); + private + function savedata(): Boolean; + function savedatacb(): Boolean; + function savedataFZ(): Boolean; + procedure InitGrid(); + procedure InitImage(); + procedure Jscb(); + { Private declarations } + public + PState, CopyInt: Integer; + FATID: string; + p, FZcode, FZname, fzmk: string; + { Public declarations } + end; + +var + frmZdyAttInputCP_CB: TfrmZdyAttInputCP_CB; + +implementation + +uses + U_DataLink, U_Fun10, U_ZDYHelp, getpic, U_ZdyAttachCPcbfz, U_ZDYHelpSel, + U_ZdyAttachGYS_help, U_ZdyYS_Sel, U_ZdyCMZ_help; +{$R *.dfm} + +procedure TfrmZdyAttInputCP_CB.Jscb(); +var + fcrcb, frtcb: double; +begin + fcrcb := 0; + frtcb := 0; + if not varisnull(tv1.DataController.Summary.FooterSummaryValues[0]) then + fcrcb := fcrcb + tv1.DataController.Summary.FooterSummaryValues[0]; + if not varisnull(tv1.DataController.Summary.FooterSummaryValues[1]) then + frtcb := frtcb + tv1.DataController.Summary.FooterSummaryValues[1]; + if not varisnull(tv2.DataController.Summary.FooterSummaryValues[0]) then + begin + fcrcb := fcrcb + tv2.DataController.Summary.FooterSummaryValues[0]; + frtcb := frtcb + tv2.DataController.Summary.FooterSummaryValues[0]; + end; + if not varisnull(tv3.DataController.Summary.FooterSummaryValues[0]) then + begin + fcrcb := fcrcb + tv3.DataController.Summary.FooterSummaryValues[0]; + frtcb := frtcb + tv3.DataController.Summary.FooterSummaryValues[0]; + end; + DefFlt1.Text := floattostr(fcrcb); + DefFlt2.Text := floattostr(frtcb); +end; + +function TfrmZdyAttInputCP_CB.savedatacb(): Boolean; +begin + result := false; + ADOQueryCmd.Connection.BeginTrans; + try + if trim(FATID) = '' then + begin + if GetLSNo(ADOQueryCmd, FATID, 'AT', 'KH_Zdy_Attachment', 4, 1) = False then + begin + Result := False; + Application.MessageBox('ȡʧܣ', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_Zdy_Attachment where ATID=''' + Trim(FATID) + ''''); + Open; + if IsEmpty then + begin + append; + FieldByName('Filler').Value := Trim(DName); + end + else + begin + Edit; + FieldByName('Editer').Value := Trim(DName); + FieldByName('Edittime').Value := SGetServerDateTime(ADOQueryTmp); + end; + SSetsaveSqlNew(ADOQueryCmd, 'KH_Zdy_Attachment', GroupBox1, 2); +// fieldbyname('fprice').Value := strtofloatdef(trim(DefFlt1.Text), 0); +// fieldbyname('Sprice').Value := strtofloatdef(trim(DefFlt2.Text), 0); +// fieldbyname('Tprice').Value := strtofloatdef(trim(DefFlt1.Text), 0); +// FieldByName('defflt3').Value := strtofloatdef(Trim(defflt3.text), 1); +// FieldByName('defflt4').Value := strtofloatdef(Trim(defflt4.text), 0); + FieldByName('ATID').Value := Trim(FATID); + FieldByName('Type').Value := 'CP'; + post; + end; + end; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_Zdy_Attachment where ATID=''' + Trim(FATID) + ''''); + open; + if not ADOQueryCmd.IsEmpty then + begin + edit; + fieldbyname('DefFlt1').Value := strtofloatdef(trim(DefFlt1.Text), 0); + fieldbyname('DefFlt2').Value := strtofloatdef(trim(DefFlt2.Text), 0); + fieldbyname('fprice').Value := strtofloatdef(trim(fprice.Text), 0); + fieldbyname('Sprice').Value := strtofloatdef(trim(Sprice.Text), 0); + fieldbyname('Seprice').Value := strtofloatdef(trim(Seprice.Text), 0); + fieldbyname('Tprice').Value := strtofloatdef(trim(Tprice.Text), 0); + fieldbyname('DZprice').Value := strtofloatdef(trim(DZprice.Text), 0); + post; + end; + end; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete from KH_Zdy_CPCB where zdyCode=''' + Trim(zdyCode.Text) + ''''); + execsql; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_Zdy_CPCB where 1=2 '); + Open; + end; + with cds1 do + begin + First; + while not eof do + begin + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('CBID').Value := trim(FATID) + 'MF' + inttostr(recno); + ADOQueryCmd.FieldByName('ATID').Value := trim(FATID); + ADOQueryCmd.FieldByName('zdyCode').Value := trim(zdyCode.Text); + ADOQueryCmd.FieldByName('zdyName').Value := trim(zdyName.Text); + ADOQueryCmd.FieldByName('cbType').Value := 'CPCBMF'; + ADOQueryCmd.FieldByName('defstr1').Value := trim(fieldbyname('defstr1').AsString); + ADOQueryCmd.FieldByName('defstr2').Value := trim(fieldbyname('defstr2').AsString); + ADOQueryCmd.FieldByName('defstr3').Value := trim(fieldbyname('defstr3').AsString); + ADOQueryCmd.FieldByName('defstr4').Value := trim(fieldbyname('defstr4').AsString); + ADOQueryCmd.FieldByName('DefFlt4').Value := fieldbyname('DefFlt4').AsFloat; + ADOQueryCmd.FieldByName('DefFlt5').Value := fieldbyname('DefFlt5').AsFloat; + ADOQueryCmd.fieldbyname('DefFlt1').Value := strtofloatdef(trim(DefFlt1.Text), 0); + ADOQueryCmd.fieldbyname('DefFlt2').Value := strtofloatdef(trim(DefFlt2.Text), 0); + ADOQueryCmd.fieldbyname('CBdj').Value := fieldbyname('CBdj').AsFloat; + ADOQueryCmd.fieldbyname('Cbsh').Value := fieldbyname('cbsh').AsFloat; + ADOQueryCmd.fieldbyname('CBColor').Value := trim(fieldbyname('CBColor').AsString); + ADOQueryCmd.Post; + next; + end; + end; + with cds2 do + begin + First; + while not eof do + begin + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('CBID').Value := trim(FATID) + 'GY' + inttostr(recno); + ADOQueryCmd.FieldByName('ATID').Value := trim(FATID); + ADOQueryCmd.FieldByName('zdyCode').Value := trim(zdyCode.Text); + ADOQueryCmd.FieldByName('zdyName').Value := trim(zdyName.Text); + ADOQueryCmd.FieldByName('cbType').Value := 'CPCBGY'; + ADOQueryCmd.FieldByName('defstr1').Value := trim(fieldbyname('defstr1').AsString); + ADOQueryCmd.FieldByName('defstr2').Value := trim(fieldbyname('defstr2').AsString); + ADOQueryCmd.FieldByName('defstr3').Value := trim(fieldbyname('defstr3').AsString); + ADOQueryCmd.FieldByName('DefFlt4').Value := fieldbyname('DefFlt4').AsFloat; + ADOQueryCmd.FieldByName('DefFlt5').Value := fieldbyname('DefFlt5').AsFloat; + ADOQueryCmd.fieldbyname('DefFlt1').Value := strtofloatdef(trim(DefFlt1.Text), 0); + ADOQueryCmd.fieldbyname('DefFlt2').Value := strtofloatdef(trim(DefFlt2.Text), 0); + ADOQueryCmd.Post; + next; + end; + end; + with cds3 do + begin + First; + while not eof do + begin + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('CBID').Value := trim(FATID) + 'FY' + inttostr(recno); + ADOQueryCmd.FieldByName('ATID').Value := trim(FATID); + ADOQueryCmd.FieldByName('zdyCode').Value := trim(zdyCode.Text); + ADOQueryCmd.FieldByName('zdyName').Value := trim(zdyName.Text); + ADOQueryCmd.FieldByName('cbType').Value := 'CPCBFY'; + ADOQueryCmd.FieldByName('defstr1').Value := trim(fieldbyname('defstr1').AsString); + ADOQueryCmd.FieldByName('defstr2').Value := trim(fieldbyname('defstr2').AsString); + ADOQueryCmd.FieldByName('defstr3').Value := trim(fieldbyname('defstr3').AsString); + ADOQueryCmd.FieldByName('DefFlt4').Value := fieldbyname('DefFlt4').AsFloat; + ADOQueryCmd.FieldByName('DefFlt5').Value := fieldbyname('DefFlt5').AsFloat; + ADOQueryCmd.fieldbyname('DefFlt1').Value := strtofloatdef(trim(DefFlt1.Text), 0); + ADOQueryCmd.fieldbyname('DefFlt2').Value := strtofloatdef(trim(DefFlt2.Text), 0); + ADOQueryCmd.Post; + next; + end; + end; + with cds4 do + begin + First; + while not eof do + begin + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('CBID').Value := trim(FATID) + 'XY' + inttostr(recno); + ADOQueryCmd.FieldByName('ATID').Value := trim(FATID); + ADOQueryCmd.FieldByName('zdyCode').Value := trim(zdyCode.Text); + ADOQueryCmd.FieldByName('zdyName').Value := trim(zdyName.Text); + ADOQueryCmd.FieldByName('cbType').Value := 'CPCBXY'; + ADOQueryCmd.FieldByName('defstr1').Value := trim(fieldbyname('defstr1').AsString); + ADOQueryCmd.FieldByName('defstr2').Value := trim(fieldbyname('defstr2').AsString); + ADOQueryCmd.FieldByName('defstr3').Value := trim(fieldbyname('defstr3').AsString); + ADOQueryCmd.FieldByName('DefFlt4').Value := fieldbyname('DefFlt4').AsFloat; + ADOQueryCmd.FieldByName('DefFlt5').Value := fieldbyname('DefFlt5').AsFloat; + ADOQueryCmd.fieldbyname('DefFlt1').Value := strtofloatdef(trim(DefFlt1.Text), 0); + ADOQueryCmd.fieldbyname('DefFlt2').Value := strtofloatdef(trim(DefFlt2.Text), 0); + ADOQueryCmd.FieldByName('CBzxjs').Value := fieldbyname('CBzxjs').AsFloat; + ADOQueryCmd.FieldByName('CBzdjs').Value := fieldbyname('CBzdjs').AsFloat; + ADOQueryCmd.fieldbyname('CBfrf').Value := fieldbyname('CBfrf').AsFloat; + ADOQueryCmd.fieldbyname('CBcjf').Value := fieldbyname('CBcjf').AsFloat; + ADOQueryCmd.Post; + next; + end; + end; + with cds5 do + begin + First; + while not eof do + begin + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('CBID').Value := trim(FATID) + 'CM' + inttostr(recno); + ADOQueryCmd.FieldByName('ATID').Value := trim(FATID); + ADOQueryCmd.FieldByName('zdyCode').Value := trim(zdyCode.Text); + ADOQueryCmd.FieldByName('zdyName').Value := trim(zdyName.Text); + ADOQueryCmd.FieldByName('cbType').Value := 'CPCBCM'; + ADOQueryCmd.FieldByName('defstr1').Value := trim(fieldbyname('defstr1').AsString); + ADOQueryCmd.FieldByName('defstr2').Value := trim(fieldbyname('defstr2').AsString); +// ADOQueryCmd.FieldByName('defstr3').Value := trim(fieldbyname('defstr3').AsString); +// ADOQueryCmd.FieldByName('DefFlt4').Value := fieldbyname('DefFlt4').AsFloat; +// ADOQueryCmd.FieldByName('DefFlt5').Value := fieldbyname('DefFlt5').AsFloat; + ADOQueryCmd.fieldbyname('DefFlt1').Value := strtofloatdef(trim(DefFlt1.Text), 0); + ADOQueryCmd.fieldbyname('DefFlt2').Value := strtofloatdef(trim(DefFlt2.Text), 0); + + ADOQueryCmd.Post; + next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + result := true; + except + ADOQueryCmd.Connection.RollbackTrans; + end; +end; + +function TfrmZdyAttInputCP_CB.savedata(): Boolean; +begin + result := false; + try + if trim(FATID) = '' then + begin + if GetLSNo(ADOQueryCmd, FATID, 'AT', 'KH_Zdy_Attachment', 4, 1) = False then + begin + Result := False; + Application.MessageBox('ȡʧܣ', 'ʾ', 0); + Exit; + end; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_Zdy_Attachment where ATID=''' + Trim(FATID) + ''''); + Open; + if IsEmpty then + begin + append; + FieldByName('Filler').Value := Trim(DName); + end + else + begin + Edit; + FieldByName('Editer').Value := Trim(DName); + FieldByName('Edittime').Value := SGetServerDateTime(ADOQueryTmp); + end; + SSetsaveSqlNew(ADOQueryCmd, 'KH_Zdy_Attachment', GroupBox1, 2); + FieldByName('ATID').Value := Trim(FATID); + FieldByName('Type').Value := 'CP'; + post; + end; + + result := true; + except + end; +end; + +procedure TfrmZdyAttInputCP_CB.InitGrid(); +begin + with ADOQueryMain do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment A'); + sql.Add('where ATID=' + quotedstr(trim(FATID))); + open; + end; + if not ADOQueryMain.IsEmpty then + begin + GroupBox1.Enabled := true; + zdyCode.Enabled := false; + zdyName.Enabled := False; + DefFlt1.Enabled := False; + DefFlt2.Enabled := False; + SCSHDataNew(ADOQueryMain, GroupBox1, 2); + SCSHDataNew(ADOQueryMain, GroupBox1, 0); + + end; + if PState = 1 then + begin + GroupBox1.Enabled := true; + zdyCode.Enabled := true; + zdyCode.text := ''; + end; + with ADOQueryMain do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_CPCB A'); + sql.Add('where ATID=' + quotedstr(trim(FATID))); + sql.Add('and CBType=''CPCBMF'''); + open; + SCreateCDS20(ADOQueryMain, CDS1); + SInitCDSData20(ADOQueryMain, CDS1); + end; + with ADOQueryMain do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_CPCB A'); + sql.Add('where ATID=' + quotedstr(trim(FATID))); + sql.Add('and CBType=''CPCBGY'''); + open; + SCreateCDS20(ADOQueryMain, CDS2); + SInitCDSData20(ADOQueryMain, CDS2); + end; + with ADOQueryMain do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_CPCB A'); + sql.Add('where ATID=' + quotedstr(trim(FATID))); + sql.Add('and CBType=''CPCBFY'''); + open; + SCreateCDS20(ADOQueryMain, CDS3); + SInitCDSData20(ADOQueryMain, CDS3); + end; + with ADOQueryMain do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_CPCB A'); + sql.Add('where ATID=' + quotedstr(trim(FATID))); + sql.Add('and CBType=''CPCBXY'''); + open; + SCreateCDS20(ADOQueryMain, CDS4); + SInitCDSData20(ADOQueryMain, CDS4); + end; + with ADOQueryMain do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_CPCB A'); + sql.Add('where ATID=' + quotedstr(trim(FATID))); + sql.Add('and CBType=''CPCBCM'''); + open; + SCreateCDS20(ADOQueryMain, CDS5); + SInitCDSData20(ADOQueryMain, CDS5); + end; +end; + +procedure TfrmZdyAttInputCP_CB.InitImage(); +begin + with ADOQueryImage do + begin + close; + sql.Clear; + sql.Add('select * from TP_File A'); + sql.Add('where TFid=' + quotedstr(trim(zdyCode.Text))); + open; + end; +end; + +procedure TfrmZdyAttInputCP_CB.FormDestroy(Sender: TObject); +begin + frmZdyAttInputCP_CB := nil; +end; + +procedure TfrmZdyAttInputCP_CB.TBCloseClick(Sender: TObject); +begin + if Application.MessageBox('ȷҪر', 'ʾ', 32 + 4) <> IDYES then + Exit; + close; +end; + +procedure TfrmZdyAttInputCP_CB.FormCreate(Sender: TObject); +begin + Panel1.Align := alclient; + clearControl(GroupBox1, 2); +end; + +procedure TfrmZdyAttInputCP_CB.TsaveClick(Sender: TObject); +begin +// zdyName.SetFocus; + cxgrid1.SetFocus; + if trim(zdyCode.Text) = '' then + begin + application.MessageBox('ƷŲΪգ', 'ʾϢ', MB_ICONERROR); + exit; + end; + + if FATID = '' then + begin + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment X'); + sql.Add('where zdyCode=' + quotedstr(trim(zdyCode.Text))); + sql.Add('and ATID<>' + quotedstr(trim(FATID))); + sql.Add('and Type=''CP'' '); + open; + if not IsEmpty then + begin + application.MessageBox('Ʒظ', 'ʾϢ', MB_ICONERROR); + exit; + end; + end; + end; + + try + if not savedataCB() then + begin + application.MessageBox('ݱʧܣ', 'ʾϢ', MB_ICONERROR); + end + else + begin + application.MessageBox('ݱɹ', 'ʾϢ'); + self.ModalResult := 1; + end; + + except + + end; +end; + +procedure TfrmZdyAttInputCP_CB.FormShow(Sender: TObject); +var + fzdyCode: string; +begin + if trim(FATID) = '' then + begin + if GetLSNo(ADOQueryCmd, fzdyCode, 'CP', 'KH_Zdy_Attachment', 3, 1) = False then + begin + Application.MessageBox('ȡʧܣ', 'ʾ', 0); + Exit; + end; + zdyCode.Text := trim(fzdyCode); + end; + InitGrid(); + + if CopyInt = 99 then + begin + FATID := ''; + zdyCode.Text := ''; + zdycode.ReadOnly := False; +// with ADOQueryMain do +// begin +// First; +// while not Eof do +// begin +// Edit; +// FieldByName('ATID').Value := ''; +// Post; +// Next; +// end; +// end; + end; + InitImage(); +end; + +procedure TfrmZdyAttInputCP_CB.cxDBImage1DblClick(Sender: TObject); +var + sFieldName: string; + fileName: string; +begin +{ + IF TcxDBImage(Sender).Picture.Height=0 then exit; + + sFieldName:='D:\ͼƬ鿴'; + + if not DirectoryExists(pchar(sFieldName)) then + CreateDirectory(pchar(sFieldName),nil); + + fileName:=adoqueryImage.fieldbyname(TcxDBImage(Sender).Hint).asstring; + + sFieldName:=sFieldName+'\'+trim(fileName); + try + IdFTP1.Host := PicSvr; + IdFTP1.Username := 'three'; + IdFTP1.Password := '641010'; + IdFTP1.Connect(); + except + ; + end; + + if IdFTP1.Connected then + begin + try + IdFTP1.Get('TP\'+ Trim(fileName), sFieldName,false, true); + except + Application.MessageBox('ͻͼļ', 'ʾ', MB_ICONWARNING); + IdFTP1.Quit; + Exit; + end; + end + else + begin + Application.MessageBox('޷ļ', 'ʾ', MB_ICONWARNING); + IdFTP1.Quit; + Exit; + end; + if IdFTP1.Connected then IdFTP1.Quit; + ShellExecute(Handle, 'open',PChar(sFieldName),'', '', SW_SHOWNORMAL); } +end; + +procedure TfrmZdyAttInputCP_CB.FileNameClick(Sender: TObject); +begin + if trim(zdyCode.Text) = '' then + begin + application.MessageBox('ƷŲΪգ', 'ʾϢ', MB_ICONERROR); + exit; + end; + + try + FormGetPic := TFormGetPic.Create(Application); + with FormGetPic do + begin + fkeyNO := trim(zdyCode.Text); + pat1 := TCXbutton(Sender).Name; + pic1 := TCXbutton(Sender).Hint; + FTFType := 'Ʒ'; + // pat1:='PatFile1'; +// pic1:='Picture1'; + if ShowModal = 1 then + begin + // self.Timage(Tbutton(Sender).Hint).Picture.Assign(FormGetPic.Image2.Picture.Bitmap); + zdycode.Enabled := false; + end; + + Release; + end; + Initimage(); + except + if FormGetPic <> nil then + FormGetPic.Release; + end; +end; + +procedure TfrmZdyAttInputCP_CB.MTypeBtnDnClick(Sender: TObject); +begin + TBtnEditC(Sender).Text := ''; + TBtnEditC(Sender).TxtCode := ''; +end; + +procedure TfrmZdyAttInputCP_CB.ToolButton2Click(Sender: TObject); +begin + if CDS1.IsEmpty then + exit; + CDS1.Delete; + jscb(); +end; + +procedure TfrmZdyAttInputCP_CB.ToolButton1Click(Sender: TObject); +begin + frmZDYHelpSel := TfrmZDYHelpSel.create(self); + with frmZDYHelpSel do + begin + flag := 'CPCBMF'; + if showmodal = 1 then + begin + ClientDataSet1.First; + while not ClientDataSet1.Eof do + begin + if ClientDataSet1.fieldbyname('ssel').AsBoolean then + begin + cds1.Append; + cds1.FieldByName('DEFstr1').Value := trim(ClientDataSet1.fieldbyname('zdyName').AsString); + cds1.post; + end; + ClientDataSet1.Next; + end; + tv1.Controller.EditingController.ShowEdit(); + free; + end; + end; +end; + +procedure TfrmZdyAttInputCP_CB.ToolButton3Click(Sender: TObject); +begin + frmZDYHelpSel := TfrmZDYHelpSel.create(self); + with frmZDYHelpSel do + begin + flag := 'CPCBGY'; + if showmodal = 1 then + begin + ClientDataSet1.First; + while not ClientDataSet1.Eof do + begin + if ClientDataSet1.fieldbyname('ssel').AsBoolean then + begin + cds2.Append; + cds2.FieldByName('DEFstr1').Value := trim(ClientDataSet1.fieldbyname('zdyName').AsString); + cds2.post; + end; + ClientDataSet1.Next; + end; + tv2.Controller.EditingController.ShowEdit(); + free; + end; + end; +end; + +procedure TfrmZdyAttInputCP_CB.ToolButton5Click(Sender: TObject); +begin + frmZDYHelpSel := TfrmZDYHelpSel.create(self); + with frmZDYHelpSel do + begin + flag := 'CPCBFY'; + if showmodal = 1 then + begin + ClientDataSet1.First; + while not ClientDataSet1.Eof do + begin + if ClientDataSet1.fieldbyname('ssel').AsBoolean then + begin + cds3.Append; + cds3.FieldByName('DEFstr1').Value := trim(ClientDataSet1.fieldbyname('zdyName').AsString); + cds3.post; + end; + ClientDataSet1.Next; + end; + tv3.Controller.EditingController.ShowEdit(); + free; + end; + end; +end; + +procedure TfrmZdyAttInputCP_CB.ToolButton4Click(Sender: TObject); +begin + if CDS2.IsEmpty then + exit; + CDS2.Delete; + jscb(); +end; + +procedure TfrmZdyAttInputCP_CB.ToolButton6Click(Sender: TObject); +begin + if CDS3.IsEmpty then + exit; + CDS3.Delete; + jscb(); +end; + +procedure TfrmZdyAttInputCP_CB.V1Column3PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + with cds1 do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + tv1.Controller.EditingController.ShowEdit(); + jscb(); +end; + +procedure TfrmZdyAttInputCP_CB.cxGridDBColumn3PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with cds2 do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + tv2.Controller.EditingController.ShowEdit(); + jscb(); + +end; + +procedure TfrmZdyAttInputCP_CB.cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName); + with cds3 do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + tv3.Controller.EditingController.ShowEdit(); + jscb(); + +end; + +procedure TfrmZdyAttInputCP_CB.V1Column6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + frmZdyAttachGYS_help := TfrmZdyAttachGYS_help.create(self); + with frmZdyAttachGYS_help do + begin + if showmodal = 1 then + begin + CDS1.Edit; + cds1.FieldByName('defstr4').Value := trim(cds_hz.fieldbyname('zdyName').asstring); + CDS1.Post; + end; + free; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmZdyAttInputCP_CB.ToolButton7Click(Sender: TObject); +begin + + cds4.Append; + cds4.post; + tv4.Controller.EditingController.ShowEdit(); + +end; + +procedure TfrmZdyAttInputCP_CB.ToolButton8Click(Sender: TObject); +begin + if CDS4.IsEmpty then + exit; + CDS4.Delete; +end; + +procedure TfrmZdyAttInputCP_CB.V1Column2PropertiesEditValueChanged(Sender: TObject); +var + Fieldname: string; +begin + Fieldname := Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + with CDS1 do + begin + edit; + fieldbyname(Fieldname).Value := TcxTextEdit(Sender).EditingText; + FieldByName('DefFlt4').Value := StrToFloatDef((Fieldbyname('defstr2').AsString), 0) * StrToFloatDef((Fieldbyname('CBdj').AsString), 0) * (((Fieldbyname('Cbsh').AsFloat) + 100) / 100); + post; + end; + Tv1.Controller.EditingController.ShowEdit(); + jscb(); +end; + +procedure TfrmZdyAttInputCP_CB.V1Column4PropertiesEditValueChanged(Sender: TObject); +var + Fieldname: string; +begin + Fieldname := Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + with CDS1 do + begin + edit; + fieldbyname(Fieldname).Value := TcxTextEdit(Sender).EditingText; + FieldByName('DefFlt5').Value := StrToFloatDef((Fieldbyname('defstr3').AsString), 0) * StrToFloatDef((Fieldbyname('CBdj').AsString), 0) * (((Fieldbyname('Cbsh').AsFloat) + 100) / 100); + post; + end; + Tv1.Controller.EditingController.ShowEdit(); + jscb(); +end; + +procedure TfrmZdyAttInputCP_CB.TV1Column1PropertiesEditValueChanged(Sender: TObject); +var + Fieldname: string; +begin + Fieldname := Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + with CDS1 do + begin + edit; + fieldbyname(Fieldname).Value := TcxTextEdit(Sender).EditingText; + FieldByName('DefFlt4').Value := StrToFloatDef((Fieldbyname('defstr2').AsString), 0) * StrToFloatDef((Fieldbyname('CBdj').AsString), 0) * (((Fieldbyname('Cbsh').AsFloat) + 100) / 100); + FieldByName('DefFlt5').Value := StrToFloatDef((Fieldbyname('defstr3').AsString), 0) * StrToFloatDef((Fieldbyname('CBdj').AsString), 0) * (((Fieldbyname('Cbsh').AsFloat) + 100) / 100); + post; + end; + Tv1.Controller.EditingController.ShowEdit(); + jscb(); +end; + +procedure TfrmZdyAttInputCP_CB.TV1Column2PropertiesEditValueChanged(Sender: TObject); +var + Fieldname: string; +begin + Fieldname := Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + with CDS1 do + begin + edit; + fieldbyname(Fieldname).Value := TcxTextEdit(Sender).EditingText; + FieldByName('DefFlt4').Value := StrToFloatDef((Fieldbyname('defstr2').AsString), 0) * StrToFloatDef((Fieldbyname('CBdj').AsString), 0) * (((Fieldbyname('Cbsh').AsFloat) + 100) / 100); + FieldByName('DefFlt5').Value := StrToFloatDef((Fieldbyname('defstr3').AsString), 0) * StrToFloatDef((Fieldbyname('CBdj').AsString), 0) * (((Fieldbyname('Cbsh').AsFloat) + 100) / 100); + post; + end; + Tv1.Controller.EditingController.ShowEdit(); + jscb(); +end; + +procedure TfrmZdyAttInputCP_CB.ToolButton9Click(Sender: TObject); +begin + frmZdyAttachCPcbfz := TfrmZdyAttachCPcbfz.create(self); + with frmZdyAttachCPcbfz do + begin + fType := '10'; + if showmodal = 1 then + begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_CPCB where 1=1 '); + sql.Add(' and atid=''' + trim(CDS_HZ.fieldbyname('ATID').asstring) + ''' and cbtype=''CPCBMF'''); + Open; + end; + with ADOQuery1 do + begin + First; + while not eof do + begin + with cds1 do + begin + Append; + FieldByName('AtId').Value := ''; + FieldByName('cbId').Value := ''; + FieldByName('zdycode').Value := Trim(ADOQuery1.fieldbyname('zdycode').AsString); + FieldByName('zdyname').Value := Trim(ADOQuery1.fieldbyname('zdyname').AsString); + FieldByName('cbtype').Value := Trim(ADOQuery1.fieldbyname('cbtype').AsString); + FieldByName('defstr1').Value := Trim(ADOQuery1.fieldbyname('defstr1').AsString); + FieldByName('defstr2').Value := Trim(ADOQuery1.fieldbyname('defstr2').AsString); + FieldByName('defstr3').Value := Trim(ADOQuery1.fieldbyname('defstr3').AsString); + FieldByName('defstr4').Value := Trim(ADOQuery1.fieldbyname('defstr4').AsString); + FieldByName('DefFlt4').Value := Trim(ADOQuery1.fieldbyname('DefFlt4').AsString); + FieldByName('DefFlt5').Value := Trim(ADOQuery1.fieldbyname('DefFlt5').AsString); + FieldByName('DefFlt1').Value := Trim(ADOQuery1.fieldbyname('DefFlt1').AsString); + FieldByName('DefFlt2').Value := Trim(ADOQuery1.fieldbyname('DefFlt2').AsString); + FieldByName('CBdj').Value := StrToFloatDef(ADOQuery1.fieldbyname('CBdj').asstring, 0); + FieldByName('Cbsh').Value := StrToFloatDef(ADOQuery1.fieldbyname('Cbsh').asstring, 0); + FieldByName('CBColor').Value := Trim(ADOQuery1.fieldbyname('CBColor').AsString); + Post; + end; + + next; + end; + end; + jscb(); + end; + frmZdyAttachCPcbfz.free; + end; +end; + +function TfrmZdyAttInputCP_CB.savedataFZ(): Boolean; +var + i, j: Integer; +begin + result := false; + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_CPCB where 1=1 '); + sql.Add(' and atid=''' + Trim(p) + ''' and cbtype=''CPCBMF'''); +// ShowMessage(sql.text); + Open; + end; +// SCreateCDS20(ADOQuery1, cds1); +// SInitCDSData20(ADOQuery1, cds1); + + with cds1 do + begin + + for i := 0 to ADOQuery1.RecordCount - 1 do + begin + + Edit; + FieldByName('AtId').Value := ''; + FieldByName('cbId').Value := ''; + FieldByName('zdycode').Value := Trim(ADOQuery1.fieldbyname('zdycode').AsString); + FieldByName('zdyname').Value := Trim(ADOQuery1.fieldbyname('zdyname').AsString); + FieldByName('cbtype').Value := Trim(ADOQuery1.fieldbyname('cbtype').AsString); + FieldByName('defstr1').Value := Trim(ADOQuery1.fieldbyname('defstr1').AsString); + FieldByName('defstr2').Value := Trim(ADOQuery1.fieldbyname('defstr2').AsString); + FieldByName('defstr3').Value := Trim(ADOQuery1.fieldbyname('defstr3').AsString); + FieldByName('defstr4').Value := Trim(ADOQuery1.fieldbyname('defstr4').AsString); + FieldByName('DefFlt4').Value := Trim(ADOQuery1.fieldbyname('DefFlt4').AsString); + FieldByName('DefFlt5').Value := Trim(ADOQuery1.fieldbyname('DefFlt5').AsString); + FieldByName('DefFlt1').Value := Trim(ADOQuery1.fieldbyname('DefFlt1').AsString); + FieldByName('DefFlt2').Value := Trim(ADOQuery1.fieldbyname('DefFlt2').AsString); + FieldByName('CBdj').Value := Trim(ADOQuery1.fieldbyname('CBdj').AsString); + FieldByName('Cbsh').Value := Trim(ADOQuery1.fieldbyname('Cbsh').AsString); + Post; +// Next; + end; + end; + +// +// result := false; +// ADOQueryCmd.Connection.BeginTrans; +// try +// with ADOQueryCmd do +// begin +// Close; +// SQL.Clear; +// sql.Add('select * from KH_Zdy_CPCB where 1=2 '); +// Open; +// end; +// if fzmk = '1' then +// begin +// with cds1 do +// begin +// First; +// while not eof do +// begin +// ADOQueryCmd.Append; +// ADOQueryCmd.FieldByName('CBID').Value := trim(p) + 'MF' + inttostr(recno); +// ADOQueryCmd.FieldByName('ATID').Value := trim(P); +// ADOQueryCmd.FieldByName('zdyCode').Value := Trim(FZcode); // trim(zdyCode.Text); +// ADOQueryCmd.FieldByName('zdyName').Value := Trim(FZname); // trim(zdyName.Text); +// ADOQueryCmd.FieldByName('cbType').Value := 'CPCBMF'; +// ADOQueryCmd.FieldByName('defstr1').Value := trim(fieldbyname('defstr1').AsString); +// ADOQueryCmd.FieldByName('defstr2').Value := trim(fieldbyname('defstr2').AsString); +// ADOQueryCmd.FieldByName('defstr3').Value := trim(fieldbyname('defstr3').AsString); +// ADOQueryCmd.FieldByName('defstr4').Value := trim(fieldbyname('defstr4').AsString); +// ADOQueryCmd.FieldByName('DefFlt4').Value := fieldbyname('DefFlt4').AsFloat; +// ADOQueryCmd.FieldByName('DefFlt5').Value := fieldbyname('DefFlt5').AsFloat; +// ADOQueryCmd.fieldbyname('DefFlt1').Value := strtofloatdef(trim(DefFlt1.Text), 0); +// ADOQueryCmd.fieldbyname('DefFlt2').Value := strtofloatdef(trim(DefFlt2.Text), 0); +// ADOQueryCmd.fieldbyname('CBdj').Value := fieldbyname('CBdj').AsFloat; +// ADOQueryCmd.fieldbyname('Cbsh').Value := fieldbyname('cbsh').AsFloat; +// ADOQueryCmd.Post; +// next; +// end; +// end; +// end; +// +// ADOQueryCmd.Connection.CommitTrans; + result := true; +// except +// ADOQueryCmd.Connection.RollbackTrans; +// end; +end; + +procedure TfrmZdyAttInputCP_CB.ToolButton10Click(Sender: TObject); +begin + frmZdyAttachCPcbfz := TfrmZdyAttachCPcbfz.create(self); + with frmZdyAttachCPcbfz do + begin + fType := '10'; + if showmodal = 1 then + begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_CPCB where 1=1 '); + sql.Add(' and atid=''' + trim(CDS_HZ.fieldbyname('ATID').asstring) + ''' and cbtype=''CPCBGY'''); + Open; + end; + with ADOQuery1 do + begin + First; + while not eof do + begin + with cds2 do + begin + Append; + FieldByName('AtId').Value := ''; + FieldByName('cbId').Value := ''; + FieldByName('zdycode').Value := Trim(ADOQuery1.fieldbyname('zdycode').AsString); + FieldByName('zdyname').Value := Trim(ADOQuery1.fieldbyname('zdyname').AsString); + FieldByName('cbtype').Value := Trim(ADOQuery1.fieldbyname('cbtype').AsString); + FieldByName('defstr1').Value := Trim(ADOQuery1.fieldbyname('defstr1').AsString); + FieldByName('defstr2').Value := Trim(ADOQuery1.fieldbyname('defstr2').AsString); + FieldByName('defstr3').Value := Trim(ADOQuery1.fieldbyname('defstr3').AsString); + FieldByName('DefFlt4').Value := Trim(ADOQuery1.fieldbyname('DefFlt4').AsString); + FieldByName('DefFlt5').Value := Trim(ADOQuery1.fieldbyname('DefFlt5').AsString); + FieldByName('DefFlt1').Value := Trim(ADOQuery1.fieldbyname('DefFlt1').AsString); + FieldByName('DefFlt2').Value := Trim(ADOQuery1.fieldbyname('DefFlt2').AsString); + Post; + end; + + next; + end; + end; + jscb(); + end; + frmZdyAttachCPcbfz.free; + end; +end; + +procedure TfrmZdyAttInputCP_CB.ToolButton11Click(Sender: TObject); +begin + frmZdyAttachCPcbfz := TfrmZdyAttachCPcbfz.create(self); + with frmZdyAttachCPcbfz do + begin + fType := '10'; + if showmodal = 1 then + begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_CPCB where 1=1 '); + sql.Add(' and atid=''' + trim(CDS_HZ.fieldbyname('ATID').asstring) + ''' and cbtype=''CPCBFY'''); + Open; + end; + with ADOQuery1 do + begin + First; + while not eof do + begin + with cds3 do + begin + Append; + FieldByName('AtId').Value := ''; + FieldByName('cbId').Value := ''; + FieldByName('zdycode').Value := Trim(ADOQuery1.fieldbyname('zdycode').AsString); + FieldByName('zdyname').Value := Trim(ADOQuery1.fieldbyname('zdyname').AsString); + FieldByName('cbtype').Value := Trim(ADOQuery1.fieldbyname('cbtype').AsString); + FieldByName('defstr1').Value := Trim(ADOQuery1.fieldbyname('defstr1').AsString); + FieldByName('defstr2').Value := Trim(ADOQuery1.fieldbyname('defstr2').AsString); + FieldByName('defstr3').Value := Trim(ADOQuery1.fieldbyname('defstr3').AsString); + FieldByName('DefFlt4').Value := Trim(ADOQuery1.fieldbyname('DefFlt4').AsString); + FieldByName('DefFlt5').Value := Trim(ADOQuery1.fieldbyname('DefFlt5').AsString); + FieldByName('DefFlt1').Value := Trim(ADOQuery1.fieldbyname('DefFlt1').AsString); + FieldByName('DefFlt2').Value := Trim(ADOQuery1.fieldbyname('DefFlt2').AsString); + Post; + end; + + next; + end; + end; + jscb(); + end; + frmZdyAttachCPcbfz.free; + end; +end; + +procedure TfrmZdyAttInputCP_CB.ToolButton12Click(Sender: TObject); +begin + frmZdyAttachCPcbfz := TfrmZdyAttachCPcbfz.create(self); + with frmZdyAttachCPcbfz do + begin + fType := '10'; + if showmodal = 1 then + begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_CPCB where 1=1 '); + sql.Add(' and atid=''' + trim(CDS_HZ.fieldbyname('ATID').asstring) + ''' and cbtype=''CPCBXY'''); + Open; + end; + with ADOQuery1 do + begin + First; + while not eof do + begin + with cds4 do + begin + Append; + FieldByName('AtId').Value := ''; + FieldByName('cbId').Value := ''; + FieldByName('zdycode').Value := Trim(ADOQuery1.fieldbyname('zdycode').AsString); + FieldByName('zdyname').Value := Trim(ADOQuery1.fieldbyname('zdyname').AsString); + FieldByName('cbtype').Value := Trim(ADOQuery1.fieldbyname('cbtype').AsString); + FieldByName('defstr1').Value := Trim(ADOQuery1.fieldbyname('defstr1').AsString); + FieldByName('defstr2').Value := Trim(ADOQuery1.fieldbyname('defstr2').AsString); + FieldByName('defstr3').Value := Trim(ADOQuery1.fieldbyname('defstr3').AsString); + FieldByName('defstr4').Value := Trim(ADOQuery1.fieldbyname('defstr4').AsString); + FieldByName('DefFlt4').Value := Trim(ADOQuery1.fieldbyname('DefFlt4').AsString); + FieldByName('DefFlt5').Value := Trim(ADOQuery1.fieldbyname('DefFlt5').AsString); + FieldByName('DefFlt1').Value := Trim(ADOQuery1.fieldbyname('DefFlt1').AsString); + FieldByName('DefFlt2').Value := Trim(ADOQuery1.fieldbyname('DefFlt2').AsString); + FieldByName('CBzxjs').Value := Trim(ADOQuery1.fieldbyname('CBzxjs').AsString); + FieldByName('CBzdjs').Value := Trim(ADOQuery1.fieldbyname('CBzdjs').AsString); + FieldByName('CBfrf').Value := Trim(ADOQuery1.fieldbyname('CBfrf').AsString); + FieldByName('CBcjf').Value := Trim(ADOQuery1.fieldbyname('CBcjf').AsString); + Post; + end; + + next; + end; + end; + jscb(); + end; + frmZdyAttachCPcbfz.free; + end; +end; + +procedure TfrmZdyAttInputCP_CB.TV1Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + frmZdyYS_sel := TfrmZdyYS_sel.create(self); + with frmZdyYS_sel do + begin + if showmodal = 1 then + begin + + with CDS1 do + begin + Edit; + FieldByName('CBColor').value := frmZdyYS_sel.Edit1.Text; + Post; + end; + end; + free; + end; +end; + +procedure TfrmZdyAttInputCP_CB.CYColorBtnClick(Sender: TObject); +begin + + frmZdyYS_sel := TfrmZdyYS_sel.create(self); + with frmZdyYS_sel do + begin + if ShowModal = 1 then + begin + + CYColor.text := trim(CDS_HZ.fieldbyname('CodeName').AsString); +// Self.Order_Sub.FieldByName('SOrddefstr4').Value := Trim(ClientDataSet1.fieldbyname('Note').AsString); + end; +// if showmodal = 1 then +// begin +// CDS_HZ.First; +// while not CDS_HZ.Eof do +// begin +// if CDS_HZ.fieldbyname('ssel').AsBoolean then +// begin +//// Self.CDS_Sub.Edit; +//// Self.CDS_Sub.FieldByName('cyys').Value := trim(CDS_HZ.fieldbyname('CodeName').AsString); +// CDS_Sub.Append; +// CDS_Sub.FieldByName('cyys').Value := trim(CDS_HZ.fieldbyname('CodeName').AsString); +// CDS_Sub.post; +// end; +// CDS_HZ.Next; +// end; +// tv2.Controller.EditingController.ShowEdit(); +// free; +// end; + end; +end; + +procedure TfrmZdyAttInputCP_CB.ToolButton13Click(Sender: TObject); +begin + frmZdyCMZ_help := TfrmZdyCMZ_help.create(self); + with frmZdyCMZ_help do + begin +// flag := 'CPCBGY'; + if showmodal = 1 then + begin + CDSsub.First; + while not CDSsub.Eof do + begin + if CDSsub.fieldbyname('SizeSpec').AsString <> '' then + begin + cds5.Append; + cds5.FieldByName('DEFstr1').Value := trim(CDSsub.fieldbyname('SizeSpec').AsString); + cds5.post; + end; + CDSsub.Next; + end; + tv5.Controller.EditingController.ShowEdit(); + frmZdyCMZ_help.free; + end; + end; +end; + +procedure TfrmZdyAttInputCP_CB.ToolButton14Click(Sender: TObject); +begin + if CDS5.IsEmpty then + exit; + CDS5.Delete; + jscb(); +end; + +end. + diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttInputGYS.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyAttInputGYS.dfm new file mode 100644 index 0000000..afc46d9 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttInputGYS.dfm @@ -0,0 +1,226 @@ +object frmZdyAttInputGYS: TfrmZdyAttInputGYS + Left = 219 + Top = 254 + Width = 920 + Height = 370 + Caption = #20379#24212#21830#36164#26009#24405#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 904 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object ToolButton3: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 31 + Width = 904 + Height = 301 + Align = alClient + TabOrder = 1 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object v2Column6: TcxGridDBColumn + Caption = #20379#24212#21830#21517#31216 + DataBinding.FieldName = 'ZdyName' + HeaderAlignmentHorz = taCenter + Width = 124 + end + object v2Column2: TcxGridDBColumn + Caption = #32479#35745#21333#20301#21517#31216 + DataBinding.FieldName = 'ZDYNameTj' + HeaderAlignmentHorz = taCenter + Width = 160 + end + object v2Column8: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Width = 77 + end + object v2DEFStr6: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'DEFStr6' + HeaderAlignmentHorz = taCenter + Width = 62 + end + object v2DEFStr7: TcxGridDBColumn + Caption = #22320#21306 + DataBinding.FieldName = 'DEFStr7' + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v2Column3: TcxGridDBColumn + Caption = #30005#35805 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column4: TcxGridDBColumn + Caption = #25163#26426 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v2Column5: TcxGridDBColumn + Caption = #20256#30495 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2Column7: TcxGridDBColumn + Caption = #20844#21496#22320#22336 + DataBinding.FieldName = 'DEFNote1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v2Column9: TcxGridDBColumn + Caption = #32852#31995#20154 + DataBinding.FieldName = 'DEFstr4' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 114 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 528 + Top = 200 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttInputGYS.pas b/基础资料维护(BaseInfo.dll)/U_ZdyAttInputGYS.pas new file mode 100644 index 0000000..7bd063d --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttInputGYS.pas @@ -0,0 +1,251 @@ +unit U_ZdyAttInputGYS; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDropDownEdit; + +type + TfrmZdyAttInputGYS = class(TForm) + ToolBar1: TToolBar; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column6: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + v2DEFStr6: TcxGridDBColumn; + v2DEFStr7: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + function SaveData():Boolean; + + public + { Public declarations } + RKFlag,FCYID:String; + fDEFstr5:string; + end; + +var + frmZdyAttInputGYS: TfrmZdyAttInputGYS; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + + + +procedure TfrmZdyAttInputGYS.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where ATID='''+Trim(FCYID)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmZdyAttInputGYS.FormDestroy(Sender: TObject); +begin + frmZdyAttInputGYS:=nil; +end; + +procedure TfrmZdyAttInputGYS.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttInputGYS.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ӧ¼1',Tv2,'ͻԶ'); + Close; +end; +procedure TfrmZdyAttInputGYS.FormShow(Sender: TObject); +begin + ReadCxGrid('Ӧ¼1',Tv2,'ͻԶ'); + InitGrid(); + if Trim(FCYID)='' then + begin + CDS_HZ.Append; + IF trim(fDEFstr5)<>'' then + begin + CDS_HZ.FieldByName('DEFstr5').Value:=trim(fDEFstr5); + v2Column8.Options.Editing:=false; + end; + CDS_HZ.Post; + end; +end; + +procedure TfrmZdyAttInputGYS.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +function TfrmZdyAttInputGYS.SaveData():Boolean; +var + maxId,CRID,fzdyCode:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if Trim(FCYID)='' then + begin + if GetLSNo(ADOQueryCmd,maxId,'AT','KH_Zdy_Attachment',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + if GetLSNo(ADOQueryCmd,fzdyCode,'PB','KH_Zdy_Attachment',4,0)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxId:=Trim(FCYID); + end; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_Zdy_Attachment where ATID='''+Trim(FCYID)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(FCYID)='' then + begin + Append; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('zdyCode').Value:=Trim(fzdyCode); + end else + begin + Edit; + FieldByName('Editer').Value:=Trim(DName); + FieldByName('Edittime').Value:=SGetServerDateTime(ADOQueryTemp); + end; + FieldByName('ATID').Value:=Trim(maxId); + FieldByName('ZdyName').Value:=Trim(CDS_HZ.fieldbyname('ZdyName').AsString); + RTSetSaveDataCDS(ADOQueryCmd,Tv2,CDS_HZ,'',0); + FieldByName('Type').Value:='GYS'; + FieldByName('Filler').Value:=Trim(DName); + Post; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_Zdy where ZdyNo='''+Trim(FCYID)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(FCYID)='' then + begin + Append; + end else + begin + Edit; + end; + FieldByName('ZdyNo').Value:=Trim(maxId); + FieldByName('ZdyName').Value:=Trim(CDS_HZ.fieldbyname('ZdyName').AsString); + FieldByName('Type').Value:='GYS'; + FieldByName('MainType').Value:=Trim(CDS_HZ.fieldbyname('DEFstr5').AsString); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment where ZdyCode='''+Trim(CDS_HZ.fieldbyname('ZdyCode').AsString)+''''); + sql.Add(' and Type=''GYS'' '); + Open; + end; + if ADOQueryCmd.RecordCount>1 then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ظ!','ʾ',0); + Exit; + end; + with CDS_HZ do + begin + Edit; + FieldByName('ATID').Value:=Trim(maxId); + Post; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣!','ʾ',0); + end; +end; + +procedure TfrmZdyAttInputGYS.ToolButton3Click(Sender: TObject); +begin + cxGrid2.SetFocus; + if Trim(CDS_HZ.FieldByName('ZdyName').AsString)='' then + begin + Application.MessageBox('ӦƲΪ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪ','ʾ',32+4)<>IDYES then Exit; + + if SaveData() then + begin + Application.MessageBox('ɹ!','ʾ',0); + ModalResult:=1; + end; +end; + + +end. diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachCP.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyAttachCP.dfm new file mode 100644 index 0000000..8124e8b --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachCP.dfm @@ -0,0 +1,407 @@ +object frmZdyAttachCP: TfrmZdyAttachCP + Left = 111 + Top = 103 + Width = 1168 + Height = 599 + Caption = #20135#21697#36164#26009#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1152 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 113 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton5: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #25552#21462'Excel'#25968#25454 + ImageIndex = 106 + Visible = False + OnClick = ToolButton5Click + end + object ToolButton1: TToolButton + Left = 432 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 495 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1152 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 191 + Top = 13 + Width = 48 + Height = 12 + Caption = #20135#21697#21517#31216 + end + object Label1: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #20135#21697#32534#21495 + end + object Label2: TLabel + Left = 369 + Top = 13 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object ZdyName: TEdit + Tag = 2 + Left = 241 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 71 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object DEFstr5: TComboBox + Tag = 1 + Left = 398 + Top = 8 + Width = 81 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 2 + OnChange = ZdyNameChange + Items.Strings = ( + #22383#24067 + #25104#21697 + '') + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1152 + Height = 490 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object v2Column2: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 80 + end + object v2Column6: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 124 + end + object v2Column11: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 53 + end + object v2Column3: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 72 + end + object v2Column4: TcxGridDBColumn + Caption = #25104#20221 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 74 + end + object v2Column5: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 68 + end + object v2Mrate: TcxGridDBColumn + Caption = #35745#21010#32553#29575'(%)' + DataBinding.FieldName = 'Mrate' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 80 + end + object v2Column13: TcxGridDBColumn + Caption = #24037#33402 + DataBinding.FieldName = 'defNote2' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 100 + end + object v2Column8: TcxGridDBColumn + Caption = #33457#21495 + DataBinding.FieldName = 'DEFstr4' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 58 + end + object v2Column10: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'DEFstr6' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 61 + end + object v2Column9: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'DEFstr7' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 73 + end + object v2Column7: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'DEFstr8' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 61 + end + object v2Column12: TcxGridDBColumn + Caption = #20215#26684 + DataBinding.FieldName = 'defFlt2' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 114 + end + object v2Column14: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 60 + end + object v2Column15: TcxGridDBColumn + Caption = #25805#20316#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 80 + end + object v2defflt1: TcxGridDBColumn + Caption = #20215#26684#22686#24133 + DataBinding.FieldName = 'defflt1' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 60 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end + object OpenDialog1: TOpenDialog + Left = 936 + Top = 41 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachCP.pas b/基础资料维护(BaseInfo.dll)/U_ZdyAttachCP.pas new file mode 100644 index 0000000..9ec6ea8 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachCP.pas @@ -0,0 +1,391 @@ +unit U_ZdyAttachCP; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, ComObj, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, + cxNavigator; + +type + + FdDy=record + inc: integer; //ͻ׽־ + FDdys:string[32]; //ͻ׽ + FdDysName:string[32]; //ͻ׽ + end; + TfrmZdyAttachCP = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + ToolButton4: TToolButton; + Label2: TLabel; + DEFstr5: TComboBox; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column10: TcxGridDBColumn; + v2Column11: TcxGridDBColumn; + v2Column13: TcxGridDBColumn; + OpenDialog1: TOpenDialog; + ToolButton5: TToolButton; + v2Mrate: TcxGridDBColumn; + v2Column14: TcxGridDBColumn; + v2Column15: TcxGridDBColumn; + v2defflt1: TcxGridDBColumn; + v2Column12: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + + public + fkhType:string; + dFdDy: array[0..20] of FdDy; //ͻ + end; + +var + frmZdyAttachCP: TfrmZdyAttachCP; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp,U_ZdyAttInputCP; + +{$R *.dfm} + + + +procedure TfrmZdyAttachCP.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where Type=''CP'' '); + sql.Add(' and isnull(khType,'''')='+quotedstr(trim(fkhType))); + sql.Add(' order by zdyCode '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmZdyAttachCP.FormDestroy(Sender: TObject); +begin + frmZdyAttachCP:=nil; +end; + +procedure TfrmZdyAttachCP.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttachCP.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ʒ',Tv2,'ͻԶ'); + Close; +end; +procedure TfrmZdyAttachCP.TBDelClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + sql.Add('delete KH_Zdy where ZdyNo='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmZdyAttachCP.FormShow(Sender: TObject); +begin + ReadCxGrid('Ʒ',Tv2,'ͻԶ'); + InitGrid(); +end; + +procedure TfrmZdyAttachCP.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachCP.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmZdyAttachCP.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachCP.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid2); +// SelExportData(Tv2,ADOQueryMain,'Ʒб'); +end; + +procedure TfrmZdyAttachCP.ToolButton4Click(Sender: TObject); +begin + try + frmZdyAttInputCP:=TfrmZdyAttInputCP.Create(Application); + with frmZdyAttInputCP do + begin + FCYID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + fkhType:=self.fkhType; + if ShowModal=1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP.Free; + end; +end; + +procedure TfrmZdyAttachCP.ToolButton3Click(Sender: TObject); +begin + try + frmZdyAttInputCP:=TfrmZdyAttInputCP.Create(Application); + with frmZdyAttInputCP do + begin + FCYID:=''; + fkhType:=self.fkhType; + if ShowModal=1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP.Free; + end; +end; + +procedure TfrmZdyAttachCP.ToolButton5Click(Sender: TObject); +var + excelApp,WorkBook:Variant; + i,j,k,ExcelRowCount:integer; + maxId:string; +begin + + try + ExcelApp := CreateOleObject('Excel.Application'); + openDialog1.Filter:='*.CSV;*.xls'; + if opendialog1.Execute then + begin + WorkBook :=ExcelApp.WorkBooks.Open(OpenDialog1.FileName); + end + else + exit; + + ExcelApp.Visible := false; + ExcelRowCount := WorkBook.WorkSheets[1].UsedRange.Rows.Count; + except + application.MessageBox('EXCEL','Ϣ',MB_ICONERROR); + exit; + end; + + try + k:=0; + for i:=1 to 20 do + begin + if trim(excelapp.Cells[1,i].value)='' then break; + if trim(excelapp.Cells[1,i].value)='Ʒ' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='ZdyCode'; + dFdDy[k].FdDysName:='Ʒ'; + end; + + if trim(excelapp.Cells[1,i].value)='Ʒ' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='ZdyName'; + dFdDy[k].FdDysName:='Ʒ'; + end; + + if trim(excelapp.Cells[1,i].value)='' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='defNote1'; + dFdDy[k].FdDysName:=''; + end; + + if trim(excelapp.Cells[1,i].value)='ɫ' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='DEFstr3'; + dFdDy[k].FdDysName:=''; + end; + + if trim(excelapp.Cells[1,i].value)='' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='defNote2'; + dFdDy[k].FdDysName:=''; + end; + if trim(excelapp.Cells[1,i].value)='' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='DEFstr5'; + dFdDy[k].FdDysName:=''; + end; + if trim(excelapp.Cells[1,i].value)='' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='DEFstr1'; + dFdDy[k].FdDysName:=''; + end; + if trim(excelapp.Cells[1,i].value)='ɷ' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='DEFstr2'; + dFdDy[k].FdDysName:='ɷ'; + end; + k:=k+1; + end; + except + end; + + ADOQueryCmd.Connection.BeginTrans; + try + for i := 2 to excelrowcount do + begin + if GetLSNo(ADOQueryCmd,maxId,'AT','KH_Zdy_Attachment',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment where 1=2'); + open; + end; + ADOQueryCmd.Append; + for j:=0 to k-1 do + begin + ADOQueryCmd.fieldbyname(dFdDy[j].FDdys).Value:=excelapp.Cells[i,dFdDy[j].inc].Value; + end; + ADOQueryCmd.FieldByName('ATID').Value:=Trim(maxId); + ADOQueryCmd.FieldByName('Type').Value:='CP'; + ADOQueryCmd.FieldByName('Filler').Value:=Trim(DName); + ADOQueryCmd.Post; + + + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment where ATID='''+trim(maxId)+''' '); + open; + end; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_Zdy where ZdyNo='''+Trim(maxId)+''''); + Open; + end; + with ADOQueryCmd do + begin + if ADOQueryCmd.IsEmpty then + begin + Append; + end else + begin + Edit; + end; + FieldByName('ZdyNo').Value:=Trim(maxId); + FieldByName('ZdyName').Value:=Trim(ADOQueryTemp.fieldbyname('ZdyName').AsString); + FieldByName('Type').Value:='CP'; + FieldByName('MainType').Value:=Trim(ADOQueryTemp.fieldbyname('DEFstr5').AsString); + Post; + end; + end; + WorkBook.Close; + ExcelApp.Quit; + ExcelApp := Unassigned; + WorkBook := Unassigned; + ADOQueryCmd.Connection.CommitTrans; + InitGrid(); + except + WorkBook.Close; + ExcelApp.Quit; + ExcelApp := Unassigned; + WorkBook := Unassigned; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; + +end. + + diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachCP10.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyAttachCP10.dfm new file mode 100644 index 0000000..4f59298 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachCP10.dfm @@ -0,0 +1,706 @@ +object frmZdyAttachCP10: TfrmZdyAttachCP10 + Left = 548 + Top = 195 + Width = 1062 + Height = 529 + Caption = #20135#21697#36164#26009#31649#29702 + 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 = 1046 + Height = 62 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 113 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object TBADD: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = TBADDClick + end + object TBedit: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBeditClick + end + object ToolButton4: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #22797#21046 + ImageIndex = 57 + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton5: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #25552#21462'Excel'#25968#25454 + ImageIndex = 106 + OnClick = ToolButton5Click + end + object ToolButton6: TToolButton + Left = 495 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 57 + Wrap = True + OnClick = ToolButton6Click + end + object TBCB: TToolButton + Left = 0 + Top = 30 + AutoSize = True + Caption = #25104#26412 + ImageIndex = 53 + OnClick = TBCBClick + end + object ToolButton7: TToolButton + Left = 63 + Top = 30 + AutoSize = True + Caption = #25104#26412#22797#21046 + ImageIndex = 58 + OnClick = ToolButton7Click + end + object ToolButton3: TToolButton + Left = 150 + Top = 30 + AutoSize = True + Caption = #20135#21697#38468#20214 + ImageIndex = 57 + OnClick = ToolButton3Click + end + object ToolButton1: TToolButton + Left = 237 + Top = 30 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object ToolButton11: TToolButton + Left = 300 + Top = 30 + AutoSize = True + Caption = #20135#21697#23548#20837 + ImageIndex = 51 + OnClick = ToolButton11Click + end + object TBClose: TToolButton + Left = 387 + Top = 30 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + object ToolButton8: TToolButton + Left = 450 + Top = 30 + AutoSize = True + Caption = #23610#30721#32452 + ImageIndex = 49 + OnClick = ToolButton8Click + end + object ToolButton9: TToolButton + Left = 525 + Top = 30 + AutoSize = True + Caption = #39068#33394#31649#29702 + ImageIndex = 49 + OnClick = ToolButton9Click + end + end + object Panel1: TPanel + Left = 0 + Top = 62 + Width = 1046 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 231 + Top = 13 + Width = 48 + Height = 12 + Caption = #20135#21697#21517#31216 + end + object Label1: TLabel + Left = 34 + Top = 13 + Width = 48 + Height = 12 + Caption = #20135#21697#32534#21495 + end + object Label2: TLabel + Left = 421 + Top = 13 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object ZdyName: TEdit + Tag = 2 + Left = 281 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 83 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object DEFstr5: TComboBox + Tag = 1 + Left = 450 + Top = 8 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 2 + OnChange = ZdyNameChange + Items.Strings = ( + #33258#24049 + #23458#25143 + '') + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 101 + Width = 1046 + Height = 389 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Filter.AutoDataSetFilter = True + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object v2Column2: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 89 + end + object v2Column6: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 124 + end + object v2Column11: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column3: TcxGridDBColumn + Caption = #35268#26684'/'#23610#30721 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column4: TcxGridDBColumn + Caption = #25104#20998 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column13: TcxGridDBColumn + Caption = #23494#24230 + DataBinding.FieldName = 'defNote2' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column9: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'DEFstr7' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column7: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'DEFstr8' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column12: TcxGridDBColumn + Caption = #20379#24212#21830 + DataBinding.FieldName = 'defNote3' + HeaderAlignmentHorz = taCenter + Width = 95 + end + object v2Column5: TcxGridDBColumn + Caption = #25253#20215#31995#25968 + DataBinding.FieldName = 'defflt3' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column8: TcxGridDBColumn + Caption = #25104#20154#25104#26412 + DataBinding.FieldName = 'defflt1' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column10: TcxGridDBColumn + Caption = #20799#31461#25104#26412 + DataBinding.FieldName = 'defflt2' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 150 + end + object v2Column14: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 60 + end + object v2Column15: TcxGridDBColumn + Caption = #25805#20316#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 80 + end + object v2Column16: TcxGridDBColumn + Caption = #26368#20302#24211#23384#37327 + DataBinding.FieldName = 'DefFlt4' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv2Column1: TcxGridDBColumn + Caption = #19968#32423#20215#26684 + DataBinding.FieldName = 'fprice' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object Tv2Column2: TcxGridDBColumn + Caption = #20108#32423#25104#20154#20215#26684 + DataBinding.FieldName = 'sprice' + HeaderAlignmentHorz = taCenter + Width = 90 + end + object Tv2Column3: TcxGridDBColumn + Caption = #19977#32423#20215#26684 + DataBinding.FieldName = 'tprice' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object Tv2Column4: TcxGridDBColumn + Caption = #23610#30721 + DataBinding.FieldName = 'CYCM' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object Tv2Column5: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'CYcolor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object Tv2Column6: TcxGridDBColumn + Caption = #20108#32423#20799#31461#20215#26684 + DataBinding.FieldName = 'seprice' + HeaderAlignmentHorz = taCenter + Width = 90 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGrid3: TcxGrid + Left = 25 + Top = 202 + Width = 968 + Height = 155 + Align = alCustom + TabOrder = 3 + Visible = False + object TV3: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.Default + object TV3Column1: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'ZdyCode' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object TV3Column2: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'ZdyName' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object TV3Column11: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'CPLX' + end + object TV3Column12: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'CPGG' + end + object TV3Column13: TcxGridDBColumn + Caption = #23494#24230 + DataBinding.FieldName = 'CPMD' + end + object TV3Column14: TcxGridDBColumn + Caption = #25104#20998 + DataBinding.FieldName = 'CPCF' + Width = 43 + end + object TV3Column8: TcxGridDBColumn + Caption = #19968#32423#20215#26684 + DataBinding.FieldName = 'Fprice' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object TV3Column9: TcxGridDBColumn + Caption = #20108#32423#20215#26684 + DataBinding.FieldName = 'Sprice' + Width = 60 + end + object TV3Column10: TcxGridDBColumn + Caption = #19977#32423#20215#26684 + DataBinding.FieldName = 'Tprice' + Width = 60 + end + object TV3Column15: TcxGridDBColumn + Caption = #20108#32423#20799#31461#20215 + DataBinding.FieldName = 'seprice' + end + object TV3Column16: TcxGridDBColumn + Caption = #23450#21046#20215#26684 + DataBinding.FieldName = 'DZprice' + end + object TV3Column3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'CYColor' + HeaderAlignmentHorz = taCenter + Width = 46 + end + object TV3Column7: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 53 + end + object TV3Column4: TcxGridDBColumn + Caption = #20379#24212#21830 + DataBinding.FieldName = 'SGYS' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object TV3Column6: TcxGridDBColumn + Caption = #38754#36741#26009#21517#31216 + DataBinding.FieldName = 'SMFLMC' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object TV3Column17: TcxGridDBColumn + Caption = #25104#20154#29992#26009 + DataBinding.FieldName = 'SCRYL' + end + object TV3Column18: TcxGridDBColumn + Caption = #25104#20154#36153#29992 + DataBinding.FieldName = 'SCRFY' + end + object TV3Column32: TcxGridDBColumn + Caption = #20799#31461#36153#29992 + DataBinding.FieldName = 'SETFY' + end + object TV3Column19: TcxGridDBColumn + Caption = #20799#31461#29992#26009 + DataBinding.FieldName = 'SETYL' + end + object TV3Column20: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'CBDJ' + end + object TV3Column21: TcxGridDBColumn + Caption = #25439#32791 + DataBinding.FieldName = 'CBsh' + end + object TV3Column22: TcxGridDBColumn + Caption = #38754#36741#39068#33394 + DataBinding.FieldName = 'CBColor' + end + object TV3Column5: TcxGridDBColumn + Caption = #24037#24207#21517#31216 + DataBinding.FieldName = 'SGXMC' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object TV3Column23: TcxGridDBColumn + Caption = #24037#24207#36153#29992 + DataBinding.FieldName = 'SGYFY' + end + object TV3Column24: TcxGridDBColumn + Caption = #36153#29992#21517#31216 + DataBinding.FieldName = 'SFYMC' + end + object TV3Column31: TcxGridDBColumn + Caption = #20854#20182#36153#29992 + DataBinding.FieldName = 'SQTFY' + end + object TV3Column25: TcxGridDBColumn + Caption = #23610#30721 + DataBinding.FieldName = 'CBCM' + end + object TV3Column26: TcxGridDBColumn + Caption = #26465#24418#30721 + DataBinding.FieldName = 'CBTXM' + end + object TV3Column27: TcxGridDBColumn + Caption = #26368#22823#20214#25968 + DataBinding.FieldName = 'CBzdjs' + end + object TV3Column28: TcxGridDBColumn + Caption = #26368#23567#20214#25968 + DataBinding.FieldName = 'CBzxjs' + end + object TV3Column29: TcxGridDBColumn + Caption = #35009#21098#36153 + DataBinding.FieldName = 'CBcjf' + end + object TV3Column30: TcxGridDBColumn + Caption = #32541#32427#36153 + DataBinding.FieldName = 'CBfrf' + end + end + object cxGridLevel2: TcxGridLevel + GridView = TV3 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 809 + Top = 145 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 897 + Top = 145 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 911 + Top = 259 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 848 + Top = 268 + end + object OpenDialog1: TOpenDialog + Left = 936 + Top = 41 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 420 + Top = 240 + end + object DataSource2: TDataSource + DataSet = CDS_Sub + Left = 496 + Top = 240 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachCP10.pas b/基础资料维护(BaseInfo.dll)/U_ZdyAttachCP10.pas new file mode 100644 index 0000000..66b1127 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachCP10.pas @@ -0,0 +1,780 @@ +unit U_ZdyAttachCP10; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + ComObj, Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, + ADODB, cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, + cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, 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 + FdDy = record + inc: integer; //ͻ׽־ + FDdys: string[32]; //ͻ׽ + FdDysName: string[32]; //ͻ׽ + end; + + TfrmZdyAttachCP10 = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + TBADD: TToolButton; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + TBedit: TToolButton; + Label2: TLabel; + DEFstr5: TComboBox; + v2Column7: TcxGridDBColumn; + v2Column11: TcxGridDBColumn; + v2Column13: TcxGridDBColumn; + OpenDialog1: TOpenDialog; + ToolButton5: TToolButton; + v2Column14: TcxGridDBColumn; + v2Column15: TcxGridDBColumn; + ToolButton6: TToolButton; + TBCB: TToolButton; + v2Column5: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column10: TcxGridDBColumn; + v2Column12: TcxGridDBColumn; + ToolButton3: TToolButton; + v2Column16: TcxGridDBColumn; + ToolButton4: TToolButton; + ToolButton7: TToolButton; + Tv2Column1: TcxGridDBColumn; + Tv2Column2: TcxGridDBColumn; + Tv2Column3: TcxGridDBColumn; + ToolButton8: TToolButton; + ToolButton9: TToolButton; + Tv2Column4: TcxGridDBColumn; + Tv2Column5: TcxGridDBColumn; + Tv2Column6: TcxGridDBColumn; + cxGrid3: TcxGrid; + TV3: TcxGridDBTableView; + TV3Column1: TcxGridDBColumn; + TV3Column2: TcxGridDBColumn; + TV3Column3: TcxGridDBColumn; + TV3Column4: TcxGridDBColumn; + TV3Column5: TcxGridDBColumn; + TV3Column6: TcxGridDBColumn; + TV3Column7: TcxGridDBColumn; + TV3Column8: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + CDS_Sub: TClientDataSet; + DataSource2: TDataSource; + ToolButton11: TToolButton; + TV3Column9: TcxGridDBColumn; + TV3Column10: TcxGridDBColumn; + TV3Column11: TcxGridDBColumn; + TV3Column12: TcxGridDBColumn; + TV3Column13: TcxGridDBColumn; + TV3Column14: TcxGridDBColumn; + TV3Column15: TcxGridDBColumn; + TV3Column16: TcxGridDBColumn; + TV3Column17: TcxGridDBColumn; + TV3Column18: TcxGridDBColumn; + TV3Column19: TcxGridDBColumn; + TV3Column20: TcxGridDBColumn; + TV3Column21: TcxGridDBColumn; + TV3Column22: TcxGridDBColumn; + TV3Column23: TcxGridDBColumn; + TV3Column24: TcxGridDBColumn; + TV3Column25: TcxGridDBColumn; + TV3Column26: TcxGridDBColumn; + TV3Column27: TcxGridDBColumn; + TV3Column28: TcxGridDBColumn; + TV3Column29: TcxGridDBColumn; + TV3Column30: TcxGridDBColumn; + TV3Column31: TcxGridDBColumn; + TV3Column32: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure TBeditClick(Sender: TObject); + procedure TBADDClick(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure ToolButton6Click(Sender: TObject); + procedure TBCBClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton7Click(Sender: TObject); + procedure ToolButton8Click(Sender: TObject); + procedure ToolButton9Click(Sender: TObject); + procedure ToolButton10Click(Sender: TObject); + procedure ToolButton11Click(Sender: TObject); + private + canshu1: string; + { Private declarations } + procedure InitGrid(); + public + dFdDy: array[0..120] of FdDy; //ͻ + end; + +var + frmZdyAttachCP10: TfrmZdyAttachCP10; + +implementation + +uses + U_DataLink, U_Fun, U_ZDYHelp, U_ZdyAttInputCP, U_ZdyAttInputCP10, + U_ZdyAttInputCP_CB, U_FjList_RZ, U_ZdyCMZ_help, U_ZdyYS_help, + U_ReceivableImport; + +{$R *.dfm} + +procedure TfrmZdyAttachCP10.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment A where A.Type=''CP'' '); //left JOIN KH_YS B on A.atid=B.atid +// ShowMessage(sql.text); + Open; + end; + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmZdyAttachCP10.FormDestroy(Sender: TObject); +begin + frmZdyAttachCP10 := nil; +end; + +procedure TfrmZdyAttachCP10.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmZdyAttachCP10.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption, Tv2, 'ͻԶ'); + Close; +end; + +procedure TfrmZdyAttachCP10.TBDelClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString) <> '' then + begin + with ADOQueryTemp do + begin + Filtered := False; + Close; + SQL.Clear; + sql.Add(' select * from KH_YS where ATID=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + ''' '); + Open; + end; + if ADOQueryTemp.RecordCount > 1 then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_YS where ATID=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + ''' and ysid=''' + Trim(CDS_HZ.fieldbyname('YSID').AsString) + ''''); +// sql.Add('delete KH_Zdy where ZdyNo=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + ''''); + ExecSQL; + end; + end; + if (ADOQueryTemp.RecordCount = 1) or (ADOQueryTemp.RecordCount = 0) then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + ''''); + sql.Add('delete KH_Zdy where ZdyNo=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + ''''); + ExecSQL; + end; + end; + + end; + CDS_HZ.Delete; +end; + +procedure TfrmZdyAttachCP10.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption, Tv2, 'ͻԶ'); + if trim(canshu1) = 'Ȩ' then + begin + TBCB.Visible := false; + ToolButton7.Visible := true; + TBADD.Visible := true; + TBedit.Visible := true; + Tbdel.Visible := true; + end + else if trim(canshu1) = 'ɱ' then + begin + TBCB.Visible := true; + ToolButton7.Visible := true; + TBADD.Visible := false; + TBedit.Visible := false; + Tbdel.Visible := false; + end + else + begin + TBCB.Visible := false; + ToolButton7.Visible := false; + TBADD.Visible := true; + TBedit.Visible := false; + Tbdel.Visible := false; + end; + InitGrid(); +end; + +procedure TfrmZdyAttachCP10.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachCP10.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + end; +end; + +procedure TfrmZdyAttachCP10.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmZdyAttachCP10.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then + Exit; + TcxGridToExcel(self.Caption, cxgrid2); +// SelExportData(Tv2,ADOQueryMain,'Ʒб'); +end; + +procedure TfrmZdyAttachCP10.TBeditClick(Sender: TObject); +begin + try + frmZdyAttInputCP10 := TfrmZdyAttInputCP10.Create(Application); + with frmZdyAttInputCP10 do + begin + PState := 1; + FATID := Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + + if ShowModal = 1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP10.Free; + end; +end; + +procedure TfrmZdyAttachCP10.TBADDClick(Sender: TObject); +begin + try + frmZdyAttInputCP10 := TfrmZdyAttInputCP10.Create(Application); + with frmZdyAttInputCP10 do + begin + PState := 0; + FATID := ''; + if ShowModal = 1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP10.Free; + end; +end; + +procedure TfrmZdyAttachCP10.ToolButton5Click(Sender: TObject); +var + excelApp, WorkBook: Variant; + i, j, k, ExcelRowCount: integer; + maxId: string; +begin + + try + excelApp := CreateOleObject('Excel.Application'); + openDialog1.Filter := '*.CSV;*.xls'; + if opendialog1.Execute then + begin + WorkBook := excelApp.WorkBooks.Open(OpenDialog1.FileName); + end + else + exit; + + excelApp.Visible := false; + ExcelRowCount := WorkBook.WorkSheets[1].UsedRange.Rows.Count; + except + application.MessageBox('EXCEL', 'Ϣ', MB_ICONERROR); + exit; + end; + + try + k := 0; + for i := 1 to 20 do + begin + if trim(excelApp.Cells[1, i].value) = '' then + break; + if trim(excelApp.Cells[1, i].value) = 'Ʒ' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'ZdyCode'; + dFdDy[k].FdDysName := 'Ʒ'; + end; + + if trim(excelApp.Cells[1, i].value) = 'Ʒ' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'ZdyName'; + dFdDy[k].FdDysName := 'Ʒ'; + end; + + if trim(excelApp.Cells[1, i].value) = '' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'defNote1'; + dFdDy[k].FdDysName := ''; + end; + + if trim(excelApp.Cells[1, i].value) = 'ɫ' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'DEFstr3'; + dFdDy[k].FdDysName := ''; + end; + + if trim(excelApp.Cells[1, i].value) = '' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'defNote2'; + dFdDy[k].FdDysName := ''; + end; + if trim(excelApp.Cells[1, i].value) = '' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'DEFstr5'; + dFdDy[k].FdDysName := ''; + end; + if trim(excelApp.Cells[1, i].value) = '' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'DEFstr1'; + dFdDy[k].FdDysName := ''; + end; + if trim(excelApp.Cells[1, i].value) = 'ɷ' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'DEFstr2'; + dFdDy[k].FdDysName := 'ɷ'; + end; + k := k + 1; + end; + except + end; + + ADOQueryCmd.Connection.BeginTrans; + try + for i := 2 to ExcelRowCount do + begin + if GetLSNo(ADOQueryCmd, maxId, 'AT', 'KH_Zdy_Attachment', 4, 1) = False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment where 1=2'); + open; + end; + ADOQueryCmd.Append; + for j := 0 to k - 1 do + begin + ADOQueryCmd.fieldbyname(dFdDy[j].FDdys).Value := excelApp.Cells[i, dFdDy[j].inc].Value; + end; + ADOQueryCmd.FieldByName('ATID').Value := Trim(maxId); + ADOQueryCmd.FieldByName('Type').Value := 'CP'; + ADOQueryCmd.FieldByName('Filler').Value := Trim(DName); + ADOQueryCmd.Post; + + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment where ATID=''' + trim(maxId) + ''' '); + open; + end; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_Zdy where ZdyNo=''' + Trim(maxId) + ''''); + Open; + end; + with ADOQueryCmd do + begin + if ADOQueryCmd.IsEmpty then + begin + Append; + end + else + begin + Edit; + end; + FieldByName('ZdyNo').Value := Trim(maxId); + FieldByName('ZdyName').Value := Trim(ADOQueryTemp.fieldbyname('ZdyName').AsString); + FieldByName('Type').Value := 'CP'; + FieldByName('MainType').Value := Trim(ADOQueryTemp.fieldbyname('DEFstr5').AsString); + Post; + end; + end; + WorkBook.Close; + excelApp.Quit; + excelApp := Unassigned; + WorkBook := Unassigned; + ADOQueryCmd.Connection.CommitTrans; + InitGrid(); + except + WorkBook.Close; + excelApp.Quit; + excelApp := Unassigned; + WorkBook := Unassigned; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; + +procedure TfrmZdyAttachCP10.ToolButton6Click(Sender: TObject); +begin + try + frmZdyAttInputCP10 := TfrmZdyAttInputCP10.Create(Application); + with frmZdyAttInputCP10 do + begin + FATID := Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + Tsave.Visible := false; + PState := 1; + if ShowModal = 1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP10.Free; + end; +end; + +procedure TfrmZdyAttachCP10.TBCBClick(Sender: TObject); +begin + if cds_hz.IsEmpty then + exit; + try + frmZdyAttInputCP_CB := TfrmZdyAttInputCP_CB.Create(Application); + with frmZdyAttInputCP_CB do + begin + PState := 0; + FATID := Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + // Tsave.Visible:=false; + if ShowModal = 1 then + begin + // TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP_CB.Free; + end; +end; + +procedure TfrmZdyAttachCP10.FormCreate(Sender: TObject); +begin + canshu1 := trim(DParameters1); +end; + +procedure TfrmZdyAttachCP10.ToolButton3Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + try + frmFjList_RZ := TfrmFjList_RZ.Create(Application); + with frmFjList_RZ do + begin + // if Trim(DParameters1)<>'Ȩ' then cxButton1.Visible:=false; + fkeyNO := Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + fType := 'Ʒ'; + if ShowModal = 1 then + begin + + end; + end; + finally + frmFjList_RZ.Free; + end; +end; + +procedure TfrmZdyAttachCP10.ToolButton4Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + try + frmZdyAttInputCP10 := TfrmZdyAttInputCP10.Create(Application); + with frmZdyAttInputCP10 do + begin + PState := 1; + CopyInt := 99; + FATID := Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + if ShowModal = 1 then + begin + + end; + end; + finally + frmZdyAttInputCP10.Free; + end; +end; + +procedure TfrmZdyAttachCP10.ToolButton7Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + try + frmZdyAttInputCP_CB := TfrmZdyAttInputCP_CB.Create(Application); + with frmZdyAttInputCP_CB do + begin + PState := 1; + CopyInt := 99; + FATID := Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + if ShowModal = 1 then + begin + + end; + end; + finally + frmZdyAttInputCP_CB.Free; + end; +end; + +procedure TfrmZdyAttachCP10.ToolButton8Click(Sender: TObject); +begin + frmZdyCMZ_help := TfrmZdyCMZ_help.create(self); + with frmZdyCMZ_help do + begin + if showmodal = 1 then + begin + + end; + free; + end; +end; + +procedure TfrmZdyAttachCP10.ToolButton9Click(Sender: TObject); +begin + frmZdyYS_help := TfrmZdyYS_help.create(self); + with frmZdyYS_help do + begin + if showmodal = 1 then + begin + + end; + free; + end; +end; + +procedure TfrmZdyAttachCP10.ToolButton10Click(Sender: TObject); +begin + frmReceivableImport := TfrmReceivableImport.Create(self); + with frmReceivableImport do + begin + if showmodal = 1 then + begin + + end; + free; + end; +end; + +procedure TfrmZdyAttachCP10.ToolButton11Click(Sender: TObject); +var + excelApp, WorkBook: Variant; + i, j, k, ExcelRowCount: integer; + maxId, M1, M2, M3: string; + FMessage: string; +begin + try + excelApp := CreateOleObject('Excel.Application'); + openDialog1.Filter := '*.CSV;*.xls'; + if opendialog1.Execute then + begin + WorkBook := excelApp.WorkBooks.Open(OpenDialog1.FileName); + end + else + exit; + excelApp.Visible := false; + ExcelRowCount := WorkBook.WorkSheets[1].UsedRange.Rows.Count; + except + application.MessageBox('EXCEL', 'Ϣ', MB_ICONERROR); + exit; + end; + try + k := 0; + for i := 1 to 100 do + begin + //󶨽ʾֶκ + for j := 0 to Tv3.ColumnCount - 1 do + begin + if trim(Tv3.Columns[j].Caption) = 'ܳƷ' then + continue; + if trim(Tv3.Columns[j].Caption) = 'Ʒ' then + continue; + if trim(Tv3.Columns[j].Caption) = 'ѡ' then + continue; + if trim(Tv3.Columns[j].Caption) = '¼' then + continue; + if trim(Tv3.Columns[j].Caption) = '¼ʱ' then + continue; + if trim(Tv3.Columns[j].Caption) = '޸' then + continue; + if trim(Tv3.Columns[j].Caption) = '޸ʱ' then + continue; + if trim(excelApp.Cells[1, i].value) = trim(Tv3.Columns[j].Caption) then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := trim(Tv3.Columns[j].DataBinding.FieldName); + dFdDy[k].FdDysName := trim(Tv3.Columns[j].Caption); + end; + + end; + k := k + 1; + end; + except + end; + + k := Tv3.ColumnCount; + +// ShowMessage(IntToStr(k)); + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete KH_Zdy_CPCB_DR '); + execsql; + end; +// ShowMessage(IntToStr(k)); + ADOQueryCmd.Connection.BeginTrans; + try + for i := 2 to ExcelRowCount do + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_CPCB_DR where 1=2'); + open; + end; + ADOQueryCmd.Append; + + for j := 0 to k - 1 do + begin + if trim(dFdDy[j].FDdys) = '' then + continue; + M1 := dFdDy[j].FDdys; //ֶ + M2 := inttostr(dFdDy[j].inc); //ǰ + M3 := excelApp.Cells[i, dFdDy[j].inc].Value; //ǰԪ + ADOQueryCmd.fieldbyname(dFdDy[j].FDdys).Value := excelApp.Cells[i, dFdDy[j].inc].Value; + end; + + ADOQueryCmd.Post; + + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('exec P_Get_CP_CPDR ''' + trim(DName) + ''' '); + ExecSQL; + end; + + WorkBook.Close; + excelApp.Quit; + excelApp := Unassigned; + WorkBook := Unassigned; + finalize(dFdDy); + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ!', 'ʾ', 0); +// InitGrid(); + except + WorkBook.Close; + excelApp.Quit; + excelApp := Unassigned; + WorkBook := Unassigned; + ADOQueryCmd.Connection.RollbackTrans; + end; + +end; + +end. + diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachCP10_help.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyAttachCP10_help.dfm new file mode 100644 index 0000000..3c71bd7 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachCP10_help.dfm @@ -0,0 +1,338 @@ +object frmZdyAttachCP10_help: TfrmZdyAttachCP10_help + Left = 221 + Top = 149 + Width = 1062 + Height = 529 + Caption = #20135#21697#36164#26009#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1046 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton6: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 57 + OnClick = ToolButton6Click + end + object ToolButton1: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1046 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 231 + Top = 13 + Width = 48 + Height = 12 + Caption = #20135#21697#21517#31216 + end + object Label1: TLabel + Left = 34 + Top = 13 + Width = 48 + Height = 12 + Caption = #20135#21697#32534#21495 + end + object Label2: TLabel + Left = 421 + Top = 13 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object ZdyName: TEdit + Tag = 2 + Left = 281 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 83 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object DEFstr5: TComboBox + Tag = 1 + Left = 450 + Top = 8 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 2 + OnChange = ZdyNameChange + Items.Strings = ( + #33258#24049 + #23458#25143 + '') + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1046 + Height = 420 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object v2Column2: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 89 + end + object v2Column6: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 124 + end + object v2Column11: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column3: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column4: TcxGridDBColumn + Caption = #25104#20998 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column13: TcxGridDBColumn + Caption = #23494#24230 + DataBinding.FieldName = 'defNote2' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column9: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'DEFstr7' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column7: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'DEFstr8' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 80 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 150 + end + object v2Column14: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 60 + end + object v2Column15: TcxGridDBColumn + Caption = #25805#20316#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 80 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end + object OpenDialog1: TOpenDialog + Left = 936 + Top = 41 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachCP10_help.pas b/基础资料维护(BaseInfo.dll)/U_ZdyAttachCP10_help.pas new file mode 100644 index 0000000..b51acf1 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachCP10_help.pas @@ -0,0 +1,429 @@ +unit U_ZdyAttachCP10_help; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, ComObj, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, + cxNavigator; + +type + + FdDy=record + inc: integer; //ͻ׽־ + FDdys:string[32]; //ͻ׽ + FdDysName:string[32]; //ͻ׽ + end; + TfrmZdyAttachCP10_help = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + Label2: TLabel; + DEFstr5: TComboBox; + v2Column7: TcxGridDBColumn; + v2Column11: TcxGridDBColumn; + v2Column13: TcxGridDBColumn; + OpenDialog1: TOpenDialog; + v2Column14: TcxGridDBColumn; + v2Column15: TcxGridDBColumn; + ToolButton6: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure ToolButton6Click(Sender: TObject); + procedure ToolButton7Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + { Private declarations } + procedure InitGrid(); + + public + dFdDy: array[0..20] of FdDy; //ͻ + end; + +var + frmZdyAttachCP10_help: TfrmZdyAttachCP10_help; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp,U_ZdyAttInputCP, U_ZdyAttInputCP10, + U_ZdyAttInputCP_CB; + +{$R *.dfm} + + + +procedure TfrmZdyAttachCP10_help.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where Type=''CP'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmZdyAttachCP10_help.FormDestroy(Sender: TObject); +begin + frmZdyAttachCP10_help:=nil; +end; + +procedure TfrmZdyAttachCP10_help.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttachCP10_help.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ʒ',Tv2,'ͻԶ'); + Close; +end; +procedure TfrmZdyAttachCP10_help.TBDelClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + sql.Add('delete KH_Zdy where ZdyNo='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmZdyAttachCP10_help.FormShow(Sender: TObject); +begin + ReadCxGrid('Ʒ',Tv2,'ͻԶ'); + InitGrid(); +end; + +procedure TfrmZdyAttachCP10_help.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachCP10_help.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmZdyAttachCP10_help.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachCP10_help.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid2); +// SelExportData(Tv2,ADOQueryMain,'Ʒб'); +end; + +procedure TfrmZdyAttachCP10_help.ToolButton4Click(Sender: TObject); +begin + try + frmZdyAttInputCP10:=TfrmZdyAttInputCP10.Create(Application); + with frmZdyAttInputCP10 do + begin + FATID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + if ShowModal=1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP10.Free; + end; +end; + +procedure TfrmZdyAttachCP10_help.ToolButton3Click(Sender: TObject); +begin + try + frmZdyAttInputCP10:=TfrmZdyAttInputCP10.Create(Application); + with frmZdyAttInputCP10 do + begin + FATID:=''; + if ShowModal=1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP10.Free; + end; +end; + +procedure TfrmZdyAttachCP10_help.ToolButton5Click(Sender: TObject); +var + excelApp,WorkBook:Variant; + i,j,k,ExcelRowCount:integer; + maxId:string; +begin + + try + ExcelApp := CreateOleObject('Excel.Application'); + openDialog1.Filter:='*.CSV;*.xls'; + if opendialog1.Execute then + begin + WorkBook :=ExcelApp.WorkBooks.Open(OpenDialog1.FileName); + end + else + exit; + + ExcelApp.Visible := false; + ExcelRowCount := WorkBook.WorkSheets[1].UsedRange.Rows.Count; + except + application.MessageBox('EXCEL','Ϣ',MB_ICONERROR); + exit; + end; + + try + k:=0; + for i:=1 to 20 do + begin + if trim(excelapp.Cells[1,i].value)='' then break; + if trim(excelapp.Cells[1,i].value)='Ʒ' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='ZdyCode'; + dFdDy[k].FdDysName:='Ʒ'; + end; + + if trim(excelapp.Cells[1,i].value)='Ʒ' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='ZdyName'; + dFdDy[k].FdDysName:='Ʒ'; + end; + + if trim(excelapp.Cells[1,i].value)='' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='defNote1'; + dFdDy[k].FdDysName:=''; + end; + + if trim(excelapp.Cells[1,i].value)='ɫ' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='DEFstr3'; + dFdDy[k].FdDysName:=''; + end; + + if trim(excelapp.Cells[1,i].value)='' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='defNote2'; + dFdDy[k].FdDysName:=''; + end; + if trim(excelapp.Cells[1,i].value)='' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='DEFstr5'; + dFdDy[k].FdDysName:=''; + end; + if trim(excelapp.Cells[1,i].value)='' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='DEFstr1'; + dFdDy[k].FdDysName:=''; + end; + if trim(excelapp.Cells[1,i].value)='ɷ' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='DEFstr2'; + dFdDy[k].FdDysName:='ɷ'; + end; + k:=k+1; + end; + except + end; + + ADOQueryCmd.Connection.BeginTrans; + try + for i := 2 to excelrowcount do + begin + if GetLSNo(ADOQueryCmd,maxId,'AT','KH_Zdy_Attachment',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment where 1=2'); + open; + end; + ADOQueryCmd.Append; + for j:=0 to k-1 do + begin + ADOQueryCmd.fieldbyname(dFdDy[j].FDdys).Value:=excelapp.Cells[i,dFdDy[j].inc].Value; + end; + ADOQueryCmd.FieldByName('ATID').Value:=Trim(maxId); + ADOQueryCmd.FieldByName('Type').Value:='CP'; + ADOQueryCmd.FieldByName('Filler').Value:=Trim(DName); + ADOQueryCmd.Post; + + + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment where ATID='''+trim(maxId)+''' '); + open; + end; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_Zdy where ZdyNo='''+Trim(maxId)+''''); + Open; + end; + with ADOQueryCmd do + begin + if ADOQueryCmd.IsEmpty then + begin + Append; + end else + begin + Edit; + end; + FieldByName('ZdyNo').Value:=Trim(maxId); + FieldByName('ZdyName').Value:=Trim(ADOQueryTemp.fieldbyname('ZdyName').AsString); + FieldByName('Type').Value:='CP'; + FieldByName('MainType').Value:=Trim(ADOQueryTemp.fieldbyname('DEFstr5').AsString); + Post; + end; + end; + WorkBook.Close; + ExcelApp.Quit; + ExcelApp := Unassigned; + WorkBook := Unassigned; + ADOQueryCmd.Connection.CommitTrans; + InitGrid(); + except + WorkBook.Close; + ExcelApp.Quit; + ExcelApp := Unassigned; + WorkBook := Unassigned; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; + +procedure TfrmZdyAttachCP10_help.ToolButton6Click(Sender: TObject); +begin + try + frmZdyAttInputCP10:=TfrmZdyAttInputCP10.Create(Application); + with frmZdyAttInputCP10 do + begin + FATID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + Tsave.Visible:=false; + if ShowModal=1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP10.Free; + end; +end; + +procedure TfrmZdyAttachCP10_help.ToolButton7Click(Sender: TObject); +begin + if cds_hz.IsEmpty then exit; + try + frmZdyAttInputCP_CB:=TfrmZdyAttInputCP_CB.Create(Application); + with frmZdyAttInputCP_CB do + begin + FATID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + // Tsave.Visible:=false; + if ShowModal=1 then + begin + // TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP_CB.Free; + end; +end; + +procedure TfrmZdyAttachCP10_help.Tv2CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + IF cds_hz.IsEmpty then exit; + self.ModalResult:=1; +end; + +end. + + diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachCPcbfz.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyAttachCPcbfz.dfm new file mode 100644 index 0000000..a0441cc --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachCPcbfz.dfm @@ -0,0 +1,388 @@ +object frmZdyAttachCPcbfz: TfrmZdyAttachCPcbfz + Left = 603 + Top = 217 + Width = 1062 + Height = 529 + Caption = #20135#21697#36164#26009#31649#29702 + 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 = 1046 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton10: TToolButton + Left = 126 + Top = 0 + Caption = #36873#25321 + ImageIndex = 16 + OnClick = ToolButton10Click + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1046 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 231 + Top = 13 + Width = 48 + Height = 12 + Caption = #20135#21697#21517#31216 + end + object Label1: TLabel + Left = 34 + Top = 13 + Width = 48 + Height = 12 + Caption = #20135#21697#32534#21495 + end + object Label2: TLabel + Left = 421 + Top = 13 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object ZdyName: TEdit + Tag = 2 + Left = 281 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 83 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object DEFstr5: TComboBox + Tag = 1 + Left = 450 + Top = 8 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 2 + OnChange = ZdyNameChange + Items.Strings = ( + #33258#24049 + #23458#25143 + '') + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 71 + Width = 1046 + Height = 419 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Filter.AutoDataSetFilter = True + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object v2Column2: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 89 + end + object v2Column6: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 124 + end + object v2Column11: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column3: TcxGridDBColumn + Caption = #35268#26684'/'#23610#30721 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column4: TcxGridDBColumn + Caption = #25104#20998 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column13: TcxGridDBColumn + Caption = #23494#24230 + DataBinding.FieldName = 'defNote2' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column9: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'DEFstr7' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column7: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'DEFstr8' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column12: TcxGridDBColumn + Caption = #20379#24212#21830 + DataBinding.FieldName = 'defNote3' + HeaderAlignmentHorz = taCenter + Width = 95 + end + object v2Column5: TcxGridDBColumn + Caption = #25253#20215#31995#25968 + DataBinding.FieldName = 'defflt3' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column8: TcxGridDBColumn + Caption = #25104#20154#25104#26412 + DataBinding.FieldName = 'defflt1' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column10: TcxGridDBColumn + Caption = #20799#31461#25104#26412 + DataBinding.FieldName = 'defflt2' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 150 + end + object v2Column14: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 60 + end + object v2Column15: TcxGridDBColumn + Caption = #25805#20316#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 80 + end + object v2Column16: TcxGridDBColumn + Caption = #26368#20302#24211#23384#37327 + DataBinding.FieldName = 'DefFlt4' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv2Column1: TcxGridDBColumn + Caption = #19968#32423#20215#26684 + DataBinding.FieldName = 'fprice' + HeaderAlignmentHorz = taCenter + end + object Tv2Column2: TcxGridDBColumn + Caption = #20108#32423#20215#26684 + DataBinding.FieldName = 'sprice' + HeaderAlignmentHorz = taCenter + end + object Tv2Column3: TcxGridDBColumn + Caption = #19977#32423#20215#26684 + DataBinding.FieldName = 'tprice' + HeaderAlignmentHorz = taCenter + end + object Tv2Column4: TcxGridDBColumn + Caption = #23610#30721 + DataBinding.FieldName = 'CYCM' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object Tv2Column5: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'CYColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 809 + Top = 145 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 897 + Top = 145 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 685 + Top = 233 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 911 + Top = 259 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 848 + Top = 268 + end + object OpenDialog1: TOpenDialog + Left = 936 + Top = 41 + end + object ADOQuery1: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 685 + Top = 233 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachCPcbfz.pas b/基础资料维护(BaseInfo.dll)/U_ZdyAttachCPcbfz.pas new file mode 100644 index 0000000..d381404 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachCPcbfz.pas @@ -0,0 +1,599 @@ +unit U_ZdyAttachCPcbfz; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + ComObj, Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, + ADODB, cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, + cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; + +type + FdDy = record + inc: integer; //ͻ׽־ + FDdys: string[32]; //ͻ׽ + FdDysName: string[32]; //ͻ׽ + end; + + TfrmZdyAttachCPcbfz = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + Label2: TLabel; + DEFstr5: TComboBox; + v2Column7: TcxGridDBColumn; + v2Column11: TcxGridDBColumn; + v2Column13: TcxGridDBColumn; + OpenDialog1: TOpenDialog; + v2Column14: TcxGridDBColumn; + v2Column15: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column10: TcxGridDBColumn; + v2Column12: TcxGridDBColumn; + v2Column16: TcxGridDBColumn; + Tv2Column1: TcxGridDBColumn; + Tv2Column2: TcxGridDBColumn; + Tv2Column3: TcxGridDBColumn; + Tv2Column4: TcxGridDBColumn; + Tv2Column5: TcxGridDBColumn; + ToolButton10: TToolButton; + ADOQuery1: TADOQuery; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure TBeditClick(Sender: TObject); + procedure TBADDClick(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure ToolButton6Click(Sender: TObject); + procedure TBCBClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton7Click(Sender: TObject); + procedure ToolButton8Click(Sender: TObject); + procedure ToolButton9Click(Sender: TObject); + procedure ToolButton10Click(Sender: TObject); + private + canshu1: string; + { Private declarations } + procedure InitGrid(); + public + dFdDy: array[0..20] of FdDy; //ͻ + fType:string; + end; + +var + frmZdyAttachCPcbfz: TfrmZdyAttachCPcbfz; + +implementation + +uses + U_DataLink, U_Fun, U_ZDYHelp, U_ZdyAttInputCP, U_ZdyAttInputCP10, + U_ZdyAttInputCP_CB, U_FjList_RZ, U_ZdyCMZ_help, U_ZdyYS_help; + +{$R *.dfm} + +procedure TfrmZdyAttachCPcbfz.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where Type=''CP'' '); + Open; + end; + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmZdyAttachCPcbfz.FormDestroy(Sender: TObject); +begin + frmZdyAttachCPcbfz := nil; +end; + +procedure TfrmZdyAttachCPcbfz.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmZdyAttachCPcbfz.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption, Tv2, 'ͻԶ'); + Close; +end; + +procedure TfrmZdyAttachCPcbfz.TBDelClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString) <> '' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + ''''); + sql.Add('delete KH_Zdy where ZdyNo=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + ''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmZdyAttachCPcbfz.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption, Tv2, 'ͻԶ'); +// if trim(canshu1) = 'Ȩ' then +// begin +// TBCB.Visible := false; +// ToolButton7.Visible := true; +// TBADD.Visible := true; +// TBedit.Visible := true; +// Tbdel.Visible := true; +// end +// else if trim(canshu1) = 'ɱ' then +// begin +// TBCB.Visible := true; +// ToolButton7.Visible := true; +// TBADD.Visible := false; +// TBedit.Visible := false; +// Tbdel.Visible := false; +// end +// else +// begin +// TBCB.Visible := false; +// ToolButton7.Visible := false; +// TBADD.Visible := true; +// TBedit.Visible := false; +// Tbdel.Visible := false; +// end; + InitGrid(); +end; + +procedure TfrmZdyAttachCPcbfz.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachCPcbfz.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + end; +end; + +procedure TfrmZdyAttachCPcbfz.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmZdyAttachCPcbfz.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then + Exit; + TcxGridToExcel(self.Caption, cxgrid2); +// SelExportData(Tv2,ADOQueryMain,'Ʒб'); +end; + +procedure TfrmZdyAttachCPcbfz.TBeditClick(Sender: TObject); +begin + try + frmZdyAttInputCP10 := TfrmZdyAttInputCP10.Create(Application); + with frmZdyAttInputCP10 do + begin + PState := 1; + FATID := Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + + if ShowModal = 1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP10.Free; + end; +end; + +procedure TfrmZdyAttachCPcbfz.TBADDClick(Sender: TObject); +begin + try + frmZdyAttInputCP10 := TfrmZdyAttInputCP10.Create(Application); + with frmZdyAttInputCP10 do + begin + PState := 0; + FATID := ''; + if ShowModal = 1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP10.Free; + end; +end; + +procedure TfrmZdyAttachCPcbfz.ToolButton5Click(Sender: TObject); +var + excelApp, WorkBook: Variant; + i, j, k, ExcelRowCount: integer; + maxId: string; +begin + + try + excelApp := CreateOleObject('Excel.Application'); + openDialog1.Filter := '*.CSV;*.xls'; + if opendialog1.Execute then + begin + WorkBook := excelApp.WorkBooks.Open(OpenDialog1.FileName); + end + else + exit; + + excelApp.Visible := false; + ExcelRowCount := WorkBook.WorkSheets[1].UsedRange.Rows.Count; + except + application.MessageBox('EXCEL', 'Ϣ', MB_ICONERROR); + exit; + end; + + try + k := 0; + for i := 1 to 20 do + begin + if trim(excelApp.Cells[1, i].value) = '' then + break; + if trim(excelApp.Cells[1, i].value) = 'Ʒ' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'ZdyCode'; + dFdDy[k].FdDysName := 'Ʒ'; + end; + + if trim(excelApp.Cells[1, i].value) = 'Ʒ' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'ZdyName'; + dFdDy[k].FdDysName := 'Ʒ'; + end; + + if trim(excelApp.Cells[1, i].value) = '' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'defNote1'; + dFdDy[k].FdDysName := ''; + end; + + if trim(excelApp.Cells[1, i].value) = 'ɫ' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'DEFstr3'; + dFdDy[k].FdDysName := ''; + end; + + if trim(excelApp.Cells[1, i].value) = '' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'defNote2'; + dFdDy[k].FdDysName := ''; + end; + if trim(excelApp.Cells[1, i].value) = '' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'DEFstr5'; + dFdDy[k].FdDysName := ''; + end; + if trim(excelApp.Cells[1, i].value) = '' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'DEFstr1'; + dFdDy[k].FdDysName := ''; + end; + if trim(excelApp.Cells[1, i].value) = 'ɷ' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'DEFstr2'; + dFdDy[k].FdDysName := 'ɷ'; + end; + k := k + 1; + end; + except + end; + + ADOQueryCmd.Connection.BeginTrans; + try + for i := 2 to ExcelRowCount do + begin + if GetLSNo(ADOQueryCmd, maxId, 'AT', 'KH_Zdy_Attachment', 4, 1) = False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment where 1=2'); + open; + end; + ADOQueryCmd.Append; + for j := 0 to k - 1 do + begin + ADOQueryCmd.fieldbyname(dFdDy[j].FDdys).Value := excelApp.Cells[i, dFdDy[j].inc].Value; + end; + ADOQueryCmd.FieldByName('ATID').Value := Trim(maxId); + ADOQueryCmd.FieldByName('Type').Value := 'CP'; + ADOQueryCmd.FieldByName('Filler').Value := Trim(DName); + ADOQueryCmd.Post; + + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment where ATID=''' + trim(maxId) + ''' '); + open; + end; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_Zdy where ZdyNo=''' + Trim(maxId) + ''''); + Open; + end; + with ADOQueryCmd do + begin + if ADOQueryCmd.IsEmpty then + begin + Append; + end + else + begin + Edit; + end; + FieldByName('ZdyNo').Value := Trim(maxId); + FieldByName('ZdyName').Value := Trim(ADOQueryTemp.fieldbyname('ZdyName').AsString); + FieldByName('Type').Value := 'CP'; + FieldByName('MainType').Value := Trim(ADOQueryTemp.fieldbyname('DEFstr5').AsString); + Post; + end; + end; + WorkBook.Close; + excelApp.Quit; + excelApp := Unassigned; + WorkBook := Unassigned; + ADOQueryCmd.Connection.CommitTrans; + InitGrid(); + except + WorkBook.Close; + excelApp.Quit; + excelApp := Unassigned; + WorkBook := Unassigned; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; + +procedure TfrmZdyAttachCPcbfz.ToolButton6Click(Sender: TObject); +begin + try + frmZdyAttInputCP10 := TfrmZdyAttInputCP10.Create(Application); + with frmZdyAttInputCP10 do + begin + FATID := Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + Tsave.Visible := false; + PState := 1; + if ShowModal = 1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP10.Free; + end; +end; + +procedure TfrmZdyAttachCPcbfz.TBCBClick(Sender: TObject); +begin + if cds_hz.IsEmpty then + exit; + try + frmZdyAttInputCP_CB := TfrmZdyAttInputCP_CB.Create(Application); + with frmZdyAttInputCP_CB do + begin + PState := 0; + FATID := Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + // Tsave.Visible:=false; + if ShowModal = 1 then + begin + // TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP_CB.Free; + end; +end; + +procedure TfrmZdyAttachCPcbfz.FormCreate(Sender: TObject); +begin + canshu1 := trim(DParameters1); +end; + +procedure TfrmZdyAttachCPcbfz.ToolButton3Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + try + frmFjList_RZ := TfrmFjList_RZ.Create(Application); + with frmFjList_RZ do + begin + // if Trim(DParameters1)<>'Ȩ' then cxButton1.Visible:=false; + fkeyNO := Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + fType := 'Ʒ'; + if ShowModal = 1 then + begin + + end; + end; + finally + frmFjList_RZ.Free; + end; +end; + +procedure TfrmZdyAttachCPcbfz.ToolButton4Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + try + frmZdyAttInputCP10 := TfrmZdyAttInputCP10.Create(Application); + with frmZdyAttInputCP10 do + begin + PState := 1; + CopyInt := 99; + FATID := Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + if ShowModal = 1 then + begin + + end; + end; + finally + frmZdyAttInputCP10.Free; + end; +end; + +procedure TfrmZdyAttachCPcbfz.ToolButton7Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + try + frmZdyAttInputCP_CB := TfrmZdyAttInputCP_CB.Create(Application); + with frmZdyAttInputCP_CB do + begin + PState := 1; + CopyInt := 99; + FATID := Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + if ShowModal = 1 then + begin + + end; + end; + finally + frmZdyAttInputCP_CB.Free; + end; +end; + +procedure TfrmZdyAttachCPcbfz.ToolButton8Click(Sender: TObject); +begin + frmZdyCMZ_help := TfrmZdyCMZ_help.create(self); + with frmZdyCMZ_help do + begin + if showmodal = 1 then + begin + + end; + free; + end; +end; + +procedure TfrmZdyAttachCPcbfz.ToolButton9Click(Sender: TObject); +begin + frmZdyYS_help := TfrmZdyYS_help.create(self); + with frmZdyYS_help do + begin + if showmodal = 1 then + begin + + end; + free; + end; +end; + +procedure TfrmZdyAttachCPcbfz.ToolButton10Click(Sender: TObject); +begin + if fType='10' then frmZdyAttachCPcbfz.ModalResult:=1; +// if CDS_HZ.IsEmpty then +// exit; +// if not CDS_HZ.Locate('ssel', true, []) then +// begin +// application.MessageBox('ûѡݣ', 'ʾϢ', 0); +// exit; +// end; +// ADOQueryCmd.Connection.BeginTrans; +// try +// with CDS_HZ do +// begin +// DisableControls; +// first; +// while not eof do +// begin +// if fieldbyname('ssel').AsBoolean then +// begin +//// if not CBFZData() then +// begin +// ADOQueryCmd.Connection.RollbackTrans; +// application.MessageBox('ɱʧܣ', 'ʾϢ', 0); +// end; +// end; +// next; +// end; +// EnableControls; +// end; +// ADOQueryCmd.Connection.CommitTrans; +// +// application.MessageBox('ɱƳɹ', 'ʾϢ'); +// initGrid(); +// except +// ADOQueryCmd.Connection.RollbackTrans; +// application.MessageBox('ɱʧܣ', 'ʾϢ', 0); +// end; + +end; + +end. + diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachGYS.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyAttachGYS.dfm new file mode 100644 index 0000000..40838f0 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachGYS.dfm @@ -0,0 +1,522 @@ +object frmZdyAttachGYS: TfrmZdyAttachGYS + Left = 181 + Top = 65 + Width = 1074 + Height = 662 + Caption = #20379#24212#21830#36164#26009#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1058 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + Caption = #20462#25913 + ImageIndex = 54 + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 374 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1058 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 203 + Top = 13 + Width = 60 + Height = 12 + Caption = #20379#24212#21830#21517#31216 + end + object Label1: TLabel + Left = 22 + Top = 13 + Width = 60 + Height = 12 + Caption = #20379#24212#21830#32534#21495 + end + object Label2: TLabel + Left = 395 + Top = 13 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object Label4: TLabel + Left = 534 + Top = 13 + Width = 24 + Height = 12 + Caption = #22320#21306 + end + object ZdyName: TEdit + Tag = 2 + Left = 267 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 83 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object DEFStr7: TEdit + Tag = 2 + Left = 564 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 2 + OnChange = ZdyNameChange + end + object defstr5: TEdit + Tag = 2 + Left = 424 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 3 + OnChange = ZdyNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1058 + Height = 341 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnCellClick = Tv2CellClick + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsData.Editing = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object v2Column2: TcxGridDBColumn + Caption = #20379#24212#21830#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column6: TcxGridDBColumn + Caption = #20379#24212#21830#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 124 + end + object v2Column14: TcxGridDBColumn + Caption = #32479#35745#21333#20301#21517#31216 + DataBinding.FieldName = 'ZDYNameTj' + HeaderAlignmentHorz = taCenter + Width = 147 + end + object v2Column8: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Width = 77 + end + object v2Column10: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'DEFStr6' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column11: TcxGridDBColumn + Caption = #22320#21306 + DataBinding.FieldName = 'DEFStr7' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column3: TcxGridDBColumn + Caption = #30005#35805 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column4: TcxGridDBColumn + Caption = #25163#26426 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v2Column5: TcxGridDBColumn + Caption = #20256#30495 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2Column7: TcxGridDBColumn + Caption = #20844#21496#22320#22336 + DataBinding.FieldName = 'DEFNote1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v2Column9: TcxGridDBColumn + Caption = #32852#31995#20154 + DataBinding.FieldName = 'DEFstr4' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 114 + end + object v2Column12: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column13: TcxGridDBColumn + Caption = #25805#20316#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Width = 80 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object Panel2: TPanel + Left = 0 + Top = 411 + Width = 1058 + Height = 212 + Align = alBottom + BevelOuter = bvNone + Caption = 'Panel2' + TabOrder = 3 + object ToolBar2: TToolBar + Left = 0 + Top = 0 + Width = 1058 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object ToolButton7: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#21152 + ImageIndex = 22 + OnClick = ToolButton7Click + end + object ToolButton8: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = ToolButton8Click + end + object ToolButton5: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = ToolButton5Click + end + object ToolButton9: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 100 + OnClick = ToolButton9Click + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 31 + Width = 1058 + Height = 181 + Align = alClient + TabOrder = 1 + object TV3: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + DataController.DataSource = DSsub + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsData.Editing = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object cxGridDBColumn1: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 137 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'ZdyName' + HeaderAlignmentHorz = taCenter + Width = 120 + end + object TV3Column1: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'defstr1' + HeaderAlignmentHorz = taCenter + Width = 120 + end + object TV3Column2: TcxGridDBColumn + Caption = #25104#20998 + DataBinding.FieldName = 'defstr2' + HeaderAlignmentHorz = taCenter + Width = 120 + end + object cxGridDBColumn12: TcxGridDBColumn + Caption = #35814#32454#34920#36848#20449#24687 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 240 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TV3 + end + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end + object DSsub: TDataSource + DataSet = CDSsub + Left = 656 + Top = 412 + end + object CDSsub: TClientDataSet + Aggregates = <> + Params = <> + Left = 540 + Top = 416 + end + object ADOQuerysub: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 460 + Top = 420 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachGYS.pas b/基础资料维护(BaseInfo.dll)/U_ZdyAttachGYS.pas new file mode 100644 index 0000000..6ac045d --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachGYS.pas @@ -0,0 +1,385 @@ +unit U_ZdyAttachGYS; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, + cxNavigator; + +type + TfrmZdyAttachGYS = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + ToolButton4: TToolButton; + v2Column8: TcxGridDBColumn; + Label2: TLabel; + v2Column10: TcxGridDBColumn; + v2Column11: TcxGridDBColumn; + v2Column12: TcxGridDBColumn; + v2Column13: TcxGridDBColumn; + DEFStr7: TEdit; + Label4: TLabel; + v2Column14: TcxGridDBColumn; + defstr5: TEdit; + Panel2: TPanel; + ToolBar2: TToolBar; + ToolButton7: TToolButton; + ToolButton8: TToolButton; + ToolButton9: TToolButton; + cxGrid1: TcxGrid; + TV3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn12: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + TV3Column1: TcxGridDBColumn; + TV3Column2: TcxGridDBColumn; + DSsub: TDataSource; + CDSsub: TClientDataSet; + ADOQuerysub: TADOQuery; + ToolButton5: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton8Click(Sender: TObject); + procedure ToolButton9Click(Sender: TObject); + procedure ToolButton7Click(Sender: TObject); + procedure cxGridDBColumn1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton5Click(Sender: TObject); + procedure Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + { Private declarations } + procedure InitGrid(); + procedure Initsub(); + + public + fDEFstr5:string; + end; + +var + frmZdyAttachGYS: TfrmZdyAttachGYS; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp,U_ZdyAttInputGYS, U_ZdyAttachCP10_help; + +{$R *.dfm} +procedure TfrmZdyAttachGYS.Initsub(); +begin + if cdssub.Active then CDSsub.EmptyDataSet; + IF CDS_hz.IsEmpty then exit; + try + with ADOQuerysub do + begin + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_CPCB where ATID='''+trim(cds_hz.fieldbyname('ATID').AsString)+''' and CBType=''GYSYSCP'' '); + Open; + end; + SCreateCDS20(ADOQuerysub,CDSsub); + SInitCDSData20(ADOQuerysub,CDSsub); + tv3.OptionsData.Editing:=false; + finally + end; +end; + + + +procedure TfrmZdyAttachGYS.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where Type=''GYS'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; + ToolButton2.Click; + Initsub(); +end; + + +procedure TfrmZdyAttachGYS.FormDestroy(Sender: TObject); +begin + frmZdyAttachGYS:=nil; +end; + +procedure TfrmZdyAttachGYS.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttachGYS.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ӧ',Tv2,'ͻԶ'); + Close; +end; +procedure TfrmZdyAttachGYS.TBDelClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + sql.Add('delete KH_Zdy where ZdyNo='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmZdyAttachGYS.FormShow(Sender: TObject); +begin + ReadCxGrid('Ӧ',Tv2,'ͻԶ'); + IF trim(fDEFstr5)<>'' then + begin + DEFstr5.Text:=trim(fDEFstr5); + DEFstr5.Enabled:=false; + end; + InitGrid(); +end; + +procedure TfrmZdyAttachGYS.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachGYS.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + Initsub(); + end; +end; + +procedure TfrmZdyAttachGYS.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachGYS.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid2); +// SelExportData(Tv2,ADOQueryMain,'Ӧб'); +end; + +procedure TfrmZdyAttachGYS.ToolButton4Click(Sender: TObject); +begin + try + frmZdyAttInputGYS:=TfrmZdyAttInputGYS.Create(Application); + with frmZdyAttInputGYS do + begin + FCYID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + fDEFstr5:=self.fDEFstr5; + if ShowModal=1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInputGYS.Free; + end; +end; + +procedure TfrmZdyAttachGYS.ToolButton3Click(Sender: TObject); +begin + try + frmZdyAttInputGYS:=TfrmZdyAttInputGYS.Create(Application); + with frmZdyAttInputGYS do + begin + FCYID:=''; + fDEFstr5:=self.fDEFstr5; + if ShowModal=1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInputGYS.Free; + end; +end; + +procedure TfrmZdyAttachGYS.ToolButton8Click(Sender: TObject); +begin + IF cdssub.IsEmpty then exit; + tv3.OptionsData.Editing:=true; +end; + +procedure TfrmZdyAttachGYS.ToolButton9Click(Sender: TObject); +begin + if CDSsub.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDSsub.fieldbyname('CBID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_CPCB where CBID='''+Trim(CDSsub.fieldbyname('CBID').AsString)+''''); + ExecSQL; + end; + end; + CDSsub.Delete; +end; + +procedure TfrmZdyAttachGYS.ToolButton7Click(Sender: TObject); +begin + tv3.OptionsData.Editing:=true; + CDSsub.Append; + cdsSub.Post; +end; + +procedure TfrmZdyAttachGYS.cxGridDBColumn1PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + frmZdyAttachCP10_help:=TfrmZdyAttachCP10_help.create(self); + with frmZdyAttachCP10_help do + begin + if showmodal=1 then + begin + cdssub.Edit; + cdssub.FieldByName('zdyCode').Value:=trim(cds_hz.fieldbyname('zdyCode').AsString); + cdssub.FieldByName('zdyName').Value:=trim(cds_hz.fieldbyname('zdyName').AsString); + cdssub.FieldByName('defstr1').Value:=trim(cds_hz.fieldbyname('defstr1').AsString); + cdssub.FieldByName('defstr2').Value:=trim(cds_hz.fieldbyname('defstr2').AsString); + cdssub.Post; + end; + free; + end; + tv3.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmZdyAttachGYS.ToolButton5Click(Sender: TObject); +var + maxId:string; +begin + if CDSsub.IsEmpty then exit; + try + with CDSsub do + begin + first; + while not eof do + begin + IF trim(fieldbyname('CBID').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,maxId,'CY','KH_Zdy_CPCB',4,1)=False then + begin + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + end + else + maxId:=trim(fieldbyname('CBID').AsString); + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_CPCB where CBID='''+Trim(maxId)+''''); + open; + if ADOQueryCmd.IsEmpty then + begin + Append; + FieldByName('Filler').Value:=Trim(DName); + end + else + begin + Edit; + FieldByName('Editer').Value:=Trim(DName); + FieldByName('Edittime').Value:=now(); + end; + FieldByName('CBID').Value:=Trim(maxId); + FieldByName('ATID').Value:=Trim(CDS_HZ.fieldbyname('ATID').AsString); + FieldByName('ZdyCode').Value:=Trim(cdssub.fieldbyname('ZdyCode').AsString); + FieldByName('ZdyName').Value:=Trim(cdssub.fieldbyname('ZdyName').AsString); + FieldByName('defstr1').Value:=Trim(cdssub.fieldbyname('defstr1').AsString); + FieldByName('defstr2').Value:=Trim(cdssub.fieldbyname('defstr2').AsString); + FieldByName('note').Value:=Trim(cdssub.fieldbyname('note').AsString); + FieldByName('CBType').Value:='GYSYSCP'; + post; + end; + next; + end; + end; + application.MessageBox('ݱɹ','ʾϢ'); + tv3.OptionsData.Editing:=false; + except + application.MessageBox('ݱʧܣ','ʾϢ',MB_ICONERROR); + end; +end; + +procedure TfrmZdyAttachGYS.Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + Initsub(); +end; + +end. + + diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachGYS_help.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyAttachGYS_help.dfm new file mode 100644 index 0000000..a2e9a45 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachGYS_help.dfm @@ -0,0 +1,362 @@ +object frmZdyAttachGYS_help: TfrmZdyAttachGYS_help + Left = 238 + Top = 25 + Width = 1074 + Height = 662 + Caption = #20379#24212#21830#20449#24687 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1058 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1058 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 203 + Top = 13 + Width = 60 + Height = 12 + Caption = #20379#24212#21830#21517#31216 + end + object Label1: TLabel + Left = 22 + Top = 13 + Width = 60 + Height = 12 + Caption = #20379#24212#21830#32534#21495 + end + object Label2: TLabel + Left = 395 + Top = 13 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object Label4: TLabel + Left = 534 + Top = 13 + Width = 24 + Height = 12 + Caption = #22320#21306 + end + object ZdyName: TEdit + Tag = 2 + Left = 267 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 83 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object DEFStr7: TEdit + Tag = 2 + Left = 564 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 2 + OnChange = ZdyNameChange + end + object defstr5: TEdit + Tag = 2 + Left = 424 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 3 + OnChange = ZdyNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1058 + Height = 554 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsData.Editing = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object v2Column2: TcxGridDBColumn + Caption = #20379#24212#21830#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column6: TcxGridDBColumn + Caption = #20379#24212#21830#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 124 + end + object v2Column14: TcxGridDBColumn + Caption = #32479#35745#21333#20301#21517#31216 + DataBinding.FieldName = 'ZDYNameTj' + HeaderAlignmentHorz = taCenter + Width = 147 + end + object v2Column8: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Width = 77 + end + object v2Column10: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'DEFStr6' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column11: TcxGridDBColumn + Caption = #22320#21306 + DataBinding.FieldName = 'DEFStr7' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column3: TcxGridDBColumn + Caption = #30005#35805 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column4: TcxGridDBColumn + Caption = #25163#26426 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v2Column5: TcxGridDBColumn + Caption = #20256#30495 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2Column7: TcxGridDBColumn + Caption = #20844#21496#22320#22336 + DataBinding.FieldName = 'DEFNote1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v2Column9: TcxGridDBColumn + Caption = #32852#31995#20154 + DataBinding.FieldName = 'DEFstr4' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 114 + end + object v2Column12: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column13: TcxGridDBColumn + Caption = #25805#20316#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Width = 80 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end + object DSsub: TDataSource + DataSet = CDSsub + Left = 656 + Top = 412 + end + object CDSsub: TClientDataSet + Aggregates = <> + Params = <> + Left = 540 + Top = 416 + end + object ADOQuerysub: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 460 + Top = 420 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachGYS_help.pas b/基础资料维护(BaseInfo.dll)/U_ZdyAttachGYS_help.pas new file mode 100644 index 0000000..2661fd1 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachGYS_help.pas @@ -0,0 +1,178 @@ +unit U_ZdyAttachGYS_help; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmZdyAttachGYS_help = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + v2Column8: TcxGridDBColumn; + Label2: TLabel; + v2Column10: TcxGridDBColumn; + v2Column11: TcxGridDBColumn; + v2Column12: TcxGridDBColumn; + v2Column13: TcxGridDBColumn; + DEFStr7: TEdit; + Label4: TLabel; + v2Column14: TcxGridDBColumn; + defstr5: TEdit; + DSsub: TDataSource; + CDSsub: TClientDataSet; + ADOQuerysub: TADOQuery; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + { Private declarations } + procedure InitGrid(); + + + public + fDEFstr5:string; + end; + +var + frmZdyAttachGYS_help: TfrmZdyAttachGYS_help; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp,U_ZdyAttInputGYS, U_ZdyAttachCP10_help; + +{$R *.dfm} + + + + +procedure TfrmZdyAttachGYS_help.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where Type=''GYS'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachGYS_help.FormDestroy(Sender: TObject); +begin + frmZdyAttachGYS_help:=nil; +end; + +procedure TfrmZdyAttachGYS_help.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttachGYS_help.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption,Tv2,'ͻԶ'); + Close; +end; +procedure TfrmZdyAttachGYS_help.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption,Tv2,'ͻԶ'); + IF trim(fDEFstr5)<>'' then + begin + DEFstr5.Text:=trim(fDEFstr5); + DEFstr5.Enabled:=false; + end; + InitGrid(); +end; + +procedure TfrmZdyAttachGYS_help.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachGYS_help.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmZdyAttachGYS_help.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachGYS_help.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid2); +end; + +procedure TfrmZdyAttachGYS_help.Tv2CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + IF cds_hz.IsEmpty then exit; + self.ModalResult:=1; +end; + +end. + + diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachment.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyAttachment.dfm new file mode 100644 index 0000000..845780d --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachment.dfm @@ -0,0 +1,416 @@ +object frmZdyAttachment: TfrmZdyAttachment + Left = 28 + Top = 101 + Width = 1376 + Height = 573 + Caption = #23458#25143#36164#26009#31649#29702 + 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 = 1360 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object TBuser: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #25351#23450#25805#20316#21592 + ImageIndex = 97 + OnClick = TBuserClick + end + object ToolButton1: TToolButton + Left = 414 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 477 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1360 + Height = 38 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 306 + Top = 13 + Width = 48 + Height = 12 + Caption = #23458#25143#21517#31216 + end + object Label1: TLabel + Left = 22 + Top = 49 + Width = 48 + Height = 12 + Caption = #23458#25143#32534#21495 + end + object Label2: TLabel + Left = 482 + Top = 13 + Width = 36 + Height = 12 + Caption = #19994#21153#21592 + end + object Label4: TLabel + Left = 654 + Top = 13 + Width = 24 + Height = 12 + Caption = #22320#21306 + end + object Label5: TLabel + Left = 28 + Top = 12 + Width = 48 + Height = 12 + Caption = #30331#35760#26085#26399 + end + object Label6: TLabel + Left = 184 + Top = 12 + Width = 6 + Height = 12 + Caption = '-' + end + object ZdyName: TEdit + Tag = 2 + Left = 354 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 70 + Top = 45 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object Filler: TEdit + Tag = 2 + Left = 520 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 2 + OnChange = ZdyNameChange + end + object DEFStr7: TEdit + Tag = 2 + Left = 684 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 3 + OnChange = ZdyNameChange + end + object begdate: TDateTimePicker + Left = 80 + Top = 8 + Width = 100 + Height = 20 + Date = 42391.664898645830000000 + Time = 42391.664898645830000000 + ShowCheckbox = True + TabOrder = 4 + end + object enddate: TDateTimePicker + Left = 192 + Top = 8 + Width = 100 + Height = 20 + Date = 42391.664898645830000000 + Time = 42391.664898645830000000 + ShowCheckbox = True + TabOrder = 5 + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 69 + Width = 1360 + Height = 465 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object v2Column2: TcxGridDBColumn + Caption = #23458#25143#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 82 + end + object v2Column6: TcxGridDBColumn + Caption = #23458#25143#21517#31216 + DataBinding.FieldName = 'ZdyName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 127 + end + object v2Column15: TcxGridDBColumn + Caption = #23458#25143#31616#31216 + DataBinding.FieldName = 'zdyNameZ' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column10: TcxGridDBColumn + Caption = #23458#25143#32852#31995#20154 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Width = 71 + end + object v2Column11: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'DEFStr6' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2DEFStr7: TcxGridDBColumn + Caption = #22320#21306 + DataBinding.FieldName = 'DEFStr7' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column3: TcxGridDBColumn + Caption = #32852#31995#30005#35805 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 71 + end + object v2Column5: TcxGridDBColumn + Caption = #20256#30495 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2Column7: TcxGridDBColumn + Caption = #20844#21496#22320#22336 + DataBinding.FieldName = 'DEFNote1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 67 + end + object v2Column8: TcxGridDBColumn + Caption = #21457#36135#22320#22336 + DataBinding.FieldName = 'DEFNote2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column9: TcxGridDBColumn + Caption = #32852#31995#20154 + DataBinding.FieldName = 'DEFstr4' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v2Column14: TcxGridDBColumn + Caption = #27424#27454#39069#24230 + DataBinding.FieldName = 'DefFlt1' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column16: TcxGridDBColumn + Caption = #23458#25143#26469#28304 + DataBinding.FieldName = 'DEFstr9' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 165 + end + object v2Column12: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column13: TcxGridDBColumn + Caption = #30331#35760#26085#26399 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Width = 70 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachment.pas b/基础资料维护(BaseInfo.dll)/U_ZdyAttachment.pas new file mode 100644 index 0000000..3925c1a --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachment.pas @@ -0,0 +1,273 @@ +unit U_ZdyAttachment; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDBLookupComboBox, cxLookAndFeels, + cxLookAndFeelPainters, cxNavigator; + +type + TfrmZdyAttachment = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + v2Column10: TcxGridDBColumn; + ToolButton4: TToolButton; + Label2: TLabel; + Filler: TEdit; + v2Column11: TcxGridDBColumn; + v2DEFStr7: TcxGridDBColumn; + v2Column12: TcxGridDBColumn; + v2Column13: TcxGridDBColumn; + v2Column14: TcxGridDBColumn; + DEFStr7: TEdit; + Label4: TLabel; + v2Column15: TcxGridDBColumn; + v2Column16: TcxGridDBColumn; + TBuser: TToolButton; + Label5: TLabel; + begdate: TDateTimePicker; + Label6: TLabel; + enddate: TDateTimePicker; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure TBuserClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + private + + { Private declarations } + procedure InitGrid(); + + public + fkhType:string; + Fmanage:string; + end; + +var + frmZdyAttachment: TfrmZdyAttachment; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp,U_ZdyAttInput,U_ZdyInput; + +{$R *.dfm} + + + +procedure TfrmZdyAttachment.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where Type=''KHName'' '); + IF begdate.Checked then + sql.Add(' and FillTime>='''+formatdateTime('yyyy-MM-dd',begdate.DateTime)+''''); + IF enddate.Checked then + sql.Add(' and FillTime<'''+formatdateTime('yyyy-MM-dd',enddate.DateTime+1)+''''); + sql.Add(' and isnull(khType,'''')='+quotedstr(trim(fkhType))); + IF trim(Fmanage)='ҵԱ'then + sql.Add(' and Filler='+quotedstr(trim(DName))); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmZdyAttachment.FormDestroy(Sender: TObject); +begin + frmZdyAttachment:=nil; +end; + +procedure TfrmZdyAttachment.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttachment.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ͻ',Tv2,'ͻԶ'); + Close; +end; +procedure TfrmZdyAttachment.TBDelClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + sql.Add('delete KH_Zdy where ZdyNo='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmZdyAttachment.FormShow(Sender: TObject); +begin + ReadCxGrid('ͻ',Tv2,'ͻԶ'); + InitGrid(); + IF trim(Fmanage)='ҵԱ'then + TBuser.Visible:=false; +end; + +procedure TfrmZdyAttachment.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachment.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmZdyAttachment.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachment.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid2); + // SelExportData(Tv2,ADOQueryMain,'ͻб'); +end; + +procedure TfrmZdyAttachment.ToolButton4Click(Sender: TObject); +begin + IF CDS_HZ.IsEmpty then exit; + try + frmZdyAttInput:=TfrmZdyAttInput.Create(Application); + with frmZdyAttInput do + begin + FCYID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + fkhType:=self.fkhType; + if ShowModal=1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInput.Free; + end; +end; + +procedure TfrmZdyAttachment.ToolButton3Click(Sender: TObject); +begin + try + frmZdyAttInput:=TfrmZdyAttInput.Create(Application); + with frmZdyAttInput do + begin + fkhType:=self.fkhType; + FCYID:=''; + if ShowModal=1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInput.Free; + end; +end; + +procedure TfrmZdyAttachment.TBuserClick(Sender: TObject); +var + FuserName:string; +begin + IF CDS_HZ.IsEmpty then exit; + frmZDYHelp:=TfrmZDYHelp.Create(self); + with frmZDYHelp do + begin + flag:='UserName'; + FlagName:='Ա'; + IF showmodal=1 then + begin + FuserName:=ClientDataSet1.fieldbyname('zdyName').AsString; + end; + free; + end; + IF trim(FuserName)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('update KH_Zdy_Attachment SET filler='''+trim(FuserName)+''' where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + ExecSQL; + end; + TBRafresh.Click; + end; +end; + +procedure TfrmZdyAttachment.FormCreate(Sender: TObject); +begin + enddate.Date:=date(); + begdate.Date:=strtodate(formatdateTime('yyyy-MM',enddate.Date)+'-01'); +end; + +end. + + diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachmentBJ.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyAttachmentBJ.dfm new file mode 100644 index 0000000..63cda20 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachmentBJ.dfm @@ -0,0 +1,468 @@ +object frmZdyAttachmentCB: TfrmZdyAttachmentCB + Left = 379 + Top = 224 + Width = 1198 + Height = 635 + Caption = #23458#25143#25253#20215#31649#29702 + 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 = 1182 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object ToolButton5: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = ToolButton5Click + end + object TBClose: TToolButton + Left = 441 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1182 + Height = 38 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 366 + Top = 13 + Width = 48 + Height = 12 + Caption = #23458#25143#32534#21495 + end + object Label5: TLabel + Left = 28 + Top = 12 + Width = 48 + Height = 12 + Caption = #25253#20215#26085#26399 + end + object Label6: TLabel + Left = 184 + Top = 12 + Width = 6 + Height = 12 + Caption = '-' + end + object Label2: TLabel + Left = 578 + Top = 13 + Width = 48 + Height = 12 + Caption = #23458#25143#21517#31216 + end + object custNo: TEdit + Tag = 2 + Left = 418 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = custNoChange + end + object begdate: TDateTimePicker + Left = 80 + Top = 8 + Width = 100 + Height = 20 + Date = 42391.664898645830000000 + Time = 42391.664898645830000000 + TabOrder = 1 + end + object enddate: TDateTimePicker + Left = 192 + Top = 8 + Width = 100 + Height = 20 + Date = 42391.664898645830000000 + Time = 42391.664898645830000000 + TabOrder = 2 + end + object custName: TEdit + Tag = 2 + Left = 630 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 3 + OnChange = custNoChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 69 + Width = 1182 + Height = 527 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnFocusedRecordChanged = Tv2FocusedRecordChanged + DataController.DataSource = DS_Main + DataController.Filter.AutoDataSetFilter = True + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object v2DEFStr7: TcxGridDBColumn + Caption = #25253#20215#26085#26399 + DataBinding.FieldName = 'CRTime' + HeaderAlignmentHorz = taCenter + Width = 83 + end + object v2Column4: TcxGridDBColumn + Caption = #25253#20215#21333#21495 + DataBinding.FieldName = 'BJNO' + HeaderAlignmentHorz = taCenter + Width = 88 + end + object v2Column2: TcxGridDBColumn + Caption = #23458#25143#32534#21495 + DataBinding.FieldName = 'custNO' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 82 + end + object v2Column6: TcxGridDBColumn + Caption = #23458#25143#21517#31216 + DataBinding.FieldName = 'custName' + HeaderAlignmentHorz = taCenter + Width = 127 + end + object v2Column10: TcxGridDBColumn + Caption = #22269#23478 + DataBinding.FieldName = 'custcustCountry' + HeaderAlignmentHorz = taCenter + Width = 71 + end + object v2Column11: TcxGridDBColumn + Caption = #20986#36816#28207 + DataBinding.FieldName = 'FromPlace' + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v2Column3: TcxGridDBColumn + Caption = #32852#31995#30005#35805 + DataBinding.FieldName = 'custphone' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 71 + end + object v2Column5: TcxGridDBColumn + Caption = #26377#25928#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2Column7: TcxGridDBColumn + Caption = #20215#26684#26465#27454 + DataBinding.FieldName = 'priceNote' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 67 + end + object v2Column8: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'P_Code' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column9: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column14: TcxGridDBColumn + Caption = #35268#26684#25104#20998 + DataBinding.FieldName = 'P_Spec' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column16: TcxGridDBColumn + Caption = #23610#23544 + DataBinding.FieldName = 'P_size' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column17: TcxGridDBColumn + Caption = #25968#37327#21306#38388 + DataBinding.FieldName = 'defstr1' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column15: TcxGridDBColumn + Caption = #20215#26684 + DataBinding.FieldName = 'price' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 165 + end + object v2Column12: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column13: TcxGridDBColumn + Caption = #30331#35760#26085#26399 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv2Column1: TcxGridDBColumn + Caption = #23458#25143#20135#21697#32534#21495 + DataBinding.FieldName = 'Custcode' + Width = 90 + end + object Tv2Column2: TcxGridDBColumn + Caption = #23610#30721 + DataBinding.FieldName = 'P_chima' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object Tv2Column3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_chima' + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object GroupBox1: TGroupBox + Left = 708 + Top = 132 + Width = 461 + Height = 327 + TabOrder = 3 + object Picture4: TcxDBImage + Left = 2 + Top = 14 + Hint = 'FileName' + Align = alClient + DataBinding.DataField = 'FilesOther' + DataBinding.DataSource = DSImage + Properties.GraphicClassName = 'TdxSmartImage' + Properties.GraphicTransparency = gtTransparent + Properties.ReadOnly = True + Properties.ShowFocusRect = False + Style.BorderStyle = ebsSingle + TabOrder = 0 + Height = 311 + Width = 457 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 533 + Top = 193 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 660 + Top = 132 + end + object DS_Main: TDataSource + DataSet = CDS_Main + Left = 899 + Top = 235 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 460 + Top = 168 + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 740 + Top = 156 + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 372 + Top = 300 + ReportData = {} + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 684 + Top = 336 + end + object RMDBDataSet1: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 356 + Top = 252 + end + object ADOQueryImage: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + EnableBCD = False + Parameters = <> + Left = 944 + Top = 323 + end + object DSImage: TDataSource + DataSet = ADOQueryImage + Left = 980 + Top = 332 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachmentBJ.pas b/基础资料维护(BaseInfo.dll)/U_ZdyAttachmentBJ.pas new file mode 100644 index 0000000..570cf32 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachmentBJ.pas @@ -0,0 +1,305 @@ +unit U_ZdyAttachmentBJ; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls, + cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, + cxTextEdit, cxDBLookupComboBox, RM_e_Xls, RM_E_llPDF, cxLookAndFeels, + cxLookAndFeelPainters, cxNavigator, cxContainer, cxImage, cxDBEdit; + +type + TfrmZdyAttachmentCB = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + Label3: TLabel; + custNo: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_Main: TDataSource; + CDS_Main: TClientDataSet; + ToolButton3: TToolButton; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + v2Column10: TcxGridDBColumn; + ToolButton4: TToolButton; + v2Column11: TcxGridDBColumn; + v2DEFStr7: TcxGridDBColumn; + v2Column12: TcxGridDBColumn; + v2Column13: TcxGridDBColumn; + v2Column14: TcxGridDBColumn; + v2Column16: TcxGridDBColumn; + Label5: TLabel; + begdate: TDateTimePicker; + Label6: TLabel; + enddate: TDateTimePicker; + v2Column4: TcxGridDBColumn; + custName: TEdit; + Label2: TLabel; + v2Column15: TcxGridDBColumn; + v2Column17: TcxGridDBColumn; + ToolButton5: TToolButton; + ADOQueryPrint: TADOQuery; + RM1: TRMGridReport; +// RMllPDFExport1: TRMllPDFExport; + RMXLSExport1: TRMXLSExport; + RMDBDataSet1: TRMDBDataSet; + Tv2Column1: TcxGridDBColumn; + Tv2Column2: TcxGridDBColumn; + Tv2Column3: TcxGridDBColumn; + GroupBox1: TGroupBox; + Picture4: TcxDBImage; + ADOQueryImage: TADOQuery; + DSImage: TDataSource; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure custNoChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + private + canshu1: string; + { Private declarations } + procedure InitGrid(); + procedure InitImage(fwbid: string); + + public + fkhType: string; + Fmanage: string; + end; + +var + frmZdyAttachmentCB: TfrmZdyAttachmentCB; + +implementation + +uses + U_DataLink, U_Fun, U_ZDYHelp, U_ZdyAttInput, U_ZdyInput, + U_ZdyAttachmentBJ_Edit; + +{$R *.dfm} + +procedure TfrmZdyAttachmentCB.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + + Close; + Filtered := False; + SQL.Clear; + sql.Add(' select * from KH_CP_BJ '); + sql.Add(' where CRTime>=''' + formatdateTime('yyyy-MM-dd', begdate.DateTime) + ''''); + sql.Add(' and CRTime<''' + formatdateTime('yyyy-MM-dd', enddate.DateTime + 1) + ''''); + if trim(canshu1) <> 'Ȩ' then + sql.Add(' and Filler=' + quotedstr(trim(DName))); + Open; + end; + SCreateCDS20(ADOQueryMain, CDS_Main); + SInitCDSData20(ADOQueryMain, CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmZdyAttachmentCB.FormDestroy(Sender: TObject); +begin + frmZdyAttachmentCB := nil; +end; + +procedure TfrmZdyAttachmentCB.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmZdyAttachmentCB.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption, Tv2, 'ͻԶ'); + Close; +end; + +procedure TfrmZdyAttachmentCB.TBDelClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_CP_BJ where BJNO=''' + Trim(CDS_Main.fieldbyname('BJNO').AsString) + ''''); + ExecSQL; + end; + CDS_Main.Delete; +end; + +procedure TfrmZdyAttachmentCB.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption, Tv2, 'ͻԶ'); + GroupBox1.Left := Self.Width - 461; + GroupBox1.top := Self.Height - 327; + InitGrid(); +end; + +procedure TfrmZdyAttachmentCB.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachmentCB.ToolButton2Click(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 TfrmZdyAttachmentCB.custNoChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmZdyAttachmentCB.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then + Exit; + TcxGridToExcel(self.Caption, cxgrid2); + // SelExportData(Tv2,ADOQueryMain,'ͻб'); +end; + +procedure TfrmZdyAttachmentCB.ToolButton4Click(Sender: TObject); +begin + if CDS_main.IsEmpty then + exit; + try + frmZdyAttachmentBJ_Edit := TfrmZdyAttachmentBJ_Edit.Create(Application); + with frmZdyAttachmentBJ_Edit do + begin + fkeyNo := self.cds_main.fieldbyname('BJNO').asstring; + fType := 1; + if ShowModal = 1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttachmentBJ_Edit.Free; + end; +end; + +procedure TfrmZdyAttachmentCB.ToolButton3Click(Sender: TObject); +begin + try + frmZdyAttachmentBJ_Edit := TfrmZdyAttachmentBJ_Edit.Create(Application); + with frmZdyAttachmentBJ_Edit do + begin + fkeyNO := ''; + fType := 0; + if ShowModal = 1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttachmentBJ_Edit.Free; + end; +end; + +procedure TfrmZdyAttachmentCB.FormCreate(Sender: TObject); +begin + enddate.Date := date(); + begdate.Date := strtodate(formatdateTime('yyyy-MM', enddate.Date) + '-01'); + canshu1 := trim(DParameters1); +end; + +procedure TfrmZdyAttachmentCB.ToolButton5Click(Sender: TObject); +var + fPrintFile: string; + Porderno: string; + i, j: Integer; +begin + if CDS_Main.IsEmpty then + Exit; + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\Ϣ.rmf'; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select A.*, '); + sql.Add('PrtImage=(select Top 1 FilesOther from TP_File X where X.WBID=A.P_Code) '); + sql.Add(' from KH_CP_BJ A '); + sql.Add(' Where A.BJNO=''' + Trim(CDS_Main.fieldbyname('BJNO').AsString) + ''''); + Open; + end; + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end + else + begin + Application.MessageBox(PChar('û' + trim(fPrintFile)), 'ʾ', 0); + exit; + end; + +end; + +procedure TfrmZdyAttachmentCB.Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + initImage(CDS_Main.fieldbyname('HXPic').AsString); +end; + +procedure TfrmZdyAttachmentCB.InitImage(fwbid: string); +begin + ADOQueryImage.close; + if fwbid = '' then + exit; + with ADOQueryImage do + begin + close; + sql.Clear; + sql.Add('select * from TP_File A'); + sql.Add('where WBID=' + quotedstr(trim(fwbid))); +// ShowMessage(sql.Text); + open; + end; +end; + +end. + diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachmentBJ_Edit.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyAttachmentBJ_Edit.dfm new file mode 100644 index 0000000..52c038d --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachmentBJ_Edit.dfm @@ -0,0 +1,499 @@ +object frmZdyAttachmentBJ_Edit: TfrmZdyAttachmentBJ_Edit + Left = 794 + Top = 146 + Width = 982 + Height = 487 + Caption = #25253#20215#20449#24687#24405#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Label17: TLabel + Left = 32 + Top = 96 + Width = 48 + Height = 12 + Caption = #20960' '#39068' '#33394 + end + object Label9: TLabel + Left = 836 + Top = 124 + Width = 48 + Height = 12 + Caption = #25104#20154#25104#26412 + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 966 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object Tsave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TsaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 29 + Width = 966 + Height = 419 + Align = alClient + BevelOuter = bvNone + TabOrder = 1 + object GroupBox1: TGroupBox + Left = 0 + Top = 0 + Width = 966 + Height = 169 + Align = alTop + Color = clSkyBlue + ParentColor = False + TabOrder = 0 + object Label1: TLabel + Left = 36 + Top = 28 + Width = 48 + Height = 12 + Caption = #25253#20215#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label2: TLabel + Left = 289 + Top = 28 + Width = 48 + Height = 12 + Caption = #23458#25143#32534#21495 + end + object Label3: TLabel + Left = 288 + Top = 78 + Width = 48 + Height = 12 + Caption = #20215#26684#26465#27454 + end + object Label6: TLabel + Left = 541 + Top = 29 + Width = 48 + Height = 12 + Caption = #23458#25143#21517#31216 + end + object Label12: TLabel + Left = 36 + Top = 54 + Width = 48 + Height = 12 + Caption = #22269' '#23478 + end + object Label39: TLabel + Left = 541 + Top = 54 + Width = 48 + Height = 12 + Caption = #20986' '#36816' '#28207 + end + object Label4: TLabel + Left = 289 + Top = 54 + Width = 48 + Height = 12 + Caption = #32852#31995#30005#35805 + end + object Label5: TLabel + Left = 36 + Top = 78 + Width = 48 + Height = 12 + Caption = #26377' '#25928' '#26399 + end + object Label7: TLabel + Left = 36 + Top = 106 + Width = 48 + Height = 12 + Caption = #22791' '#27880 + end + object Label8: TLabel + Left = 541 + Top = 78 + Width = 48 + Height = 12 + Caption = #24065' '#31181 + end + object custName: TEdit + Tag = 2 + Left = 593 + Top = 25 + Width = 140 + Height = 20 + TabOrder = 0 + Text = 'Edit1' + end + object custCountry: TEdit + Tag = 2 + Left = 88 + Top = 50 + Width = 140 + Height = 20 + TabOrder = 1 + Text = 'Edit1' + end + object FromPlace: TEdit + Tag = 2 + Left = 593 + Top = 50 + Width = 140 + Height = 20 + TabOrder = 2 + Text = 'Edit1' + end + object custphone: TEdit + Tag = 2 + Left = 341 + Top = 50 + Width = 140 + Height = 20 + TabOrder = 3 + Text = 'custphone' + end + object note: TMemo + Tag = 2 + Left = 88 + Top = 104 + Width = 645 + Height = 57 + Lines.Strings = ( + 'note') + ScrollBars = ssVertical + TabOrder = 4 + end + object priceNote: TComboBox + Tag = 2 + Left = 340 + Top = 76 + Width = 140 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 5 + Items.Strings = ( + 'FOB' + 'CIF' + 'CNF' + 'EXW' + '' + '') + end + object CRTime: TDateTimePicker + Tag = 2 + Left = 88 + Top = 24 + Width = 140 + Height = 20 + Date = 42680.847243599540000000 + Format = 'yyyy-MM-dd' + Time = 42680.847243599540000000 + TabOrder = 6 + end + object DlyDate: TDateTimePicker + Tag = 2 + Left = 88 + Top = 76 + Width = 140 + Height = 20 + Date = 42680.847243599540000000 + Format = 'yyyy-MM-dd' + Time = 42680.847243599540000000 + TabOrder = 7 + end + object Priceunit: TComboBox + Tag = 2 + Left = 593 + Top = 76 + Width = 140 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 8 + Items.Strings = ( + 'RMB' + 'USD' + '') + end + object custNo: TBtnEditA + Tag = 2 + Left = 340 + Top = 24 + Width = 141 + Height = 20 + TabOrder = 9 + OnBtnClick = custNoBtnClick + end + end + object Panel2: TPanel + Left = 0 + Top = 169 + Width = 966 + Height = 250 + Align = alClient + BevelOuter = bvNone + Caption = 'Panel2' + TabOrder = 1 + object Panel3: TPanel + Left = 0 + Top = 0 + Width = 966 + Height = 250 + Align = alClient + BevelOuter = bvNone + Caption = 'Panel3' + TabOrder = 0 + object ToolBar2: TToolBar + Left = 0 + Top = 0 + Width = 966 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#21152 + ImageIndex = 22 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 100 + OnClick = ToolButton2Click + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 31 + Width = 966 + Height = 219 + Align = alClient + TabOrder = 1 + object TV1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DS1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_BaseInfo.Default + object V1Column1: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'P_Code' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = V1Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 123 + end + object V1Column2: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + HeaderAlignmentHorz = taCenter + Width = 169 + end + object V1Column3: TcxGridDBColumn + Caption = #35268#26684#25104#20998 + DataBinding.FieldName = 'P_Spec' + HeaderAlignmentHorz = taCenter + Width = 108 + end + object V1Column7: TcxGridDBColumn + Caption = #25968#37327#21306#38388 + DataBinding.FieldName = 'defstr1' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object V1Column4: TcxGridDBColumn + Caption = #23610#23544 + DataBinding.FieldName = 'P_size' + HeaderAlignmentHorz = taCenter + Width = 93 + end + object V1Column5: TcxGridDBColumn + Caption = #20215#26684 + DataBinding.FieldName = 'Price' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object V1Column6: TcxGridDBColumn + Caption = #35814#32454#25551#36848 + DataBinding.FieldName = 'defnote1' + HeaderAlignmentHorz = taCenter + Width = 207 + end + object TV1Column1: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_yanse' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = TV1Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV1Column2: TcxGridDBColumn + Caption = #23610#30721 + DataBinding.FieldName = 'P_chima' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = TV1Column2PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV1Column3: TcxGridDBColumn + Caption = #23458#25143#20135#21697#32534#21495 + DataBinding.FieldName = 'custcode' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV1Column4: TcxGridDBColumn + Caption = #22270#29255#19978#20256 + DataBinding.FieldName = 'HXPic' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = TV1Column4PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 80 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = TV1 + end + end + end + end + end + object PopupMenu1: TPopupMenu + Left = 1140 + Top = 103 + object N1: TMenuItem + Caption = #21024#38500 + end + object N3: TMenuItem + Caption = '-' + end + object N2: TMenuItem + Caption = #21478#23384#20026'...' + end + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + EnableBCD = False + Parameters = <> + Left = 932 + Top = 87 + end + object ADOQueryTmp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + EnableBCD = False + Parameters = <> + Left = 844 + Top = 95 + end + object ADOQuerymain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + EnableBCD = False + Parameters = <> + Left = 716 + Top = 191 + end + object CDS1: TClientDataSet + Aggregates = <> + Params = <> + Left = 144 + Top = 283 + end + object DS1: TDataSource + DataSet = CDS1 + Left = 464 + Top = 288 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 780 + Top = 149 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachmentBJ_Edit.pas b/基础资料维护(BaseInfo.dll)/U_ZdyAttachmentBJ_Edit.pas new file mode 100644 index 0000000..4e41492 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachmentBJ_Edit.pas @@ -0,0 +1,464 @@ +unit U_ZdyAttachmentBJ_Edit; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ExtCtrls, cxPC, cxControls, ComCtrls, ToolWin, StdCtrls, Menus, + cxTextEdit, cxCurrencyEdit, BtnEdit, cxContainer, cxEdit, cxImage, DB, ADODB, + cxDBEdit, cxLookAndFeelPainters, cxButtons, IdBaseComponent, IdComponent, + IdTCPConnection, IdTCPClient, IdFTP, ShellAPI, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxDBData, cxGridLevel, cxClasses, + cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, + cxGrid, DBClient, cxButtonEdit, cxGridCustomPopupMenu, cxGridPopupMenu, + cxLookAndFeels, cxNavigator; + +type + TfrmZdyAttachmentBJ_Edit = class(TForm) + ToolBar1: TToolBar; + Tsave: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + GroupBox1: TGroupBox; + Label1: TLabel; + Label2: TLabel; + Label3: TLabel; + Label6: TLabel; + custName: TEdit; + Label17: TLabel; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + N3: TMenuItem; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + ADOQuerymain: TADOQuery; + Label12: TLabel; + custCountry: TEdit; + Label39: TLabel; + FromPlace: TEdit; + custphone: TEdit; + Label4: TLabel; + Label5: TLabel; + note: TMemo; + Label7: TLabel; + priceNote: TComboBox; + Panel2: TPanel; + Panel3: TPanel; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + TV1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + CDS1: TClientDataSet; + Label9: TLabel; + DS1: TDataSource; + CRTime: TDateTimePicker; + DlyDate: TDateTimePicker; + V1Column1: TcxGridDBColumn; + V1Column2: TcxGridDBColumn; + V1Column3: TcxGridDBColumn; + V1Column4: TcxGridDBColumn; + V1Column5: TcxGridDBColumn; + Label8: TLabel; + Priceunit: TComboBox; + V1Column6: TcxGridDBColumn; + custNo: TBtnEditA; + V1Column7: TcxGridDBColumn; + cxGridPopupMenu1: TcxGridPopupMenu; + TV1Column1: TcxGridDBColumn; + TV1Column2: TcxGridDBColumn; + TV1Column3: TcxGridDBColumn; + TV1Column4: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TsaveClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure cxDBImage1DblClick(Sender: TObject); + procedure FileNameClick(Sender: TObject); + procedure MTypeBtnDnClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure V1Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure custNoBtnClick(Sender: TObject); + procedure TV1Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure TV1Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure TV1Column4PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + private + function savedata(): Boolean; + procedure InitGrid(); + procedure InitImage(); + { Private declarations } + public + fkeyNo: string; + FType: integer; + { Public declarations } + end; + +var + frmZdyAttachmentBJ_Edit: TfrmZdyAttachmentBJ_Edit; + +implementation + +uses + U_DataLink, U_Fun10, getpic, U_ZdyAttachCP10_help, U_ZdyAttachment_Help, + U_ZdyCMZ_Sel, U_ZdyYS_Sel; +{$R *.dfm} + +function TfrmZdyAttachmentBJ_Edit.savedata(): Boolean; +var + Filler: string; + FillTime: TdateTime; +begin + result := false; + + ADOQueryCmd.Connection.BeginTrans; + try + if FType = 0 then + begin + if GetLSNo(ADOQueryTmp, fkeyNo, '', 'KH_CP_BJ', 4, 1) = False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ', 'ʾ', 0); + Exit; + end; + Filler := DName; + FillTime := SGetServerDateTime(adoqueryTmp); + end + else + begin + with ADOQueryTmp do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_CP_BJ where BJNO=''' + Trim(fkeyNo) + ''''); + Open; + end; + Filler := adoqueryTmp.fieldbyname('Filler').AsString; + FillTime := adoqueryTmp.fieldbyname('FillTime').AsDateTime; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete from KH_CP_BJ where BJNO=''' + Trim(fkeyNo) + ''''); + execsql; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_CP_BJ where BJNO=''' + Trim(fkeyNo) + ''''); + Open; + end; + with cds1 do + begin + DisableControls; + First; + while not eof do + begin + ADOQueryCmd.Append; + SSetsaveSqlNew(ADOQueryCmd, 'KH_CP_BJ', GroupBox1, 2); + RTSetSaveDataCDS(ADOQueryCmd, Tv1, cds1, 'KH_CP_BJ', 0); + ADOQueryCmd.FieldByName('BJNO').Value := trim(fkeyNO); + ADOQueryCmd.FieldByName('BJID').Value := recNo; + ADOQueryCmd.FieldByName('Filler').Value := Trim(Filler); + ADOQueryCmd.FieldByName('FillTime').Value := FillTime; + ADOQueryCmd.FieldByName('CRTime').Value := formatdateTime('yyyy-MM-dd', CRTime.DateTime); + ADOQueryCmd.FieldByName('DlyDate').Value := formatdateTime('yyyy-MM-dd', DlyDate.DateTime); + ADOQueryCmd.FieldByName('FillTime').Value := FillTime; + ADOQueryCmd.FieldByName('price').Value := cds1.fieldbyname('price').AsFloat; + if FType = 1 then + begin + ADOQueryCmd.FieldByName('editer').Value := trim(dName); + ADOQueryCmd.FieldByName('editTime').Value := SGetServerDateTime(adoqueryTmp); + end; + ADOQueryCmd.Post; + + next; + end; + EnableControls; + end; + + result := true; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + end; +end; + +procedure TfrmZdyAttachmentBJ_Edit.InitGrid(); +begin + with ADOQueryMain do + begin + close; + sql.Clear; + sql.Add('select * from KH_CP_BJ A'); + sql.Add('where BJNO=' + quotedstr(trim(fkeyNo))); + open; + end; + if not ADOQueryMain.IsEmpty then + begin + SCSHDataNew(ADOQueryMain, GroupBox1, 2); + + end; + SCreateCDS20(ADOQueryMain, CDS1); + SInitCDSData20(ADOQueryMain, CDS1); +end; + +procedure TfrmZdyAttachmentBJ_Edit.InitImage(); +begin + { with ADOQueryImage do + begin + close; + sql.Clear; + sql.Add('select * from TP_File A'); + sql.Add('where TFid='+quotedstr(trim(zdyCode.Text))); + open; + end; } +end; + +procedure TfrmZdyAttachmentBJ_Edit.FormDestroy(Sender: TObject); +begin + frmZdyAttachmentBJ_Edit := nil; +end; + +procedure TfrmZdyAttachmentBJ_Edit.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption, Tv1); + close; +end; + +procedure TfrmZdyAttachmentBJ_Edit.FormCreate(Sender: TObject); +begin + Panel1.Align := alclient; + clearControl(GroupBox1, 2); +end; + +procedure TfrmZdyAttachmentBJ_Edit.TsaveClick(Sender: TObject); +begin +// zdyName.SetFocus; + cxgrid1.SetFocus; + if trim(custNo.Text) = '' then + begin + application.MessageBox('ͻŲΪգ', 'ʾϢ', MB_ICONERROR); + exit; + end; + + try + if not savedata() then + begin + application.MessageBox('ݱʧܣ', 'ʾϢ', MB_ICONERROR); + end + else + begin + application.MessageBox('ݱɹ', 'ʾϢ'); + self.ModalResult := 1; + end; + + except + + end; +end; + +procedure TfrmZdyAttachmentBJ_Edit.FormShow(Sender: TObject); +begin + readCxGrid(self.Caption, Tv1); + InitGrid(); +end; + +procedure TfrmZdyAttachmentBJ_Edit.cxDBImage1DblClick(Sender: TObject); +var + sFieldName: string; + fileName: string; +begin +{ + IF TcxDBImage(Sender).Picture.Height=0 then exit; + + sFieldName:='D:\ͼƬ鿴'; + + if not DirectoryExists(pchar(sFieldName)) then + CreateDirectory(pchar(sFieldName),nil); + + fileName:=adoqueryImage.fieldbyname(TcxDBImage(Sender).Hint).asstring; + + sFieldName:=sFieldName+'\'+trim(fileName); + try + IdFTP1.Host := PicSvr; + IdFTP1.Username := 'three'; + IdFTP1.Password := '641010'; + IdFTP1.Connect(); + except + ; + end; + + if IdFTP1.Connected then + begin + try + IdFTP1.Get('TP\'+ Trim(fileName), sFieldName,false, true); + except + Application.MessageBox('ͻͼļ', 'ʾ', MB_ICONWARNING); + IdFTP1.Quit; + Exit; + end; + end + else + begin + Application.MessageBox('޷ļ', 'ʾ', MB_ICONWARNING); + IdFTP1.Quit; + Exit; + end; + if IdFTP1.Connected then IdFTP1.Quit; + ShellExecute(Handle, 'open',PChar(sFieldName),'', '', SW_SHOWNORMAL); } +end; + +procedure TfrmZdyAttachmentBJ_Edit.FileNameClick(Sender: TObject); +begin + {IF trim(custNo.Text)='' then + begin + application.MessageBox('ƷŲΪգ','ʾϢ',MB_ICONERROR); + exit; + end; + + try + FormGetPic := TFormGetPic.Create(Application); + with FormGetPic do + begin + fkeyNO:=trim(zdyCode.Text); + pat1:=TCXbutton(Sender).Name; + pic1:=TCXbutton(Sender).Hint; + FTFType:='Ʒ'; + // pat1:='PatFile1'; +// pic1:='Picture1'; + IF ShowModal = 1 then + begin + // self.Timage(Tbutton(Sender).Hint).Picture.Assign(FormGetPic.Image2.Picture.Bitmap); + zdycode.Enabled:=false; + end; + + Release; + end; + Initimage(); + except + if FormGetPic<>nil then FormGetPic.Release; + end;} +end; + +procedure TfrmZdyAttachmentBJ_Edit.MTypeBtnDnClick(Sender: TObject); +begin + TBtnEditC(Sender).Text := ''; + TBtnEditC(Sender).TxtCode := ''; +end; + +procedure TfrmZdyAttachmentBJ_Edit.ToolButton2Click(Sender: TObject); +begin + if CDS1.IsEmpty then + exit; + CDS1.Delete; +end; + +procedure TfrmZdyAttachmentBJ_Edit.ToolButton1Click(Sender: TObject); +begin + with cds1 do + begin + edit; + post; + end; +// cds1.Append; +// cds1.Post; +end; + +procedure TfrmZdyAttachmentBJ_Edit.V1Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + frmZdyAttachCP10_help := TfrmZdyAttachCP10_help.create(self); + with frmZdyAttachCP10_help do + begin + if showmodal = 1 then + begin + cds1.Edit; + cds1.FieldByName('P_Code').Value := trim(cds_hz.fieldbyname('zdyCode').AsString); + cds1.FieldByName('P_CodeName').Value := trim(cds_hz.fieldbyname('zdyName').AsString); + cds1.FieldByName('P_Spec').Value := trim(cds_hz.fieldbyname('defstr1').AsString); + cds1.Post; + end; + free; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmZdyAttachmentBJ_Edit.custNoBtnClick(Sender: TObject); +begin + frmZdyAttachment_Help := TfrmZdyAttachment_Help.create(self); + with frmZdyAttachment_Help do + begin + if showmodal = 1 then + begin + custNo.Text := trim(cds_hz.fieldbyname('zdyCode').AsString); + custName.Text := trim(cds_hz.fieldbyname('zdyName').AsString); + custCountry.Text := trim(cds_hz.fieldbyname('DEFStr7').AsString); + custphone.Text := trim(cds_hz.fieldbyname('DEFstr1').AsString); + end; + free; + end; +end; + +procedure TfrmZdyAttachmentBJ_Edit.TV1Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + frmZdyCMZ_sel := TfrmZdyCMZ_sel.create(self); + with frmZdyCMZ_sel do + begin + if showmodal = 1 then + begin + with CDS1 do + begin + Edit; + FieldByName('P_chima').value := CDS_HZ.fieldbyname('CodeName').AsString; + Post; + end; + end; + free; + end; +end; + +procedure TfrmZdyAttachmentBJ_Edit.TV1Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + frmZdyYS_sel := TfrmZdyYS_sel.create(self); + with frmZdyYS_sel do + begin + if showmodal = 1 then + begin + with CDS1 do + begin + Edit; + FieldByName('P_yanse').value := CDS_HZ.fieldbyname('CodeName').AsString; + Post; + end; + end; + free; + end; +end; + +procedure TfrmZdyAttachmentBJ_Edit.TV1Column4PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + FormGetPic := TFormGetPic.create(self); + with FormGetPic do + begin +// fFlileFlag:=self.fFlileFlag; +// fFlileFlag := UserDataFlag + 'Ʒ'; + fkeyNo := CDS1.fieldbyname('HXPic').asstring; + pat1 := 'FileName'; + pic1 := 'FilesOther'; + FTFType := ''; + if showmodal = 1 then + begin + Self.cds1.edit; + Self.cds1.fieldbyname('HXPic').Value := trim(fkeyNo); + end; + free; + end; +end; + +end. + diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachment_Help.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyAttachment_Help.dfm new file mode 100644 index 0000000..f3c25ac --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachment_Help.dfm @@ -0,0 +1,423 @@ +object frmZdyAttachment_Help: TfrmZdyAttachment_Help + Left = 181 + Top = 134 + Width = 1324 + Height = 584 + Caption = #23458#25143#36164#26009#20449#24687 + 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 + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1308 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + OnClick = TBDelClick + end + object TBuser: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #25351#23450#25805#20316#21592 + ImageIndex = 97 + Visible = False + OnClick = TBuserClick + end + object ToolButton1: TToolButton + Left = 414 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 477 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1308 + Height = 38 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 306 + Top = 13 + Width = 48 + Height = 12 + Caption = #23458#25143#21517#31216 + end + object Label1: TLabel + Left = 22 + Top = 49 + Width = 48 + Height = 12 + Caption = #23458#25143#32534#21495 + end + object Label2: TLabel + Left = 482 + Top = 13 + Width = 36 + Height = 12 + Caption = #19994#21153#21592 + end + object Label4: TLabel + Left = 654 + Top = 13 + Width = 24 + Height = 12 + Caption = #22320#21306 + end + object Label5: TLabel + Left = 28 + Top = 12 + Width = 48 + Height = 12 + Caption = #30331#35760#26085#26399 + end + object Label6: TLabel + Left = 184 + Top = 12 + Width = 6 + Height = 12 + Caption = '-' + end + object ZdyName: TEdit + Tag = 2 + Left = 354 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 70 + Top = 45 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object Filler: TEdit + Tag = 2 + Left = 520 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 2 + OnChange = ZdyNameChange + end + object DEFStr7: TEdit + Tag = 2 + Left = 684 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 3 + OnChange = ZdyNameChange + end + object begdate: TDateTimePicker + Left = 80 + Top = 8 + Width = 100 + Height = 20 + Date = 42391.664898645830000000 + Time = 42391.664898645830000000 + ShowCheckbox = True + TabOrder = 4 + end + object enddate: TDateTimePicker + Left = 192 + Top = 8 + Width = 100 + Height = 20 + Date = 42391.664898645830000000 + Time = 42391.664898645830000000 + ShowCheckbox = True + TabOrder = 5 + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 69 + Width = 1308 + Height = 476 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object v2Column2: TcxGridDBColumn + Caption = #23458#25143#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 82 + end + object v2Column6: TcxGridDBColumn + Caption = #23458#25143#21517#31216 + DataBinding.FieldName = 'ZdyName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 127 + end + object v2Column15: TcxGridDBColumn + Caption = #23458#25143#31616#31216 + DataBinding.FieldName = 'zdyNameZ' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column10: TcxGridDBColumn + Caption = #23458#25143#32852#31995#20154 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Width = 71 + end + object v2Column11: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'DEFStr6' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2DEFStr7: TcxGridDBColumn + Caption = #22320#21306 + DataBinding.FieldName = 'DEFStr7' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column3: TcxGridDBColumn + Caption = #32852#31995#30005#35805 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 71 + end + object v2Column5: TcxGridDBColumn + Caption = #20256#30495 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2Column7: TcxGridDBColumn + Caption = #20844#21496#22320#22336 + DataBinding.FieldName = 'DEFNote1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 67 + end + object v2Column8: TcxGridDBColumn + Caption = #21457#36135#22320#22336 + DataBinding.FieldName = 'DEFNote2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column9: TcxGridDBColumn + Caption = #32852#31995#20154 + DataBinding.FieldName = 'DEFstr4' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v2Column14: TcxGridDBColumn + Caption = #27424#27454#39069#24230 + DataBinding.FieldName = 'DefFlt1' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column16: TcxGridDBColumn + Caption = #23458#25143#26469#28304 + DataBinding.FieldName = 'DEFstr9' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 165 + end + object v2Column12: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column13: TcxGridDBColumn + Caption = #30331#35760#26085#26399 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Width = 70 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyAttachment_Help.pas b/基础资料维护(BaseInfo.dll)/U_ZdyAttachment_Help.pas new file mode 100644 index 0000000..7c76c1b --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyAttachment_Help.pas @@ -0,0 +1,290 @@ +unit U_ZdyAttachment_Help; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDBLookupComboBox, cxLookAndFeels, + cxLookAndFeelPainters, cxNavigator; + +type + TfrmZdyAttachment_Help = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + v2Column10: TcxGridDBColumn; + ToolButton4: TToolButton; + Label2: TLabel; + Filler: TEdit; + v2Column11: TcxGridDBColumn; + v2DEFStr7: TcxGridDBColumn; + v2Column12: TcxGridDBColumn; + v2Column13: TcxGridDBColumn; + v2Column14: TcxGridDBColumn; + DEFStr7: TEdit; + Label4: TLabel; + v2Column15: TcxGridDBColumn; + v2Column16: TcxGridDBColumn; + TBuser: TToolButton; + Label5: TLabel; + begdate: TDateTimePicker; + Label6: TLabel; + enddate: TDateTimePicker; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure TBuserClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + + { Private declarations } + procedure InitGrid(); + + public + fkhType:string; + Fmanage:string; + end; + +var + frmZdyAttachment_Help: TfrmZdyAttachment_Help; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp,U_ZdyAttInput,U_ZdyInput; + +{$R *.dfm} + + + +procedure TfrmZdyAttachment_Help.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where Type=''KHName'' '); + IF begdate.Checked then + sql.Add(' and FillTime>='''+formatdateTime('yyyy-MM-dd',begdate.DateTime)+''''); + IF enddate.Checked then + sql.Add(' and FillTime<'''+formatdateTime('yyyy-MM-dd',enddate.DateTime+1)+''''); + // sql.Add(' and isnull(khType,'''')='+quotedstr(trim(fkhType))); + IF trim(Fmanage)='ҵԱ'then + sql.Add(' and Filler='+quotedstr(trim(DName))); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmZdyAttachment_Help.FormDestroy(Sender: TObject); +begin + frmZdyAttachment_Help:=nil; +end; + +procedure TfrmZdyAttachment_Help.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttachment_Help.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption,Tv2,'ͻԶ'); + Close; +end; +procedure TfrmZdyAttachment_Help.TBDelClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + sql.Add('delete KH_Zdy where ZdyNo='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmZdyAttachment_Help.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption,Tv2,'ͻԶ'); + InitGrid(); + IF trim(Fmanage)='ҵԱ'then + TBuser.Visible:=false; +end; + +procedure TfrmZdyAttachment_Help.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachment_Help.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmZdyAttachment_Help.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachment_Help.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid2); + // SelExportData(Tv2,ADOQueryMain,'ͻб'); +end; + +procedure TfrmZdyAttachment_Help.ToolButton4Click(Sender: TObject); +begin + IF CDS_HZ.IsEmpty then exit; + try + frmZdyAttInput:=TfrmZdyAttInput.Create(Application); + with frmZdyAttInput do + begin + FCYID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + fkhType:=self.fkhType; + IF trim(Fmanage)='ҵԱ'then + begin + v2Column6.Options.Editing:=false; + v2Column14.Options.Editing:=false; + end; + if ShowModal=1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInput.Free; + end; +end; + +procedure TfrmZdyAttachment_Help.ToolButton3Click(Sender: TObject); +begin + try + frmZdyAttInput:=TfrmZdyAttInput.Create(Application); + with frmZdyAttInput do + begin + fkhType:=self.fkhType; + FCYID:=''; + if ShowModal=1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInput.Free; + end; +end; + +procedure TfrmZdyAttachment_Help.TBuserClick(Sender: TObject); +var + FuserName:string; +begin + IF CDS_HZ.IsEmpty then exit; + frmZDYHelp:=TfrmZDYHelp.Create(self); + with frmZDYHelp do + begin + flag:='UserName'; + FlagName:='Ա'; + IF showmodal=1 then + begin + FuserName:=ClientDataSet1.fieldbyname('zdyName').AsString; + end; + free; + end; + IF trim(FuserName)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('update KH_Zdy_Attachment SET filler='''+trim(FuserName)+''' where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + ExecSQL; + end; + TBRafresh.Click; + end; +end; + +procedure TfrmZdyAttachment_Help.FormCreate(Sender: TObject); +begin + enddate.Date:=date(); + begdate.Date:=strtodate(formatdateTime('yyyy-MM',enddate.Date)+'-01'); +end; + +procedure TfrmZdyAttachment_Help.Tv2CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + IF cds_hz.IsEmpty then exit; + self.ModalResult:=1; +end; + +end. + + diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyCMZ_Sel.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyCMZ_Sel.dfm new file mode 100644 index 0000000..000c13e --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyCMZ_Sel.dfm @@ -0,0 +1,302 @@ +object frmZdyCMZ_Sel: TfrmZdyCMZ_Sel + Left = 340 + Top = 131 + Width = 813 + Height = 662 + Caption = #23610#30721#32452 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Panel2: TPanel + Left = 383 + Top = 31 + Width = 414 + Height = 592 + Align = alRight + Caption = 'Panel2' + TabOrder = 0 + object cxGrid1: TcxGrid + Left = 1 + Top = 1 + Width = 412 + Height = 590 + Align = alClient + TabOrder = 0 + object TV1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DSsub + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object TV1Column1: TcxGridDBColumn + OnGetDisplayText = TV1Column1GetDisplayText + HeaderAlignmentHorz = taCenter + MinWidth = 30 + Options.Editing = False + Options.Focusing = False + Options.GroupFooters = False + Options.Grouping = False + Options.HorzSizing = False + Width = 30 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #23610#30721'/'#35268#26684 + DataBinding.FieldName = 'SizeSpec' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 101 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 101 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #20851#32852#35268#26684 + DataBinding.FieldName = 'assSpec' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 77 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TV1 + end + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 383 + Height = 592 + Align = alClient + Caption = 'Panel1' + TabOrder = 1 + object cxGrid2: TcxGrid + Left = 1 + Top = 1 + Width = 381 + Height = 590 + Align = alClient + TabOrder = 0 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + OnFocusedRecordChanged = Tv2FocusedRecordChanged + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object v2Column2: TcxGridDBColumn + Caption = #32534#21495 + DataBinding.FieldName = 'Code' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 80 + end + object v2Column6: TcxGridDBColumn + Caption = #23610#30721'/'#35268#26684#32452#21517#31216 + DataBinding.FieldName = 'CodeName' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 124 + end + object v2Column14: TcxGridDBColumn + Caption = #25551#36848 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 147 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 797 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 2 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + Visible = False + OnClick = TBRafreshClick + end + object ToolButton1: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 41 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 357 + Top = 73 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 401 + Top = 145 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 125 + Top = 169 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 320 + Top = 148 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 160 + Top = 176 + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 356 + Top = 164 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 247 + Top = 171 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 204 + Top = 172 + end + object DSsub: TDataSource + DataSet = CDSsub + Left = 512 + Top = 272 + end + object CDSsub: TClientDataSet + Aggregates = <> + Params = <> + Left = 540 + Top = 268 + end + object ADOQuerysub: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 484 + Top = 276 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyCMZ_Sel.pas b/基础资料维护(BaseInfo.dll)/U_ZdyCMZ_Sel.pas new file mode 100644 index 0000000..096d0e2 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyCMZ_Sel.pas @@ -0,0 +1,276 @@ +unit U_ZdyCMZ_Sel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls, + cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, + cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; + +type + TfrmZdyCMZ_Sel = class(TForm) + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + DSsub: TDataSource; + CDSsub: TClientDataSet; + ADOQuerysub: TADOQuery; + Panel2: TPanel; + cxGrid1: TcxGrid; + TV1: TcxGridDBTableView; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + Panel1: TPanel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column2: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v2Column14: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + TV1Column1: TcxGridDBColumn; + ToolButton1: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure TV1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); + procedure Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure v2Column6PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn2PropertiesEditValueChanged(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + procedure InitSub(); + public + fDEFstr5: string; + end; + +var + frmZdyCMZ_Sel: TfrmZdyCMZ_Sel; + +implementation + +uses + U_DataLink, U_Fun, U_ZDYHelp, U_ZdyAttInputGYS, U_ZdyAttachCP10_help; + +{$R *.dfm} + +procedure TfrmZdyCMZ_Sel.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + SQL.Clear; + sql.Add(' select mainid=cast(mainid as varchar(30)),* from CP_CMYS where Type='''' '); + Open; + end; + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmZdyCMZ_Sel.InitSub(); +begin + with ADOQuerysub do + begin + Close; + SQL.Clear; + sql.Add(' select subid=cast(subid as varchar(30)),* from CP_CMYS_Sub where Mainid=''' + cds_hz.fieldbyname('Mainid').AsString + ''' '); +// ShowMessage(sql.Text); + Open; + end; + SCreateCDS20(ADOQuerysub, CDSsub); + SInitCDSData20(ADOQuerysub, CDSsub); +end; + +procedure TfrmZdyCMZ_Sel.FormDestroy(Sender: TObject); +begin + frmZdyCMZ_Sel := nil; +end; + +procedure TfrmZdyCMZ_Sel.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmZdyCMZ_Sel.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption, Tv2, 'ͻԶ'); + Close; +end; + +procedure TfrmZdyCMZ_Sel.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption, Tv2, 'ͻԶ'); + + InitGrid(); +end; + +procedure TfrmZdyCMZ_Sel.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyCMZ_Sel.Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + if cds_hz.IsEmpty then + exit; + self.ModalResult := 1; +end; + +procedure TfrmZdyCMZ_Sel.TV1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); +begin + AText := IntToStr(ARecord.Index + 1); +end; + +procedure TfrmZdyCMZ_Sel.Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + initsub(); +end; + +procedure TfrmZdyCMZ_Sel.ToolButton1Click(Sender: TObject); +begin + if cds_hz.IsEmpty then + exit; + self.ModalResult := 1; +end; + +procedure TfrmZdyCMZ_Sel.ToolButton3Click(Sender: TObject); +var + FMainid: string; +begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from CP_CMYS_Sub where 1<>1'); + Open; + + Append; + fieldbyname('Mainid').Value := CDS_HZ.fieldbyname('Mainid').AsString; + Post; + end; + + InitSub(); +end; + +procedure TfrmZdyCMZ_Sel.ToolButton2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CP_CMYS where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + sql.Add('delete CP_CMYS_Sub where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; + CDS_HZ.Delete; +end; + +procedure TfrmZdyCMZ_Sel.ToolButton4Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CP_CMYS_Sub where Subid=''' + Trim(CDSsub.fieldbyname('Subid').AsString) + ''''); + ExecSQL; + end; + CDSsub.Delete; +end; + +procedure TfrmZdyCMZ_Sel.v2Column6PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := ''; + end; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate CP_CMYS '); + sql.Add(' Set ' + FFieldName + '=' + Trim(mvalue)); + SQL.Add(' where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; +end; + +procedure TfrmZdyCMZ_Sel.cxGridDBColumn2PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := ''; + end; + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDSsub do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate CP_CMYS_sub '); + sql.Add(' Set ' + FFieldName + '=' + Trim(mvalue)); + SQL.Add(' where Subid=''' + Trim(CDSsub.fieldbyname('subid').AsString) + ''''); +// ShowMessage(sql.text); + ExecSQL; + end; +end; + +end. + diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyCMZ_help.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyCMZ_help.dfm new file mode 100644 index 0000000..989c8f4 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyCMZ_help.dfm @@ -0,0 +1,337 @@ +object frmZdyCMZ_help: TfrmZdyCMZ_help + Left = 340 + Top = 131 + Width = 813 + Height = 662 + Caption = #23610#30721#32452 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Panel2: TPanel + Left = 383 + Top = 31 + Width = 414 + Height = 592 + Align = alRight + Caption = 'Panel2' + TabOrder = 0 + object cxGrid1: TcxGrid + Left = 1 + Top = 32 + Width = 412 + Height = 559 + Align = alClient + TabOrder = 0 + object TV1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DSsub + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object TV1Column1: TcxGridDBColumn + OnGetDisplayText = TV1Column1GetDisplayText + HeaderAlignmentHorz = taCenter + MinWidth = 30 + Options.Editing = False + Options.Focusing = False + Options.GroupFooters = False + Options.Grouping = False + Options.HorzSizing = False + Width = 30 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #23610#30721'/'#35268#26684 + DataBinding.FieldName = 'SizeSpec' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 101 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 101 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #20851#32852#35268#26684 + DataBinding.FieldName = 'assSpec' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 77 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TV1 + end + end + object ToolBar2: TToolBar + Left = 1 + Top = 1 + Width = 412 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 1 + object ToolButton3: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton4Click + end + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 383 + Height = 592 + Align = alClient + Caption = 'Panel1' + TabOrder = 1 + object cxGrid2: TcxGrid + Left = 1 + Top = 1 + Width = 381 + Height = 590 + Align = alClient + TabOrder = 0 + object Tv2: TcxGridDBTableView + OnDblClick = Tv2DblClick + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnFocusedRecordChanged = Tv2FocusedRecordChanged + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object v2Column2: TcxGridDBColumn + Caption = #32534#21495 + DataBinding.FieldName = 'Code' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 80 + end + object v2Column6: TcxGridDBColumn + Caption = #23610#30721'/'#35268#26684#32452#21517#31216 + DataBinding.FieldName = 'CodeName' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 124 + end + object v2Column14: TcxGridDBColumn + Caption = #25551#36848 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 147 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 797 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 2 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + Visible = False + OnClick = TBRafreshClick + end + object ToolButton1: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #26032#22686#23610#30721#32452 + ImageIndex = 10 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 162 + Top = 0 + AutoSize = True + Caption = #21024#38500#23610#30721#32452 + ImageIndex = 100 + OnClick = ToolButton2Click + end + object TBClose: TToolButton + Left = 261 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 357 + Top = 73 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 401 + Top = 145 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 125 + Top = 169 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 320 + Top = 148 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 160 + Top = 176 + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 356 + Top = 164 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 247 + Top = 171 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 204 + Top = 172 + end + object DSsub: TDataSource + DataSet = CDSsub + Left = 512 + Top = 272 + end + object CDSsub: TClientDataSet + Aggregates = <> + Params = <> + Left = 540 + Top = 268 + end + object ADOQuerysub: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 484 + Top = 276 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyCMZ_help.pas b/基础资料维护(BaseInfo.dll)/U_ZdyCMZ_help.pas new file mode 100644 index 0000000..091b96b --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyCMZ_help.pas @@ -0,0 +1,319 @@ +unit U_ZdyCMZ_help; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls, + cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, + cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, 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 + TfrmZdyCMZ_help = class(TForm) + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + DSsub: TDataSource; + CDSsub: TClientDataSet; + ADOQuerysub: TADOQuery; + Panel2: TPanel; + cxGrid1: TcxGrid; + TV1: TcxGridDBTableView; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + ToolBar2: TToolBar; + ToolButton3: TToolButton; + ToolButton4: TToolButton; + Panel1: TPanel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column2: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v2Column14: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + ToolButton1: TToolButton; + TV1Column1: TcxGridDBColumn; + ToolButton2: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure TV1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); + procedure Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure v2Column6PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn2PropertiesEditValueChanged(Sender: TObject); + procedure Tv2DblClick(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + procedure InitSub(); + public + fDEFstr5: string; + end; + +var + frmZdyCMZ_help: TfrmZdyCMZ_help; + +implementation + +uses + U_DataLink, U_Fun, U_ZDYHelp, U_ZdyAttInputGYS, U_ZdyAttachCP10_help; + +{$R *.dfm} + +procedure TfrmZdyCMZ_help.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + SQL.Clear; + sql.Add(' select mainid=cast(mainid as varchar(30)),* from CP_CMYS where Type='''' '); + Open; + end; + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmZdyCMZ_help.InitSub(); +begin + with ADOQuerysub do + begin + Close; + SQL.Clear; + sql.Add(' select subid=cast(subid as varchar(30)),* from CP_CMYS_Sub where Mainid=''' + cds_hz.fieldbyname('Mainid').AsString + ''' '); +// ShowMessage(sql.Text); + Open; + end; + SCreateCDS20(ADOQuerysub, CDSsub); + SInitCDSData20(ADOQuerysub, CDSsub); +end; + +procedure TfrmZdyCMZ_help.FormDestroy(Sender: TObject); +begin + frmZdyCMZ_help := nil; +end; + +procedure TfrmZdyCMZ_help.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmZdyCMZ_help.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption, Tv2, 'ͻԶ'); + Close; +end; + +procedure TfrmZdyCMZ_help.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption, Tv2, 'ͻԶ'); + + InitGrid(); +end; + +procedure TfrmZdyCMZ_help.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyCMZ_help.Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + if cds_hz.IsEmpty then + exit; + self.ModalResult := 1; +end; + +procedure TfrmZdyCMZ_help.TV1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); +begin + AText := IntToStr(ARecord.Index + 1); +end; + +procedure TfrmZdyCMZ_help.Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + initsub(); +end; + +procedure TfrmZdyCMZ_help.ToolButton1Click(Sender: TObject); +var + FMainid: string; +begin + if GetLSNo(ADOQueryCmd, FMainid, 'CM', 'CP_CMYS', 3) = False then + begin + Application.MessageBox('ȡʧܣ', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from CP_CMYS where 1<>1'); + Open; + + Append; + fieldbyname('Code').Value := FMainid; + FieldByName('Type').value := ''; + Post; + end; + + InitGrid(); +end; + +procedure TfrmZdyCMZ_help.ToolButton3Click(Sender: TObject); +var + FMainid: string; +begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from CP_CMYS_Sub where 1<>1'); + Open; + + Append; + fieldbyname('Mainid').Value := CDS_HZ.fieldbyname('Mainid').AsString; + Post; + end; + + InitSub(); +end; + +procedure TfrmZdyCMZ_help.ToolButton2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CP_CMYS where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + sql.Add('delete CP_CMYS_Sub where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; + CDS_HZ.Delete; +end; + +procedure TfrmZdyCMZ_help.ToolButton4Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CP_CMYS_Sub where Subid=''' + Trim(CDSsub.fieldbyname('Subid').AsString) + ''''); + ExecSQL; + end; + CDSsub.Delete; +end; + +procedure TfrmZdyCMZ_help.v2Column6PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := ''; + end; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate CP_CMYS '); + sql.Add(' Set ' + FFieldName + '=''' + Trim(mvalue) + ''''); + SQL.Add(' where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; +end; + +procedure TfrmZdyCMZ_help.cxGridDBColumn2PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := ''; + end; + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDSsub do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate CP_CMYS_sub '); + sql.Add(' Set ' + FFieldName + '=''' + Trim(mvalue) + ''''); + SQL.Add(' where Subid=''' + Trim(CDSsub.fieldbyname('subid').AsString) + ''''); +// ShowMessage(sql.text); + ExecSQL; + end; +end; + +procedure TfrmZdyCMZ_help.Tv2DblClick(Sender: TObject); +begin + ModalResult:=1; +end; + +end. + diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyInput.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyInput.dfm new file mode 100644 index 0000000..fdd877e --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyInput.dfm @@ -0,0 +1,17 @@ +object frmZdyInput: TfrmZdyInput + Left = 165 + Top = 188 + Width = 870 + Height = 500 + Caption = #23458#25143#36164#26009#24405#20837 + Color = clBtnFace + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + OldCreateOrder = False + OnDestroy = FormDestroy + PixelsPerInch = 96 + TextHeight = 13 +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyInput.pas b/基础资料维护(BaseInfo.dll)/U_ZdyInput.pas new file mode 100644 index 0000000..5bc42df --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyInput.pas @@ -0,0 +1,30 @@ +unit U_ZdyInput; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs; + +type + TfrmZdyInput = class(TForm) + procedure FormDestroy(Sender: TObject); + private + { Private declarations } + public + { Public declarations } + end; + +var + frmZdyInput: TfrmZdyInput; + +implementation + +{$R *.dfm} + +procedure TfrmZdyInput.FormDestroy(Sender: TObject); +begin + frmZdyInput:=nil; +end; + +end. diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyYS_Sel.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyYS_Sel.dfm new file mode 100644 index 0000000..ac18e20 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyYS_Sel.dfm @@ -0,0 +1,263 @@ +object frmZdyYS_Sel: TfrmZdyYS_Sel + Left = 697 + Top = 264 + Width = 813 + Height = 662 + Caption = #39068#33394 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 797 + Height = 592 + Align = alClient + Caption = 'Panel1' + TabOrder = 0 + object cxGrid2: TcxGrid + Left = 1 + Top = 40 + Width = 795 + Height = 551 + Align = alClient + TabOrder = 0 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + OnFocusedRecordChanged = Tv2FocusedRecordChanged + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object Tv2Column1: TcxGridDBColumn + OnGetDisplayText = Tv2Column1GetDisplayText + MinWidth = 30 + Options.HorzSizing = False + Width = 30 + IsCaptionAssigned = True + end + object v2Column2: TcxGridDBColumn + Caption = #39068#33394#20195#21495 + DataBinding.FieldName = 'Code' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 80 + end + object v2Column6: TcxGridDBColumn + Caption = #39068#33394#21517#31216 + DataBinding.FieldName = 'CodeName' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 200 + end + object v2Column14: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 147 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object Panel2: TPanel + Left = 1 + Top = 1 + Width = 795 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 231 + Top = 13 + Width = 48 + Height = 12 + Caption = #39068#33394#21517#31216 + end + object Label1: TLabel + Left = 34 + Top = 13 + Width = 48 + Height = 12 + Caption = #39068#33394#20195#21495 + end + object CodeName: TEdit + Tag = 2 + Left = 281 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 0 + OnChange = CodeNameChange + end + object Code: TEdit + Tag = 2 + Left = 83 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 1 + OnChange = CodeChange + end + end + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 797 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 1 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + Visible = False + OnClick = TBRafreshClick + end + object ToolButton1: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 41 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 357 + Top = 73 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 401 + Top = 145 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 125 + Top = 169 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 320 + Top = 148 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 160 + Top = 176 + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 356 + Top = 164 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 247 + Top = 171 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 204 + Top = 172 + end + object DSsub: TDataSource + DataSet = CDSsub + Left = 512 + Top = 272 + end + object CDSsub: TClientDataSet + Aggregates = <> + Params = <> + Left = 540 + Top = 268 + end + object ADOQuerysub: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 484 + Top = 276 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyYS_Sel.pas b/基础资料维护(BaseInfo.dll)/U_ZdyYS_Sel.pas new file mode 100644 index 0000000..7e1d433 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyYS_Sel.pas @@ -0,0 +1,272 @@ +unit U_ZdyYS_Sel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls, + cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, + cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; + +type + TfrmZdyYS_Sel = class(TForm) + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + DSsub: TDataSource; + CDSsub: TClientDataSet; + ADOQuerysub: TADOQuery; + Panel1: TPanel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column2: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v2Column14: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + Tv2Column1: TcxGridDBColumn; + ToolButton1: TToolButton; + Panel2: TPanel; + Label3: TLabel; + Label1: TLabel; + CodeName: TEdit; + Code: TEdit; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure TV1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); + procedure Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure v2Column6PropertiesEditValueChanged(Sender: TObject); + procedure Tv2Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); + procedure CodeChange(Sender: TObject); + procedure CodeNameChange(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + procedure InitSub(); + public + fDEFstr5: string; + end; + +var + frmZdyYS_Sel: TfrmZdyYS_Sel; + +implementation + +uses + U_DataLink, U_Fun, U_ZDYHelp, U_ZdyAttInputGYS, U_ZdyAttachCP10_help; + +{$R *.dfm} + +procedure TfrmZdyYS_Sel.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + SQL.Clear; + sql.Add(' select mainid=cast(mainid as varchar(30)),* from CP_CMYS where Type=''ɫ'' '); + Open; + end; + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmZdyYS_Sel.InitSub(); +begin + with ADOQuerysub do + begin + Close; + SQL.Clear; + sql.Add(' select subid=cast(subid as varchar(30)),* from CP_CMYS_Sub where Mainid=''' + cds_hz.fieldbyname('Mainid').AsString + ''' '); +// ShowMessage(sql.Text); + Open; + end; + SCreateCDS20(ADOQuerysub, CDSsub); + SInitCDSData20(ADOQuerysub, CDSsub); +end; + +procedure TfrmZdyYS_Sel.FormDestroy(Sender: TObject); +begin + frmZdyYS_Sel := nil; +end; + +procedure TfrmZdyYS_Sel.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmZdyYS_Sel.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption, Tv2, 'ͻԶ'); + Close; +end; + +procedure TfrmZdyYS_Sel.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption, Tv2, 'ͻԶ'); + + InitGrid(); +end; + +procedure TfrmZdyYS_Sel.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyYS_Sel.Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + if cds_hz.IsEmpty then + exit; + self.ModalResult := 1; +end; + +procedure TfrmZdyYS_Sel.TV1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); +begin + AText := IntToStr(ARecord.Index + 1); +end; + +procedure TfrmZdyYS_Sel.Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + initsub(); +end; + +procedure TfrmZdyYS_Sel.ToolButton1Click(Sender: TObject); +begin + if cds_hz.IsEmpty then + exit; + self.ModalResult := 1; +end; + +procedure TfrmZdyYS_Sel.ToolButton3Click(Sender: TObject); +var + FMainid: string; +begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from CP_CMYS_Sub where 1<>1'); + Open; + + Append; + fieldbyname('Mainid').Value := CDS_HZ.fieldbyname('Mainid').AsString; + Post; + end; + + InitSub(); +end; + +procedure TfrmZdyYS_Sel.ToolButton2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾɫ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CP_CMYS where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; + CDS_HZ.Delete; +end; + +procedure TfrmZdyYS_Sel.ToolButton4Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CP_CMYS_Sub where Subid=''' + Trim(CDSsub.fieldbyname('Subid').AsString) + ''''); + ExecSQL; + end; + CDSsub.Delete; +end; + +procedure TfrmZdyYS_Sel.v2Column6PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := ''; + end; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate CP_CMYS '); + sql.Add(' Set ' + FFieldName + '=' + Trim(mvalue)); + SQL.Add(' where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; +end; + +procedure TfrmZdyYS_Sel.Tv2Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); +begin + AText := IntToStr(ARecord.Index + 1) +end; + +procedure TfrmZdyYS_Sel.CodeChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel2, 1, 2)); + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + end; +end; + +procedure TfrmZdyYS_Sel.CodeNameChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel2, 1, 2)); + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + end; +end; + +end. + diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyYS_help.dfm b/基础资料维护(BaseInfo.dll)/U_ZdyYS_help.dfm new file mode 100644 index 0000000..bf5f181 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyYS_help.dfm @@ -0,0 +1,423 @@ +object frmZdyYS_help: TfrmZdyYS_help + Left = 794 + Top = 277 + Width = 813 + Height = 662 + Caption = #39068#33394 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Panel1: TPanel + Left = 0 + Top = 0 + Width = 797 + Height = 623 + Align = alClient + Caption = 'Panel1' + TabOrder = 0 + end + object PageControl1: TPageControl + Left = 0 + Top = 0 + Width = 797 + Height = 623 + ActivePage = TabSheet1 + Align = alClient + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 1 + OnChange = PageControl1Change + object TabSheet1: TTabSheet + Caption = #34920#26684#26174#31034 + object cxGrid2: TcxGrid + Left = 0 + Top = 31 + Width = 789 + Height = 561 + Align = alClient + TabOrder = 0 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnFocusedRecordChanged = Tv2FocusedRecordChanged + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object Tv2Column1: TcxGridDBColumn + OnGetDisplayText = Tv2Column1GetDisplayText + MinWidth = 30 + Options.HorzSizing = False + Width = 30 + end + object v2Column2: TcxGridDBColumn + Caption = #39068#33394#20195#21495 + DataBinding.FieldName = 'Code' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 80 + end + object v2Column6: TcxGridDBColumn + Caption = #39068#33394#21517#31216 + DataBinding.FieldName = 'CodeName' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 200 + end + object Tv2Column2: TcxGridDBColumn + Caption = #39068#33394#21517#31216#33521#25991 + DataBinding.FieldName = 'CodeNameYW' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = Tv2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 100 + end + object v2Column14: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 147 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 789 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 67 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 1 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + Visible = False + OnClick = TBRafreshClick + end + object ToolButton1: TToolButton + Left = 71 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 10 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 142 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 100 + OnClick = ToolButton2Click + end + object TBClose: TToolButton + Left = 213 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + end + object TabSheet2: TTabSheet + Caption = #26641#24418#26174#31034 + ImageIndex = 1 + object Panel2: TPanel + Left = 270 + Top = 54 + Width = 315 + Height = 171 + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 0 + object Label1: TLabel + Left = 66 + Top = 24 + Width = 64 + Height = 16 + Caption = #29238' '#31867 + end + object Label2: TLabel + Left = 66 + Top = 65 + Width = 64 + Height = 16 + Caption = #31867#21035#21517#31216 + end + object Label3: TLabel + Left = 66 + Top = 132 + Width = 64 + Height = 16 + Caption = #31867#21035#32534#30721 + end + object Label4: TLabel + Left = 36 + Top = 99 + Width = 96 + Height = 16 + Caption = #39068#33394#33521#25991#21517#31216 + end + object CPTopName: TEdit + Left = 133 + Top = 21 + Width = 121 + Height = 24 + ReadOnly = True + TabOrder = 0 + end + object CPName: TEdit + Left = 133 + Top = 61 + Width = 121 + Height = 24 + TabOrder = 1 + end + object CPNo: TEdit + Left = 133 + Top = 128 + Width = 121 + Height = 24 + TabOrder = 2 + end + object CPNameYW: TEdit + Left = 134 + Top = 95 + Width = 121 + Height = 24 + TabOrder = 3 + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 0 + Width = 789 + Height = 33 + ButtonHeight = 30 + ButtonWidth = 99 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 1 + object ToolButton3: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = ToolButton3Click + end + object TBAdd: TToolButton + Left = 71 + Top = 0 + AutoSize = True + Caption = #26032#22686#23376#31867 + ImageIndex = 3 + OnClick = TBAddClick + end + object ToolButton4: TToolButton + Left = 174 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 245 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton5: TToolButton + Left = 316 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxDBTreeList1: TcxDBTreeList + Left = 0 + Top = 33 + Width = 249 + Height = 559 + Align = alLeft + Bands = < + item + end> + DataController.DataSource = DataSource1 + DataController.ParentField = 'CPParent' + DataController.KeyField = 'Mainid' + Navigator.Buttons.CustomButtons = <> + OptionsBehavior.ExpandOnDblClick = False + OptionsSelection.CellSelect = False + OptionsView.CellAutoHeight = True + OptionsView.Headers = False + RootValue = -1 + TabOrder = 2 + OnClick = cxDBTreeList1Change + object cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn + DataBinding.FieldName = 'CodeName' + Width = 210 + Position.ColIndex = 0 + Position.RowIndex = 0 + Position.BandIndex = 0 + Summary.FooterSummaryItems = <> + Summary.GroupFooterSummaryItems = <> + end + end + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 357 + Top = 73 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 385 + Top = 233 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 125 + Top = 169 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 300 + Top = 228 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 160 + Top = 176 + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 340 + Top = 232 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 247 + Top = 171 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 204 + Top = 172 + end + object DSsub: TDataSource + DataSet = CDSsub + Left = 512 + Top = 272 + end + object CDSsub: TClientDataSet + Aggregates = <> + Params = <> + Left = 540 + Top = 268 + end + object ADOQuerysub: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 484 + Top = 276 + end + object ADOQueryTree: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 277 + Top = 289 + end + object DataSource1: TDataSource + DataSet = ADOQueryTree + Left = 343 + Top = 287 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_ZdyYS_help.pas b/基础资料维护(BaseInfo.dll)/U_ZdyYS_help.pas new file mode 100644 index 0000000..38f9d20 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_ZdyYS_help.pas @@ -0,0 +1,476 @@ +unit U_ZdyYS_help; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls, + cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, + cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, + cxTLdxBarBuiltInMenu; + +type + TfrmZdyYS_help = class(TForm) + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + DSsub: TDataSource; + CDSsub: TClientDataSet; + ADOQuerysub: TADOQuery; + Panel1: TPanel; + PageControl1: TPageControl; + TabSheet1: TTabSheet; + TabSheet2: TTabSheet; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + Tv2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v2Column14: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ToolBar1: TToolBar; + TBRafresh: TToolButton; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + TBClose: TToolButton; + Panel2: TPanel; + Label1: TLabel; + Label2: TLabel; + Label3: TLabel; + CPTopName: TEdit; + CPName: TEdit; + CPNo: TEdit; + ToolBar2: TToolBar; + ToolButton3: TToolButton; + TBAdd: TToolButton; + ToolButton4: TToolButton; + TBDel: TToolButton; + ToolButton5: TToolButton; + ADOQueryTree: TADOQuery; + DataSource1: TDataSource; + cxDBTreeList1: TcxDBTreeList; + cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn; + Tv2Column2: TcxGridDBColumn; + Label4: TLabel; + CPNameYW: TEdit; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure TV1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); + procedure Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure v2Column6PropertiesEditValueChanged(Sender: TObject); + procedure Tv2Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); + procedure TBDelClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure PageControl1Change(Sender: TObject); + procedure cxDBTreeList1Change(Sender: TObject); + procedure Tv2Column2PropertiesEditValueChanged(Sender: TObject); + private + { Private declarations } + PState: Integer; + FCPID, FTopID: string; + procedure InitGrid(); + procedure InitSub(); + procedure InitTree(); + public + fDEFstr5: string; + end; + +var + frmZdyYS_help: TfrmZdyYS_help; + +implementation + +uses + U_DataLink, U_Fun, U_ZDYHelp, U_ZdyAttInputGYS, U_ZdyAttachCP10_help; + +{$R *.dfm} + +procedure TfrmZdyYS_help.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + SQL.Clear; + sql.Add(' select mainid=cast(mainid as varchar(30)),* from CP_CMYS where Type=''ɫ'' and isnull(CPLevel,0)<>1'); + Open; + end; + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; + +end; + +procedure TfrmZdyYS_help.InitTree(); +var + i: Integer; +begin + with ADOQueryTree do + begin + Close; + SQL.Clear; + SQL.Add('select * from CP_CMYS where Type=''ɫ'' order by CPlevel,CPOrder,CodeName '); + Open; + end; + cxDBTreeList1.Items[0].Expand(false); + //cxDBTreeList1.Items[1].Expand(False); +end; + +procedure TfrmZdyYS_help.InitSub(); +begin + with ADOQuerysub do + begin + Close; + SQL.Clear; + sql.Add(' select subid=cast(subid as varchar(30)),* from CP_CMYS_Sub where Mainid=''' + cds_hz.fieldbyname('Mainid').AsString + ''' '); +// ShowMessage(sql.Text); + Open; + end; + SCreateCDS20(ADOQuerysub, CDSsub); + SInitCDSData20(ADOQuerysub, CDSsub); +end; + +procedure TfrmZdyYS_help.FormDestroy(Sender: TObject); +begin + frmZdyYS_help := nil; +end; + +procedure TfrmZdyYS_help.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmZdyYS_help.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption, Tv2, 'ͻԶ'); + Close; +end; + +procedure TfrmZdyYS_help.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption, Tv2, 'ͻԶ'); + + InitGrid(); + InitTree(); +end; + +procedure TfrmZdyYS_help.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyYS_help.Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + if cds_hz.IsEmpty then + exit; + self.ModalResult := 1; +end; + +procedure TfrmZdyYS_help.TV1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); +begin + AText := IntToStr(ARecord.Index + 1); +end; + +procedure TfrmZdyYS_help.Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + initsub(); +end; + +procedure TfrmZdyYS_help.ToolButton1Click(Sender: TObject); +var + FMainid: string; +begin + if GetLSNo(ADOQueryCmd, FMainid, 'YS', 'CP_CMYS', 3) = False then + begin + Application.MessageBox('ȡʧܣ', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from CP_CMYS where 1<>1'); + Open; + + Append; + fieldbyname('Code').Value := FMainid; + FieldByName('Type').value := 'ɫ'; + FieldByName('CPLevel').value := '2'; + Post; + end; + + InitGrid(); +end; + +procedure TfrmZdyYS_help.ToolButton3Click(Sender: TObject); +begin + InitTree(); +end; + +procedure TfrmZdyYS_help.ToolButton2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + + if CDS_HZ.FieldByName('CPLevel').AsInteger = 0 then + Exit; + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from CP_CMYS where CPParent=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + Open; + if not IsEmpty then + begin + Application.MessageBox('Ѿ಻ɾ', 'ʾ', 0); + Exit; + end; + end; + + if Application.MessageBox('ȷҪɾɫ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CP_CMYS where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; + CDS_HZ.Delete; + + InitTree(); +end; + +procedure TfrmZdyYS_help.ToolButton4Click(Sender: TObject); +var + maxId: string; +begin + if Trim(CPName.Text) = '' then + begin + Application.MessageBox('ƲΪգ', 'ʾ', 0); + Exit; + end; + if Trim(CPNo.Text) = '' then + begin + Application.MessageBox('벻Ϊգ', 'ʾ', 0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; +// if PState = 11 then +// begin +// if GetLSNo(ADOQueryCmd, maxId, 'CP', 'CP_CMYS', 4, 1) = False then +// begin +// ADOQueryCmd.Connection.RollbackTrans; +// Application.MessageBox('ʧܣ', 'ʾ', 0); +// Exit; +// end; +// end +// else +// begin +// maxId := Trim(FCPID); +// end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from CP_CMYS where MainID=''' + Trim(FCPID) + ''''); + Open; + end; + with ADOQueryCmd do + begin + if PState = 11 then + begin + Append; +// FieldByName('MainID').Value := Trim(maxId); + FieldByName('CodeName').Value := Trim(CPName.Text); + FieldByName('code').Value := Trim(CPNo.Text); + FieldByName('CPParent').Value := Trim(ADOQueryTree.fieldbyname('Mainid').AsString); + FieldByName('CPLevel').Value := ADOQueryTree.fieldbyname('CPLevel').AsInteger + 1; + FieldByName('Type').Value := 'ɫ'; + Post; + end + else if PState = 22 then + begin + Edit; +// FieldByName('MainID').Value := Trim(maxId); + FieldByName('CodeName').Value := Trim(CPName.Text); + FieldByName('code').Value := Trim(CPNo.Text); + //FieldByName('CPParent').Value:=Trim(ADOQueryTree.fieldbyname('CPID').AsString); + //FieldByName('CPOrder').Value:=ADOQueryTree.fieldbyname('CPOrder').AsInteger+1; + Post; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ!', 'ʾ', 0); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!', 'ʾ', 0); + end; +// InitGrid(); +// InitTree(); +end; + +procedure TfrmZdyYS_help.v2Column6PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := ''; + end; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate CP_CMYS '); + sql.Add(' Set ' + FFieldName + '=''' + Trim(mvalue) + ''''); + SQL.Add(' where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; +end; + +procedure TfrmZdyYS_help.Tv2Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); +begin + AText := IntToStr(ARecord.Index + 1) +end; + +procedure TfrmZdyYS_help.TBDelClick(Sender: TObject); +begin + if ADOQueryTree.FieldByName('CPLevel').AsInteger = 0 then + Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from CP_CMYS where CPParent=''' + Trim(ADOQueryTree.fieldbyname('Mainid').AsString) + ''''); + Open; + if not IsEmpty then + begin + Application.MessageBox('Ѿ಻ɾ', 'ʾ', 0); + Exit; + end; + end; +// with ADOQueryTemp do +// begin +// Close; +// sql.Clear; +// sql.Add('select * from CP_YDang where CYType=''' + Trim(ADOQueryTree.fieldbyname('CPID').AsString) + ''''); +// Open; +// if not IsEmpty then +// begin +// Application.MessageBox('ѾвƷڴ಻ɾ', 'ʾ', 0); +// Exit; +// end; +// end; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CP_CMYS where Mainid=''' + Trim(ADOQueryTree.fieldbyname('Mainid').AsString) + ''''); + sql.Add('delete CP_CMYS where CPParent=''' + Trim(ADOQueryTree.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; + InitTree(); +end; + +procedure TfrmZdyYS_help.TBAddClick(Sender: TObject); +begin + PState := 11; + CPTopName.Text := Trim(ADOQueryTree.fieldbyname('CodeName').AsString); + //FTopID:=Trim(ADOQueryTree.fieldbyname('CPID').AsString); + FCPID := ''; + CPName.Text := ''; + CPNo.Text := ''; + CPName.SetFocus; +end; + +procedure TfrmZdyYS_help.PageControl1Change(Sender: TObject); +begin + initgrid(); + InitTree(); +end; + +procedure TfrmZdyYS_help.cxDBTreeList1Change(Sender: TObject); +begin + PState := 22; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from CP_CMYS where Mainid=''' + Trim(ADOQueryTree.fieldbyname('CPParent').AsString) + ''''); + Open; + end; + FCPID := Trim(ADOQueryTree.fieldbyname('Mainid').AsString); + CPTopName.Text := Trim(ADOQueryTemp.fieldbyname('CodeName').AsString); + CPName.Text := Trim(ADOQueryTree.fieldbyname('CodeName').AsString); + CPNameYW.Text := Trim(ADOQueryTree.fieldbyname('CodeNameYW').AsString); + CPNo.Text := Trim(ADOQueryTree.fieldbyname('Code').AsString); +end; + +procedure TfrmZdyYS_help.Tv2Column2PropertiesEditValueChanged( + Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := ''; + end; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate CP_CMYS '); + sql.Add(' Set ' + FFieldName + '=''' + Trim(mvalue) + ''''); + SQL.Add(' where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; +end; + +end. + diff --git a/基础资料维护(BaseInfo.dll)/U_testdll.dfm b/基础资料维护(BaseInfo.dll)/U_testdll.dfm new file mode 100644 index 0000000..80d4cc0 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_testdll.dfm @@ -0,0 +1,221 @@ +object Form1: TForm1 + Left = 97 + Top = 122 + Width = 791 + Height = 554 + Caption = 'Form1' + Color = clBtnFace + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + FormStyle = fsMDIForm + Menu = MainMenu1 + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnResize = FormResize + PixelsPerInch = 96 + TextHeight = 13 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 783 + Height = 25 + ButtonWidth = 57 + Caption = 'ToolBar1' + Flat = True + Images = ImageList1 + TabOrder = 0 + object Edit1: TEdit + Left = 0 + Top = 0 + Width = 81 + Height = 22 + TabOrder = 0 + Text = '1' + end + object ToolButton1: TToolButton + Left = 81 + Top = 0 + Caption = #20851#38381 + ImageIndex = 0 + OnClick = ToolButton1Click + end + object Label1: TLabel + Left = 138 + Top = 0 + Width = 79 + Height = 22 + Caption = ' DllName'#65306 + end + object DllName: TEdit + Left = 217 + Top = 0 + Width = 135 + Height = 22 + TabOrder = 1 + end + end + object MainMenu1: TMainMenu + Left = 232 + Top = 40 + object test1: TMenuItem + Caption = 'test' + OnClick = test1Click + end + end + object ImageList1: TImageList + Left = 320 + Top = 56 + Bitmap = { + 494C010101000400040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 + 0000000000003600000028000000400000001000000001002000000000000010 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000EFEFEF000000 + 0000EFEFEF00EFEFEF000000000000000000EFEFEF0000000000000000000000 + 0000EFEFEF00EFEFEF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000EFEFEF0000000000EFEFEF00EFEFEF0000000000EFEFEF00000000008080 + 00008080000000000000C0C0C000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EFEFEF00EFEFEF000000 + 0000EFEFEF00EFEFEF000000000000000000C0C0C00000000000000000008080 + 00008080000080800000EFEFEF00EFEFEF000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFEFEF0000000000000000000000000000000000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFEFEF0000000000808080008080800080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000008080000000000000808080008080800080808000000000008080 + 0000000000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000EFEFEF00EFEF + EF0000000000FFFF000080800000000000008080800080808000000000000000 + 0000000000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000FFFF0000FFFF0000808000000000000080808000000000008080 + 0000000000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000808000008080 + 000080800000FFFF0000FFFF0000FFFF00000000000080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000FFFF0000FFFF + 0000FFFF0000FFFF000000000000FFFF00000000000080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000FFFF0000FFFF0000FFFF00000000000080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000808000000000000080808000808080008080800080808000FFFF + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000808080008080800080808000808080000000 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000424D3E000000000000003E000000 + 2800000040000000100000000100010000000000800000000000000000000000 + 000000000000000000000000FFFFFF00FFFF000000000000D343000000000000 + F4810000000000009340000000000000F801000000000000F001000000000000 + F001000000000000C001000000000000C001000000000000C001000000000000 + C201000000000000C001000000000000F001000000000000F001000000000000 + FC03000000000000FFFF00000000000000000000000000000000000000000000 + 000000000000} + end + object ADOConnection1: TADOConnection + ConnectionString = + 'Provider=SQLOLEDB.1;Password=sa;Persist Security Info=True;User ' + + 'ID=sa;Initial Catalog=rzdata;Data Source=6GMFFMYKYMJDZW7' + LoginPrompt = False + Provider = 'SQLOLEDB.1' + Left = 408 + Top = 64 + end +end diff --git a/基础资料维护(BaseInfo.dll)/U_testdll.pas b/基础资料维护(BaseInfo.dll)/U_testdll.pas new file mode 100644 index 0000000..8202ea9 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/U_testdll.pas @@ -0,0 +1,106 @@ +unit U_testdll; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ExtCtrls, StdCtrls, Menus, ToolWin, ComCtrls, ImgList, DB, ADODB; + +type + TForm1 = class(TForm) + MainMenu1: TMainMenu; + test1: TMenuItem; + ToolBar1: TToolBar; + Edit1: TEdit; + ToolButton1: TToolButton; + ImageList1: TImageList; + ADOConnection1: TADOConnection; + DllName: TEdit; + Label1: TLabel; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure test1Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure FormResize(Sender: TObject); + private + { Private declarations } + public + { Public declarations } + end; + +var + Form1: TForm1; + newh:hwnd; + +implementation + +{$R *.dfm} + +procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); +begin + sendmessage(newh,1034,4,0); + action:=cafree; +end; + +procedure TForm1.test1Click(Sender: TObject); +type + TMyFunc = function(App:Tapplication; FormH:hwnd; FormID:integer; + Language: integer; WinStyle:integer; + GCode: Pchar; GName: Pchar; DataBase:Pchar;Title:PChar; + Parameters1:PChar;Parameters2:PChar;Parameters3:PChar;Parameters4:PChar; + Parameters5:PChar;Parameters6:PChar;Parameters7:PChar;Parameters8:PChar; + Parameters9:PChar;Parameters10:PChar;DataBaseStr:PChar):hwnd;stdcall; +var + Tf: TMyFunc; + Tp: TFarProc; + Th:Thandle; +begin + //̬ + //newh:=getForm(Application,1,ADOConnection1,PChar('sa'),PChar('dsa')); + + //̬ + // showMessage(intTostr(application.Handle)); + Th := LoadLibrary('BaseInfo.dll'); + if Th > 0 then + begin + try + Tp := GetProcAddress(Th, 'GetDllForm'); + if Tp <> nil then + begin + Tf := TMyFunc(Tp); + newh:=Tf(Application,0,strToint(edit1.text),0,0, + PChar('sa'), + PChar('dsa'), + PChar('bsa'), + PChar('tsa'), + PChar('d1sa'), + PChar('d2sa'), + '','','','','','','','','' + ); + end + else + begin + ShowMessage('ӡִд'); + end; + finally + // FreeLibrary(); + end; + end + else + begin + ShowMessage('Ҳ'+Trim(DllName.Text)); + end; + +end; + +procedure TForm1.ToolButton1Click(Sender: TObject); +begin + close; +end; + +procedure TForm1.FormResize(Sender: TObject); +begin + sendmessage(newh,1034,1,0); +end; + +end. + diff --git a/基础资料维护(BaseInfo.dll)/consvr.ini b/基础资料维护(BaseInfo.dll)/consvr.ini new file mode 100644 index 0000000..3a03c34 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/consvr.ini @@ -0,0 +1,2 @@ +[SERVER] +SERVER=192.168.88.254 \ No newline at end of file diff --git a/基础资料维护(BaseInfo.dll)/getpic.dfm b/基础资料维护(BaseInfo.dll)/getpic.dfm new file mode 100644 index 0000000..5da28da --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/getpic.dfm @@ -0,0 +1,183 @@ +object FormGetPic: TFormGetPic + Left = 313 + Top = 115 + BorderIcons = [biSystemMenu] + BorderStyle = bsSingle + Caption = #33719#21462#22270#29255 + ClientHeight = 452 + ClientWidth = 665 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poDesktopCenter + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Image2: TImage + Left = 464 + Top = 8 + Width = 160 + Height = 120 + end + object SpeedButton1: TSpeedButton + Left = 500 + Top = 334 + Width = 80 + Height = 22 + Caption = #25171#24320#22270#29255'...' + OnClick = SpeedButton1Click + end + object SpeedButton2: TSpeedButton + Left = 500 + Top = 380 + Width = 80 + Height = 22 + Caption = #30830#23450 + Enabled = False + OnClick = SpeedButton2Click + end + object SpeedButton3: TSpeedButton + Left = 500 + Top = 426 + Width = 80 + Height = 22 + Caption = #25918#24323 + OnClick = SpeedButton3Click + end + object SpeedButton4: TSpeedButton + Left = 500 + Top = 358 + Width = 80 + Height = 22 + Caption = #22270#29255#21478#23384'...' + OnClick = SpeedButton4Click + end + object SpeedButton5: TSpeedButton + Left = 500 + Top = 404 + Width = 80 + Height = 22 + Caption = #21024#38500 + OnClick = SpeedButton5Click + end + object ScrollBox1: TScrollBox + Left = 5 + Top = 5 + Width = 440 + Height = 440 + HorzScrollBar.Visible = False + VertScrollBar.Visible = False + TabOrder = 0 + object Image1: TImage + Left = 0 + Top = -4 + Width = 437 + Height = 441 + Cursor = crSizeAll + AutoSize = True + Center = True + IncrementalDisplay = True + OnMouseDown = Image1MouseDown + OnMouseMove = Image1MouseMove + end + end + object Button1: TButton + Left = 464 + Top = 252 + Width = 81 + Height = 21 + Caption = #25171#24320#25668#20687#22836 + TabOrder = 1 + OnClick = Button1Click + end + object Button2: TButton + Left = 560 + Top = 252 + Width = 81 + Height = 21 + Caption = #25235#22270 + TabOrder = 2 + OnClick = Button2Click + end + object Twain: TDelphiTwain + OnTwainAcquire = TwainTwainAcquire + TransferMode = ttmMemory + SourceCount = 0 + Info.MajorVersion = 1 + Info.MinorVersion = 0 + Info.Language = tlUserLocale + Info.CountryCode = 1 + Info.Groups = [tgControl, tgImage] + Info.VersionInfo = 'Application name' + Info.Manufacturer = 'Application manufacturer' + Info.ProductFamily = 'App product family' + Info.ProductName = 'App product name' + LibraryLoaded = False + SourceManagerLoaded = False + Left = 518 + Top = 160 + end + object OpenPictureDialog1: TOpenPictureDialog + DefaultExt = 'jpg' + Filter = + 'All (*.svg;*.jpg;*.jpeg;*.gif;*.tif;*.tiff;*.png;*.gif;*.jpg;*.j' + + 'peg;*.png;*.bmp;*.ico;*.emf;*.wmf;*.tif;*.tiff)|*.svg;*.jpg;*.jp' + + 'eg;*.gif;*.tif;*.tiff;*.png;*.gif;*.jpg;*.jpeg;*.png;*.bmp;*.ico' + + ';*.emf;*.wmf;*.tif;*.tiff|SVG graphics from DevExpress (*.svg)|*' + + '.svg|JPEG graphics from DevExpress (*.jpg)|*.jpg|JPEG graphics f' + + 'rom DevExpress (*.jpeg)|*.jpeg|GIF graphics from DevExpress (*.g' + + 'if)|*.gif|TIFF graphics from DevExpress (*.tif)|*.tif|TIFF graph' + + 'ics from DevExpress (*.tiff)|*.tiff|PNG graphics from DevExpress' + + ' (*.png)|*.png|GIF Image (*.gif)|*.gif|JPEG Image File (*.jpg)|*' + + '.jpg|JPEG Image File (*.jpeg)|*.jpeg|Portable Network Graphics (' + + '*.png)|*.png|Bitmaps (*.bmp)|*.bmp|Icons (*.ico)|*.ico|Enhanced ' + + 'Metafiles (*.emf)|*.emf|Metafiles (*.wmf)|*.wmf|TIFF Images (*.t' + + 'if)|*.tif|TIFF Images (*.tiff)|*.tiff' + Left = 568 + Top = 152 + end + object ADOQuery1: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 504 + Top = 280 + end + object SaveDialog1: TSavePictureDialog + Filter = + 'All (*.svg;*.jpg;*.jpeg;*.gif;*.tif;*.tiff;*.png;*.gif;*.jpg;*.j' + + 'peg;*.png;*.bmp;*.ico;*.emf;*.wmf;*.tif;*.tiff)|*.svg;*.jpg;*.jp' + + 'eg;*.gif;*.tif;*.tiff;*.png;*.gif;*.jpg;*.jpeg;*.png;*.bmp;*.ico' + + ';*.emf;*.wmf;*.tif;*.tiff|SVG graphics from DevExpress (*.svg)|*' + + '.svg|JPEG graphics from DevExpress (*.jpg)|*.jpg|JPEG graphics f' + + 'rom DevExpress (*.jpeg)|*.jpeg|GIF graphics from DevExpress (*.g' + + 'if)|*.gif|TIFF graphics from DevExpress (*.tif)|*.tif|TIFF graph' + + 'ics from DevExpress (*.tiff)|*.tiff|PNG graphics from DevExpress' + + ' (*.png)|*.png|GIF Image (*.gif)|*.gif|JPEG Image File (*.jpg)|*' + + '.jpg|JPEG Image File (*.jpeg)|*.jpeg|Portable Network Graphics (' + + '*.png)|*.png|Bitmaps (*.bmp)|*.bmp|Icons (*.ico)|*.ico|Enhanced ' + + 'Metafiles (*.emf)|*.emf|Metafiles (*.wmf)|*.wmf|TIFF Images (*.t' + + 'if)|*.tif|TIFF Images (*.tiff)|*.tiff' + Left = 564 + Top = 203 + end + object adoqueryImage: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 488 + Top = 184 + end + object IdFTP1: TIdFTP + MaxLineAction = maException + ReadTimeout = 0 + ProxySettings.ProxyType = fpcmNone + ProxySettings.Port = 0 + Left = 520 + Top = 210 + end +end diff --git a/基础资料维护(BaseInfo.dll)/getpic.pas b/基础资料维护(BaseInfo.dll)/getpic.pas new file mode 100644 index 0000000..71f36b2 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/getpic.pas @@ -0,0 +1,612 @@ +unit getpic; + +interface + +uses + Windows, Messages, SysUtils, strUtils, Variants, Classes, Graphics, Controls, + Forms, Dialogs, ComCtrls, ToolWin, ExtCtrls, jpeg, IniFiles, ExtDlgs, + DelphiTwain, Buttons, StdCtrls, DB, ADODB, IdBaseComponent, IdComponent, + IdTCPConnection, IdTCPClient, IdFTP; + +type + TFormGetPic = class(TForm) + Twain: TDelphiTwain; + ScrollBox1: TScrollBox; + Image1: TImage; + OpenPictureDialog1: TOpenPictureDialog; + Image2: TImage; + SpeedButton1: TSpeedButton; + SpeedButton2: TSpeedButton; + SpeedButton3: TSpeedButton; + Button1: TButton; + Button2: TButton; + ADOQuery1: TADOQuery; + SpeedButton4: TSpeedButton; + SaveDialog1: TSavePictureDialog; + adoqueryImage: TADOQuery; + IdFTP1: TIdFTP; + SpeedButton5: TSpeedButton; + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure TwainTwainAcquire(Sender: TObject; const Index: Integer; Image: TBitmap; var Cancel: Boolean); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure FormDestroy(Sender: TObject); + procedure Image1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); + procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); + procedure SpeedButton1Click(Sender: TObject); + procedure SpeedButton2Click(Sender: TObject); + procedure SpeedButton3Click(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure SpeedButton4Click(Sender: TObject); + procedure Initimage(); + procedure SpeedButton5Click(Sender: TObject); + private + hWndC: THandle; + CapturingAVI: bool; + { Private declarations } + ClickPos: TPoint; + SelectedSource, PicLeft, PicTop, PicWidth, PicHeight: Integer; + procedure CreThumb(Width, Height: Integer); + function SaveImage(): Boolean; + public + FilePath: string; + FileName: string; + FTFType: string; + pat1: string; + pic1: string; + fkeyNo: string; + { Public declarations } + MyJpeg: TJPEGImage; +// JPStream: TMemoryStream; + end; + +var + FormGetPic: TFormGetPic; + +implementation + +uses + U_DataLink, U_Fun10; + +const + WM_CAP_START = WM_USER; + +const + WM_CAP_STOP = WM_CAP_START + 68; + +const + WM_CAP_DRIVER_CONNECT = WM_CAP_START + 10; + +const + WM_CAP_DRIVER_DISCONNECT = WM_CAP_START + 11; + +const + WM_CAP_SAVEDIB = WM_CAP_START + 25; + +const + WM_CAP_GRAB_FRAME = WM_CAP_START + 60; + +const + WM_CAP_SEQUENCE = WM_CAP_START + 62; + +const + WM_CAP_FILE_SET_CAPTURE_FILEA = WM_CAP_START + 20; + +const + WM_CAP_SEQUENCE_NOFILE = WM_CAP_START + 63; + +const + WM_CAP_SET_OVERLAY = WM_CAP_START + 51; + +const + WM_CAP_SET_PREVIEW = WM_CAP_START + 50; + +const + WM_CAP_SET_CALLBACK_VIDEOSTREAM = WM_CAP_START + 6; + +const + WM_CAP_SET_CALLBACK_ERROR = WM_CAP_START + 2; + +const + WM_CAP_SET_CALLBACK_STATUSA = WM_CAP_START + 3; + +const + WM_CAP_SET_CALLBACK_FRAME = WM_CAP_START + 5; + +const + WM_CAP_SET_SCALE = WM_CAP_START + 53; + +const + WM_CAP_SET_PREVIEWRATE = WM_CAP_START + 52; + +function capCreateCaptureWindowA(lpszWindowName: PCHAR; dwStyle: longint; x: integer; y: integer; nWidth: integer; nHeight: integer; ParentWin: HWND; nId: integer): HWND; stdcall external 'AVICAP32.DLL'; + +{$R *.dfm} + +procedure TFormGetPic.Initimage(); +var + jpg: TJpegImage; + myStream: TADOBlobStream; + sFieldName: string; + JPStream: TMemoryStream; +begin + jpg := TJpegImage.Create(); + JPStream := TMemoryStream.Create; + try + + with adoqueryImage do + begin + close; + sql.Clear; + sql.Add('select * from TP_File where WBID=' + quotedstr(trim(fkeyNo))); + open; + if not IsEmpty then + begin + if not fieldbyname(pic1).IsNull then + begin + myStream := tadoblobstream.Create(tblobfield(adoqueryImage.fieldbyname(pic1)), bmread); + jpg.LoadFromStream(myStream); + Image2.Picture.Assign(jpg); + myStream.Free; + + sFieldName := 'D:\ͼƬ鿴' + '\' + trim(pat1); + try + IdFTP1.Host :=ReadINIFileStr('SYSTEMSET.INI','SERVER','ַ','127.0.0.1') ; +// PicSvr + IdFTP1.Username := 'three'; + IdFTP1.Password := '641010'; + IdFTP1.Connect(); + except + ; + end; + + JPStream.Clear; + if IdFTP1.Connected then + begin + try + IdFTP1.Get('TP\' + Trim(fieldbyname(pat1).AsString), JPStream); + except + Application.MessageBox('ͻͼļ', 'ʾ', MB_ICONWARNING); + IdFTP1.Quit; + Exit; + end; + end + else + begin + Application.MessageBox('޷ļ', 'ʾ', MB_ICONWARNING); + IdFTP1.Quit; + Exit; + end; + + if IdFTP1.Connected then + IdFTP1.Quit; + JPStream.Position := 0; + jpg.LoadFromStream(JPStream); + Image1.Picture.Assign(jpg); + end; + end; + end; + finally + jpg.free; + JPStream.Free; + end; +end; + +function TFormGetPic.SaveImage(): Boolean; +var + myStream: TADOBlobStream; + fNewFileName: string; +begin + fNewFileName := formatdatetime('yyyyMMddhhnnsszzz', now()) + ExtractFileExt(FilePath); + if fkeyNO = '' then + fkeyNO := fNewFileName; + result := false; + try + with adoqueryImage do + begin + close; + sql.Clear; + sql.Add('select * from TP_File where WBID=' + quotedstr(trim(fkeyNo))); + open; + if RecordCount <= 0 then + begin + Append; + fieldByName('WBID').AsString := fkeyNo; + fieldByName('TFID').AsString := fkeyNo; + end + else + begin + edit; + end; + fieldByName(pat1).AsString := trim(FileName); + fieldByName('TFType').AsString := trim(FTFType); + myStream := TADOBlobStream.Create(TBlobField(FieldByName(pic1)), bmWrite); + MyJpeg.Assign(Image2.Picture.Graphic); + MyJpeg.SaveToStream(myStream); + myStream.Free; + Post; + end; + + { if FilePath <> '' then + begin + try + IdFTP1.Host := PicSvr; + IdFTP1.Username := 'three'; + IdFTP1.Password := '641010'; + IdFTP1.Connect(); + IdFTP1.Put(FilePath, 'TP\' + Trim(FileName)); + IdFTP1.Quit; + except + IdFTP1.Quit; + Application.MessageBox('ϴͻͼļʧܣļ', 'ʾ', MB_ICONWARNING); + end; + end; + IdFTP1.Quit; + } + result := true; + except + myStream.Free; + end; +end; + +procedure TFormGetPic.ToolButton1Click(Sender: TObject); +var + Ini: TIniFile; +begin + if Twain.LoadLibrary then + begin + {Load source manager} + Twain.SourceManagerLoaded := TRUE; + {Allow user to select source} + SelectedSource := Twain.SelectSource; + if SelectedSource <> -1 then + begin + Ini := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'scanner.ini'); + try + Ini.WriteInteger('SCANNER', 'Scanner', SelectedSource); + finally + Ini.Free; + end; + end {if SelectedSource <> -1} + end + else + ShowMessage('δװɨ'); +end; + +procedure TFormGetPic.ToolButton3Click(Sender: TObject); +begin + if Twain.LoadLibrary then + begin + {Load source manager} + Twain.SourceManagerLoaded := TRUE; + + if SelectedSource <> -1 then + begin + {Load source, select transference method and enable (display interface)} + Twain.Source[SelectedSource].Loaded := TRUE; + Twain.Source[SelectedSource].SetICapUnits(tuInches); + Twain.Source[SelectedSource].SetImagelayoutFrame(PicLeft / 25.4, PicTop / 25.4, (PicLeft + PicWidth) / 25.4, (PicTop + PicHeight) / 25.4); + Twain.Source[SelectedSource].SetIYResolution(200); + Twain.Source[SelectedSource].SetIXResolution(200); + Twain.Source[SelectedSource].TransferMode := ttmMemory; + Twain.Source[SelectedSource].EnableSource(FALSE, TRUE); + while Twain.Source[SelectedSource].Enabled do + Application.ProcessMessages; + end; {if SelectedSource <> -1} +// Twain.UnloadLibrary; + end + else + ShowMessage('δװɨ'); +end; + +procedure TFormGetPic.TwainTwainAcquire(Sender: TObject; const Index: Integer; Image: TBitmap; var Cancel: Boolean); +begin + Image1.Picture.Assign(Image); + Cancel := TRUE; + CreThumb(150, 150); + SpeedButton2.Enabled := TRUE; +end; + +procedure TFormGetPic.FormShow(Sender: TObject); +var + Ini: TIniFile; +begin + { Ini := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'scanner.ini'); + try + SelectedSource := Ini.ReadInteger( 'SCANNER', 'Scanner', 0); + PicLeft := Ini.ReadInteger( 'SCANNER', 'Left', 0); + PicTop := Ini.ReadInteger( 'SCANNER', 'Top', 0); + PicWidth := Ini.ReadInteger( 'SCANNER', 'Width', 100); + PicHeight := Ini.ReadInteger( 'SCANNER', 'Height', 100); + finally + Ini.Free; + end; } + Initimage(); +end; + +{ +procedure TFormGetPic.ToolButton6Click(Sender: TObject); +var + Ini: TIniFile; +begin + FormGetPos := TFormGetPos.Create(Self); + FormGetPos.SpinEdit1.Value := PicLeft; + FormGetPos.SpinEdit2.Value := PicTop; + FormGetPos.SpinEdit3.Value := PicWidth; + FormGetPos.SpinEdit4.Value := PicHeight; + if FormGetPos.ShowModal = 1 then + begin + PicLeft := FormGetPos.SpinEdit1.Value; + PicTop := FormGetPos.SpinEdit2.Value; + PicWidth := FormGetPos.SpinEdit3.Value; + PicHeight := FormGetPos.SpinEdit4.Value; + + Ini := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'scanner.ini'); + try + Ini.WriteInteger( 'SCANNER', 'Left', PicLeft); + Ini.WriteInteger( 'SCANNER', 'Top', PicTop); + Ini.WriteInteger( 'SCANNER', 'Width', PicWidth); + Ini.WriteInteger( 'SCANNER', 'Height', PicHeight); + finally + Ini.Free; + end; + end; + FormGetPos.Free; +end; +} + +procedure TFormGetPic.CreThumb(Width, Height: Integer); +var + Bitmap: TBitmap; + Ratio: Double; + ARect: TRect; + AHeight, AHeightOffset: Integer; + AWidth, AWidthOffset: Integer; +begin + Bitmap := TBitmap.Create; + try + Ratio := Image1.Picture.Graphic.Width / Image1.Picture.Graphic.Height; + if Ratio > 1.333 then + begin + AHeight := Round(Width / Ratio); + AHeightOffset := (Height - AHeight) div 2; + AWidth := Width; + AWidthOffset := 0; + end + else + begin + AWidth := Round(Height * Ratio); + AWidthOffset := (Width - AWidth) div 2; + AHeight := Height; + AHeightOffset := 0; + end; + Bitmap.Width := Width; + Bitmap.Height := Height; + Bitmap.Canvas.Brush.Color := clBtnFace; + Bitmap.Canvas.FillRect(Rect(0, 0, Width, Height)); +// StretchDraw original image + ARect := Rect(AWidthOffset, AHeightOffset, AWidth + AWidthOffset, AHeight + AHeightOffset); + Bitmap.Canvas.StretchDraw(ARect, Image1.Picture.Graphic); +// Assign back to the Jpeg, and save to the file + Image2.Picture.Assign(Bitmap); +// MyJpeg1.Assign(Image2.Picture.Graphic); + finally + Bitmap.Free; + end; +end; + +procedure TFormGetPic.FormCreate(Sender: TObject); +begin + MyJpeg := TJpegImage.Create; +// MyJpeg1 := TJpegImage.Create; + Button2.Enabled := false; +end; + +procedure TFormGetPic.FormDestroy(Sender: TObject); +begin +// MyJpeg1.Free; + MyJpeg.Free; +end; + +procedure TFormGetPic.Image1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + ClickPos.x := X; + ClickPos.y := Y; +end; + +procedure TFormGetPic.Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); +var + NewPos: TPoint; +begin + {The left button was pressed} + if ssLeft in Shift then + begin + {Calculate new position} + NewPos.X := Image1.Left + X - ClickPos.x; + NewPos.Y := Image1.Top + Y - ClickPos.y; + if NewPos.x + Image1.Width < ScrollBox1.Width then + NewPos.x := ScrollBox1.Width - Image1.Width; + if NewPos.y + Image1.Height < ScrollBox1.Height then + NewPos.y := ScrollBox1.Height - Image1.Height; + if NewPos.X > 0 then + NewPos.X := 0; + if NewPos.Y > 0 then + NewPos.Y := 0; + + Image1.Top := NewPos.Y; + Image1.Left := NewPos.X; + end {if ssLeft in Shift} +end; + +procedure TFormGetPic.SpeedButton1Click(Sender: TObject); +begin + if OpenPictureDialog1.Execute then + begin + Image1.Top := 0; + Image1.Left := 0; + Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName); + FilePath := OpenPictureDialog1.FileName; + FileName := ExtractFileName(FilePath); + CreThumb(360, 270); + SpeedButton2.Enabled := TRUE; + end; +end; + +procedure TFormGetPic.SpeedButton2Click(Sender: TObject); +begin + + if SaveImage() then + begin + ModalResult := 1; + end + else + begin + application.MessageBox('ݱʧܣ', 'ʾϢ', 0) + end; +// JPStream := TMemoryStream.Create; +// MyJPeg.Assign(Image1.Picture.Graphic); +// MyJPeg.SaveToStream(JPStream); + +end; + +procedure TFormGetPic.SpeedButton3Click(Sender: TObject); +begin + ModalResult := 2; +end; + +procedure TFormGetPic.Button1Click(Sender: TObject); +begin + hWndC := 0; + try + hWndC := capCreateCaptureWindowA('My Own Capture Window', WS_CHILD or WS_VISIBLE, ScrollBox1.Left, ScrollBox1.Top, ScrollBox1.Width, ScrollBox1.Height, FormGetPic.Handle, 0); + if hWndC <> 0 then + begin + SendMessage(hWndC, WM_CAP_SET_CALLBACK_VIDEOSTREAM, 0, 0); + SendMessage(hWndC, WM_CAP_SET_CALLBACK_ERROR, 0, 0); + SendMessage(hWndC, WM_CAP_SET_CALLBACK_STATUSA, 0, 0); + SendMessage(hWndC, WM_CAP_DRIVER_CONNECT, 0, 0); + SendMessage(hWndC, WM_CAP_SET_SCALE, 1, 0); + SendMessage(hWndC, WM_CAP_SET_PREVIEWRATE, 66, 0); + //SendMessage(hWndC, WM_CAP_SEQUENCE_NOFILE, 1, 0); + SendMessage(hWndC, WM_CAP_SET_OVERLAY, 1, 0); + SendMessage(hWndC, WM_CAP_SET_PREVIEW, 1, 0); + Button1.Enabled := false; + Button2.Enabled := true; + end + else + begin + application.MessageBox('ͷʧܣ', 'Ϣ', MB_ICONERROR); + end; + except + end; + application.ProcessMessages; +end; + +procedure TFormGetPic.Button2Click(Sender: TObject); +var + sFieldName: string; + MBMP: TBitmap; + MJPG: TJpegImage; +begin + + sFieldName := 'D:\ץͼ'; + if not DirectoryExists(pchar(sFieldName)) then + CreateDirectory(pchar(sFieldName), nil); + + sFieldName := sFieldName + '\' + formatdateTime('yyyyMMddhhnnss', SGetServerDateTime(ADOQuery1)); + + FileName := ExtractFileName(sFieldName); + if hWndC <> 0 then + begin + SendMessage(hWndC, WM_CAP_SAVEDIB, 0, longint(pchar(sFieldName + '.BMP'))); + SendMessage(hWndC, WM_CAP_DRIVER_DISCONNECT, 0, 0); + hWndC := 0; + application.ProcessMessages; + Button1.Enabled := true; + Button2.Enabled := false; + try + MBMP := TBitmap.Create; + MJPG := TJpegImage.Create; + MBMP.LoadFromFile(pchar(sFieldName + '.BMP')); + MJPG.assign(MBMP); + Image1.Picture.Bitmap.Assign(MJPG); + application.ProcessMessages; + MJPG.SaveToFile(pchar(sFieldName + '.JPG')); + CreThumb(240, 180); + finally + MBMP.Free; + MJPG.Free; + if Fileexists(pchar(sFieldName + '.BMP')) then + DeleteFile(pchar(sFieldName + '.BMP')); + FilePath := sFieldName + '.JPG'; + FileName := ExtractFileName(FilePath); + end; + SpeedButton2.Enabled := true; + end; +end; + +procedure TFormGetPic.SpeedButton4Click(Sender: TObject); +var + MJPG: TJpegImage; + pathFile: string; +begin + if Image1.Picture.Graphic = nil then + exit; + + MJPG := TJpegImage.Create; + try + SaveDialog1.FileName := FileName; + if SaveDialog1.Execute then + begin + if SaveDialog1.FileName <> '' then + begin + pathFile := trim(SaveDialog1.FileName); + + if (RightStr(UPPERCASE(pathFile), 4) <> '.JPG') and (RightStr(UPPERCASE(pathFile), 5) <> '.JPEG') then + begin + pathFile := pathFile + '.JPG'; + end; + MJPG.Assign(Image1.Picture.Graphic); + if fileexists(pathFile) then + begin + if application.MessageBox(pchar('ļ[' + trim(pathFile) + ']ѴڣǷҪ滻'), 'ʾϢ', MB_YESNO + mb_iconinformation + MB_DEFBUTTON2) = idyes then + MJPG.SaveToFile(pathFile); + end + else + MJPG.SaveToFile(pathFile); + + end; + end; + finally + MJPG.Free; + end; +end; + +procedure TFormGetPic.SpeedButton5Click(Sender: TObject); +begin + + try + with adoqueryImage do + begin + close; + sql.Clear; + sql.Add('select * from TP_File where WBID=' + quotedstr(trim(fkeyNo))); + open; + if RecordCount > 0 then + begin + edit; + fieldByName(pat1).Value := null; + FieldByName(pic1).Value := null; + post; + Image1.Picture.Assign(nil); + Image2.Picture.Assign(nil); + end; + end; + except + end; +end; + +end. + diff --git a/基础资料维护(BaseInfo.dll)/getpicYS.dfm b/基础资料维护(BaseInfo.dll)/getpicYS.dfm new file mode 100644 index 0000000..a7263f2 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/getpicYS.dfm @@ -0,0 +1,183 @@ +object FormGetPicYS: TFormGetPicYS + Left = 313 + Top = 115 + BorderIcons = [biSystemMenu] + BorderStyle = bsSingle + Caption = #33719#21462#22270#29255 + ClientHeight = 452 + ClientWidth = 665 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poDesktopCenter + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Image2: TImage + Left = 464 + Top = 8 + Width = 160 + Height = 120 + end + object SpeedButton1: TSpeedButton + Left = 500 + Top = 334 + Width = 80 + Height = 22 + Caption = #25171#24320#22270#29255'...' + OnClick = SpeedButton1Click + end + object SpeedButton2: TSpeedButton + Left = 500 + Top = 380 + Width = 80 + Height = 22 + Caption = #30830#23450 + Enabled = False + OnClick = SpeedButton2Click + end + object SpeedButton3: TSpeedButton + Left = 500 + Top = 426 + Width = 80 + Height = 22 + Caption = #25918#24323 + OnClick = SpeedButton3Click + end + object SpeedButton4: TSpeedButton + Left = 500 + Top = 358 + Width = 80 + Height = 22 + Caption = #22270#29255#21478#23384'...' + OnClick = SpeedButton4Click + end + object SpeedButton5: TSpeedButton + Left = 500 + Top = 404 + Width = 80 + Height = 22 + Caption = #21024#38500 + OnClick = SpeedButton5Click + end + object ScrollBox1: TScrollBox + Left = 5 + Top = 5 + Width = 440 + Height = 440 + HorzScrollBar.Visible = False + VertScrollBar.Visible = False + TabOrder = 0 + object Image1: TImage + Left = 0 + Top = -4 + Width = 437 + Height = 441 + Cursor = crSizeAll + AutoSize = True + Center = True + IncrementalDisplay = True + OnMouseDown = Image1MouseDown + OnMouseMove = Image1MouseMove + end + end + object Button1: TButton + Left = 464 + Top = 252 + Width = 81 + Height = 21 + Caption = #25171#24320#25668#20687#22836 + TabOrder = 1 + OnClick = Button1Click + end + object Button2: TButton + Left = 560 + Top = 252 + Width = 81 + Height = 21 + Caption = #25235#22270 + TabOrder = 2 + OnClick = Button2Click + end + object Twain: TDelphiTwain + OnTwainAcquire = TwainTwainAcquire + TransferMode = ttmMemory + SourceCount = 0 + Info.MajorVersion = 1 + Info.MinorVersion = 0 + Info.Language = tlUserLocale + Info.CountryCode = 1 + Info.Groups = [tgControl, tgImage] + Info.VersionInfo = 'Application name' + Info.Manufacturer = 'Application manufacturer' + Info.ProductFamily = 'App product family' + Info.ProductName = 'App product name' + LibraryLoaded = False + SourceManagerLoaded = False + Left = 518 + Top = 160 + end + object OpenPictureDialog1: TOpenPictureDialog + DefaultExt = 'jpg' + Filter = + 'All (*.svg;*.jpg;*.jpeg;*.gif;*.tif;*.tiff;*.png;*.gif;*.jpg;*.j' + + 'peg;*.png;*.bmp;*.ico;*.emf;*.wmf;*.tif;*.tiff)|*.svg;*.jpg;*.jp' + + 'eg;*.gif;*.tif;*.tiff;*.png;*.gif;*.jpg;*.jpeg;*.png;*.bmp;*.ico' + + ';*.emf;*.wmf;*.tif;*.tiff|SVG graphics from DevExpress (*.svg)|*' + + '.svg|JPEG graphics from DevExpress (*.jpg)|*.jpg|JPEG graphics f' + + 'rom DevExpress (*.jpeg)|*.jpeg|GIF graphics from DevExpress (*.g' + + 'if)|*.gif|TIFF graphics from DevExpress (*.tif)|*.tif|TIFF graph' + + 'ics from DevExpress (*.tiff)|*.tiff|PNG graphics from DevExpress' + + ' (*.png)|*.png|GIF Image (*.gif)|*.gif|JPEG Image File (*.jpg)|*' + + '.jpg|JPEG Image File (*.jpeg)|*.jpeg|Portable Network Graphics (' + + '*.png)|*.png|Bitmaps (*.bmp)|*.bmp|Icons (*.ico)|*.ico|Enhanced ' + + 'Metafiles (*.emf)|*.emf|Metafiles (*.wmf)|*.wmf|TIFF Images (*.t' + + 'if)|*.tif|TIFF Images (*.tiff)|*.tiff' + Left = 568 + Top = 152 + end + object ADOQuery1: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 504 + Top = 280 + end + object SaveDialog1: TSavePictureDialog + Filter = + 'All (*.svg;*.jpg;*.jpeg;*.gif;*.tif;*.tiff;*.png;*.gif;*.jpg;*.j' + + 'peg;*.png;*.bmp;*.ico;*.emf;*.wmf;*.tif;*.tiff)|*.svg;*.jpg;*.jp' + + 'eg;*.gif;*.tif;*.tiff;*.png;*.gif;*.jpg;*.jpeg;*.png;*.bmp;*.ico' + + ';*.emf;*.wmf;*.tif;*.tiff|SVG graphics from DevExpress (*.svg)|*' + + '.svg|JPEG graphics from DevExpress (*.jpg)|*.jpg|JPEG graphics f' + + 'rom DevExpress (*.jpeg)|*.jpeg|GIF graphics from DevExpress (*.g' + + 'if)|*.gif|TIFF graphics from DevExpress (*.tif)|*.tif|TIFF graph' + + 'ics from DevExpress (*.tiff)|*.tiff|PNG graphics from DevExpress' + + ' (*.png)|*.png|GIF Image (*.gif)|*.gif|JPEG Image File (*.jpg)|*' + + '.jpg|JPEG Image File (*.jpeg)|*.jpeg|Portable Network Graphics (' + + '*.png)|*.png|Bitmaps (*.bmp)|*.bmp|Icons (*.ico)|*.ico|Enhanced ' + + 'Metafiles (*.emf)|*.emf|Metafiles (*.wmf)|*.wmf|TIFF Images (*.t' + + 'if)|*.tif|TIFF Images (*.tiff)|*.tiff' + Left = 564 + Top = 203 + end + object adoqueryImage: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 488 + Top = 184 + end + object IdFTP1: TIdFTP + MaxLineAction = maException + ReadTimeout = 0 + ProxySettings.ProxyType = fpcmNone + ProxySettings.Port = 0 + Left = 520 + Top = 210 + end +end diff --git a/基础资料维护(BaseInfo.dll)/getpicYS.pas b/基础资料维护(BaseInfo.dll)/getpicYS.pas new file mode 100644 index 0000000..6f2f0b5 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/getpicYS.pas @@ -0,0 +1,619 @@ +unit getpicYS; + +interface + +uses + Windows, Messages, SysUtils, strUtils, Variants, Classes, Graphics, Controls, + Forms, Dialogs, ComCtrls, ToolWin, ExtCtrls, jpeg, IniFiles, ExtDlgs, + DelphiTwain, Buttons, StdCtrls, DB, ADODB, IdBaseComponent, IdComponent, + IdTCPConnection, IdTCPClient, IdFTP; + +type + TFormGetPicYS = class(TForm) + Twain: TDelphiTwain; + ScrollBox1: TScrollBox; + Image1: TImage; + OpenPictureDialog1: TOpenPictureDialog; + Image2: TImage; + SpeedButton1: TSpeedButton; + SpeedButton2: TSpeedButton; + SpeedButton3: TSpeedButton; + Button1: TButton; + Button2: TButton; + ADOQuery1: TADOQuery; + SpeedButton4: TSpeedButton; + SaveDialog1: TSavePictureDialog; + adoqueryImage: TADOQuery; + IdFTP1: TIdFTP; + SpeedButton5: TSpeedButton; + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure TwainTwainAcquire(Sender: TObject; const Index: Integer; Image: TBitmap; var Cancel: Boolean); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure FormDestroy(Sender: TObject); + procedure Image1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); + procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); + procedure SpeedButton1Click(Sender: TObject); + procedure SpeedButton2Click(Sender: TObject); + procedure SpeedButton3Click(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure SpeedButton4Click(Sender: TObject); + procedure Initimage(); + procedure SpeedButton5Click(Sender: TObject); + private + hWndC: THandle; + CapturingAVI: bool; + { Private declarations } + ClickPos: TPoint; + SelectedSource, PicLeft, PicTop, PicWidth, PicHeight: Integer; + procedure CreThumb(Width, Height: Integer); + function SaveImage(): Boolean; + public + FilePath: string; + FileName: string; + FTFType: string; + pat1: string; + pic1: string; + fkeyNo, fkeyNo1: string; + { Public declarations } + MyJpeg: TJPEGImage; +// JPStream: TMemoryStream; + end; + +var + FormGetPicYS: TFormGetPicYS; + +implementation + +uses + U_DataLink, U_Fun10; + +const + WM_CAP_START = WM_USER; + +const + WM_CAP_STOP = WM_CAP_START + 68; + +const + WM_CAP_DRIVER_CONNECT = WM_CAP_START + 10; + +const + WM_CAP_DRIVER_DISCONNECT = WM_CAP_START + 11; + +const + WM_CAP_SAVEDIB = WM_CAP_START + 25; + +const + WM_CAP_GRAB_FRAME = WM_CAP_START + 60; + +const + WM_CAP_SEQUENCE = WM_CAP_START + 62; + +const + WM_CAP_FILE_SET_CAPTURE_FILEA = WM_CAP_START + 20; + +const + WM_CAP_SEQUENCE_NOFILE = WM_CAP_START + 63; + +const + WM_CAP_SET_OVERLAY = WM_CAP_START + 51; + +const + WM_CAP_SET_PREVIEW = WM_CAP_START + 50; + +const + WM_CAP_SET_CALLBACK_VIDEOSTREAM = WM_CAP_START + 6; + +const + WM_CAP_SET_CALLBACK_ERROR = WM_CAP_START + 2; + +const + WM_CAP_SET_CALLBACK_STATUSA = WM_CAP_START + 3; + +const + WM_CAP_SET_CALLBACK_FRAME = WM_CAP_START + 5; + +const + WM_CAP_SET_SCALE = WM_CAP_START + 53; + +const + WM_CAP_SET_PREVIEWRATE = WM_CAP_START + 52; + +function capCreateCaptureWindowA(lpszWindowName: PCHAR; dwStyle: longint; x: integer; y: integer; nWidth: integer; nHeight: integer; ParentWin: HWND; nId: integer): HWND; stdcall external 'AVICAP32.DLL'; + +{$R *.dfm} + +procedure TFormGetPicYS.Initimage(); +var + jpg: TJpegImage; + myStream: TADOBlobStream; + sFieldName: string; + JPStream: TMemoryStream; +begin + jpg := TJpegImage.Create(); + JPStream := TMemoryStream.Create; + try + + with adoqueryImage do + begin + close; + sql.Clear; + sql.Add('select * from TP_File where TFID=' + quotedstr(trim(fkeyNo))); +// showmessage(sql.text); + open; + if not IsEmpty then + begin + if not fieldbyname(pic1).IsNull then + begin + myStream := tadoblobstream.Create(tblobfield(adoqueryImage.fieldbyname(pic1)), bmread); + jpg.LoadFromStream(myStream); + Image2.Picture.Assign(jpg); + myStream.Free; + +// sFieldName := 'D:\ͼƬ鿴' + '\' + trim(pat1); +// try +// IdFTP1.Host := ReadINIFileStr('SYSTEMSET.INI', 'SERVER', 'ַ', '127.0.0.1'); +// IdFTP1.Username := 'three'; +// IdFTP1.Password := '641010'; +// IdFTP1.Connect(); +// except +// ; +// end; +// +// JPStream.Clear; +// if IdFTP1.Connected then +// begin +// try +// IdFTP1.Get('TP\' + Trim(fieldbyname(pat1).AsString), JPStream); +// except +// Application.MessageBox('ͻͼļ', 'ʾ', MB_ICONWARNING); +// IdFTP1.Quit; +// Exit; +// end; +// end +// else +// begin +// Application.MessageBox('޷ļ', 'ʾ', MB_ICONWARNING); +// IdFTP1.Quit; +// Exit; +// end; +// +// if IdFTP1.Connected then +// IdFTP1.Quit; +// JPStream.Position := 0; +// jpg.LoadFromStream(JPStream); +// Image1.Picture.Assign(jpg); + + myStream := tadoblobstream.Create(tblobfield(adoqueryImage.fieldbyname(pic1)), bmread); + jpg.LoadFromStream(myStream); + Image1.Picture.Assign(jpg); + myStream.Free; + end; + end; + end; + finally + jpg.free; + JPStream.Free; + end; +end; + +function TFormGetPicYS.SaveImage(): Boolean; +var + myStream: TADOBlobStream; + fNewFileName: string; +begin + fNewFileName := formatdatetime('yyyyMMddhhnnsszzz', now()) + ExtractFileExt(FilePath); + if fkeyNO = '' then + fkeyNO := fNewFileName; + result := false; + try + with adoqueryImage do + begin + close; + sql.Clear; + sql.Add('select * from TP_File where TFID=' + quotedstr(trim(fkeyNo))); + open; + if RecordCount <= 0 then + begin + Append; + fieldByName('TFID').AsString := fkeyNo; + fieldByName('WBID').AsString := fkeyNo1; + end + else + begin + edit; + fieldByName('WBID').AsString := fkeyNo1; + end; + fieldByName(pat1).AsString := trim(FileName); + fieldByName('TFType').AsString := trim(FTFType); + myStream := TADOBlobStream.Create(TBlobField(FieldByName(pic1)), bmWrite); + MyJpeg.Assign(Image2.Picture.Graphic); + MyJpeg.SaveToStream(myStream); + myStream.Free; + Post; + end; + { + if FilePath <> '' then + begin + try + IdFTP1.Host := ReadINIFileStr('SYSTEMSET.INI', 'SERVER', 'ַ', '127.0.0.1'); + IdFTP1.Host := PicSvr; + IdFTP1.Username := 'three'; + IdFTP1.Password := '641010'; + IdFTP1.Connect(); + IdFTP1.Put(FilePath, 'TP\' + Trim(FileName)); + IdFTP1.Quit; + except + IdFTP1.Quit; + Application.MessageBox('ϴͻͼļʧܣļ', 'ʾ', MB_ICONWARNING); + end; + end; + IdFTP1.Quit; + } + result := true; + except + myStream.Free; + end; +end; + +procedure TFormGetPicYS.ToolButton1Click(Sender: TObject); +var + Ini: TIniFile; +begin + if Twain.LoadLibrary then + begin + {Load source manager} + Twain.SourceManagerLoaded := TRUE; + {Allow user to select source} + SelectedSource := Twain.SelectSource; + if SelectedSource <> -1 then + begin + Ini := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'scanner.ini'); + try + Ini.WriteInteger('SCANNER', 'Scanner', SelectedSource); + finally + Ini.Free; + end; + end {if SelectedSource <> -1} + end + else + ShowMessage('δװɨ'); +end; + +procedure TFormGetPicYS.ToolButton3Click(Sender: TObject); +begin + if Twain.LoadLibrary then + begin + {Load source manager} + Twain.SourceManagerLoaded := TRUE; + + if SelectedSource <> -1 then + begin + {Load source, select transference method and enable (display interface)} + Twain.Source[SelectedSource].Loaded := TRUE; + Twain.Source[SelectedSource].SetICapUnits(tuInches); + Twain.Source[SelectedSource].SetImagelayoutFrame(PicLeft / 25.4, PicTop / 25.4, (PicLeft + PicWidth) / 25.4, (PicTop + PicHeight) / 25.4); + Twain.Source[SelectedSource].SetIYResolution(200); + Twain.Source[SelectedSource].SetIXResolution(200); + Twain.Source[SelectedSource].TransferMode := ttmMemory; + Twain.Source[SelectedSource].EnableSource(FALSE, TRUE); + while Twain.Source[SelectedSource].Enabled do + Application.ProcessMessages; + end; {if SelectedSource <> -1} +// Twain.UnloadLibrary; + end + else + ShowMessage('δװɨ'); +end; + +procedure TFormGetPicYS.TwainTwainAcquire(Sender: TObject; const Index: Integer; Image: TBitmap; var Cancel: Boolean); +begin + Image1.Picture.Assign(Image); + Cancel := TRUE; + CreThumb(150, 150); + SpeedButton2.Enabled := TRUE; +end; + +procedure TFormGetPicYS.FormShow(Sender: TObject); +var + Ini: TIniFile; +begin + { Ini := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'scanner.ini'); + try + SelectedSource := Ini.ReadInteger( 'SCANNER', 'Scanner', 0); + PicLeft := Ini.ReadInteger( 'SCANNER', 'Left', 0); + PicTop := Ini.ReadInteger( 'SCANNER', 'Top', 0); + PicWidth := Ini.ReadInteger( 'SCANNER', 'Width', 100); + PicHeight := Ini.ReadInteger( 'SCANNER', 'Height', 100); + finally + Ini.Free; + end; } + Initimage(); +end; + +{ +procedure TFormGetPic.ToolButton6Click(Sender: TObject); +var + Ini: TIniFile; +begin + FormGetPos := TFormGetPos.Create(Self); + FormGetPos.SpinEdit1.Value := PicLeft; + FormGetPos.SpinEdit2.Value := PicTop; + FormGetPos.SpinEdit3.Value := PicWidth; + FormGetPos.SpinEdit4.Value := PicHeight; + if FormGetPos.ShowModal = 1 then + begin + PicLeft := FormGetPos.SpinEdit1.Value; + PicTop := FormGetPos.SpinEdit2.Value; + PicWidth := FormGetPos.SpinEdit3.Value; + PicHeight := FormGetPos.SpinEdit4.Value; + + Ini := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'scanner.ini'); + try + Ini.WriteInteger( 'SCANNER', 'Left', PicLeft); + Ini.WriteInteger( 'SCANNER', 'Top', PicTop); + Ini.WriteInteger( 'SCANNER', 'Width', PicWidth); + Ini.WriteInteger( 'SCANNER', 'Height', PicHeight); + finally + Ini.Free; + end; + end; + FormGetPos.Free; +end; +} + +procedure TFormGetPicYS.CreThumb(Width, Height: Integer); +var + Bitmap: TBitmap; + Ratio: Double; + ARect: TRect; + AHeight, AHeightOffset: Integer; + AWidth, AWidthOffset: Integer; +begin + Bitmap := TBitmap.Create; + try + Ratio := Image1.Picture.Graphic.Width / Image1.Picture.Graphic.Height; + if Ratio > 1.333 then + begin + AHeight := Round(Width / Ratio); + AHeightOffset := (Height - AHeight) div 2; + AWidth := Width; + AWidthOffset := 0; + end + else + begin + AWidth := Round(Height * Ratio); + AWidthOffset := (Width - AWidth) div 2; + AHeight := Height; + AHeightOffset := 0; + end; + Bitmap.Width := Width; + Bitmap.Height := Height; + Bitmap.Canvas.Brush.Color := clBtnFace; + Bitmap.Canvas.FillRect(Rect(0, 0, Width, Height)); +// StretchDraw original image + ARect := Rect(AWidthOffset, AHeightOffset, AWidth + AWidthOffset, AHeight + AHeightOffset); + Bitmap.Canvas.StretchDraw(ARect, Image1.Picture.Graphic); +// Assign back to the Jpeg, and save to the file + Image2.Picture.Assign(Bitmap); +// MyJpeg1.Assign(Image2.Picture.Graphic); + finally + Bitmap.Free; + end; +end; + +procedure TFormGetPicYS.FormCreate(Sender: TObject); +begin + MyJpeg := TJpegImage.Create; +// MyJpeg1 := TJpegImage.Create; + Button2.Enabled := false; +end; + +procedure TFormGetPicYS.FormDestroy(Sender: TObject); +begin +// MyJpeg1.Free; + MyJpeg.Free; +end; + +procedure TFormGetPicYS.Image1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + ClickPos.x := X; + ClickPos.y := Y; +end; + +procedure TFormGetPicYS.Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); +var + NewPos: TPoint; +begin + {The left button was pressed} + if ssLeft in Shift then + begin + {Calculate new position} + NewPos.X := Image1.Left + X - ClickPos.x; + NewPos.Y := Image1.Top + Y - ClickPos.y; + if NewPos.x + Image1.Width < ScrollBox1.Width then + NewPos.x := ScrollBox1.Width - Image1.Width; + if NewPos.y + Image1.Height < ScrollBox1.Height then + NewPos.y := ScrollBox1.Height - Image1.Height; + if NewPos.X > 0 then + NewPos.X := 0; + if NewPos.Y > 0 then + NewPos.Y := 0; + + Image1.Top := NewPos.Y; + Image1.Left := NewPos.X; + end {if ssLeft in Shift} +end; + +procedure TFormGetPicYS.SpeedButton1Click(Sender: TObject); +begin + if OpenPictureDialog1.Execute then + begin + Image1.Top := 0; + Image1.Left := 0; + Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName); + FilePath := OpenPictureDialog1.FileName; + FileName := ExtractFileName(FilePath); + CreThumb(360, 270); + SpeedButton2.Enabled := TRUE; + end; +end; + +procedure TFormGetPicYS.SpeedButton2Click(Sender: TObject); +begin + + if SaveImage() then + begin + ModalResult := 1; + end + else + begin + application.MessageBox('ݱʧܣ', 'ʾϢ', 0) + end; +// JPStream := TMemoryStream.Create; +// MyJPeg.Assign(Image1.Picture.Graphic); +// MyJPeg.SaveToStream(JPStream); + +end; + +procedure TFormGetPicYS.SpeedButton3Click(Sender: TObject); +begin + ModalResult := 2; +end; + +procedure TFormGetPicYS.Button1Click(Sender: TObject); +begin + hWndC := 0; + try + hWndC := capCreateCaptureWindowA('My Own Capture Window', WS_CHILD or WS_VISIBLE, ScrollBox1.Left, ScrollBox1.Top, ScrollBox1.Width, ScrollBox1.Height, FormGetPicYS.Handle, 0); + if hWndC <> 0 then + begin + SendMessage(hWndC, WM_CAP_SET_CALLBACK_VIDEOSTREAM, 0, 0); + SendMessage(hWndC, WM_CAP_SET_CALLBACK_ERROR, 0, 0); + SendMessage(hWndC, WM_CAP_SET_CALLBACK_STATUSA, 0, 0); + SendMessage(hWndC, WM_CAP_DRIVER_CONNECT, 0, 0); + SendMessage(hWndC, WM_CAP_SET_SCALE, 1, 0); + SendMessage(hWndC, WM_CAP_SET_PREVIEWRATE, 66, 0); + //SendMessage(hWndC, WM_CAP_SEQUENCE_NOFILE, 1, 0); + SendMessage(hWndC, WM_CAP_SET_OVERLAY, 1, 0); + SendMessage(hWndC, WM_CAP_SET_PREVIEW, 1, 0); + Button1.Enabled := false; + Button2.Enabled := true; + end + else + begin + application.MessageBox('ͷʧܣ', 'Ϣ', MB_ICONERROR); + end; + except + end; + application.ProcessMessages; +end; + +procedure TFormGetPicYS.Button2Click(Sender: TObject); +var + sFieldName: string; + MBMP: TBitmap; + MJPG: TJpegImage; +begin + + sFieldName := 'D:\ץͼ'; + if not DirectoryExists(pchar(sFieldName)) then + CreateDirectory(pchar(sFieldName), nil); + + sFieldName := sFieldName + '\' + formatdateTime('yyyyMMddhhnnss', SGetServerDateTime(ADOQuery1)); + + FileName := ExtractFileName(sFieldName); + if hWndC <> 0 then + begin + SendMessage(hWndC, WM_CAP_SAVEDIB, 0, longint(pchar(sFieldName + '.BMP'))); + SendMessage(hWndC, WM_CAP_DRIVER_DISCONNECT, 0, 0); + hWndC := 0; + application.ProcessMessages; + Button1.Enabled := true; + Button2.Enabled := false; + try + MBMP := TBitmap.Create; + MJPG := TJpegImage.Create; + MBMP.LoadFromFile(pchar(sFieldName + '.BMP')); + MJPG.assign(MBMP); + Image1.Picture.Bitmap.Assign(MJPG); + application.ProcessMessages; + MJPG.SaveToFile(pchar(sFieldName + '.JPG')); + CreThumb(240, 180); + finally + MBMP.Free; + MJPG.Free; + if Fileexists(pchar(sFieldName + '.BMP')) then + DeleteFile(pchar(sFieldName + '.BMP')); + FilePath := sFieldName + '.JPG'; + FileName := ExtractFileName(FilePath); + end; + SpeedButton2.Enabled := true; + end; +end; + +procedure TFormGetPicYS.SpeedButton4Click(Sender: TObject); +var + MJPG: TJpegImage; + pathFile: string; +begin + if Image1.Picture.Graphic = nil then + exit; + + MJPG := TJpegImage.Create; + try + SaveDialog1.FileName := FileName; + if SaveDialog1.Execute then + begin + if SaveDialog1.FileName <> '' then + begin + pathFile := trim(SaveDialog1.FileName); + + if (RightStr(UPPERCASE(pathFile), 4) <> '.JPG') and (RightStr(UPPERCASE(pathFile), 5) <> '.JPEG') then + begin + pathFile := pathFile + '.JPG'; + end; + MJPG.Assign(Image1.Picture.Graphic); + if fileexists(pathFile) then + begin + if application.MessageBox(pchar('ļ[' + trim(pathFile) + ']ѴڣǷҪ滻'), 'ʾϢ', MB_YESNO + mb_iconinformation + MB_DEFBUTTON2) = idyes then + MJPG.SaveToFile(pathFile); + end + else + MJPG.SaveToFile(pathFile); + + end; + end; + finally + MJPG.Free; + end; +end; + +procedure TFormGetPicYS.SpeedButton5Click(Sender: TObject); +begin + + try + with adoqueryImage do + begin + close; + sql.Clear; + sql.Add('select * from TP_File where TFID=' + quotedstr(trim(fkeyNo))); + open; + if RecordCount > 0 then + begin + edit; + fieldByName(pat1).Value := null; + FieldByName(pic1).Value := null; + post; + Image1.Picture.Assign(nil); + Image2.Picture.Assign(nil); + end; + end; + except + end; +end; + +end. + diff --git a/基础资料维护(BaseInfo.dll)/testDll.cfg b/基础资料维护(BaseInfo.dll)/testDll.cfg new file mode 100644 index 0000000..6c57635 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/testDll.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"c:\program files\borland\delphi7\Projects\Bpl" +-LN"c:\program files\borland\delphi7\Projects\Bpl" +-w-UNSAFE_TYPE +-w-UNSAFE_CODE +-w-UNSAFE_CAST diff --git a/基础资料维护(BaseInfo.dll)/testDll.dof b/基础资料维护(BaseInfo.dll)/testDll.dof new file mode 100644 index 0000000..e46a928 --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/testDll.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=D:\selfware_83398\selfware\ֿ\Ŀ\self\ά(BaseInfo.dll)\testDll.exe +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/基础资料维护(BaseInfo.dll)/testDll.dpr b/基础资料维护(BaseInfo.dll)/testDll.dpr new file mode 100644 index 0000000..4be4b8a --- /dev/null +++ b/基础资料维护(BaseInfo.dll)/testDll.dpr @@ -0,0 +1,14 @@ +program testDll; + +uses + Forms, + U_testdll in 'U_testdll.pas' {Form1}; + +{$R *.res} + +begin + Application.Initialize; + Application.CreateForm(TForm1, Form1); + Application.Run; +end. + diff --git a/基础资料维护(BaseInfo.dll)/testDll.res b/基础资料维护(BaseInfo.dll)/testDll.res new file mode 100644 index 0000000000000000000000000000000000000000..2d6f24c3d9a870364649288b1c0306b551768325 GIT binary patch literal 876 zcmaJ=Jx{|h5Pc?9%tTwkz(g}L7BMg|6oiDt01W(ruz1OWgw!H+AXAn~{FzE^Brlox z9gK_}J0Q&SIVr99IQ9AN-MzD~Rtx|M;amX24SU~e>Jc?cYMoANyAd5SNQg5+p~aQP zp5HA8_(Prt$CV+GqpB(v{1D!`;JAjld@@+K+i61a|MTdsd{~!%b1ms_KJEh}cpe(` z6jA?@e29>sU}iiwp;b>~TL@2U!O)h%Yr)7`8+a;b=@mD^tI-VbODr7!U{0?gh%d@~e3Ro)^HNMvvU1UHt)HYrq~&L`&fQ16Y1SeYiaObZ>3v kZ4W@7aBc_JIL8%khzs1(H@5yR{A*B1l9s#*|B4j80N@tIJOBUy literal 0 HcmV?d00001 diff --git a/应收应付/FieldExportSet/应付款付款统计列表.INI b/应收应付/FieldExportSet/应付款付款统计列表.INI new file mode 100644 index 0000000..e1695a1 --- /dev/null +++ b/应收应付/FieldExportSet/应付款付款统计列表.INI @@ -0,0 +1,2 @@ +[] +ֶ=Begin/ͻ//Ʒ///Ӧ//ۼǷ/ע diff --git a/应收应付/FieldExportSet/应付款列表.INI b/应收应付/FieldExportSet/应付款列表.INI new file mode 100644 index 0000000..1ca9c5f --- /dev/null +++ b/应收应付/FieldExportSet/应付款列表.INI @@ -0,0 +1,2 @@ +[] +ֶ=Begin//Էλ/ĿժҪ//λ////ԭҽ/ҽ diff --git a/应收应付/FieldExportSet/检验分析订单.INI b/应收应付/FieldExportSet/检验分析订单.INI new file mode 100644 index 0000000..423fd63 --- /dev/null +++ b/应收应付/FieldExportSet/检验分析订单.INI @@ -0,0 +1,2 @@ +[] +ֶ=Begin///ɫ//()/õ diff --git a/应收应付/FieldExportSet/检验报告.INI b/应收应付/FieldExportSet/检验报告.INI new file mode 100644 index 0000000..0961376 --- /dev/null +++ b/应收应付/FieldExportSet/检验报告.INI @@ -0,0 +1,2 @@ +[] +ֶ=Begin diff --git a/应收应付/FieldExportSet/采购单列表.INI b/应收应付/FieldExportSet/采购单列表.INI new file mode 100644 index 0000000..8ea03c0 --- /dev/null +++ b/应收应付/FieldExportSet/采购单列表.INI @@ -0,0 +1,2 @@ +[] +ֶ=Begin/ɹ/Fabric/ diff --git a/应收应付/ProjectGroup1.bpg b/应收应付/ProjectGroup1.bpg new file mode 100644 index 0000000..7c050f6 --- /dev/null +++ b/应收应付/ProjectGroup1.bpg @@ -0,0 +1,23 @@ +#------------------------------------------------------------------------------ +VERSION = BWS.01 +#------------------------------------------------------------------------------ +!ifndef ROOT +ROOT = $(MAKEDIR)\.. +!endif +#------------------------------------------------------------------------------ +MAKE = $(ROOT)\bin\make.exe -$(MAKEFLAGS) -f$** +DCC = $(ROOT)\bin\dcc32.exe $** +BRCC = $(ROOT)\bin\brcc32.exe $** +#------------------------------------------------------------------------------ +PROJECTS = testDll.exe ProductPrice.dll +#------------------------------------------------------------------------------ +default: $(PROJECTS) +#------------------------------------------------------------------------------ + +testDll.exe: testDll.dpr + $(DCC) + +ProductPrice.dll: ProductPrice.dpr + $(DCC) + + diff --git a/应收应付/SYSTEMSET.ini b/应收应付/SYSTEMSET.ini new file mode 100644 index 0000000..e4904d4 --- /dev/null +++ b/应收应付/SYSTEMSET.ini @@ -0,0 +1,3 @@ +[SERVER] +ַ=127.0.0.1 +=XXXXXXX1 \ No newline at end of file diff --git a/应收应付/U_BpckXjList.dfm b/应收应付/U_BpckXjList.dfm new file mode 100644 index 0000000..0f57ee0 --- /dev/null +++ b/应收应付/U_BpckXjList.dfm @@ -0,0 +1,593 @@ +object frmBpckXjList: TfrmBpckXjList + Left = 164 + Top = 134 + Width = 1088 + Height = 579 + Caption = #20986#24211#21015#34920 + 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 = 1072 + Height = 62 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#35810 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + Visible = False + end + object TBAdd: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20986#24211 + ImageIndex = 3 + Visible = False + OnClick = TBAddClick + end + object TBsmADD: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25195#25551#20986#24211 + ImageIndex = 3 + Visible = False + OnClick = TBsmADDClick + end + object TBEdit: TToolButton + Left = 276 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = TBEditClick + end + object TBDel: TToolButton + Left = 339 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Wrap = True + Visible = False + OnClick = TBDelClick + end + object Tchk: TToolButton + Left = 0 + Top = 30 + AutoSize = True + Caption = #23457#26680 + ImageIndex = 41 + OnClick = TchkClick + end + object Tnochk: TToolButton + Left = 63 + Top = 30 + AutoSize = True + Caption = #25764#38144#23457#26680 + ImageIndex = 56 + Visible = False + OnClick = TnochkClick + end + object TBExport: TToolButton + Left = 150 + Top = 30 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 213 + Top = 30 + AutoSize = True + Caption = #25171#21360#32454#30721#21333 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object TbPrint1: TToolButton + Left = 312 + Top = 30 + Caption = #25171#21360#21457#36135#21333 + ImageIndex = 12 + Visible = False + OnClick = TbPrint1Click + end + object TBClose: TToolButton + Left = 407 + Top = 30 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 62 + Width = 1072 + Height = 45 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #20986#24211#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 168 + Top = 16 + Width = 6 + Height = 12 + Caption = '-' + end + object Label3: TLabel + Left = 476 + Top = 56 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 312 + Top = 16 + Width = 26 + Height = 12 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 168 + Top = 52 + Width = 52 + Height = 12 + Caption = #20986#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 328 + Top = 56 + Width = 24 + Height = 12 + Caption = #20179#24211 + end + object Label7: TLabel + Left = 472 + Top = 84 + Width = 52 + Height = 12 + Caption = #20986#24211#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 180 + Top = 11 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object P_CodeName: TEdit + Tag = 2 + Left = 528 + Top = 52 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = P_CodeNameChange + end + object custName: TEdit + Tag = 2 + Left = 364 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = P_CodeNameChange + end + object CRType: TComboBox + Tag = 2 + Left = 224 + Top = 48 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 4 + OnChange = P_CodeNameChange + Items.Strings = ( + '' + #38144#21806#20986#24211 + #21152#24037#20986#24211) + end + object ckName: TComboBox + Left = 356 + Top = 52 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 5 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object inoutNo: TEdit + Tag = 2 + Left = 712 + Top = 64 + Width = 100 + Height = 20 + TabOrder = 6 + OnChange = P_CodeNameChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 129 + Width = 1072 + Height = 396 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column2 + end + item + Kind = skSum + Column = v1Column6 + end + item + Kind = skSum + Column = v1Column7 + end + item + Kind = skSum + Column = v1Column8 + end + item + Kind = skSum + Column = v1Column3 + end + item + Kind = skSum + Column = v1Column4 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object v1Column1: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 50 + end + object v1CRNO: TcxGridDBColumn + Caption = #20986#24211#32534#21495 + DataBinding.FieldName = 'CRNO' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 85 + end + object v1custName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'custName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 93 + end + object v1TocustName: TcxGridDBColumn + Caption = #21457#24448#21333#20301 + DataBinding.FieldName = 'TocustName' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1CRTime: TcxGridDBColumn + Caption = #20986#24211#26085#26399 + DataBinding.FieldName = 'CRTime' + Options.Editing = False + Width = 124 + end + object v1MJID: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1MJXH: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1P_Code: TcxGridDBColumn + Caption = #21697#21495 + DataBinding.FieldName = 'P_Code' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column2: TcxGridDBColumn + Caption = #36135#27454#37329#39069 + DataBinding.FieldName = 'money' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 82 + end + object v1Column6: TcxGridDBColumn + Caption = #25171#21253#36153 + DataBinding.FieldName = 'packFee' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 91 + end + object v1Column7: TcxGridDBColumn + Caption = #26679#26495#36153 + DataBinding.FieldName = 'YBFEE' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 76 + end + object v1Column8: TcxGridDBColumn + Caption = #20854#23427#36153 + DataBinding.FieldName = 'OtherFee' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 84 + end + object v1Column3: TcxGridDBColumn + Caption = #24212#25910#29616#37329 + DataBinding.FieldName = 'YsXj' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = CPCK_DataLink.cxStyle_fontclBlue + Styles.Footer = CPCK_DataLink.cxStyle_fontclBlue + Styles.Header = CPCK_DataLink.cxStyle_fontclBlue + Width = 75 + end + object v1Column4: TcxGridDBColumn + Caption = #23454#25910#29616#37329 + DataBinding.FieldName = 'xjNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = CPCK_DataLink.cxStyle_fontclFuchsia + Styles.Footer = CPCK_DataLink.cxStyle_fontclFuchsia + Styles.Header = CPCK_DataLink.cxStyle_fontclFuchsia + Width = 126 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 107 + Width = 1072 + Height = 22 + Align = alTop + Style = 9 + TabIndex = 0 + TabOrder = 3 + Tabs.Strings = ( + #26410#23457#26680 + #24050#23457#26680 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectBottom = 22 + ClientRectRight = 1072 + ClientRectTop = 19 + object CheckBox1: TCheckBox + Left = 196 + Top = 1 + Width = 97 + Height = 17 + Caption = #20840#36873 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + OnClick = CheckBox1Click + end + end + object ADOQueryCmd: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 796 + Top = 52 + end + object ADOQueryTmp: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 624 + Top = 100 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 760 + Top = 49 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 828 + Top = 97 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 592 + Top = 52 + end + object ADOPrint: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 836 + Top = 56 + end + object RMDB_MD: TRMDBDataSet + Visible = True + DataSet = ADOPrint + Left = 876 + Top = 48 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 896 + Top = 8 + ReportData = {} + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 948 + Top = 20 + end + object ADOQuery1: TADOQuery + Parameters = <> + Left = 732 + Top = 32 + end +end diff --git a/应收应付/U_BpckXjList.pas b/应收应付/U_BpckXjList.pas new file mode 100644 index 0000000..22321bd --- /dev/null +++ b/应收应付/U_BpckXjList.pas @@ -0,0 +1,540 @@ +unit U_BpckXjList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, + cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, DBClient, ADODB, cxGridCustomPopupMenu, + cxGridPopupMenu, RM_Common, RM_Class, RM_e_Xls, RM_GridReport, RM_System, + RM_Dataset, cxPC, cxCheckBox; + +type + TfrmBpckXjList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + v1CRTime: TcxGridDBColumn; + v1CRNO: TcxGridDBColumn; + Label2: TLabel; + Label3: TLabel; + Label4: TLabel; + P_CodeName: TEdit; + custName: TEdit; + CRType: TComboBox; + Label5: TLabel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + v1MJID: TcxGridDBColumn; + v1MJXH: TcxGridDBColumn; + ckName: TComboBox; + Label6: TLabel; + ADOPrint: TADOQuery; + RMDB_MD: TRMDBDataSet; + RMGridReport1: TRMGridReport; + RMXLSExport1: TRMXLSExport; + v1P_Code: TcxGridDBColumn; + TBsmADD: TToolButton; + inoutNo: TEdit; + Label7: TLabel; + v1custName: TcxGridDBColumn; + v1TocustName: TcxGridDBColumn; + TbPrint1: TToolButton; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + cxTabControl1: TcxTabControl; + Tchk: TToolButton; + Tnochk: TToolButton; + CheckBox1: TCheckBox; + v1Column1: TcxGridDBColumn; + ADOQuery1: TADOQuery; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure P_CodeNameChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBsmADDClick(Sender: TObject); + procedure TbPrint1Click(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure TchkClick(Sender: TObject); + procedure TnochkClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + private + procedure InitGrid(); + procedure SetComboBox(); + { Private declarations } + public + fCKName:string; + { Public declarations } + end; + +var + frmBpckXjList: TfrmBpckXjList; + +implementation +uses + U_DataLink,U_Fun10,U_ZDYHelp, U_BpCk, U_BpSmCk; +{$R *.dfm} +procedure TfrmBpckXjList.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPCK'' '); + if trim(fCKName)<>'' then + sql.Add('and zdyName='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count>0 then ckName.ItemIndex:=0; + + CRType.Items.Clear; + CRType.Items.Add(''); + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPCKTYPE'''); + if trim(fCKName)<>'' then + sql.Add('and note='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count>0 then CRType.ItemIndex:=0; +end; +procedure TfrmBpckXjList.InitGrid(); +begin + try + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select A.CRNO,A.CRTime,A.CustName,packFee,YBfee,OtherFee,A.IsYjx,A.xjNum,status,SUM(Money) as Money,SUM(Money)+packFee+YBfee+OtherFee as YsXj '); + sql.Add('from CP_InOut A '); + sql.Add('where CRTime>='''+formatdateTime('yyyy-MM-dd',begdate.Date)+''' '); + sql.Add('and CRTime<'''+formatdateTime('yyyy-MM-dd',enddate.Date+1)+''' '); + sql.Add('and CRFlag='''' and IsYjx='''' '); + IF cxTabControl1.TabIndex<2 then + sql.Add('and isnull(A.status,''0'')='''+inttostr(cxTabControl1.TabIndex)+''' '); + if trim(FckName)<>'' then + sql.Add('and ckName='+quotedstr(trim(FckName)) ); + sql.Add('group by A.CRNO,A.CRTime,A.CustName,packFee,YBfee,OtherFee,A.IsYjx,A.xjNum,status '); + open; + end; + SCreateCDS20(adoqueryTmp,CDS_Main); + SInitCDSData20(adoqueryTmp,CDS_Main); + finally + end; +end; + +procedure TfrmBpckXjList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + writeCxGrid(self.Caption,Tv1,'Ʒֿ'); + Action:=cafree; +end; + +procedure TfrmBpckXjList.FormDestroy(Sender: TObject); +begin + frmBpckXjList:=nil; +end; + +procedure TfrmBpckXjList.TBAddClick(Sender: TObject); +begin + frmbpck:=Tfrmbpck.create(self); + with frmbpck do + begin + fkeyNo:=''; + fType:=0; + fckName:=self.fckName; + if showmodal=1 then + begin + TBRafresh.Click; + self.CDS_Main.Locate('crNo',trim(fkeyNo),[]) ; + end; + free; + end; +end; + +procedure TfrmBpckXjList.P_CodeNameChange(Sender: TObject); +begin + if ADOQueryTmp.Active=False then Exit; + SDofilter(ADOQueryTmp,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryTmp,CDS_Main); + SInitCDSData20(ADOQueryTmp,CDS_Main); +end; + +procedure TfrmBpckXjList.FormShow(Sender: TObject); +begin + readCxGrid(self.Caption,Tv1,'Ʒֿ'); + SetComboBox(); + InitGrid(); +end; + +procedure TfrmBpckXjList.FormCreate(Sender: TObject); +begin + BegDate.Date:=DServerDate-7; + EndDate.Date:=DServerDate; + cxGrid1.Align:=alclient; + +end; + +procedure TfrmBpckXjList.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmBpckXjList.TBEditClick(Sender: TObject); +begin + if cds_main.IsEmpty then exit; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR A'); + SQL.Add('where A.mainid='''+Trim(CDS_Main.fieldbyname('CRNO').AsString)+''' '); + sQL.Add('and A.hxNum<>0 '); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('˵Ѿݣ޸ģ','ʾ',0); + Exit; + end; + + + { with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from BP_InOut A'); + SQL.Add('where A.kcid='''+Trim(CDS_Main.fieldbyname('kcid').AsString)+''' '); + sQL.Add('and A.CRFlag='''''); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('Ѳݣ޸ģ','ʾ',0); + Exit; + end; } + + frmbpck:=Tfrmbpck.create(self); + with frmbpck do + begin + fkeyNo:=self.cds_main.fieldbyname('CRNO').AsString; + fType:=1; + fckName:=self.fckName; + if showmodal=1 then + begin + TBRafresh.Click; + self.CDS_Main.Locate('crNo',trim(fkeyNo),[]) ; + end; + free; + end; +end; + +procedure TfrmBpckXjList.TBDelClick(Sender: TObject); +var + YFID,CRID:string; +begin + if CDS_Main.IsEmpty then Exit; + { if Trim(CDS_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; } + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR A'); + SQL.Add('where A.mainid='''+Trim(CDS_Main.fieldbyname('CRNO').AsString)+''' '); + sQL.Add('and A.hxNum<>0 '); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('˵Ѿݣɾ','ʾ',0); + Exit; + end; + + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + + try + + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from CP_InOut '); + SQL.Add('where CRNO='''+Trim(CDS_Main.fieldbyname('CRNO').AsString)+''' '); + sql.Add('delete from YF_Money_CR '); + SQL.Add('where mainID='''+Trim(CDS_Main.fieldbyname('CRNO').AsString)+''' '); + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + execsql; + end; + TBRafresh.Click; + except + Application.MessageBox('ɾʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmBpckXjList.TBRafreshClick(Sender: TObject); +begin + initGrid(); +end; + +procedure TfrmBpckXjList.TBPrintClick(Sender: TObject); +var + filepath:string; +begin + if CDS_Main.IsEmpty then exit; + + with AdoPrint do + begin + close; + sql.Clear; + sql.Add('exec P_Print_cpCkMd '); + sql.Add('@inoutNo='+quotedstr(trim(CDS_Main.fieldbyname('inoutNO').AsString))); + sql.Add(',@flag='+quotedstr(trim(''))); + open; + end; + + try + filepath:=ExtractFilePath(Application.ExeName) + 'report\뵥.rmf'; + if not FileExists(Pchar(filepath)) then + begin + application.MessageBox(pchar('ļ['+filepath+']ڣ'),'ʾϢ',MB_IConError); + exit; + end; + RMVariables['dtxz'] :=FormatDateTime('yyyy-mm-dd',date()); + RMVariables['zdr'] :=trim(DName); + RMVariables['Filler'] :=trim(CDS_Main.fieldbyname('Filler').AsString); + RMGridReport1.LoadFromFile(filepath); + RMGridReport1.ShowReport; + finally + + end; + +end; + +procedure TfrmBpckXjList.TBExportClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid1); +end; + +procedure TfrmBpckXjList.TBsmADDClick(Sender: TObject); +begin + frmbpsmck:=Tfrmbpsmck.create(self); + with frmbpsmck do + begin + fkeyNo:=''; + fType:=0; + fckName:=self.fckName; + if showmodal=1 then + begin + TBRafresh.Click; + // self.CDS_Main.Locate('crNo',trim(fkeyNo),[]) ; + end; + TBRafresh.Click; + free; + end; +end; + +procedure TfrmBpckXjList.TbPrint1Click(Sender: TObject); +var + filepath:string; +begin + if CDS_Main.IsEmpty then exit; + + with AdoPrint do + begin + close; + sql.Clear; + sql.Add('select * from CP_INout A '); + sql.Add('where A.inoutNo='+quotedstr(trim(CDS_Main.fieldbyname('inoutNO').AsString))); + open; + end; + + try + filepath:=ExtractFilePath(Application.ExeName) + 'report\.rmf'; + if not FileExists(Pchar(filepath)) then + begin + application.MessageBox(pchar('ļ['+filepath+']ڣ'),'ʾϢ',MB_IConError); + exit; + end; + RMVariables['dtxz'] :=FormatDateTime('yyyy-mm-dd',date()); + RMVariables['zdr'] :=trim(DName); + RMVariables['Filler'] :=trim(CDS_Main.fieldbyname('Filler').AsString); + RMGridReport1.LoadFromFile(filepath); + RMGridReport1.ShowReport; + finally + + end; + +end; + +procedure TfrmBpckXjList.cxTabControl1Change(Sender: TObject); +begin + Tchk.Visible:=false; + TNochk.Visible:=false; + if cxTabControl1.TabIndex=0 then + begin + Tchk.Visible:=true; + end; + if cxTabControl1.TabIndex=1 then + begin + TNochk.Visible:=true; + end; +InitGrid(); + +end; + +procedure TfrmBpckXjList.TchkClick(Sender: TObject); +begin + IF CDS_Main.IsEmpty then exit; + + if CDS_Main.Locate('ssel',true,[])=false then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_Main do + begin + DisableControls; + First; + while not eof do + begin + IF Fieldbyname('ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update CP_InOut SET status=''1'' '); + sql.Add('where CRNO ='+quotedstr(trim(CDS_Main.fieldbyname('CRNO').AsString))); + execsql; + end; + end; + next; + end; + First; + EnableControls; + end; + + InitGrid(); + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmBpckXjList.TnochkClick(Sender: TObject); +begin + IF CDS_Main.IsEmpty then exit; + + if CDS_Main.Locate('ssel',true,[])=false then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_Main do + begin + DisableControls; + First; + while not eof do + begin + IF Fieldbyname('ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update CP_InOut SET status=''0'' '); + sql.Add('where CRNO ='+quotedstr(trim(CDS_Main.fieldbyname('CRNO').AsString))); + execsql; + end; + end; + next; + end; + First; + EnableControls; + end; + + InitGrid(); + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmBpckXjList.CheckBox1Click(Sender: TObject); +begin + IF CDS_Main.IsEmpty then exit; + with CDS_Main do + begin + DisableControls; + first; + while not eof do + begin + edit; + fieldbyname('ssel').Value:=checkbox1.Checked; + post; + next; + end; + First; + EnableControls; + end; +end; + +end. diff --git a/应收应付/U_DataLink.dfm b/应收应付/U_DataLink.dfm new file mode 100644 index 0000000..c346f43 --- /dev/null +++ b/应收应付/U_DataLink.dfm @@ -0,0 +1,18111 @@ +object DataLink_YSYF: TDataLink_YSYF + OldCreateOrder = False + OnDestroy = DataModuleDestroy + Left = 785 + Top = 347 + Height = 349 + Width = 482 + object AdoDataLink: TADOQuery + Connection = ADOLink + Parameters = <> + Left = 136 + Top = 8 + end + object ADOLink: TADOConnection + LoginPrompt = False + Left = 48 + Top = 8 + end + object ThreeImgList: TImageList + Height = 24 + Width = 24 + Left = 48 + Top = 72 + 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 + object ThreeLookAndFeelCol: TcxLookAndFeelController + Kind = lfStandard + NativeStyle = False + Left = 253 + Top = 12 + end + object ThreeColorBase: TcxStyleRepository + Left = 139 + Top = 80 + PixelsPerInch = 96 + object SHuangSe: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = 4707838 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + TextColor = clBtnText + end + object SkyBlue: TcxStyle + AssignedValues = [svColor, svFont] + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object Default: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object QHuangSe: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object FontBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object TextSHuangSe: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlack + end + object FonePurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindow + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlack + end + object FoneClMaroon: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clMaroon + end + object FoneRed: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clRed + end + object RowColor: TcxStyle + AssignedValues = [svColor] + Color = 16311512 + end + object handBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxBlue: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16711731 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object Green: TcxStyle + AssignedValues = [svColor, svFont] + Color = clGreen + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + end + object cxStyleRepository1: TcxStyleRepository + Left = 265 + Top = 174 + PixelsPerInch = 96 + object cxStyle1: TcxStyle + AssignedValues = [svColor] + Color = clInactiveCaption + end + object cxStyle2: TcxStyle + AssignedValues = [svColor, svTextColor] + Color = 4707838 + TextColor = clBtnText + end + object cxStyle_gridRow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16311512 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_gridFoot: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridHead: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridGroupBox: TcxStyle + AssignedValues = [svColor, svFont] + Color = clMoneyGreen + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_yellow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_fontBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_fontclFuchsia: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clFuchsia + end + object cxStyle_fontclPurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clPurple + end + object cxStyle_fontclGreen: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clGreen + end + object cxStyle_fontclBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object cxStyle_fontclTeal: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clTeal + end + object cxStyle_fontclOlive: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + end +end diff --git a/应收应付/U_DataLink.pas b/应收应付/U_DataLink.pas new file mode 100644 index 0000000..aaadab2 --- /dev/null +++ b/应收应付/U_DataLink.pas @@ -0,0 +1,87 @@ +unit U_DataLink; + +interface + +uses + SysUtils, Classes, DB, ADODB, ImgList, Controls, cxStyles, cxLookAndFeels, + Windows,Messages,forms,OleCtnrs,DateUtils, cxClasses; +var + DConString:String; {ȫַ} + server, dtbase, user, pswd: String; {ݿӲ} + DCurHandle:hwnd; //ǰ + DName:string ; //#û#// + DCode:string ; //#û#// + Ddatabase:string; //#ݿ#// + DTitCaption:string; //##// + DParameters1,DParameters2,DParameters3,DParameters4,DParameters5:string;// ⲿ + DParameters6,DParameters7,DParameters8,DParameters9,DParameters10:string;//ⲿ + OldDllApp:Tapplication; //ԭо + NewDllApp: Tapplication;//ǰ + MainApplication: Tapplication ; + DFormCode:integer; //ǰں + IsDelphiLanguage:integer; + DServerDate:TdateTime; //ʱ + DCompany:string; //˾ + IpCall:Integer; + IpWLDZStr:string; +type + TDataLink_YSYF = class(TDataModule) + AdoDataLink: TADOQuery; + ADOLink: TADOConnection; + ThreeImgList: TImageList; + ThreeLookAndFeelCol: TcxLookAndFeelController; + ThreeColorBase: TcxStyleRepository; + SHuangSe: TcxStyle; + SkyBlue: TcxStyle; + Default: TcxStyle; + QHuangSe: TcxStyle; + Red: TcxStyle; + FontBlue: TcxStyle; + TextSHuangSe: TcxStyle; + FonePurple: TcxStyle; + FoneClMaroon: TcxStyle; + FoneRed: TcxStyle; + RowColor: TcxStyle; + handBlack: TcxStyle; + cxBlue: TcxStyle; + Green: TcxStyle; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxStyle_gridRow: TcxStyle; + cxStyle_gridFoot: TcxStyle; + cxStyle_gridHead: TcxStyle; + cxStyle_gridGroupBox: TcxStyle; + cxStyle_yellow: TcxStyle; + cxStyle_Red: TcxStyle; + cxStyle_fontBlack: TcxStyle; + cxStyle_fontclFuchsia: TcxStyle; + cxStyle_fontclPurple: TcxStyle; + cxStyle_fontclGreen: TcxStyle; + cxStyle_fontclBlue: TcxStyle; + cxStyle_fontclTeal: TcxStyle; + cxStyle_fontclOlive: TcxStyle; + procedure DataModuleDestroy(Sender: TObject); + private + { Private declarations } + public + { Public declarations } + end; + +var + DataLink_YSYF: TDataLink_YSYF; + +implementation +{$R *.dfm} + + +procedure TDataLink_YSYF.DataModuleDestroy(Sender: TObject); +begin + DataLink_YSYF:=nil; +end; + +end. + + + + diff --git a/应收应付/U_FDINVOICE.dfm b/应收应付/U_FDINVOICE.dfm new file mode 100644 index 0000000..99b1996 --- /dev/null +++ b/应收应付/U_FDINVOICE.dfm @@ -0,0 +1,473 @@ +object frmFDINVOICE: TfrmFDINVOICE + Left = -8 + Top = -8 + Width = 1382 + Height = 754 + Caption = #21457#31080#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1366 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object TADD: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = TADDClick + end + object TUPDATE: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TUPDATEClick + end + object TBDEL: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDELClick + end + object TSel: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + OnClick = TSelClick + end + object TCHK: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #23457#26680 + ImageIndex = 41 + OnClick = TCHKClick + end + object TNOCHK: TToolButton + Left = 441 + Top = 0 + AutoSize = True + Caption = #25764#38144#23457#26680 + ImageIndex = 86 + OnClick = TNOCHKClick + end + object ToolButton1: TToolButton + Left = 528 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 591 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1366 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 488 + Top = 13 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 328 + Top = 13 + Width = 52 + Height = 12 + Caption = #21457#31080#21495#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 40 + Top = 13 + Width = 52 + Height = 12 + Caption = #21457#31080#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 186 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 664 + Top = 13 + Width = 52 + Height = 12 + Caption = #25104#21697#35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 832 + Top = 13 + Width = 52 + Height = 12 + Caption = #24320#31080#21333#20301 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object P_CodeName: TEdit + Tag = 2 + Left = 540 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = InvoiceNoChange + end + object InvoiceNo: TEdit + Tag = 2 + Left = 380 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = InvoiceNoChange + end + object begdate: TDateTimePicker + Left = 94 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 204 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + object P_Spec: TEdit + Tag = 2 + Left = 716 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = InvoiceNoChange + end + object FactoryName: TEdit + Tag = 2 + Left = 884 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 5 + OnChange = InvoiceNoChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 91 + Width = 1366 + Height = 625 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_FP + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Qty + end + item + Kind = skSum + Column = v1Money + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_YSYF.FonePurple + object v1FactoryName: TcxGridDBColumn + Caption = #24320#31080#21333#20301 + DataBinding.FieldName = 'FactoryName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 76 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 94 + end + object v1P_Spec: TcxGridDBColumn + Caption = #25104#21697#35268#26684 + DataBinding.FieldName = 'P_Spec' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 81 + end + object v1InvoiceNo: TcxGridDBColumn + Caption = #21457#31080#21495#30721 + DataBinding.FieldName = 'InvoiceNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object v1InvoiceType: TcxGridDBColumn + Caption = #21457#31080#31867#22411 + DataBinding.FieldName = 'InvoiceType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 75 + end + object v1InvoiceDate: TcxGridDBColumn + Caption = #21457#31080#26085#26399 + DataBinding.FieldName = 'InvoiceDate' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 79 + end + object v1ToFactoryName: TcxGridDBColumn + Caption = #36827#26041 + DataBinding.FieldName = 'ToFactoryName' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 72 + end + object v1Qty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Price: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1QtyUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 78 + end + object v1Money: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'Money' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = cxStyle1 + Width = 81 + end + object v1PriceUnit: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 74 + end + object v1note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'note' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 145 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv1 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 70 + Width = 1366 + Height = 21 + Align = alTop + Style = 9 + TabIndex = 0 + TabOrder = 3 + Tabs.Strings = ( + #26410#23457#26680 + #24050#23457#26680 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectBottom = 21 + ClientRectRight = 1366 + ClientRectTop = 19 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 256 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_FP: TDataSource + DataSet = CDS_FP + Left = 443 + Top = 243 + end + object CDS_FP: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end + object cxStyleRepository1: TcxStyleRepository + object cxStyle1: TcxStyle + AssignedValues = [svTextColor] + TextColor = clRed + end + end +end diff --git a/应收应付/U_FDINVOICE.pas b/应收应付/U_FDINVOICE.pas new file mode 100644 index 0000000..fed1a56 --- /dev/null +++ b/应收应付/U_FDINVOICE.pas @@ -0,0 +1,330 @@ +unit U_FDINVOICE; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDropDownEdit, cxPC; + +type + TfrmFDINVOICE = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + P_CodeName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + InvoiceNo: TEdit; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_FP: TDataSource; + CDS_FP: TClientDataSet; + TADD: TToolButton; + TUPDATE: TToolButton; + TBDEL: TToolButton; + v1InvoiceNo: TcxGridDBColumn; + v1InvoiceType: TcxGridDBColumn; + v1InvoiceDate: TcxGridDBColumn; + v1ToFactoryName: TcxGridDBColumn; + v1FactoryName: TcxGridDBColumn; + v1note: TcxGridDBColumn; + v1P_CodeName: TcxGridDBColumn; + v1P_Spec: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1Money: TcxGridDBColumn; + v1Price: TcxGridDBColumn; + v1QtyUnit: TcxGridDBColumn; + v1PriceUnit: TcxGridDBColumn; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + Label4: TLabel; + P_Spec: TEdit; + Label5: TLabel; + FactoryName: TEdit; + TCHK: TToolButton; + TNOCHK: TToolButton; + cxTabControl1: TcxTabControl; + TSel: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure InvoiceNoChange(Sender: TObject); + procedure TADDClick(Sender: TObject); + procedure TUPDATEClick(Sender: TObject); + procedure TBDELClick(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure TCHKClick(Sender: TObject); + procedure TNOCHKClick(Sender: TObject); + procedure TSelClick(Sender: TObject); + private + { Private declarations } + + procedure InitGrid(); + procedure SetStatus(); + public + fInvoiceFlag:string; + { Public declarations } + end; + +var + frmFDINVOICE: TfrmFDINVOICE; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp,U_FDINVOICE_Sub; + +{$R *.dfm} + +procedure TfrmFDINVOICE.SetStatus(); +begin + tchk.Visible:=false; + tnochk.Visible:=false; + TUPDATE.Visible:=false; + tbdel.Visible:=false; + if trim(DParameters1)<>'Ȩ' then + begin + case cxTabControl1.TabIndex of + 0:begin + TUPDATE.Visible:=true; + tbdel.Visible:=true; + end; + 1:begin + end; + 2:begin + end; + end; + end + else + begin + case cxTabControl1.TabIndex of + 0:begin + tchk.Visible:=true; + TUPDATE.Visible:=true; + tbdel.Visible:=true; + end; + 1:begin + tnochk.Visible:=true; + end; + 2:begin + end; + end; + end; + + IF fInvoiceFlag='' then + fInvoiceFlag:='1'; +end; + +procedure TfrmFDINVOICE.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + SQL.Clear; + sql.Add('select A.*,B.* from FD_Invoice A '); + sql.add('inner join FD_Invoicesub B on B.InvoiceNo=A.InvoiceNo '); + sql.add('where A.InvoiceDate>='''+formatdatetime('yyyy-MM-dd',begdate.datetime)+''' '); + sql.Add(' and A.InvoiceDate<'''+formatdateTime('yyyy-MM-dd',enddate.DateTime+1)+''' '); + sql.Add(' and InvoiceFlag='''+fInvoiceFlag+''' '); + if cxTabControl1.TabIndex=0 then + sql.add(' and A.Chkstatus=''0'''); + if cxTabControl1.TabIndex=1 then + sql.add(' and A.Chkstatus=''1'''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_FP); + SInitCDSData20(ADOQueryMain,CDS_FP); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmFDINVOICE.FormDestroy(Sender: TObject); +begin + frmFDINVOICE:=nil; +end; + +procedure TfrmFDINVOICE.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmFDINVOICE.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ʊ',Tv1,''); + Close; +end; +procedure TfrmFDINVOICE.FormShow(Sender: TObject); +begin + ReadCxGrid('Ʊ',Tv1,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-30; + + SetStatus(); + InitGrid(); +end; + +procedure TfrmFDINVOICE.TBRafreshClick(Sender: TObject); +begin + begdate.SetFocus; + InitGrid(); +end; + +procedure TfrmFDINVOICE.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_FP); + SInitCDSData20(ADOQueryMain,CDS_FP); + end; +end; + +procedure TfrmFDINVOICE.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv1,ADOQueryMain,'Ʊб'); +end; + +procedure TfrmFDINVOICE.InvoiceNoChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmFDINVOICE.TADDClick(Sender: TObject); +begin + FrmInvoice_Sub:=TFrmInvoice_Sub.Create(self); + with FrmInvoice_Sub do + begin + FInvoiceNo:=''; + fInvoiceFlag:=self.fInvoiceFlag; + if showmodal=1 then + begin + initGrid(); + end; + free; + end; + +end; + +procedure TfrmFDINVOICE.TUPDATEClick(Sender: TObject); +begin + FrmInvoice_Sub:=TFrmInvoice_Sub.Create(self); + with FrmInvoice_Sub do + begin + InvoiceNo.Enabled:=False; + FInvoiceNo:=trim(CDS_FP.fieldbyname('InvoiceNo').asstring); + fInvoiceFlag:=self.fInvoiceFlag; + if showmodal=1 then + begin + initGrid(); + end; + free; + end; + +end; + +procedure TfrmFDINVOICE.TBDELClick(Sender: TObject); +begin + if CDS_FP.IsEmpty then exit; + if application.MessageBox('ȷҪɾƱ','ʾ',1)=2 then exit; + with ADOQueryMain do + begin + close; + sql.Clear; + sql.add('delete from FD_Invoicesub where InvoiceNo='''+trim(CDS_FP.fieldbyname('invoiceNo').asstring)+''' '); + sql.add('delete from FD_Invoice where InvoiceNo='''+trim(CDS_FP.fieldbyname('invoiceNo').asstring)+''' '); + execsql; + end; + initGrid(); +end; + +procedure TfrmFDINVOICE.cxTabControl1Change(Sender: TObject); +begin + SetStatus(); + initGrid(); +end; + +procedure TfrmFDINVOICE.TCHKClick(Sender: TObject); +begin + if CDS_FP.IsEmpty then exit; + try + with ADOQueryMain do + begin + close; + sql.Clear; + sql.add('update FD_Invoicesub set Chker='''+trim(DName)+''',Chktime=getdate(),chkstatus=''1'' '); + sql.add('where InvoiceNo='''+trim(CDS_FP.fieldbyname('invoiceNo').asstring)+''' '); + execsql; + end; + application.MessageBox('˳ɹ','ʾ'); + initGrid(); + except; + application.MessageBox('ʧ','ʾ'); + end; +end; + +procedure TfrmFDINVOICE.TNOCHKClick(Sender: TObject); +begin + if CDS_FP.IsEmpty then exit; + try + with ADOQueryMain do + begin + close; + sql.Clear; + sql.add('update FD_Invoicesub set Chker=null,Chktime=null,chkstatus=''0'' '); + sql.add('where InvoiceNo='''+trim(CDS_FP.fieldbyname('invoiceNo').asstring)+''' '); + execsql; + end; + application.MessageBox('ɹ','ʾ'); + initGrid(); + except; + application.MessageBox('ʧ','ʾ'); + end; +end; + +procedure TfrmFDINVOICE.TSelClick(Sender: TObject); +begin + FrmInvoice_Sub:=TFrmInvoice_Sub.Create(self); + with FrmInvoice_Sub do + begin + TSave.Visible:=False; + ToolBar2.Enabled:=False; + FInvoiceNo:=trim(CDS_FP.fieldbyname('InvoiceNo').asstring); + fInvoiceFlag:=self.fInvoiceFlag; + if showmodal=1 then + begin + + end; + end; +end; + +end. diff --git a/应收应付/U_FDINVOICE_Sub.dfm b/应收应付/U_FDINVOICE_Sub.dfm new file mode 100644 index 0000000..70d4969 --- /dev/null +++ b/应收应付/U_FDINVOICE_Sub.dfm @@ -0,0 +1,391 @@ +object FrmInvoice_Sub: TFrmInvoice_Sub + Left = 192 + Top = 130 + Width = 993 + Height = 569 + Caption = #20449#24687#24405#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 977 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ShowCaptions = True + TabOrder = 0 + object TSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 189 + Width = 977 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar2' + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ShowCaptions = True + TabOrder = 1 + object TADD: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = TADDClick + end + object TDEl: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = TDElClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 977 + Height = 158 + Align = alTop + BevelOuter = bvLowered + TabOrder = 2 + object Label1: TLabel + Left = 36 + Top = 21 + Width = 52 + Height = 12 + Caption = #21457#31080#21495#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 472 + Top = 21 + Width = 52 + Height = 12 + Caption = #24320#31080#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 260 + Top = 21 + Width = 52 + Height = 12 + Caption = #21457#31080#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 36 + Top = 48 + Width = 52 + Height = 12 + Caption = #24320#31080#21333#20301 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 260 + Top = 240 + Width = 54 + Height = 12 + Caption = #20986' '#26041 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 36 + Top = 76 + Width = 54 + Height = 12 + Caption = #22791' '#27880 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 244 + Top = 297 + Width = 53 + Height = 12 + Caption = #25805' '#20316' '#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object InvoiceNo: TEdit + Left = 96 + Top = 17 + Width = 121 + Height = 20 + TabOrder = 0 + end + object InvoiceDate: TDateTimePicker + Left = 528 + Top = 17 + Width = 109 + Height = 20 + Date = 42263.599160520830000000 + Time = 42263.599160520830000000 + TabOrder = 1 + end + object Note: TMemo + Left = 96 + Top = 72 + Width = 761 + Height = 69 + ScrollBars = ssVertical + TabOrder = 2 + end + object InvoiceType: TBtnEditA + Left = 316 + Top = 17 + Width = 121 + Height = 20 + ReadOnly = True + TabOrder = 3 + OnBtnClick = InvoiceTypeBtnClick + end + object ToFactoryName: TBtnEditA + Left = 116 + Top = 244 + Width = 121 + Height = 20 + ReadOnly = True + TabOrder = 4 + OnBtnClick = ToFactoryNameBtnClick + end + object FactoryName: TBtnEditA + Left = 96 + Top = 44 + Width = 121 + Height = 20 + ReadOnly = True + TabOrder = 5 + OnBtnClick = FactoryNameBtnClick + end + object Filler: TEdit + Left = 316 + Top = 317 + Width = 121 + Height = 20 + Enabled = False + TabOrder = 6 + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 218 + Width = 977 + Height = 313 + Align = alClient + TabOrder = 3 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Qty + end + item + Kind = skSum + Column = v1Money + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_YSYF.FonePurple + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1P_CodeNamePropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 94 + end + object v1P_Spec: TcxGridDBColumn + Caption = #25104#21697#35268#26684 + DataBinding.FieldName = 'P_Spec' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1P_SpecPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 89 + end + object v1Qty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1QtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 76 + end + object v1Price: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1QtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 93 + end + object v1QtyUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1QtyUnitPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1Money: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1MoneyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 81 + end + object v1PriceUnit: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1PriceUnitPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 93 + end + object v1note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'P_Note' + HeaderAlignmentHorz = taCenter + Width = 145 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv1 + end + end + object DataSource1: TDataSource + DataSet = FP_Sub + Left = 412 + Top = 100 + end + object FP_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 244 + Top = 100 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 484 + Top = 100 + end + object ADOQueryTmp: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 336 + Top = 100 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 540 + Top = 100 + end +end diff --git a/应收应付/U_FDINVOICE_Sub.pas b/应收应付/U_FDINVOICE_Sub.pas new file mode 100644 index 0000000..363bf0a --- /dev/null +++ b/应收应付/U_FDINVOICE_Sub.pas @@ -0,0 +1,470 @@ +unit U_FDINVOICE_Sub; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, cxStyles, cxCustomData, cxGraphics, cxFilter, + cxData, cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, + DBClient, ExtCtrls, StdCtrls, BtnEdit, cxButtonEdit, cxTextEdit; + +type + TFrmInvoice_Sub = class(TForm) + DataSource1: TDataSource; + FP_Sub: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + ToolBar1: TToolBar; + TSave: TToolButton; + TBClose: TToolButton; + ToolBar2: TToolBar; + TADD: TToolButton; + TDEl: TToolButton; + Panel1: TPanel; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1P_Spec: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1Price: TcxGridDBColumn; + v1QtyUnit: TcxGridDBColumn; + v1Money: TcxGridDBColumn; + v1PriceUnit: TcxGridDBColumn; + v1note: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label1: TLabel; + InvoiceNo: TEdit; + Label2: TLabel; + Label3: TLabel; + InvoiceDate: TDateTimePicker; + Note: TMemo; + InvoiceType: TBtnEditA; + ToFactoryName: TBtnEditA; + FactoryName: TBtnEditA; + Label4: TLabel; + Label5: TLabel; + Label6: TLabel; + Label7: TLabel; + Filler: TEdit; + ADOQueryTmp: TADOQuery; + ADOQueryCmd: TADOQuery; + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ToFactoryNameBtnClick(Sender: TObject); + procedure TSaveClick(Sender: TObject); + procedure FactoryNameBtnClick(Sender: TObject); + procedure v1P_CodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure InvoiceTypeBtnClick(Sender: TObject); + procedure v1P_SpecPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1QtyUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PriceUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure TADDClick(Sender: TObject); + procedure TDElClick(Sender: TObject); + procedure v1QtyPropertiesEditValueChanged(Sender: TObject); + procedure v1MoneyPropertiesEditValueChanged(Sender: TObject); + private + procedure initGrid(); + procedure SaveDate(); + { Private declarations } + public + FInvoiceNO: string; + fInvoiceFlag:string; + { Public declarations } + end; + +var + FrmInvoice_Sub: TFrmInvoice_Sub; + +implementation + +uses U_Fun,U_ZDYHelp, U_ZdyAttachment,U_dataLink, U_ZdyAttachGYS; +{$R *.dfm} + +procedure TFrmInvoice_Sub.SaveDate(); + var FInvoiceID: string; +begin + ADOQueryCmd.Connection.BeginTrans; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.add('select * from FD_Invoice where InvoiceNo='''+trim(InvoiceNo.Text)+''''); + open; + if isempty then + begin + append; + fieldbyname('filltime').AsDateTime:=SGetServerDate(ADOQueryTmp); + end + else + edit; + SSetsaveSqlnew(ADOQueryCmd,'FD_Invoice',panel1,0); + fieldbyname('Invoiceflag').Value:=strtoint(FInvoiceflag); + fieldbyname('chkstatus').AsString:='0'; + post; + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.add('delete from FD_InvoiceSub where InvoiceNo='''+trim(InvoiceNo.Text)+''' '); + execsql; + end; + with FP_Sub do + begin + first; + while not eof do + begin + if fieldbyname('invoiceID').AsString='' then + begin + if GetLSNo(ADOQueryTmp,FInvoiceID,'FP','FD_InvoiceSub',4,1)=False then + begin + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + end + else + FInvoiceID:=FP_Sub.fieldbyname('invoiceID').AsString; + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.add('select * from FD_InvoiceSub where InvoiceNo='''+trim(InvoiceNo.Text)+''' '); + sql.add('and InvoiceID='''+trim(FInvoiceID)+''''); + open; + end; + if ADOQueryCmd.IsEmpty then + begin + ADOQueryCmd.append; + end + else + begin + ADOQueryCmd.edit; + end; + ADOQueryCmd.fieldbyname('InvoiceNo').Value:=trim(InvoiceNo.Text); + ADOQueryCmd.fieldbyname('InvoiceID').Value:=FInvoiceID; + SSetSaveDataCDSNew(ADOQueryCmd,Tv1,FP_Sub,'FD_InvoiceSub',0); + ADOQueryCmd.fieldbyname('Qty').Value:=FP_Sub.fieldbyname('Qty').AsFloat; + ADOQueryCmd.fieldbyname('Price').Value:=FP_Sub.fieldbyname('Price').AsFloat; + ADOQueryCmd.fieldbyname('Money').Value:=FP_Sub.fieldbyname('Money').AsFloat; + ADOQueryCmd.Post; + next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + application.MessageBox('ɹ','ʾ'); + Modalresult:=1; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ','ʾ',MB_ICONERROR); + end; +end; + +procedure TFrmInvoice_Sub.initGrid(); +begin + with ADOQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from FD_Invoice where InvoiceNo='''+trim(FInvoiceNo)+''''); + open; + end; + if ADOQueryTmp.isempty=False then + begin + SCSHDataNew(ADOQueryTmp,Panel1,0); + end + else + begin + Filler.Text:=trim(DName); + InvoiceDate.DateTime:=SGetServerDate(ADOQueryCmd); + end; + with ADOQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from FD_InvoiceSub where InvoiceNo='''+trim(FInvoiceNo)+''''); + open; + end; + SCreateCDS20(ADOQueryTmp,FP_Sub); + SInitCDSData20(ADOQueryTmp,FP_Sub); +end; + +procedure TFrmInvoice_Sub.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ʊ¼',Tv1,''); + Close; +end; + +procedure TFrmInvoice_Sub.FormShow(Sender: TObject); +begin + ReadCxGrid('Ʊ¼',Tv1,''); + initGrid(); +end; + +procedure TFrmInvoice_Sub.ToFactoryNameBtnClick(Sender: TObject); +begin + try + frmZdyAttachment:=TfrmZdyAttachment.Create(Application); + with frmZdyAttachment do + begin + if ShowModal=1 then + begin + ToFactoryName.Text:=Trim(CDS_HZ.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZdyAttachment.Free; + end; +end; + +procedure TFrmInvoice_Sub.TSaveClick(Sender: TObject); +begin + if trim(InvoiceNo.Text)='' then + begin + application.MessageBox('ƱŲΪ','ʾ'); + exit; + end; +{ if trim(InvoiceType.Text)='' then + begin + application.MessageBox('ƱͲΪ','ʾ'); + exit; + end; } + {if trim(ToFactoryName.Text)='' then + begin + application.MessageBox('ͻΪ','ʾ'); + exit; + end; } + if trim(FactoryName.Text)='' then + begin + application.MessageBox('ƱλΪ','ʾ'); + exit; + end; + if trim(FInvoiceNo)='' then + begin + with ADOQueryTmp do + begin + close; + sql.clear; + sql.add('select * from FD_Invoice where InvoiceNo='''+trim(InvoiceNo.Text)+''' '); + open; + end; + if ADOQueryTmp.IsEmpty=False then + begin + application.MessageBox('ƱŲظ','ʾ'); + exit; + end; + end; + SaveDate(); +end; + +procedure TFrmInvoice_Sub.FactoryNameBtnClick(Sender: TObject); +begin + IF fInvoiceflag='0' then + begin + try + frmZdyAttachGYS:=TfrmZdyAttachGYS.Create(Application); + with frmZdyAttachGYS do + begin + if ShowModal=1 then + begin + FactoryName.Text:=Trim(CDS_HZ.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZdyAttachGYS.Free; + end; + end + else + begin + try + frmZdyAttachment:=TfrmZdyAttachment.Create(Application); + with frmZdyAttachment do + begin + if ShowModal=1 then + begin + FactoryName.Text:=Trim(CDS_HZ.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZdyAttachment.Free; + end; + end; +end; + +procedure TFrmInvoice_Sub.v1P_CodeNamePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTCodeName'; + flagname:='Ʒ'; + if ShowModal=1 then + begin + Self.FP_Sub.Edit; + Self.FP_Sub.FieldByName('P_CodeName').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.FP_Sub.FieldByName('P_Code').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; + //self.tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TFrmInvoice_Sub.InvoiceTypeBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='InvoiceType'; + flagname:='Ʊ'; + if ShowModal=1 then + begin + InvoiceType.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmInvoice_Sub.v1P_SpecPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='P_Spec'; + flagname:='Ʒ'; + if ShowModal=1 then + begin + Self.FP_Sub.Edit; + Self.FP_Sub.FieldByName('P_Spec').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmInvoice_Sub.v1QtyUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='QtyUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.FP_Sub.Edit; + Self.FP_Sub.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmInvoice_Sub.v1PriceUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PriceUnit'; + flagname:=''; + if ShowModal=1 then + begin + Self.FP_Sub.Edit; + Self.FP_Sub.FieldByName('PriceUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmInvoice_Sub.TADDClick(Sender: TObject); +begin + with FP_Sub do + begin + append; + fieldbyname('PriceUnit').AsString:='RMB'; + fieldbyname('QtyUnit').AsString:='M'; + post; + end; +end; + +procedure TFrmInvoice_Sub.TDElClick(Sender: TObject); +begin + if FP_Sub.IsEmpty then exit; + if application.MessageBox('ȷҪɾ','ʾ',1)=2 then exit; + with ADOQueryTmp do + begin + close; + sql.clear; + sql.add('delete from FD_Invoicesub where InvoiceID='''+trim(FP_Sub.fieldbyname('InvoiceID').asstring)+''' '); + execsql; + end; + FP_Sub.delete; +end; + +procedure TFrmInvoice_Sub.v1QtyPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + with FP_Sub do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + FieldbyName('Money').Value:=format('%.2f',[FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat]); + Post; + end; + tv1.Controller.EditingController.ShowEdit(); + +end; + +procedure TFrmInvoice_Sub.v1MoneyPropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + with FP_Sub do + begin + Edit; + FieldByName('Money').Value:=Trim(mvalue); + IF fieldbyname('Qty').AsFloat>0 then + FieldbyName('price').Value:=format('%.4f',[FieldByName('money').AsFloat / FieldByName('Qty').AsFloat]) + else + FieldbyName('price').Value:=0; + Post; + end; + tv1.Controller.EditingController.ShowEdit(); + +end; + +end. diff --git a/应收应付/U_FKCR.dfm b/应收应付/U_FKCR.dfm new file mode 100644 index 0000000..a802d7c --- /dev/null +++ b/应收应付/U_FKCR.dfm @@ -0,0 +1,369 @@ +object frmFKCR: TfrmFKCR + Left = 188 + Top = 79 + Width = 1038 + Height = 618 + Caption = #20184#27454#30331#35760 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1022 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton3Click + end + object TBDel: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1022 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 60 + Height = 12 + Caption = #39033#30446#21450#25688#35201 + end + object Label3: TLabel + Left = 302 + Top = 13 + Width = 48 + Height = 12 + Caption = #23545#26041#21333#20301 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 634 + Top = 13 + Width = 36 + Height = 12 + Caption = #35746#21333#21495 + end + object YFName: TEdit + Tag = 2 + Left = 528 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object FactoryName: TEdit + Left = 350 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + object conNo: TEdit + Tag = 2 + Left = 671 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = conNoChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1022 + Height = 510 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = VBB + end + item + Kind = skSum + Column = VYB + end + item + Kind = skSum + Column = v2Column2 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_YSYF.FonePurple + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 115 + end + object v2Column6: TcxGridDBColumn + Caption = #23545#26041#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 100 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39033#30446#21450#25688#35201 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 146 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 72 + end + object VYB: TcxGridDBColumn + Caption = #21407#24065#37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column4PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object VBB: TcxGridDBColumn + Caption = #26412#24065#37329#39069 + DataBinding.FieldName = 'BBMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = VBBPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 66 + end + object v2Column2: TcxGridDBColumn + Caption = #20943#20813#37329#39069 + DataBinding.FieldName = 'DerateMoney' + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '0.##;-,0.##' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 112 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_FKCR.pas b/应收应付/U_FKCR.pas new file mode 100644 index 0000000..a335471 --- /dev/null +++ b/应收应付/U_FKCR.pas @@ -0,0 +1,871 @@ +unit U_FKCR; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxCurrencyEdit; + +type + TfrmFKCR = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + YFName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + VYB: TcxGridDBColumn; + VBB: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + Label4: TLabel; + conNo: TEdit; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column4PropertiesEditValueChanged(Sender: TObject); + procedure v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure VBBPropertiesEditValueChanged(Sender: TObject); + procedure conNoChange(Sender: TObject); + procedure v2Column1PropertiesEditValueChanged(Sender: TObject); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + private + { Private declarations } + + procedure InitGridHZ(); + procedure InitGrid(); + function SaveData():Boolean; + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmFKCR: TfrmFKCR; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderList, U_ProductOrderNewList, + U_PbProductList, U_ZdyAttachGYS; + +{$R *.dfm} + + + +procedure TfrmFKCR.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select A.* '); + sql.Add(',KHZJM=dbo.getPinYin(A.FactoryName)'); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + sql.Add('where A.CRTime>=:begdate and A.CRTime<:Enddate and A.CRType=''Ǽ'' '); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmFKCR.InitGridHZ(); +begin +end; + +procedure TfrmFKCR.FormDestroy(Sender: TObject); +begin + frmFKCR:=nil; +end; + +procedure TfrmFKCR.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmFKCR.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ǽ',Tv2,''); + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); + ExecSQL; + end;} + Close; +end; +procedure TfrmFKCR.TBDelClick(Sender: TObject); +var + FBBMoney,CRID:string; +begin + if CDS_HZ.IsEmpty then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+Trim(cds_hz.fieldbyname('YFID').AsString)+''''); + Open; + end; + FBBMoney:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('YFID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; + CRID:=Trim(CDS_HZ.fieldbyname('CRID').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where CRID='+CRID); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_KC where CRID='+CRID); + ExecSQL; + end; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmFKCR.FormShow(Sender: TObject); +begin + ReadCxGrid('Ǽ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-50; + if Trim(DParameters1)='޶' then + begin + + + label4.Visible:=False; + conNo.Visible:=False; + end; + if Trim(DParameters2)='' then + begin + VHL.Hidden:=True; + VHL.Visible:=False; + VBZ.Hidden:=True; + VBZ.Visible:=False; + VYB.Hidden:=True; + VYB.Visible:=False; + VBB.Caption:=''; + end; + InitGrid(); +end; + +procedure TfrmFKCR.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmFKCR.ToolButton2Click(Sender: TObject); +var + fsj:string; +begin + if ADOQueryMain.Active=False then Exit; + if Trim(SGetFilters(Panel1,1,2))='' then + begin + if Trim(FactoryName.Text)<>'' then + begin + fsj:=' FactoryName like '''+'%'+Trim(FactoryName.Text)+'%'+'''' + +' or KHZJM like '''+'%'+Trim(FactoryName.Text)+'%'+''''; + end; + + end else + begin + if Trim(FactoryName.Text)<>'' then + begin + fsj:=SGetFilters(Panel1,1,2)+' and (FactoryName like '''+'%'+Trim(FactoryName.Text)+'%'+'''' + +' or KHZJM like '''+'%'+Trim(FactoryName.Text)+'%'+''')'; + end; + end; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); +end; + +procedure TfrmFKCR.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmFKCR.Button2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +function TfrmFKCR.SaveData():Boolean; +var + maxId,CRID:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxId,'FK','YF_Money_CR',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''''); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + //SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='Ǽ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=-1; + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('YFId').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; + +procedure TfrmFKCR.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmFKCR.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + if Trim(FFieldName)<>'Money' then + begin + if Trim(FFieldName)<>'HuiLv' then + begin + FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)); + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmFKCR.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmFKCR.ToolButton3Click(Sender: TObject); +begin + try + frmZdyAttachGYS:=TfrmZdyAttachGYS.Create(Application); + with frmZdyAttachGYS do + begin + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('ZdyCode').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + Self.SaveData(); + end; + end; + finally + frmZdyAttachGYS.Free; + end; + { +try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='FactoryNo1Name'; + flagname:=''; + MainType:=''; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('FactoryNo').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('FactoryName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + Self.SaveData(); + end; + end; + finally + frmZDYHelp.Free; + end; + } +end; + +procedure TfrmFKCR.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFName'; + flagname:='ĿժҪ'; + if Trim(DParameters3)='Ŀֿ' then + MainType:=''; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('YFCode').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('YFName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set YFCode='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); + sql.Add(' ,YFName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmFKCR.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set QtyUnit='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmFKCR.v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BZType'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('BZType').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set BZType='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmFKCR.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'б'); +end; + +procedure TfrmFKCR.v2Column4PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + tv2.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmFKCR.v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmPbProductList:=TfrmPbProductList.Create(Application); + with frmPbProductList do + begin + // DParameters1:='Ȩ'; + //frmProductOrderList.v1Column4.Visible:=True; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('MainId').Value:=Trim(frmPbProductList.Order_Main.fieldbyname('MainId').AsString); + FieldByName('subID').Value:=Trim(frmPbProductList.Order_Main.fieldbyname('subID').AsString); + FieldByName('conNo').Value:=Trim(frmPbProductList.Order_Main.fieldbyname('conNo').AsString); + post; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set MainId='''+Trim(frmPbProductList.Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add(' ,SubId='''+Trim(frmPbProductList.Order_Main.fieldbyname('SubId').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + end; + finally + frmPbProductList.Free; + self.Tv2.Controller.EditingController.ShowEdit(); + end; +end; + +procedure TfrmFKCR.VBBPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FKCBB:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Trim(mvalue)='' then mvalue:='0'; + with CDS_HZ do + begin + Edit; + FieldByName('BBMoney').Value:=StrToFloat(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' set BBMoney='+mvalue); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmFKCR.conNoChange(Sender: TObject); +begin + if Length(Trim(conNo.Text))<3 then Exit; + ToolButton2.Click; +end; + +procedure TfrmFKCR.v2Column1PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmFKCR.v2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + if Trim(mvalue)='' then mvalue:='0'; + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=StrToFloat(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + +end; + +end. diff --git a/应收应付/U_FKCRLZ.dfm b/应收应付/U_FKCRLZ.dfm new file mode 100644 index 0000000..c6b2473 --- /dev/null +++ b/应收应付/U_FKCRLZ.dfm @@ -0,0 +1,406 @@ +object frmFKCRLZ: TfrmFKCRLZ + Left = 188 + Top = 79 + Width = 1038 + Height = 618 + Caption = #20184#27454#30331#35760 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1030 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton3Click + end + object TBDel: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton4: TToolButton + Left = 252 + Top = 0 + Caption = #19968#38190#26367#25442 + ImageIndex = 54 + OnClick = ToolButton4Click + end + object ToolButton1: TToolButton + Left = 335 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 398 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1030 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 60 + Height = 12 + Caption = #39033#30446#21450#25688#35201 + end + object Label3: TLabel + Left = 302 + Top = 13 + Width = 48 + Height = 12 + Caption = #23545#26041#21333#20301 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 634 + Top = 13 + Width = 36 + Height = 12 + Caption = #35746#21333#21495 + end + object Label5: TLabel + Left = 782 + Top = 13 + Width = 48 + Height = 12 + Caption = #25903#20184#21488#22836 + end + object YFName: TEdit + Tag = 2 + Left = 528 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object FactoryName: TEdit + Tag = 2 + Left = 350 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + object OrderNo: TEdit + Tag = 2 + Left = 671 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object ComTaiTou: TEdit + Tag = 2 + Left = 830 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 5 + OnChange = FactoryNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1030 + Height = 511 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = VBB + end + item + Kind = skSum + Column = VYB + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_YSYF.FonePurple + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 115 + end + object v2Column6: TcxGridDBColumn + Caption = #23545#26041#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 100 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39033#30446#21450#25688#35201 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 146 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 72 + end + object VYB: TcxGridDBColumn + Caption = #21407#24065#37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column4PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object VBB: TcxGridDBColumn + Caption = #26412#24065#37329#39069 + DataBinding.FieldName = 'BBMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = VBBPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 66 + end + object VOrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 92 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 112 + end + object v2ZFTT: TcxGridDBColumn + Caption = #25903#20184#21488#22836 + DataBinding.FieldName = 'ComTaiTou' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.ImmediatePost = True + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 82 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_FKCRLZ.pas b/应收应付/U_FKCRLZ.pas new file mode 100644 index 0000000..16062f5 --- /dev/null +++ b/应收应付/U_FKCRLZ.pas @@ -0,0 +1,882 @@ +unit U_FKCRLZ; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDropDownEdit; + +type + TfrmFKCRLZ = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + YFName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + VYB: TcxGridDBColumn; + VBB: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + Label4: TLabel; + OrderNo: TEdit; + v2Column1: TcxGridDBColumn; + v2ZFTT: TcxGridDBColumn; + Label5: TLabel; + ComTaiTou: TEdit; + ToolButton4: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column4PropertiesEditValueChanged(Sender: TObject); + procedure v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure VBBPropertiesEditValueChanged(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure v2Column1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + private + { Private declarations } + + procedure InitGridHZ(); + procedure InitGrid(); + function SaveData():Boolean; + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmFKCRLZ: TfrmFKCRLZ; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderList, U_ProductOrderNewList; + +{$R *.dfm} + + + +procedure TfrmFKCRLZ.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select A.*,C.OrderNo '); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + SQL.Add(' left join JYOrder_Main C on A.MainId=C.MainId'); + sql.Add('where A.CRTime>=:begdate and A.CRTime<:Enddate and A.CRType=''Ǽ'' '); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmFKCRLZ.InitGridHZ(); +begin +end; + +procedure TfrmFKCRLZ.FormDestroy(Sender: TObject); +begin + frmFKCRLZ:=nil; +end; + +procedure TfrmFKCRLZ.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmFKCRLZ.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ǽ',Tv2,''); + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); + ExecSQL; + end;} + Close; +end; +procedure TfrmFKCRLZ.TBDelClick(Sender: TObject); +var + FBBMoney,CRID:string; +begin + if CDS_HZ.IsEmpty then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+Trim(cds_hz.fieldbyname('YFID').AsString)+''''); + Open; + end; + FBBMoney:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('YFID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; + CRID:=Trim(CDS_HZ.fieldbyname('CRID').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where CRID='+CRID); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_KC where CRID='+CRID); + ExecSQL; + end; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmFKCRLZ.FormShow(Sender: TObject); +var + fsj:string; +begin + ReadCxGrid('Ǽ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-50; + fsj:='select Name=ZdyName,code='''' from KH_Zdy where Type=''OrdDefStr2'' '; + SInitCxGridComboBoxBySql(ADOQueryTemp,v2ZFTT,fsj,0,False,''); + if Trim(DParameters1)='޶' then + begin + VOrderNo.Hidden:=True; + VOrderNo.Visible:=False; + label4.Visible:=False; + OrderNo.Visible:=False; + end; + if Trim(DParameters2)='' then + begin + VHL.Hidden:=True; + VHL.Visible:=False; + VBZ.Hidden:=True; + VBZ.Visible:=False; + VYB.Hidden:=True; + VYB.Visible:=False; + VBB.Caption:=''; + end; + InitGrid(); +end; + +procedure TfrmFKCRLZ.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmFKCRLZ.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmFKCRLZ.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmFKCRLZ.Button2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +function TfrmFKCRLZ.SaveData():Boolean; +var + maxId,CRID:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxId,'FK','YF_Money_CR',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''''); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + //SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='Ǽ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=-1; + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('YFId').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; + +procedure TfrmFKCRLZ.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmFKCRLZ.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + if Trim(FFieldName)<>'Money' then + begin + if Trim(FFieldName)<>'HuiLv' then + begin + FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)); + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmFKCRLZ.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmFKCRLZ.ToolButton3Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + if Trim(DParameters8)='' then + begin + flag:='YFFactory'; + end else + begin + flag:=Trim(DParameters8); + end; + + flagname:='Էλ'; + if Trim(DParameters4)='Էλֿ' then + MainType:=''; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('FactoryNo').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('FactoryName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + Self.SaveData(); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmFKCRLZ.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFName'; + flagname:='ĿժҪ'; + if Trim(DParameters3)='Ŀֿ' then + MainType:=''; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('YFCode').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('YFName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set YFCode='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); + sql.Add(' ,YFName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmFKCRLZ.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set QtyUnit='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmFKCRLZ.v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BZType'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('BZType').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set BZType='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmFKCRLZ.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'б'); +end; + +procedure TfrmFKCRLZ.v2Column4PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney+'+FKCBB+'-'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmFKCRLZ.v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmProductOrderNewList:=TfrmProductOrderNewList.Create(Application); + with frmProductOrderNewList do + begin + DParameters1:='Ȩ'; + //frmProductOrderList.v1Column4.Visible:=True; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('MainId').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString); + FieldByName('OrderNo').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrderNo').AsString); + FieldByName('ComTaiTou').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrdDefStr2').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set MainId='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString)+''''); + SQL.Add(',ComTaiTou='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrdDefStr2').AsString)+''''); + //sql.Add(' ,SubId='''+Trim(frmProductOrderList.Order_Main.fieldbyname('SubId').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + end; + finally + frmProductOrderNewList.Free; + end; +end; + +procedure TfrmFKCRLZ.VBBPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FKCBB:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Trim(mvalue)='' then mvalue:='0'; + with CDS_HZ do + begin + Edit; + FieldByName('BBMoney').Value:=StrToFloat(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' set BBMoney='+mvalue); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney+'+FKCBB+'-'+mvalue); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmFKCRLZ.OrderNoChange(Sender: TObject); +begin + if Length(Trim(OrderNo.Text))<3 then Exit; + ToolButton2.Click; +end; + +procedure TfrmFKCRLZ.v2Column1PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmFKCRLZ.ToolButton4Click(Sender: TObject); +var + FColumn:String; +begin + begdate.SetFocus; + FColumn:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if not ((Trim(FColumn)<>'Note') or (Trim(FColumn)<>'YFName') or (Trim(FColumn)<>'ComTaiTou')) then Exit; + if Application.MessageBox('ȷҪִв','ʾ',32+4)<>IDYES then Exit; + OneKeyPost(Tv2,CDS_HZ); + CDS_HZ.DisableControls; + with CDS_HZ do + begin + First; + while not Eof do + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set '+Trim(FColumn)+'='''+Trim(CDS_HZ.fieldbyname(FColumn).Value)+''''); + sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + ExecSQL; + end; + Next; + end; + end; + CDS_HZ.EnableControls; +end; + +procedure TfrmFKCRLZ.OrderNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(OrderNo.Text))<4 then Exit; + begdate.SetFocus; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select A.*,C.OrderNo '); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + SQL.Add(' left join JYOrder_Main C on A.MainId=C.MainId'); + sql.Add('where C.OrderNO like :OrderNo and A.CRType=''Ǽ'' '); + Parameters.ParamByName('OrderNo').Value:='%'+Trim(OrderNo.Text)+'%'; + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +end. diff --git a/应收应付/U_FPINVOICE_TJ.dfm b/应收应付/U_FPINVOICE_TJ.dfm new file mode 100644 index 0000000..57a47ea --- /dev/null +++ b/应收应付/U_FPINVOICE_TJ.dfm @@ -0,0 +1,503 @@ +object frmFPInvoice_TJ: TfrmFPInvoice_TJ + Left = 190 + Top = 97 + Width = 989 + Height = 620 + Caption = #21457#31080#32479#35745#26597#35810 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 973 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 973 + Height = 46 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 637 + Top = 57 + Width = 36 + Height = 12 + Caption = #25910#27454#26041 + end + object Label2: TLabel + Left = 234 + Top = 109 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + Visible = False + end + object Label6: TLabel + Left = 376 + Top = 109 + Width = 30 + Height = 12 + Caption = '-----' + Visible = False + end + object Label5: TLabel + Left = 33 + Top = 17 + Width = 48 + Height = 12 + Caption = #32479#35745#21333#20301 + end + object Label7: TLabel + Left = 405 + Top = 65 + Width = 24 + Height = 12 + Caption = #37329#39069 + Visible = False + end + object Label1: TLabel + Left = 73 + Top = 57 + Width = 84 + Height = 12 + Caption = #20184#27454#26041#32479#35745#21333#20301 + end + object Label4: TLabel + Left = 453 + Top = 57 + Width = 84 + Height = 12 + Caption = #25910#27454#26041#32479#35745#21333#20301 + end + object Label8: TLabel + Left = 241 + Top = 17 + Width = 48 + Height = 12 + Caption = #24320#31080#21333#20301 + end + object ToFactoryName: TEdit + Tag = 2 + Left = 681 + Top = 53 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = ToFactoryNameChange + end + object begdate: TDateTimePicker + Left = 284 + Top = 105 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 1 + Visible = False + end + object Enddate: TDateTimePicker + Left = 394 + Top = 105 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + Visible = False + end + object BBMoney: TEdit + Tag = 2 + Left = 431 + Top = 61 + Width = 89 + Height = 20 + TabOrder = 3 + Visible = False + OnChange = ToFactoryNameChange + end + object FactoryName: TEdit + Tag = 2 + Left = 293 + Top = 13 + Width = 100 + Height = 20 + TabOrder = 4 + OnChange = ToFactoryNameChange + end + object FactoryNameTJ: TEdit + Tag = 2 + Left = 85 + Top = 13 + Width = 100 + Height = 20 + TabOrder = 5 + OnChange = ToFactoryNameChange + end + object ToFactoryNameTJ: TEdit + Tag = 2 + Left = 549 + Top = 53 + Width = 89 + Height = 20 + TabOrder = 6 + OnChange = ToFactoryNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 77 + Width = 973 + Height = 505 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = VBBMoney + end + item + Kind = skSum + end + item + Kind = skSum + Column = v2FPMoney + end + item + Kind = skSum + Column = v2WFPMoney + end + item + Kind = skSum + Column = v2Column3 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_YSYF.FonePurple + object v2Column1: TcxGridDBColumn + Caption = #32479#35745#21333#20301 + DataBinding.FieldName = 'FactoryNameTJ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 200 + end + object v2FactoryName: TcxGridDBColumn + Caption = #24320#31080#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 200 + end + object VBBMoney: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle_fontclBlue + Styles.Footer = cxStyle_fontclBlue + Styles.Header = cxStyle_fontclBlue + Width = 107 + end + object v2FPMoney: TcxGridDBColumn + Caption = #24320#31080#37329#39069 + DataBinding.FieldName = 'KPMoney' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = cxStyle_fontclFuchsia + Styles.Footer = cxStyle_fontclFuchsia + Styles.Header = cxStyle_fontclFuchsia + Width = 133 + end + object v2WFPMoney: TcxGridDBColumn + Caption = #26410#24320#31080#37329#39069 + DataBinding.FieldName = 'WKPMoney' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = cxStyle_fontclPurple + Styles.Footer = cxStyle_fontclPurple + Styles.Header = cxStyle_fontclPurple + Width = 125 + end + object v2Column3: TcxGridDBColumn + Caption = #24212#24320#31080#37329#39069 + DataBinding.FieldName = 'YkpMoney' + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle_fontBlack + Styles.Footer = cxStyle_fontBlack + Styles.Header = cxStyle_fontBlack + Width = 105 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end + object cxStyleRepository1: TcxStyleRepository + Left = 265 + Top = 174 + object cxStyle1: TcxStyle + AssignedValues = [svColor] + Color = clInactiveCaption + end + object cxStyle2: TcxStyle + AssignedValues = [svColor, svTextColor] + Color = 4707838 + TextColor = clBtnText + end + object cxStyle_gridRow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16311512 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_gridFoot: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridHead: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridGroupBox: TcxStyle + AssignedValues = [svColor, svFont] + Color = clMoneyGreen + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_yellow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_fontBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_fontclFuchsia: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clRed + end + object cxStyle_fontclPurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clPurple + end + object cxStyle_fontclGreen: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clGreen + end + object cxStyle_fontclBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object cxStyle_fontclTeal: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clTeal + end + object cxStyle_fontclOlive: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + end +end diff --git a/应收应付/U_FPINVOICE_TJ.pas b/应收应付/U_FPINVOICE_TJ.pas new file mode 100644 index 0000000..85ab93f --- /dev/null +++ b/应收应付/U_FPINVOICE_TJ.pas @@ -0,0 +1,175 @@ +unit U_FPINVOICE_TJ; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmFPInvoice_TJ = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ToFactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + VBBMoney: TcxGridDBColumn; + v2FPMoney: TcxGridDBColumn; + v2WFPMoney: TcxGridDBColumn; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxStyle_gridRow: TcxStyle; + cxStyle_gridFoot: TcxStyle; + cxStyle_gridHead: TcxStyle; + cxStyle_gridGroupBox: TcxStyle; + cxStyle_yellow: TcxStyle; + cxStyle_Red: TcxStyle; + cxStyle_fontBlack: TcxStyle; + cxStyle_fontclFuchsia: TcxStyle; + cxStyle_fontclPurple: TcxStyle; + cxStyle_fontclGreen: TcxStyle; + cxStyle_fontclBlue: TcxStyle; + cxStyle_fontclTeal: TcxStyle; + cxStyle_fontclOlive: TcxStyle; + Label5: TLabel; + BBMoney: TEdit; + Label7: TLabel; + v2FactoryName: TcxGridDBColumn; + FactoryName: TEdit; + FactoryNameTJ: TEdit; + Label1: TLabel; + Label4: TLabel; + ToFactoryNameTJ: TEdit; + v2Column3: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + Label8: TLabel; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToFactoryNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + private + IsEdit:integer; + { Private declarations } + procedure InitGrid(); + + public + { Public declarations } + RKFlag,FCYID:String; + fInvoiceFlag:string; + IsHx:integer; + + end; + +var + frmFPInvoice_TJ: TfrmFPInvoice_TJ; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderList, U_ProductOrderNewList, + U_ZdyAttachment, U_skHx; + +{$R *.dfm} + + + +procedure TfrmFPInvoice_TJ.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + SQL.Clear; + sql.Add('exec P_get_invoice '); + sql.Add('@InvoiceFlag='''+trim(fInvoiceFlag)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmFPInvoice_TJ.FormDestroy(Sender: TObject); +begin + frmFPInvoice_TJ:=nil; +end; + +procedure TfrmFPInvoice_TJ.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmFPInvoice_TJ.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption,Tv2,''); + Close; +end; + +procedure TfrmFPInvoice_TJ.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption,Tv2,''); + //Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + //begdate.DateTime:=Enddate.DateTime-50; + InitGrid(); +end; + +procedure TfrmFPInvoice_TJ.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmFPInvoice_TJ.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmFPInvoice_TJ.ToFactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmFPInvoice_TJ.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'Ʊб'); +end; + +end. diff --git a/应收应付/U_GetDllForm.pas b/应收应付/U_GetDllForm.pas new file mode 100644 index 0000000..04ed77c --- /dev/null +++ b/应收应付/U_GetDllForm.pas @@ -0,0 +1,825 @@ + +unit U_GetDllForm; +interface +uses + Windows,Messages,forms,OleCtnrs,DateUtils,SysUtils,ADODB,ActiveX,dxCore; + +function GetDllForm(App:Tapplication; FormH:hwnd; FormID:integer; + Language: integer; WinStyle:integer; + GCode: Pchar; GName: Pchar; DataBase:Pchar;Title:PChar; + Parameters1:PChar;Parameters2:PChar;Parameters3:PChar;Parameters4:PChar; + Parameters5:PChar;Parameters6:PChar;Parameters7:PChar;Parameters8:PChar; + Parameters9:PChar;Parameters10:PChar;DataBaseStr:PChar):hwnd;export;stdcall; +function ConnData():Boolean; + +implementation +uses + U_DataLink,U_Fun,U_YFCR,U_FKCR, + U_YFFKList,U_YSCR,U_SKCR,U_YSSKList,U_ProductOrderCost,U_YFFP,U_YSFP + ,U_YFCRLZ,U_YSCRLZ,U_YSHZMX,U_YFCRYCL,U_YSCROL,U_SKCROLJ,U_YSHZMXOLJ + ,U_SKCRLZ,U_YSHZMXDL,U_FKCRLZ,U_YSHZMXView,U_YFCRLZView,U_YFCRLZQty, + U_YSCRJZC,U_YSCR_Gd,U_SKCR_Gd,U_YFZDList_MX,U_YSZDList_MX,U_YFMXlist,U_YSMXlist, + U_YKHXList,U_FDINVOICE,U_FPINVOICE_TJ; + + ///////////////////////////////////////////////////////////////// + // ˵:ȡDllеô // + // ˵App>>Ӧó // + // FormH>>ôھ // + // FormID>>ں; // + // Language>>; // + // WinStyle>>ͣ // +///////////////////////////////////////////////////////////////// +function GetDllForm(App:Tapplication; FormH:hwnd; FormID:integer; + Language: integer; WinStyle:integer; + GCode: Pchar; GName: Pchar; DataBase:Pchar;Title:PChar; + Parameters1:PChar;Parameters2:PChar;Parameters3:PChar;Parameters4:PChar; + Parameters5:PChar;Parameters6:PChar;Parameters7:PChar;Parameters8:PChar; + Parameters9:PChar;Parameters10:PChar; + DataBaseStr:PChar):hwnd; + +var + mnewHandle: hwnd; + mstyle: TFormStyle; // 0:Ӵ; 1ͨ + mstate: TWindowState; + mborderstyle: TFormBorderStyle; +begin + mNewHandle:=0; + DName:=GName; + DCode:=GCode; + DdataBase:=DataBase; + DTitCaption:=Title; + DParameters1:=Parameters1; + DParameters2:=Parameters2; + DParameters3:=Parameters3; + DParameters4:=Parameters4; + DParameters5:=Parameters5; + DParameters6:=Parameters6; + DParameters7:=Parameters7; + DParameters8:=Parameters8; + DParameters9:=Parameters9; + DParameters10:=Parameters10; + + + MainApplication:=App; + DCurHandle:=FormH; + IsDelphiLanguage:= Language; + + Application:=TApplication(App); + DCurHandle:=0; + + + //ֵַ + SetLength(server, 255); + SetLength(dtbase, 255); + SetLength(user, 255); + SetLength(pswd, 255); + + server := '139.224.12.182,7781'; // 122.224.36.142,7781 + dtbase := 'aidengdata'; //jinzhicaidata + user := 'aidengsa'; + pswd := 'rightsoft@3203'; + + DConString := 'Provider=SQLOLEDB.1;Password=' + pswd + ';Persist Security Info=True;User ID=' + user + ';Initial Catalog=' + dtbase + ';Data Source=' + server; + if trim(DataBaseStr) <> '' then + DConString := DataBaseStr; + + // DParameters1:='޶'; + //DParameters1:='';//103 + // DParameters2:=''; + // DParameters3:='Ŀֿ'; + // DParameters4:='Էλֿ'; + //DParameters5:='Ʊ'; + //DParameters6:=''; //Ӧ + //DParameters7:='ƥ'; //Ӧտ + //DCode:='test'; + //DName:=''; + //DParameters9:='̨֧ͷ'; + //DParameters8:='FactoryNo1Name'; + //DParameters10:='P_YSSK_ListTT'; + if not ConnData() then + begin + result:=0; + exit; + end; + { if IsINIFile() then + ReadINIFile() + else + WriteINIFile ;} + // 崰 ״̬ + if WinStyle=0 then + begin + mstyle := fsMDIChild ; + mstate := wsMaximized ; + mborderstyle := bsSizeable; + end + else + begin + mstyle := fsNormal ; + mstate := wsNormal ; + mborderstyle := bsSizeable; + end; + //////////////////// + { GetSWLDZ('192.168.1.246'); + if IpCall<>0 then + begin + Result:=0; + Application.MessageBox('粻ͨ','ʾ',0); + Exit; + end; + if Trim(IpWLDZStr)<>'D4:AE:52:BE:9F:02' then + begin + Result:=0; + Application.MessageBox('ݿʧܣ','ʾ',0); + Exit; + end; } + ///////////////////// + //ģ鴰 + case FormId of + 1: //ӦǼ + begin + if frmYFCR=nil then + begin + frmYFCR:= TfrmYFCR.Create(application.MainForm); + with frmYFCR do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYFCR.BringToFront; + // + mNewHandle:=frmYFCR.Handle; + + end ; + 15: //ӦǼ Ⱦ ӹ + begin + if frmYFCRLZ=nil then + begin + frmYFCRLZ:= TfrmYFCRLZ.Create(application.MainForm); + with frmYFCRLZ do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYFCRLZ.BringToFront; + // + mNewHandle:=frmYFCRLZ.Handle; + + end ; + 12: //ӦǼ ԭϲֿ + begin + if frmYFCRYCL=nil then + begin + frmYFCRYCL:= TfrmYFCRYCL.Create(application.MainForm); + with frmYFCRYCL do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYFCRYCL.BringToFront; + // + mNewHandle:=frmYFCRYCL.Handle; + + end ; + 11: //ӦǼ ԭϲֿ + begin + if frmYFCRLZQty=nil then + begin + frmYFCRLZQty:= TfrmYFCRLZQty.Create(application.MainForm); + with frmYFCRLZQty do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYFCRLZQty.BringToFront; + // + mNewHandle:=frmYFCRLZQty.Handle; + + end ; + 13: //ӦǼ Ⱦ ӹѲѯ + begin + if frmYFCRLZView=nil then + begin + frmYFCRLZView:= TfrmYFCRLZView.Create(application.MainForm); + with frmYFCRLZView do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYFCRLZView.BringToFront; + // + mNewHandle:=frmYFCRLZView.Handle; + + end ; + 2: //Ǽ + begin + if frmFKCR=nil then + begin + frmFKCR:= TfrmFKCR.Create(application.MainForm); + with frmFKCR do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmFKCR.BringToFront; + // + mNewHandle:=frmFKCR.Handle; + + end ; + 21: //Ǽ(·չ ̨ͷ) + begin + if frmFKCRLZ=nil then + begin + frmFKCRLZ:= TfrmFKCRLZ.Create(application.MainForm); + with frmFKCRLZ do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmFKCRLZ.BringToFront; + // + mNewHandle:=frmFKCRLZ.Handle; + + end ; + 3: //Ӧͳ + begin + if frmYFFKList=nil then + begin + frmYFFKList:= TfrmYFFKList.Create(application.MainForm); + with frmYFFKList do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYFFKList.BringToFront; + // + mNewHandle:=frmYFFKList.Handle; + + end ; + 31: //Ӧϸ˵ + begin + if frmYFZDList_MX=nil then + begin + frmYFZDList_MX:= TfrmYFZDList_MX.Create(application.MainForm); + with frmYFZDList_MX do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYFZDList_MX.BringToFront; + // + mNewHandle:=frmYFZDList_MX.Handle; + + end ; + 4: //ӦտǼ + begin + if frmYSCR=nil then + begin + frmYSCR:= TfrmYSCR.Create(application.MainForm); + with frmYSCR do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYSCR.BringToFront; + // + mNewHandle:=frmYSCR.Handle; + + end ; + 41: //ӦտǼ + begin + if frmYSCRLZ=nil then + begin + frmYSCRLZ:= TfrmYSCRLZ.Create(application.MainForm); + with frmYSCRLZ do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYSCRLZ.BringToFront; + // + mNewHandle:=frmYSCRLZ.Handle; + + end ; + 42: //ӦտǼ + begin + if frmYSCROL=nil then + begin + frmYSCROL:= TfrmYSCROL.Create(application.MainForm); + with frmYSCROL do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYSCROL.BringToFront; + // + mNewHandle:=frmYSCROL.Handle; + + end ; + 43: //ӦտǼ(֯) + begin + if frmYSCRJZC=nil then + begin + frmYSCRJZC:= TfrmYSCRJZC.Create(application.MainForm); + with frmYSCRJZC do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYSCRJZC.BringToFront; + // + mNewHandle:=frmYSCRJZC.Handle; + + end ; + 44: //ӦտǼ(㶫) + begin + if frmYSCR_Gd=nil then + begin + frmYSCR_Gd:= TfrmYSCR_Gd.Create(application.MainForm); + with frmYSCR_Gd do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYSCR_Gd.BringToFront; + // + mNewHandle:=frmYSCR_Gd.Handle; + + end ; + 5: //տǼ + begin + if frmSKCR=nil then + begin + frmSKCR:= TfrmSKCR.Create(application.MainForm); + with frmSKCR do + begin + caption:=Trim(Title); + // IsHx:=1; + IsHx:=strtointdef(database,0); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmSKCR.BringToFront; + // + mNewHandle:=frmSKCR.Handle; + + end ; + 51: //տǼ + begin + if frmSKCROLJ=nil then + begin + frmSKCROLJ:= TfrmSKCROLJ.Create(application.MainForm); + with frmSKCROLJ do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmSKCROLJ.BringToFront; + // + mNewHandle:=frmSKCROLJ.Handle; + + end ; + 52: //տǼ(·չ) + begin + if frmSKCRLZ=nil then + begin + frmSKCRLZ:= TfrmSKCRLZ.Create(application.MainForm); + with frmSKCRLZ do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmSKCRLZ.BringToFront; + // + mNewHandle:=frmSKCRLZ.Handle; + + end ; + 54: //տǼ(㶫) + begin + if frmSKCR_Gd=nil then + begin + frmSKCR_Gd:= TfrmSKCR_Gd.Create(application.MainForm); + with frmSKCR_Gd do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmSKCR_Gd.BringToFront; + // + mNewHandle:=frmSKCR_Gd.Handle; + + end ; + 6: //Ӧտտͳ + begin + if frmYSSKList=nil then + begin + frmYSSKList:= TfrmYSSKList.Create(application.MainForm); + with frmYSSKList do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYSSKList.BringToFront; + // + mNewHandle:=frmYSSKList.Handle; + + end ; + 61: //Ӧտտͳ + begin + if frmYSZDList_MX=nil then + begin + frmYSZDList_MX:= TfrmYSZDList_MX.Create(application.MainForm); + with frmYSZDList_MX do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYSZDList_MX.BringToFront; + // + mNewHandle:=frmYSZDList_MX.Handle; + + end ; + 7: //ͳƲѯ + begin + if frmProductOrderCost=nil then + begin + frmProductOrderCost:= TfrmProductOrderCost.Create(application.MainForm); + with frmProductOrderCost do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmProductOrderCost.BringToFront; + // + mNewHandle:=frmProductOrderCost.Handle; + + end; + + 8: //ƱǼ + begin + if frmYFFP=nil then + begin + frmYFFP:= TfrmYFFP.Create(application.MainForm); + with frmYFFP do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYFFP.BringToFront; + // + mNewHandle:=frmYFFP.Handle; + + end; + 81: //ƱǼ + begin + if frmYSFP=nil then + begin + frmYSFP:= TfrmYSFP.Create(application.MainForm); + with frmYSFP do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYSFP.BringToFront; + // + mNewHandle:=frmYSFP.Handle; + + end; + 9: + begin + if frmYKHXList=nil then + begin + frmYKHXList:= TfrmYKHXList.Create(application.MainForm); + with frmYKHXList do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYKHXList.BringToFront; + // + mNewHandle:=frmYKHXList.Handle; + + end; + 10: //Ӧ˿ϸ + begin + if frmYSHZMX=nil then + begin + frmYSHZMX:= TfrmYSHZMX.Create(application.MainForm); + with frmYSHZMX do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYSHZMX.BringToFront; + // + mNewHandle:=frmYSHZMX.Handle; + + end; + + 102: //Ӧ˿ϸ() + begin + if frmYSHZMXDL=nil then + begin + frmYSHZMXDL:= TfrmYSHZMXDL.Create(application.MainForm); + with frmYSHZMXDL do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYSHZMXDL.BringToFront; + // + mNewHandle:=frmYSHZMXDL.Handle; + + end; + 103: //Ӧ˿ϸѯ + begin + if frmYSHZMXView=nil then + begin + frmYSHZMXView:= TfrmYSHZMXView.Create(application.MainForm); + with frmYSHZMXView do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYSHZMXView.BringToFront; + // + mNewHandle:=frmYSHZMXView.Handle; + + end; + 101: //Ӧ˿ϸOLJ + begin + if frmYSHZMXOLJ=nil then + begin + frmYSHZMXOLJ:= TfrmYSHZMXOLJ.Create(application.MainForm); + with frmYSHZMXOLJ do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYSHZMXOLJ.BringToFront; + // + mNewHandle:=frmYSHZMXOLJ.Handle; + + end; + 20: //Ӧ˿ϸOLJ + begin + if frmYFMXlist=nil then + begin + frmYFMXlist:= TfrmYFMXlist.Create(application.MainForm); + with frmYFMXlist do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYFMXlist.BringToFront; + // + mNewHandle:=frmYFMXlist.Handle; + + end; + 201: //Ӧ˿ϸOLJ + begin + if frmYSMXlist=nil then + begin + frmYSMXlist:= TfrmYSMXlist.Create(application.MainForm); + with frmYSMXlist do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmYSMXlist.BringToFront; + // + mNewHandle:=frmYSMXlist.Handle; + + end; + 202: //Ʊ + begin + if frmFDINVOICE=nil then + begin + frmFDINVOICE:= TfrmFDINVOICE.Create(application.MainForm); + with frmFDINVOICE do + begin + fInvoiceFlag:='1'; + fInvoiceFlag:=trim(Parameters1); + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmFDINVOICE.BringToFront; + // + mNewHandle:=frmFDINVOICE.Handle; + end; + + 203: //ƱͳƲѯ + begin + if frmFPInvoice_TJ=nil then + begin + frmFPInvoice_TJ:= TfrmFPInvoice_TJ.Create(application.MainForm); + with frmFPInvoice_TJ do + begin + fInvoiceFlag:='1'; + fInvoiceFlag:=trim(Parameters1); + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmFPInvoice_TJ.BringToFront; + // + mNewHandle:=frmFPInvoice_TJ.Handle; + end; + end ; // end case + + Result:= mnewHandle; +// NewDllApp:=Application ; +end; +//=========================================================== + //ݿӳ +//=========================================================== +function ConnData():Boolean; +begin + if not Assigned(DataLink_YSYF) then + DataLink_YSYF:=TDataLink_YSYF.Create(Application); + Try + with DataLink_YSYF.ADOLink do + begin + //if not Connected then + begin + Connected:=false; + ConnectionString:=DConString; + LoginPrompt:=false; + Connected:=true; + end; + end; + Result:=true; + Except + Result:=false; + application.MessageBox('ݿʧܣ','',mb_Ok+ MB_ICONERROR); + end; + +end; +initialization + CoInitialize(nil); + dxUnitsLoader.Initialize; + +finalization + + DataLink_YSYF.Free; + application:=NewDllApp; + dxUnitsLoader.Finalize; +end. + diff --git a/应收应付/U_OrderSel.dfm b/应收应付/U_OrderSel.dfm new file mode 100644 index 0000000..eeac983 --- /dev/null +++ b/应收应付/U_OrderSel.dfm @@ -0,0 +1,285 @@ +object frmOrderSel: TfrmOrderSel + Left = 93 + Top = 153 + Width = 1171 + Height = 587 + Caption = #35746#21333#36873#25321 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 16 + object cxGrid1: TcxGrid + Left = 0 + Top = 89 + Width = 1163 + Height = 461 + Align = alClient + TabOrder = 0 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Styles.Footer = DataLink_TradeManage.Default + object v2Column3: TcxGridDBColumn + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 84 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 78 + end + object v2Column2: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 141 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 119 + end + object v1Column10: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 83 + end + object v1Column14: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 75 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 80 + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 80 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 93 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv2 + end + end + object Panel1: TPanel + Left = 0 + Top = 0 + Width = 1163 + Height = 89 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 1 + object Label2: TLabel + Left = 35 + Top = 19 + Width = 48 + Height = 16 + Caption = #35746#21333#21495 + end + object Label3: TLabel + Left = 268 + Top = 19 + Width = 32 + Height = 16 + Caption = #39068#33394 + end + object Label6: TLabel + Left = 35 + Top = 51 + Width = 48 + Height = 16 + Caption = #38376' '#24133 + end + object Label7: TLabel + Left = 268 + Top = 51 + Width = 32 + Height = 16 + Caption = #20811#37325 + end + object Label8: TLabel + Left = 467 + Top = 51 + Width = 64 + Height = 16 + Caption = #23458' '#25143 + end + object Label9: TLabel + Left = 467 + Top = 19 + Width = 64 + Height = 16 + Caption = #20013#25991#21517#31216 + end + object OrderNo: TEdit + Tag = 2 + Left = 83 + Top = 16 + Width = 121 + Height = 24 + TabOrder = 0 + OnChange = OrderNoChange + end + object PRTColor: TEdit + Tag = 2 + Left = 301 + Top = 16 + Width = 111 + Height = 24 + TabOrder = 1 + OnChange = OrderNoChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 83 + Top = 47 + Width = 121 + Height = 24 + TabOrder = 2 + OnChange = OrderNoChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 301 + Top = 47 + Width = 111 + Height = 24 + TabOrder = 3 + OnChange = OrderNoChange + end + object Button1: TButton + Left = 687 + Top = 16 + Width = 75 + Height = 25 + Caption = #21047#26032 + TabOrder = 4 + OnClick = Button1Click + end + object Button2: TButton + Left = 687 + Top = 48 + Width = 75 + Height = 25 + Caption = #30830#23450 + TabOrder = 5 + OnClick = Button2Click + end + object Button3: TButton + Left = 783 + Top = 48 + Width = 75 + Height = 25 + Caption = #20851#38381 + TabOrder = 6 + OnClick = Button3Click + end + object CustomerNoName: TEdit + Tag = 2 + Left = 533 + Top = 47 + Width = 119 + Height = 24 + TabOrder = 7 + OnChange = OrderNoChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 533 + Top = 15 + Width = 119 + Height = 24 + TabOrder = 8 + OnChange = OrderNoChange + end + end + object CDS_OrderSel: TClientDataSet + Aggregates = <> + Params = <> + Left = 592 + Top = 208 + end + object DataSource1: TDataSource + DataSet = CDS_OrderSel + Left = 680 + Top = 224 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 784 + Top = 184 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 848 + Top = 184 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 624 + Top = 208 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 728 + Top = 272 + end +end diff --git a/应收应付/U_OrderSel.pas b/应收应付/U_OrderSel.pas new file mode 100644 index 0000000..27eed3f --- /dev/null +++ b/应收应付/U_OrderSel.pas @@ -0,0 +1,178 @@ +unit U_OrderSel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, ADODB, DBClient, ComCtrls, + ExtCtrls, cxGridLevel, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, cxCheckBox; + +type + TfrmOrderSel = class(TForm) + cxGrid1: TcxGrid; + Tv2: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + Panel1: TPanel; + Label2: TLabel; + OrderNo: TEdit; + Label3: TLabel; + PRTColor: TEdit; + Label6: TLabel; + MPRTMF: TEdit; + Label7: TLabel; + MPRTKZ: TEdit; + CDS_OrderSel: TClientDataSet; + DataSource1: TDataSource; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + Button1: TButton; + Button2: TButton; + Button3: TButton; + cxGridPopupMenu1: TcxGridPopupMenu; + v2Column2: TcxGridDBColumn; + Label8: TLabel; + CustomerNoName: TEdit; + Label9: TLabel; + MPRTCodeName: TEdit; + v2Column3: TcxGridDBColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure Button2Click(Sender: TObject); + procedure FormDestroy(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + { Private declarations } + procedure InitGrid(); + public + { Public declarations } + end; + +var + frmOrderSel: TfrmOrderSel; + +implementation +uses + U_DataLink,U_Fun ; + +{$R *.dfm} + +procedure TfrmOrderSel.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmOrderSel.Button2Click(Sender: TObject); +var + KHName:String; +begin + if CDS_OrderSel.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡݣ','ʾ',0); + Exit; + end; + CDS_OrderSel.DisableControls; + KHName:=''; + with CDS_OrderSel do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean=True then + begin + if Trim(KHName)='' then + begin + KHName:=Trim(fieldbyname('CustomerNo').AsString); + end else + begin + if Trim(fieldbyname('CustomerNo').AsString)<>KHName then + begin + Application.MessageBox('ѡͬͻ','ʾ',0); + Exit; + end; + end; + end; + Next; + end; + end; + CDS_OrderSel.EnableControls; + ModalResult:=1; +end; + +procedure TfrmOrderSel.FormDestroy(Sender: TObject); +begin + frmOrderSel:=nil; +end; + +procedure TfrmOrderSel.Button3Click(Sender: TObject); +begin + ModalResult:=-1; + WriteCxGrid('ѡ',Tv2,'Ʒֿ'); + Close; +end; + +procedure TfrmOrderSel.FormShow(Sender: TObject); +begin + ReadCxGrid('ѡ',Tv2,'Ʒֿ'); + InitGrid(); +end; + +procedure TfrmOrderSel.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select A.*,B.*'); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.Mainid'); + sql.Add(' where exists(select * from CK_BanCP_CR AA inner join CK_BanCP_KC BB on AA.CRID=BB.CRID '); + sql.Add(' where AA.MainId=A.MainId and AA.SubId=B.SubId and AA.CRType='''' and BB.KCQty>0)'); + + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_OrderSel); + SInitCDSData20(ADOQueryMain,CDS_OrderSel); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmOrderSel.Button1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmOrderSel.OrderNoChange(Sender: TObject); +begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_OrderSel); + SInitCDSData20(ADOQueryMain,CDS_OrderSel); +end; + +procedure TfrmOrderSel.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + ModalResult:=1; +end; + +end. diff --git a/应收应付/U_PbProductList.dfm b/应收应付/U_PbProductList.dfm new file mode 100644 index 0000000..9ee0196 --- /dev/null +++ b/应收应付/U_PbProductList.dfm @@ -0,0 +1,605 @@ +object frmPbProductList: TfrmPbProductList + Left = 113 + Top = 117 + Width = 1094 + Height = 600 + Caption = #22383#24067#20219#21153#21333 + 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 = 1086 + AutoSize = True + 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_YSYF.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #36873#25321 + ImageIndex = 106 + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1086 + Height = 65 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 151 + Top = 91 + Width = 39 + Height = 12 + Caption = #20219#21153#21333 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 250 + Top = 39 + Width = 40 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 318 + Top = 87 + Width = 26 + Height = 12 + Caption = #26579#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 433 + Top = 87 + Width = 53 + Height = 12 + Caption = #19994' '#21153' '#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 740 + Top = 87 + Width = 54 + Height = 12 + Caption = #25104' '#20998 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 893 + Top = 87 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 464 + Top = 15 + Width = 26 + Height = 12 + Caption = #21697#21517 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 251 + Top = 15 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 465 + Top = 39 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 577 + Top = 87 + Width = 52 + Height = 12 + Caption = #20844#21496#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 829 + Top = 139 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 829 + Top = 115 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNoM: TEdit + Tag = 2 + Left = 192 + Top = 87 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoMChange + OnKeyPress = OrderNoMKeyPress + end + object CustomerNoName: TEdit + Tag = 2 + Left = 291 + Top = 35 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = OrderNoMChange + end + object JGFactoryName: TEdit + Tag = 2 + Left = 347 + Top = 83 + Width = 76 + Height = 20 + TabOrder = 4 + OnChange = OrderNoMChange + end + object OrdPerson1: TEdit + Tag = 2 + Left = 487 + Top = 83 + Width = 76 + Height = 20 + TabOrder = 5 + OnChange = OrderNoMChange + end + object MPRTCF: TEdit + Tag = 2 + Left = 793 + Top = 83 + Width = 76 + Height = 20 + TabOrder = 6 + OnChange = OrderNoMChange + end + object PRTColor: TEdit + Tag = 2 + Left = 922 + Top = 83 + Width = 76 + Height = 20 + Enabled = False + TabOrder = 7 + OnChange = OrderNoMChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 497 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 8 + OnChange = OrderNoMChange + end + object ConNo: TEdit + Tag = 2 + Left = 292 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 9 + OnChange = OrderNoMChange + end + object MPRTSpec: TEdit + Tag = 2 + Left = 498 + Top = 35 + Width = 100 + Height = 20 + TabOrder = 10 + OnChange = OrderNoMChange + end + object OrdDefStr1: TEdit + Tag = 2 + Left = 631 + Top = 83 + Width = 76 + Height = 20 + TabOrder = 11 + OnChange = OrderNoMChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 858 + Top = 135 + Width = 56 + Height = 20 + TabOrder = 12 + OnChange = OrderNoMChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 858 + Top = 111 + Width = 56 + Height = 20 + TabOrder = 13 + OnChange = OrderNoMChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 97 + Width = 1086 + Height = 410 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_YSYF.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1ConNo: TcxGridDBColumn + Caption = #20219#21153#21333#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 68 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 73 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'FillTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 75 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #21040#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 75 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #20379#24212#21830 + DataBinding.FieldName = 'FactoryNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 62 + end + object v1Column5: TcxGridDBColumn + Caption = #32852#31995#26041#24335 + DataBinding.FieldName = 'LXTel' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 89 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'C_CodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 69 + end + object v1C_Spec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column2: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'Qty1' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'C_Qty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 60 + end + object v1Column8: TcxGridDBColumn + Caption = #22791#27880#21450#35201#27714 + DataBinding.FieldName = 'C_Note' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 123 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 256 + Top = 176 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end +end diff --git a/应收应付/U_PbProductList.pas b/应收应付/U_PbProductList.pas new file mode 100644 index 0000000..2cb8fee --- /dev/null +++ b/应收应付/U_PbProductList.pas @@ -0,0 +1,448 @@ +unit U_PbProductList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus; + +type + TfrmPbProductList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNoM: TEdit; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + Label4: TLabel; + CustomerNoName: TEdit; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + Label2: TLabel; + JGFactoryName: TEdit; + Label5: TLabel; + OrdPerson1: TEdit; + Label6: TLabel; + MPRTCF: TEdit; + Label7: TLabel; + PRTColor: TEdit; + Label8: TLabel; + MPRTCodeName: TEdit; + Label9: TLabel; + ConNo: TEdit; + Label10: TLabel; + MPRTSpec: TEdit; + Label11: TLabel; + OrdDefStr1: TEdit; + Label12: TLabel; + MPRTKZ: TEdit; + Label13: TLabel; + MPRTMF: TEdit; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column4: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1CustomerNoName: TcxGridDBColumn; + v1MPRTCodeName: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1C_Spec: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure OrderNoMKeyPress(Sender: TObject; var Key: Char); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmPbProductList: TfrmPbProductList; + +implementation +uses + U_DataLink,U_Fun; + +{$R *.dfm} + +procedure TfrmPbProductList.FormDestroy(Sender: TObject); +begin + frmPbProductList:=nil; +end; + +procedure TfrmPbProductList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmPbProductList.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmPbProductList.TBCloseClick(Sender: TObject); +begin + Close; + if FCloth<>1 then + WriteCxGrid('ָʾб10',Tv1,'ָʾ') + else + WriteCxGrid('ָʾбѡ',Tv1,'ָʾ'); +end; + +procedure TfrmPbProductList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContract_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmPbProductList.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmPbProductList.InitForm(); +begin + if SGetServerDate(ADOQueryTemp)>StrToDate('2014-07-11') then + begin + ToolBar1.Visible:=False; + Application.MessageBox('ҪϵӦ̣','ʾ',0); + Exit; + end; + if FCloth<>1 then + ReadCxGrid('ָʾб10',Tv1,'ָʾ') + else + ReadCxGrid('ָʾбѡ',Tv1,'ָʾ'); + + if FCloth=1 then + begin + v1Column4.Visible:=True; + + end else + begin + v1Column4.Visible:=False; + end; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + //InitGrid(); +end; + +procedure TfrmPbProductList.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmPbProductList.DelData():Boolean; +begin +end; + +procedure TfrmPbProductList.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + InitGridFH(); + end else + begin + InitGrid(); + end; +end; + +procedure TfrmPbProductList.OrderNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmPbProductList.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmPbProductList.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmPbProductList.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmPbProductList.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmPbProductList.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmPbProductList.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmPbProductList.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmPbProductList.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmPbProductList.ToolButton3Click(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + ModalResult:=1; +end; + +procedure TfrmPbProductList.OrderNoMKeyPress(Sender: TObject; + var Key: Char); +var + fsj:string; +begin + if Key=#13 then + begin + if Length(Trim(OrderNoM.Text))<4 then Exit; + fsj:='%'+Trim(OrderNoM.Text)+'%'; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql') ; + if Trim(DParameters1)<>'Ȩ' then + begin + Parameters.ParamByName('WSql').Value:=' and A.Filler='''+Trim(DName)+''''; + end else + begin + Parameters.ParamByName('WSql').Value:=' and A.OrderNo like '''+fsj+''''; + end; + Parameters.ParamByName('begdate').Value:='1900-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmPbProductList.Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + ToolButton3.Click; + +end; + +end. diff --git a/应收应付/U_ProductOrderCost.dfm b/应收应付/U_ProductOrderCost.dfm new file mode 100644 index 0000000..f2a7d3b --- /dev/null +++ b/应收应付/U_ProductOrderCost.dfm @@ -0,0 +1,873 @@ +object frmProductOrderCost: TfrmProductOrderCost + Left = 1 + Top = 1 + Width = 1278 + Height = 736 + Caption = #25104#26412#26680#31639 + 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 = 1268 + AutoSize = True + 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_YSYF.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + Visible = False + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1268 + Height = 67 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 179 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 574 + Top = 15 + Width = 26 + Height = 12 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 179 + Top = 39 + Width = 39 + Height = 12 + Caption = #19994#21153#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 321 + Top = 39 + Width = 52 + Height = 12 + Caption = #20013#25991#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 321 + Top = 15 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 469 + Top = 39 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 469 + Top = 15 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNoM: TEdit + Tag = 2 + Left = 220 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoMChange + OnKeyPress = OrderNoMKeyPress + end + object CustomerNoName: TEdit + Tag = 2 + Left = 603 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 3 + OnChange = OrderNoMChange + end + object Filler: TEdit + Tag = 2 + Left = 220 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 4 + OnChange = OrderNoMChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 375 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 5 + OnChange = OrderNoMChange + end + object OrdDefStr1: TEdit + Tag = 2 + Left = 375 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 6 + OnChange = OrderNoMChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 498 + Top = 35 + Width = 56 + Height = 20 + TabOrder = 7 + OnChange = OrderNoMChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 498 + Top = 11 + Width = 56 + Height = 20 + TabOrder = 8 + OnChange = OrderNoMChange + end + end + object cxGrid1: TcxGrid + Left = 19 + Top = 104 + Width = 1249 + Height = 225 + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Column8 + end + item + Kind = skSum + Column = v1Column3 + end + item + Kind = skSum + Column = v1Column5 + end + item + Kind = skSum + Column = v1Column10 + end + item + Kind = skSum + Column = v1Column6 + end + item + Kind = skSum + Column = v1Column7 + end + item + Kind = skSum + Column = v1Column9 + end + item + Kind = skSum + Column = v1Column11 + end + item + Kind = skSum + Column = v1Column13 + end + item + Kind = skSum + Column = v1Column14 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_YSYF.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 72 + end + object v1OrdDefStr1: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'OrdDefStr1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 90 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 73 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 62 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 69 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'OrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 64 + end + object v1Column1: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 60 + end + object v1PRTPrice: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PRTPrice' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 71 + end + object v1Column2: TcxGridDBColumn + Caption = #35745#20215#21333#20301 + DataBinding.FieldName = 'PriceUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 62 + end + object v1Column8: TcxGridDBColumn + Caption = #23454#21457#25968#37327 + DataBinding.FieldName = 'FHQty' + HeaderAlignmentHorz = taCenter + Width = 63 + end + object v1Column9: TcxGridDBColumn + Caption = #24212#25910#27454'('#21407#24065')' + DataBinding.FieldName = 'YSKYB' + Width = 84 + end + object v1Column3: TcxGridDBColumn + Caption = #24212#25910#27454 + DataBinding.FieldName = 'YSK' + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v1Column11: TcxGridDBColumn + Caption = #25910#27454'('#21407#24065')' + DataBinding.FieldName = 'SKYB' + Width = 72 + end + object v1Column12: TcxGridDBColumn + Caption = #21040#22383#25968#37327 + DataBinding.FieldName = 'DPQty' + HeaderAlignmentHorz = taCenter + HeaderAlignmentVert = vaCenter + Width = 61 + end + object v1Column15: TcxGridDBColumn + Caption = #21040#22383#21333#20301 + DataBinding.FieldName = 'DPUnit' + HeaderAlignmentHorz = taCenter + HeaderAlignmentVert = vaCenter + Width = 61 + end + object v1Column13: TcxGridDBColumn + Caption = #20313#39069'('#21407#24065')' + DataBinding.FieldName = 'YMoneyYB' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v1Column14: TcxGridDBColumn + Caption = #20313#39069'('#26412#24065')' + DataBinding.FieldName = 'YMoneyBB' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v1Column5: TcxGridDBColumn + Caption = #25910#27454 + DataBinding.FieldName = 'SK' + HeaderAlignmentHorz = taCenter + Width = 61 + end + object v1Column10: TcxGridDBColumn + Caption = #24212#20184#27454 + DataBinding.FieldName = 'YFK' + HeaderAlignmentHorz = taCenter + Width = 53 + end + object v1Column6: TcxGridDBColumn + Caption = #20184#27454 + DataBinding.FieldName = 'FK' + HeaderAlignmentHorz = taCenter + Width = 61 + end + object v1Column7: TcxGridDBColumn + Caption = #27611#21033#28070 + DataBinding.FieldName = 'MLR' + HeaderAlignmentHorz = taCenter + Width = 61 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 72 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 62 + end + object v1MPRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 70 + end + object v1MPRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + Options.Focusing = False + Width = 54 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel2: TPanel + Left = 0 + Top = 352 + Width = 1268 + Height = 329 + Align = alBottom + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 3 + object cxGrid2: TcxGrid + Left = 865 + Top = 2 + Width = 401 + Height = 325 + Align = alClient + TabOrder = 0 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DataSource2 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = v2Column5 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.Header = DataLink_YSYF.FonePurple + object cxGridDBColumn1: TcxGridDBColumn + Caption = #20184#27454#26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 102 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #20184#27454#39033#30446#21450#25688#35201 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 132 + end + object v2Column5: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'BBMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 80 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGrid3: TcxGrid + Left = 2 + Top = 2 + Width = 335 + Height = 325 + Align = alLeft + TabOrder = 1 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DataSource3 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = cxGridDBColumn8 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.Header = DataLink_YSYF.FonePurple + object cxGridDBColumn2: TcxGridDBColumn + Caption = #25910#27454#26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 113 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #25910#27454#39033#30446#21450#25688#35201 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 118 + end + object cxGridDBColumn8: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'BBMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 76 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + object cxGrid4: TcxGrid + Left = 337 + Top = 2 + Width = 528 + Height = 325 + Align = alLeft + TabOrder = 2 + object Tv4: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DataSource4 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = Tv47 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.Header = DataLink_YSYF.FonePurple + object djrq: TcxGridDBColumn + Caption = #30331#35760#26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 101 + end + object tv46: TcxGridDBColumn + Caption = #24212#20184#27454#39033#30446#21450#25688#35201 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 119 + end + object v4Column1: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Width = 55 + end + object v4Column4: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'QtyUnit' + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v4Column2: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v4Column3: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + HeaderAlignmentHorz = taCenter + Width = 52 + end + object Tv47: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'BBMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 73 + end + end + object cxGridLevel3: TcxGridLevel + GridView = Tv4 + end + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 344 + Width = 1268 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + Control = Panel2 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 288 + Top = 240 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 320 + Top = 224 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 280 + Top = 208 + end + object DataSource2: TDataSource + DataSet = CDS_FK + Left = 904 + Top = 504 + end + object CDS_FK: TClientDataSet + Aggregates = <> + Params = <> + Left = 952 + Top = 544 + end + object DataSource3: TDataSource + DataSet = CDS_SK + Left = 280 + Top = 568 + end + object CDS_SK: TClientDataSet + Aggregates = <> + Params = <> + Left = 280 + Top = 608 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 904 + Top = 568 + end + object cxGridPopupMenu3: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 296 + Top = 504 + end + object DataSource4: TDataSource + DataSet = CDS_YFK + Left = 536 + Top = 560 + end + object CDS_YFK: TClientDataSet + Aggregates = <> + Params = <> + Left = 536 + Top = 600 + end + object cxGridPopupMenu4: TcxGridPopupMenu + Grid = cxGrid4 + PopupMenus = <> + Left = 512 + Top = 520 + end +end diff --git a/应收应付/U_ProductOrderCost.pas b/应收应付/U_ProductOrderCost.pas new file mode 100644 index 0000000..e5b4c40 --- /dev/null +++ b/应收应付/U_ProductOrderCost.pas @@ -0,0 +1,502 @@ +unit U_ProductOrderCost; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus, cxButtonEdit, cxTextEdit; + +type + TfrmProductOrderCost = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNoM: TEdit; + Order_Main: TClientDataSet; + Label4: TLabel; + CustomerNoName: TEdit; + ToolButton1: TToolButton; + Label5: TLabel; + Filler: TEdit; + Label8: TLabel; + MPRTCodeName: TEdit; + Label11: TLabel; + OrdDefStr1: TEdit; + Label12: TLabel; + MPRTKZ: TEdit; + Label13: TLabel; + MPRTMF: TEdit; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column4: TcxGridDBColumn; + v1OrderNo: TcxGridDBColumn; + v1OrdDefStr1: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1CustomerNoName: TcxGridDBColumn; + v1MPRTCodeName: TcxGridDBColumn; + v1MPRTMF: TcxGridDBColumn; + v1MPRTKZ: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1PRTPrice: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1Column3: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + Panel2: TPanel; + cxSplitter1: TcxSplitter; + DataSource2: TDataSource; + CDS_FK: TClientDataSet; + DataSource3: TDataSource; + CDS_SK: TClientDataSet; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridDBColumn8: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + cxGridPopupMenu3: TcxGridPopupMenu; + v1Column10: TcxGridDBColumn; + cxGrid4: TcxGrid; + Tv4: TcxGridDBTableView; + djrq: TcxGridDBColumn; + tv46: TcxGridDBColumn; + Tv47: TcxGridDBColumn; + cxGridLevel3: TcxGridLevel; + DataSource4: TDataSource; + CDS_YFK: TClientDataSet; + cxGridPopupMenu4: TcxGridPopupMenu; + v4Column1: TcxGridDBColumn; + v4Column2: TcxGridDBColumn; + v4Column3: TcxGridDBColumn; + v4Column4: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + v1Column13: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + v1Column15: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure ToolButton1Click(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); + procedure OrderNoMKeyPress(Sender: TObject; var Key: Char); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmProductOrderCost: TfrmProductOrderCost; + +implementation +uses + U_DataLink,U_Fun; //U_OrderInPut, + +{$R *.dfm} + +procedure TfrmProductOrderCost.FormDestroy(Sender: TObject); +begin + frmProductOrderCost:=nil; +end; + +procedure TfrmProductOrderCost.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderCost.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderCost.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ɱ1',Tv1,'ָʾ'); + WriteCxGrid('Ǽ11',Tv2,'ָʾ'); + WriteCxGrid('տǼ11',Tv3,'ָʾ'); + WriteCxGrid('ӦǼ11',Tv4,'ָʾ'); +end; + +procedure TfrmProductOrderCost.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' exec P_View_Cost :begdate,:enddate,:WSql'); + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + Parameters.ParamByName('WSql').Value:=''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderCost.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderCost.InitForm(); +begin + ReadCxGrid('ɱ1',Tv1,'ָʾ'); + ReadCxGrid('Ǽ11',Tv2,'ָʾ'); + ReadCxGrid('տǼ11',Tv3,'ָʾ'); + ReadCxGrid('ӦǼ11',Tv4,'ָʾ'); + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-30; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmProductOrderCost.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmProductOrderCost.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + if IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderCost.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderCost.OrderNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderCost.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderCost.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if ToolButton1.Visible=False then Exit; + ToolButton1.Click; +end; + +procedure TfrmProductOrderCost.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderCost.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderCost.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderCost.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderCost.ToolButton1Click(Sender: TObject); +begin + { if Order_Main.IsEmpty then Exit; + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible:=False; + TBSave.Visible:=False; + ScrollBox1.Enabled:=False; + ScrollBox2.Enabled:=False; + Tv1.OptionsSelection.CellSelect:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; } +end; + +procedure TfrmProductOrderCost.Tv1FocusedRecordChanged( + Sender: TcxCustomGridTableView; APrevFocusedRecord, + AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); +begin + try + ADOQueryPrint.DisableControls; + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add(' select A.* '); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + sql.Add('where A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add(' and A.CRType=''Ǽ'' '); + Open; + end; + SCreateCDS20(ADOQueryPrint,CDS_FK); + SInitCDSData20(ADOQueryPrint,CDS_FK); + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add(' select A.* '); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + sql.Add('where A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add(' and A.CRType=''տǼ'' '); + Open; + end; + SCreateCDS20(ADOQueryPrint,CDS_SK); + SInitCDSData20(ADOQueryPrint,CDS_SK); + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add(' select A.* '); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + sql.Add('where A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add(' and A.CRType=''ӦǼ'' '); + Open; + end; + SCreateCDS20(ADOQueryPrint,CDS_YFK); + SInitCDSData20(ADOQueryPrint,CDS_YFK); + finally + ADOQueryPrint.EnableControls; + end; +end; + +procedure TfrmProductOrderCost.OrderNoMKeyPress(Sender: TObject; + var Key: Char); +var + fsj:String; +begin + if Key=#13 then + begin + if Length(Trim(OrderNoM.Text))<4 then Exit; + fsj:='%'+Trim(OrderNoM.Text)+'%'; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' exec P_View_Cost :begdate,:enddate,:WSql'); + Parameters.ParamByName('begdate').Value:=''; + Parameters.ParamByName('enddate').Value:=''; + Parameters.ParamByName('WSql').Value:=' and A.OrderNo like '''+Trim(fsj)+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +end. diff --git a/应收应付/U_ProductOrderList.dfm b/应收应付/U_ProductOrderList.dfm new file mode 100644 index 0000000..ec79064 --- /dev/null +++ b/应收应付/U_ProductOrderList.dfm @@ -0,0 +1,542 @@ +object frmProductOrderList: TfrmProductOrderList + Left = 134 + Top = 115 + Width = 1094 + Height = 600 + Caption = #29983#20135#25351#31034#21333 + 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 = 1265 + AutoSize = True + 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_YSYF.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 106 + Visible = False + OnClick = ToolButton3Click + end + object TBExport: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1265 + Height = 67 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 179 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 318 + Top = 15 + Width = 26 + Height = 12 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 179 + Top = 39 + Width = 39 + Height = 12 + Caption = #36319#21333#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 318 + Top = 39 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 441 + Top = 39 + Width = 52 + Height = 12 + Caption = #20013#25991#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 441 + Top = 15 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 589 + Top = 39 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 589 + Top = 15 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNoM: TEdit + Tag = 2 + Left = 220 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoMChange + end + object CustomerNoName: TEdit + Tag = 2 + Left = 347 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 3 + OnChange = OrderNoMChange + end + object OrdPerson1: TEdit + Tag = 2 + Left = 220 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 4 + OnChange = OrderNoMChange + end + object PRTColor: TEdit + Tag = 2 + Left = 347 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 5 + OnChange = OrderNoMChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 495 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 6 + OnChange = OrderNoMChange + end + object OrdDefStr1: TEdit + Tag = 2 + Left = 495 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 7 + OnChange = OrderNoMChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 618 + Top = 35 + Width = 56 + Height = 20 + TabOrder = 8 + OnChange = OrderNoMChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 618 + Top = 11 + Width = 56 + Height = 20 + TabOrder = 9 + OnChange = OrderNoMChange + end + end + object cxGrid1: TcxGrid + Left = 16 + Top = 104 + Width = 1249 + Height = 369 + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_YSYF.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 72 + end + object v1OrdDefStr1: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'OrdDefStr1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 90 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #36319#21333#21592 + DataBinding.FieldName = 'OrdPerson1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 73 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 72 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 62 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 62 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 69 + end + object v1MPRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 70 + end + object v1MPRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + Options.Focusing = False + Width = 54 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 63 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 67 + end + object v1PRTPrice: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PRTPrice' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 71 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 288 + Top = 184 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end +end diff --git a/应收应付/U_ProductOrderList.pas b/应收应付/U_ProductOrderList.pas new file mode 100644 index 0000000..ba07f72 --- /dev/null +++ b/应收应付/U_ProductOrderList.pas @@ -0,0 +1,526 @@ +unit U_ProductOrderList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP,ShellAPI + ,IniFiles; + +type + TfrmProductOrderList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNoM: TEdit; + TBExport: TToolButton; + v1OrderNo: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + Label4: TLabel; + CustomerNoName: TEdit; + v1MPRTCodeName: TcxGridDBColumn; + v1MPRTMF: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + v1PRTPrice: TcxGridDBColumn; + Label5: TLabel; + OrdPerson1: TEdit; + Label7: TLabel; + PRTColor: TEdit; + Label8: TLabel; + MPRTCodeName: TEdit; + v1MPRTKZ: TcxGridDBColumn; + v1OrdDefStr1: TcxGridDBColumn; + Label11: TLabel; + OrdDefStr1: TEdit; + Label12: TLabel; + MPRTKZ: TEdit; + Label13: TLabel; + MPRTMF: TEdit; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + v1Column4: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + procedure ReadINIFile(); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmProductOrderList: TfrmProductOrderList; + +implementation +uses + U_DataLink,U_Fun; + +{$R *.dfm} + +procedure TfrmProductOrderList.FormDestroy(Sender: TObject); +begin + frmProductOrderList:=nil; +end; + +procedure TfrmProductOrderList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderList.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderList.TBCloseClick(Sender: TObject); +begin + Close; + if FCloth<>1 then + WriteCxGrid('ָʾб',Tv1,'ָʾ') + else + WriteCxGrid('ָʾбѡ',Tv1,'ָʾ'); +end; + +procedure TfrmProductOrderList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select A.*,B.*,A.OrderNo OrderNoM from JYOrder_Main A left join JYOrder_Sub B on A.MainId=B.MainId '); + SQL.Add('where OrdDate>=:begdate and OrdDate<:enddate'); + if Trim(DParameters1)<>'' then + begin + sql.Add(' and A.Filler='''+Trim(DName)+''''); + end; + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderList.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderList.InitForm(); +begin + if SGetServerDate(ADOQueryTemp)>StrToDate('2014-07-11') then + begin + ToolBar1.Visible:=False; + Application.MessageBox('ҪϵӦ̣','ʾ',0); + Exit; + end; + if FCloth<>1 then + ReadCxGrid('ָʾб',Tv1,'ָʾ') + else + ReadCxGrid('ָʾбѡ',Tv1,'ָʾ'); + + + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmProductOrderList.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmProductOrderList.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + if IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv1,ADOQueryMain,'ָʾб'); +end; + +procedure TfrmProductOrderList.TBPrintClick(Sender: TObject); +var + fPrintFile:string; + Porderno:string; + i,j:Integer; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*,PRTColorEng=(select Note from KH_Zdy CC where ZdyName=B.PRTColor and CC.Type=''OrdColor'' ),ML='' '' '); + SQL.Add(',CPQty=(select isnull(Sum(PRTOrderQty),0) from JYOrder_Sub C where C.MainId=A.MainId)'); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId '); + sql.Add(' and A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print); + i:=ADOQueryPrint.RecordCount; + ADOQueryPrint.First; + if i<14 then + begin + for j:=1 to 19-i do + begin + with CDS_Print do + begin + Append; + FieldByName('ML').Value:=' '; + Post; + end; + end; + end; + with CDS_Print do + begin + Append; + FieldByName('Note').Value:=Trim(Order_Main.fieldbyname('Note').AsString); + FieldByName('OrdDefStr10').Value:=Trim(Order_Main.fieldbyname('OrdDefStr10').AsString); + FieldByName('OrdDefStr11').Value:=Trim(Order_Main.fieldbyname('OrdDefStr11').AsString); + FieldByName('OrdDefStr12').Value:=Trim(Order_Main.fieldbyname('OrdDefStr12').AsString); + FieldByName('OrdDefStr13').Value:=Trim(Order_Main.fieldbyname('OrdDefStr13').AsString); + FieldByName('OrdDefStr14').Value:=Trim(Order_Main.fieldbyname('OrdDefStr14').AsString); + FieldByName('OrdDefStr15').Value:=Trim(Order_Main.fieldbyname('OrdDefStr15').AsString); + FieldByName('OrdDefStr16').Value:=Trim(Order_Main.fieldbyname('OrdDefStr16').AsString); + FieldByName('OrdDefStr17').Value:=Trim(Order_Main.fieldbyname('OrdDefStr17').AsString); + FieldByName('OrdDefStr18').Value:=Trim(Order_Main.fieldbyname('OrdDefStr18').AsString); + FieldByName('OrdDefStr19').Value:=Trim(Order_Main.fieldbyname('OrdDefStr19').AsString); + FieldByName('OrdDefStr20').Value:=Trim(Order_Main.fieldbyname('OrdDefStr20').AsString); + FieldByName('OrdDefStr21').Value:=Trim(Order_Main.fieldbyname('OrdDefStr21').AsString); + FieldByName('OrdPerson1').Value:=Trim(Order_Main.fieldbyname('OrdPerson1').AsString); + FieldByName('OrdPerson2').Value:=Trim(Order_Main.fieldbyname('OrdPerson2').AsString); + FieldByName('OrdPerson3').Value:=Trim(Order_Main.fieldbyname('OrdPerson3').AsString); + FieldByName('OrdPerson4').Value:=Trim(Order_Main.fieldbyname('OrdPerson4').AsString); + FieldByName('Filler').Value:=Trim(Order_Main.fieldbyname('Filler').AsString); + FieldByName('Chker').Value:=Trim(Order_Main.fieldbyname('Chker').AsString); + FieldByName('ML').Value:=' '; + Post; + end; + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; +end; + +procedure TfrmProductOrderList.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + InitGridFH(); + end else + InitGrid(); +end; + +procedure TfrmProductOrderList.OrderNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderList.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderList.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmProductOrderList.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderList.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderList.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderList.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderList.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderList.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderList.ToolButton3Click(Sender: TObject); +begin + ModalResult:=1; +end; + +procedure TfrmProductOrderList.ReadINIFile(); +var + programIni:Tinifile; //ļ + FileName:string; +begin + FileName:=ExtractFilePath(Paramstr(0))+'SYSTEMSET.INI'; + programIni:=Tinifile.create(FileName); + server:=programIni.ReadString('SERVER','ַ','127.0.0.1'); + programIni.Free; +end; + +end. diff --git a/应收应付/U_ProductOrderListCX.dfm b/应收应付/U_ProductOrderListCX.dfm new file mode 100644 index 0000000..2b46022 --- /dev/null +++ b/应收应付/U_ProductOrderListCX.dfm @@ -0,0 +1,628 @@ +object frmProductOrderListCX: TfrmProductOrderListCX + Left = 134 + Top = 115 + Width = 1094 + Height = 600 + HorzScrollBar.Position = 179 + Caption = #29983#20135#25351#31034#21333 + 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 = -179 + Top = 0 + Width = 1265 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 106 + Visible = False + OnClick = ToolButton3Click + end + object TBAdd: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = TBEditClick + end + object ToolButton2: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #22797#21046 + ImageIndex = 57 + Visible = False + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + Visible = False + OnClick = ToolButton1Click + end + object TBDel: TToolButton + Left = 441 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + OnClick = TBDelClick + end + object TBExport: TToolButton + Left = 504 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 567 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 12 + OnClick = TBPrintClick + end + object ToolButton4: TToolButton + Left = 630 + Top = 0 + AutoSize = True + Caption = #22270#29255#19978#20256 + ImageIndex = 109 + Visible = False + OnClick = ToolButton4Click + end + object ToolButton5: TToolButton + Left = 717 + Top = 0 + Caption = #22270#29255#19979#36733 + ImageIndex = 104 + OnClick = ToolButton5Click + end + object TBClose: TToolButton + Left = 800 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = -179 + Top = 32 + Width = 1265 + Height = 67 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 179 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 318 + Top = 15 + Width = 26 + Height = 12 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 179 + Top = 39 + Width = 39 + Height = 12 + Caption = #36319#21333#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 318 + Top = 39 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 441 + Top = 39 + Width = 52 + Height = 12 + Caption = #20013#25991#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 441 + Top = 15 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 589 + Top = 39 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 589 + Top = 15 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNoM: TEdit + Tag = 2 + Left = 220 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoMChange + end + object CustomerNoName: TEdit + Tag = 2 + Left = 347 + Top = 11 + Width = 76 + Height = 20 + Enabled = False + TabOrder = 3 + OnChange = OrderNoMChange + end + object OrdPerson1: TEdit + Tag = 2 + Left = 220 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 4 + OnChange = OrderNoMChange + end + object PRTColor: TEdit + Tag = 2 + Left = 347 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 5 + OnChange = OrderNoMChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 495 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 6 + OnChange = OrderNoMChange + end + object OrdDefStr1: TEdit + Tag = 2 + Left = 495 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 7 + OnChange = OrderNoMChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 618 + Top = 35 + Width = 56 + Height = 20 + TabOrder = 8 + OnChange = OrderNoMChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 618 + Top = 11 + Width = 56 + Height = 20 + TabOrder = 9 + OnChange = OrderNoMChange + end + end + object cxGrid1: TcxGrid + Left = -163 + Top = 104 + Width = 1249 + Height = 369 + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1OrdDefStr1: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'OrdDefStr1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 90 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #36319#21333#21592 + DataBinding.FieldName = 'OrdPerson1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 73 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 69 + end + object v1MPRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object v1MPRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + Options.Focusing = False + Width = 54 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + object v1Column1: TcxGridDBColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + HeaderAlignmentHorz = taCenter + Width = 71 + end + object v1Column2: TcxGridDBColumn + Caption = #29366#24577 + DataBinding.FieldName = 'ChkStatus' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column3: TcxGridDBColumn + Caption = #24050#19978#20256 + DataBinding.FieldName = 'SOrdFlag1' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Width = 54 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 288 + Top = 184 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end + object ODPat: TOpenDialog + Options = [ofReadOnly, ofAllowMultiSelect, ofPathMustExist, ofFileMustExist, ofEnableSizing] + Left = 484 + Top = 157 + end + object SaveDialog1: TSaveDialog + Left = 521 + Top = 157 + end + object IdFTP1: TIdFTP + MaxLineAction = maException + ReadTimeout = 0 + ProxySettings.ProxyType = fpcmNone + ProxySettings.Port = 0 + Left = 485 + Top = 188 + end +end diff --git a/应收应付/U_ProductOrderListCX.pas b/应收应付/U_ProductOrderListCX.pas new file mode 100644 index 0000000..2717bbb --- /dev/null +++ b/应收应付/U_ProductOrderListCX.pas @@ -0,0 +1,780 @@ +unit U_ProductOrderListCX; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP,ShellAPI + ,IniFiles; + +type + TfrmProductOrderListCX = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNoM: TEdit; + TBExport: TToolButton; + v1OrderNo: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + Label4: TLabel; + CustomerNoName: TEdit; + v1MPRTCodeName: TcxGridDBColumn; + v1MPRTMF: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + ToolButton1: TToolButton; + Label5: TLabel; + OrdPerson1: TEdit; + Label7: TLabel; + PRTColor: TEdit; + Label8: TLabel; + MPRTCodeName: TEdit; + v1MPRTKZ: TcxGridDBColumn; + v1OrdDefStr1: TcxGridDBColumn; + Label11: TLabel; + OrdDefStr1: TEdit; + Label12: TLabel; + MPRTKZ: TEdit; + Label13: TLabel; + MPRTMF: TEdit; + ToolButton2: TToolButton; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + v1Column4: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + ToolButton4: TToolButton; + ToolButton5: TToolButton; + v1Column3: TcxGridDBColumn; + ODPat: TOpenDialog; + SaveDialog1: TSaveDialog; + IdFTP1: TIdFTP; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure TBChkClick(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + procedure ReadINIFile(); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmProductOrderListCX: TfrmProductOrderListCX; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun,U_FileUp; + +{$R *.dfm} + +procedure TfrmProductOrderListCX.FormDestroy(Sender: TObject); +begin + frmProductOrderListCX:=nil; +end; + +procedure TfrmProductOrderListCX.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderListCX.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderListCX.TBCloseClick(Sender: TObject); +begin + Close; + if FCloth<>1 then + WriteCxGrid('ָʾбCX',Tv1,'ָʾ') + else + WriteCxGrid('ָʾбѡCX',Tv1,'ָʾ'); +end; + +procedure TfrmProductOrderListCX.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select A.*,B.*,A.OrderNo OrderNoM from JYOrder_Main A left join JYOrder_Sub B on A.MainId=B.MainId '); + SQL.Add('where OrdDate>=:begdate and OrdDate<:enddate'); + if Trim(DParameters1)<>'' then + begin + sql.Add(' and A.Filler='''+Trim(DName)+''''); + end; + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderListCX.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderListCX.InitForm(); +begin + if SGetServerDate(ADOQueryTemp)>StrToDate('2014-07-11') then + begin + ToolBar1.Visible:=False; + Application.MessageBox('ҪϵӦ̣','ʾ',0); + Exit; + end; + if FCloth<>1 then + ReadCxGrid('ָʾбCX',Tv1,'ָʾ') + else + ReadCxGrid('ָʾбѡCX',Tv1,'ָʾ'); + + + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + if FCloth=1 then + begin + v1Column4.Visible:=False; + //v1PRTPrice.Visible:=False; + //v1PRTPrice.Hidden:=True; + + end else + begin + v1Column4.Visible:=False; + //v1PRTPrice.Visible:=True; + //v1PRTPrice.Hidden:=False; + end; + InitGrid(); +end; + +procedure TfrmProductOrderListCX.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderListCX.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; + if Trim(Order_Main.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + Application.MessageBox('ͨ!','ʾ',0); + Exit; + end; + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderListCX.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; + if Trim(Order_Main.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + Application.MessageBox('ͨ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData() then + begin + Order_Main.Delete; + end; +end; + +function TfrmProductOrderListCX.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + if IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderListCX.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv1,ADOQueryMain,'ָʾб'); +end; + +procedure TfrmProductOrderListCX.TBPrintClick(Sender: TObject); +var + fPrintFile:string; + Porderno:string; + i,j:Integer; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*,PRTColorEng=(select Note from KH_Zdy CC where ZdyName=B.PRTColor and CC.Type=''OrdColor'' ),ML='' '' '); + SQL.Add(',CPQty=(select isnull(Sum(PRTOrderQty),0) from JYOrder_Sub C where C.MainId=A.MainId)'); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId '); + sql.Add(' and A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print); + i:=ADOQueryPrint.RecordCount; + ADOQueryPrint.First; + if i<14 then + begin + for j:=1 to 19-i do + begin + with CDS_Print do + begin + Append; + FieldByName('ML').Value:=' '; + Post; + end; + end; + end; + with CDS_Print do + begin + Append; + FieldByName('Note').Value:=Trim(Order_Main.fieldbyname('Note').AsString); + FieldByName('OrdDefStr10').Value:=Trim(Order_Main.fieldbyname('OrdDefStr10').AsString); + FieldByName('OrdDefStr11').Value:=Trim(Order_Main.fieldbyname('OrdDefStr11').AsString); + FieldByName('OrdDefStr12').Value:=Trim(Order_Main.fieldbyname('OrdDefStr12').AsString); + FieldByName('OrdDefStr13').Value:=Trim(Order_Main.fieldbyname('OrdDefStr13').AsString); + FieldByName('OrdDefStr14').Value:=Trim(Order_Main.fieldbyname('OrdDefStr14').AsString); + FieldByName('OrdDefStr15').Value:=Trim(Order_Main.fieldbyname('OrdDefStr15').AsString); + FieldByName('OrdDefStr16').Value:=Trim(Order_Main.fieldbyname('OrdDefStr16').AsString); + FieldByName('OrdDefStr17').Value:=Trim(Order_Main.fieldbyname('OrdDefStr17').AsString); + FieldByName('OrdDefStr18').Value:=Trim(Order_Main.fieldbyname('OrdDefStr18').AsString); + FieldByName('OrdDefStr19').Value:=Trim(Order_Main.fieldbyname('OrdDefStr19').AsString); + FieldByName('OrdDefStr20').Value:=Trim(Order_Main.fieldbyname('OrdDefStr20').AsString); + FieldByName('OrdDefStr21').Value:=Trim(Order_Main.fieldbyname('OrdDefStr21').AsString); + FieldByName('OrdPerson1').Value:=Trim(Order_Main.fieldbyname('OrdPerson1').AsString); + FieldByName('OrdPerson2').Value:=Trim(Order_Main.fieldbyname('OrdPerson2').AsString); + FieldByName('OrdPerson3').Value:=Trim(Order_Main.fieldbyname('OrdPerson3').AsString); + FieldByName('OrdPerson4').Value:=Trim(Order_Main.fieldbyname('OrdPerson4').AsString); + FieldByName('Filler').Value:=Trim(Order_Main.fieldbyname('Filler').AsString); + FieldByName('Chker').Value:=Trim(Order_Main.fieldbyname('Chker').AsString); + FieldByName('ML').Value:=' '; + Post; + end; + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; +end; + +procedure TfrmProductOrderListCX.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + InitGridFH(); + end else + InitGrid(); +end; + +procedure TfrmProductOrderListCX.TBAddClick(Sender: TObject); +var + maxno:string; +begin + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=0; + FMainId:=''; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderListCX.OrderNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderListCX.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderListCX.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + TBPrint.Click; +end; + +procedure TfrmProductOrderListCX.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmProductOrderListCX.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderListCX.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderListCX.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderListCX.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderListCX.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderListCX.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderListCX.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible:=False; + TBSave.Visible:=False; + ScrollBox1.Enabled:=False; + ScrollBox2.Enabled:=False; + Tv1.OptionsSelection.CellSelect:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderListCX.ToolButton2Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=1; + CopyInt:=99; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderListCX.ToolButton3Click(Sender: TObject); +begin + ModalResult:=1; +end; + +procedure TfrmProductOrderListCX.TBChkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible:=False; + TBSave.Visible:=False; + ScrollBox1.Enabled:=False; + ScrollBox2.Enabled:=False; + Tv1.OptionsSelection.CellSelect:=False; + TBOk.Visible:=True; + TBNo.Visible:=True; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderListCX.ToolButton4Click(Sender: TObject); +begin + try + frmFileUp:=TfrmFileUp.Create(Application); + with frmFileUp do + begin + Code.Text:=Trim(Self.Order_Main.fieldbyname('SubId').AsString); + CYID:=Trim(Self.Order_Main.fieldbyname('SubId').AsString); + if ShowModal=1 then + begin + Self.InitGrid(); + Self.Order_Main.Locate('SubId',CYID,[]); + end; + end; + finally + frmFileUp.Free; + end; +end; + +procedure TfrmProductOrderListCX.ToolButton5Click(Sender: TObject); +var + fHandle:THandle; + FInt:Integer; + FFName,FPath:String; +begin + {FPath:='C:\HTTP1209\'; + if DirectoryExists(ExtractFileDir(FPath)) then + winexec('cmd /c rd /s /q C:\HTTP1209',sw_hide);} + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select * from XD_File where CYNO='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + if IsEmpty then + begin + Application.MessageBox('ƷͼƬδϴ','ʾ',0); + Exit; + end; + end; + try + ReadINIFile(); + server:=ReadINIFileStr('SYSTEMSET.INI','SERVER','ַ','127.0.0.1'); + if Length(server)<6 then + begin + server:='127.0.0.1'; + end; + IdFTP1.Host :=server;//PicSvr; + IdFTP1.Username := 'three'; + IdFTP1.Password := '641010'; + IdFTP1.Connect(); + except + IdFTP1.Quit; + Application.MessageBox('޷ӵļ飡', 'ʾ', MB_ICONWARNING); + Exit; + end; + FPath:='D:\Right1209\'; + if not DirectoryExists(ExtractFileDir(FPath)) then + CreateDir(ExtractFileDir(FPath)); + FFName:=Trim(ADOQueryTemp.fieldbyname('FileName').AsString); + FFName:=FPath+FFName; + if FileExists(FFName) then + begin + FInt:=1; + end; + if FInt<>1 then + IdFTP1.Get('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 TfrmProductOrderListCX.ReadINIFile(); +var + programIni:Tinifile; //ļ + FileName:string; +begin + FileName:=ExtractFilePath(Paramstr(0))+'SYSTEMSET.INI'; + programIni:=Tinifile.create(FileName); + server:=programIni.ReadString('SERVER','ַ','127.0.0.1'); + programIni.Free; +end; + +end. diff --git a/应收应付/U_ProductOrderListNew.dfm b/应收应付/U_ProductOrderListNew.dfm new file mode 100644 index 0000000..2e3a39d --- /dev/null +++ b/应收应付/U_ProductOrderListNew.dfm @@ -0,0 +1,1344 @@ +object frmProductOrderListNew: TfrmProductOrderListNew + Left = -1 + Top = 50 + Width = 1277 + Height = 684 + Caption = #29983#20135#25351#31034#21333 + 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 = 1269 + Height = 62 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_WFBOrder.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBAdd: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object ToolButton2: TToolButton + Left = 252 + Top = 0 + Caption = #29983#20135#35745#21010#21333 + ImageIndex = 58 + OnClick = ToolButton2Click + end + object TBChk: TToolButton + Left = 347 + Top = 0 + AutoSize = True + Caption = #23457#26680 + ImageIndex = 132 + OnClick = TBChkClick + end + object TBCChk: TToolButton + Left = 410 + Top = 0 + AutoSize = True + Caption = #23457#26680#25764#38144 + ImageIndex = 105 + Wrap = True + OnClick = TBCChkClick + end + object TBCopy: TToolButton + Left = 0 + Top = 30 + AutoSize = True + Caption = #22797#21046 + ImageIndex = 113 + OnClick = TBCopyClick + end + object TBCK: TToolButton + Left = 63 + Top = 30 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 57 + OnClick = TBCKClick + end + object TBDel: TToolButton + Left = 126 + Top = 30 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object TBExport: TToolButton + Left = 189 + Top = 30 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBBQPrint: TToolButton + Left = 252 + Top = 30 + AutoSize = True + Caption = #25171#21360#26631#31614 + ImageIndex = 96 + OnClick = TBBQPrintClick + end + object TBPrint: TToolButton + Left = 339 + Top = 30 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 402 + Top = 30 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 62 + Width = 1269 + Height = 42 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #19979#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 161 + Top = 15 + Width = 18 + Height = 12 + Caption = '---' + end + object Label3: TLabel + Left = 283 + Top = 15 + Width = 52 + Height = 12 + Caption = #35746#21333#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 430 + Top = 15 + Width = 26 + Height = 12 + Caption = #20195#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 566 + Top = 15 + Width = 26 + Height = 12 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 179 + Top = 11 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 336 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoChange + end + object WFBCodeName: TEdit + Tag = 2 + Left = 459 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = OrderNoChange + end + object CustomNoName: TEdit + Tag = 2 + Left = 595 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + end + end + object cxGrid1: TcxGrid + Left = 1024 + Top = 104 + Width = 169 + Height = 121 + TabOrder = 2 + Visible = False + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBOrder.SHuangSe + Styles.IncSearch = DataLink_WFBOrder.SHuangSe + Styles.Selection = DataLink_WFBOrder.SHuangSe + object v1Column3: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 39 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#32534#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 72 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'Customnoname' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 66 + end + object v1Column2: TcxGridDBColumn + Caption = #20195#21495 + DataBinding.FieldName = 'WFBCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'WFBFK' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 62 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'WFBKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 76 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'OrdQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 58 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrdUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 63 + end + object v1OrderDate: TcxGridDBColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrderDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 70 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = 'ETA' + DataBinding.FieldName = 'ETADate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 63 + end + object v1FactoryNo2Name: TcxGridDBColumn + Caption = #35013#26588#26085#26399 + DataBinding.FieldName = 'ZGDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 60 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = 'ETD' + DataBinding.FieldName = 'ETDDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 60 + end + object v1FactoryNo3Name: TcxGridDBColumn + Caption = #24320#22987#20837#24211#26085#26399 + DataBinding.FieldName = 'BegRKDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 94 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #24320#22987#29983#20135#26085#26399 + DataBinding.FieldName = 'BegSCDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 90 + end + object v1Note: TcxGridDBColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 67 + end + object v1Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'OrdPrice' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 57 + end + object v1PRTQty: TcxGridDBColumn + Caption = #35745#20215#21333#20301 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 58 + end + object v1Column4: TcxGridDBColumn + Caption = #29983#20135#32447 + DataBinding.FieldName = 'SCXName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 62 + end + object v1Column5: TcxGridDBColumn + Caption = #32593#32467#26500 + DataBinding.FieldName = 'WJGName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 62 + end + object v1Column6: TcxGridDBColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 59 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 104 + Width = 1269 + Height = 263 + Align = alClient + TabOrder = 3 + object cxGrid2DBTableView1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + end + object TV2: TcxGridDBBandedTableView + OnMouseDown = TV2MouseDown + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TV2CellDblClick + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBOrder.SHuangSe + Styles.IncSearch = DataLink_WFBOrder.SHuangSe + Styles.Selection = DataLink_WFBOrder.SHuangSe + Styles.Header = DataLink_WFBOrder.Default + Bands = < + item + Caption = #21367#26448 + Styles.Header = cxStyle2 + Width = 1374 + end> + object V2Column1: TcxGridDBBandedColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 59 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object V2Column2: TcxGridDBBandedColumn + Caption = #23458#25143 + DataBinding.FieldName = 'Customnoname' + HeaderAlignmentHorz = taCenter + Width = 39 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object V2Column3: TcxGridDBBandedColumn + Caption = #20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Width = 55 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object V2Column4: TcxGridDBBandedColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'SWFBFK' + HeaderAlignmentHorz = taCenter + Width = 46 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object V2Column5: TcxGridDBBandedColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'SWFBKZ' + HeaderAlignmentHorz = taCenter + Width = 56 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object V2Column6: TcxGridDBBandedColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'OrdQty' + HeaderAlignmentHorz = taCenter + Width = 47 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object V2Column7: TcxGridDBBandedColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrdUnit' + HeaderAlignmentHorz = taCenter + Width = 62 + Position.BandIndex = 0 + Position.ColIndex = 9 + Position.RowIndex = 0 + end + object V2Column8: TcxGridDBBandedColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrderDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 62 + Position.BandIndex = 0 + Position.ColIndex = 10 + Position.RowIndex = 0 + end + object V2Column9: TcxGridDBBandedColumn + Caption = 'ETA' + DataBinding.FieldName = 'ETADate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 42 + Position.BandIndex = 0 + Position.ColIndex = 11 + Position.RowIndex = 0 + end + object V2Column10: TcxGridDBBandedColumn + Caption = #35013#26588#26085#26399 + DataBinding.FieldName = 'ZGDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 44 + Position.BandIndex = 0 + Position.ColIndex = 12 + Position.RowIndex = 0 + end + object V2Column11: TcxGridDBBandedColumn + Caption = 'ETD' + DataBinding.FieldName = 'ETDDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 44 + Position.BandIndex = 0 + Position.ColIndex = 13 + Position.RowIndex = 0 + end + object V2Column12: TcxGridDBBandedColumn + Caption = #24320#22987#20837#24211#26085#26399 + DataBinding.FieldName = 'BegRKDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 14 + Position.RowIndex = 0 + end + object V2Column13: TcxGridDBBandedColumn + Caption = #24320#22987#29983#20135#26085#26399 + DataBinding.FieldName = 'BegSCDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 15 + Position.RowIndex = 0 + end + object V2Column14: TcxGridDBBandedColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 16 + Position.RowIndex = 0 + end + object V2Column15: TcxGridDBBandedColumn + Caption = #21333#20215 + DataBinding.FieldName = 'SOrdPrice' + HeaderAlignmentHorz = taCenter + Width = 42 + Position.BandIndex = 0 + Position.ColIndex = 17 + Position.RowIndex = 0 + end + object V2Column16: TcxGridDBBandedColumn + Caption = #35745#20215#21333#20301 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Width = 43 + Position.BandIndex = 0 + Position.ColIndex = 19 + Position.RowIndex = 0 + end + object V2Column17: TcxGridDBBandedColumn + Caption = #29983#20135#32447 + DataBinding.FieldName = 'SCXName' + HeaderAlignmentHorz = taCenter + Width = 38 + Position.BandIndex = 0 + Position.ColIndex = 20 + Position.RowIndex = 0 + end + object V2Column18: TcxGridDBBandedColumn + Caption = #32593#32467#26500 + DataBinding.FieldName = 'WJGName' + HeaderAlignmentHorz = taCenter + Width = 43 + Position.BandIndex = 0 + Position.ColIndex = 21 + Position.RowIndex = 0 + end + object V2Column19: TcxGridDBBandedColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + HeaderAlignmentHorz = taCenter + Width = 45 + Position.BandIndex = 0 + Position.ColIndex = 23 + Position.RowIndex = 0 + end + object V2Column20: TcxGridDBBandedColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Width = 48 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object V2Column21: TcxGridDBBandedColumn + Caption = #37329#39069 + DataBinding.FieldName = 'Money' + HeaderAlignmentHorz = taCenter + Width = 44 + Position.BandIndex = 0 + Position.ColIndex = 18 + Position.RowIndex = 0 + end + object V2Column22: TcxGridDBBandedColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Width = 50 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object V2Column23: TcxGridDBBandedColumn + Caption = #32534#21495 + DataBinding.FieldName = 'OrderCode' + HeaderAlignmentHorz = taCenter + Width = 82 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object V2Column24: TcxGridDBBandedColumn + Caption = #23457#26680#29366#24577 + DataBinding.FieldName = 'ChkStatus' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 65 + Position.BandIndex = 0 + Position.ColIndex = 24 + Position.RowIndex = 0 + end + object V2Column25: TcxGridDBBandedColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + Position.BandIndex = 0 + Position.ColIndex = 22 + Position.RowIndex = 0 + end + object V2Column26: TcxGridDBBandedColumn + Caption = #24050#29983#25104#35745#21010#21333 + DataBinding.FieldName = 'JHDFlag' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Options.Focusing = False + Width = 85 + Position.BandIndex = 0 + Position.ColIndex = 25 + Position.RowIndex = 0 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = TV2 + end + end + object cxGrid3: TcxGrid + Left = 0 + Top = 375 + Width = 1269 + Height = 272 + Align = alBottom + TabOrder = 4 + object cxGridDBTableView1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + end + object Tv3: TcxGridDBBandedTableView + OnMouseDown = Tv3MouseDown + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TV2CellDblClick + DataController.DataSource = DataSource2 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBOrder.SHuangSe + Styles.IncSearch = DataLink_WFBOrder.SHuangSe + Styles.Selection = DataLink_WFBOrder.SHuangSe + Styles.Header = DataLink_WFBOrder.Default + Bands = < + item + Caption = #21046#21697 + Styles.Header = cxStyle1 + Width = 1374 + end> + object cxGridDBBandedColumn1: TcxGridDBBandedColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 63 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn2: TcxGridDBBandedColumn + Caption = #23458#25143 + DataBinding.FieldName = 'Customnoname' + HeaderAlignmentHorz = taCenter + Width = 46 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn3: TcxGridDBBandedColumn + Caption = #20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn5: TcxGridDBBandedColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'SWFBKZ' + HeaderAlignmentHorz = taCenter + Width = 51 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn6: TcxGridDBBandedColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'OrdQty' + HeaderAlignmentHorz = taCenter + Width = 50 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn7: TcxGridDBBandedColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrdUnit' + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn8: TcxGridDBBandedColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrderDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 51 + Position.BandIndex = 0 + Position.ColIndex = 9 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn9: TcxGridDBBandedColumn + Caption = 'ETA' + DataBinding.FieldName = 'ETADate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 10 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn10: TcxGridDBBandedColumn + Caption = #35013#26588#26085#26399 + DataBinding.FieldName = 'ZGDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 52 + Position.BandIndex = 0 + Position.ColIndex = 11 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn11: TcxGridDBBandedColumn + Caption = 'ETD' + DataBinding.FieldName = 'ETDDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 51 + Position.BandIndex = 0 + Position.ColIndex = 12 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn12: TcxGridDBBandedColumn + Caption = #24320#22987#20837#24211#26085#26399 + DataBinding.FieldName = 'BegRKDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 66 + Position.BandIndex = 0 + Position.ColIndex = 13 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn13: TcxGridDBBandedColumn + Caption = #24320#22987#29983#20135#26085#26399 + DataBinding.FieldName = 'BegSCDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 65 + Position.BandIndex = 0 + Position.ColIndex = 14 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn14: TcxGridDBBandedColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 67 + Position.BandIndex = 0 + Position.ColIndex = 15 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn15: TcxGridDBBandedColumn + Caption = #21333#20215 + DataBinding.FieldName = 'SOrdPrice' + HeaderAlignmentHorz = taCenter + Width = 46 + Position.BandIndex = 0 + Position.ColIndex = 16 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn16: TcxGridDBBandedColumn + Caption = #35745#20215#21333#20301 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Width = 50 + Position.BandIndex = 0 + Position.ColIndex = 18 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn17: TcxGridDBBandedColumn + Caption = #29983#20135#32447 + DataBinding.FieldName = 'SCXName' + HeaderAlignmentHorz = taCenter + Width = 47 + Position.BandIndex = 0 + Position.ColIndex = 19 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn18: TcxGridDBBandedColumn + Caption = #32593#32467#26500 + DataBinding.FieldName = 'WJGName' + HeaderAlignmentHorz = taCenter + Width = 45 + Position.BandIndex = 0 + Position.ColIndex = 20 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn19: TcxGridDBBandedColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 45 + Position.BandIndex = 0 + Position.ColIndex = 22 + Position.RowIndex = 0 + end + object v3Column1: TcxGridDBBandedColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Width = 51 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object v3Column2: TcxGridDBBandedColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object v3Column3: TcxGridDBBandedColumn + Caption = #37329#39069 + DataBinding.FieldName = 'Money' + HeaderAlignmentHorz = taCenter + Width = 42 + Position.BandIndex = 0 + Position.ColIndex = 17 + Position.RowIndex = 0 + end + object v3Column4: TcxGridDBBandedColumn + Caption = #32534#21495 + DataBinding.FieldName = 'OrderCode' + HeaderAlignmentHorz = taCenter + Width = 74 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object v3Column5: TcxGridDBBandedColumn + Caption = #23457#26680#29366#24577 + DataBinding.FieldName = 'ChkStatus' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 62 + Position.BandIndex = 0 + Position.ColIndex = 23 + Position.RowIndex = 0 + end + object v3Column6: TcxGridDBBandedColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 71 + Position.BandIndex = 0 + Position.ColIndex = 21 + Position.RowIndex = 0 + end + object v3Column7: TcxGridDBBandedColumn + Caption = #24050#29983#25104#35745#21010#21333 + DataBinding.FieldName = 'JHDFlag' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Width = 59 + Position.BandIndex = 0 + Position.ColIndex = 24 + Position.RowIndex = 0 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv3 + end + end + object Panel3: TPanel + Left = 488 + Top = 153 + Width = 201 + Height = 195 + TabOrder = 5 + Visible = False + object Label8: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Button1: TButton + Left = 24 + Top = 159 + Width = 65 + Height = 25 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnClick = Button1Click + end + object Button2: TButton + Left = 120 + Top = 159 + Width = 49 + Height = 25 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button2Click + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 199 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #35746#21333#31867#22411 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 173 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object RadioGroup1: TRadioGroup + Left = 48 + Top = 24 + Width = 97 + Height = 127 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ItemIndex = 0 + Items.Strings = ( + #21367#26448 + #21046#21697) + ParentFont = False + TabOrder = 3 + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 367 + Width = 1269 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + Control = cxGrid3 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 336 + Top = 160 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + Parameters = <> + Left = 832 + Top = 144 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 808 + Top = 144 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 864 + Top = 144 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 392 + Top = 160 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 424 + Top = 176 + 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 = 840 + Top = 256 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 848 + Top = 208 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 384 + Top = 240 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 792 + Top = 288 + end + object RM2: 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 288 + Top = 208 + ReportData = {} + end + object cxStyleRepository1: TcxStyleRepository + object cxStyle1: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #40657#20307 + Font.Style = [fsBold] + end + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 344 + Top = 408 + end + object DataSource2: TDataSource + DataSet = CDS_ZP + Left = 504 + Top = 440 + end + object CDS_ZP: TClientDataSet + Aggregates = <> + Params = <> + Left = 560 + Top = 448 + end + object cxStyleRepository2: TcxStyleRepository + object cxStyle2: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #40657#20307 + Font.Style = [fsBold] + end + end + object cxStyleRepository3: TcxStyleRepository + object cxStyle3: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #40657#20307 + Font.Style = [fsBold] + end + end +end diff --git a/应收应付/U_ProductOrderListNew.pas b/应收应付/U_ProductOrderListNew.pas new file mode 100644 index 0000000..bc89eee --- /dev/null +++ b/应收应付/U_ProductOrderListNew.pas @@ -0,0 +1,1041 @@ +unit U_ProductOrderListNew; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + cxGridBandedTableView, cxGridDBBandedTableView; + +type + TfrmProductOrderListNew = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Label2: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNo: TEdit; + Label5: TLabel; + WFBCodeName: TEdit; + TBExport: TToolButton; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1OrderDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1FactoryNo2Name: TcxGridDBColumn; + v1FactoryNo3Name: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1PRTQty: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + Label4: TLabel; + CustomNoName: TEdit; + v1Column3: TcxGridDBColumn; + TBCK: TToolButton; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + TBChk: TToolButton; + TBCChk: TToolButton; + v1Column6: TcxGridDBColumn; + TBBQPrint: TToolButton; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + TBCopy: TToolButton; + cxGrid2DBTableView1: TcxGridDBTableView; + cxGrid2Level1: TcxGridLevel; + cxGrid2: TcxGrid; + TV2: TcxGridDBBandedTableView; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + V2Column1: TcxGridDBBandedColumn; + V2Column2: TcxGridDBBandedColumn; + V2Column3: TcxGridDBBandedColumn; + V2Column4: TcxGridDBBandedColumn; + V2Column5: TcxGridDBBandedColumn; + V2Column6: TcxGridDBBandedColumn; + V2Column7: TcxGridDBBandedColumn; + V2Column8: TcxGridDBBandedColumn; + V2Column9: TcxGridDBBandedColumn; + V2Column10: TcxGridDBBandedColumn; + V2Column11: TcxGridDBBandedColumn; + V2Column12: TcxGridDBBandedColumn; + V2Column13: TcxGridDBBandedColumn; + V2Column14: TcxGridDBBandedColumn; + V2Column15: TcxGridDBBandedColumn; + V2Column16: TcxGridDBBandedColumn; + V2Column17: TcxGridDBBandedColumn; + V2Column18: TcxGridDBBandedColumn; + V2Column19: TcxGridDBBandedColumn; + cxGrid3: TcxGrid; + cxGridDBTableView1: TcxGridDBTableView; + Tv3: TcxGridDBBandedTableView; + cxGridDBBandedColumn1: TcxGridDBBandedColumn; + cxGridDBBandedColumn2: TcxGridDBBandedColumn; + cxGridDBBandedColumn3: TcxGridDBBandedColumn; + cxGridDBBandedColumn5: TcxGridDBBandedColumn; + cxGridDBBandedColumn6: TcxGridDBBandedColumn; + cxGridDBBandedColumn7: TcxGridDBBandedColumn; + cxGridDBBandedColumn8: TcxGridDBBandedColumn; + cxGridDBBandedColumn9: TcxGridDBBandedColumn; + cxGridDBBandedColumn10: TcxGridDBBandedColumn; + cxGridDBBandedColumn11: TcxGridDBBandedColumn; + cxGridDBBandedColumn12: TcxGridDBBandedColumn; + cxGridDBBandedColumn13: TcxGridDBBandedColumn; + cxGridDBBandedColumn14: TcxGridDBBandedColumn; + cxGridDBBandedColumn15: TcxGridDBBandedColumn; + cxGridDBBandedColumn16: TcxGridDBBandedColumn; + cxGridDBBandedColumn17: TcxGridDBBandedColumn; + cxGridDBBandedColumn18: TcxGridDBBandedColumn; + cxGridDBBandedColumn19: TcxGridDBBandedColumn; + cxGridLevel1: TcxGridLevel; + Panel3: TPanel; + Label8: TLabel; + Button1: TButton; + Button2: TButton; + Panel10: TPanel; + Image2: TImage; + RadioGroup1: TRadioGroup; + cxGridPopupMenu2: TcxGridPopupMenu; + DataSource2: TDataSource; + CDS_ZP: TClientDataSet; + cxStyleRepository2: TcxStyleRepository; + cxStyle2: TcxStyle; + cxStyleRepository3: TcxStyleRepository; + cxStyle3: TcxStyle; + V2Column20: TcxGridDBBandedColumn; + V2Column21: TcxGridDBBandedColumn; + V2Column22: TcxGridDBBandedColumn; + V2Column23: TcxGridDBBandedColumn; + cxSplitter1: TcxSplitter; + v3Column1: TcxGridDBBandedColumn; + v3Column2: TcxGridDBBandedColumn; + v3Column3: TcxGridDBBandedColumn; + v3Column4: TcxGridDBBandedColumn; + ToolButton2: TToolButton; + V2Column24: TcxGridDBBandedColumn; + V2Column25: TcxGridDBBandedColumn; + v3Column5: TcxGridDBBandedColumn; + v3Column6: TcxGridDBBandedColumn; + V2Column26: TcxGridDBBandedColumn; + v3Column7: TcxGridDBBandedColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBViewClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBBQPrintClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure TBCKClick(Sender: TObject); + procedure TBChkClick(Sender: TObject); + procedure TBCChkClick(Sender: TObject); + procedure TBCopyClick(Sender: TObject); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, + Y: Integer); + procedure Image2Click(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure TV2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TV2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv3MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + private + PPInt:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData(Order_Main10:TClientDataSet):Boolean; + procedure InitGridFH(); + procedure CopyOrderData(Order_MainFF:TClientDataSet); + { Private declarations } + public + FFInt:Integer; + { Public declarations } + end; + +var + frmProductOrderListNew: TfrmProductOrderListNew; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun,U_OrderInPutZP,U_OrderInPutNew,U_OrderInPutZPNew + ,U_OrderInPutZPLNew,U_OrderAttachment; + +{$R *.dfm} + +procedure TfrmProductOrderListNew.FormDestroy(Sender: TObject); +begin + frmProductOrderListNew:=nil; +end; + +procedure TfrmProductOrderListNew.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderListNew.FormCreate(Sender: TObject); +begin + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + if DParameters1='' then + begin + TBChk.Visible:=True; + TBCChk.Visible:=True; + TBAdd.Visible:=False; + TBEdit.Visible:=False; + TBCopy.Visible:=False; + end else + begin + TBChk.Visible:=False; + TBCChk.Visible:=False; + TBAdd.Visible:=True; + TBEdit.Visible:=True; + TBCopy.Visible:=True; + end; +end; + +procedure TfrmProductOrderListNew.TBCloseClick(Sender: TObject); +begin + Close; + //WriteCxGrid('޷IJָʾб',Tv1,'ָʾ'); + WriteCxBandedGrid('޷IJָʾб',Tv2,'ָʾ'); + WriteCxBandedGrid('޷IJָʾбDD',Tv3,'ָʾ'); +end; + +procedure TfrmProductOrderListNew.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' exec P_WFBOrder_List :begdate,:endate,:MainId'); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime)); + Parameters.ParamByName('endate').Value:=Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1)); + Parameters.ParamByName('MainId').Value:=''; + Open; + end; + SDofilter(ADOQueryMain,'OrderType='''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + SDofilter(ADOQueryMain,'OrderType=''Ʒ'''); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderListNew.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderListNew.InitForm(); +begin + if SGetServerDate(ADOQueryTemp)>StrToDate('2013-06-19') then + begin + ToolBar1.Visible:=False; + Application.MessageBox('ҪϵӦ̣','ʾ',0); + Exit; + end; + ReadCxBandedGrid('޷IJָʾб',Tv2,'ָʾ'); + ReadCxBandedGrid('޷IJָʾбDD',Tv3,'ָʾ'); + if FFInt>0 then + begin + v1Column3.Hidden:=False; + v1Column3.Visible:=True; + end else + begin + v1Column3.Hidden:=True; + v1Column3.Visible:=False; + end; + if Trim(DParameters1)='1' then + begin + v1CustomerNoName.Visible:=False; + v1CustomerNoName.Hidden:=True; + end else + begin + v1CustomerNoName.Visible:=True; + v1CustomerNoName.Hidden:=False; + end; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); + {if Trim(DParameters1)='1' then + begin + TBChk.Visible:=False; + TBCChk.Visible:=False; + end;} +end; + +procedure TfrmProductOrderListNew.TBFindClick(Sender: TObject); +var + fsj:string; +begin + if ADOQueryMain.Active=False then Exit; + if Trim(SGetFilters(Panel1,1,2))<>'' then + begin + fsj:='OrderType='''' and '+Trim(SGetFilters(Panel1,1,2)); + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + fsj:='OrderType=''Ʒ'' and '+Trim(SGetFilters(Panel1,1,2)); + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + end else + begin + fsj:='OrderType='''''; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + fsj:='OrderType=''Ʒ'''; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + end; +end; + +procedure TfrmProductOrderListNew.TBEditClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + if Trim(Order_Main.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + Application.MessageBox('˶ͨ޸ģ','ʾ',0); + Exit; + end; + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + //OrderType:=''; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.Order_Main.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + if Trim(CDS_ZP.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + Application.MessageBox('˶ͨ޸ģ','ʾ',0); + Exit; + end; + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=1; + FMainId:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString); + OrderType:='Ʒ'; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.CDS_ZP.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; +end; + +procedure TfrmProductOrderListNew.TBDelClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + if Trim(Order_Main.fieldbyname('Chker').AsString)<>'' then + begin + Application.MessageBox('Ѿ˲ɾ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData(Order_Main) then + begin + //TBRafresh.Click; + //TBFind.Click; + Order_Main.Delete; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + if Trim(CDS_ZP.fieldbyname('Chker').AsString)<>'' then + begin + Application.MessageBox('Ѿ˲ɾ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData(CDS_ZP) then + begin + //TBRafresh.Click; + //TBFind.Click; + CDS_ZP.Delete; + end; + end; + + +end; + +function TfrmProductOrderListNew.DelData(Order_Main10:TClientDataSet):Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFBOrder_Main where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + sql.Add('delete WFBOrder_Sub where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + sql.Add('delete WFB_DB where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + sql.Add('delete WFBYCL_PB where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + sql.Add('delete WFBYCL_PBSub where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderListNew.TBViewClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + ShowMessage(DCode); + +end; + +procedure TfrmProductOrderListNew.TBExportClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + TcxGridToExcel('ָʾб()',cxGrid2); + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + TcxGridToExcel('ָʾб(Ʒ)',cxGrid3); + end; + + +end; + +procedure TfrmProductOrderListNew.TBPrintClick(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); + //SelPrintData(TV4,ADOQueryMain,'ͬѯ'); +end; + +procedure TfrmProductOrderListNew.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + InitGridFH(); + end else + InitGrid(); +end; + +procedure TfrmProductOrderListNew.TBAddClick(Sender: TObject); +begin + Panel3.Visible:=True; +end; + +procedure TfrmProductOrderListNew.OrderNoChange(Sender: TObject); +var + fsj:string; +begin + if ADOQueryMain.Active=False then Exit; + if Trim(SGetFilters(Panel1,1,2))<>'' then + begin + fsj:='OrderType='''' and '+Trim(SGetFilters(Panel1,1,2)); + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + fsj:='OrderType=''Ʒ'' and '+Trim(SGetFilters(Panel1,1,2)); + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + end else + begin + fsj:='OrderType='''''; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + fsj:='OrderType=''Ʒ'''; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + end; +end; + +procedure TfrmProductOrderListNew.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderListNew.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + // if FFInt=1 then + //ModalResult:=1; + TBCK.Click; +end; + +procedure TfrmProductOrderListNew.TBBQPrintClick(Sender: TObject); +var + fPrintFile:String; +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + RMDB_Main.DataSet:=Order_Main; + end; + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + RMDB_Main.DataSet:=CDS_ZP; + end; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ǩ.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + RM2.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ǩ.rmf'),'ʾ',0); + end; +end; + +procedure TfrmProductOrderListNew.ToolButton2Click(Sender: TObject); + var + fsj:string; +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + fsj:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + fsj:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString); + end else + begin + Application.MessageBox('δѡж!','ʾ',0); + Exit; + end; + try + frmOrderAttachment:=TfrmOrderAttachment.Create(Application); + with frmOrderAttachment do + begin + FAMainId:=Trim(fsj); + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderAttachment.Free; + end; +end; + +procedure TfrmProductOrderListNew.ToolButton3Click(Sender: TObject); +begin + ModalResult:=1; +end; + +procedure TfrmProductOrderListNew.ToolButton4Click(Sender: TObject); +begin + if Application.MessageBox('ȷҪִɲ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Order_Main Set Status='''' '); + sql.Add('where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + //InitGrid(); +end; + +procedure TfrmProductOrderListNew.ToolButton5Click(Sender: TObject); +begin + if Application.MessageBox('ȷҪִɳ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Order_Main Set Status='''' '); + sql.Add('where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmProductOrderListNew.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderListNew.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderListNew.TBCKClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=3; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + TBSave.Visible:=False; + ToolBar2.Visible:=False; + cxGrid4.Enabled:=False; + //ScrollBox1.Enabled:=False; + //ScrollBox2.Enabled:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=3; + FMainId:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString); + TBSave.Visible:=False; + ToolBar2.Visible:=False; + cxGrid4.Enabled:=False; + //ScrollBox1.Enabled:=False; + //ScrollBox2.Enabled:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; + +end; + +procedure TfrmProductOrderListNew.TBChkClick(Sender: TObject); +begin + + if PPInt=1 then + begin + if Trim(Order_Main.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + if Application.MessageBox('˶ͨǷٴˣ','ʾ',32+4)<>IDYES then Exit; + end; + if Order_Main.IsEmpty then Exit; + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=2; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + //OrderType:=''; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.Order_Main.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + if Trim(CDS_ZP.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + if Application.MessageBox('˶ͨǷٴˣ','ʾ',32+4)<>IDYES then Exit; + end; + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=2; + FMainId:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString); + OrderType:='Ʒ'; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.CDS_ZP.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; + +end; + +procedure TfrmProductOrderListNew.TBCChkClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + if Application.MessageBox('ȷҪ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Main Set ChkStatus='''' '); + sql.Add(' ,Chker='''' where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + with Order_Main do + begin + Edit; + FieldByName('Chker').Value:=''; + FieldByName('ChkStatus').Value:=''; + Post; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + if Application.MessageBox('ȷҪ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Main Set ChkStatus='''' '); + sql.Add(', Chker='''' where MainId='''+Trim(CDS_ZP.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + with CDS_ZP do + begin + Edit; + FieldByName('Chker').Value:=''; + FieldByName('ChkStatus').Value:=''; + Post; + end; + end ; + +end; +procedure TfrmProductOrderListNew.CopyOrderData(Order_MainFF:TClientDataSet); +var + FFMainId:string; +begin + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + //sql.Add('exec P_Copy_WFBOrder :MainId,:Filler'); + sql.Add('exec P_Copy_WFBOrder_NoQty :MainId,:Filler'); + Parameters.ParamByName('MainId').Value:=Trim(Order_MainFF.fieldbyname('MainId').AsString); + Parameters.ParamByName('Filler').Value:=Trim(DName); + ExecSQL; + end; + FFMainId:=Trim(Order_MainFF.fieldbyname('MainId').AsString)+'FZ'; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update WFBYCL_PB Set CRID=(select isnull(Max(A.CRID),(select Max(AA.CRID) from CK_YCL_Sub AA '); + SQL.Add(' where AA.YCLCode=WFBYCL_PB.YCLCode) ) '); + sql.Add(' from CK_YCL_Sub A '); + sql.Add(' inner join CK_YCL_KC B on B.CRID=A.CRID '); + sql.Add(' where A.YCLCode=WFBYCL_PB.YCLCode and B.KCQty>0 )'); + sql.Add(' where MainId='''+Trim(FFMainId)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBYCL_PB Set YLKC=(select KCQty from CK_YCL_KC A where A.CRID=WFBYCL_PB.CRID)'); + sql.Add(' where MainId='''+Trim(FFMainId)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBYCL_PB Set YCLYJKC=(select YJKC=AA.KCQty-isnull((select sum(isnull(YLQty,0)) from WFBYCL_PB WP where WP.CRID=AA.CRID '); + sql.Add(' and not exists(select * from CK_YCL_Sub CS '); + sql.Add(' inner join WFBOrder_Main WM on CS.OrderNo=WM.OrderNO'); + sql.Add(' where WM.MainId=WP.MainId and CS.CRID=WP.CRID ) ),0)'); + sql.Add(' FROM CK_YCL_KC AA where AA.CRID=WFBYCL_PB.CRID)'); + sql.Add(' where MainId='''+Trim(FFMainId)+''''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; +procedure TfrmProductOrderListNew.TBCopyClick(Sender: TObject); +var + FFMainId:string; +begin + + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + CopyOrderData(Self.Order_Main); + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=1; + CopyInt:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString)+'FZ'; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + CopyOrderData(Self.CDS_ZP); + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=1; + CopyInt:=1; + FMainId:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString)+'FZ'; + OrderType:='Ʒ'; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; + +end; + +procedure TfrmProductOrderListNew.Panel10MouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel3).perform(WM_SYSCOMMAND, $F012, 0); +end; + +procedure TfrmProductOrderListNew.Image2Click(Sender: TObject); +begin + Panel3.Visible:=False; +end; + +procedure TfrmProductOrderListNew.Button1Click(Sender: TObject); +begin + if RadioGroup1.ItemIndex=0 then + begin + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=0; + FMainId:=''; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.Order_Main.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + begin + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=0; + FMainId:=''; + OrderType:='Ʒ'; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.CDS_ZP.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; + Panel3.Visible:=False; +end; + +procedure TfrmProductOrderListNew.Button2Click(Sender: TObject); +begin + Panel3.Visible:=False; +end; + +procedure TfrmProductOrderListNew.TV2CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if Trim(DParameters1)='' then + begin + TBChk.Click; + end else + begin + TBEdit.Click; + end; +end; + +procedure TfrmProductOrderListNew.TV2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + PPInt:=1; + Tv2.Bands[0].Caption:='ġ'; + Tv3.Bands[0].Caption:='Ʒ'; + + Tv3.Bands[0].Styles.Header.TextColor:=clBlack; + Tv2.Bands[0].Styles.Header.TextColor:=clBlue; +end; + +procedure TfrmProductOrderListNew.Tv3MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + PPInt:=2; + Tv2.Bands[0].Caption:=''; + Tv3.Bands[0].Caption:='Ʒ'; + Tv2.Bands[0].Styles.Header.TextColor:=clBlack; + Tv3.Bands[0].Styles.Header.TextColor:=clBlue; +end; + +end. diff --git a/应收应付/U_ProductOrderListNewCK.dfm b/应收应付/U_ProductOrderListNewCK.dfm new file mode 100644 index 0000000..0c73794 --- /dev/null +++ b/应收应付/U_ProductOrderListNewCK.dfm @@ -0,0 +1,1300 @@ +object frmProductOrderListNewCK: TfrmProductOrderListNewCK + Left = -60 + Top = 45 + Width = 1277 + Height = 684 + Caption = #29983#20135#25351#31034#21333#26597#30475 + 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 = 1269 + AutoSize = True + 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_WFBProducttion.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBCK: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 57 + OnClick = TBCKClick + end + object TBClose: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1269 + Height = 81 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #19979#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 189 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 324 + Top = 15 + Width = 26 + Height = 12 + Caption = #20195#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 460 + Top = 15 + Width = 26 + Height = 12 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 189 + Top = 39 + Width = 40 + Height = 12 + Caption = #39068' '#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 324 + Top = 39 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 460 + Top = 39 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 596 + Top = 15 + Width = 26 + Height = 12 + Caption = #33457#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 75 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 230 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoChange + end + object WFBCodeName: TEdit + Tag = 2 + Left = 353 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = OrderNoChange + end + object CustomNoName: TEdit + Tag = 2 + Left = 489 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + end + object SWFBColor: TEdit + Tag = 2 + Left = 230 + Top = 35 + Width = 77 + Height = 20 + TabOrder = 5 + OnChange = OrderNoChange + end + object SWFBFK: TEdit + Tag = 2 + Left = 353 + Top = 35 + Width = 83 + Height = 20 + TabOrder = 6 + OnChange = OrderNoChange + end + object SWFBKZ: TEdit + Tag = 2 + Left = 489 + Top = 35 + Width = 83 + Height = 20 + TabOrder = 7 + OnChange = OrderNoChange + end + object SWFBHW: TEdit + Tag = 2 + Left = 625 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 8 + OnChange = OrderNoChange + end + end + object cxGrid1: TcxGrid + Left = 1024 + Top = 104 + Width = 169 + Height = 121 + TabOrder = 2 + Visible = False + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBProducttion.SHuangSe + Styles.IncSearch = DataLink_WFBProducttion.SHuangSe + Styles.Selection = DataLink_WFBProducttion.SHuangSe + object v1Column3: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 39 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#32534#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 72 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'Customnoname' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 66 + end + object v1Column2: TcxGridDBColumn + Caption = #20195#21495 + DataBinding.FieldName = 'WFBCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'WFBFK' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 62 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'WFBKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 76 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'OrdQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 58 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrdUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 63 + end + object v1OrderDate: TcxGridDBColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrderDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 70 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = 'ETA' + DataBinding.FieldName = 'ETADate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 63 + end + object v1FactoryNo2Name: TcxGridDBColumn + Caption = #35013#26588#26085#26399 + DataBinding.FieldName = 'ZGDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 60 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = 'ETD' + DataBinding.FieldName = 'ETDDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 60 + end + object v1FactoryNo3Name: TcxGridDBColumn + Caption = #24320#22987#20837#24211#26085#26399 + DataBinding.FieldName = 'BegRKDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 94 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #24320#22987#29983#20135#26085#26399 + DataBinding.FieldName = 'BegSCDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 90 + end + object v1Note: TcxGridDBColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 67 + end + object v1Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'OrdPrice' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 57 + end + object v1PRTQty: TcxGridDBColumn + Caption = #35745#20215#21333#20301 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 58 + end + object v1Column4: TcxGridDBColumn + Caption = #29983#20135#32447 + DataBinding.FieldName = 'SCXName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 62 + end + object v1Column5: TcxGridDBColumn + Caption = #32593#32467#26500 + DataBinding.FieldName = 'WJGName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 62 + end + object v1Column6: TcxGridDBColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 59 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 113 + Width = 1269 + Height = 254 + Align = alClient + TabOrder = 3 + object cxGrid2DBTableView1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + end + object TV2: TcxGridDBBandedTableView + OnMouseDown = TV2MouseDown + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TV2CellDblClick + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBProducttion.SHuangSe + Styles.IncSearch = DataLink_WFBProducttion.SHuangSe + Styles.Selection = DataLink_WFBProducttion.SHuangSe + Styles.Header = DataLink_WFBProducttion.Default + Bands = < + item + Caption = #21367#26448 + Styles.Header = cxStyle2 + Width = 1374 + end> + object V2Column1: TcxGridDBBandedColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 59 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object V2Column2: TcxGridDBBandedColumn + Caption = #23458#25143 + DataBinding.FieldName = 'Customnoname' + HeaderAlignmentHorz = taCenter + Width = 39 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object V2Column3: TcxGridDBBandedColumn + Caption = #20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Width = 55 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object V2Column4: TcxGridDBBandedColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'SWFBFK' + HeaderAlignmentHorz = taCenter + Width = 46 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object V2Column5: TcxGridDBBandedColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'SWFBKZ' + HeaderAlignmentHorz = taCenter + Width = 56 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object V2Column6: TcxGridDBBandedColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'OrdQty' + HeaderAlignmentHorz = taCenter + Width = 47 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object V2Column7: TcxGridDBBandedColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrdUnit' + HeaderAlignmentHorz = taCenter + Width = 62 + Position.BandIndex = 0 + Position.ColIndex = 9 + Position.RowIndex = 0 + end + object V2Column8: TcxGridDBBandedColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrderDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 62 + Position.BandIndex = 0 + Position.ColIndex = 10 + Position.RowIndex = 0 + end + object V2Column9: TcxGridDBBandedColumn + Caption = 'ETA' + DataBinding.FieldName = 'ETADate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 42 + Position.BandIndex = 0 + Position.ColIndex = 11 + Position.RowIndex = 0 + end + object V2Column10: TcxGridDBBandedColumn + Caption = #35013#26588#26085#26399 + DataBinding.FieldName = 'ZGDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 44 + Position.BandIndex = 0 + Position.ColIndex = 12 + Position.RowIndex = 0 + end + object V2Column11: TcxGridDBBandedColumn + Caption = 'ETD' + DataBinding.FieldName = 'ETDDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 44 + Position.BandIndex = 0 + Position.ColIndex = 13 + Position.RowIndex = 0 + end + object V2Column12: TcxGridDBBandedColumn + Caption = #24320#22987#20837#24211#26085#26399 + DataBinding.FieldName = 'BegRKDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 14 + Position.RowIndex = 0 + end + object V2Column13: TcxGridDBBandedColumn + Caption = #24320#22987#29983#20135#26085#26399 + DataBinding.FieldName = 'BegSCDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 15 + Position.RowIndex = 0 + end + object V2Column14: TcxGridDBBandedColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 16 + Position.RowIndex = 0 + end + object V2Column16: TcxGridDBBandedColumn + Caption = #35745#20215#21333#20301 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Width = 43 + Position.BandIndex = 0 + Position.ColIndex = 17 + Position.RowIndex = 0 + end + object V2Column17: TcxGridDBBandedColumn + Caption = #29983#20135#32447 + DataBinding.FieldName = 'SCXName' + HeaderAlignmentHorz = taCenter + Width = 38 + Position.BandIndex = 0 + Position.ColIndex = 18 + Position.RowIndex = 0 + end + object V2Column18: TcxGridDBBandedColumn + Caption = #32593#32467#26500 + DataBinding.FieldName = 'WJGName' + HeaderAlignmentHorz = taCenter + Width = 43 + Position.BandIndex = 0 + Position.ColIndex = 19 + Position.RowIndex = 0 + end + object V2Column19: TcxGridDBBandedColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + HeaderAlignmentHorz = taCenter + Width = 45 + Position.BandIndex = 0 + Position.ColIndex = 21 + Position.RowIndex = 0 + end + object V2Column20: TcxGridDBBandedColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Width = 48 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object V2Column22: TcxGridDBBandedColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Width = 50 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object V2Column23: TcxGridDBBandedColumn + Caption = #32534#21495 + DataBinding.FieldName = 'OrderCode' + HeaderAlignmentHorz = taCenter + Width = 82 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object V2Column24: TcxGridDBBandedColumn + Caption = #23457#26680#29366#24577 + DataBinding.FieldName = 'ChkStatus' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 65 + Position.BandIndex = 0 + Position.ColIndex = 22 + Position.RowIndex = 0 + end + object V2Column25: TcxGridDBBandedColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + Position.BandIndex = 0 + Position.ColIndex = 20 + Position.RowIndex = 0 + end + object V2Column26: TcxGridDBBandedColumn + Caption = #24050#29983#25104#35745#21010#21333 + DataBinding.FieldName = 'JHDFlag' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Options.Focusing = False + Width = 85 + Position.BandIndex = 0 + Position.ColIndex = 23 + Position.RowIndex = 0 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = TV2 + end + end + object cxGrid3: TcxGrid + Left = 0 + Top = 375 + Width = 1269 + Height = 272 + Align = alBottom + TabOrder = 4 + object cxGridDBTableView1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + end + object Tv3: TcxGridDBBandedTableView + OnMouseDown = Tv3MouseDown + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TV2CellDblClick + DataController.DataSource = DataSource2 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBProducttion.SHuangSe + Styles.IncSearch = DataLink_WFBProducttion.SHuangSe + Styles.Selection = DataLink_WFBProducttion.SHuangSe + Styles.Header = DataLink_WFBProducttion.Default + Bands = < + item + Caption = #21046#21697 + Styles.Header = cxStyle1 + Width = 1374 + end> + object cxGridDBBandedColumn1: TcxGridDBBandedColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 63 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn2: TcxGridDBBandedColumn + Caption = #23458#25143 + DataBinding.FieldName = 'Customnoname' + HeaderAlignmentHorz = taCenter + Width = 46 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn3: TcxGridDBBandedColumn + Caption = #20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn5: TcxGridDBBandedColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'SWFBKZ' + HeaderAlignmentHorz = taCenter + Width = 51 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn6: TcxGridDBBandedColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'OrdQty' + HeaderAlignmentHorz = taCenter + Width = 50 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn7: TcxGridDBBandedColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrdUnit' + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn8: TcxGridDBBandedColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrderDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 51 + Position.BandIndex = 0 + Position.ColIndex = 9 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn9: TcxGridDBBandedColumn + Caption = 'ETA' + DataBinding.FieldName = 'ETADate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 10 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn10: TcxGridDBBandedColumn + Caption = #35013#26588#26085#26399 + DataBinding.FieldName = 'ZGDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 52 + Position.BandIndex = 0 + Position.ColIndex = 11 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn11: TcxGridDBBandedColumn + Caption = 'ETD' + DataBinding.FieldName = 'ETDDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 51 + Position.BandIndex = 0 + Position.ColIndex = 12 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn12: TcxGridDBBandedColumn + Caption = #24320#22987#20837#24211#26085#26399 + DataBinding.FieldName = 'BegRKDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 66 + Position.BandIndex = 0 + Position.ColIndex = 13 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn13: TcxGridDBBandedColumn + Caption = #24320#22987#29983#20135#26085#26399 + DataBinding.FieldName = 'BegSCDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 65 + Position.BandIndex = 0 + Position.ColIndex = 14 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn14: TcxGridDBBandedColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 67 + Position.BandIndex = 0 + Position.ColIndex = 15 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn17: TcxGridDBBandedColumn + Caption = #29983#20135#32447 + DataBinding.FieldName = 'SCXName' + HeaderAlignmentHorz = taCenter + Width = 47 + Position.BandIndex = 0 + Position.ColIndex = 16 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn18: TcxGridDBBandedColumn + Caption = #32593#32467#26500 + DataBinding.FieldName = 'WJGName' + HeaderAlignmentHorz = taCenter + Width = 45 + Position.BandIndex = 0 + Position.ColIndex = 17 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn19: TcxGridDBBandedColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 45 + Position.BandIndex = 0 + Position.ColIndex = 19 + Position.RowIndex = 0 + end + object v3Column1: TcxGridDBBandedColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Width = 51 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object v3Column2: TcxGridDBBandedColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object v3Column4: TcxGridDBBandedColumn + Caption = #32534#21495 + DataBinding.FieldName = 'OrderCode' + HeaderAlignmentHorz = taCenter + Width = 74 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object v3Column5: TcxGridDBBandedColumn + Caption = #23457#26680#29366#24577 + DataBinding.FieldName = 'ChkStatus' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 62 + Position.BandIndex = 0 + Position.ColIndex = 20 + Position.RowIndex = 0 + end + object v3Column6: TcxGridDBBandedColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 71 + Position.BandIndex = 0 + Position.ColIndex = 18 + Position.RowIndex = 0 + end + object v3Column7: TcxGridDBBandedColumn + Caption = #24050#29983#25104#35745#21010#21333 + DataBinding.FieldName = 'JHDFlag' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Width = 59 + Position.BandIndex = 0 + Position.ColIndex = 21 + Position.RowIndex = 0 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv3 + end + end + object Panel3: TPanel + Left = 544 + Top = 153 + Width = 201 + Height = 195 + TabOrder = 5 + Visible = False + object Label8: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Button1: TButton + Left = 24 + Top = 159 + Width = 65 + Height = 25 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnClick = Button1Click + end + object Button2: TButton + Left = 120 + Top = 159 + Width = 49 + Height = 25 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button2Click + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 199 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #35746#21333#31867#22411 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 173 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object RadioGroup1: TRadioGroup + Left = 48 + Top = 24 + Width = 97 + Height = 127 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ItemIndex = 0 + Items.Strings = ( + #21367#26448 + #21046#21697) + ParentFont = False + TabOrder = 3 + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 367 + Width = 1269 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + Control = cxGrid3 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 336 + Top = 160 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 832 + Top = 144 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 808 + Top = 144 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 864 + Top = 144 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 392 + Top = 160 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 424 + Top = 176 + 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 = 840 + Top = 256 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 848 + Top = 208 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 384 + Top = 240 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 792 + Top = 288 + end + object RM2: 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 288 + Top = 208 + ReportData = {} + end + object cxStyleRepository1: TcxStyleRepository + object cxStyle1: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #40657#20307 + Font.Style = [fsBold] + end + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 344 + Top = 408 + end + object DataSource2: TDataSource + DataSet = CDS_ZP + Left = 504 + Top = 440 + end + object CDS_ZP: TClientDataSet + Aggregates = <> + Params = <> + Left = 560 + Top = 448 + end + object cxStyleRepository2: TcxStyleRepository + object cxStyle2: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #40657#20307 + Font.Style = [fsBold] + end + end + object cxStyleRepository3: TcxStyleRepository + Left = 792 + Top = 104 + object cxStyle3: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #40657#20307 + Font.Style = [fsBold] + end + end +end diff --git a/应收应付/U_ProductOrderListNewCK.pas b/应收应付/U_ProductOrderListNewCK.pas new file mode 100644 index 0000000..a814bdf --- /dev/null +++ b/应收应付/U_ProductOrderListNewCK.pas @@ -0,0 +1,1012 @@ +unit U_ProductOrderListNewCK; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + cxGridBandedTableView, cxGridDBBandedTableView; + +type + TfrmProductOrderListNewCK = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNo: TEdit; + Label5: TLabel; + WFBCodeName: TEdit; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1OrderDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1FactoryNo2Name: TcxGridDBColumn; + v1FactoryNo3Name: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1PRTQty: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + Label4: TLabel; + CustomNoName: TEdit; + v1Column3: TcxGridDBColumn; + TBCK: TToolButton; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + cxGrid2DBTableView1: TcxGridDBTableView; + cxGrid2Level1: TcxGridLevel; + cxGrid2: TcxGrid; + TV2: TcxGridDBBandedTableView; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + V2Column1: TcxGridDBBandedColumn; + V2Column2: TcxGridDBBandedColumn; + V2Column3: TcxGridDBBandedColumn; + V2Column4: TcxGridDBBandedColumn; + V2Column5: TcxGridDBBandedColumn; + V2Column6: TcxGridDBBandedColumn; + V2Column7: TcxGridDBBandedColumn; + V2Column8: TcxGridDBBandedColumn; + V2Column9: TcxGridDBBandedColumn; + V2Column10: TcxGridDBBandedColumn; + V2Column11: TcxGridDBBandedColumn; + V2Column12: TcxGridDBBandedColumn; + V2Column13: TcxGridDBBandedColumn; + V2Column14: TcxGridDBBandedColumn; + V2Column16: TcxGridDBBandedColumn; + V2Column17: TcxGridDBBandedColumn; + V2Column18: TcxGridDBBandedColumn; + V2Column19: TcxGridDBBandedColumn; + cxGrid3: TcxGrid; + cxGridDBTableView1: TcxGridDBTableView; + Tv3: TcxGridDBBandedTableView; + cxGridDBBandedColumn1: TcxGridDBBandedColumn; + cxGridDBBandedColumn2: TcxGridDBBandedColumn; + cxGridDBBandedColumn3: TcxGridDBBandedColumn; + cxGridDBBandedColumn5: TcxGridDBBandedColumn; + cxGridDBBandedColumn6: TcxGridDBBandedColumn; + cxGridDBBandedColumn7: TcxGridDBBandedColumn; + cxGridDBBandedColumn8: TcxGridDBBandedColumn; + cxGridDBBandedColumn9: TcxGridDBBandedColumn; + cxGridDBBandedColumn10: TcxGridDBBandedColumn; + cxGridDBBandedColumn11: TcxGridDBBandedColumn; + cxGridDBBandedColumn12: TcxGridDBBandedColumn; + cxGridDBBandedColumn13: TcxGridDBBandedColumn; + cxGridDBBandedColumn14: TcxGridDBBandedColumn; + cxGridDBBandedColumn17: TcxGridDBBandedColumn; + cxGridDBBandedColumn18: TcxGridDBBandedColumn; + cxGridDBBandedColumn19: TcxGridDBBandedColumn; + cxGridLevel1: TcxGridLevel; + Panel3: TPanel; + Label8: TLabel; + Button1: TButton; + Button2: TButton; + Panel10: TPanel; + Image2: TImage; + RadioGroup1: TRadioGroup; + cxGridPopupMenu2: TcxGridPopupMenu; + DataSource2: TDataSource; + CDS_ZP: TClientDataSet; + cxStyleRepository2: TcxStyleRepository; + cxStyle2: TcxStyle; + cxStyleRepository3: TcxStyleRepository; + cxStyle3: TcxStyle; + V2Column20: TcxGridDBBandedColumn; + V2Column22: TcxGridDBBandedColumn; + V2Column23: TcxGridDBBandedColumn; + cxSplitter1: TcxSplitter; + v3Column1: TcxGridDBBandedColumn; + v3Column2: TcxGridDBBandedColumn; + v3Column4: TcxGridDBBandedColumn; + V2Column24: TcxGridDBBandedColumn; + V2Column25: TcxGridDBBandedColumn; + v3Column5: TcxGridDBBandedColumn; + v3Column6: TcxGridDBBandedColumn; + V2Column26: TcxGridDBBandedColumn; + v3Column7: TcxGridDBBandedColumn; + Label2: TLabel; + Label6: TLabel; + Label7: TLabel; + SWFBColor: TEdit; + SWFBFK: TEdit; + SWFBKZ: TEdit; + Label9: TLabel; + SWFBHW: TEdit; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBViewClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBBQPrintClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure TBCKClick(Sender: TObject); + procedure TBChkClick(Sender: TObject); + procedure TBCChkClick(Sender: TObject); + procedure TBCopyClick(Sender: TObject); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, + Y: Integer); + procedure Image2Click(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure TV2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TV2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv3MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + private + PPInt:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData(Order_Main10:TClientDataSet):Boolean; + procedure InitGridFH(); + procedure CopyOrderData(Order_MainFF:TClientDataSet); + { Private declarations } + public + FFInt:Integer; + { Public declarations } + end; + +var + frmProductOrderListNewCK: TfrmProductOrderListNewCK; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun,U_OrderInPutZP,U_OrderInPutNew,U_OrderInPutZPNew + ,U_OrderInPutZPLNew,U_OrderAttachment; + +{$R *.dfm} + +procedure TfrmProductOrderListNewCK.FormDestroy(Sender: TObject); +begin + frmProductOrderListNewCK:=nil; +end; + +procedure TfrmProductOrderListNewCK.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderListNewCK.FormCreate(Sender: TObject); +begin + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); +end; + +procedure TfrmProductOrderListNewCK.TBCloseClick(Sender: TObject); +begin + Close; + //WriteCxGrid('޷IJָʾб',Tv1,'ָʾ'); + WriteCxBandedGrid('޷IJָʾбck',Tv2,'ָʾ'); + WriteCxBandedGrid('޷IJָʾбDDck',Tv3,'ָʾ'); +end; + +procedure TfrmProductOrderListNewCK.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' exec P_WFBOrder_List :begdate,:endate,:MainId'); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime)); + Parameters.ParamByName('endate').Value:=Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1)); + Parameters.ParamByName('MainId').Value:=''; + Open; + end; + SDofilter(ADOQueryMain,'OrderType='''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + SDofilter(ADOQueryMain,'OrderType=''Ʒ'''); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderListNewCK.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderListNewCK.InitForm(); +begin + if SGetServerDate(ADOQueryTemp)>StrToDate('2013-06-19') then + begin + ToolBar1.Visible:=False; + Application.MessageBox('ҪϵӦ̣','ʾ',0); + Exit; + end; + ReadCxBandedGrid('޷IJָʾбck',Tv2,'ָʾ'); + ReadCxBandedGrid('޷IJָʾбDDck',Tv3,'ָʾ'); + if FFInt>0 then + begin + v1Column3.Hidden:=False; + v1Column3.Visible:=True; + end else + begin + v1Column3.Hidden:=True; + v1Column3.Visible:=False; + end; + if Trim(DParameters1)='1' then + begin + v1CustomerNoName.Visible:=False; + v1CustomerNoName.Hidden:=True; + end else + begin + v1CustomerNoName.Visible:=True; + v1CustomerNoName.Hidden:=False; + end; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); + {if Trim(DParameters1)='1' then + begin + TBChk.Visible:=False; + TBCChk.Visible:=False; + end;} +end; + +procedure TfrmProductOrderListNewCK.TBFindClick(Sender: TObject); +var + fsj:string; +begin + if ADOQueryMain.Active=False then Exit; + if Trim(SGetFilters(Panel1,1,2))<>'' then + begin + fsj:='OrderType='''' and '+Trim(SGetFilters(Panel1,1,2)); + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + fsj:='OrderType=''Ʒ'' and '+Trim(SGetFilters(Panel1,1,2)); + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + end else + begin + fsj:='OrderType='''''; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + fsj:='OrderType=''Ʒ'''; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + end; +end; + +procedure TfrmProductOrderListNewCK.TBEditClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + if Trim(Order_Main.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + Application.MessageBox('˶ͨ޸ģ','ʾ',0); + Exit; + end; + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + //OrderType:=''; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.Order_Main.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + if Trim(CDS_ZP.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + Application.MessageBox('˶ͨ޸ģ','ʾ',0); + Exit; + end; + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=1; + FMainId:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString); + OrderType:='Ʒ'; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.CDS_ZP.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; +end; + +procedure TfrmProductOrderListNewCK.TBDelClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + if Trim(Order_Main.fieldbyname('Chker').AsString)<>'' then + begin + Application.MessageBox('Ѿ˲ɾ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData(Order_Main) then + begin + //TBRafresh.Click; + //TBFind.Click; + Order_Main.Delete; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + if Trim(CDS_ZP.fieldbyname('Chker').AsString)<>'' then + begin + Application.MessageBox('Ѿ˲ɾ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData(CDS_ZP) then + begin + //TBRafresh.Click; + //TBFind.Click; + CDS_ZP.Delete; + end; + end; + + +end; + +function TfrmProductOrderListNewCK.DelData(Order_Main10:TClientDataSet):Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFBOrder_Main where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + sql.Add('delete WFBOrder_Sub where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + sql.Add('delete WFB_DB where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + sql.Add('delete WFBYCL_PB where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + sql.Add('delete WFBYCL_PBSub where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderListNewCK.TBViewClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + ShowMessage(DCode); + +end; + +procedure TfrmProductOrderListNewCK.TBExportClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + TcxGridToExcel('ָʾб()',cxGrid2); + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + TcxGridToExcel('ָʾб(Ʒ)',cxGrid3); + end; + + +end; + +procedure TfrmProductOrderListNewCK.TBPrintClick(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); + //SelPrintData(TV4,ADOQueryMain,'ͬѯ'); +end; + +procedure TfrmProductOrderListNewCK.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + InitGridFH(); + end else + InitGrid(); +end; + +procedure TfrmProductOrderListNewCK.TBAddClick(Sender: TObject); +begin + Panel3.Visible:=True; +end; + +procedure TfrmProductOrderListNewCK.OrderNoChange(Sender: TObject); +var + fsj:string; +begin + if ADOQueryMain.Active=False then Exit; + if Trim(SGetFilters(Panel1,1,2))<>'' then + begin + fsj:='OrderType='''' and '+Trim(SGetFilters(Panel1,1,2)); + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + fsj:='OrderType=''Ʒ'' and '+Trim(SGetFilters(Panel1,1,2)); + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + end else + begin + fsj:='OrderType='''''; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + fsj:='OrderType=''Ʒ'''; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + end; +end; + +procedure TfrmProductOrderListNewCK.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderListNewCK.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + // if FFInt=1 then + //ModalResult:=1; + TBCK.Click; +end; + +procedure TfrmProductOrderListNewCK.TBBQPrintClick(Sender: TObject); +var + fPrintFile:String; +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + RMDB_Main.DataSet:=Order_Main; + end; + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + RMDB_Main.DataSet:=CDS_ZP; + end; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ǩ.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + RM2.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ǩ.rmf'),'ʾ',0); + end; +end; + +procedure TfrmProductOrderListNewCK.ToolButton2Click(Sender: TObject); + var + fsj:string; +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + fsj:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + fsj:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString); + end else + begin + Application.MessageBox('δѡж!','ʾ',0); + Exit; + end; + try + frmOrderAttachment:=TfrmOrderAttachment.Create(Application); + with frmOrderAttachment do + begin + FAMainId:=Trim(fsj); + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderAttachment.Free; + end; +end; + +procedure TfrmProductOrderListNewCK.ToolButton3Click(Sender: TObject); +begin + ModalResult:=1; +end; + +procedure TfrmProductOrderListNewCK.ToolButton4Click(Sender: TObject); +begin + if Application.MessageBox('ȷҪִɲ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Order_Main Set Status='''' '); + sql.Add('where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + //InitGrid(); +end; + +procedure TfrmProductOrderListNewCK.ToolButton5Click(Sender: TObject); +begin + if Application.MessageBox('ȷҪִɳ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Order_Main Set Status='''' '); + sql.Add('where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmProductOrderListNewCK.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderListNewCK.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderListNewCK.TBCKClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=3; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + TBSave.Visible:=False; + ToolBar2.Visible:=False; + cxGrid4.Enabled:=False; + //ScrollBox1.Enabled:=False; + //ScrollBox2.Enabled:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=3; + FMainId:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString); + TBSave.Visible:=False; + ToolBar2.Visible:=False; + cxGrid4.Enabled:=False; + //ScrollBox1.Enabled:=False; + //ScrollBox2.Enabled:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; + +end; + +procedure TfrmProductOrderListNewCK.TBChkClick(Sender: TObject); +begin + + if PPInt=1 then + begin + if Trim(Order_Main.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + if Application.MessageBox('˶ͨǷٴˣ','ʾ',32+4)<>IDYES then Exit; + end; + if Order_Main.IsEmpty then Exit; + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=2; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + //OrderType:=''; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.Order_Main.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + if Trim(CDS_ZP.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + if Application.MessageBox('˶ͨǷٴˣ','ʾ',32+4)<>IDYES then Exit; + end; + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=2; + FMainId:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString); + OrderType:='Ʒ'; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.CDS_ZP.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; + +end; + +procedure TfrmProductOrderListNewCK.TBCChkClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + if Application.MessageBox('ȷҪ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Main Set ChkStatus='''' '); + sql.Add(' ,Chker='''' where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + with Order_Main do + begin + Edit; + FieldByName('Chker').Value:=''; + FieldByName('ChkStatus').Value:=''; + Post; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + if Application.MessageBox('ȷҪ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Main Set ChkStatus='''' '); + sql.Add(', Chker='''' where MainId='''+Trim(CDS_ZP.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + with CDS_ZP do + begin + Edit; + FieldByName('Chker').Value:=''; + FieldByName('ChkStatus').Value:=''; + Post; + end; + end ; + +end; +procedure TfrmProductOrderListNewCK.CopyOrderData(Order_MainFF:TClientDataSet); +var + FFMainId:string; +begin + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + //sql.Add('exec P_Copy_WFBOrder :MainId,:Filler'); + sql.Add('exec P_Copy_WFBOrder_NoQty :MainId,:Filler'); + Parameters.ParamByName('MainId').Value:=Trim(Order_MainFF.fieldbyname('MainId').AsString); + Parameters.ParamByName('Filler').Value:=Trim(DName); + ExecSQL; + end; + FFMainId:=Trim(Order_MainFF.fieldbyname('MainId').AsString)+'FZ'; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update WFBYCL_PB Set CRID=(select isnull(Max(A.CRID),(select Max(AA.CRID) from CK_YCL_Sub AA '); + SQL.Add(' where AA.YCLCode=WFBYCL_PB.YCLCode) ) '); + sql.Add(' from CK_YCL_Sub A '); + sql.Add(' inner join CK_YCL_KC B on B.CRID=A.CRID '); + sql.Add(' where A.YCLCode=WFBYCL_PB.YCLCode and B.KCQty>0 )'); + sql.Add(' where MainId='''+Trim(FFMainId)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBYCL_PB Set YLKC=(select KCQty from CK_YCL_KC A where A.CRID=WFBYCL_PB.CRID)'); + sql.Add(' where MainId='''+Trim(FFMainId)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBYCL_PB Set YCLYJKC=(select YJKC=AA.KCQty-isnull((select sum(isnull(YLQty,0)) from WFBYCL_PB WP where WP.CRID=AA.CRID '); + sql.Add(' and not exists(select * from CK_YCL_Sub CS '); + sql.Add(' inner join WFBOrder_Main WM on CS.OrderNo=WM.OrderNO'); + sql.Add(' where WM.MainId=WP.MainId and CS.CRID=WP.CRID ) ),0)'); + sql.Add(' FROM CK_YCL_KC AA where AA.CRID=WFBYCL_PB.CRID)'); + sql.Add(' where MainId='''+Trim(FFMainId)+''''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; +procedure TfrmProductOrderListNewCK.TBCopyClick(Sender: TObject); +var + FFMainId:string; +begin + + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + CopyOrderData(Self.Order_Main); + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=1; + CopyInt:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString)+'FZ'; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + CopyOrderData(Self.CDS_ZP); + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=1; + CopyInt:=1; + FMainId:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString)+'FZ'; + OrderType:='Ʒ'; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; + +end; + +procedure TfrmProductOrderListNewCK.Panel10MouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel3).perform(WM_SYSCOMMAND, $F012, 0); +end; + +procedure TfrmProductOrderListNewCK.Image2Click(Sender: TObject); +begin + Panel3.Visible:=False; +end; + +procedure TfrmProductOrderListNewCK.Button1Click(Sender: TObject); +begin + if RadioGroup1.ItemIndex=0 then + begin + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=0; + FMainId:=''; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.Order_Main.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + begin + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=0; + FMainId:=''; + OrderType:='Ʒ'; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.CDS_ZP.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; + Panel3.Visible:=False; +end; + +procedure TfrmProductOrderListNewCK.Button2Click(Sender: TObject); +begin + Panel3.Visible:=False; +end; + +procedure TfrmProductOrderListNewCK.TV2CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + TBCK.Click; +end; + +procedure TfrmProductOrderListNewCK.TV2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + PPInt:=1; + Tv2.Bands[0].Caption:='ġ'; + Tv3.Bands[0].Caption:='Ʒ'; + + Tv3.Bands[0].Styles.Header.TextColor:=clBlack; + Tv2.Bands[0].Styles.Header.TextColor:=clBlue; +end; + +procedure TfrmProductOrderListNewCK.Tv3MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + PPInt:=2; + Tv2.Bands[0].Caption:=''; + Tv3.Bands[0].Caption:='Ʒ'; + Tv2.Bands[0].Styles.Header.TextColor:=clBlack; + Tv3.Bands[0].Styles.Header.TextColor:=clBlue; +end; + +end. diff --git a/应收应付/U_ProductOrderListNewCKMX.dfm b/应收应付/U_ProductOrderListNewCKMX.dfm new file mode 100644 index 0000000..3666195 --- /dev/null +++ b/应收应付/U_ProductOrderListNewCKMX.dfm @@ -0,0 +1,938 @@ +object frmProductOrderListNewCKMX: TfrmProductOrderListNewCKMX + Left = 25 + Top = 49 + Width = 1277 + Height = 684 + Caption = #29983#20135#25351#31034#21333#26126#32454 + 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 = 1269 + AutoSize = True + 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_WFBProducttion.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + Caption = #23548#20986 + ImageIndex = 102 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1269 + Height = 65 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #19979#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 189 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 324 + Top = 15 + Width = 26 + Height = 12 + Caption = #20195#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 460 + Top = 15 + Width = 26 + Height = 12 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 189 + Top = 39 + Width = 40 + Height = 12 + Caption = #39068' '#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 324 + Top = 39 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 460 + Top = 39 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 596 + Top = 15 + Width = 26 + Height = 12 + Caption = #33457#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 75 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 230 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoChange + end + object WFBCodeName: TEdit + Tag = 2 + Left = 353 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = OrderNoChange + end + object CustomNoName: TEdit + Tag = 2 + Left = 489 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + end + object SWFBColor: TEdit + Tag = 2 + Left = 230 + Top = 35 + Width = 77 + Height = 20 + TabOrder = 5 + OnChange = OrderNoChange + end + object SWFBFK10: TEdit + Tag = 2 + Left = 353 + Top = 35 + Width = 83 + Height = 20 + TabOrder = 6 + OnChange = OrderNoChange + end + object SWFBKZ10: TEdit + Tag = 2 + Left = 489 + Top = 35 + Width = 83 + Height = 20 + TabOrder = 7 + OnChange = OrderNoChange + end + object SWFBHW: TEdit + Tag = 2 + Left = 625 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 8 + OnChange = OrderNoChange + end + end + object cxGrid1: TcxGrid + Left = 1024 + Top = 104 + Width = 169 + Height = 121 + TabOrder = 2 + Visible = False + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBProducttion.SHuangSe + Styles.IncSearch = DataLink_WFBProducttion.SHuangSe + Styles.Selection = DataLink_WFBProducttion.SHuangSe + object v1Column3: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 39 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#32534#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 72 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'Customnoname' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 66 + end + object v1Column2: TcxGridDBColumn + Caption = #20195#21495 + DataBinding.FieldName = 'WFBCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'WFBFK' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 62 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'WFBKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 76 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'OrdQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 58 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrdUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 63 + end + object v1OrderDate: TcxGridDBColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrderDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 70 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = 'ETA' + DataBinding.FieldName = 'ETADate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 63 + end + object v1FactoryNo2Name: TcxGridDBColumn + Caption = #35013#26588#26085#26399 + DataBinding.FieldName = 'ZGDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 60 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = 'ETD' + DataBinding.FieldName = 'ETDDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 60 + end + object v1FactoryNo3Name: TcxGridDBColumn + Caption = #24320#22987#20837#24211#26085#26399 + DataBinding.FieldName = 'BegRKDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 94 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #24320#22987#29983#20135#26085#26399 + DataBinding.FieldName = 'BegSCDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 90 + end + object v1Note: TcxGridDBColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 67 + end + object v1Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'OrdPrice' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 57 + end + object v1PRTQty: TcxGridDBColumn + Caption = #35745#20215#21333#20301 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 58 + end + object v1Column4: TcxGridDBColumn + Caption = #29983#20135#32447 + DataBinding.FieldName = 'SCXName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 62 + end + object v1Column5: TcxGridDBColumn + Caption = #32593#32467#26500 + DataBinding.FieldName = 'WJGName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 62 + end + object v1Column6: TcxGridDBColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 59 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 97 + Width = 1269 + Height = 550 + Align = alClient + TabOrder = 3 + object cxGrid2DBTableView1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + end + object TV2: TcxGridDBBandedTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBProducttion.SHuangSe + Styles.IncSearch = DataLink_WFBProducttion.SHuangSe + Styles.Selection = DataLink_WFBProducttion.SHuangSe + Styles.Header = DataLink_WFBProducttion.Default + Bands = < + item + Caption = #35746#21333#26126#32454 + Styles.Header = cxStyle2 + Width = 1374 + end> + object V2Column1: TcxGridDBBandedColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 78 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object V2Column2: TcxGridDBBandedColumn + Caption = #23458#25143 + DataBinding.FieldName = 'Customnoname' + HeaderAlignmentHorz = taCenter + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object V2Column3: TcxGridDBBandedColumn + Caption = #20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Width = 73 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object V2Column4: TcxGridDBBandedColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'SWFBFK10' + HeaderAlignmentHorz = taCenter + Width = 61 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object V2Column5: TcxGridDBBandedColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'SWFBKZ10' + HeaderAlignmentHorz = taCenter + Width = 75 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object V2Column6: TcxGridDBBandedColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'SOrdQty' + HeaderAlignmentHorz = taCenter + Width = 80 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object V2Column7: TcxGridDBBandedColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrdUnit' + HeaderAlignmentHorz = taCenter + Width = 80 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object V2Column8: TcxGridDBBandedColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrderDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 78 + Position.BandIndex = 0 + Position.ColIndex = 10 + Position.RowIndex = 0 + end + object V2Column14: TcxGridDBBandedColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 71 + Position.BandIndex = 0 + Position.ColIndex = 11 + Position.RowIndex = 0 + end + object V2Column18: TcxGridDBBandedColumn + Caption = #32593#32467#26500 + DataBinding.FieldName = 'WJGName' + HeaderAlignmentHorz = taCenter + Width = 55 + Position.BandIndex = 0 + Position.ColIndex = 12 + Position.RowIndex = 0 + end + object V2Column19: TcxGridDBBandedColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + HeaderAlignmentHorz = taCenter + Width = 58 + Position.BandIndex = 0 + Position.ColIndex = 14 + Position.RowIndex = 0 + end + object V2Column20: TcxGridDBBandedColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Width = 64 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object V2Column22: TcxGridDBBandedColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Width = 66 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object V2Column24: TcxGridDBBandedColumn + Caption = #23457#26680#29366#24577 + DataBinding.FieldName = 'ChkStatus' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 80 + Position.BandIndex = 0 + Position.ColIndex = 15 + Position.RowIndex = 0 + end + object V2Column25: TcxGridDBBandedColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 81 + Position.BandIndex = 0 + Position.ColIndex = 13 + Position.RowIndex = 0 + end + object V2Column9: TcxGridDBBandedColumn + Caption = #35268#26684 + DataBinding.FieldName = 'ProductSpec' + HeaderAlignmentHorz = taCenter + Width = 105 + Position.BandIndex = 0 + Position.ColIndex = 9 + Position.RowIndex = 0 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = TV2 + end + end + object Panel3: TPanel + Left = 544 + Top = 185 + Width = 201 + Height = 195 + TabOrder = 4 + Visible = False + object Label8: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Button1: TButton + Left = 24 + Top = 159 + Width = 65 + Height = 25 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + end + object Button2: TButton + Left = 120 + Top = 159 + Width = 49 + Height = 25 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button2Click + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 199 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #35746#21333#31867#22411 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 173 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object RadioGroup1: TRadioGroup + Left = 48 + Top = 24 + Width = 97 + Height = 127 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ItemIndex = 0 + Items.Strings = ( + #21367#26448 + #21046#21697) + ParentFont = False + TabOrder = 3 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 336 + Top = 160 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 864 + Top = 152 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 920 + Top = 160 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 920 + Top = 200 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 392 + Top = 160 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 424 + Top = 176 + 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 = 840 + Top = 256 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 848 + Top = 208 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 384 + Top = 240 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 792 + Top = 288 + end + object RM2: 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 288 + Top = 208 + ReportData = {} + end + object cxStyleRepository1: TcxStyleRepository + object cxStyle1: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #40657#20307 + Font.Style = [fsBold] + end + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 344 + Top = 408 + end + object DataSource2: TDataSource + DataSet = CDS_ZP + Left = 504 + Top = 440 + end + object CDS_ZP: TClientDataSet + Aggregates = <> + Params = <> + Left = 560 + Top = 448 + end + object cxStyleRepository2: TcxStyleRepository + Left = 288 + object cxStyle2: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #40657#20307 + Font.Style = [fsBold] + end + end + object cxStyleRepository3: TcxStyleRepository + Left = 888 + Top = 232 + object cxStyle3: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #40657#20307 + Font.Style = [fsBold] + end + end +end diff --git a/应收应付/U_ProductOrderListNewCKMX.pas b/应收应付/U_ProductOrderListNewCKMX.pas new file mode 100644 index 0000000..56e1a0c --- /dev/null +++ b/应收应付/U_ProductOrderListNewCKMX.pas @@ -0,0 +1,314 @@ +unit U_ProductOrderListNewCKMX; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + cxGridBandedTableView, cxGridDBBandedTableView; + +type + TfrmProductOrderListNewCKMX = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNo: TEdit; + Label5: TLabel; + WFBCodeName: TEdit; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1OrderDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1FactoryNo2Name: TcxGridDBColumn; + v1FactoryNo3Name: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1PRTQty: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + Label4: TLabel; + CustomNoName: TEdit; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + cxGrid2DBTableView1: TcxGridDBTableView; + cxGrid2Level1: TcxGridLevel; + cxGrid2: TcxGrid; + TV2: TcxGridDBBandedTableView; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + V2Column1: TcxGridDBBandedColumn; + V2Column2: TcxGridDBBandedColumn; + V2Column3: TcxGridDBBandedColumn; + V2Column4: TcxGridDBBandedColumn; + V2Column5: TcxGridDBBandedColumn; + V2Column6: TcxGridDBBandedColumn; + V2Column7: TcxGridDBBandedColumn; + V2Column8: TcxGridDBBandedColumn; + V2Column14: TcxGridDBBandedColumn; + V2Column18: TcxGridDBBandedColumn; + V2Column19: TcxGridDBBandedColumn; + Panel3: TPanel; + Label8: TLabel; + Button1: TButton; + Button2: TButton; + Panel10: TPanel; + Image2: TImage; + RadioGroup1: TRadioGroup; + cxGridPopupMenu2: TcxGridPopupMenu; + DataSource2: TDataSource; + CDS_ZP: TClientDataSet; + cxStyleRepository2: TcxStyleRepository; + cxStyle2: TcxStyle; + cxStyleRepository3: TcxStyleRepository; + cxStyle3: TcxStyle; + V2Column20: TcxGridDBBandedColumn; + V2Column22: TcxGridDBBandedColumn; + V2Column24: TcxGridDBBandedColumn; + V2Column25: TcxGridDBBandedColumn; + Label2: TLabel; + Label6: TLabel; + Label7: TLabel; + SWFBColor: TEdit; + SWFBFK10: TEdit; + SWFBKZ10: TEdit; + Label9: TLabel; + SWFBHW: TEdit; + ToolButton1: TToolButton; + V2Column9: TcxGridDBBandedColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBBQPrintClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, + Y: Integer); + procedure Image2Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + private + PPInt:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData(Order_Main10:TClientDataSet):Boolean; + procedure InitGridFH(); + procedure CopyOrderData(Order_MainFF:TClientDataSet); + { Private declarations } + public + FFInt:Integer; + { Public declarations } + end; + +var + frmProductOrderListNewCKMX: TfrmProductOrderListNewCKMX; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun,U_OrderInPutZP,U_OrderInPutNew,U_OrderInPutZPNew + ,U_OrderInPutZPLNew,U_OrderAttachment; + +{$R *.dfm} + +procedure TfrmProductOrderListNewCKMX.FormDestroy(Sender: TObject); +begin + frmProductOrderListNewCKMX:=nil; +end; + +procedure TfrmProductOrderListNewCKMX.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderListNewCKMX.FormCreate(Sender: TObject); +begin + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); +end; + +procedure TfrmProductOrderListNewCKMX.TBCloseClick(Sender: TObject); +begin + Close; + //WriteCxGrid('޷IJָʾб',Tv1,'ָʾ'); + WriteCxBandedGrid('޷IJָʾбMX',Tv2,'ָʾ'); +end; + +procedure TfrmProductOrderListNewCKMX.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' exec P_Select_OrderMainSub :WSql'); + Parameters.ParamByName('WSql').Value:=' and A.OrderDate>='''+formatdatetime('yyyy-MM-dd',BegDate.DateTime)+'''' + +' and A.OrderDate<'''+formatdatetime('yyyy-MM-dd',EndDate.DateTime+1)+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderListNewCKMX.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderListNewCKMX.InitForm(); +begin + ReadCxBandedGrid('޷IJָʾбMX',Tv2,'ָʾ'); + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); + +end; + +procedure TfrmProductOrderListNewCKMX.TBFindClick(Sender: TObject); +var + fsj:string; +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmProductOrderListNewCKMX.DelData(Order_Main10:TClientDataSet):Boolean; +begin + +end; + +procedure TfrmProductOrderListNewCKMX.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderListNewCKMX.TBAddClick(Sender: TObject); +begin + Panel3.Visible:=True; +end; + +procedure TfrmProductOrderListNewCKMX.OrderNoChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmProductOrderListNewCKMX.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderListNewCKMX.TBBQPrintClick(Sender: TObject); +var + fPrintFile:String; +begin +end; + +procedure TfrmProductOrderListNewCKMX.ToolButton2Click(Sender: TObject); + var + fsj:string; +begin +end; + +procedure TfrmProductOrderListNewCKMX.ToolButton3Click(Sender: TObject); +begin + ModalResult:=1; +end; + +procedure TfrmProductOrderListNewCKMX.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderListNewCKMX.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderListNewCKMX.CopyOrderData(Order_MainFF:TClientDataSet); +begin +end; +procedure TfrmProductOrderListNewCKMX.Panel10MouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel3).perform(WM_SYSCOMMAND, $F012, 0); +end; + +procedure TfrmProductOrderListNewCKMX.Image2Click(Sender: TObject); +begin + Panel3.Visible:=False; +end; + +procedure TfrmProductOrderListNewCKMX.Button2Click(Sender: TObject); +begin + Panel3.Visible:=False; +end; + +procedure TfrmProductOrderListNewCKMX.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + SelExportDataBand(Tv2,ADOQueryMain,'ָʾ'); +end; + +end. diff --git a/应收应付/U_ProductOrderListOLJ.dfm b/应收应付/U_ProductOrderListOLJ.dfm new file mode 100644 index 0000000..e6331d6 --- /dev/null +++ b/应收应付/U_ProductOrderListOLJ.dfm @@ -0,0 +1,690 @@ +object frmProductOrderListOLJ: TfrmProductOrderListOLJ + Left = 131 + Top = 114 + Width = 1094 + Height = 600 + Caption = #29983#20135#25351#31034#21333 + 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 = 1086 + AutoSize = True + 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_YSYF.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 106 + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1086 + Height = 67 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #25509#21333#26102#38388 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 179 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 318 + Top = 15 + Width = 26 + Height = 12 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 179 + Top = 39 + Width = 39 + Height = 12 + Caption = #32463#21150#20154 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 318 + Top = 39 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 441 + Top = 16 + Width = 52 + Height = 12 + Caption = #21517#31216#27454#24335 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 441 + Top = 39 + Width = 54 + Height = 12 + Caption = #35268' '#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNoM: TEdit + Tag = 2 + Left = 220 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoMChange + OnKeyPress = OrderNoMKeyPress + end + object CustomerNoName: TEdit + Tag = 2 + Left = 347 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 3 + OnChange = OrderNoMChange + end + object OrdPerson1: TEdit + Tag = 2 + Left = 220 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 4 + OnChange = OrderNoMChange + end + object PRTColor: TEdit + Tag = 2 + Left = 347 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 5 + OnChange = OrderNoMChange + end + object PRTCodeName: TEdit + Tag = 2 + Left = 495 + Top = 12 + Width = 76 + Height = 20 + TabOrder = 6 + OnChange = OrderNoMChange + end + object PRTSpec: TEdit + Tag = 2 + Left = 495 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 7 + OnChange = OrderNoMChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 99 + Width = 1086 + Height = 464 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBBandedTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + Column = v1Column7 + end + item + Format = '0' + Position = spFooter + Column = v1Column11 + end + item + Format = '0' + Position = spFooter + Column = v1Column12 + end + item + Format = '0' + Position = spFooter + Column = v1Column14 + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.Header = DataLink_YSYF.Default + Styles.BandHeader = DataLink_YSYF.Default + Bands = < + item + Width = 948 + end + item + Caption = #38376#26550 + Width = 144 + end + item + Caption = #21512#39029 + Width = 75 + end + item + Width = 278 + end> + object v1Column1: TcxGridDBBandedColumn + Caption = #21517#31216#27454#24335 + DataBinding.FieldName = 'PRTCodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 63 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object v1Column2: TcxGridDBBandedColumn + Caption = #38376#22411 + DataBinding.FieldName = 'PRTType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object v1Column3: TcxGridDBBandedColumn + Caption = #35268#26684'('#39640'*'#23485')' + DataBinding.FieldName = 'PRTSpec' + HeaderAlignmentHorz = taCenter + Width = 73 + Position.BandIndex = 0 + Position.ColIndex = 9 + Position.RowIndex = 0 + end + object v1Column4: TcxGridDBBandedColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 51 + Position.BandIndex = 0 + Position.ColIndex = 10 + Position.RowIndex = 0 + end + object v1Column5: TcxGridDBBandedColumn + Caption = #38376#25159#39640 + DataBinding.FieldName = 'PRTGao' + HeaderAlignmentHorz = taCenter + Width = 49 + Position.BandIndex = 0 + Position.ColIndex = 11 + Position.RowIndex = 0 + end + object v1Column6: TcxGridDBBandedColumn + Caption = #38145#20855 + DataBinding.FieldName = 'PRTSJ' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 56 + Position.BandIndex = 0 + Position.ColIndex = 12 + Position.RowIndex = 0 + end + object v1Column7: TcxGridDBBandedColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Width = 56 + Position.BandIndex = 0 + Position.ColIndex = 13 + Position.RowIndex = 0 + end + object v1Column8: TcxGridDBBandedColumn + Caption = #26041#21521 + DataBinding.FieldName = 'PRTFX' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 70 + Position.BandIndex = 0 + Position.ColIndex = 15 + Position.RowIndex = 0 + end + object v1Column9: TcxGridDBBandedColumn + Caption = #27431#24335#36793 + DataBinding.FieldName = 'PRTMJ1' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 79 + Position.BandIndex = 1 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object v1Column10: TcxGridDBBandedColumn + Caption = #24179#36793 + DataBinding.FieldName = 'PRTMJ2' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 83 + Position.BandIndex = 1 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v1Column11: TcxGridDBBandedColumn + Caption = #26263 + DataBinding.FieldName = 'SOrdFlag1' + HeaderAlignmentHorz = taCenter + Position.BandIndex = 2 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object v1Column12: TcxGridDBBandedColumn + Caption = #26126 + DataBinding.FieldName = 'SOrdFlag2' + HeaderAlignmentHorz = taCenter + Position.BandIndex = 2 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v1Column13: TcxGridDBBandedColumn + Caption = #38376#27099 + DataBinding.FieldName = 'SOrddefstr1' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 70 + Position.BandIndex = 3 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object v1Column14: TcxGridDBBandedColumn + Caption = #38376#38083#21644#13#10#29483#30524 + DataBinding.FieldName = 'SOrdFlag3' + HeaderAlignmentHorz = taCenter + Width = 71 + Position.BandIndex = 3 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v1Column15: TcxGridDBBandedColumn + Caption = #25289#25163 + DataBinding.FieldName = 'SOrddefstr2' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 54 + Position.BandIndex = 3 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object v1Column16: TcxGridDBBandedColumn + Caption = #27668#31383 + DataBinding.FieldName = 'SOrddefstr3' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 83 + Position.BandIndex = 3 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object v1Column17: TcxGridDBBandedColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 58 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object v1Column18: TcxGridDBBandedColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object v1Column19: TcxGridDBBandedColumn + Caption = #32852#31995#30005#35805 + DataBinding.FieldName = 'OrdDefStr1' + HeaderAlignmentHorz = taCenter + Width = 56 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object v1Column20: TcxGridDBBandedColumn + Caption = #22320#22336 + DataBinding.FieldName = 'OrdDefStr2' + HeaderAlignmentHorz = taCenter + Width = 56 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object v1Column21: TcxGridDBBandedColumn + Caption = #25509#21333#26102#38388 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 56 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object v1Column22: TcxGridDBBandedColumn + Caption = #20132#36135#26102#38388 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 67 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object v1Column23: TcxGridDBBandedColumn + Caption = #20215#26684 + DataBinding.FieldName = 'PRTPrice' + HeaderAlignmentHorz = taCenter + Width = 56 + Position.BandIndex = 0 + Position.ColIndex = 14 + Position.RowIndex = 0 + end + object v1Column24: TcxGridDBBandedColumn + Caption = #29983#20135#21333#21495 + DataBinding.FieldName = 'SCNO' + HeaderAlignmentHorz = taCenter + Width = 67 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 288 + Top = 184 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end +end diff --git a/应收应付/U_ProductOrderListOLJ.pas b/应收应付/U_ProductOrderListOLJ.pas new file mode 100644 index 0000000..9f093e9 --- /dev/null +++ b/应收应付/U_ProductOrderListOLJ.pas @@ -0,0 +1,509 @@ +unit U_ProductOrderListOLJ; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP,ShellAPI + ,IniFiles,jpeg, cxButtonEdit, cxGridBandedTableView, + cxGridDBBandedTableView; + +type + TfrmProductOrderListOLJ = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNoM: TEdit; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + Label4: TLabel; + CustomerNoName: TEdit; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + Label5: TLabel; + OrdPerson1: TEdit; + Label7: TLabel; + PRTColor: TEdit; + Label8: TLabel; + PRTCodeName: TEdit; + Label13: TLabel; + PRTSpec: TEdit; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBBandedTableView; + v1Column1: TcxGridDBBandedColumn; + v1Column2: TcxGridDBBandedColumn; + v1Column3: TcxGridDBBandedColumn; + v1Column4: TcxGridDBBandedColumn; + v1Column5: TcxGridDBBandedColumn; + v1Column6: TcxGridDBBandedColumn; + v1Column7: TcxGridDBBandedColumn; + v1Column8: TcxGridDBBandedColumn; + v1Column9: TcxGridDBBandedColumn; + v1Column10: TcxGridDBBandedColumn; + v1Column11: TcxGridDBBandedColumn; + v1Column12: TcxGridDBBandedColumn; + v1Column13: TcxGridDBBandedColumn; + v1Column14: TcxGridDBBandedColumn; + v1Column15: TcxGridDBBandedColumn; + v1Column16: TcxGridDBBandedColumn; + cxGrid1Level1: TcxGridLevel; + v1Column17: TcxGridDBBandedColumn; + v1Column18: TcxGridDBBandedColumn; + v1Column19: TcxGridDBBandedColumn; + v1Column20: TcxGridDBBandedColumn; + v1Column21: TcxGridDBBandedColumn; + v1Column22: TcxGridDBBandedColumn; + v1Column23: TcxGridDBBandedColumn; + v1Column24: TcxGridDBBandedColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure OrderNoMKeyPress(Sender: TObject; var Key: Char); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + procedure ReadINIFile(); + procedure SaveImage(); + procedure SetSaveImage(ADOQuerycmd:TADOQuery;MyPic:string;Image1:TImage); + procedure CreThumb(Width, Height: Integer;Image10,Image20:TImage); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmProductOrderListOLJ: TfrmProductOrderListOLJ; + +implementation +uses + U_DataLink,U_Fun; + +{$R *.dfm} + +procedure TfrmProductOrderListOLJ.FormDestroy(Sender: TObject); +begin + frmProductOrderListOLJ:=nil; +end; + +procedure TfrmProductOrderListOLJ.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderListOLJ.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderListOLJ.TBCloseClick(Sender: TObject); +begin + Close; + if FCloth<>1 then + WriteCxBandedGrid('ָʾб',Tv1,'ָʾ') + else + WriteCxBandedGrid('ָʾбѡ',Tv1,'ָʾ'); +end; + +procedure TfrmProductOrderListOLJ.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select OrdDate=convert(varchar(10),OrdDate,120),DlyDate=convert(varchar(10),DlyDate,120) '); + sql.Add(',Case when SOrdFlag1=0 then '''' else '''' end as SOrdFlag1'); + sql.Add(',Case when SOrdFlag2=0 then '''' else '''' end as SOrdFlag2'); + sql.Add(',Case when SOrdFlag3=0 then '''' else '''' end as SOrdFlag3'); + sql.add(', A.*,B.*,A.OrderNo OrderNoM'); + sql.Add('from JYOrder_Main A left join JYOrder_Sub B on A.MainId=B.MainId '); + + SQL.Add('where OrdDate>=:begdate and OrdDate<:enddate'); + + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderListOLJ.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderListOLJ.InitForm(); +begin + + + ReadCxBandedGrid('ָʾбѡ',Tv1,'ָʾ'); + + + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmProductOrderListOLJ.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmProductOrderListOLJ.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + if IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderListOLJ.SaveImage(); +var + JPGImg:TJPEGImage; + ADOData:TADOBlobStream; +begin + +end; +procedure TfrmProductOrderListOLJ.SetSaveImage(ADOQuerycmd:TADOQuery;MyPic:string;Image1:TImage); +var + JPGImg:TJPEGImage; + ADOData:TADOBlobStream; +begin + +end; +procedure TfrmProductOrderListOLJ.CreThumb(Width, Height: Integer;Image10,Image20:TImage); +var + Bitmap: TBitmap; + Ratio: Double; + ARect: TRect; + AHeight, AHeightOffset: Integer; + AWidth, AWidthOffset: Integer; +begin + +end; + +procedure TfrmProductOrderListOLJ.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderListOLJ.OrderNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderListOLJ.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderListOLJ.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmProductOrderListOLJ.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderListOLJ.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderListOLJ.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderListOLJ.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderListOLJ.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderListOLJ.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderListOLJ.ToolButton3Click(Sender: TObject); +begin + ModalResult:=1; +end; + +procedure TfrmProductOrderListOLJ.ReadINIFile(); +var + programIni:Tinifile; //ļ + FileName:string; +begin + FileName:=ExtractFilePath(Paramstr(0))+'SYSTEMSET.INI'; + programIni:=Tinifile.create(FileName); + server:=programIni.ReadString('SERVER','ַ','127.0.0.1'); + programIni.Free; +end; + +procedure TfrmProductOrderListOLJ.OrderNoMKeyPress(Sender: TObject; + var Key: Char); +var + fsj:string; +begin + if Key=#13 then + begin + if Length(Trim(OrderNoM.Text))<4 then Exit; + fsj:='%'+Trim(OrderNoM.Text)+'%'; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select OrderNoM=A.OrderNo,OrdDate=convert(varchar(10),OrdDate,120),DlyDate=convert(varchar(10),DlyDate,120) '); + sql.Add(',Case when SOrdFlag1=0 then '''' else '''' end as SOrdFlag1'); + sql.Add(',Case when SOrdFlag2=0 then '''' else '''' end as SOrdFlag2'); + sql.Add(',Case when SOrdFlag3=0 then '''' else '''' end as SOrdFlag3'); + sql.add(', A.*,B.* '); + sql.Add('from JYOrder_Main A left join JYOrder_Sub B on A.MainId=B.MainId '); + + SQL.Add('where A.orderNo like '''+Trim(fsj)+''''); + + //ShowMessage(ADOQueryMain.SQL.Text); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; + +end; + +end. diff --git a/应收应付/U_ProductOrderListSel.dfm b/应收应付/U_ProductOrderListSel.dfm new file mode 100644 index 0000000..343a4de --- /dev/null +++ b/应收应付/U_ProductOrderListSel.dfm @@ -0,0 +1,681 @@ +object frmProductOrderListSel: TfrmProductOrderListSel + Left = 134 + Top = 115 + Width = 1094 + Height = 600 + Caption = #29983#20135#25351#31034#21333#36873#25321 + 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 = 1265 + AutoSize = True + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #36873#25321 + ImageIndex = 106 + Visible = False + end + object TBPrint: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + end + object TBClose: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1265 + Height = 67 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 179 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 318 + Top = 15 + Width = 26 + Height = 12 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 318 + Top = 39 + Width = 26 + Height = 12 + Caption = #26579#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 441 + Top = 15 + Width = 53 + Height = 12 + Caption = #19994' '#21153' '#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 588 + Top = 39 + Width = 54 + Height = 12 + Caption = #25104' '#20998 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 741 + Top = 39 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 588 + Top = 15 + Width = 52 + Height = 12 + Caption = #20013#25991#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 179 + Top = 39 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 741 + Top = 15 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 441 + Top = 39 + Width = 52 + Height = 12 + Caption = #20844#21496#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 861 + Top = 39 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 861 + Top = 15 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNoM: TEdit + Tag = 2 + Left = 220 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoMChange + end + object CustomerNoName: TEdit + Tag = 2 + Left = 347 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 3 + OnChange = OrderNoMChange + end + object JGFactoryName: TEdit + Tag = 2 + Left = 347 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 4 + OnChange = OrderNoMChange + end + object OrdPerson1: TEdit + Tag = 2 + Left = 495 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 5 + OnChange = OrderNoMChange + end + object MPRTCF: TEdit + Tag = 2 + Left = 641 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 6 + OnChange = OrderNoMChange + end + object PRTColor: TEdit + Tag = 2 + Left = 770 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 7 + OnChange = OrderNoMChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 641 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 8 + OnChange = OrderNoMChange + end + object ConNo: TEdit + Tag = 2 + Left = 220 + Top = 35 + Width = 77 + Height = 20 + TabOrder = 9 + OnChange = OrderNoMChange + end + object MPRTSpec: TEdit + Tag = 2 + Left = 770 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 10 + OnChange = OrderNoMChange + end + object OrdDefStr1: TEdit + Tag = 2 + Left = 495 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 11 + OnChange = OrderNoMChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 890 + Top = 35 + Width = 56 + Height = 20 + TabOrder = 12 + OnChange = OrderNoMChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 890 + Top = 11 + Width = 56 + Height = 20 + TabOrder = 13 + OnChange = OrderNoMChange + end + end + object cxGrid1: TcxGrid + Left = 16 + Top = 136 + Width = 1249 + Height = 369 + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1OrdDefStr1: TcxGridDBColumn + Caption = #20844#21496#32534#21495 + DataBinding.FieldName = 'OrdDefStr1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 90 + end + object v1Column1: TcxGridDBColumn + Caption = #20844#21496#21488#22836 + DataBinding.FieldName = 'OrdDefStr2' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 90 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 73 + end + object v1JGFactoryName: TcxGridDBColumn + Caption = #26579#21378 + DataBinding.FieldName = 'JGFactoryName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 69 + end + object v1MPRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'MPRTSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1MPRTCF: TcxGridDBColumn + Caption = #25104#20998 + DataBinding.FieldName = 'MPRTCF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 69 + end + object v1MPRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object v1MPRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + Options.Focusing = False + Width = 54 + end + object v1Column8: TcxGridDBColumn + Caption = #22791#27880#21450#35201#27714 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 92 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + object v1PRTPrice: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PRTPrice' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 71 + end + object v1Column2: TcxGridDBColumn + Caption = #30830#35748#33394#21345 + DataBinding.FieldName = 'SOrddefstr2' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 60 + end + object v1Column3: TcxGridDBColumn + Caption = #26631#31614 + DataBinding.FieldName = 'SLbName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 85 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 288 + Top = 184 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end +end diff --git a/应收应付/U_ProductOrderListSel.pas b/应收应付/U_ProductOrderListSel.pas new file mode 100644 index 0000000..5feed91 --- /dev/null +++ b/应收应付/U_ProductOrderListSel.pas @@ -0,0 +1,449 @@ +unit U_ProductOrderListSel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus; + +type + TfrmProductOrderListSel = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNoM: TEdit; + v1OrderNo: TcxGridDBColumn; + v1JGFactoryName: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + v1MPRTSpec: TcxGridDBColumn; + v1MPRTCF: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + Label4: TLabel; + CustomerNoName: TEdit; + v1MPRTCodeName: TcxGridDBColumn; + v1MPRTMF: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + v1PRTPrice: TcxGridDBColumn; + Label2: TLabel; + JGFactoryName: TEdit; + Label5: TLabel; + OrdPerson1: TEdit; + Label6: TLabel; + MPRTCF: TEdit; + Label7: TLabel; + PRTColor: TEdit; + Label8: TLabel; + MPRTCodeName: TEdit; + Label9: TLabel; + ConNo: TEdit; + v1Column8: TcxGridDBColumn; + v1MPRTKZ: TcxGridDBColumn; + v1OrdDefStr1: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + Label10: TLabel; + MPRTSpec: TEdit; + Label11: TLabel; + OrdDefStr1: TEdit; + Label12: TLabel; + MPRTKZ: TEdit; + Label13: TLabel; + MPRTMF: TEdit; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + v1Column4: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmProductOrderListSel: TfrmProductOrderListSel; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun; + +{$R *.dfm} + +procedure TfrmProductOrderListSel.FormDestroy(Sender: TObject); +begin + frmProductOrderListSel:=nil; +end; + +procedure TfrmProductOrderListSel.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderListSel.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderListSel.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ָʾб',Tv1,'ָʾ'); +end; + +procedure TfrmProductOrderListSel.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select A.*,B.*,A.OrderNo OrderNoM from JYOrder_Main A left join JYOrder_Sub B on A.MainId=B.MainId '); + SQL.Add('where OrdDate>=:begdate and OrdDate<:enddate'); + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderListSel.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderListSel.InitForm(); +begin + if SGetServerDate(ADOQueryTemp)>StrToDate('2014-07-11') then + begin + ToolBar1.Visible:=False; + Application.MessageBox('ҪϵӦ̣','ʾ',0); + Exit; + end; + ReadCxGrid('ָʾб',Tv1,'ָʾ'); + + if FCloth=1 then + begin + v1Column3.Visible:=True; + end else + begin + v1Column3.Visible:=False; + end; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmProductOrderListSel.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmProductOrderListSel.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + if IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderListSel.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + InitGridFH(); + end else + InitGrid(); +end; + +procedure TfrmProductOrderListSel.OrderNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderListSel.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderListSel.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if ToolButton1.Visible=False then Exit; + ToolButton1.Click; +end; + +procedure TfrmProductOrderListSel.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmProductOrderListSel.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderListSel.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderListSel.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderListSel.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderListSel.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderListSel.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +end. diff --git a/应收应付/U_ProductOrderNewList.dfm b/应收应付/U_ProductOrderNewList.dfm new file mode 100644 index 0000000..c6cc769 --- /dev/null +++ b/应收应付/U_ProductOrderNewList.dfm @@ -0,0 +1,633 @@ +object frmProductOrderNewList: TfrmProductOrderNewList + Left = 113 + Top = 117 + Width = 1094 + Height = 600 + Caption = #29983#20135#25351#31034#21333 + 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 = 1086 + AutoSize = True + 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_YSYF.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #36873#25321 + ImageIndex = 106 + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1086 + Height = 67 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 179 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 318 + Top = 15 + Width = 26 + Height = 12 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 318 + Top = 39 + Width = 26 + Height = 12 + Caption = #26579#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 441 + Top = 15 + Width = 53 + Height = 12 + Caption = #19994' '#21153' '#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 588 + Top = 39 + Width = 54 + Height = 12 + Caption = #25104' '#20998 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 741 + Top = 39 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 588 + Top = 15 + Width = 52 + Height = 12 + Caption = #20013#25991#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 179 + Top = 39 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 741 + Top = 15 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 441 + Top = 39 + Width = 52 + Height = 12 + Caption = #20844#21496#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 861 + Top = 39 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 861 + Top = 15 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNoM: TEdit + Tag = 2 + Left = 220 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoMChange + OnKeyPress = OrderNoMKeyPress + end + object CustomerNoName: TEdit + Tag = 2 + Left = 347 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 3 + OnChange = OrderNoMChange + end + object JGFactoryName: TEdit + Tag = 2 + Left = 347 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 4 + OnChange = OrderNoMChange + end + object OrdPerson1: TEdit + Tag = 2 + Left = 495 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 5 + OnChange = OrderNoMChange + end + object MPRTCF: TEdit + Tag = 2 + Left = 641 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 6 + OnChange = OrderNoMChange + end + object PRTColor: TEdit + Tag = 2 + Left = 770 + Top = 35 + Width = 76 + Height = 20 + Enabled = False + TabOrder = 7 + OnChange = OrderNoMChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 641 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 8 + OnChange = OrderNoMChange + end + object ConNo: TEdit + Tag = 2 + Left = 220 + Top = 35 + Width = 77 + Height = 20 + TabOrder = 9 + OnChange = OrderNoMChange + end + object MPRTSpec: TEdit + Tag = 2 + Left = 770 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 10 + OnChange = OrderNoMChange + end + object OrdDefStr1: TEdit + Tag = 2 + Left = 495 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 11 + OnChange = OrderNoMChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 890 + Top = 35 + Width = 56 + Height = 20 + TabOrder = 12 + OnChange = OrderNoMChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 890 + Top = 11 + Width = 56 + Height = 20 + TabOrder = 13 + OnChange = OrderNoMChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 99 + Width = 1086 + Height = 410 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_YSYF.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 72 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 68 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 73 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 68 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 62 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 62 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'PRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 69 + end + object v1Column1: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1Column2: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'PRTRollNum' + HeaderAlignmentHorz = taCenter + Width = 102 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 97 + end + object v1Column8: TcxGridDBColumn + Caption = #22791#27880#21450#35201#27714 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 96 + end + object v1Column3: TcxGridDBColumn + Caption = #21457#36135#22320#22336 + DataBinding.FieldName = 'FHAddress' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 88 + end + object v1Column5: TcxGridDBColumn + Caption = #32852#31995#26041#24335 + DataBinding.FieldName = 'LXFS' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 89 + end + object v1EditTime: TcxGridDBColumn + Caption = #20462#25913#26085#26399 + DataBinding.FieldName = 'EditTime' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1ordderNote1: TcxGridDBColumn + Caption = #20462#25913#22791#27880 + DataBinding.FieldName = 'orddefNote1' + HeaderAlignmentHorz = taCenter + Width = 80 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 256 + Top = 176 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end +end diff --git a/应收应付/U_ProductOrderNewList.pas b/应收应付/U_ProductOrderNewList.pas new file mode 100644 index 0000000..4e12dfc --- /dev/null +++ b/应收应付/U_ProductOrderNewList.pas @@ -0,0 +1,459 @@ +unit U_ProductOrderNewList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus; + +type + TfrmProductOrderNewList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNoM: TEdit; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + Label4: TLabel; + CustomerNoName: TEdit; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + Label2: TLabel; + JGFactoryName: TEdit; + Label5: TLabel; + OrdPerson1: TEdit; + Label6: TLabel; + MPRTCF: TEdit; + Label7: TLabel; + PRTColor: TEdit; + Label8: TLabel; + MPRTCodeName: TEdit; + Label9: TLabel; + ConNo: TEdit; + Label10: TLabel; + MPRTSpec: TEdit; + Label11: TLabel; + OrdDefStr1: TEdit; + Label12: TLabel; + MPRTKZ: TEdit; + Label13: TLabel; + MPRTMF: TEdit; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column4: TcxGridDBColumn; + v1OrderNo: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1CustomerNoName: TcxGridDBColumn; + v1MPRTCodeName: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1EditTime: TcxGridDBColumn; + v1ordderNote1: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure OrderNoMKeyPress(Sender: TObject; var Key: Char); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmProductOrderNewList: TfrmProductOrderNewList; + +implementation +uses + U_DataLink,U_Fun; + +{$R *.dfm} + +procedure TfrmProductOrderNewList.FormDestroy(Sender: TObject); +begin + frmProductOrderNewList:=nil; +end; + +procedure TfrmProductOrderNewList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderNewList.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderNewList.TBCloseClick(Sender: TObject); +begin + Close; + if FCloth<>1 then + WriteCxGrid('ָʾб10',Tv1,'ָʾ') + else + WriteCxGrid('ָʾбѡ',Tv1,'ָʾ'); +end; + +procedure TfrmProductOrderNewList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql') ; + if Trim(DParameters1)<>'Ȩ' then + begin + Parameters.ParamByName('WSql').Value:=' and A.Filler='''+Trim(DName)+''''; + end else + begin + Parameters.ParamByName('WSql').Value:=''; + end; + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderNewList.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderNewList.InitForm(); +begin + if SGetServerDate(ADOQueryTemp)>StrToDate('2014-07-11') then + begin + ToolBar1.Visible:=False; + Application.MessageBox('ҪϵӦ̣','ʾ',0); + Exit; + end; + if FCloth<>1 then + ReadCxGrid('ָʾб10',Tv1,'ָʾ') + else + ReadCxGrid('ָʾбѡ',Tv1,'ָʾ'); + + if FCloth=1 then + begin + v1Column4.Visible:=True; + + end else + begin + v1Column4.Visible:=False; + end; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + //InitGrid(); +end; + +procedure TfrmProductOrderNewList.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmProductOrderNewList.DelData():Boolean; +begin +end; + +procedure TfrmProductOrderNewList.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + InitGridFH(); + end else + begin + InitGrid(); + end; +end; + +procedure TfrmProductOrderNewList.OrderNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderNewList.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderNewList.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmProductOrderNewList.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderNewList.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderNewList.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderNewList.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderNewList.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewList.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewList.ToolButton3Click(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + ModalResult:=1; +end; + +procedure TfrmProductOrderNewList.OrderNoMKeyPress(Sender: TObject; + var Key: Char); +var + fsj:string; +begin + if Key=#13 then + begin + if Length(Trim(OrderNoM.Text))<4 then Exit; + fsj:='%'+Trim(OrderNoM.Text)+'%'; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql') ; + if Trim(DParameters1)<>'Ȩ' then + begin + Parameters.ParamByName('WSql').Value:=' and A.Filler='''+Trim(DName)+''''; + end else + begin + Parameters.ParamByName('WSql').Value:=' and A.OrderNo like '''+fsj+''''; + end; + Parameters.ParamByName('begdate').Value:='1900-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmProductOrderNewList.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + ToolButton3.Click; +end; + +end. diff --git a/应收应付/U_SKCR.dfm b/应收应付/U_SKCR.dfm new file mode 100644 index 0000000..bb3ac37 --- /dev/null +++ b/应收应付/U_SKCR.dfm @@ -0,0 +1,595 @@ +object frmSKCR: TfrmSKCR + Left = 370 + Top = 127 + Width = 1214 + Height = 620 + Caption = #25910#27454#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1198 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object TBADD: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = TBADDClick + end + object TBedit: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBeditClick + end + object TBDel: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object TBhx: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #26680#38144 + ImageIndex = 106 + Visible = False + OnClick = TBhxClick + end + object TBzdhx: TToolButton + Left = 378 + Top = 0 + Caption = #33258#21160#26680#38144 + ImageIndex = 106 + Visible = False + OnClick = TBzdhxClick + end + object ToolButton1: TToolButton + Left = 461 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 524 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1198 + Height = 46 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 60 + Height = 12 + Caption = #39033#30446#21450#25688#35201 + end + object Label3: TLabel + Left = 314 + Top = 13 + Width = 48 + Height = 12 + Caption = #23545#26041#21333#20301 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 562 + Top = 65 + Width = 36 + Height = 12 + Caption = #25910#27454#26041 + end + object Label5: TLabel + Left = 698 + Top = 69 + Width = 48 + Height = 12 + Caption = #24212#25910#27454#21495 + end + object Label7: TLabel + Left = 910 + Top = 61 + Width = 24 + Height = 12 + Caption = #37329#39069 + end + object YFName: TEdit + Tag = 2 + Left = 528 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object FactoryName: TEdit + Tag = 2 + Left = 366 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + object ToFactoryName: TEdit + Tag = 2 + Left = 599 + Top = 61 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = ToFactoryNameChange + end + object YFID: TEdit + Tag = 2 + Left = 750 + Top = 65 + Width = 89 + Height = 20 + TabOrder = 5 + OnChange = FactoryNameChange + end + object BBMoneyM: TEdit + Tag = 2 + Left = 940 + Top = 57 + Width = 89 + Height = 20 + TabOrder = 6 + OnChange = FactoryNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 77 + Width = 1198 + Height = 504 + Align = alClient + TabOrder = 2 + LookAndFeel.NativeStyle = False + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnFocusedRecordChanged = Tv2FocusedRecordChanged + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = VBB + end + item + Kind = skSum + Column = VYB + end + item + Kind = skSum + Column = v2Column1 + end + item + Kind = skSum + Column = v2Column2 + end + item + Kind = skSum + Column = v2Column4 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_YSYF.FonePurple + object v2Column3: TcxGridDBColumn + Caption = #25910#27454#21333#21495 + DataBinding.FieldName = 'YFID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 75 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 90 + end + object v2Column6: TcxGridDBColumn + Caption = #23545#26041#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 100 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39033#30446#21450#25688#35201 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 146 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 76 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 80 + end + object VYB: TcxGridDBColumn + Caption = #21407#24065#37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column4PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 93 + end + object VBB: TcxGridDBColumn + Caption = #26412#24065#37329#39069 + DataBinding.FieldName = 'BBMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = VBBPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle_fontclBlue + Styles.Footer = cxStyle_fontclBlue + Styles.Header = cxStyle_fontclBlue + Width = 80 + end + object v2Column1: TcxGridDBColumn + Caption = #26680#38144#37329#39069 + DataBinding.FieldName = 'hxNum' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = cxStyle_fontclFuchsia + Styles.Footer = cxStyle_fontclFuchsia + Styles.Header = cxStyle_fontclFuchsia + VisibleForCustomization = False + Width = 80 + end + object v2Column2: TcxGridDBColumn + Caption = #26410#26680#38144#37329#39069 + DataBinding.FieldName = 'NhxNum' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = cxStyle_fontclPurple + Styles.Footer = cxStyle_fontclPurple + Styles.Header = cxStyle_fontclPurple + VisibleForCustomization = False + Width = 89 + end + object v2Column4: TcxGridDBColumn + Caption = #20943#20813#37329#39069 + DataBinding.FieldName = 'DerateMoney' + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '0.##;-,0.##' + Properties.OnEditValueChanged = v2Column4PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 90 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end + object cxStyleRepository1: TcxStyleRepository + Left = 265 + Top = 174 + PixelsPerInch = 96 + object cxStyle1: TcxStyle + AssignedValues = [svColor] + Color = clInactiveCaption + end + object cxStyle2: TcxStyle + AssignedValues = [svColor, svTextColor] + Color = 4707838 + TextColor = clBtnText + end + object cxStyle_gridRow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16311512 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_gridFoot: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridHead: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridGroupBox: TcxStyle + AssignedValues = [svColor, svFont] + Color = clMoneyGreen + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_yellow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_fontBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_fontclFuchsia: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clFuchsia + end + object cxStyle_fontclPurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clPurple + end + object cxStyle_fontclGreen: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clGreen + end + object cxStyle_fontclBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object cxStyle_fontclTeal: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clTeal + end + object cxStyle_fontclOlive: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + end +end diff --git a/应收应付/U_SKCR.pas b/应收应付/U_SKCR.pas new file mode 100644 index 0000000..e4e1aab --- /dev/null +++ b/应收应付/U_SKCR.pas @@ -0,0 +1,918 @@ +unit U_SKCR; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxCurrencyEdit, cxLookAndFeels, + cxLookAndFeelPainters, cxNavigator; + +type + TfrmSKCR = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + YFName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + TBADD: TToolButton; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + VYB: TcxGridDBColumn; + VBB: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + Label4: TLabel; + ToFactoryName: TEdit; + TBhx: TToolButton; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxStyle_gridRow: TcxStyle; + cxStyle_gridFoot: TcxStyle; + cxStyle_gridHead: TcxStyle; + cxStyle_gridGroupBox: TcxStyle; + cxStyle_yellow: TcxStyle; + cxStyle_Red: TcxStyle; + cxStyle_fontBlack: TcxStyle; + cxStyle_fontclFuchsia: TcxStyle; + cxStyle_fontclPurple: TcxStyle; + cxStyle_fontclGreen: TcxStyle; + cxStyle_fontclBlue: TcxStyle; + cxStyle_fontclTeal: TcxStyle; + cxStyle_fontclOlive: TcxStyle; + TBzdhx: TToolButton; + v2Column3: TcxGridDBColumn; + YFID: TEdit; + Label5: TLabel; + TBedit: TToolButton; + BBMoneyM: TEdit; + Label7: TLabel; + v2Column4: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure TBADDClick(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column4PropertiesEditValueChanged(Sender: TObject); + procedure v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure VBBPropertiesEditValueChanged(Sender: TObject); + procedure ToFactoryNameChange(Sender: TObject); + procedure TBhxClick(Sender: TObject); + procedure Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); + procedure TBzdhxClick(Sender: TObject); + procedure TBeditClick(Sender: TObject); + procedure v2Column4PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + private + IsEdit:integer; + { Private declarations } + + procedure InitGridHZ(); + procedure InitGrid(); + function SaveData():Boolean; + + public + { Public declarations } + RKFlag,FCYID:String; + + IsHx:integer; + + end; + +var + frmSKCR: TfrmSKCR; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderList, U_ProductOrderNewList, + U_ZdyAttachment, U_skHx; + +{$R *.dfm} + + + +procedure TfrmSKCR.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select A.*,NhxNum=money-hxNum,cast(BBMoney as varchar) as BBMoneyM'); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + sql.Add('where A.CRTime>=:begdate and A.CRTime<:Enddate and A.CRType=''տǼ'' order by A.CRTime,A.YFID '); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmSKCR.InitGridHZ(); +begin +end; + +procedure TfrmSKCR.FormDestroy(Sender: TObject); +begin + frmSKCR:=nil; +end; + +procedure TfrmSKCR.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmSKCR.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('տǼ',Tv2,''); + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); + ExecSQL; + end;} + Close; +end; +procedure TfrmSKCR.TBDelClick(Sender: TObject); +var + FBBMoney,CRID:string; +begin + if CDS_HZ.IsEmpty then Exit; + + IF CDS_HZ.FieldByName('hxNum').AsFloat<>0 then + begin + application.MessageBox('˵Ѳݣɾ','ʾϢ',0); + exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+Trim(cds_hz.fieldbyname('YFID').AsString)+''''); + Open; + end; + FBBMoney:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('YFID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; + CRID:=Trim(CDS_HZ.fieldbyname('CRID').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where CRID='+CRID); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_KC where CRID='+CRID); + ExecSQL; + end; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmSKCR.FormShow(Sender: TObject); +begin + ReadCxGrid('տǼ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-50; + if Trim(DParameters1)='޶' then + begin + // VOrderNo.Hidden:=True; + // VOrderNo.Visible:=False; + // OrderNo.Visible:=False; + end; + if Trim(DParameters2)='' then + begin + VHL.Hidden:=True; + VHL.Visible:=False; + VBZ.Hidden:=True; + VBZ.Visible:=False; + VYB.Hidden:=True; + VYB.Visible:=False; + VBB.Caption:=''; + end; + IF IsHx=0 then + begin + TBzdhx.Visible:=false; + TBhx.Visible:=false; + end; + IF IsHx=1 then + begin + TBzdhx.Visible:=true; + TBhx.Visible:=true; + TBADD.Visible:=false; + TBDel.Visible:=false; + TBedit.Visible:=false; + end; + InitGrid(); +end; + +procedure TfrmSKCR.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmSKCR.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmSKCR.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmSKCR.Button2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +function TfrmSKCR.SaveData():Boolean; +var + maxId,CRID:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxId,'FK','YF_Money_CR',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''''); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + //SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='տǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=-1; + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ToFactoryNo').Value:=Trim(CDS_HZ.fieldbyname('ToFactoryNo').AsString); + FieldByName('ToFactoryName').Value:=Trim(CDS_HZ.fieldbyname('ToFactoryName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + FieldByName('status').Value:='0'; + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('YFId').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; + +procedure TfrmSKCR.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmSKCR.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + if Trim(FFieldName)<>'Money' then + begin + if Trim(FFieldName)<>'HuiLv' then + begin + FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)); + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmSKCR.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmSKCR.TBADDClick(Sender: TObject); +begin + Tv2.OptionsData.Editing:=true; + try + frmZdyAttachment:=TfrmZdyAttachment.Create(Application); + with frmZdyAttachment do + begin + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('ZdyCode').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + Self.SaveData(); + end; + end; + finally + frmZdyAttachment.Free; + end; +end; + +procedure TfrmSKCR.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFName'; + flagname:='ĿժҪ'; + if Trim(DParameters3)='Ŀֿ' then + MainType:='տ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('YFCode').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('YFName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set YFCode='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); + sql.Add(' ,YFName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSKCR.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set QtyUnit='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSKCR.v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BZType'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('BZType').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set BZType='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSKCR.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'б'); +end; + +procedure TfrmSKCR.v2Column4PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + + + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + tv2.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmSKCR.v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmProductOrderNewList:=TfrmProductOrderNewList.Create(Application); + with frmProductOrderNewList do + begin + DParameters1:='Ȩ'; + //frmProductOrderList.v1Column4.Visible:=True; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('MainId').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString); + FieldByName('OrderNo').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrderNo').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set MainId='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString)+''''); + //sql.Add(' ,SubId='''+Trim(frmProductOrderList.Order_Main.fieldbyname('SubId').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + end; + finally + frmProductOrderNewList.Free; + end; +end; + +procedure TfrmSKCR.VBBPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FKCBB:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + + if Trim(mvalue)='' then mvalue:='0'; + with CDS_HZ do + begin + Edit; + FieldByName('BBMoney').Value:=StrToFloat(mvalue); + FieldByName('Money').Value:=StrToFloat(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' set BBMoney='+mvalue); + SQL.Add(',Money='+mvalue); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + ExecSQL; + end; +end; + +procedure TfrmSKCR.ToFactoryNameChange(Sender: TObject); +begin + // if Length(Trim(OrderNo.Text))<3 then Exit; +// ToolButton2.Click; +end; + +procedure TfrmSKCR.TBhxClick(Sender: TObject); +begin + IF CDS_HZ.IsEmpty then exit; + frmskHx:=TfrmskHx.create(self); + with frmskHx do + begin + fkeyNo:=CDS_HZ.fieldbyname('YFID').AsString; + ffactoryName:=CDS_HZ.fieldbyname('factoryName').AsString; + if showmodal=1 then + begin + end; + free; + end; +end; + +procedure TfrmSKCR.Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); +begin + IF IsEdit=1 then + begin + IF CDS_HZ.fieldbyname('hxNum').AsFloat<>0 then + tv2.OptionsData.Editing:=false + else + tv2.OptionsData.Editing:=true; + end; +end; + +procedure TfrmSKCR.TBzdhxClick(Sender: TObject); +begin + IF CDS_HZ.IsEmpty then exit; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + Filtered:=False; + SQL.Add('EXEC P_Do_Yshx_Zd'); + SQL.Add('@skAutoID = ' + QuotedStr(Trim(cds_HZ.FieldByName('YFID').AsString))); + SQL.Add(',@factoryName = ' + QuotedStr(Trim(cds_HZ.FieldByName('factoryName').AsString))); + SQL.Add(',@hxMoney = ' + FloatToStr(0)); + SQL.Add(',@UserID = ' + QuotedStr(Trim(DName))); + SQL.Add(',@PZNo = ' + QuotedStr(Trim(''))); + Open; + end; + IF ADOQueryCmd.fieldbyname('intReturn').AsInteger<0 then + begin + application.MessageBox('Զʧܣ','ʾϢ',0); + end + else + begin + application.MessageBox('Զɹ','ʾϢ'); + TBRafresh.Click; + end; +end; + +procedure TfrmSKCR.TBeditClick(Sender: TObject); +begin + IsEdit:=1; +end; + +procedure TfrmSKCR.v2Column4PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZdyAttachment:=TfrmZdyAttachment.Create(Application); + with frmZdyAttachment do + begin + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('ToFactoryNo').Value:=Trim(CDS_HZ.fieldbyname('ZdyCode').AsString); + FieldByName('ToFactoryName').Value:=Trim(CDS_HZ.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set ToFactoryNo='''+Trim(self.CDS_HZ.fieldbyname('ToFactoryNo').AsString)+''''); + sql.Add(' ,ToFactoryName='''+Trim(self.CDS_HZ.fieldbyname('ToFactoryName').AsString)+''''); + SQL.Add(' where YFId='''+Trim(self.CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZdyAttachment.Free; + end; + tv2.Controller.EditingController.ShowEdit(); +end; + +end. diff --git a/应收应付/U_SKCRLZ.dfm b/应收应付/U_SKCRLZ.dfm new file mode 100644 index 0000000..9b98d22 --- /dev/null +++ b/应收应付/U_SKCRLZ.dfm @@ -0,0 +1,408 @@ +object frmSKCRLZ: TfrmSKCRLZ + Left = 73 + Top = 136 + Width = 1038 + Height = 618 + Caption = #25910#27454#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1030 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton3Click + end + object TBDel: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1030 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 60 + Height = 12 + Caption = #39033#30446#21450#25688#35201 + end + object Label3: TLabel + Left = 302 + Top = 13 + Width = 48 + Height = 12 + Caption = #23545#26041#21333#20301 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 634 + Top = 13 + Width = 36 + Height = 12 + Caption = #35746#21333#21495 + end + object Label5: TLabel + Left = 782 + Top = 13 + Width = 48 + Height = 12 + Caption = #25903#20184#21488#22836 + end + object YFName: TEdit + Tag = 2 + Left = 528 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object FactoryName: TEdit + Tag = 2 + Left = 350 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + object OrderNo: TEdit + Tag = 2 + Left = 671 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object ComTaiTou: TEdit + Tag = 2 + Left = 830 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 5 + OnChange = FactoryNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1030 + Height = 511 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = VBB + end + item + Kind = skSum + Column = VYB + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_YSYF.FonePurple + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 115 + end + object v2Column6: TcxGridDBColumn + Caption = #23545#26041#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 100 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39033#30446#21450#25688#35201 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 146 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 71 + end + object VYB: TcxGridDBColumn + Caption = #21407#24065#37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column4PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object VBB: TcxGridDBColumn + Caption = #26412#24065#37329#39069 + DataBinding.FieldName = 'BBMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = VBBPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 65 + end + object VOrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 75 + end + object v2Column1: TcxGridDBColumn + Caption = #20195#29702 + DataBinding.FieldName = 'YFDefFlag1' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Properties.OnEditValueChanged = v2Column1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 42 + end + object v2ZFTT: TcxGridDBColumn + Caption = #25903#20184#21488#22836 + DataBinding.FieldName = 'ComTaiTou' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.ImmediatePost = True + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v2Column2: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 95 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_SKCRLZ.pas b/应收应付/U_SKCRLZ.pas new file mode 100644 index 0000000..078895b --- /dev/null +++ b/应收应付/U_SKCRLZ.pas @@ -0,0 +1,1034 @@ +unit U_SKCRLZ; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDropDownEdit; + +type + TfrmSKCRLZ = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + YFName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + VYB: TcxGridDBColumn; + VBB: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + Label4: TLabel; + OrderNo: TEdit; + v2Column1: TcxGridDBColumn; + v2ZFTT: TcxGridDBColumn; + Label5: TLabel; + ComTaiTou: TEdit; + v2Column2: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column4PropertiesEditValueChanged(Sender: TObject); + procedure v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure VBBPropertiesEditValueChanged(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure v2Column1PropertiesEditValueChanged(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + private + { Private declarations } + + procedure InitGridHZ(); + procedure InitGrid(); + function SaveData():Boolean; + function SaveDataKC():Boolean; + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmSKCRLZ: TfrmSKCRLZ; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderList, U_ProductOrderNewList; + +{$R *.dfm} + + + +procedure TfrmSKCRLZ.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select A.*,C.OrderNo '); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + SQL.Add(' left join JYOrder_Main C on A.MainId=C.MainId'); + sql.Add('where A.CRTime>=:begdate and A.CRTime<:Enddate and A.CRType=''տǼ'' '); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmSKCRLZ.InitGridHZ(); +begin +end; + +procedure TfrmSKCRLZ.FormDestroy(Sender: TObject); +begin + frmSKCRLZ:=nil; +end; + +procedure TfrmSKCRLZ.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmSKCRLZ.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('տǼ',Tv2,''); + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); + ExecSQL; + end;} + Close; +end; +procedure TfrmSKCRLZ.TBDelClick(Sender: TObject); +var + FBBMoney,CRID:string; +begin + if CDS_HZ.IsEmpty then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+Trim(cds_hz.fieldbyname('YFID').AsString)+''''); + Open; + end; + FBBMoney:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('YFID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; + CRID:=Trim(CDS_HZ.fieldbyname('CRID').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where CRID='+CRID); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_KC where CRID='+CRID); + ExecSQL; + end; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmSKCRLZ.FormShow(Sender: TObject); +var + fsj:string; +begin + ReadCxGrid('տǼ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-50; + fsj:='select Name=ZdyName,code='''' from KH_Zdy where Type=''OrdDefStr2'' '; + SInitCxGridComboBoxBySql(ADOQueryTemp,v2ZFTT,fsj,0,False,''); + if Trim(DParameters1)='޶' then + begin + VOrderNo.Hidden:=True; + VOrderNo.Visible:=False; + label4.Visible:=False; + OrderNo.Visible:=False; + end; + if Trim(DParameters2)='' then + begin + VHL.Hidden:=True; + VHL.Visible:=False; + VBZ.Hidden:=True; + VBZ.Visible:=False; + VYB.Hidden:=True; + VYB.Visible:=False; + VBB.Caption:=''; + end; + InitGrid(); +end; + +procedure TfrmSKCRLZ.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmSKCRLZ.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmSKCRLZ.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmSKCRLZ.Button2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +function TfrmSKCRLZ.SaveData():Boolean; +var + maxId,CRID:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxId,'FK','YF_Money_CR',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''''); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + //SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='տǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=-1; + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('YFId').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; +function TfrmSKCRLZ.SaveDataKC():Boolean; +var + maxId,CRID:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''''); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with CDS_HZ do + begin + Edit; + FieldByName('CRID').Value:=StrToInt(CRID); + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; + +procedure TfrmSKCRLZ.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmSKCRLZ.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + //Ӧտ + if Trim(CDS_HZ.fieldbyname('MainId').AsString)<>'' then + begin + if Trim(FFieldName)='HuiLv' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set HuiLv='+FHuiLv); + sql.Add(' where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + sql.Add(' and CRType=''ӦտǼ'' '); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set BBMoney=Money*HuiLv'); + sql.Add(' where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + sql.Add(' and CRType=''ӦտǼ'' '); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_KC Set KCBBMoney='); + sql.Add('(select Sum(BBMoney*QtyFlag) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add('where CRID in( select CRID from YF_Money_CR'); + sql.Add(' where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + sql.Add(' and CRFlag=''Ӧ'' )'); + ExecSQL; + end; + end; + + end; + //Ӧտ + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + if Trim(FFieldName)<>'Money' then + begin + if Trim(FFieldName)<>'HuiLv' then + begin + FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)); + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmSKCRLZ.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmSKCRLZ.ToolButton3Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CustomerNoName'; + flagname:='Էλ'; + if Trim(DParameters4)='Էλֿ' then + MainType:='տ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('FactoryNo').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('FactoryName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + Self.SaveData(); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSKCRLZ.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFName'; + flagname:='ĿժҪ'; + if Trim(DParameters3)='Ŀֿ' then + MainType:='տ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('YFCode').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('YFName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set YFCode='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); + sql.Add(' ,YFName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSKCRLZ.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set QtyUnit='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSKCRLZ.v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BZType'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('BZType').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set BZType='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSKCRLZ.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'б'); +end; + +procedure TfrmSKCRLZ.v2Column4PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney+'+FKCBB+'-'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmSKCRLZ.v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +var + FCRID:string; +begin + try + frmProductOrderNewList:=TfrmProductOrderNewList.Create(Application); + with frmProductOrderNewList do + begin + DParameters1:='Ȩ'; + //frmProductOrderList.v1Column4.Visible:=True; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('MainId').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString); + FieldByName('OrderNo').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrderNo').AsString); + FieldByName('ComTaiTou').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrdDefStr2').AsString); + FieldByName('FactoryName').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('CustomerNoName').AsString); + FieldByName('FactoryNo').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('CustomerNo').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set MainId='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString)+''''); + SQL.Add(',ComTaiTou='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrdDefStr2').AsString)+''''); + //sql.Add(' ,SubId='''+Trim(frmProductOrderList.Order_Main.fieldbyname('SubId').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + FCRID:=CDS_HZ.fieldbyname('CRID').AsString; + SaveDataKC(); + + if Trim(CDS_HZ.fieldbyname('MainId').AsString)<>'' then + begin + if Trim(CDS_HZ.fieldbyname('HuiLv').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set HuiLv='+CDS_HZ.fieldbyname('HuiLv').AsString); + sql.Add(' where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + sql.Add(' and CRType=''ӦտǼ'' '); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set BBMoney=Money*HuiLv'); + sql.Add(' where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + sql.Add(' and CRType=''ӦտǼ'' '); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_KC Set KCBBMoney='); + sql.Add('(select Sum(BBMoney*QtyFlag) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add('where CRID in( select CRID from YF_Money_CR'); + sql.Add(' where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + sql.Add(' and CRFlag=''Ӧ'' )'); + ExecSQL; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_KC Set KCBBMoney='); + sql.Add('(select Sum(BBMoney*QtyFlag) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add('where CRID in( select CRID from YF_Money_CR'); + sql.Add(' where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + sql.Add(' and CRFlag=''Ӧ'' )'); + ExecSQL; + end; + end; + + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set '); + sql.Add(' KCBBMoney=(select Sum(BBMoney*QtyFlag) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' KCMoney=(select Sum(Money*QtyFlag) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+FCRID); + ExecSQL; + end; + if Trim(FCRID)<>Trim(Cds_HZ.fieldbyname('CRID').AsString) then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set '); + sql.Add(' KCBBMoney=(select Sum(BBMoney*QtyFlag) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' KCMoney=(select Sum(Money*QtyFlag) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+Cds_HZ.fieldbyname('CRID').AsString); + ExecSQL; + end; + end; + + end; + end; + end; + finally + frmProductOrderNewList.Free; + end; +end; + +procedure TfrmSKCRLZ.VBBPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FKCBB:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Trim(mvalue)='' then mvalue:='0'; + with CDS_HZ do + begin + Edit; + FieldByName('BBMoney').Value:=StrToFloat(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' set BBMoney='+mvalue); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney+'+FKCBB+'-'+mvalue); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmSKCRLZ.OrderNoChange(Sender: TObject); +begin + if Length(Trim(OrderNo.Text))<3 then Exit; + ToolButton2.Click; +end; + +procedure TfrmSKCRLZ.v2Column1PropertiesEditValueChanged(Sender: TObject); +var + FFieldName:String; + mvalue:Boolean; +begin + //mvalue:=TcxTextEdit(Sender).EditingText; + mvalue:=TcxCheckBox(Sender).EditingValue; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + if mvalue=True then + FieldByName('YFDefFlag1').Value:=1 + else + FieldByName('YFDefFlag1').Value:=0; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if mvalue=True then + begin + sql.Add(' Set YFDefFlag1=1'); + end else + begin + sql.Add(' Set YFDefFlag1=0'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmSKCRLZ.OrderNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(OrderNo.Text))<4 then Exit; + begdate.SetFocus; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select A.*,C.OrderNo '); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + SQL.Add(' left join JYOrder_Main C on A.MainId=C.MainId'); + sql.Add('where C.orderNo like :OrderNo'); + sql.Add('and A.CRType=''տǼ'''); + Parameters.ParamByName('OrderNo').Value:='%'+Trim(OrderNo.Text)+'%'; + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +end. diff --git a/应收应付/U_SKCROLJ.dfm b/应收应付/U_SKCROLJ.dfm new file mode 100644 index 0000000..f21189b --- /dev/null +++ b/应收应付/U_SKCROLJ.dfm @@ -0,0 +1,397 @@ +object frmSKCROLJ: TfrmSKCROLJ + Left = 188 + Top = 79 + Width = 1038 + Height = 618 + Caption = #24212#25910#27454#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1030 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton3Click + end + object TBDel: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1030 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 60 + Height = 12 + Caption = #39033#30446#21450#25688#35201 + end + object Label3: TLabel + Left = 302 + Top = 13 + Width = 48 + Height = 12 + Caption = #23545#26041#21333#20301 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 634 + Top = 13 + Width = 36 + Height = 12 + Caption = #35746#21333#21495 + end + object YFName: TEdit + Tag = 2 + Left = 528 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object FactoryName: TEdit + Left = 350 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + object OrderNo: TEdit + Tag = 2 + Left = 671 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1030 + Height = 511 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = VBB + end + item + Kind = skSum + Column = VYB + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_YSYF.FonePurple + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 115 + end + object v2Column6: TcxGridDBColumn + Caption = #23545#26041#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 100 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39033#30446#21450#25688#35201 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 146 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 71 + end + object VYB: TcxGridDBColumn + Caption = #21407#24065#37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column4PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object VBB: TcxGridDBColumn + Caption = #26412#24065#37329#39069 + DataBinding.FieldName = 'BBMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = VBBPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v2Column5: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column5PropertiesEditValueChanged + Width = 78 + end + object VOrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v2Column4: TcxGridDBColumn + Caption = #29983#20135#21333#21495 + DataBinding.FieldName = 'SCNO' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 67 + end + object v2Column1: TcxGridDBColumn + Caption = #21697#21517#27454#24335 + DataBinding.FieldName = 'PRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 68 + end + object v2Column2: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'PRTSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 67 + end + object v2Column3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 61 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_SKCROLJ.pas b/应收应付/U_SKCROLJ.pas new file mode 100644 index 0000000..e57150f --- /dev/null +++ b/应收应付/U_SKCROLJ.pas @@ -0,0 +1,832 @@ +unit U_SKCROLJ; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmSKCROLJ = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + YFName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + VYB: TcxGridDBColumn; + VBB: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + Label4: TLabel; + OrderNo: TEdit; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column4PropertiesEditValueChanged(Sender: TObject); + procedure v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure VBBPropertiesEditValueChanged(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure v2Column5PropertiesEditValueChanged(Sender: TObject); + private + { Private declarations } + + procedure InitGridHZ(); + procedure InitGrid(); + function SaveData():Boolean; + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmSKCROLJ: TfrmSKCROLJ; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderListOLJ; + +{$R *.dfm} + + + +procedure TfrmSKCROLJ.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select BB.Filler, A.* '); + sql.Add(',BB.OrderNo,BB.CustomerNoName,CC.SCNO,CC.PRTCodeName '); + sql.Add(',CC.PRTType,CC.PRTSpec,CC.PRTColor '); + sql.Add(',KHZJM=dbo.getPinYin(A.FactoryName)'); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + Sql.add(' left join JYOrder_Main BB on A.MainId=BB.MainId'); + Sql.add(' left join JYOrder_Sub CC on A.SubId=CC.SubId'); + sql.Add('where A.CRTime>=:begdate and A.CRTime<:Enddate and A.CRType=''տǼ'' '); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmSKCROLJ.InitGridHZ(); +begin +end; + +procedure TfrmSKCROLJ.FormDestroy(Sender: TObject); +begin + frmSKCROLJ:=nil; +end; + +procedure TfrmSKCROLJ.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmSKCROLJ.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('տǼ',Tv2,''); + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); + ExecSQL; + end;} + Close; +end; +procedure TfrmSKCROLJ.TBDelClick(Sender: TObject); +var + FBBMoney,CRID:string; +begin + if CDS_HZ.IsEmpty then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+Trim(cds_hz.fieldbyname('YFID').AsString)+''''); + Open; + end; + FBBMoney:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('YFID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; + CRID:=Trim(CDS_HZ.fieldbyname('CRID').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where CRID='+CRID); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_KC where CRID='+CRID); + ExecSQL; + end; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmSKCROLJ.FormShow(Sender: TObject); +begin + ReadCxGrid('տǼ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-50; + if Trim(DParameters1)='޶' then + begin + VOrderNo.Hidden:=True; + VOrderNo.Visible:=False; + label4.Visible:=False; + OrderNo.Visible:=False; + end; + if Trim(DParameters2)='' then + begin + VHL.Hidden:=True; + VHL.Visible:=False; + VBZ.Hidden:=True; + VBZ.Visible:=False; + VYB.Hidden:=True; + VYB.Visible:=False; + VBB.Caption:=''; + end; + InitGrid(); +end; + +procedure TfrmSKCROLJ.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmSKCROLJ.ToolButton2Click(Sender: TObject); +var + fsj:string; +begin + if ADOQueryMain.Active=False then Exit; + if Trim(SGetFilters(Panel1,1,2))='' then + begin + if Trim(FactoryName.Text)<>'' then + begin + fsj:=' FactoryName like '''+'%'+Trim(FactoryName.Text)+'%'+'''' + +' or KHZJM like '''+'%'+Trim(FactoryName.Text)+'%'+''''; + end; + + end else + begin + if Trim(FactoryName.Text)<>'' then + begin + fsj:=SGetFilters(Panel1,1,2)+' and (FactoryName like '''+'%'+Trim(FactoryName.Text)+'%'+'''' + +' or KHZJM like '''+'%'+Trim(FactoryName.Text)+'%'+''')'; + end; + end; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); +end; + +procedure TfrmSKCROLJ.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmSKCROLJ.Button2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +function TfrmSKCROLJ.SaveData():Boolean; +var + maxId,CRID:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxId,'FK','YF_Money_CR',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''''); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + //SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='տǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=-1; + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('YFId').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; + +procedure TfrmSKCROLJ.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmSKCROLJ.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + if Trim(FFieldName)<>'Money' then + begin + if Trim(FFieldName)<>'HuiLv' then + begin + FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)); + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmSKCROLJ.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmSKCROLJ.ToolButton3Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CustomerNoName'; + flagname:='Էλ'; + if Trim(DParameters4)='Էλֿ' then + MainType:='տ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('FactoryNo').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('FactoryName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + Self.SaveData(); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSKCROLJ.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFName'; + flagname:='ĿժҪ'; + if Trim(DParameters3)='Ŀֿ' then + MainType:='տ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('YFCode').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('YFName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set YFCode='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); + sql.Add(' ,YFName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSKCROLJ.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set QtyUnit='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSKCROLJ.v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BZType'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('BZType').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set BZType='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSKCROLJ.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'б'); +end; + +procedure TfrmSKCROLJ.v2Column4PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney+'+FKCBB+'-'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmSKCROLJ.v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmProductOrderListOLJ:=TfrmProductOrderListOLJ.Create(Application); + with frmProductOrderListOLJ do + begin + //frmProductOrderList.v1Column4.Visible:=True; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('MainId').Value:=Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('MainId').AsString); + FieldByName('OrderNo').Value:=Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('OrderNo').AsString); + FieldByName('PRTCodeName').Value:=Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('PRTCodeName').AsString); + FieldByName('Filler').Value:=Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('Filler').AsString); + FieldByName('PRTSpec').Value:=Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('Filler').AsString); + FieldByName('SCNO').Value:=Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('SCNO').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set MainId='''+Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add(' ,SubId='''+Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('SubId').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + end; + finally + frmProductOrderListOLJ.Free; + end; +end; + +procedure TfrmSKCROLJ.VBBPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FKCBB:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Trim(mvalue)='' then mvalue:='0'; + with CDS_HZ do + begin + Edit; + FieldByName('BBMoney').Value:=StrToFloat(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' set BBMoney='+mvalue); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney+'+FKCBB+'-'+mvalue); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmSKCROLJ.OrderNoChange(Sender: TObject); +begin + if Length(Trim(OrderNo.Text))<3 then Exit; + ToolButton2.Click; +end; + +procedure TfrmSKCROLJ.v2Column5PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +end. diff --git a/应收应付/U_SKCR_Gd.dfm b/应收应付/U_SKCR_Gd.dfm new file mode 100644 index 0000000..b843ac4 --- /dev/null +++ b/应收应付/U_SKCR_Gd.dfm @@ -0,0 +1,363 @@ +object frmSKCR_Gd: TfrmSKCR_Gd + Left = 357 + Top = 110 + Width = 1038 + Height = 618 + Caption = #25910#27454#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1030 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton3Click + end + object TBDel: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1030 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 60 + Height = 12 + Caption = #39033#30446#21450#25688#35201 + end + object Label3: TLabel + Left = 302 + Top = 13 + Width = 48 + Height = 12 + Caption = #23545#26041#21333#20301 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 634 + Top = 13 + Width = 36 + Height = 12 + Caption = #35746#21333#21495 + end + object YFName: TEdit + Tag = 2 + Left = 528 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object FactoryName: TEdit + Tag = 2 + Left = 350 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + object OrderNo: TEdit + Tag = 2 + Left = 671 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1030 + Height = 514 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = VBB + end + item + Kind = skSum + Column = VYB + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_YSYF.FonePurple + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 115 + end + object v2Column6: TcxGridDBColumn + Caption = #23545#26041#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 100 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39033#30446#21450#25688#35201 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 146 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 71 + end + object VYB: TcxGridDBColumn + Caption = #21407#24065#37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column4PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object VBB: TcxGridDBColumn + Caption = #26412#24065#37329#39069 + DataBinding.FieldName = 'BBMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = VBBPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 65 + end + object VOrderNo: TcxGridDBColumn + Caption = #20986#24211#21333 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 73 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_SKCR_Gd.pas b/应收应付/U_SKCR_Gd.pas new file mode 100644 index 0000000..e7d5c1f --- /dev/null +++ b/应收应付/U_SKCR_Gd.pas @@ -0,0 +1,780 @@ +unit U_SKCR_Gd; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmSKCR_Gd = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + YFName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + VYB: TcxGridDBColumn; + VBB: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + Label4: TLabel; + OrderNo: TEdit; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column4PropertiesEditValueChanged(Sender: TObject); + procedure v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure VBBPropertiesEditValueChanged(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + private + { Private declarations } + + procedure InitGridHZ(); + procedure InitGrid(); + function SaveData():Boolean; + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmSKCR_Gd: TfrmSKCR_Gd; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderList, U_ProductOrderNewList; + +{$R *.dfm} + + + +procedure TfrmSKCR_Gd.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select A.*,C.CRNO '); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + SQL.Add(' left join BP_InOut C on A.MainId=C.CRNO and C.CRID=A.subID'); + sql.Add('where A.CRTime>=:begdate and A.CRTime<:Enddate and A.CRType=''տǼ'' and A.YFDefFlag1=1 '); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmSKCR_Gd.InitGridHZ(); +begin +end; + +procedure TfrmSKCR_Gd.FormDestroy(Sender: TObject); +begin + frmSKCR_Gd:=nil; +end; + +procedure TfrmSKCR_Gd.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmSKCR_Gd.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('տǼ',Tv2,''); + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); + ExecSQL; + end;} + Close; +end; +procedure TfrmSKCR_Gd.TBDelClick(Sender: TObject); +var + FBBMoney,CRID:string; +begin + if CDS_HZ.IsEmpty then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+Trim(cds_hz.fieldbyname('YFID').AsString)+''''); + Open; + end; + FBBMoney:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('YFID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; + CRID:=Trim(CDS_HZ.fieldbyname('CRID').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where CRID='+CRID); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_KC where CRID='+CRID); + ExecSQL; + end; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmSKCR_Gd.FormShow(Sender: TObject); +begin + ReadCxGrid('տǼ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-50; + if Trim(DParameters1)='޶' then + begin + VOrderNo.Hidden:=True; + VOrderNo.Visible:=False; + label4.Visible:=False; + OrderNo.Visible:=False; + end; + if Trim(DParameters2)='' then + begin + VHL.Hidden:=True; + VHL.Visible:=False; + VBZ.Hidden:=True; + VBZ.Visible:=False; + VYB.Hidden:=True; + VYB.Visible:=False; + VBB.Caption:=''; + end; + InitGrid(); +end; + +procedure TfrmSKCR_Gd.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmSKCR_Gd.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmSKCR_Gd.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmSKCR_Gd.Button2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +function TfrmSKCR_Gd.SaveData():Boolean; +var + maxId,CRID:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxId,'FK','YF_Money_CR',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''' and YFDefFlag1=1'); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + FieldByName('YFDefFlag1').Value:=1; + Post; + end; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + //SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='տǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=-1; + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + FieldByName('YFDefFlag1').Value:=1; + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('YFId').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; + +procedure TfrmSKCR_Gd.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmSKCR_Gd.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + if Trim(FFieldName)<>'Money' then + begin + if Trim(FFieldName)<>'HuiLv' then + begin + FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)); + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmSKCR_Gd.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmSKCR_Gd.ToolButton3Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='GDCustFlag'; + flagname:='Էλ'; + if Trim(DParameters4)='Էλֿ' then + MainType:='տ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('FactoryNo').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('FactoryName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + Self.SaveData(); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSKCR_Gd.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFName'; + flagname:='ĿժҪ'; + if Trim(DParameters3)='Ŀֿ' then + MainType:='տ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('YFCode').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('YFName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set YFCode='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); + sql.Add(' ,YFName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSKCR_Gd.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set QtyUnit='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSKCR_Gd.v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BZType'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('BZType').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set BZType='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSKCR_Gd.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'б'); +end; + +procedure TfrmSKCR_Gd.v2Column4PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney+'+FKCBB+'-'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmSKCR_Gd.v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmProductOrderNewList:=TfrmProductOrderNewList.Create(Application); + with frmProductOrderNewList do + begin + DParameters1:='Ȩ'; + //frmProductOrderList.v1Column4.Visible:=True; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('MainId').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString); + FieldByName('OrderNo').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrderNo').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set MainId='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString)+''''); + //sql.Add(' ,SubId='''+Trim(frmProductOrderList.Order_Main.fieldbyname('SubId').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + end; + finally + frmProductOrderNewList.Free; + end; +end; + +procedure TfrmSKCR_Gd.VBBPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FKCBB:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Trim(mvalue)='' then mvalue:='0'; + with CDS_HZ do + begin + Edit; + FieldByName('BBMoney').Value:=StrToFloat(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' set BBMoney='+mvalue); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney+'+FKCBB+'-'+mvalue); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmSKCR_Gd.OrderNoChange(Sender: TObject); +begin + if Length(Trim(OrderNo.Text))<3 then Exit; + ToolButton2.Click; +end; + +end. diff --git a/应收应付/U_SXCKNewList.dfm b/应收应付/U_SXCKNewList.dfm new file mode 100644 index 0000000..9b1b21a --- /dev/null +++ b/应收应付/U_SXCKNewList.dfm @@ -0,0 +1,629 @@ +object frmSXCKNewList: TfrmSXCKNewList + Left = 344 + Top = 144 + Width = 1357 + Height = 851 + Caption = #24212#20184#27454#29983#25104#20449#24687#21015#34920 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1793 + 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_YSYF.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + Caption = #30830#23450 + ImageIndex = 41 + OnClick = ToolButton1Click + end + object TBExport: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 62 + OnClick = TBExportClick + end + object TBClose: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1793 + Height = 61 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 28 + Top = 12 + Width = 48 + Height = 12 + Caption = #26597#35810#26102#38388 + end + object Label2: TLabel + Left = 64 + Top = 36 + Width = 12 + Height = 12 + Caption = #33267 + end + object Label3: TLabel + Left = 351 + Top = 12 + Width = 24 + Height = 12 + Caption = #21697#21517 + end + object Label4: TLabel + Left = 492 + Top = 12 + Width = 78 + Height = 12 + Caption = #20379#24212#21830'/'#21152#24037#21378 + end + object Label5: TLabel + Left = 178 + Top = 12 + Width = 48 + Height = 12 + Caption = #20837#24211#21333#21495 + end + object Label8: TLabel + Left = 351 + Top = 36 + Width = 24 + Height = 12 + Caption = #35268#26684 + end + object Label12: TLabel + Left = 179 + Top = 36 + Width = 48 + Height = 12 + Caption = #20837#24211#31867#22411 + end + object Label6: TLabel + Left = 492 + Top = 36 + Width = 60 + Height = 12 + Caption = #25104' '#20998 + end + object Label7: TLabel + Left = 664 + Top = 12 + Width = 48 + Height = 12 + Caption = #25351#31034#21333#21495 + end + object Label9: TLabel + Left = 664 + Top = 36 + Width = 48 + Height = 12 + Caption = #25152#23646#31867#22411 + Visible = False + end + object BegDate: TDateTimePicker + Left = 77 + Top = 9 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 77 + Top = 32 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 1 + end + object P_CodeName: TEdit + Tag = 2 + Left = 378 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = TBFindClick + end + object FactoryName: TEdit + Tag = 2 + Left = 572 + Top = 9 + Width = 78 + Height = 20 + TabOrder = 3 + OnChange = FactoryNameChange + end + object crno: TEdit + Tag = 2 + Left = 228 + Top = 9 + Width = 109 + Height = 20 + TabOrder = 4 + OnChange = crnoChange + OnKeyPress = crnoKeyPress + end + object P_Spec: TEdit + Tag = 2 + Left = 378 + Top = 32 + Width = 100 + Height = 20 + TabOrder = 5 + OnChange = P_SpecChange + end + object P_CF: TEdit + Tag = 2 + Left = 572 + Top = 32 + Width = 78 + Height = 20 + TabOrder = 6 + OnChange = FactoryNameChange + end + object OrderNo: TEdit + Tag = 2 + Left = 713 + Top = 9 + Width = 108 + Height = 20 + TabOrder = 7 + OnChange = FactoryNameChange + end + object SSType: TComboBox + Tag = 2 + Left = 713 + Top = 32 + Width = 109 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 8 + Visible = False + OnChange = TBFindClick + Items.Strings = ( + #33258#24049 + #23458#25143 + '') + end + object CRType: TEdit + Tag = 2 + Left = 228 + Top = 32 + Width = 109 + Height = 20 + TabOrder = 9 + OnChange = FactoryNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 114 + Width = 1793 + Height = 865 + Align = alClient + PopupMenu = PopupMenu1 + TabOrder = 2 + object Tv1: TcxGridDBTableView + OnMouseDown = Tv1MouseDown + Navigator.Buttons.CustomButtons = <> + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + 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 + OptionsView.Indicator = True + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.Header = DataLink_YSYF.Default + object v1Column17: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'Ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column6: TcxGridDBColumn + Caption = #20986'/'#20837#24211#21333#21495 + DataBinding.FieldName = 'crno' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 83 + end + object v1Column2: TcxGridDBColumn + Tag = 2 + Caption = #20986'/'#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 = #20986'/'#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 = #25351#31034#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 95 + end + object v1Column14: TcxGridDBColumn + Tag = 2 + Caption = #22383#24067#20379#24212#21830'/'#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 = 165 + end + object v2Column1: TcxGridDBColumn + Tag = 2 + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + 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 = 'P_Spec' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Editing = False + Width = 68 + end + object v1Column7: TcxGridDBColumn + Tag = 2 + Caption = #25104#20998 + DataBinding.FieldName = 'P_CF' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Editing = False + Width = 73 + end + object v1Column1: TcxGridDBColumn + Tag = 2 + Caption = #38376#24133 + DataBinding.FieldName = 'P_MF' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 73 + end + object v1Column10: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'P_KZ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + 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 v1Column9: TcxGridDBColumn + Tag = 2 + Caption = #21305#25968 + DataBinding.FieldName = 'PiQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 67 + end + object v2Column6: TcxGridDBColumn + Tag = 2 + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + 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' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 79 + end + object v1Column5: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 50 + end + object v1Column16: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'Money' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 50 + end + object v1Column19: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'P_code' + HeaderAlignmentHorz = taCenter + Width = 75 + end + object Tv1Column1: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'KHnmae' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column2: TcxGridDBColumn + Caption = #35009#21098#21333#20215 + DataBinding.FieldName = 'CBCjf' + end + object Tv1Column3: TcxGridDBColumn + Caption = #32541#32427#21333#20215 + DataBinding.FieldName = 'CBfrf' + end + object Tv1Column4: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object Tv1Column6: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'P_code' + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 94 + Width = 1793 + Height = 20 + Align = alTop + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 3 + Properties.CustomButtons.Buttons = <> + Properties.Style = 9 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + #26410#29983#25104 + #24050#29983#25104) + OnChange = cxTabControl1Change + ClientRectRight = 0 + ClientRectTop = 0 + end + object GroupBox1: TGroupBox + Left = 1500 + Top = 704 + Width = 293 + Height = 275 + TabOrder = 4 + object Picture4: TcxDBImage + Left = 2 + Top = 14 + Hint = 'FileName' + Align = alClient + DataBinding.DataField = 'FilesOther' + DataBinding.DataSource = DSImage + Properties.GraphicClassName = 'TdxSmartImage' + Properties.GraphicTransparency = gtTransparent + Properties.ReadOnly = True + Properties.ShowFocusRect = False + Style.BorderStyle = ebsSingle + TabOrder = 0 + Height = 259 + Width = 289 + end + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 992 + Top = 64 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 952 + Top = 72 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1032 + Top = 56 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 928 + Top = 152 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 864 + Top = 152 + 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 + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 992 + Top = 160 + end + object ADOQueryImage: TADOQuery + Connection = DataLink_YSYF.ADOLink + EnableBCD = False + Parameters = <> + Left = 848 + Top = 315 + end + object DSImage: TDataSource + DataSet = ADOQueryImage + Left = 908 + Top = 308 + end +end diff --git a/应收应付/U_SXCKNewList.pas b/应收应付/U_SXCKNewList.pas new file mode 100644 index 0000000..d341a19 --- /dev/null +++ b/应收应付/U_SXCKNewList.pas @@ -0,0 +1,497 @@ +unit U_SXCKNewList; + +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, cxPC, + cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu, + cxContainer, cxImage, cxDBEdit; + +type + TfrmSXCKNewList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBExport: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label1: TLabel; + Label2: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + CDS_Main: TClientDataSet; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + Label3: TLabel; + Label4: TLabel; + Label5: TLabel; + Label8: TLabel; + Label12: TLabel; + P_CodeName: TEdit; + FactoryName: TEdit; + crno: TEdit; + P_Spec: TEdit; + Label6: TLabel; + P_CF: TEdit; + Label7: TLabel; + OrderNo: TEdit; + 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; + Label9: TLabel; + SSType: TComboBox; + v1Column17: TcxGridDBColumn; + ToolButton1: TToolButton; + cxTabControl1: TcxTabControl; + cxGridPopupMenu1: TcxGridPopupMenu; + CRType: TEdit; + v1Column5: TcxGridDBColumn; + v1Column16: TcxGridDBColumn; + v1Column19: TcxGridDBColumn; + Tv1Column1: TcxGridDBColumn; + GroupBox1: TGroupBox; + Picture4: TcxDBImage; + ADOQueryImage: TADOQuery; + DSImage: TDataSource; + Tv1Column2: TcxGridDBColumn; + Tv1Column3: TcxGridDBColumn; + Tv1Column4: TcxGridDBColumn; + Tv1Column6: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure crnoKeyPress(Sender: TObject; var Key: Char); + procedure crnoChange(Sender: TObject); + procedure P_SpecChange(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + private + canshu1, canshu2: string; + procedure InitGrid(); + procedure SetStatus(); + function YFData(): Boolean; + procedure InitImage(P_code: string); + { Private declarations } + public + { Public declarations } + end; + +var + frmSXCKNewList: TfrmSXCKNewList; + +implementation + +uses + U_DataLink, U_Fun; + +{$R *.dfm} +function TfrmSXCKNewList.YFData(): Boolean; +var + CRID, YFID: string; +begin + Result := False; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_CR where FactoryName=''' + Trim(CDS_Main.fieldbyname('factoryName').AsString) + ''' '); +// sql.Add('select * from YF_Money_KC where FactoryName='''+ quotedstr(Trim(CDS_Main.fieldbyname('factoryName').AsString))+''' '); +// showmessage(SQL.Text); + Open; + end; + if ADOQueryTemp.IsEmpty = False then + begin + CRID := ADOQueryTemp.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID := ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('FactoryName').Value := Trim(CDS_Main.fieldbyname('factoryName').AsString); + FieldByName('ZdyStr1').Value := 'Ӧ'; + Post; + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where FactoryName=''' + Trim(CDS_Main.fieldbyname('factoryName').AsString) + ''' '); +// + quotedstr(Trim(CDS_Main.fieldbyname('factoryName').AsString))); + sql.Add(' and mainID=''' + Trim(CDS_Main.fieldbyname('crno').AsString) + ''' and yfname not in('''',''ӹ'',''첼'',''Ʒ'')'); + sql.Add(' and P_color=''' + Trim(CDS_Main.fieldbyname('P_color').AsString) + ''''); + sql.Add(' and P_code=''' + Trim(CDS_Main.fieldbyname('P_code').AsString) + ''''); +// ShowMessage(sql.Text); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd, YFID, 'YF', 'YF_Money_CR', 3, 1) = False then + begin + Application.MessageBox('ȡӦˮʧ!', 'ʾ', 0); + Exit; + end; + end + else + begin + YFID := Trim(ADOQueryTemp.fieldbyname('YFID').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where YFID=''' + Trim(YFID) + ''''); + Open; + end; + with ADOQueryCmd do + begin + if ADOQueryTemp.IsEmpty then + Append + else + Edit; + FieldByName('YFID').Value := Trim(YFID); + FieldByName('YFTypeId').Value := Trim(CDS_Main.fieldbyname('crno').AsString); + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('CRType').Value := 'ӦǼ'; + FieldByName('CRFlag').Value := 'Ӧ'; + FieldByName('QtyFlag').Value := 1; + FieldByName('FactoryName').Value := Trim(CDS_Main.fieldbyname('factoryName').AsString); +// FieldByName('ToFactoryName').Value := Trim(CDS_Main.fieldbyname('TofactoryName').AsString); + FieldByName('CRTime').Value := CDS_Main.fieldbyname('CRTime').AsDateTime; + FieldByName('Qty').Value := CDS_Main.fieldbyname('Qty').AsFloat; + FieldByName('CJQty').Value := CDS_Main.fieldbyname('Qty').AsFloat; +// FieldByName('Qty').Value := CDS_Main.fieldbyname('Qty').AsFloat * CDS_Main.fieldbyname('CRQtyFlag').AsFloat; +// FieldByName('MDQty').Value := CDS_Main.fieldbyname('Qty').AsFloat * CDS_Main.fieldbyname('CRQtyFlag').AsFloat; +// FieldByName('machi').Value := 1; + FieldByName('PS').Value := CDS_Main.fieldbyname('piqty').AsFloat; +// FieldByName('PS').Value := CDS_Main.fieldbyname('rollnum').AsFloat * CDS_Main.fieldbyname('CRQtyFlag').AsFloat; + FieldByName('YFType').Value := 'Զ'; + FieldByName('Price').Value := CDS_Main.fieldbyname('Price').AsFloat; + FieldByName('CJPrice').Value := CDS_Main.fieldbyname('CBCJf').AsFloat; + FieldByName('FRPrice').Value := CDS_Main.fieldbyname('CBfrf').AsFloat; + FieldByName('money').Value := CDS_Main.fieldbyname('Money').AsFloat; + FieldByName('BBmoney').Value := CDS_Main.fieldbyname('Money').AsFloat; + FieldByName('HuiLv').Value := 1; +// if Trim(CDS_Main.FieldByName('BZType').AsString) = '$' then +// FieldByName('BZType').Value := 'USD' +// else +// FieldByName('BZType').Value := 'RMB'; + FieldByName('ComTaiTou').Value := ''; + FieldByName('QtyUnit').Value := Trim(CDS_Main.fieldbyname('QtyUnit').AsString); +// FieldByName('orderNo').Value := Trim(CDS_Main.fieldbyname('OrderNo').AsString); + FieldByName('P_CodeName').Value := Trim(CDS_Main.fieldbyname('P_codeName').AsString); + FieldByName('P_Color').Value := Trim(CDS_Main.fieldbyname('P_Color').AsString); + FieldByName('YFName').Value := Trim(CDS_Main.fieldbyname('FeeName').AsString); + FieldByName('Price').Value := Trim(CDS_Main.fieldbyname('Price').AsString); + FieldByName('Money').Value := Trim(CDS_Main.fieldbyname('Money').AsString); +// fieldbyname('quality').Value := Trim(CDS_Main.fieldbyname('quality').AsString); + fieldbyname('P_Code').Value := Trim(CDS_Main.fieldbyname('p_code').AsString); + fieldbyname('Note').Value := Trim(CDS_Main.fieldbyname('Note').AsString); + FieldByName('MainId').Value := Trim(CDS_Main.fieldbyname('crno').AsString); +// FieldByName('Subid').Value := Trim(CDS_Main.fieldbyname('crid').AsString); +// FieldByName('FPNo').Value:=Trim(CDS_Main.fieldbyname('FPNo').AsString); + FieldByName('status').Value := '0'; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID=' + CRID); + ExecSQL; + end; + Result := True; +end; + +procedure TfrmSXCKNewList.FormDestroy(Sender: TObject); +begin + frmSXCKNewList := nil; +end; + +procedure TfrmSXCKNewList.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmSXCKNewList.FormCreate(Sender: TObject); +begin + //cxGrid1.Align:=alClient; + EndDate.DateTime := SGetServerDate10(ADOQueryTemp); + BegDate.DateTime := EndDate.DateTime - 10; + canshu1 := Trim(DParameters1); + canshu2 := Trim(DParameters2); +end; + +procedure TfrmSXCKNewList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + sql.Clear; + SQL.Add('exec P_Get_YFYSList_c2'); + SQL.Add('@begdate=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.DateTime)) + ''' '); + SQL.Add(',@enddate=''' + Trim(FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1)) + ''' '); + if cxTabControl1.TabIndex = 0 then + SQL.Add(',@Flag=0') + else + SQL.Add(',@Flag=1'); + Open; + // ShowMessage(SQL.Text); + end; + SCreateCDS20(ADOQueryMain, CDS_Main); + SInitCDSData20(ADOQueryMain, CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmSXCKNewList.TBRafreshClick(Sender: TObject); +begin + BegDate.SetFocus; + InitGrid(); +end; + +procedure TfrmSXCKNewList.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); + end; +end; + +procedure TfrmSXCKNewList.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption, Tv1, 'ֿ'); + Close; +end; + +procedure TfrmSXCKNewList.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption, Tv1, 'ֿ'); + SetStatus(); +end; + +procedure TfrmSXCKNewList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then + exit; + TcxGridToExcel('б', cxGrid2); +end; + +procedure TfrmSXCKNewList.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 TfrmSXCKNewList.N1Click(Sender: TObject); +begin + SelOKNo(CDS_Main, True); +end; + +procedure TfrmSXCKNewList.N2Click(Sender: TObject); +begin + SelOKNo(CDS_Main, False); +end; + +procedure TfrmSXCKNewList.crnoKeyPress(Sender: TObject; var Key: Char); +begin + if Key = #13 then + begin + {if Length(Trim(SPID.Text))<4 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' select A.* '); + sql.Add(',ConNo=(select ConNo from Contract_Main CM where CM.MainId=A.CGMainId)'); + //sql.Add(' ,ConNo=(select ConNo from Contract_Main CM where CM.MainId=A.CGMainId )'); + sql.Add(' from CK_SXPB_CR A'); + sql.add(' where SPID like :SXID'); + Parameters.ParamByName('SXID').Value:='%'+Trim(SXID.Text)+'%'; + Open; + //ShowMessage(SQL.Text); + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; } + end; +end; + +procedure TfrmSXCKNewList.crnoChange(Sender: TObject); +begin + if Length(Trim(crno.Text)) < 4 then + begin + if Trim(crno.Text) <> '' then + Exit; + end; + TBFind.Click; +end; + +procedure TfrmSXCKNewList.P_SpecChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmSXCKNewList.FactoryNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmSXCKNewList.ToolButton1Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then + exit; + if not CDS_Main.Locate('ssel', true, []) then + begin + application.MessageBox('ûѡݣ', 'ʾϢ', 0); + exit; + end; + ADOQueryCmd.Connection.BeginTrans; + try + with CDS_Main do + begin + DisableControls; + first; + while not eof do + begin + if fieldbyname('ssel').AsBoolean then + begin + if not YFData() then + begin + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('Ӧʧܣ', 'ʾϢ', 0); + end; + end; + next; + end; + EnableControls; + end; + ADOQueryCmd.Connection.CommitTrans; + + application.MessageBox('Ӧɹ', 'ʾϢ'); + initGrid(); + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('Ӧʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmSXCKNewList.cxTabControl1Change(Sender: TObject); +begin + INITGrid(); + SetStatus(); +end; + +procedure TfrmSXCKNewList.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + if Button = mbright then + +end; + +procedure TfrmSXCKNewList.SetStatus(); +begin + if cxTabControl1.TabIndex = 0 then + begin + ToolButton1.Visible := True; + end + else + begin + ToolButton1.Visible := False; + end; +end; + +procedure TfrmSXCKNewList.Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + initImage(CDS_Main.fieldbyname('P_code').AsString); +end; + +procedure TfrmSXCKNewList.InitImage(P_code: string); +begin + ADOQueryImage.close; + if P_code = '' then + exit; + with ADOQueryImage do + begin + close; + sql.Clear; + sql.Add('select * from TP_File A'); + sql.Add('where TFID=' + quotedstr(trim(P_code))); +// ShowMessage(sql.Text); + open; + end; +end; + +end. + diff --git a/应收应付/U_YFCR.dfm b/应收应付/U_YFCR.dfm new file mode 100644 index 0000000..8027ed8 --- /dev/null +++ b/应收应付/U_YFCR.dfm @@ -0,0 +1,812 @@ +object frmYFCR: TfrmYFCR + Left = 373 + Top = 162 + Width = 1390 + Height = 867 + Caption = #24212#20184#27454#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1641 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 119 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton5: TToolButton + Left = 126 + Top = 0 + Caption = #33258#21160#29983#25104 + ImageIndex = 16 + OnClick = ToolButton5Click + end + object ToolButton6: TToolButton + Left = 245 + Top = 0 + Caption = #21592#24037#24037#20215#23545#36134#21333 + ImageIndex = 49 + OnClick = ToolButton6Click + end + object ToolButton3: TToolButton + Left = 364 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton3Click + end + object TBDel: TToolButton + Left = 427 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton4: TToolButton + Left = 490 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 44 + OnClick = ToolButton4Click + end + object Tchk: TToolButton + Left = 553 + Top = 0 + AutoSize = True + Caption = #23457#26680 + ImageIndex = 41 + OnClick = TchkClick + end + object TnoChk: TToolButton + Left = 616 + Top = 0 + AutoSize = True + Caption = #25764#38144#23457#26680 + Enabled = False + ImageIndex = 56 + OnClick = TnoChkClick + end + object ToolButton1: TToolButton + Left = 703 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object Thx: TToolButton + Left = 766 + Top = 0 + Caption = #26680#38144 + ImageIndex = 4 + Visible = False + OnClick = ThxClick + end + object Tnosh: TToolButton + Left = 885 + Top = 0 + Caption = #25764#38144#23457#26680 + ImageIndex = 7 + Visible = False + OnClick = TnoshClick + end + object TBClose: TToolButton + Left = 1004 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1641 + Height = 78 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 234 + Top = 37 + Width = 48 + Height = 12 + Caption = #36153#29992#31867#21035 + end + object Label3: TLabel + Left = 234 + Top = 13 + Width = 48 + Height = 12 + Caption = #23545#26041#21333#20301 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 60 + Top = 33 + Width = 12 + Height = 12 + Caption = #33267 + end + object Label4: TLabel + Left = 450 + Top = 13 + Width = 24 + Height = 12 + Caption = #21697#21517 + end + object Label5: TLabel + Left = 450 + Top = 37 + Width = 24 + Height = 12 + Caption = #39068#33394 + end + object Label7: TLabel + Left = 963 + Top = 16 + Width = 24 + Height = 12 + Caption = #21333#20215 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label8: TLabel + Left = 581 + Top = 16 + Width = 48 + Height = 12 + Caption = #32541#32427#21333#20215 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label9: TLabel + Left = 581 + Top = 43 + Width = 48 + Height = 12 + Caption = #35009#21098#21333#20215 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label10: TLabel + Left = 769 + Top = 16 + Width = 48 + Height = 12 + Caption = #32541#32427#25968#37327 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label11: TLabel + Left = 769 + Top = 43 + Width = 48 + Height = 12 + Caption = #35009#21098#25968#37327 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object FactoryName: TEdit + Tag = 2 + Left = 282 + Top = 9 + Width = 90 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 1 + end + object Enddate: TDateTimePicker + Left = 72 + Top = 29 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object P_CodeName: TEdit + Tag = 2 + Left = 476 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 3 + OnChange = FactoryNameChange + end + object P_Color: TEdit + Tag = 2 + Left = 476 + Top = 33 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = FactoryNameChange + end + object Edit1: TEdit + Left = 991 + Top = 12 + Width = 65 + Height = 20 + TabOrder = 5 + end + object Button1: TButton + Left = 1059 + Top = 12 + Width = 49 + Height = 21 + Caption = #30830#23450 + TabOrder = 6 + OnClick = Button1Click + end + object CheckBox1: TCheckBox + Left = 24 + Top = 56 + Width = 97 + Height = 17 + Caption = #20840#36873 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 7 + OnClick = CheckBox1Click + end + object YFName: TComboBox + Tag = 2 + Left = 282 + Top = 32 + Width = 90 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 8 + OnChange = FactoryNameChange + Items.Strings = ( + #37319#36141#36153 + #21152#24037#36153 + '' + '') + end + object Edit2: TEdit + Left = 628 + Top = 12 + Width = 65 + Height = 20 + TabOrder = 9 + end + object Button2: TButton + Left = 1096 + Top = 36 + Width = 49 + Height = 21 + Caption = #30830#23450 + TabOrder = 10 + Visible = False + OnClick = Button2Click + end + object Edit3: TEdit + Left = 632 + Top = 40 + Width = 65 + Height = 20 + TabOrder = 11 + end + object Button3: TButton + Left = 700 + Top = 40 + Width = 49 + Height = 21 + Caption = #30830#23450 + TabOrder = 12 + OnClick = Button3Click + end + object Button4: TButton + Left = 700 + Top = 12 + Width = 49 + Height = 21 + Caption = #30830#23450 + TabOrder = 13 + OnClick = Button4Click + end + object Edit4: TEdit + Left = 816 + Top = 12 + Width = 65 + Height = 20 + TabOrder = 14 + Visible = False + end + object Edit5: TEdit + Left = 820 + Top = 40 + Width = 65 + Height = 20 + TabOrder = 15 + Visible = False + end + object Button5: TButton + Left = 888 + Top = 40 + Width = 49 + Height = 21 + Caption = #30830#23450 + TabOrder = 16 + Visible = False + end + object Button6: TButton + Left = 888 + Top = 12 + Width = 49 + Height = 21 + Caption = #30830#23450 + TabOrder = 17 + Visible = False + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 131 + Width = 1641 + Height = 820 + Align = alClient + TabOrder = 2 + LookAndFeel.NativeStyle = False + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnFocusedRecordChanged = Tv2FocusedRecordChanged + DataController.DataSource = DS_HZ + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + Column = VBB + end + item + Kind = skSum + Column = VYB + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v2Column2 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_YSYF.Default + object v2ssel: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 50 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 101 + end + object v2Column6: TcxGridDBColumn + Caption = #23545#26041#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 100 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #36153#29992#31867#21035 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 140 + end + object v2PayMent: TcxGridDBColumn + Caption = #25903#20184#26041#24335 + DataBinding.FieldName = 'PayMent' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2PayMentPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v2Column2: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'ps' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 60 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #32541#32427#25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 82 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn6PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v2Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 72 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 71 + end + object VYB: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object VBB: TcxGridDBColumn + Caption = #26412#24065#37329#39069 + DataBinding.FieldName = 'BBMoney' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object VOrderNo: TcxGridDBColumn + Caption = #20837#24211#21333#21495 + DataBinding.FieldName = 'mainID' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column7PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 85 + end + object v2C_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object Tv2Column1: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'P_code' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object v2Column4: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v2Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2BatchNoPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 59 + end + object v2Column3: TcxGridDBColumn + Caption = #23457#26680#26085#26399 + DataBinding.FieldName = 'chkTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ReadOnly = True + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 75 + end + object Tv2Column2: TcxGridDBColumn + Caption = #35009#21098#21333#20215 + DataBinding.FieldName = 'CJPrice' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = Tv2Column2PropertiesEditValueChanged + end + object Tv2Column3: TcxGridDBColumn + Caption = #32541#32427#21333#20215 + DataBinding.FieldName = 'FRPrice' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = Tv2Column3PropertiesEditValueChanged + end + object Tv2Column4: TcxGridDBColumn + Caption = #35009#21098#25968#37327 + DataBinding.FieldName = 'CJQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = Tv2Column4PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 109 + Width = 1641 + Height = 22 + Align = alTop + TabOrder = 3 + Properties.CustomButtons.Buttons = <> + Properties.Style = 9 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + #26410#23457#26680 + #24050#23457#26680 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectBottom = 22 + ClientRectRight = 1641 + ClientRectTop = 19 + end + object GroupBox1: TGroupBox + Left = 1348 + Top = 676 + Width = 293 + Height = 275 + TabOrder = 4 + object Picture4: TcxDBImage + Left = 2 + Top = 14 + Hint = 'FileName' + Align = alClient + DataBinding.DataField = 'FilesOther' + DataBinding.DataSource = DSImage + Properties.GraphicClassName = 'TdxSmartImage' + Properties.GraphicTransparency = gtTransparent + Properties.ReadOnly = True + Properties.ShowFocusRect = False + Style.BorderStyle = ebsSingle + TabOrder = 0 + Height = 259 + Width = 289 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end + object cxStyleRepository1: TcxStyleRepository + PixelsPerInch = 96 + object cxStyle1: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -11 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + end + object ADOQueryImage: TADOQuery + Connection = DataLink_YSYF.ADOLink + EnableBCD = False + Parameters = <> + Left = 848 + Top = 315 + end + object DSImage: TDataSource + DataSet = ADOQueryImage + Left = 908 + Top = 308 + end +end diff --git a/应收应付/U_YFCR.pas b/应收应付/U_YFCR.pas new file mode 100644 index 0000000..ae53c9d --- /dev/null +++ b/应收应付/U_YFCR.pas @@ -0,0 +1,1538 @@ +unit U_YFCR; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls, + cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, + cxTextEdit, cxPC, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, + dxBarBuiltInMenu, cxContainer, cxImage, cxDBEdit; + +type + TfrmYFCR = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column1: TcxGridDBColumn; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + VYB: TcxGridDBColumn; + VBB: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + v2PayMent: TcxGridDBColumn; + v2Note: TcxGridDBColumn; + v2C_CodeName: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2ssel: TcxGridDBColumn; + P_CodeName: TEdit; + Label4: TLabel; + Label5: TLabel; + P_Color: TEdit; + Edit1: TEdit; + Label7: TLabel; + Button1: TButton; + CheckBox1: TCheckBox; + YFName: TComboBox; + ToolButton4: TToolButton; + cxTabControl1: TcxTabControl; + Tchk: TToolButton; + TnoChk: TToolButton; + v2Column3: TcxGridDBColumn; + Thx: TToolButton; + Tnosh: TToolButton; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + ToolButton5: TToolButton; + Tv2Column1: TcxGridDBColumn; + GroupBox1: TGroupBox; + Picture4: TcxDBImage; + ADOQueryImage: TADOQuery; + DSImage: TDataSource; + ToolButton6: TToolButton; + Tv2Column2: TcxGridDBColumn; + Tv2Column3: TcxGridDBColumn; + Label8: TLabel; + Edit2: TEdit; + Button2: TButton; + Label9: TLabel; + Edit3: TEdit; + Button3: TButton; + Button4: TButton; + Tv2Column4: TcxGridDBColumn; + Label10: TLabel; + Label11: TLabel; + Edit4: TEdit; + Edit5: TEdit; + Button5: TButton; + Button6: TButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v2Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column7PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure v2PSPropertiesEditValueChanged(Sender: TObject); + procedure v2BatchNoPropertiesEditValueChanged(Sender: TObject); + procedure v2PayMentPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v2T_qtyPropertiesEditValueChanged(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure v2T_PricePropertiesEditValueChanged(Sender: TObject); + procedure TchkClick(Sender: TObject); + procedure TnochkClick(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure ThxClick(Sender: TObject); + procedure TnoshClick(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure ToolButton6Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure Tv2Column4PropertiesEditValueChanged(Sender: TObject); + procedure Tv2Column3PropertiesEditValueChanged(Sender: TObject); + procedure Tv2Column2PropertiesEditValueChanged(Sender: TObject); + private + { Private declarations } + procedure InitImage(P_code: string); + procedure InitGridHZ(); + procedure InitGrid(); + function SaveData(): Boolean; + public + fFlag: integer; + { Public declarations } + RKFlag, FCYID, fmanage: string; + end; + +var + frmYFCR: TfrmYFCR; + +implementation + +uses + U_DataLink, U_Fun, U_ZDYHelp, U_ProductOrderList, U_ProductOrderNewList, + U_YSYGGJList, U_PbProductList, U_ZdyAttachGYS, U_ZdyAttachment, U_SXCKNewList; + +{$R *.dfm} + +procedure TfrmYFCR.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + SQL.Clear; + Filtered := False; +// sql.Add(' select A.*,isnull(C.P_CodeName,D.P_CodeName) as P_CodeName,isnull(C.P_spec,D.P_spec) as P_spec,'); +// sql.Add(' isnull(C.P_Color,D.P_Color)as P_Color,NhxNum=A.money-A.hxNum,cast(BBMoney as varchar) as BBMoneyM '); +// sql.Add(' from YF_Money_CR A'); +// SQL.Add(' left join BP_INOut C on C.CRNO=A.MainId and C.CRID=A.subID'); +// SQL.Add(' left join CP_INOut D on D.CRNO=A.MainId and D.CRID=A.subID'); + sql.Add('select * from YF_Money_CR A'); + sql.Add('where A.CRTime>=''' + FormatDateTime('yyyy-MM-dd', begdate.DateTime) + ''' '); + sql.Add(' and A.CRTime<''' + FormatDateTime('yyyy-MM-dd', Enddate.DateTime + 1) + ''' '); + sql.Add(' and A.CRType=''ӦǼ'' and A.YFDefFlag1=''' + inttostr(fflag) + ''' '); + if cxTabControl1.TabIndex < 2 then + sql.Add(' and isnull(A.status,0)=''' + inttostr(cxTabControl1.TabIndex) + ''' '); + Open; + end; + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + finally + ADOQueryMain.EnableControls; + ToolButton2.Click; + end; +end; + +procedure TfrmYFCR.InitGridHZ(); +begin +end; + +procedure TfrmYFCR.FormDestroy(Sender: TObject); +begin + WriteCxGrid('ӦǼ', Tv2, ''); + // frmYFCR:=nil; + frmYFCR := nil; +end; + +procedure TfrmYFCR.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmYFCR.TBCloseClick(Sender: TObject); +begin + + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); + ExecSQL; + end;} + Close; +end; + +procedure TfrmYFCR.TBDelClick(Sender: TObject); +var + FBBMoney, CRID: string; +begin + if CDS_HZ.IsEmpty then + Exit; + if Trim(CDS_HZ.FieldByName('YFType').AsString) = 'Զ' then + begin + if Application.MessageBox('ԶɣȷҪִв', 'ʾ', 32 + 4) <> IDYES then + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID=''' + Trim(cds_hz.fieldbyname('YFID').AsString) + ''''); + Open; + end; + FBBMoney := ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + if Trim(CDS_HZ.fieldbyname('YFID').AsString) <> '' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YF_Money_CR where YFID=''' + Trim(CDS_HZ.fieldbyname('YFID').AsString) + ''''); + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-' + FBBMoney); + sql.Add('where CRID=''' + Trim(CDS_HZ.fieldbyname('CRID').AsString) + ''''); + ExecSQL; + end; + CRID := Trim(CDS_HZ.fieldbyname('CRID').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where CRID=' + CRID); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_KC where CRID=' + CRID); + ExecSQL; + end; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmYFCR.FormShow(Sender: TObject); +begin + ReadCxGrid('ӦǼ', Tv2, ''); + Enddate.DateTime := SGetServerDate(ADOQueryTemp); + begdate.DateTime := Enddate.DateTime - 30; + fflag := 0; + InitGrid(); +end; + +procedure TfrmYFCR.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmYFCR.ToolButton2Click(Sender: TObject); +var + sql: string; +begin + if ADOQueryMain.Active then + begin + sql := SGetFilters(Panel1, 1, 2); + { if sql='' THEN + begin + if trim(ComboBox1.Text)='ӹ' then + begin + sql:=' LX like ''%ӹ%'' '; + end + else if trim(ComboBox1.Text)='' then + begin + sql:=' LX ='''' AND '; + end; + end + else + begin + if trim(ComboBox1.Text)='ӹ' then + begin + sql:=sql+' AND LX like ''%ӹ%'' '; + end + else if trim(ComboBox1.Text)='' then + begin + sql:=sql+' AND LX = '''' '; + end; + end; } + SDofilter(ADOQueryMain, sql); + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + end; +end; + +procedure TfrmYFCR.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYFCR.Button2Click(Sender: TObject); +begin +// if CDS_HZ.IsEmpty then +// Exit; +// if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then +// Exit; +// if Trim(CDS_HZ.fieldbyname('SubID').AsString) <> '' then +// begin +// with ADOQueryCmd do +// begin +// Close; +// sql.Clear; +// sql.Add('delete YCL_SG_HZ where SubID=''' + Trim(CDS_HZ.fieldbyname('SubID').AsString) + ''''); +// ExecSQL; +// end; +// end; +// CDS_HZ.Delete; +end; + +function TfrmYFCR.SaveData(): Boolean; +var + maxId, CRID: string; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd, maxId, 'YF', 'YF_Money_CR', 4, 1) = False then + begin + Result := False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ', 'ʾ', 0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_KC where FactoryName=''' + Trim(CDS_HZ.fieldbyname('FactoryName').AsString) + ''' and YFDefFlag1=''' + inttostr(fFlag) + ''''); + Open; + end; + if ADOQueryCmd.IsEmpty = False then + begin + CRID := ADOQueryCmd.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID := ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('FactoryNo').Value := Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value := Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ZdyStr1').Value := 'Ӧ'; + FieldByName('YFDefFlag1').Value := fFlag; + Post; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value := Trim(maxId); + FieldByName('CRID').Value := StrToInt(CRID); + //SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3); + FieldByName('Filler').Value := Trim(DName); + FieldByName('CRType').Value := 'ӦǼ'; + FieldByName('CRFlag').Value := 'Ӧ'; + FieldByName('QtyFlag').Value := 1; + FieldByName('FactoryNo').Value := Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value := Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('CRTime').Value := formatdateTIme('yyyy-MM-dd', CDS_HZ.fieldbyname('CRTime').AsDateTime); + FieldByName('YFDefFlag1').Value := fFlag; + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('YFId').Value := Trim(maxId); + FieldByName('CRID').Value := StrToInt(CRID); + end; + ADOQueryCmd.Connection.CommitTrans; + Result := True; + except + Result := True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!', 'ʾ', 0); + end; +end; + +procedure TfrmYFCR.cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue) <> '' then + begin + sql.Add(' Set ' + FFieldName + '=''' + Trim(mvalue) + ''''); + end + else + begin + sql.Add(' Set ' + FFieldName + '=NULL'); + end; + sql.Add(',Editer=''' + Trim(DName) + ''''); + sql.Add(',Edittime=getdate() '); + sql.Add(' where SubId=''' + Trim(CDS_HZ.fieldbyname('SubId').AsString) + ''''); + ExecSQL; + end; +end; + +procedure TfrmYFCR.cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FQty, FPrice, FMoney, FHuiLv, FBBMoney, FKCBB, FFieldName: string; +begin + { if Trim(CDS_HZ.FieldByName('YFType').AsString)='Զ' then + begin + Application.MessageBox('Զɵݲ޸!','ʾ',0); + Exit; + end;} + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + if Trim(DParameters2) = '' then + begin + FieldByName('HuiLv').Value := 1; + end; + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID=''' + cds_hz.fieldbyname('YFID').AsString + ''''); + Open; + end; + FKCBB := ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty := Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty) = '' then + FQty := '0'; + + FPrice := Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice) = '' then + FPrice := '0'; + FQty := Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty) = '' then + FQty := '0'; + + FMoney := Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney) = '' then + FMoney := '0'; + + FHuiLv := Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv) = '' then + FHuiLv := '0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + if Trim(FFieldName) <> 'Money' then + begin + if Trim(FFieldName) <> 'HuiLv' then + begin + FBBMoney := FloatToStr(StrToFloat(FQty) * StrToFloat(FPrice) * StrToFloat(FHuiLv)); + FMoney := FloatToStr(StrToFloat(FQty) * StrToFloat(FPrice)); + end + else + begin + FBBMoney := FloatToStr(StrToFloat(FMoney) * StrToFloat(FHuiLv)); + end; + + end + else + begin + FBBMoney := FloatToStr(StrToFloat(FMoney) * StrToFloat(FHuiLv)); + end; + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value := StrToFloat(FMoney); + FieldByName('BBMoney').Value := StrToFloat(FBBMoney); + Post; + end; + { with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; } + tv2.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmYFCR.cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if Trim(mvalue) <> '' then + begin + sql.Add(' Set ' + FFieldName + '=''' + Trim(mvalue) + ''''); + end + else + begin + sql.Add(' Set ' + FFieldName + '=NULL'); + end; + sql.Add(',Editer=''' + Trim(DName) + ''''); + sql.Add(',Edittime=getdate() '); + sql.Add(' where YFId=''' + Trim(CDS_HZ.fieldbyname('YFId').AsString) + ''''); + ExecSQL; + end; + tv2.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmYFCR.ToolButton3Click(Sender: TObject); +begin + + try + frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application); + with frmZdyAttachGYS do + begin + if ShowModal = 1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('FactoryNo').Value := Trim(CDS_HZ.fieldbyname('ZdyCode').AsString); + FieldByName('FactoryName').Value := Trim(CDS_HZ.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value := SGetServerDate(ADOQueryTemp); + FieldByName('BZType').Value := 'RMB'; + FieldByName('HuiLv').Value := 1; + Post; + end; + Self.SaveData(); + end; + end; + finally + frmZdyAttachGYS.Free; + end; + tv2.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmYFCR.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + if Trim(CDS_HZ.FieldByName('YFType').AsString) = 'Զ' then + begin + Application.MessageBox('Զɵݲ޸!', 'ʾ', 0); + Exit; + end; + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'YFName'; + flagname := 'ĿժҪ'; + if Trim(DParameters3) = 'Ŀֿ' then + MainType := ''; + if ShowModal = 1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('YFCode').Value := Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('YFName').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set YFCode=''' + Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) + ''''); + sql.Add(' ,YFName=''' + Trim(ClientDataSet1.fieldbyname('ZdyName').AsString) + ''''); + sql.Add(',Editer=''' + Trim(DName) + ''''); + sql.Add(',Edittime=getdate() '); + sql.Add(' where YFId=''' + Trim(CDS_HZ.fieldbyname('YFId').AsString) + ''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCR.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'OrderUnit'; + flagname := 'λ'; + if ShowModal = 1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('QtyUnit').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set QtyUnit=''' + Trim(ClientDataSet1.fieldbyname('ZdyName').AsString) + ''''); + sql.Add(',Editer=''' + Trim(DName) + ''''); + sql.Add(',Edittime=getdate() '); + sql.Add(' where YFId=''' + Trim(CDS_HZ.fieldbyname('YFId').AsString) + ''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCR.v2Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'BZType'; + flagname := ''; + if ShowModal = 1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('BZType').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set BZType=''' + Trim(ClientDataSet1.fieldbyname('ZdyName').AsString) + ''''); + sql.Add(',Editer=''' + Trim(DName) + ''''); + sql.Add(',Edittime=getdate() '); + sql.Add(' where YFId=''' + Trim(CDS_HZ.fieldbyname('YFId').AsString) + ''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCR.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then + Exit; + SelExportData(Tv2, ADOQueryMain, 'Ӧб'); +end; + +procedure TfrmYFCR.v2Column7PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + if Trim(CDS_HZ.FieldByName('YFType').AsString) = 'Զ' then + begin + Application.MessageBox('Զɵݲ޸!', 'ʾ', 0); + Exit; + end; + try + frmPbProductList := TfrmPbProductList.Create(Application); + with frmPbProductList do + begin + // DParameters1:='Ȩ'; + //frmProductOrderList.v1Column4.Visible:=True; + if ShowModal = 1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('MainId').Value := Trim(frmPbProductList.Order_Main.fieldbyname('MainId').AsString); + FieldByName('subID').Value := Trim(frmPbProductList.Order_Main.fieldbyname('subID').AsString); + FieldByName('ConNO').Value := Trim(frmPbProductList.Order_Main.fieldbyname('ConNO').AsString); + FieldByName('C_CodeName').Value := Trim(frmPbProductList.Order_Main.fieldbyname('C_CodeName').AsString); + post; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set MainId=''' + Trim(frmPbProductList.Order_Main.fieldbyname('MainId').AsString) + ''''); + sql.Add(' ,SubId=''' + Trim(frmPbProductList.Order_Main.fieldbyname('SubId').AsString) + ''''); + sql.Add(',Editer=''' + Trim(DName) + ''''); + sql.Add(',Edittime=getdate() '); + sql.Add(' where YFId=''' + Trim(CDS_HZ.fieldbyname('YFId').AsString) + ''''); + ExecSQL; + end; + end; + end; + end; + finally + frmPbProductList.Release; + self.Tv2.Controller.EditingController.ShowEdit(); + end; +end; + +procedure TfrmYFCR.v2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FBBMoney, FKCBB, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(KPMoney,0) KPMoney from YF_Money_CR where YFID=''' + cds_hz.fieldbyname('YFID').AsString + ''''); + Open; + end; + FKCBB := ADOQueryTemp.fieldbyname('KPMoney').AsString; + FBBMoney := CDS_HZ.fieldbyname('KPMoney').AsString; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set ' + FFieldName + '=' + Trim(mvalue)); + sql.Add(',Editer=''' + Trim(DName) + ''''); + sql.Add(',Edittime=getdate() '); + sql.Add(' where YFId=''' + Trim(CDS_HZ.fieldbyname('YFId').AsString) + ''''); + // SQL.Add('Update YF_Money_KC Set KCKPMoney=KCKPMoney-'+FKCBB+'+'+FBBMoney); +// sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCR.v2PSPropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set ' + FFieldName + '=' + Trim(mvalue)); + sql.Add(',Editer=''' + Trim(DName) + ''''); + sql.Add(',Edittime=getdate() '); + sql.Add(' where YFId=''' + Trim(CDS_HZ.fieldbyname('YFId').AsString) + ''''); + ExecSQL; + end; +end; + +procedure TfrmYFCR.v2BatchNoPropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set ' + FFieldName + '=''' + Trim(mvalue) + ''''); + sql.Add(',Editer=''' + Trim(DName) + ''''); + sql.Add(',Edittime=getdate() '); + sql.Add(' where YFId=''' + Trim(CDS_HZ.fieldbyname('YFId').AsString) + ''''); + ExecSQL; + end; +end; + +procedure TfrmYFCR.v2PayMentPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'PayMent'; + flagname := '֧ʽ'; + if ShowModal = 1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('PayMent').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set PayMent=''' + Trim(ClientDataSet1.fieldbyname('ZdyName').AsString) + ''''); + sql.Add(',Editer=''' + Trim(DName) + ''''); + sql.Add(',Edittime=getdate() '); + sql.Add(' where YFId=''' + Trim(CDS_HZ.fieldbyname('YFId').AsString) + ''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCR.v2T_qtyPropertiesEditValueChanged(Sender: TObject); +var + mvalue, FQty, FPrice, FMoney, FHuiLv, FBBMoney, FKCBB, FFieldName, TMoney: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + + TMoney := format('%.2f', [CDS_HZ.Fieldbyname('T_Price').AsFloat * strtofloat(mvalue)]); + + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + + FieldByName('T_Money').Value := trim(TMoney); + if Trim(DParameters2) = '' then + begin + FieldByName('HuiLv').Value := 1; + end; + Post; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set ' + FFieldName + '=' + Trim(mvalue)); + + sql.Add(',T_Money=' + TMoney); + sql.Add(' where YFId=''' + Trim(CDS_HZ.fieldbyname('YFId').AsString) + ''''); + + ExecSQL; + end; +end; + +procedure TfrmYFCR.Button1Click(Sender: TObject); +begin + + if CDS_HZ.IsEmpty then + exit; + + if CDS_HZ.Locate('ssel', true, []) = false then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + ADOQueryCmd.Connection.BeginTrans; + try + with CDS_HZ do + begin + DisableControls; + First; + while not eof do + begin + if fieldbyname('ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add('where YFID=' + quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); + open; + edit; + Fieldbyname('Price').Value := strtofloatdef(edit1.Text, 0); + Fieldbyname('Money').Value := format('%.2f', [Fieldbyname('Qty').AsFloat * strtofloatdef(edit1.Text, 0)]); + Fieldbyname('BBMoney').Value := format('%.2f', [Fieldbyname('Qty').AsFloat * strtofloatdef(edit1.Text, 0)]); + post; + end; + end; + next; + end; + First; + EnableControls; + end; + ADOQueryCmd.Connection.CommitTrans; + InitGrid(); + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ݱʧܣ', 'ʾϢ', 0); + end; + +end; + +procedure TfrmYFCR.CheckBox1Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + exit; + with CDS_HZ do + begin + DisableControls; + first; + while not eof do + begin + edit; + fieldbyname('ssel').Value := checkbox1.Checked; + post; + next; + end; + First; + EnableControls; + end; + +end; + +procedure TfrmYFCR.v2T_PricePropertiesEditValueChanged(Sender: TObject); +var + mvalue, FQty, FPrice, FMoney, FHuiLv, FBBMoney, FKCBB, FFieldName, TMoney: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + + TMoney := format('%.2f', [CDS_HZ.Fieldbyname('T_Qty').AsFloat * strtofloat(mvalue)]); + + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + + FieldByName('T_Money').Value := trim(TMoney); + if Trim(DParameters2) = '' then + begin + FieldByName('HuiLv').Value := 1; + end; + Post; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set ' + FFieldName + '=' + Trim(mvalue)); + + sql.Add(',T_Money=' + TMoney); + sql.Add(' where YFId=''' + Trim(CDS_HZ.fieldbyname('YFId').AsString) + ''''); + + ExecSQL; + end; +end; + +procedure TfrmYFCR.TchkClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + exit; + + if CDS_HZ.Locate('ssel', true, []) = false then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_HZ do + begin + DisableControls; + First; + while not eof do + begin + if Fieldbyname('ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update YF_Money_CR SET status=''1'' '); + sql.Add(',chker=' + quotedstr(trim(DName))); + sql.Add(',chkTime=getdate() '); + sql.Add('where YFID =' + quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); + execsql; + end; + end; + next; + end; + First; + EnableControls; + end; + + InitGrid(); + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmYFCR.TnochkClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + exit; + + if CDS_HZ.Locate('ssel', true, []) = false then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_HZ do + begin + DisableControls; + First; + while not eof do + begin + if Fieldbyname('ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update YF_Money_CR SET status=''0'' '); + sql.Add(',chker=' + quotedstr(trim(''))); + sql.Add(',chkTime=NULL '); + sql.Add('where YFID =' + quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); + execsql; + end; + end; + next; + end; + First; + EnableControls; + end; + + InitGrid(); + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmYFCR.ToolButton4Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + exit; + + if CDS_HZ.Locate('ssel', true, []) = false then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_HZ do + begin + DisableControls; + First; + while not eof do + begin + if Fieldbyname('ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update YF_Money_CR SET Money=''' + floattostr(CDS_HZ.fieldbyname('money').AsFloat) + ''' '); + sql.Add(',BBMoney=''' + floattostr(CDS_HZ.fieldbyname('BBMoney').AsFloat) + ''' '); + sql.Add(',Price=''' + floattostr(CDS_HZ.fieldbyname('Price').AsFloat) + ''' '); + sql.Add(',Qty=''' + floattostr(CDS_HZ.fieldbyname('Qty').AsFloat) + ''' '); + sql.Add('where YFID =' + quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); + execsql; + end; + end; + next; + end; + First; + EnableControls; + end; + + InitGrid(); + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmYFCR.cxTabControl1Change(Sender: TObject); +var + i: integer; +begin + + Tchk.Enabled := false; + TNochk.Enabled := false; + TBDel.Enabled := false; + + for i := 0 to tv2.ColumnCount - 1 do + begin + if uppercase(tv2.Columns[i].DataBinding.FieldName) <> 'SSEL' then + tv2.Columns[i].Options.Editing := false; + end; + if cxTabControl1.TabIndex = 0 then + begin + Tchk.Enabled := true; + TBDel.Enabled := true; + for i := 0 to tv2.ColumnCount - 1 do + begin + tv2.Columns[i].Options.Editing := true; + end; + end; + if cxTabControl1.TabIndex = 1 then + begin + TNochk.Enabled := true; + end; + initgrid(); +end; + +procedure TfrmYFCR.ThxClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + exit; + + if CDS_HZ.Locate('ssel', true, []) = false then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_HZ do + begin + DisableControls; + First; + while not eof do + begin + if Fieldbyname('ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update YF_Money_CR SET hexiao=''1'' '); +// sql.Add(',chker='+quotedstr(trim(DName))); +// sql.Add(',chkTime=getdate() '); + sql.Add('where YFID =' + quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); + execsql; + end; + end; + next; + end; + First; + EnableControls; + end; + + InitGrid(); + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmYFCR.TnoshClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + exit; + + if CDS_HZ.Locate('ssel', true, []) = false then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_HZ do + begin + DisableControls; + First; + while not eof do + begin + if Fieldbyname('ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update YF_Money_CR SET hexiao=''0'' '); +// sql.Add(',chker='+quotedstr(trim(''))); +// sql.Add(',chkTime=NULL '); + sql.Add('where YFID =' + quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); + execsql; + end; + end; + next; + end; + First; + EnableControls; + end; + + InitGrid(); + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmYFCR.ToolButton5Click(Sender: TObject); +begin + frmSXCKNewList := TfrmSXCKNewList.create(self); + with frmSXCKNewList do + begin + show; + end; +end; + +procedure TfrmYFCR.Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + initImage(CDS_hz.fieldbyname('P_code').AsString); +end; + +procedure TfrmYFCR.InitImage(P_code: string); +begin + ADOQueryImage.close; + if P_code = '' then + exit; + with ADOQueryImage do + begin + close; + sql.Clear; + sql.Add('select * from TP_File A'); + sql.Add('where TFID=' + quotedstr(trim(P_code))); +// ShowMessage(sql.Text); + open; + end; +end; + +procedure TfrmYFCR.ToolButton6Click(Sender: TObject); +begin + frmCKJYList := TfrmCKJYList.create(self); + with frmCKJYList do + begin + show; + end; +end; + +procedure TfrmYFCR.Button3Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + exit; + + if CDS_HZ.Locate('ssel', true, []) = false then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + ADOQueryCmd.Connection.BeginTrans; + try + with CDS_HZ do + begin + DisableControls; + First; + while not eof do + begin + if fieldbyname('ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add('where YFID=' + quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); + open; + edit; + Fieldbyname('CJPrice').Value := strtofloatdef(edit3.Text, 0); +// Fieldbyname('Money').Value := format('%.2f', [Fieldbyname('Qty').AsFloat * strtofloatdef(edit1.Text, 0)]); +// Fieldbyname('BBMoney').Value := format('%.2f', [Fieldbyname('Qty').AsFloat * strtofloatdef(edit1.Text, 0)]); + post; + end; + end; + next; + end; + First; + EnableControls; + end; + ADOQueryCmd.Connection.CommitTrans; + InitGrid(); + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ݱʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmYFCR.Button4Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + exit; + + if CDS_HZ.Locate('ssel', true, []) = false then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + ADOQueryCmd.Connection.BeginTrans; + try + with CDS_HZ do + begin + DisableControls; + First; + while not eof do + begin + if fieldbyname('ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add('where YFID=' + quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); + open; + edit; + Fieldbyname('FRPrice').Value := strtofloatdef(edit2.Text, 0); +// Fieldbyname('Money').Value := format('%.2f', [Fieldbyname('Qty').AsFloat * strtofloatdef(edit1.Text, 0)]); +// Fieldbyname('BBMoney').Value := format('%.2f', [Fieldbyname('Qty').AsFloat * strtofloatdef(edit1.Text, 0)]); + post; + end; + end; + next; + end; + First; + EnableControls; + end; + ADOQueryCmd.Connection.CommitTrans; + InitGrid(); + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ݱʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmYFCR.Tv2Column4PropertiesEditValueChanged(Sender: TObject); +var + mvalues: string; +begin + mvalues := TCXTextEdit(Sender).Text; + + with CDS_HZ do + begin + edit; + fieldbyname('CJQty').Value := mvalues; + post; + end; + tv2.Controller.EditingController.ShowEdit(); + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set CJQty=''' + trim(mvalues) + ''' '); + sql.Add('where YFID=' + quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); +// ShowMessage(sql.text); + ExecSQL; + end; + +end; + +procedure TfrmYFCR.Tv2Column3PropertiesEditValueChanged(Sender: TObject); +var + mvalues: string; +begin + mvalues := TCXTextEdit(Sender).Text; + + with CDS_HZ do + begin + edit; + fieldbyname('FRPrice').Value := mvalues; + post; + end; + tv2.Controller.EditingController.ShowEdit(); + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set FRPrice=''' + trim(mvalues) + ''' '); + sql.Add('where YFID=' + quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); +// ShowMessage(sql.text); + ExecSQL; + end; + +end; + +procedure TfrmYFCR.Tv2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalues: string; +begin + mvalues := TCXTextEdit(Sender).Text; + + with CDS_HZ do + begin + edit; + fieldbyname('CJPrice').Value := mvalues; + post; + end; + tv2.Controller.EditingController.ShowEdit(); + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set CJPrice=''' + trim(mvalues) + ''' '); + sql.Add('where YFID=' + quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); +// ShowMessage(sql.text); + ExecSQL; + end; + +end; + +end. + diff --git a/应收应付/U_YFCRLZ.dfm b/应收应付/U_YFCRLZ.dfm new file mode 100644 index 0000000..a940340 --- /dev/null +++ b/应收应付/U_YFCRLZ.dfm @@ -0,0 +1,514 @@ +object frmYFCRLZ: TfrmYFCRLZ + Left = 64 + Top = 60 + Width = 1176 + Height = 670 + Caption = #24212#20184#27454#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1168 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + Caption = #19968#38190#26367#25442 + ImageIndex = 54 + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 272 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 335 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 398 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1168 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 60 + Height = 12 + Caption = #39033#30446#21450#25688#35201 + end + object Label3: TLabel + Left = 302 + Top = 13 + Width = 48 + Height = 12 + Caption = #23545#26041#21333#20301 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 634 + Top = 13 + Width = 36 + Height = 12 + Caption = #35746#21333#21495 + end + object Label5: TLabel + Left = 782 + Top = 13 + Width = 24 + Height = 12 + Caption = #21333#20215 + end + object Label7: TLabel + Left = 918 + Top = 13 + Width = 48 + Height = 12 + Caption = #25903#20184#21488#22836 + end + object YFName: TEdit + Tag = 2 + Left = 528 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object FactoryName: TEdit + Tag = 2 + Left = 350 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + object OrderNo: TEdit + Tag = 2 + Left = 671 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object Price: TEdit + Tag = 1 + Left = 809 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 5 + OnChange = FactoryNameChange + end + object ComTaiTou: TEdit + Tag = 2 + Left = 966 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 6 + OnChange = FactoryNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1168 + Height = 566 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + Column = VBB + end + item + Kind = skSum + Column = VYB + end + item + Kind = skSum + Column = v2KP + end + item + Kind = skSum + Column = v2PS + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_YSYF.Default + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 115 + end + object v2Column6: TcxGridDBColumn + Caption = #23545#26041#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 100 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39033#30446#21450#25688#35201 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 140 + end + object v2BatchNo: TcxGridDBColumn + Caption = #25209#21495 + DataBinding.FieldName = 'BatchNo' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2BatchNoPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2PS: TcxGridDBColumn + Caption = #31665#25968 + DataBinding.FieldName = 'PS' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2PSPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v2PayMent: TcxGridDBColumn + Caption = #25903#20184#26041#24335 + DataBinding.FieldName = 'PayMent' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2PayMentPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 69 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 82 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn6PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v2Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 72 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 71 + end + object VYB: TcxGridDBColumn + Caption = #21407#24065#37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object VBB: TcxGridDBColumn + Caption = #26412#24065#37329#39069 + DataBinding.FieldName = 'BBMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object v2KP: TcxGridDBColumn + Caption = #24320#31080#37329#39069 + DataBinding.FieldName = 'KPMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + Width = 62 + end + object VOrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column7PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 85 + end + object v2Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2BatchNoPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 59 + end + object v2Column2: TcxGridDBColumn + Caption = #22383#24067#21517#31216 + DataBinding.FieldName = 'PBName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object v2Column3: TcxGridDBColumn + Caption = #25903#20184#21488#22836 + DataBinding.FieldName = 'ComTaiTou' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.ImmediatePost = True + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 66 + end + object v2Column4: TcxGridDBColumn + Caption = #25253#20851#21517#31216 + DataBinding.FieldName = 'CPZHName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 64 + end + object v2Column5: TcxGridDBColumn + Caption = #25104#20221'%'#27604 + DataBinding.FieldName = 'CPCFBi' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 64 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 869 + Top = 1 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 901 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_YFCRLZ.pas b/应收应付/U_YFCRLZ.pas new file mode 100644 index 0000000..1146be6 --- /dev/null +++ b/应收应付/U_YFCRLZ.pas @@ -0,0 +1,984 @@ +unit U_YFCRLZ; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDropDownEdit; + +type + TfrmYFCRLZ = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + YFName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column1: TcxGridDBColumn; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + VYB: TcxGridDBColumn; + VBB: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + v2KP: TcxGridDBColumn; + v2BatchNo: TcxGridDBColumn; + v2PS: TcxGridDBColumn; + v2PayMent: TcxGridDBColumn; + v2Note: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + Label4: TLabel; + OrderNo: TEdit; + Label5: TLabel; + Price: TEdit; + v2Column3: TcxGridDBColumn; + Label7: TLabel; + ComTaiTou: TEdit; + ToolButton4: TToolButton; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure v2PSPropertiesEditValueChanged(Sender: TObject); + procedure v2BatchNoPropertiesEditValueChanged(Sender: TObject); + procedure v2PayMentPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure OrderNoChange(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + private + { Private declarations } + + procedure InitGridHZ(); + procedure InitGrid(); + function SaveData():Boolean; + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYFCRLZ: TfrmYFCRLZ; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderList, U_ProductOrderNewList; + +{$R *.dfm} + + + +procedure TfrmYFCRLZ.InitGrid(); +begin + begdate.SetFocus; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' exec P_View_YFK :begdate,:Enddate,1,'''' '); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmYFCRLZ.InitGridHZ(); +begin +end; + +procedure TfrmYFCRLZ.FormDestroy(Sender: TObject); +begin + frmYFCRLZ:=nil; +end; + +procedure TfrmYFCRLZ.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYFCRLZ.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ӦǼ',Tv2,''); + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); + ExecSQL; + end;} + Close; +end; +procedure TfrmYFCRLZ.TBDelClick(Sender: TObject); +var + FBBMoney,CRID:string; +begin + if CDS_HZ.IsEmpty then Exit; + if Trim(CDS_HZ.FieldByName('YFType').AsString)='Զ' then + begin + if Application.MessageBox('ԶɣȷҪִв','ʾ',32+4)<>IDYES then Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+Trim(cds_hz.fieldbyname('YFID').AsString)+''''); + Open; + end; + FBBMoney:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('YFID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; + CRID:=Trim(CDS_HZ.fieldbyname('CRID').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where CRID='+CRID); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_KC where CRID='+CRID); + ExecSQL; + end; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmYFCRLZ.FormShow(Sender: TObject); +var + fsj:String; +begin + ReadCxGrid('ӦǼ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-50; + fsj:='select Name=ZdyName,code='''' from KH_Zdy where Type=''OrdDefStr2'' '; + SInitCxGridComboBoxBySql(ADOQueryTemp,v2Column3,fsj,0,False,''); + if Trim(DParameters1)='޶' then + begin + VOrderNo.Hidden:=True; + VOrderNo.Visible:=False; + label4.Visible:=False; + OrderNo.Visible:=False; + end; + if Trim(DParameters2)='' then + begin + VHL.Hidden:=True; + VHL.Visible:=False; + VBZ.Hidden:=True; + VBZ.Visible:=False; + VYB.Hidden:=True; + VYB.Visible:=False; + VBB.Caption:=''; + end; + if Trim(DParameters5)<>'Ʊ' then + begin + v2KP.Hidden:=True; + v2KP.Visible:=False; + end else + begin + v2KP.Hidden:=False; + v2KP.Visible:=True; + end; + if Trim(DParameters6)='' then + begin + v2PS.Hidden:=False; + v2PS.Visible:=True; + v2BatchNo.Hidden:=False; + v2BatchNo.Visible:=True; + v2PayMent.Hidden:=False; + v2PayMent.Visible:=True; + end else + begin + v2PS.Hidden:=True; + v2PS.Visible:=False; + v2BatchNo.Hidden:=True; + v2BatchNo.Visible:=False; + v2PayMent.Hidden:=True; + v2PayMent.Visible:=False; + end; + InitGrid(); +end; + +procedure TfrmYFCRLZ.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmYFCRLZ.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmYFCRLZ.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYFCRLZ.Button2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +function TfrmYFCRLZ.SaveData():Boolean; +var + maxId,CRID:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxId,'YF','YF_Money_CR',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''''); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + //SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('YFId').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; + +procedure TfrmYFCRLZ.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRLZ.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + { if Trim(CDS_HZ.FieldByName('YFType').AsString)='Զ' then + begin + Application.MessageBox('Զɵݲ޸!','ʾ',0); + Exit; + end;} + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + if Trim(FFieldName)<>'Money' then + begin + if Trim(FFieldName)<>'HuiLv' then + begin + FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)); + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRLZ.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRLZ.ToolButton3Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFFactory'; + flagname:='Էλ'; + if Trim(DParameters8)='' then + begin + flag:='YFFactory'; + end else + begin + flag:=Trim(DParameters8); + end; + if Trim(DParameters4)='Էλֿ' then + MainType:=''; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('FactoryNo').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('FactoryName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + Self.SaveData(); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCRLZ.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.FieldByName('YFType').AsString)='Զ' then + begin + Application.MessageBox('Զɵݲ޸!','ʾ',0); + Exit; + end; + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFName'; + flagname:='ĿժҪ'; + if Trim(DParameters3)='Ŀֿ' then + MainType:=''; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('YFCode').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('YFName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set YFCode='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); + sql.Add(' ,YFName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCRLZ.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set QtyUnit='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCRLZ.v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BZType'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('BZType').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set BZType='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCRLZ.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'Ӧб'); +end; + +procedure TfrmYFCRLZ.v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.FieldByName('YFType').AsString)='Զ' then + begin + Application.MessageBox('Զɵݲ޸!','ʾ',0); + Exit; + end; + try + frmProductOrderNewList:=TfrmProductOrderNewList.Create(Application); + with frmProductOrderNewList do + begin + DParameters1:='Ȩ'; + //frmProductOrderList.v1Column4.Visible:=True; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('MainId').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString); + FieldByName('OrderNo').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrderNo').AsString); + FieldByName('ComTaiTou').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrdDefStr2').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set MainId='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString)+''''); + SQL.Add(',ComTaiTou='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrdDefStr2').AsString)+''''); + //sql.Add(' ,SubId='''+Trim(frmProductOrderList.Order_Main.fieldbyname('SubId').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + end; + finally + frmProductOrderNewList.Free; + end; +end; + +procedure TfrmYFCRLZ.v2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(KPMoney,0) KPMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('KPMoney').AsString; + FBBMoney:=CDS_HZ.fieldbyname('KPMoney').AsString; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCKPMoney=KCKPMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRLZ.v2PSPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRLZ.v2BatchNoPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRLZ.v2PayMentPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PayMent'; + flagname:='֧ʽ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('PayMent').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set PayMent='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCRLZ.OrderNoChange(Sender: TObject); +begin + if Length(Trim(OrderNo.Text))<3 then Exit; + ToolButton2.Click; +end; + +procedure TfrmYFCRLZ.ToolButton4Click(Sender: TObject); +var + FColumn:String; +begin + begdate.SetFocus; + FColumn:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if ((Trim(FColumn)='Note') or (Trim(FColumn)='YFName') or (Trim(FColumn)='ComTaiTou') or (Trim(FColumn)='Price')) then + begin + + end else + begin + Exit; + end; + if Application.MessageBox('ȷҪִв','ʾ',32+4)<>IDYES then Exit; + OneKeyPost(Tv2,CDS_HZ); + CDS_HZ.DisableControls; + with CDS_HZ do + begin + First; + while not Eof do + begin + if Trim(FColumn)<>'Price' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set '+Trim(FColumn)+'='''+Trim(CDS_HZ.fieldbyname(FColumn).Value)+''''); + sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + ExecSQL; + end; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + if Trim(CDS_HZ.fieldbyname(FColumn).AsString)<>'' then + sql.Add('Update YF_Money_CR Set Price='+Trim(CDS_HZ.fieldbyname(FColumn).AsString)) + else + sql.Add('Update YF_Money_CR Set Price=0 '); + sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty'); + sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_KC Set KCMoney=(select sum(QtyFlag*Money) from YF_Money_CR where CRId=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select sum(QtyFlag*BBMoney) from YF_Money_CR where CRId=YF_Money_KC.CRID)'); + sql.Add(' where CRID=(select CRID from YF_Money_CR B where B.YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''')'); + ExecSQL; + end; + end; + + Next; + end; + end; + CDS_HZ.EnableControls; +end; + +procedure TfrmYFCRLZ.OrderNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if Length(OrderNo.Text)<3 then Exit; + begdate.SetFocus; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' exec P_View_YFK :begdate,:Enddate,2,:orderno '); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Parameters.ParamByName('orderno').Value:='%'+Trim(OrderNo.Text)+'%'; + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +end. diff --git a/应收应付/U_YFCRLZQty.dfm b/应收应付/U_YFCRLZQty.dfm new file mode 100644 index 0000000..990f829 --- /dev/null +++ b/应收应付/U_YFCRLZQty.dfm @@ -0,0 +1,511 @@ +object frmYFCRLZQty: TfrmYFCRLZQty + Left = 34 + Top = 84 + Width = 1144 + Height = 670 + Caption = #24212#20184#27454#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1136 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + Caption = #19968#38190#26367#25442 + ImageIndex = 54 + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 272 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 335 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 398 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1136 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 60 + Height = 12 + Caption = #39033#30446#21450#25688#35201 + end + object Label3: TLabel + Left = 302 + Top = 13 + Width = 48 + Height = 12 + Caption = #23545#26041#21333#20301 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 634 + Top = 13 + Width = 36 + Height = 12 + Caption = #35746#21333#21495 + end + object Label5: TLabel + Left = 782 + Top = 13 + Width = 24 + Height = 12 + Caption = #21333#20215 + end + object Label7: TLabel + Left = 918 + Top = 13 + Width = 48 + Height = 12 + Caption = #25903#20184#21488#22836 + end + object YFName: TEdit + Tag = 2 + Left = 528 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object FactoryName: TEdit + Tag = 2 + Left = 350 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + object OrderNo: TEdit + Tag = 2 + Left = 671 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object Price: TEdit + Tag = 1 + Left = 809 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 5 + OnChange = FactoryNameChange + end + object ComTaiTou: TEdit + Tag = 2 + Left = 966 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 6 + OnChange = FactoryNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1136 + Height = 563 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + Column = VBB + end + item + Kind = skSum + Column = VYB + end + item + Kind = skSum + Column = v2KP + end + item + Kind = skSum + Column = v2PS + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.OnGetContentStyle = Tv2StylesGetContentStyle + Styles.Header = DataLink_YSYF.Default + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 115 + end + object v2Column6: TcxGridDBColumn + Caption = #23545#26041#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 100 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39033#30446#21450#25688#35201 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 140 + end + object v2BatchNo: TcxGridDBColumn + Caption = #25209#21495 + DataBinding.FieldName = 'BatchNo' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2BatchNoPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2PS: TcxGridDBColumn + Caption = #31665#25968 + DataBinding.FieldName = 'PS' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2PSPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v2PayMent: TcxGridDBColumn + Caption = #25903#20184#26041#24335 + DataBinding.FieldName = 'PayMent' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2PayMentPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 69 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 82 + end + object v2Column4: TcxGridDBColumn + Caption = #21442#32771#25968#37327 + DataBinding.FieldName = 'CanKaoQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 65 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn6PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v2Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 72 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 71 + end + object VYB: TcxGridDBColumn + Caption = #21407#24065#37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object VBB: TcxGridDBColumn + Caption = #26412#24065#37329#39069 + DataBinding.FieldName = 'BBMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object v2KP: TcxGridDBColumn + Caption = #24320#31080#37329#39069 + DataBinding.FieldName = 'KPMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + Width = 62 + end + object VOrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column7PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 85 + end + object v2Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2BatchNoPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 59 + end + object v2Column2: TcxGridDBColumn + Caption = #22383#24067#21517#31216 + DataBinding.FieldName = 'PBName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object v2Column3: TcxGridDBColumn + Caption = #25903#20184#21488#22836 + DataBinding.FieldName = 'ComTaiTou' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.ImmediatePost = True + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 66 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 869 + Top = 1 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 901 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_YFCRLZQty.pas b/应收应付/U_YFCRLZQty.pas new file mode 100644 index 0000000..2f26ffc --- /dev/null +++ b/应收应付/U_YFCRLZQty.pas @@ -0,0 +1,1013 @@ +unit U_YFCRLZQty; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDropDownEdit; + +type + TfrmYFCRLZQty = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + YFName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column1: TcxGridDBColumn; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + VYB: TcxGridDBColumn; + VBB: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + v2KP: TcxGridDBColumn; + v2BatchNo: TcxGridDBColumn; + v2PS: TcxGridDBColumn; + v2PayMent: TcxGridDBColumn; + v2Note: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + Label4: TLabel; + OrderNo: TEdit; + Label5: TLabel; + Price: TEdit; + v2Column3: TcxGridDBColumn; + Label7: TLabel; + ComTaiTou: TEdit; + ToolButton4: TToolButton; + v2Column4: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure v2PSPropertiesEditValueChanged(Sender: TObject); + procedure v2BatchNoPropertiesEditValueChanged(Sender: TObject); + procedure v2PayMentPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure OrderNoChange(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + procedure Tv2StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + private + { Private declarations } + + procedure InitGridHZ(); + procedure InitGrid(); + function SaveData():Boolean; + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYFCRLZQty: TfrmYFCRLZQty; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderList, U_ProductOrderNewList; + +{$R *.dfm} + + + +procedure TfrmYFCRLZQty.InitGrid(); +begin + begdate.SetFocus; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' exec P_View_YFK :begdate,:Enddate,1,'''' '); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmYFCRLZQty.InitGridHZ(); +begin +end; + +procedure TfrmYFCRLZQty.FormDestroy(Sender: TObject); +begin + frmYFCRLZQty:=nil; +end; + +procedure TfrmYFCRLZQty.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYFCRLZQty.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ӦǼ',Tv2,''); + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); + ExecSQL; + end;} + Close; +end; +procedure TfrmYFCRLZQty.TBDelClick(Sender: TObject); +var + FBBMoney,CRID:string; +begin + if CDS_HZ.IsEmpty then Exit; + if Trim(CDS_HZ.FieldByName('YFType').AsString)='Զ' then + begin + if Application.MessageBox('ԶɣȷҪִв','ʾ',32+4)<>IDYES then Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+Trim(cds_hz.fieldbyname('YFID').AsString)+''''); + Open; + end; + FBBMoney:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('YFID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; + CRID:=Trim(CDS_HZ.fieldbyname('CRID').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where CRID='+CRID); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_KC where CRID='+CRID); + ExecSQL; + end; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmYFCRLZQty.FormShow(Sender: TObject); +var + fsj:String; +begin + ReadCxGrid('ӦǼ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-50; + fsj:='select Name=ZdyName,code='''' from KH_Zdy where Type=''OrdDefStr2'' '; + SInitCxGridComboBoxBySql(ADOQueryTemp,v2Column3,fsj,0,False,''); + if Trim(DParameters1)='޶' then + begin + VOrderNo.Hidden:=True; + VOrderNo.Visible:=False; + label4.Visible:=False; + OrderNo.Visible:=False; + end; + if Trim(DParameters2)='' then + begin + VHL.Hidden:=True; + VHL.Visible:=False; + VBZ.Hidden:=True; + VBZ.Visible:=False; + VYB.Hidden:=True; + VYB.Visible:=False; + VBB.Caption:=''; + end; + if Trim(DParameters5)<>'Ʊ' then + begin + v2KP.Hidden:=True; + v2KP.Visible:=False; + end else + begin + v2KP.Hidden:=False; + v2KP.Visible:=True; + end; + if Trim(DParameters6)='' then + begin + v2PS.Hidden:=False; + v2PS.Visible:=True; + v2BatchNo.Hidden:=False; + v2BatchNo.Visible:=True; + v2PayMent.Hidden:=False; + v2PayMent.Visible:=True; + end else + begin + v2PS.Hidden:=True; + v2PS.Visible:=False; + v2BatchNo.Hidden:=True; + v2BatchNo.Visible:=False; + v2PayMent.Hidden:=True; + v2PayMent.Visible:=False; + end; + InitGrid(); +end; + +procedure TfrmYFCRLZQty.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmYFCRLZQty.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmYFCRLZQty.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYFCRLZQty.Button2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +function TfrmYFCRLZQty.SaveData():Boolean; +var + maxId,CRID:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxId,'YF','YF_Money_CR',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''''); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + //SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('YFId').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; + +procedure TfrmYFCRLZQty.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRLZQty.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + { if Trim(CDS_HZ.FieldByName('YFType').AsString)='Զ' then + begin + Application.MessageBox('Զɵݲ޸!','ʾ',0); + Exit; + end;} + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + if Trim(FFieldName)<>'Money' then + begin + if Trim(FFieldName)<>'HuiLv' then + begin + FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)); + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRLZQty.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRLZQty.ToolButton3Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFFactory'; + flagname:='Էλ'; + if Trim(DParameters8)='' then + begin + flag:='YFFactory'; + end else + begin + flag:=Trim(DParameters8); + end; + if Trim(DParameters4)='Էλֿ' then + MainType:=''; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('FactoryNo').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('FactoryName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + Self.SaveData(); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCRLZQty.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.FieldByName('YFType').AsString)='Զ' then + begin + Application.MessageBox('Զɵݲ޸!','ʾ',0); + Exit; + end; + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFName'; + flagname:='ĿժҪ'; + if Trim(DParameters3)='Ŀֿ' then + MainType:=''; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('YFCode').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('YFName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set YFCode='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); + sql.Add(' ,YFName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCRLZQty.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set QtyUnit='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCRLZQty.v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BZType'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('BZType').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set BZType='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCRLZQty.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'Ӧб'); +end; + +procedure TfrmYFCRLZQty.v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.FieldByName('YFType').AsString)='Զ' then + begin + Application.MessageBox('Զɵݲ޸!','ʾ',0); + Exit; + end; + try + frmProductOrderNewList:=TfrmProductOrderNewList.Create(Application); + with frmProductOrderNewList do + begin + DParameters1:='Ȩ'; + //frmProductOrderList.v1Column4.Visible:=True; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('MainId').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString); + FieldByName('OrderNo').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrderNo').AsString); + FieldByName('ComTaiTou').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrdDefStr2').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set MainId='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString)+''''); + SQL.Add(',ComTaiTou='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrdDefStr2').AsString)+''''); + //sql.Add(' ,SubId='''+Trim(frmProductOrderList.Order_Main.fieldbyname('SubId').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + end; + finally + frmProductOrderNewList.Free; + end; +end; + +procedure TfrmYFCRLZQty.v2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(KPMoney,0) KPMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('KPMoney').AsString; + FBBMoney:=CDS_HZ.fieldbyname('KPMoney').AsString; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCKPMoney=KCKPMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRLZQty.v2PSPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRLZQty.v2BatchNoPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRLZQty.v2PayMentPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PayMent'; + flagname:='֧ʽ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('PayMent').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set PayMent='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCRLZQty.OrderNoChange(Sender: TObject); +begin + if Length(Trim(OrderNo.Text))<3 then Exit; + ToolButton2.Click; +end; + +procedure TfrmYFCRLZQty.ToolButton4Click(Sender: TObject); +var + FColumn:String; +begin + begdate.SetFocus; + FColumn:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if ((Trim(FColumn)='Note') or (Trim(FColumn)='YFName') or (Trim(FColumn)='ComTaiTou') or (Trim(FColumn)='Price')) then + begin + + end else + begin + Exit; + end; + if Application.MessageBox('ȷҪִв','ʾ',32+4)<>IDYES then Exit; + OneKeyPost(Tv2,CDS_HZ); + CDS_HZ.DisableControls; + with CDS_HZ do + begin + First; + while not Eof do + begin + if Trim(FColumn)<>'Price' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set '+Trim(FColumn)+'='''+Trim(CDS_HZ.fieldbyname(FColumn).Value)+''''); + sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + ExecSQL; + end; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + if Trim(CDS_HZ.fieldbyname(FColumn).AsString)<>'' then + sql.Add('Update YF_Money_CR Set Price='+Trim(CDS_HZ.fieldbyname(FColumn).AsString)) + else + sql.Add('Update YF_Money_CR Set Price=0 '); + sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty'); + sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_KC Set KCMoney=(select sum(QtyFlag*Money) from YF_Money_CR where CRId=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select sum(QtyFlag*BBMoney) from YF_Money_CR where CRId=YF_Money_KC.CRID)'); + sql.Add(' where CRID=(select CRID from YF_Money_CR B where B.YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''')'); + ExecSQL; + end; + end; + + Next; + end; + end; + CDS_HZ.EnableControls; +end; + +procedure TfrmYFCRLZQty.OrderNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if Length(OrderNo.Text)<3 then Exit; + begdate.SetFocus; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' exec P_View_YFK :begdate,:Enddate,2,:orderno '); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Parameters.ParamByName('orderno').Value:='%'+Trim(OrderNo.Text)+'%'; + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; + end; + +end; + +procedure TfrmYFCRLZQty.Tv2StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); + +var + Id,Id10:Integer; +begin + try + if Tv2.GroupedItemCount=0 then + begin + Id:=TV2.GetColumnByFieldName('Qty').Index;//;-TV1.GroupedItemCount; + Id10:=TV2.GetColumnByFieldName('CanKaoQty').Index; + if ARecord.Values[Id]<>ARecord.Values[Id10] then + begin + if ARecord.Values[Id10]<>null then + AStyle:=DataLink_YSYF.Green; + end; + end else + begin + + end; + except + end; +end; + + +end. diff --git a/应收应付/U_YFCRLZView.dfm b/应收应付/U_YFCRLZView.dfm new file mode 100644 index 0000000..378f06d --- /dev/null +++ b/应收应付/U_YFCRLZView.dfm @@ -0,0 +1,521 @@ +object frmYFCRLZView: TfrmYFCRLZView + Left = 81 + Top = 72 + Width = 1144 + Height = 670 + Caption = #24212#20184#27454#26597#35810 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1136 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + Caption = #19968#38190#26367#25442 + ImageIndex = 54 + Visible = False + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 272 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 335 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 398 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1136 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 60 + Height = 12 + Caption = #39033#30446#21450#25688#35201 + end + object Label3: TLabel + Left = 302 + Top = 13 + Width = 48 + Height = 12 + Caption = #23545#26041#21333#20301 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 634 + Top = 13 + Width = 36 + Height = 12 + Caption = #35746#21333#21495 + end + object Label5: TLabel + Left = 782 + Top = 13 + Width = 24 + Height = 12 + Caption = #21333#20215 + end + object Label7: TLabel + Left = 918 + Top = 13 + Width = 48 + Height = 12 + Caption = #25903#20184#21488#22836 + end + object YFName: TEdit + Tag = 2 + Left = 528 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object FactoryName: TEdit + Tag = 2 + Left = 350 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + object OrderNo: TEdit + Tag = 2 + Left = 671 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object Price: TEdit + Tag = 1 + Left = 809 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 5 + OnChange = FactoryNameChange + end + object ComTaiTou: TEdit + Tag = 2 + Left = 966 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 6 + OnChange = FactoryNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1136 + Height = 563 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + Column = VBB + end + item + Kind = skSum + Column = VYB + end + item + Kind = skSum + Column = v2KP + end + item + Kind = skSum + Column = v2PS + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.OnGetContentStyle = Tv2StylesGetContentStyle + Styles.Header = DataLink_YSYF.Default + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 115 + end + object v2Column6: TcxGridDBColumn + Caption = #23545#26041#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 100 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39033#30446#21450#25688#35201 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 140 + end + object v2BatchNo: TcxGridDBColumn + Caption = #25209#21495 + DataBinding.FieldName = 'BatchNo' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2BatchNoPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2PS: TcxGridDBColumn + Caption = #31665#25968 + DataBinding.FieldName = 'PS' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2PSPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v2PayMent: TcxGridDBColumn + Caption = #25903#20184#26041#24335 + DataBinding.FieldName = 'PayMent' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2PayMentPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 69 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 82 + end + object v2Column5: TcxGridDBColumn + Caption = #21442#32771#25968#37327 + DataBinding.FieldName = 'CanKaoQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 76 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn6PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v2Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 72 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 71 + end + object VYB: TcxGridDBColumn + Caption = #21407#24065#37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object VBB: TcxGridDBColumn + Caption = #26412#24065#37329#39069 + DataBinding.FieldName = 'BBMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object v2KP: TcxGridDBColumn + Caption = #24320#31080#37329#39069 + DataBinding.FieldName = 'KPMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + Width = 62 + end + object VOrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column7PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 85 + end + object v2Column4: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Width = 53 + end + object v2Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2BatchNoPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 59 + end + object v2Column2: TcxGridDBColumn + Caption = #22383#24067#21517#31216 + DataBinding.FieldName = 'PBName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object v2Column3: TcxGridDBColumn + Caption = #25903#20184#21488#22836 + DataBinding.FieldName = 'ComTaiTou' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.ImmediatePost = True + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 66 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 869 + Top = 1 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 901 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_YFCRLZView.pas b/应收应付/U_YFCRLZView.pas new file mode 100644 index 0000000..61a3eec --- /dev/null +++ b/应收应付/U_YFCRLZView.pas @@ -0,0 +1,1011 @@ +unit U_YFCRLZView; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDropDownEdit; + +type + TfrmYFCRLZView = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + YFName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column1: TcxGridDBColumn; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + VYB: TcxGridDBColumn; + VBB: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + v2KP: TcxGridDBColumn; + v2BatchNo: TcxGridDBColumn; + v2PS: TcxGridDBColumn; + v2PayMent: TcxGridDBColumn; + v2Note: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + Label4: TLabel; + OrderNo: TEdit; + Label5: TLabel; + Price: TEdit; + v2Column3: TcxGridDBColumn; + Label7: TLabel; + ComTaiTou: TEdit; + ToolButton4: TToolButton; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure v2PSPropertiesEditValueChanged(Sender: TObject); + procedure v2BatchNoPropertiesEditValueChanged(Sender: TObject); + procedure v2PayMentPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure OrderNoChange(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + procedure Tv2StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + private + { Private declarations } + + procedure InitGridHZ(); + procedure InitGrid(); + function SaveData():Boolean; + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYFCRLZView: TfrmYFCRLZView; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderList, U_ProductOrderNewList; + +{$R *.dfm} + + + +procedure TfrmYFCRLZView.InitGrid(); +begin + begdate.SetFocus; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' exec P_View_YFK :begdate,:Enddate,1,'''' '); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmYFCRLZView.InitGridHZ(); +begin +end; + +procedure TfrmYFCRLZView.FormDestroy(Sender: TObject); +begin + frmYFCRLZView:=nil; +end; + +procedure TfrmYFCRLZView.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYFCRLZView.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ӦǼ',Tv2,''); + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); + ExecSQL; + end;} + Close; +end; +procedure TfrmYFCRLZView.TBDelClick(Sender: TObject); +var + FBBMoney,CRID:string; +begin + if CDS_HZ.IsEmpty then Exit; + if Trim(CDS_HZ.FieldByName('YFType').AsString)='Զ' then + begin + if Application.MessageBox('ԶɣȷҪִв','ʾ',32+4)<>IDYES then Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+Trim(cds_hz.fieldbyname('YFID').AsString)+''''); + Open; + end; + FBBMoney:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('YFID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; + CRID:=Trim(CDS_HZ.fieldbyname('CRID').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where CRID='+CRID); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_KC where CRID='+CRID); + ExecSQL; + end; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmYFCRLZView.FormShow(Sender: TObject); +var + fsj:String; +begin + ReadCxGrid('ӦǼ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-50; + fsj:='select Name=ZdyName,code='''' from KH_Zdy where Type=''OrdDefStr2'' '; + SInitCxGridComboBoxBySql(ADOQueryTemp,v2Column3,fsj,0,False,''); + if Trim(DParameters1)='޶' then + begin + VOrderNo.Hidden:=True; + VOrderNo.Visible:=False; + label4.Visible:=False; + OrderNo.Visible:=False; + end; + if Trim(DParameters2)='' then + begin + VHL.Hidden:=True; + VHL.Visible:=False; + VBZ.Hidden:=True; + VBZ.Visible:=False; + VYB.Hidden:=True; + VYB.Visible:=False; + VBB.Caption:=''; + end; + if Trim(DParameters5)<>'Ʊ' then + begin + v2KP.Hidden:=True; + v2KP.Visible:=False; + end else + begin + v2KP.Hidden:=False; + v2KP.Visible:=True; + end; + if Trim(DParameters6)='' then + begin + v2PS.Hidden:=False; + v2PS.Visible:=True; + v2BatchNo.Hidden:=False; + v2BatchNo.Visible:=True; + v2PayMent.Hidden:=False; + v2PayMent.Visible:=True; + end else + begin + v2PS.Hidden:=True; + v2PS.Visible:=False; + v2BatchNo.Hidden:=True; + v2BatchNo.Visible:=False; + v2PayMent.Hidden:=True; + v2PayMent.Visible:=False; + end; + InitGrid(); +end; + +procedure TfrmYFCRLZView.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmYFCRLZView.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmYFCRLZView.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYFCRLZView.Button2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +function TfrmYFCRLZView.SaveData():Boolean; +var + maxId,CRID:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxId,'YF','YF_Money_CR',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''''); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + //SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('YFId').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; + +procedure TfrmYFCRLZView.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRLZView.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + { if Trim(CDS_HZ.FieldByName('YFType').AsString)='Զ' then + begin + Application.MessageBox('Զɵݲ޸!','ʾ',0); + Exit; + end;} + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + if Trim(FFieldName)<>'Money' then + begin + if Trim(FFieldName)<>'HuiLv' then + begin + FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)); + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRLZView.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRLZView.ToolButton3Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFFactory'; + flagname:='Էλ'; + if Trim(DParameters8)='' then + begin + flag:='YFFactory'; + end else + begin + flag:=Trim(DParameters8); + end; + if Trim(DParameters4)='Էλֿ' then + MainType:=''; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('FactoryNo').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('FactoryName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + Self.SaveData(); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCRLZView.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.FieldByName('YFType').AsString)='Զ' then + begin + Application.MessageBox('Զɵݲ޸!','ʾ',0); + Exit; + end; + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFName'; + flagname:='ĿժҪ'; + if Trim(DParameters3)='Ŀֿ' then + MainType:=''; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('YFCode').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('YFName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set YFCode='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); + sql.Add(' ,YFName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCRLZView.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set QtyUnit='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCRLZView.v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BZType'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('BZType').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set BZType='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCRLZView.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'Ӧб'); +end; + +procedure TfrmYFCRLZView.v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.FieldByName('YFType').AsString)='Զ' then + begin + Application.MessageBox('Զɵݲ޸!','ʾ',0); + Exit; + end; + try + frmProductOrderNewList:=TfrmProductOrderNewList.Create(Application); + with frmProductOrderNewList do + begin + DParameters1:='Ȩ'; + //frmProductOrderList.v1Column4.Visible:=True; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('MainId').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString); + FieldByName('OrderNo').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrderNo').AsString); + FieldByName('ComTaiTou').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrdDefStr2').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set MainId='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString)+''''); + SQL.Add(',ComTaiTou='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrdDefStr2').AsString)+''''); + //sql.Add(' ,SubId='''+Trim(frmProductOrderList.Order_Main.fieldbyname('SubId').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + end; + finally + frmProductOrderNewList.Free; + end; +end; + +procedure TfrmYFCRLZView.v2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(KPMoney,0) KPMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('KPMoney').AsString; + FBBMoney:=CDS_HZ.fieldbyname('KPMoney').AsString; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCKPMoney=KCKPMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRLZView.v2PSPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRLZView.v2BatchNoPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRLZView.v2PayMentPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PayMent'; + flagname:='֧ʽ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('PayMent').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set PayMent='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCRLZView.OrderNoChange(Sender: TObject); +begin + if Length(Trim(OrderNo.Text))<3 then Exit; + ToolButton2.Click; +end; + +procedure TfrmYFCRLZView.ToolButton4Click(Sender: TObject); +var + FColumn:String; +begin + begdate.SetFocus; + FColumn:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if ((Trim(FColumn)='Note') or (Trim(FColumn)='YFName') or (Trim(FColumn)='ComTaiTou') or (Trim(FColumn)='Price')) then + begin + + end else + begin + Exit; + end; + if Application.MessageBox('ȷҪִв','ʾ',32+4)<>IDYES then Exit; + OneKeyPost(Tv2,CDS_HZ); + CDS_HZ.DisableControls; + with CDS_HZ do + begin + First; + while not Eof do + begin + if Trim(FColumn)<>'Price' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set '+Trim(FColumn)+'='''+Trim(CDS_HZ.fieldbyname(FColumn).Value)+''''); + sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + ExecSQL; + end; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + if Trim(CDS_HZ.fieldbyname(FColumn).AsString)<>'' then + sql.Add('Update YF_Money_CR Set Price='+Trim(CDS_HZ.fieldbyname(FColumn).AsString)) + else + sql.Add('Update YF_Money_CR Set Price=0 '); + sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty'); + sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_KC Set KCMoney=(select sum(QtyFlag*Money) from YF_Money_CR where CRId=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select sum(QtyFlag*BBMoney) from YF_Money_CR where CRId=YF_Money_KC.CRID)'); + sql.Add(' where CRID=(select CRID from YF_Money_CR B where B.YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''')'); + ExecSQL; + end; + end; + + Next; + end; + end; + CDS_HZ.EnableControls; +end; + +procedure TfrmYFCRLZView.OrderNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if Length(OrderNo.Text)<3 then Exit; + begdate.SetFocus; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' exec P_View_YFK :begdate,:Enddate,2,:orderno '); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Parameters.ParamByName('orderno').Value:='%'+Trim(OrderNo.Text)+'%'; + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmYFCRLZView.Tv2StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + Id,Id10:Integer; +begin + try + if Tv2.GroupedItemCount=0 then + begin + Id:=TV2.GetColumnByFieldName('Qty').Index;//;-TV1.GroupedItemCount; + Id10:=TV2.GetColumnByFieldName('CanKaoQty').Index; + if ARecord.Values[Id]<>ARecord.Values[Id10] then + begin + if ARecord.Values[Id10]<>null then + AStyle:=DataLink_YSYF.Green; + end; + end else + begin + + end; + except + end; +end; + +end. diff --git a/应收应付/U_YFCRYCL.dfm b/应收应付/U_YFCRYCL.dfm new file mode 100644 index 0000000..4b4026c --- /dev/null +++ b/应收应付/U_YFCRYCL.dfm @@ -0,0 +1,439 @@ +object frmYFCRYCL: TfrmYFCRYCL + Left = 154 + Top = 57 + Width = 1175 + Height = 670 + Caption = #24212#20184#27454#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1159 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton3Click + end + object TBDel: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1159 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 60 + Height = 12 + Caption = #39033#30446#21450#25688#35201 + end + object Label3: TLabel + Left = 302 + Top = 13 + Width = 48 + Height = 12 + Caption = #23545#26041#21333#20301 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object YFName: TEdit + Tag = 2 + Left = 528 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object FactoryName: TEdit + Left = 350 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1159 + Height = 562 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + Column = VBB + end + item + Kind = skSum + Column = VYB + end + item + Kind = skSum + Column = v2KP + end + item + Kind = skSum + Column = v2PS + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_YSYF.Default + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 115 + end + object v2Column6: TcxGridDBColumn + Caption = #23545#26041#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 100 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39033#30446#21450#25688#35201 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 140 + end + object v2BatchNo: TcxGridDBColumn + Caption = #25209#21495 + DataBinding.FieldName = 'BatchNo' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2BatchNoPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2PS: TcxGridDBColumn + Caption = #31665#25968 + DataBinding.FieldName = 'PS' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2PSPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v2PayMent: TcxGridDBColumn + Caption = #25903#20184#26041#24335 + DataBinding.FieldName = 'PayMent' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2PayMentPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 69 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 82 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn6PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v2Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 72 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 71 + end + object VYB: TcxGridDBColumn + Caption = #21407#24065#37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object VBB: TcxGridDBColumn + Caption = #26412#24065#37329#39069 + DataBinding.FieldName = 'BBMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object v2KP: TcxGridDBColumn + Caption = #24320#31080#37329#39069 + DataBinding.FieldName = 'KPMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + Width = 62 + end + object VOrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column7PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 85 + end + object v2Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2BatchNoPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 59 + end + object v2Column2: TcxGridDBColumn + Caption = #29289#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 62 + end + object v2Column3: TcxGridDBColumn + Caption = #29289#26009#35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 63 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_YFCRYCL.pas b/应收应付/U_YFCRYCL.pas new file mode 100644 index 0000000..823d52f --- /dev/null +++ b/应收应付/U_YFCRYCL.pas @@ -0,0 +1,882 @@ +unit U_YFCRYCL; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmYFCRYCL = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + YFName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column1: TcxGridDBColumn; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + VYB: TcxGridDBColumn; + VBB: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + v2KP: TcxGridDBColumn; + v2BatchNo: TcxGridDBColumn; + v2PS: TcxGridDBColumn; + v2PayMent: TcxGridDBColumn; + v2Note: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure v2PSPropertiesEditValueChanged(Sender: TObject); + procedure v2BatchNoPropertiesEditValueChanged(Sender: TObject); + procedure v2PayMentPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + private + { Private declarations } + + procedure InitGridHZ(); + procedure InitGrid(); + function SaveData():Boolean; + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYFCRYCL: TfrmYFCRYCL; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderList, U_ProductOrderNewList; + +{$R *.dfm} + + + +procedure TfrmYFCRYCL.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select A.*,C.YCLName,YCLSpec '); + sql.Add(',KHZJM=dbo.getPinYin(A.FactoryName)'); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + SQL.Add(' left join CK_YCL_CR C on A.YFTypeId=C.MSId'); + sql.Add('where A.CRTime>=:begdate and A.CRTime<:Enddate and A.CRType=''ӦǼ'' '); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmYFCRYCL.InitGridHZ(); +begin +end; + +procedure TfrmYFCRYCL.FormDestroy(Sender: TObject); +begin + frmYFCRYCL:=nil; +end; + +procedure TfrmYFCRYCL.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYFCRYCL.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ӦǼ',Tv2,''); + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); + ExecSQL; + end;} + Close; +end; +procedure TfrmYFCRYCL.TBDelClick(Sender: TObject); +var + FBBMoney,CRID:string; +begin + if CDS_HZ.IsEmpty then Exit; + if Trim(CDS_HZ.FieldByName('YFType').AsString)='Զ' then + begin + if Application.MessageBox('ԶɣȷҪִв','ʾ',32+4)<>IDYES then Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+Trim(cds_hz.fieldbyname('YFID').AsString)+''''); + Open; + end; + FBBMoney:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('YFID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; + CRID:=Trim(CDS_HZ.fieldbyname('CRID').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where CRID='+CRID); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_KC where CRID='+CRID); + ExecSQL; + end; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmYFCRYCL.FormShow(Sender: TObject); +begin + ReadCxGrid('ӦǼ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-50; + if Trim(DParameters1)='޶' then + begin + VOrderNo.Hidden:=True; + VOrderNo.Visible:=False; + end; + if Trim(DParameters2)='' then + begin + VHL.Hidden:=True; + VHL.Visible:=False; + VBZ.Hidden:=True; + VBZ.Visible:=False; + VYB.Hidden:=True; + VYB.Visible:=False; + VBB.Caption:=''; + end; + if Trim(DParameters5)<>'Ʊ' then + begin + v2KP.Hidden:=True; + v2KP.Visible:=False; + end else + begin + v2KP.Hidden:=False; + v2KP.Visible:=True; + end; + if Trim(DParameters6)='' then + begin + v2PS.Hidden:=False; + v2PS.Visible:=True; + v2BatchNo.Hidden:=False; + v2BatchNo.Visible:=True; + v2PayMent.Hidden:=False; + v2PayMent.Visible:=True; + end else + begin + v2PS.Hidden:=True; + v2PS.Visible:=False; + v2BatchNo.Hidden:=True; + v2BatchNo.Visible:=False; + v2PayMent.Hidden:=True; + v2PayMent.Visible:=False; + end; + InitGrid(); +end; + +procedure TfrmYFCRYCL.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmYFCRYCL.ToolButton2Click(Sender: TObject); +var + fsj:string; +begin + if ADOQueryMain.Active=False then Exit; + if Trim(SGetFilters(Panel1,1,2))='' then + begin + if Trim(FactoryName.Text)<>'' then + begin + fsj:=' FactoryName like '''+'%'+Trim(FactoryName.Text)+'%'+'''' + +' or KHZJM like '''+'%'+Trim(FactoryName.Text)+'%'+''''; + end; + + end else + begin + if Trim(FactoryName.Text)<>'' then + begin + fsj:=SGetFilters(Panel1,1,2)+' and (FactoryName like '''+'%'+Trim(FactoryName.Text)+'%'+'''' + +' or KHZJM like '''+'%'+Trim(FactoryName.Text)+'%'+''')'; + end; + end; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); +end; + +procedure TfrmYFCRYCL.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYFCRYCL.Button2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +function TfrmYFCRYCL.SaveData():Boolean; +var + maxId,CRID:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxId,'YF','YF_Money_CR',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''''); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + //SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('YFId').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; + +procedure TfrmYFCRYCL.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRYCL.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + { if Trim(CDS_HZ.FieldByName('YFType').AsString)='Զ' then + begin + Application.MessageBox('Զɵݲ޸!','ʾ',0); + Exit; + end;} + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + if Trim(FFieldName)<>'Money' then + begin + if Trim(FFieldName)<>'HuiLv' then + begin + FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)); + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRYCL.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRYCL.ToolButton3Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + //flag:='YFFactory'; + if Trim(DParameters8)='' then + begin + flag:='YFFactory'; + end else + begin + flag:=Trim(DParameters8); + end; + flagname:='Էλ'; + if Trim(DParameters4)='Էλֿ' then + MainType:=''; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('FactoryNo').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('FactoryName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + Self.SaveData(); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCRYCL.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.FieldByName('YFType').AsString)='Զ' then + begin + Application.MessageBox('Զɵݲ޸!','ʾ',0); + Exit; + end; + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFName'; + flagname:='ĿժҪ'; + if Trim(DParameters3)='Ŀֿ' then + MainType:=''; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('YFCode').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('YFName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set YFCode='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); + sql.Add(' ,YFName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCRYCL.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set QtyUnit='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCRYCL.v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BZType'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('BZType').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set BZType='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFCRYCL.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'Ӧб'); +end; + +procedure TfrmYFCRYCL.v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.FieldByName('YFType').AsString)='Զ' then + begin + Application.MessageBox('Զɵݲ޸!','ʾ',0); + Exit; + end; + try + frmProductOrderNewList:=TfrmProductOrderNewList.Create(Application); + with frmProductOrderNewList do + begin + DParameters1:='Ȩ'; + //frmProductOrderList.v1Column4.Visible:=True; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('MainId').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString); + FieldByName('OrderNo').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrderNo').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set MainId='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString)+''''); + //sql.Add(' ,SubId='''+Trim(frmProductOrderList.Order_Main.fieldbyname('SubId').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + end; + finally + frmProductOrderNewList.Free; + end; +end; + +procedure TfrmYFCRYCL.v2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(KPMoney,0) KPMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('KPMoney').AsString; + FBBMoney:=CDS_HZ.fieldbyname('KPMoney').AsString; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCKPMoney=KCKPMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRYCL.v2PSPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRYCL.v2BatchNoPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFCRYCL.v2PayMentPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PayMent'; + flagname:='֧ʽ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('PayMent').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set PayMent='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +end. diff --git a/应收应付/U_YFFKList.dfm b/应收应付/U_YFFKList.dfm new file mode 100644 index 0000000..888a0bf --- /dev/null +++ b/应收应付/U_YFFKList.dfm @@ -0,0 +1,340 @@ +object frmYFFKList: TfrmYFFKList + Left = 188 + Top = 79 + Width = 1038 + Height = 618 + Caption = #24212#20184#27454#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1022 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object ToolButton3: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #26597#30475#26126#32454 + ImageIndex = 57 + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 276 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1022 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 302 + Top = 13 + Width = 48 + Height = 12 + Caption = #23545#26041#21333#20301 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label1: TLabel + Left = 470 + Top = 13 + Width = 48 + Height = 12 + Caption = #25903#20184#21488#22836 + end + object FactoryName: TEdit + Tag = 2 + Left = 350 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 1 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object ComTaiTou: TEdit + Tag = 2 + Left = 518 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 3 + OnChange = FactoryNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1022 + Height = 509 + Align = alClient + TabOrder = 2 + LookAndFeel.NativeStyle = False + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + Column = v2Column1 + end + item + Kind = skSum + Column = v2Column2 + end + item + Kind = skSum + Column = v2Column3 + end + item + Kind = skSum + Column = v2BQKP + end + item + Kind = skSum + Column = v2WKP + end + item + Kind = skSum + Column = v2Column4 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.Header = DataLink_YSYF.FonePurple + object v2Column6: TcxGridDBColumn + Caption = #23545#26041#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 142 + end + object v2GSTT: TcxGridDBColumn + Caption = #25903#20184#21488#22836 + DataBinding.FieldName = 'ComTaiTou' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object v2Column5: TcxGridDBColumn + Caption = #19978#26399#27424#27454 + DataBinding.FieldName = 'SQMoney' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Focusing = False + Width = 104 + end + object v2Column1: TcxGridDBColumn + Caption = #26412#26399#24212#20184#27454 + DataBinding.FieldName = 'YFMoney' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Width = 95 + end + object v2Column2: TcxGridDBColumn + Caption = #26412#26399#20184#27454 + DataBinding.FieldName = 'FKMoney' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Width = 98 + end + object v2Column4: TcxGridDBColumn + Caption = #26412#26399#20943#20813 + DataBinding.FieldName = 'JMMoney' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object v2Column3: TcxGridDBColumn + Caption = #26412#26399#27424#27454 + DataBinding.FieldName = 'BQMoney' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Width = 114 + end + object v2BQKP: TcxGridDBColumn + Caption = #26412#26399#24320#31080 + DataBinding.FieldName = 'BQKP' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2WKP: TcxGridDBColumn + Caption = #26410#24320#31080 + DataBinding.FieldName = 'WKP' + HeaderAlignmentHorz = taCenter + Width = 65 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_YFFKList.pas b/应收应付/U_YFFKList.pas new file mode 100644 index 0000000..5979784 --- /dev/null +++ b/应收应付/U_YFFKList.pas @@ -0,0 +1,204 @@ +unit U_YFFKList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, + cxNavigator; + +type + TfrmYFFKList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2BQKP: TcxGridDBColumn; + v2WKP: TcxGridDBColumn; + v2GSTT: TcxGridDBColumn; + Label1: TLabel; + ComTaiTou: TEdit; + ToolButton3: TToolButton; + v2Column4: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYFFKList: TfrmYFFKList; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp,U_YFMXlist; + +{$R *.dfm} + + + +procedure TfrmYFFKList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + if Trim(DParameters10)='' then + sql.Add(' exec P_YFFK_List :begdate,:Enddate') + else + SQL.Add(' exec '+Trim(DParameters10)+' :begdate,:Enddate'); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmYFFKList.FormDestroy(Sender: TObject); +begin + frmYFFKList:=nil; +end; + +procedure TfrmYFFKList.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYFFKList.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ӧͳ',Tv2,''); + Close; +end; +procedure TfrmYFFKList.FormShow(Sender: TObject); +begin + ReadCxGrid('Ӧͳ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-7; + if Trim(DParameters5)='Ʊ' then + begin + v2BQKP.Hidden:=False; + v2BQKP.Visible:=True; + v2WKP.Hidden:=False; + v2WKP.Visible:=True; + end else + begin + v2BQKP.Hidden:=True; + v2BQKP.Visible:=False; + v2WKP.Hidden:=True; + v2WKP.Visible:=False; + end; + if Trim(DParameters9)='̨֧ͷ' then + begin + v2GSTT.Hidden:=False; + v2GSTT.Visible:=True; + Label1.Visible:=True; + ComTaiTou.Visible:=True; + end else + begin + v2GSTT.Hidden:=True; + v2GSTT.Visible:=False; + Label1.Visible:=False; + ComTaiTou.Visible:=False; + end; + + + InitGrid(); +end; + +procedure TfrmYFFKList.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmYFFKList.ToolButton2Click(Sender: TObject); +var + fsj:string; +begin + if ADOQueryMain.Active=False then Exit; + + SDofilter(ADOQueryMain, Trim(SGetFilters(Panel1,1,2))); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); +end; + +procedure TfrmYFFKList.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYFFKList.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'Ӧͳб'); +end; + +procedure TfrmYFFKList.ToolButton3Click(Sender: TObject); +begin + IF CDS_HZ.IsEmpty then exit; + frmYFMXlist:=TfrmYFMXlist.create(self); + with frmYFMXlist do + begin + begdate.Date:=self.begdate.Date; + enddate.Date:=self.Enddate.Date; + factoryName.Tag:=1; + factoryName.Text:=self.CDS_HZ.fieldbyname('FactoryName').AsString; + if showmodal=1 then + begin + end; + free; + end; +end; + +end. diff --git a/应收应付/U_YFFP.dfm b/应收应付/U_YFFP.dfm new file mode 100644 index 0000000..544e4b9 --- /dev/null +++ b/应收应付/U_YFFP.dfm @@ -0,0 +1,435 @@ +object frmYFFP: TfrmYFFP + Left = 75 + Top = 57 + Width = 1144 + Height = 670 + Caption = #36827#39033#21457#31080#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1136 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton3Click + end + object TBDel: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1136 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 24 + Height = 12 + Caption = #21697#21517 + end + object Label3: TLabel + Left = 302 + Top = 13 + Width = 48 + Height = 12 + Caption = #24320#31080#21333#20301 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 607 + Top = 13 + Width = 36 + Height = 12 + Caption = #35746#21333#21495 + end + object Label5: TLabel + Left = 750 + Top = 13 + Width = 48 + Height = 12 + Caption = #25903#20184#21488#22836 + end + object YFName: TEdit + Tag = 2 + Left = 493 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object FactoryName: TEdit + Tag = 2 + Left = 353 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + object OrderNo: TEdit + Tag = 2 + Left = 644 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object ComTaiTou: TEdit + Tag = 2 + Left = 798 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 5 + OnChange = FactoryNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1136 + Height = 563 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v2KP + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_YSYF.Default + object v2Column6: TcxGridDBColumn + Caption = #24320#31080#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 100 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #24320#31080#26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 115 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 140 + end + object v2PayMent: TcxGridDBColumn + Caption = #25903#20184#26041#24335 + DataBinding.FieldName = 'PayMent' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2PayMentPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 69 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 82 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn6PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 67 + end + object v2Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 72 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 71 + end + object v2KP: TcxGridDBColumn + Caption = #24320#31080#37329#39069 + DataBinding.FieldName = 'KPMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + Width = 62 + end + object VOrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column7PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 85 + end + object v2Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2BatchNoPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 84 + end + object v2ZFTT: TcxGridDBColumn + Caption = #25903#20184#21488#22836 + DataBinding.FieldName = 'ComTaiTou' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.ImmediatePost = True + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 63 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_YFFP.pas b/应收应付/U_YFFP.pas new file mode 100644 index 0000000..039d848 --- /dev/null +++ b/应收应付/U_YFFP.pas @@ -0,0 +1,853 @@ +unit U_YFFP; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDropDownEdit; + +type + TfrmYFFP = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + YFName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column1: TcxGridDBColumn; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + v2KP: TcxGridDBColumn; + v2PayMent: TcxGridDBColumn; + v2Note: TcxGridDBColumn; + Label4: TLabel; + OrderNo: TEdit; + v2ZFTT: TcxGridDBColumn; + Label5: TLabel; + ComTaiTou: TEdit; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure v2PSPropertiesEditValueChanged(Sender: TObject); + procedure v2BatchNoPropertiesEditValueChanged(Sender: TObject); + procedure v2PayMentPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure OrderNoChange(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + private + { Private declarations } + + procedure InitGridHZ(); + procedure InitGrid(); + function SaveData():Boolean; + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYFFP: TfrmYFFP; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderList, U_ProductOrderNewList; + +{$R *.dfm} + + + +procedure TfrmYFFP.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select A.*,C.OrderNo '); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + SQL.Add(' left join JYOrder_Main C on A.MainId=C.MainId'); + sql.Add('where A.CRTime>=:begdate and A.CRTime<:Enddate and A.CRType=''ӦƱǼ'' '); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmYFFP.InitGridHZ(); +begin +end; + +procedure TfrmYFFP.FormDestroy(Sender: TObject); +begin + frmYFFP:=nil; +end; + +procedure TfrmYFFP.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYFFP.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ӦƱ',Tv2,''); + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); + ExecSQL; + end;} + Close; +end; +procedure TfrmYFFP.TBDelClick(Sender: TObject); +var + FBBMoney:string; +begin + if CDS_HZ.IsEmpty then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+Trim(cds_hz.fieldbyname('YFID').AsString)+''''); + Open; + end; + FBBMoney:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('YFID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmYFFP.FormShow(Sender: TObject); +var + fsj:string; +begin + ReadCxGrid('ӦƱ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-7; + fsj:='select Name=ZdyName,code='''' from KH_Zdy where Type=''OrdDefStr2'' '; + SInitCxGridComboBoxBySql(ADOQueryTemp,v2ZFTT,fsj,0,False,''); + if Trim(DParameters1)='޶' then + begin + VOrderNo.Hidden:=True; + VOrderNo.Visible:=False; + end; + if Trim(DParameters2)='' then + begin + VHL.Hidden:=True; + VHL.Visible:=False; + VBZ.Hidden:=True; + VBZ.Visible:=False; + end; + if Trim(DParameters5)<>'Ʊ' then + begin + v2KP.Hidden:=True; + v2KP.Visible:=False; + end else + begin + v2KP.Hidden:=False; + v2KP.Visible:=True; + end; + InitGrid(); +end; + +procedure TfrmYFFP.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmYFFP.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmYFFP.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYFFP.Button2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +function TfrmYFFP.SaveData():Boolean; +var + maxId,CRID:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxId,'YF','YF_Money_CR',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''''); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + //SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦƱǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('YFId').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; + +procedure TfrmYFFP.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFFP.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FKPMoney,FKPNow,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(KPMoney,0) KPMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKPMoney:=ADOQueryTemp.fieldbyname('KPMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='1'; + if Trim(FFieldName)<>'KPMoney' then + begin + FKPNow:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + end else + begin + FKPNow:=CDS_HZ.fieldbyname('KPMoney').AsString; + end; + with CDS_HZ do + begin + Edit; + FieldByName('KPMoney').Value:=StrToFloat(FKPNow); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'KPMoney' then + begin + sql.Add(',KPMoney='+FKPNow); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCKPMoney=KCKPMoney-'+FKPMoney+'+'+FKPNow); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFFP.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFFP.ToolButton3Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFFactory'; + flagname:='Էλ'; + if Trim(DParameters8)='' then + begin + flag:='YFFactory'; + end else + begin + flag:=Trim(DParameters8); + end; + if Trim(DParameters4)='Էλֿ' then + MainType:=''; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('FactoryNo').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('FactoryName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + Self.SaveData(); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFFP.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFName'; + flagname:='ĿժҪ'; + if Trim(DParameters3)='Ŀֿ' then + MainType:=''; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('YFCode').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('YFName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set YFCode='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); + sql.Add(' ,YFName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFFP.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set QtyUnit='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFFP.v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BZType'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('BZType').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set BZType='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFFP.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'Ӧб'); +end; + +procedure TfrmYFFP.v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmProductOrderNewList:=TfrmProductOrderNewList.Create(Application); + with frmProductOrderNewList do + begin + DParameters1:='Ȩ'; + //frmProductOrderList.v1Column4.Visible:=True; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('MainId').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString); + FieldByName('OrderNo').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrderNo').AsString); + FieldByName('ComTaiTou').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrdDefStr2').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set MainId='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString)+''''); + //sql.Add(' ,SubId='''+Trim(frmProductOrderList.Order_Main.fieldbyname('SubId').AsString)+''''); + SQL.Add(',ComTaiTou='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrdDefStr2').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + end; + finally + frmProductOrderNewList.Free; + end; +end; + +procedure TfrmYFFP.v2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FBBMoney,FKCBB,FFieldName,FQty:String; + FPrice:Double; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(KPMoney,0) KPMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('KPMoney').AsString; + FBBMoney:=CDS_HZ.fieldbyname('KPMoney').AsString; + if Trim(CDS_HZ.fieldbyname('Qty').AsString)<>'' then + begin + FQty:=CDS_HZ.fieldbyname('Qty').AsString; + if StrToFloat(FQty)=0 then Exit; + FPrice:=StrToFloat(FBBMoney)*1.00/StrToFloat(FQty); + with CDS_HZ do + begin + Edit; + FieldByName('Price').Value:=FPrice; + Post; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('UPdate YF_Money_CR Set Price='+CDS_HZ.fieldbyname('Price').AsString); + sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + ExecSQL; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCKPMoney=KCKPMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFFP.v2PSPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFFP.v2BatchNoPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYFFP.v2PayMentPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PayMent'; + flagname:='֧ʽ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('PayMent').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set PayMent='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYFFP.OrderNoChange(Sender: TObject); +begin + if Length(Trim(OrderNo.Text))<3 then Exit; + ToolButton2.Click; +end; + +procedure TfrmYFFP.OrderNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(OrderNo.Text))<4 then Exit; + begdate.SetFocus; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select A.*,C.OrderNo '); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + SQL.Add(' left join JYOrder_Main C on A.MainId=C.MainId'); + sql.Add('where C.orderNo like :OrderNo'); + sql.Add('and A.CRType=''ӦƱǼ'''); + Parameters.ParamByName('OrderNo').Value:='%'+Trim(OrderNo.Text)+'%'; + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +end. diff --git a/应收应付/U_YFMXlist.dfm b/应收应付/U_YFMXlist.dfm new file mode 100644 index 0000000..b7f2ffb --- /dev/null +++ b/应收应付/U_YFMXlist.dfm @@ -0,0 +1,507 @@ +object frmYFMXlist: TfrmYFMXlist + Left = 329 + Top = 243 + Width = 1093 + Height = 621 + Caption = #24212#20184#27454#26126#32454 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1077 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #25171#21360 + ImageIndex = 12 + OnClick = ToolButton3Click + end + object ToolButton1: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1077 + Height = 38 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 534 + Top = 13 + Width = 24 + Height = 12 + Caption = #21697#21517 + end + object Label3: TLabel + Left = 746 + Top = 13 + Width = 24 + Height = 12 + Caption = #35268#26684 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 598 + Top = 77 + Width = 48 + Height = 12 + Caption = #25910#27454#36827#24230 + end + object Label5: TLabel + Left = 324 + Top = 14 + Width = 36 + Height = 12 + Caption = #20379#24212#21830 + end + object P_CodeName: TEdit + Tag = 2 + Left = 562 + Top = 9 + Width = 120 + Height = 20 + TabOrder = 0 + OnChange = P_CodeNameChange + end + object P_spec: TEdit + Tag = 2 + Left = 786 + Top = 9 + Width = 120 + Height = 20 + TabOrder = 1 + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Format = 'yyyy-MM-dd' + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Format = 'yyyy-MM-dd' + Time = 41256.918237847230000000 + TabOrder = 3 + end + object OrdDefNote3: TComboBox + Tag = 1 + Left = 662 + Top = 65 + Width = 145 + Height = 20 + ItemHeight = 12 + TabOrder = 4 + OnChange = P_CodeNameChange + Items.Strings = ( + #24050#20132#21333 + #24050#25215#20817 + #24050#25276#27719 + #24050#25910#27454 + #25276#27719#20013 + #20511#27454 + '' + '') + end + object factoryName: TEdit + Tag = 2 + Left = 364 + Top = 9 + Width = 120 + Height = 20 + TabOrder = 5 + OnChange = P_CodeNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 69 + Width = 1077 + Height = 367 + Align = alTop + TabOrder = 2 + LookAndFeel.NativeStyle = False + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxQty + end + item + Kind = skSum + end + item + Kind = skSum + Column = v2BBMoney + end + item + Kind = skSum + Column = VMoney + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v2Column1 + end + item + Kind = skSum + Column = v2Column2 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_YSYF.FonePurple + object v2factoryName: TcxGridDBColumn + Caption = #20379#24212#21830 + DataBinding.FieldName = 'factoryName' + HeaderAlignmentHorz = taCenter + Width = 100 + end + object cxCRTime: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 115 + end + object v2MPRTCodeName: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'P_CodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 80 + end + object Tv2Column1: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2MRPTspec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'P_spec' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v2YFName: TcxGridDBColumn + Caption = #36153#29992#21517#31216 + DataBinding.FieldName = 'YFName' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column1: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'PS' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object cxQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 82 + end + object cxQtyUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 66 + end + object v2Price: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 67 + end + object VMoney: TcxGridDBColumn + Caption = #24212#20184#27454#37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 91 + end + object v2BBMoney: TcxGridDBColumn + Caption = #20184#27454#37329#39069 + DataBinding.FieldName = 'BBMoney' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 86 + end + object v2Column2: TcxGridDBColumn + Caption = #20943#20813#37329#39069 + DataBinding.FieldName = 'DerateMoney' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object cxMoneyYe: TcxGridDBColumn + Caption = #20313#39069 + DataBinding.FieldName = 'MoneyYe' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.FonePurple + Width = 99 + end + object v2Column3: TcxGridDBColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'chker' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v2Column4: TcxGridDBColumn + Caption = #23457#26680#26085#26399 + DataBinding.FieldName = 'chkTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object Tv2Column2: TcxGridDBColumn + Caption = #35009#21098#21333#20215 + DataBinding.FieldName = 'CJprice' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object Tv2Column3: TcxGridDBColumn + Caption = #32541#32427#21333#20215 + DataBinding.FieldName = 'FRprice' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object Tv2Column4: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'P_code' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object Tv2Column5: TcxGridDBColumn + Caption = #35009#21098#25968#37327 + DataBinding.FieldName = 'CJqty' + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end + object RMDBDataSet1: TRMDBDataSet + Visible = True + DataSet = CDS_HZ + Left = 360 + Top = 260 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 252 + Top = 196 + ReportData = {} + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end +end diff --git a/应收应付/U_YFMXlist.pas b/应收应付/U_YFMXlist.pas new file mode 100644 index 0000000..1b1c172 --- /dev/null +++ b/应收应付/U_YFMXlist.pas @@ -0,0 +1,225 @@ +unit U_YFMXlist; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls, + cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, + cxTextEdit, cxDropDownEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, + RM_e_Xls; + +type + TfrmYFMXlist = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + P_CodeName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + P_spec: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxCRTime: TcxGridDBColumn; + cxMoneyYe: TcxGridDBColumn; + cxQty: TcxGridDBColumn; + cxQtyUnit: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + v2Price: TcxGridDBColumn; + VMoney: TcxGridDBColumn; + v2BBMoney: TcxGridDBColumn; + v2MPRTCodeName: TcxGridDBColumn; + Label4: TLabel; + OrdDefNote3: TComboBox; + v2factoryName: TcxGridDBColumn; + v2MRPTspec: TcxGridDBColumn; + v2YFName: TcxGridDBColumn; + Label5: TLabel; + factoryName: TEdit; + ToolButton3: TToolButton; + RMDBDataSet1: TRMDBDataSet; + RMGridReport1: TRMGridReport; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + Tv2Column1: TcxGridDBColumn; + Tv2Column2: TcxGridDBColumn; + Tv2Column3: TcxGridDBColumn; + Tv2Column4: TcxGridDBColumn; + Tv2Column5: TcxGridDBColumn; + RMXLSExport1: TRMXLSExport; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure P_OrderNo_YSK(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure P_CodeNameChange(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + private + { Private declarations } + + procedure InitGrid(); + public + { Public declarations } + RKFlag, FCYID: string; + end; + +var + frmYFMXlist: TfrmYFMXlist; + +implementation + +uses + U_DataLink, U_Fun, U_ZDYHelp, U_ProductOrderNewList; + +{$R *.dfm} + +procedure TfrmYFMXlist.InitGrid(); +begin + if trim(factoryName.Text) = '' then + begin + application.MessageBox('Ӧ̲Ϊգ빩Ӧ̣', 'ʾϢ', MB_ICONERROR); + exit; + end; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + SQL.Clear; + sql.Add(' exec P_Qry_Yfk_mx'); + sql.Add(' @begdate=''' + formatdateTime('yyyy-MM-dd', begdate.DateTime) + ''' '); + sql.Add(',@enddate=''' + formatdateTime('yyyy-MM-dd', enddate.DateTime + 1) + ''' '); + sql.Add(',@factoryName=' + quotedstr(trim(factoryName.Text))); +// ShowMessage(SQL.text); + Open; + end; + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmYFMXlist.FormDestroy(Sender: TObject); +begin + frmYFMXlist := nil; +end; + +procedure TfrmYFMXlist.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmYFMXlist.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption, Tv2, ''); + Close; +end; + +procedure TfrmYFMXlist.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption, Tv2, ''); + Enddate.DateTime := SGetServerDate(ADOQueryTemp); + begdate.DateTime := Enddate.DateTime - 30; +// InitGrid(); +end; + +procedure TfrmYFMXlist.TBRafreshClick(Sender: TObject); +begin + begdate.SetFocus; + InitGrid(); +end; + +procedure TfrmYFMXlist.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + end; +end; + +procedure TfrmYFMXlist.P_OrderNo_YSK(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYFMXlist.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then + Exit; + SelExportData(Tv2, ADOQueryMain, self.Caption); +end; + +procedure TfrmYFMXlist.P_CodeNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYFMXlist.FormCreate(Sender: TObject); +begin + cxGrid2.Align := AlClient; +end; + +procedure TfrmYFMXlist.ToolButton3Click(Sender: TObject); +var + filepath: string; +begin + RMGridReport1.PreviewButtons := [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, pbExport, pbNavigator]; + try + + filepath := ExtractFilePath(Application.ExeName) + 'report\Ӧ˵.rmf'; + if not FileExists(Pchar(filepath)) then + begin + application.MessageBox(pchar('ļ[' + filepath + ']ڣ'), 'ʾϢ', MB_IConError); + exit; + end; + RMVariables['dtxz'] := FormatDateTime('yyyy-mm-dd', date()); + RmVariables['begDate'] := FormatDateTime('yyyy-mm-dd', begDate.Date); + RmVariables['enddate'] := FormatDateTime('yyyy-mm-dd', enddate.Date); + RMVariables['zdr'] := trim(DName); + RmVariables['begDate'] := FormatDateTime('yyyy-mm-dd', begDate.Date) + ' ' + FormatDateTime('yyyy-mm-dd', enddate.Date); + CDS_HZ.First; + RmVariables['QCNum'] := CDS_HZ.fieldbyname('MoneyYe').AsFloat - CDS_HZ.fieldbyname('Money').AsFloat + CDS_HZ.fieldbyname('BBMoney').AsFloat; + CDS_HZ.Last; + RmVariables['endNum'] := CDS_HZ.fieldbyname('MoneyYe').AsString; + RMGridReport1.LoadFromFile(filepath); + // RMGridReport1.PrintReport; + RMGridReport1.ShowReport; + + finally + + end; +end; + +end. + diff --git a/应收应付/U_YFZDList_MX.dfm b/应收应付/U_YFZDList_MX.dfm new file mode 100644 index 0000000..c5a0008 --- /dev/null +++ b/应收应付/U_YFZDList_MX.dfm @@ -0,0 +1,298 @@ +object frmYFZDList_MX: TfrmYFZDList_MX + Left = 188 + Top = 79 + Width = 1038 + Height = 618 + Caption = #24212#20184#27454#23545#36134#20449#24687 + 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 = 1022 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1022 + Height = 42 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 426 + Top = 13 + Width = 24 + Height = 12 + Caption = #23458#25143 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label1: TLabel + Left = 470 + Top = 49 + Width = 48 + Height = 12 + Caption = #25903#20184#21488#22836 + end + object FactoryName: TEdit + Left = 458 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Format = 'yyyy-MM-dd' + Time = 41256.918237847230000000 + TabOrder = 1 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Format = 'yyyy-MM-dd' + Time = 41256.918237847230000000 + TabOrder = 2 + end + object ComTaiTou: TEdit + Tag = 2 + Left = 522 + Top = 49 + Width = 89 + Height = 20 + TabOrder = 3 + OnChange = FactoryNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 73 + Width = 1022 + Height = 335 + Align = alTop + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column4 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.Header = DataLink_YSYF.FonePurple + object v2Column1: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'factoryName' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column2: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column5: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'C_CodeName' + HeaderAlignmentHorz = taCenter + Width = 100 + end + object v2Column6: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column7: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column8: TcxGridDBColumn + Caption = #24212#20184#27454#37329#39069 + DataBinding.FieldName = 'yfk' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column9: TcxGridDBColumn + Caption = #20184#27454#37329#39069 + DataBinding.FieldName = 'fk' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column4: TcxGridDBColumn + Caption = #32047#35745#27424#27454 + DataBinding.FieldName = 'yfkye' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_YSYF.FontBlue + Styles.Footer = DataLink_YSYF.FontBlue + Styles.Header = DataLink_YSYF.FontBlue + Width = 80 + end + object v2Column10: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'note' + HeaderAlignmentHorz = taCenter + Width = 200 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_YFZDList_MX.pas b/应收应付/U_YFZDList_MX.pas new file mode 100644 index 0000000..245ddef --- /dev/null +++ b/应收应付/U_YFZDList_MX.pas @@ -0,0 +1,209 @@ +unit U_YFZDList_MX; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmYFZDList_MX = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + Label1: TLabel; + ComTaiTou: TEdit; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + v2Column10: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure FormCreate(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYFZDList_MX: TfrmYFZDList_MX; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + + + +procedure TfrmYFZDList_MX.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add('exec P_Get_zk_MX '); + sql.Add('@begdate='''+Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime))+''' '); + sql.Add(',@enddate='''+Trim(FormatDateTime('yyyy-MM-dd',enddate.DateTime+1))+''' '); + sql.Add(',@FactoryName='+quotedstr(trim(FactoryName.Text))); + sql.Add(',@sfFlag='+quotedstr(trim('0'))); + sql.Add(',@isgd='+quotedstr(trim('0'))); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmYFZDList_MX.FormDestroy(Sender: TObject); +begin + frmYFZDList_MX:=nil; +end; + +procedure TfrmYFZDList_MX.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYFZDList_MX.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption,Tv2,''); + Close; +end; +procedure TfrmYFZDList_MX.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption,Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-7; +{ if Trim(DParameters5)='Ʊ' then + begin + v2BQKP.Hidden:=False; + v2BQKP.Visible:=True; + v2WKP.Hidden:=False; + v2WKP.Visible:=True; + end else + begin + v2BQKP.Hidden:=True; + v2BQKP.Visible:=False; + v2WKP.Hidden:=True; + v2WKP.Visible:=False; + end; + if Trim(DParameters9)='̨֧ͷ' then + begin + v2GSTT.Hidden:=False; + v2GSTT.Visible:=True; + Label1.Visible:=True; + ComTaiTou.Visible:=True; + end else + begin + v2GSTT.Hidden:=True; + v2GSTT.Visible:=False; + Label1.Visible:=False; + ComTaiTou.Visible:=False; + end; + } + + InitGrid(); +end; + +procedure TfrmYFZDList_MX.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmYFZDList_MX.ToolButton2Click(Sender: TObject); +var + fsj:string; +begin + if ADOQueryMain.Active=False then Exit; + if Trim(SGetFilters(Panel1,1,2))='' then + begin + if Trim(FactoryName.Text)<>'' then + begin + fsj:=' FactoryName like '''+'%'+Trim(FactoryName.Text)+'%'+'''' + +' or KHZJM like '''+'%'+Trim(FactoryName.Text)+'%'+''''; + end; + + end else + begin + if Trim(FactoryName.Text)<>'' then + begin + fsj:=SGetFilters(Panel1,1,2)+' and (FactoryName like '''+'%'+Trim(FactoryName.Text)+'%'+'''' + +' or KHZJM like '''+'%'+Trim(FactoryName.Text)+'%'+''')'; + end; + end; + fsj:=''; + if Trim(FactoryName.Text)<>'' then + fsj:=' FactoryName like '''+'%'+Trim(FactoryName.Text)+'%'+''''; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); +end; + +procedure TfrmYFZDList_MX.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYFZDList_MX.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid2); +// SelExportData(Tv2,ADOQueryMain,'Ӧͳб'); +end; + +procedure TfrmYFZDList_MX.FormCreate(Sender: TObject); +begin + cxGrid2.Align:=AlClient; +end; + +end. diff --git a/应收应付/U_YKHXList.dfm b/应收应付/U_YKHXList.dfm new file mode 100644 index 0000000..43c3c67 --- /dev/null +++ b/应收应付/U_YKHXList.dfm @@ -0,0 +1,335 @@ +object frmYKHXList: TfrmYKHXList + Left = 145 + Top = 157 + Width = 1038 + Height = 618 + Caption = #24212#20184#27454#23545#36134#20449#24687 + 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 = 1022 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #25764#38144#26680#38144 + ImageIndex = 48 + OnClick = ToolButton3Click + end + object ToolButton1: TToolButton + Left = 213 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 276 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1022 + Height = 58 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 338 + Top = 13 + Width = 24 + Height = 12 + Caption = #23458#25143 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26680#38144#26085#26399 + end + object Label6: TLabel + Left = 172 + Top = 13 + Width = 6 + Height = 12 + Caption = '-' + end + object Label4: TLabel + Left = 646 + Top = 13 + Width = 48 + Height = 12 + Caption = #24212#25910#27454#21495 + end + object Label5: TLabel + Left = 482 + Top = 13 + Width = 48 + Height = 12 + Caption = #25910#27454#21333#21495 + end + object FactoryName: TEdit + Tag = 2 + Left = 370 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Format = 'yyyy-MM-dd' + Time = 41256.918237847230000000 + TabOrder = 1 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Format = 'yyyy-MM-dd' + Time = 41256.918237847230000000 + TabOrder = 2 + end + object listNo: TEdit + Tag = 2 + Left = 534 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 3 + OnChange = FactoryNameChange + end + object ToNo: TEdit + Tag = 2 + Left = 698 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = FactoryNameChange + end + object CheckBox1: TCheckBox + Left = 28 + Top = 37 + Width = 97 + Height = 17 + Caption = #20840#36873 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 5 + OnClick = CheckBox1Click + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 89 + Width = 1022 + Height = 404 + Align = alTop + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column4 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.Header = DataLink_YSYF.FonePurple + object v2Ssel: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'Ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 44 + end + object v2Column2: TcxGridDBColumn + Caption = #26680#38144#26085#26399 + DataBinding.FieldName = 'Filldate' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 120 + end + object v2Column1: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'factoryName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 120 + end + object v2Column3: TcxGridDBColumn + Caption = #24212#25910#27454#21495 + DataBinding.FieldName = 'ToNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 96 + end + object v2Column5: TcxGridDBColumn + Caption = #25910#27454#21333#21495 + DataBinding.FieldName = 'listNO' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 103 + end + object v2Column4: TcxGridDBColumn + Caption = #26680#38144#37329#39069 + DataBinding.FieldName = 'num' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_YSYF.FontBlue + Styles.Footer = DataLink_YSYF.FontBlue + Styles.Header = DataLink_YSYF.FontBlue + Width = 106 + end + object v2Column6: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 94 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 348 + Top = 216 + end +end diff --git a/应收应付/U_YKHXList.pas b/应收应付/U_YKHXList.pas new file mode 100644 index 0000000..2d5e88c --- /dev/null +++ b/应收应付/U_YKHXList.pas @@ -0,0 +1,258 @@ +unit U_YKHXList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmYKHXList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Ssel: TcxGridDBColumn; + Label4: TLabel; + listNo: TEdit; + Label5: TLabel; + ToNo: TEdit; + ADOQueryMain: TADOQuery; + CheckBox1: TCheckBox; + ToolButton3: TToolButton; + v2Column6: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYKHXList: TfrmYKHXList; + +implementation +uses + U_DataLink,U_Fun10,U_ZDYHelp; + +{$R *.dfm} + + + +procedure TfrmYKHXList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + SQL.Clear; + Filtered:=False; + sql.Add(' select A.*,B.factoryName '); + sql.Add(' from YF_Log A '); + sql.Add(' inner join YF_Money_CR B on B.YFID=A.ToNo '); + sql.Add(' where A.Filldate>='''+formatdateTime('yyyy-MM-dd',begdate.DateTime)+''' '); + sql.Add(' and A.Filldate<'''+formatdateTime('yyyy-MM-dd',enddate.DateTime+1)+''' '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmYKHXList.FormDestroy(Sender: TObject); +begin + frmYKHXList:=nil; +end; + +procedure TfrmYKHXList.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYKHXList.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption,Tv2,''); + Close; +end; +procedure TfrmYKHXList.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption,Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-7; + + + InitGrid(); +end; + +procedure TfrmYKHXList.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmYKHXList.ToolButton2Click(Sender: TObject); +var + fsj:string; +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmYKHXList.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYKHXList.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid2); +// SelExportData(Tv2,ADOQueryMain,'Ӧͳб'); +end; + +procedure TfrmYKHXList.FormCreate(Sender: TObject); +begin + cxGrid2.Align:=AlClient; +end; + +procedure TfrmYKHXList.CheckBox1Click(Sender: TObject); +begin + IF CDS_HZ.IsEmpty then exit; + with CDS_HZ do + begin + DisableControls; + first; + while not eof do + begin + edit; + fieldbyname('ssel').Value:=checkbox1.Checked; + post; + next; + end; + First; + EnableControls; + end; +end; + +procedure TfrmYKHXList.ToolButton3Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then exit; + if CDS_HZ.Locate('ssel',true,[])=false then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + ADOQueryCmd.Connection.BeginTrans; + try + + + with CDS_HZ do + begin + DisableControls; + first; + while not eof do + begin + IF Fieldbyname('ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add(' update YF_Money_CR SET HXNum=A.HxNum - B.num '); + sql.Add(' from YF_Money_CR A '); + sql.Add(' inner join YF_Log B on B.listNo=A.YFID '); + sql.Add(' where B.AutoID='+quotedstr(trim(CDS_HZ.fieldbyname('AutoID').AsString))); + + sql.Add(' update YF_Money_CR SET HXNum=A.HxNum - B.num '); + sql.Add(' from YF_Money_CR A '); + sql.Add(' inner join YF_Log B on B.ToNo=A.YFID '); + sql.Add(' where B.AutoID='+quotedstr(trim(CDS_HZ.fieldbyname('AutoID').AsString))); + + sql.Add(' update YF_Money_CR SET status=''0'' '); + sql.Add(' from YF_Money_CR A '); + sql.Add(' inner join YF_Log B on B.listNo=A.YFID '); + sql.Add(' where B.AutoID='+quotedstr(trim(CDS_HZ.fieldbyname('AutoID').AsString))); + sql.Add(' and hxNum=0 '); + + sql.Add(' update YF_Money_CR SET status=''0'' '); + sql.Add(' from YF_Money_CR A '); + sql.Add(' inner join YF_Log B on B.ToNo=A.YFID '); + sql.Add(' where B.AutoID='+quotedstr(trim(CDS_HZ.fieldbyname('AutoID').AsString))); + sql.Add(' and hxNum=0 '); + + + sql.Add(' delete from YF_Log '); + sql.Add(' where AutoID='+quotedstr(trim(CDS_HZ.fieldbyname('AutoID').AsString))); + + + execsql; + end; + end; + next; + end; + First; + EnableControls; + end; + ADOQueryCmd.Connection.CommitTrans; + application.MessageBox('ɹ','ʾϢ'); + TBRafresh.Click; + except + ADOQueryCmd.Connection.RollbackTrans; + CDS_HZ.EnableControls; + application.MessageBox('ʧܣ','ʾϢ',0); + end; + +end; + +end. diff --git a/应收应付/U_YPCR.dfm b/应收应付/U_YPCR.dfm new file mode 100644 index 0000000..dc8701d --- /dev/null +++ b/应收应付/U_YPCR.dfm @@ -0,0 +1,300 @@ +object frmYPCR: TfrmYPCR + Left = 188 + Top = 79 + Width = 1038 + Height = 618 + Caption = #20837#24211#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1030 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_TradeManage.ThreeImgList + Flat = True + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #22686#34892 + ImageIndex = 103 + end + object TBDel: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + Visible = False + end + object TBClose: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1030 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 48 + Height = 12 + Caption = #35268' '#26684 + end + object Label3: TLabel + Left = 302 + Top = 13 + Width = 48 + Height = 12 + Caption = #20013#25991#21517#31216 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object CYSpec: TEdit + Tag = 2 + Left = 515 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = CYNameChange + end + object CYName: TEdit + Tag = 2 + Left = 350 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = CYNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1030 + Height = 511 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object cxGridDBColumn1: TcxGridDBColumn + Tag = 3 + Caption = #20837#24211#26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 129 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'CYName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 140 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'CYSpec' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 110 + end + object cxGridDBColumn5: TcxGridDBColumn + Tag = 3 + Caption = #20837#24211#25968#37327 + DataBinding.FieldName = 'CRQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 117 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'KCUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 105 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 472 + Top = 248 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_YPCR.pas b/应收应付/U_YPCR.pas new file mode 100644 index 0000000..b871d6f --- /dev/null +++ b/应收应付/U_YPCR.pas @@ -0,0 +1,345 @@ +unit U_YPCR; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmYPCR = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + CYSpec: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + CYName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure CYNameChange(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + private + { Private declarations } + + procedure InitGridHZ(); + + public + { Public declarations } + RKFlag,FCYID:String; + procedure InitGrid(); + function SaveData():Boolean; + end; + +var + frmYPCR: TfrmYPCR; + +implementation +uses + U_DataLink,U_Fun; + +{$R *.dfm} + + + +procedure TfrmYPCR.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select A.* from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + sql.Add('where A.CRTime>=:begdate and A.CRTime<:Enddate'); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmYPCR.InitGridHZ(); +begin +end; + +procedure TfrmYPCR.FormDestroy(Sender: TObject); +begin + frmYPCR:=nil; +end; + +procedure TfrmYPCR.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYPCR.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ʒ',Tv2,'Ʒ'); + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); + ExecSQL; + end; + Close; +end; +procedure TfrmYPCR.TBDelClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('CRID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + SQL.Add('Update CP_YDang Set KCQty=(select isnull(Sum(CRQty*CRFlag),0) from CK_YP_CR A where A.CYID=CP_YDang.CYID )'); + sql.Add(' where CYID='''+Trim(CDS_HZ.fieldbyname('CYID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmYPCR.FormShow(Sender: TObject); +begin + ReadCxGrid('Ʒ',Tv2,'Ʒ'); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-7; + //InitGrid(); +end; + +procedure TfrmYPCR.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmYPCR.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmYPCR.CYNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYPCR.Button2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +function TfrmYPCR.SaveData():Boolean; +var + maxId:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxId,'RK','CK_YP_CR',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from CK_YP_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CYId').Value:=Trim(FCYID); + FieldByName('CRId').Value:=Trim(maxId); + SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'CK_YP_CR',3); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:=Trim(RKFlag); + if Trim(RKFlag)='' then + begin + FieldByName('CRFlag').Value:=1; + end else + begin + FieldByName('CRFlag').Value:=-1; + end; + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('CRId').Value:=Trim(maxId); + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; + +procedure TfrmYPCR.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYPCR.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate CK_YP_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where CRId='''+Trim(CDS_HZ.fieldbyname('CRId').AsString)+''''); + SQL.Add('Update CP_YDang Set KCQty=(select isnull(Sum(CRQty*CRFlag),0) from CK_YP_CR A where A.CYID=CP_YDang.CYID )'); + sql.Add(' where CYID='''+Trim(CDS_HZ.fieldbyname('CYID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYPCR.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate CK_YP_CR '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where CRId='''+Trim(CDS_HZ.fieldbyname('CRId').AsString)+''''); + ExecSQL; + end; +end; + +end. diff --git a/应收应付/U_YSCR.dfm b/应收应付/U_YSCR.dfm new file mode 100644 index 0000000..327453d --- /dev/null +++ b/应收应付/U_YSCR.dfm @@ -0,0 +1,737 @@ +object frmYSCR: TfrmYSCR + Left = 247 + Top = 117 + Width = 1226 + Height = 614 + Caption = #24212#25910#27454#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1210 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton5: TToolButton + Left = 126 + Top = 0 + Caption = #33258#21160#29983#25104 + ImageIndex = 16 + OnClick = ToolButton5Click + end + object ToolButton3: TToolButton + Left = 209 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton3Click + end + object TBDel: TToolButton + Left = 272 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton4: TToolButton + Left = 335 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 44 + OnClick = ToolButton4Click + end + object Tchk: TToolButton + Left = 398 + Top = 0 + AutoSize = True + Caption = #23457#26680 + ImageIndex = 41 + OnClick = TchkClick + end + object Tnochk: TToolButton + Left = 461 + Top = 0 + AutoSize = True + Caption = #25764#38144#23457#26680 + Enabled = False + ImageIndex = 56 + OnClick = TnochkClick + end + object ToolButton1: TToolButton + Left = 548 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 611 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1210 + Height = 58 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 60 + Height = 12 + Caption = #39033#30446#21450#25688#35201 + end + object Label3: TLabel + Left = 294 + Top = 13 + Width = 48 + Height = 12 + Caption = #23545#26041#21333#20301 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 650 + Top = 13 + Width = 48 + Height = 12 + Caption = #20986#24211#21333#21495 + end + object Label5: TLabel + Left = 830 + Top = 13 + Width = 24 + Height = 12 + Caption = #37329#39069 + end + object YFName: TEdit + Tag = 2 + Left = 528 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object FactoryName: TEdit + Tag = 2 + Left = 342 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + object inoutNo: TEdit + Tag = 2 + Left = 704 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = FactoryNameChange + end + object BBMoneyM: TEdit + Tag = 2 + Left = 860 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 5 + OnChange = FactoryNameChange + end + object CheckBox1: TCheckBox + Left = 24 + Top = 36 + Width = 97 + Height = 17 + Caption = #20840#36873 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 6 + OnClick = CheckBox1Click + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 111 + Width = 1210 + Height = 464 + Align = alClient + TabOrder = 2 + LookAndFeel.NativeStyle = False + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnFocusedRecordChanged = Tv2FocusedRecordChanged + DataController.DataSource = DS_HZ + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + Column = VBB + end + item + Kind = skSum + Column = v2PS + end + item + Kind = skSum + Column = VYB + end + item + Kind = skSum + Column = v2KP + end + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + Column = v2Column7 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_YSYF.FonePurple + object v2Column10: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSEL' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v2YFID: TcxGridDBColumn + Caption = #24212#25910#21333#21495 + DataBinding.FieldName = 'YFID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 75 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 90 + end + object v2Column6: TcxGridDBColumn + Caption = #23545#26041#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 112 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39033#30446#21450#25688#35201 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 140 + end + object v2PS: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'PS' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2PSPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 56 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 82 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn6PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 70 + end + object v2Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 72 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 71 + end + object VYB: TcxGridDBColumn + Caption = #21407#24065#37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle_fontclBlue + Styles.Footer = cxStyle_fontclBlue + Styles.Header = cxStyle_fontclBlue + Width = 70 + end + object VBB: TcxGridDBColumn + Caption = #26412#24065#37329#39069 + DataBinding.FieldName = 'BBMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Content = cxStyle_fontclBlue + Styles.Footer = cxStyle_fontclBlue + Styles.Header = cxStyle_fontclBlue + Width = 66 + end + object v2KP: TcxGridDBColumn + Caption = #24320#31080#37329#39069 + DataBinding.FieldName = 'KPMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2KPMoneyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 69 + end + object VOrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column7PropertiesButtonClick + Visible = False + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2mainID: TcxGridDBColumn + Caption = #20986#24211#21333#21495 + DataBinding.FieldName = 'inoutNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.CellMerging = True + Width = 70 + end + object v2Column3: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'P_CodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object v2Column8: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'P_Spec' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v2Column4: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v2Column5: TcxGridDBColumn + Caption = #26680#38144#37329#39069 + DataBinding.FieldName = 'hxNum' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = cxStyle_fontclFuchsia + Styles.Footer = cxStyle_fontclFuchsia + Styles.Header = cxStyle_fontclFuchsia + VisibleForCustomization = False + Width = 70 + end + object v2Column7: TcxGridDBColumn + Caption = #26410#26680#38144#37329#39069 + DataBinding.FieldName = 'NhxNUm' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = cxStyle_fontclPurple + Styles.Footer = cxStyle_fontclPurple + Styles.Header = cxStyle_fontclPurple + VisibleForCustomization = False + Width = 70 + end + object v2Column2: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 99 + end + object v2Column9: TcxGridDBColumn + Caption = #26159#21542#21547#31246 + DataBinding.FieldName = 'isTax' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 71 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 89 + Width = 1210 + Height = 22 + Align = alTop + TabOrder = 3 + Properties.CustomButtons.Buttons = <> + Properties.Style = 9 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + #26410#23457#26680 + #24050#23457#26680 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectBottom = 22 + ClientRectRight = 1210 + ClientRectTop = 19 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end + object cxStyleRepository1: TcxStyleRepository + Left = 265 + Top = 178 + PixelsPerInch = 96 + object cxStyle1: TcxStyle + AssignedValues = [svColor] + Color = clInactiveCaption + end + object cxStyle2: TcxStyle + AssignedValues = [svColor, svTextColor] + Color = 4707838 + TextColor = clBtnText + end + object cxStyle_gridRow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16311512 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_gridFoot: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridHead: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridGroupBox: TcxStyle + AssignedValues = [svColor, svFont] + Color = clMoneyGreen + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_yellow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_fontBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_fontclFuchsia: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clFuchsia + end + object cxStyle_fontclPurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clPurple + end + object cxStyle_fontclGreen: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clGreen + end + object cxStyle_fontclBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object cxStyle_fontclTeal: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clTeal + end + object cxStyle_fontclOlive: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + end +end diff --git a/应收应付/U_YSCR.pas b/应收应付/U_YSCR.pas new file mode 100644 index 0000000..0fc4a2f --- /dev/null +++ b/应收应付/U_YSCR.pas @@ -0,0 +1,1102 @@ +unit U_YSCR; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls, + cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, + cxTextEdit, cxPC, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, + dxBarBuiltInMenu; + +type + TfrmYSCR = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + YFName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column1: TcxGridDBColumn; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + VYB: TcxGridDBColumn; + VBB: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + v2PS: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2KP: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxStyle_gridRow: TcxStyle; + cxStyle_gridFoot: TcxStyle; + cxStyle_gridHead: TcxStyle; + cxStyle_gridGroupBox: TcxStyle; + cxStyle_yellow: TcxStyle; + cxStyle_Red: TcxStyle; + cxStyle_fontBlack: TcxStyle; + cxStyle_fontclFuchsia: TcxStyle; + cxStyle_fontclPurple: TcxStyle; + cxStyle_fontclGreen: TcxStyle; + cxStyle_fontclBlue: TcxStyle; + cxStyle_fontclTeal: TcxStyle; + cxStyle_fontclOlive: TcxStyle; + v2Column5: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2YFID: TcxGridDBColumn; + v2mainID: TcxGridDBColumn; + Label4: TLabel; + inoutNo: TEdit; + v2Column8: TcxGridDBColumn; + BBMoneyM: TEdit; + Label5: TLabel; + ToolButton4: TToolButton; + v2Column9: TcxGridDBColumn; + cxTabControl1: TcxTabControl; + Tchk: TToolButton; + Tnochk: TToolButton; + v2Column10: TcxGridDBColumn; + CheckBox1: TCheckBox; + ToolButton5: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v2Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column7PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v2PSPropertiesEditValueChanged(Sender: TObject); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure v2KPMoneyPropertiesEditValueChanged(Sender: TObject); + procedure Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure ToolButton4Click(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure TchkClick(Sender: TObject); + procedure TnochkClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + private + { Private declarations } + + procedure InitGridHZ(); + procedure InitGrid(); + function SaveData(): Boolean; + public + fflag: string; + { Public declarations } + RKFlag, FCYID: string; + end; + +var + frmYSCR: TfrmYSCR; + +implementation + +uses + U_DataLink, U_Fun, U_ZDYHelp, U_ProductOrderNewList, U_ProductOrderList, + U_ZdyAttachment, U_YSSCList; + +{$R *.dfm} + +procedure TfrmYSCR.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + SQL.Clear; + sql.Add(' select A.*,C.P_CodeName,C.P_spec,C.P_Color,C.InoutNo,NhxNum=A.money-A.hxNum,cast(BBMoney as varchar) as BBMoneyM,D.OrderNo'); + sql.Add(' from YF_Money_CR A'); + // sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + SQL.Add(' left join CP_INOut C on C.CRNO=A.MainId and C.CRID=A.subID'); + SQL.Add(' left join JYOrder_main D on D.mainID=C.MainId '); + sql.Add(' where A.CRTime>=''' + FormatDateTime('yyyy-MM-dd', begdate.DateTime) + ''' '); + sql.Add(' and A.CRTime<''' + FormatDateTime('yyyy-MM-dd', Enddate.DateTime + 1) + ''' '); + sql.Add(' and A.CRType=''ӦտǼ'' '); + if cxTabControl1.TabIndex < 2 then + sql.Add(' and isnull(A.status,0)=''' + inttostr(cxTabControl1.TabIndex) + ''' '); + sql.Add(' order by A.CRTime,A.YFID'); + Open; + end; + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; + ToolButton2.Click; +end; + +procedure TfrmYSCR.InitGridHZ(); +begin +end; + +procedure TfrmYSCR.FormDestroy(Sender: TObject); +begin + WriteCxGrid('ӦտǼ1', Tv2, ''); + frmYSCR := nil; +end; + +procedure TfrmYSCR.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmYSCR.TBCloseClick(Sender: TObject); +begin + + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); + ExecSQL; + end;} + Close; +end; + +procedure TfrmYSCR.TBDelClick(Sender: TObject); +var + FBBMoney, CRID: string; +begin + if CDS_HZ.IsEmpty then + Exit; + if CDS_HZ.FieldByName('hxNum').AsFloat <> 0 then + begin + application.MessageBox('˵Ѳݣɾ', 'ʾϢ', 0); + exit; + end; + if Trim(CDS_HZ.fieldbyname('YFType').AsString) <> '' then + begin + if Application.MessageBox('ԶɣȷҪִв', 'ʾ', 32 + 4) <> IDYES then + Exit; + end; + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID=''' + Trim(cds_hz.fieldbyname('YFID').AsString) + ''''); + Open; + end; + FBBMoney := ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + if Trim(CDS_HZ.fieldbyname('YFID').AsString) <> '' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YF_Money_CR where YFID=''' + Trim(CDS_HZ.fieldbyname('YFID').AsString) + ''''); + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-' + FBBMoney); + sql.Add(' where CRID=''' + Trim(CDS_HZ.fieldbyname('CRID').AsString) + ''''); + ExecSQL; + end; + CRID := Trim(CDS_HZ.fieldbyname('CRID').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where CRID=' + CRID); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_KC where CRID=' + CRID); + ExecSQL; + end; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmYSCR.FormShow(Sender: TObject); +begin + ReadCxGrid('ӦտǼ1', Tv2, ''); + Enddate.DateTime := SGetServerDate(ADOQueryTemp); + begdate.DateTime := Enddate.DateTime - 7; + if Trim(DParameters1) = '޶' then + begin + VOrderNo.Hidden := True; + VOrderNo.Visible := False; + end; + if Trim(DParameters2) = '' then + begin + VHL.Hidden := True; + VHL.Visible := False; + VBZ.Hidden := True; + VBZ.Visible := False; + VYB.Hidden := True; + VYB.Visible := False; + VBB.Caption := ''; + end; + if Trim(DParameters5) <> 'Ʊ' then + begin + v2KP.Hidden := True; + v2KP.Visible := False; + end + else + begin + v2KP.Hidden := False; + v2KP.Visible := True; + end; +{ if Trim(DParameters7)<>'ƥ' then + begin + v2PS.Hidden:=True; + v2PS.Visible:=False; + end else + begin + v2PS.Hidden:=False; + v2PS.Visible:=True; + end; } + InitGrid(); +end; + +procedure TfrmYSCR.TBRafreshClick(Sender: TObject); +begin + begdate.SetFocus; + InitGrid(); +end; + +procedure TfrmYSCR.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + end; +end; + +procedure TfrmYSCR.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYSCR.Button2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + if Trim(CDS_HZ.fieldbyname('SubID').AsString) <> '' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YCL_SG_HZ where SubID=''' + Trim(CDS_HZ.fieldbyname('SubID').AsString) + ''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +function TfrmYSCR.SaveData(): Boolean; +var + maxId, CRID: string; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd, maxId, 'YS', 'YF_Money_CR', 4, 1) = False then + begin + Result := False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ', 'ʾ', 0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName=''' + Trim(CDS_HZ.fieldbyname('FactoryName').AsString) + ''''); + Open; + end; + if ADOQueryCmd.IsEmpty = False then + begin + CRID := ADOQueryCmd.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID := ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('FactoryNo').Value := Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value := Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ZdyStr1').Value := 'Ӧ'; + Post; + end; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value := Trim(maxId); + FieldByName('CRID').Value := StrToInt(CRID); + //SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3); + FieldByName('Filler').Value := Trim(DName); + FieldByName('CRType').Value := 'ӦտǼ'; + FieldByName('CRFlag').Value := 'Ӧ'; + FieldByName('QtyFlag').Value := 1; + FieldByName('FactoryNo').Value := Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value := Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('CRTime').Value := SGetServerDate(ADOQueryTemp); + FieldByName('status').Value := '0'; + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('YFId').Value := Trim(maxId); + FieldByName('CRID').Value := StrToInt(CRID); + end; + ADOQueryCmd.Connection.CommitTrans; + Result := True; + except + Result := True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!', 'ʾ', 0); + end; +end; + +procedure TfrmYSCR.cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue) <> '' then + begin + sql.Add(' Set ' + FFieldName + '=''' + Trim(mvalue) + ''''); + end + else + begin + sql.Add(' Set ' + FFieldName + '=NULL'); + end; + SQL.Add(',Editer=''' + Trim(DName) + ''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId=''' + Trim(CDS_HZ.fieldbyname('SubId').AsString) + ''''); + ExecSQL; + end; +end; + +procedure TfrmYSCR.cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FQty, FPrice, FMoney, FHuiLv, FBBMoney, FKCBB, FFieldName: string; +begin + {if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; } + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + if Trim(DParameters2) = '' then + begin + FieldByName('HuiLv').Value := 1; + end; + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID=''' + cds_hz.fieldbyname('YFID').AsString + ''''); + Open; + end; + FKCBB := ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty := Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty) = '' then + FQty := '0'; + + FPrice := Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice) = '' then + FPrice := '0'; + FQty := Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty) = '' then + FQty := '0'; + + FMoney := Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney) = '' then + FMoney := '0'; + + FHuiLv := Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv) = '' then + FHuiLv := '0'; + + if Trim(FFieldName) <> 'Money' then + begin + if Trim(FFieldName) <> 'HuiLv' then + begin + FBBMoney := FloatToStr(StrToFloat(FQty) * StrToFloat(FPrice) * StrToFloat(FHuiLv)); + FMoney := FloatToStr(StrToFloat(FQty) * StrToFloat(FPrice)); + end + else + begin + FBBMoney := FloatToStr(StrToFloat(FMoney) * StrToFloat(FHuiLv)); + end; + + end + else + begin + FBBMoney := FloatToStr(StrToFloat(FMoney) * StrToFloat(FHuiLv)); + end; + + FMoney := format('%.0f', [StrToFloat(FMoney)]); + FBBMoney := format('%.0f', [StrToFloat(FBBMoney)]); + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value := StrToFloat(FMoney); + FieldByName('BBMoney').Value := StrToFloat(FBBMoney); + Post; + end; + { with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; } + tv2.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmYSCR.cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + {if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; } + mvalue := TcxTextEdit(Sender).EditingText; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if Trim(mvalue) <> '' then + begin + sql.Add(' Set ' + FFieldName + '=''' + Trim(mvalue) + ''''); + end + else + begin + sql.Add(' Set ' + FFieldName + '=NULL'); + end; + SQL.Add(',Editer=''' + Trim(DName) + ''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId=''' + Trim(CDS_HZ.fieldbyname('YFId').AsString) + ''''); + ExecSQL; + end; +end; + +procedure TfrmYSCR.ToolButton3Click(Sender: TObject); +begin + + try + frmZdyAttachment := TfrmZdyAttachment.Create(Application); + with frmZdyAttachment do + begin + if ShowModal = 1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('FactoryNo').Value := Trim(CDS_HZ.fieldbyname('ZdyCode').AsString); + FieldByName('FactoryName').Value := Trim(CDS_HZ.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value := SGetServerDate(ADOQueryTemp); + if Trim(DParameters2) = '' then + begin + FieldByName('HuiLv').Value := 1; + end; + Post; + end; + Self.SaveData(); + end; + end; + finally + frmZdyAttachment.Free; + end; +end; + +procedure TfrmYSCR.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString) <> '' then + begin + Application.MessageBox('Զݲܸ!', 'ʾ', 0); + Exit; + end; + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'YFName'; + flagname := 'ĿժҪ'; + if Trim(DParameters3) = 'Ŀֿ' then + MainType := 'տ'; + if ShowModal = 1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('YFCode').Value := Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('YFName').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set YFCode=''' + Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) + ''''); + sql.Add(' ,YFName=''' + Trim(ClientDataSet1.fieldbyname('ZdyName').AsString) + ''''); + SQL.Add(',Editer=''' + Trim(DName) + ''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId=''' + Trim(CDS_HZ.fieldbyname('YFId').AsString) + ''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSCR.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString) <> '' then + begin + Application.MessageBox('Զݲܸ!', 'ʾ', 0); + Exit; + end; + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'OrderUnit'; + flagname := 'λ'; + if ShowModal = 1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('QtyUnit').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set QtyUnit=''' + Trim(ClientDataSet1.fieldbyname('ZdyName').AsString) + ''''); + SQL.Add(',Editer=''' + Trim(DName) + ''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId=''' + Trim(CDS_HZ.fieldbyname('YFId').AsString) + ''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSCR.v2Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString) <> '' then + begin + Application.MessageBox('Զݲܸ!', 'ʾ', 0); + Exit; + end; + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'BZType'; + flagname := ''; + if ShowModal = 1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('BZType').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set BZType=''' + Trim(ClientDataSet1.fieldbyname('ZdyName').AsString) + ''''); + SQL.Add(',Editer=''' + Trim(DName) + ''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId=''' + Trim(CDS_HZ.fieldbyname('YFId').AsString) + ''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSCR.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then + Exit; + SelExportData(Tv2, ADOQueryMain, 'Ӧտб'); +end; + +procedure TfrmYSCR.v2Column7PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString) <> '' then + begin + Application.MessageBox('Զݲɾ!', 'ʾ', 0); + Exit; + end; + try + frmProductOrderNewList := TfrmProductOrderNewList.Create(Application); + with frmProductOrderNewList do + begin + DParameters1 := 'Ȩ'; + //frmProductOrderList.v1Column4.Visible:=True; + if ShowModal = 1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('MainId').Value := Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString); + FieldByName('subID').Value := Trim(frmProductOrderNewList.Order_Main.fieldbyname('subID').AsString); + FieldByName('OrderNo').Value := Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrderNo').AsString); + FieldByName('PRTCodeName').Value := Trim(frmProductOrderNewList.Order_Main.fieldbyname('PRTCodeName').AsString); + FieldByName('PRTColor').Value := Trim(frmProductOrderNewList.Order_Main.fieldbyname('PRTColor').AsString); + FieldByName('Filler').Value := Trim(frmProductOrderNewList.Order_Main.fieldbyname('Filler').AsString); + post; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set MainId=''' + Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString) + ''''); + sql.Add(' ,SubId=''' + Trim(frmProductOrderList.Order_Main.fieldbyname('SubId').AsString) + ''''); + SQL.Add(',Editer=''' + Trim(DName) + ''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId=''' + Trim(CDS_HZ.fieldbyname('YFId').AsString) + ''''); + ExecSQL; + end; + end; + end; + end; + finally + frmProductOrderNewList.Free; + self.Tv2.Controller.EditingController.ShowEdit(); + end; +end; + +procedure TfrmYSCR.v2PSPropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set ' + FFieldName + '=' + Trim(mvalue)); + SQL.Add(',Editer=''' + Trim(DName) + ''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId=''' + Trim(CDS_HZ.fieldbyname('YFId').AsString) + ''''); + ExecSQL; + end; +end; + +procedure TfrmYSCR.v2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set ' + FFieldName + '=''' + Trim(mvalue) + ''''); + SQL.Add(',Editer=''' + Trim(DName) + ''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId=''' + Trim(CDS_HZ.fieldbyname('YFId').AsString) + ''''); + ExecSQL; + end; +end; + +procedure TfrmYSCR.v2KPMoneyPropertiesEditValueChanged(Sender: TObject); +var + mvalue, FBBMoney, FKCBB, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(KPMoney,0) KPMoney from YF_Money_CR where YFID=''' + cds_hz.fieldbyname('YFID').AsString + ''''); + Open; + end; + FKCBB := ADOQueryTemp.fieldbyname('KPMoney').AsString; + FBBMoney := CDS_HZ.fieldbyname('KPMoney').AsString; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set ' + FFieldName + '=' + Trim(mvalue)); + SQL.Add(',Editer=''' + Trim(DName) + ''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId=''' + Trim(CDS_HZ.fieldbyname('YFId').AsString) + ''''); + SQL.Add('Update YF_Money_KC Set KCKPMoney=KCKPMoney-' + FKCBB + '+' + FBBMoney); + sql.Add(' where CRID=''' + Trim(CDS_HZ.fieldbyname('CRID').AsString) + ''''); + ExecSQL; + end; +end; + +procedure TfrmYSCR.Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + if CDS_HZ.fieldbyname('hxNum').AsFloat <> 0 then + tv2.OptionsData.Editing := false + else + tv2.OptionsData.Editing := true; +end; + +procedure TfrmYSCR.ToolButton4Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + exit; + + if CDS_HZ.Locate('ssel', true, []) = false then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_HZ do + begin + DisableControls; + First; + while not eof do + begin + if Fieldbyname('ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update YF_Money_CR SET Money=''' + floattostr(CDS_HZ.fieldbyname('money').AsFloat) + ''' '); + sql.Add(',BBMoney=''' + floattostr(CDS_HZ.fieldbyname('BBMoney').AsFloat) + ''' '); + sql.Add(',Price=''' + floattostr(CDS_HZ.fieldbyname('Price').AsFloat) + ''' '); + sql.Add(',Qty=''' + floattostr(CDS_HZ.fieldbyname('Qty').AsFloat) + ''' '); + sql.Add('where YFID =' + quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); + execsql; + end; + end; + next; + end; + First; + EnableControls; + end; + + InitGrid(); + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmYSCR.cxTabControl1Change(Sender: TObject); +var + i: integer; +begin + + Tchk.Enabled := false; + TNochk.Enabled := false; + TBDel.Enabled := false; + + for i := 0 to tv2.ColumnCount - 1 do + begin + if uppercase(tv2.Columns[i].DataBinding.FieldName) <> 'SSEL' then + tv2.Columns[i].Options.Editing := false; + end; + if cxTabControl1.TabIndex = 0 then + begin + Tchk.Enabled := true; + TBDel.Enabled := true; + for i := 0 to tv2.ColumnCount - 1 do + begin + tv2.Columns[i].Options.Editing := true; + end; + end; + if cxTabControl1.TabIndex = 1 then + begin + TNochk.Enabled := true; + end; + initgrid(); + +end; + +procedure TfrmYSCR.TchkClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + exit; + + if CDS_HZ.Locate('ssel', true, []) = false then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_HZ do + begin + DisableControls; + First; + while not eof do + begin + if Fieldbyname('ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update YF_Money_CR SET status=''1'' '); + sql.Add(',chker=' + quotedstr(trim(DName))); + sql.Add(',chkTime=getdate() '); + sql.Add('where YFID =' + quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); + execsql; + end; + end; + next; + end; + First; + EnableControls; + end; + + InitGrid(); + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmYSCR.TnochkClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + exit; + + if CDS_HZ.Locate('ssel', true, []) = false then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_HZ do + begin + DisableControls; + First; + while not eof do + begin + if Fieldbyname('ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update YF_Money_CR SET status=''0'' '); + sql.Add(',chker=' + quotedstr(trim(''))); + sql.Add(',chkTime=NULL '); + sql.Add('where YFID =' + quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); + execsql; + end; + end; + next; + end; + First; + EnableControls; + end; + + InitGrid(); + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmYSCR.CheckBox1Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + exit; + with CDS_HZ do + begin + DisableControls; + first; + while not eof do + begin + edit; + fieldbyname('ssel').Value := checkbox1.Checked; + post; + next; + end; + First; + EnableControls; + end; +end; + +procedure TfrmYSCR.ToolButton5Click(Sender: TObject); +begin + frmYSSCList := TfrmYSSCList.create(self); + with frmYSSCList do + begin + show; + end; +end; + +end. + diff --git a/应收应付/U_YSCRJZC.dfm b/应收应付/U_YSCRJZC.dfm new file mode 100644 index 0000000..6dc6dea --- /dev/null +++ b/应收应付/U_YSCRJZC.dfm @@ -0,0 +1,506 @@ +object frmYSCRJZC: TfrmYSCRJZC + Left = 79 + Top = 98 + Width = 1038 + Height = 618 + Caption = #24212#25910#27454#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1030 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton3Click + end + object TBDel: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object ToolButton4: TToolButton + Left = 315 + Top = 0 + Caption = #21516#27493 + ImageIndex = 60 + OnClick = ToolButton4Click + end + object TBClose: TToolButton + Left = 374 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1030 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 60 + Height = 12 + Caption = #39033#30446#21450#25688#35201 + end + object Label3: TLabel + Left = 302 + Top = 13 + Width = 48 + Height = 12 + Caption = #23545#26041#21333#20301 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 634 + Top = 13 + Width = 36 + Height = 12 + Caption = #35746#21333#21495 + end + object Label5: TLabel + Left = 782 + Top = 13 + Width = 48 + Height = 12 + Caption = #25903#20184#21488#22836 + end + object YFName: TEdit + Tag = 2 + Left = 528 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object FactoryName: TEdit + Tag = 2 + Left = 350 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + object OrderNo: TEdit + Tag = 2 + Left = 671 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object ComTaiTou: TEdit + Tag = 2 + Left = 830 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 5 + OnChange = FactoryNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1030 + Height = 511 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + Column = VBB + end + item + Kind = skSum + Column = v2PS + end + item + Kind = skSum + Column = VYB + end + item + Kind = skSum + Column = v2KP + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_YSYF.FonePurple + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 115 + end + object v2Column6: TcxGridDBColumn + Caption = #23545#26041#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 100 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39033#30446#21450#25688#35201 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 140 + end + object v2PS: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'PS' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2PSPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 56 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 82 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn6PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 70 + end + object v2Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 72 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 71 + end + object VYB: TcxGridDBColumn + Caption = #21407#24065#37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object VBB: TcxGridDBColumn + Caption = #26412#24065#37329#39069 + DataBinding.FieldName = 'BBMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object v2KP: TcxGridDBColumn + Caption = #24320#31080#37329#39069 + DataBinding.FieldName = 'KPMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2KPMoneyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 69 + end + object VOrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column7PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 76 + end + object v2Column2: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v2Column3: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object v2Column4: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 59 + end + object v2Column5: TcxGridDBColumn + Caption = #20184#27454#26041#24335 + DataBinding.FieldName = 'PIPayMent' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v2ZFTT: TcxGridDBColumn + Caption = #25903#20184#21488#22836 + DataBinding.FieldName = 'ComTaiTou' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.ImmediatePost = True + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 76 + end + object v2Column7: TcxGridDBColumn + Caption = #20195#29702 + DataBinding.FieldName = 'YFDefFlag1' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + Properties.OnEditValueChanged = v2Column7PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 50 + end + object v2Column8: TcxGridDBColumn + Caption = #25253#20851#21517#31216 + DataBinding.FieldName = 'CPZHName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object v2Column9: TcxGridDBColumn + Caption = #25104#20221'%'#27604 + DataBinding.FieldName = 'CPCFBi' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 61 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_YSCRJZC.pas b/应收应付/U_YSCRJZC.pas new file mode 100644 index 0000000..114557f --- /dev/null +++ b/应收应付/U_YSCRJZC.pas @@ -0,0 +1,1178 @@ +unit U_YSCRJZC; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDropDownEdit; + +type + TfrmYSCRJZC = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + YFName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column1: TcxGridDBColumn; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + VYB: TcxGridDBColumn; + VBB: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + v2PS: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2KP: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + Label4: TLabel; + OrderNo: TEdit; + ToolButton4: TToolButton; + v2ZFTT: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + Label5: TLabel; + ComTaiTou: TEdit; + v2Column8: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2PSPropertiesEditValueChanged(Sender: TObject); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure v2KPMoneyPropertiesEditValueChanged(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure v2Column7PropertiesEditValueChanged(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + private + { Private declarations } + + procedure InitGridHZ(); + procedure InitGrid(); + function SaveData():Boolean; + function YSData(Order_Main10:TClientDataSet):Boolean; + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYSCRJZC: TfrmYSCRJZC; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderNewList; + +{$R *.dfm} + + + +procedure TfrmYSCRJZC.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select C.Filler,A.*,C.OrderNo,C.MPRTCodeName '); + sql.Add(',PIPayMent=(select Top 1 PayMent from JYOrderCon_Main AA where AA.ConNo=C.OrderNo) '); + sql.Add(',CPZHName=(select Top 1 CPZHName from JYOrderCon_Main JM where JM.ConNo=C.ConNo)'); + sql.Add(',CPCFBi=(select Top 1 CPCFBi from JYOrderCon_Main JM where JM.ConNo=C.ConNo)'); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + SQL.Add(' left join JYOrder_Main C on A.MainId=C.MainId'); + sql.Add('where A.CRTime>='''+Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime))+''''); + sql.Add('and A.CRTime<'''+Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1))+''''); + sql.Add('and A.CRType=''ӦտǼ'''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmYSCRJZC.InitGridHZ(); +begin +end; + +procedure TfrmYSCRJZC.FormDestroy(Sender: TObject); +begin + frmYSCRJZC:=nil; +end; + +procedure TfrmYSCRJZC.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYSCRJZC.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ӦտǼ',Tv2,''); + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); + ExecSQL; + end;} + Close; +end; +procedure TfrmYSCRJZC.TBDelClick(Sender: TObject); +var + FBBMoney,CRID:string; +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + if Application.MessageBox('ԶɣȷҪִв','ʾ',32+4)<>IDYES then Exit; + end; + if CDS_HZ.IsEmpty then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+Trim(cds_hz.fieldbyname('YFID').AsString)+''''); + Open; + end; + FBBMoney:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('YFID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; + CRID:=Trim(CDS_HZ.fieldbyname('CRID').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where CRID='+CRID); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_KC where CRID='+CRID); + ExecSQL; + end; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmYSCRJZC.FormShow(Sender: TObject); +var + fsj:string; +begin + ReadCxGrid('ӦտǼ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-50; + fsj:='select Name=ZdyName,code='''' from KH_Zdy where Type=''OrdDefStr2'' '; + SInitCxGridComboBoxBySql(ADOQueryTemp,v2ZFTT,fsj,0,False,''); + if Trim(DParameters1)='޶' then + begin + VOrderNo.Hidden:=True; + VOrderNo.Visible:=False; + label4.Visible:=False; + OrderNo.Visible:=False; + end; + if Trim(DParameters2)='' then + begin + VHL.Hidden:=True; + VHL.Visible:=False; + VBZ.Hidden:=True; + VBZ.Visible:=False; + VYB.Hidden:=True; + VYB.Visible:=False; + VBB.Caption:=''; + end; + if Trim(DParameters5)<>'Ʊ' then + begin + v2KP.Hidden:=True; + v2KP.Visible:=False; + end else + begin + v2KP.Hidden:=False; + v2KP.Visible:=True; + end; + if Trim(DParameters7)<>'ƥ' then + begin + v2PS.Hidden:=True; + v2PS.Visible:=False; + end else + begin + v2PS.Hidden:=False; + v2PS.Visible:=True; + end; + //InitGrid(); +end; + +procedure TfrmYSCRJZC.TBRafreshClick(Sender: TObject); +begin + begdate.SetFocus; + InitGrid(); +end; + +procedure TfrmYSCRJZC.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmYSCRJZC.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYSCRJZC.Button2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +function TfrmYSCRJZC.SaveData():Boolean; +var + maxId,CRID:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxId,'YS','YF_Money_CR',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''''); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + //SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦտǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('YFId').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; + +procedure TfrmYSCRJZC.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCRJZC.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + {if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; } + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + if Trim(FFieldName)<>'Money' then + begin + if Trim(FFieldName)<>'HuiLv' then + begin + FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)); + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCRJZC.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + {if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; } + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCRJZC.ToolButton3Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CustomerNoName'; + flagname:='Էλ'; + if Trim(DParameters4)='Էλֿ' then + MainType:='տ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('FactoryNo').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('FactoryName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + Self.SaveData(); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSCRJZC.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFName'; + flagname:='ĿժҪ'; + if Trim(DParameters3)='Ŀֿ' then + MainType:='տ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('YFCode').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('YFName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set YFCode='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); + sql.Add(' ,YFName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSCRJZC.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set QtyUnit='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSCRJZC.v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BZType'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('BZType').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set BZType='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSCRJZC.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'Ӧտб'); +end; + +procedure TfrmYSCRJZC.v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲɾ!','ʾ',0); + Exit; + end; + try + frmProductOrderNewList:=TfrmProductOrderNewList.Create(Application); + with frmProductOrderNewList do + begin + DParameters1:='Ȩ'; + //frmProductOrderList.v1Column4.Visible:=True; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('MainId').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString); + FieldByName('OrderNo').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrderNo').AsString); + FieldByName('MPRTCodeName').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('MPRTCodeName').AsString); + FieldByName('Filler').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('Filler').AsString); + FieldByName('ComTaiTou').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrdDefStr2').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set MainId='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString)+''''); + SQL.Add(',ComTaiTou='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrdDefStr2').AsString)+''''); + //sql.Add(' ,SubId='''+Trim(frmProductOrderList.Order_Main.fieldbyname('SubId').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + end; + finally + frmProductOrderNewList.Free; + end; +end; + +procedure TfrmYSCRJZC.v2PSPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCRJZC.v2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCRJZC.v2KPMoneyPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(KPMoney,0) KPMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('KPMoney').AsString; + FBBMoney:=CDS_HZ.fieldbyname('KPMoney').AsString; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCKPMoney=KCKPMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCRJZC.OrderNoChange(Sender: TObject); +begin + if Length(Trim(OrderNo.Text))<3 then Exit; + ToolButton2.Click; +end; + +function TfrmYSCRJZC.YSData(Order_Main10:TClientDataSet):Boolean; +var + CRID,YFID,Price,PriceUnit,OrderUnit,FFactoryName:String; + CRTime:TDateTime; +begin + Result:=False; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from CK_BanCP_CR where Mainid='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRTime:=ADOQueryTemp.fieldbyname('CRTime').Value; + end else + begin + Result:=False; + Application.MessageBox('ûзͬӦտ!','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + close; + SQL.Clear; + sql.Add('select Case when isnull(CustomerNoName,'''')='''' then '); + sql.Add(' OrderNo else CustomerNoName end as KHName from JYOrder_Main'); + sql.Add(' where Mainid='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + Open; + end; + FFactoryName:=Trim(ADOQueryTemp.fieldbyname('KHName').AsString); + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1 * from JYOrder_Sub Where Mainid='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + //sql.Add(' and PRTPrice>0'); + Open; + end; + {Price:=ADOQueryTemp.fieldbyname('PRTPrice').AsString; + if Trim(Price)='' then + begin + Price:='0'; + end; } + PriceUnit:=Trim(ADOQueryTemp.fieldbyname('PriceUnit').AsString); + OrderUnit:=Trim(ADOQueryTemp.fieldbyname('OrderUnit').AsString); + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(FFactoryName)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(FFactoryName); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + {with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where FactoryName='''+Trim(FFactoryName)+''''); + sql.Add(' and YFTypeId='''+Trim(Order_Main10.fieldbyname('Mainid').AsString)+''''); + Open; + end;} + //if ADOQueryTemp.IsEmpty then + begin + {if GetLSNo(ADOQueryCmd,YFID,'CS','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡӦʧ!','ʾ',0); + Exit; + end;} + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + Edit; + // FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(Order_Main10.fieldbyname('MainId').AsString); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦտǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(FFactoryName); + FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',CRTime)); + FieldByName('YFType').Value:='Զ'; + FieldByName('Price').Value:=Order_Main10.fieldbyname('Price').Value; + //FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=Trim(PriceUnit); + FieldByName('QtyUnit').Value:=Trim(OrderUnit); + FieldByName('YFName').Value:='۽'; + FieldByName('MainId').Value:=Trim(Order_Main10.fieldbyname('Mainid').AsString); + Post; + end; + YFID:=Trim(CDS_HZ.fieldbyname('YFID').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR Set CRTime='''+Trim(FormatDateTime('yyyy-MM-dd',CRTime))+''''); + SQL.Add(',BZType='''+Trim(PriceUnit)+''''); + SQL.Add(',QtyUnit='''+Trim(OrderUnit)+''''); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update YF_Money_CR Set Qty=(select isnull(Sum(Qty),0) from CK_BanCP_CR A '); + sql.Add(' inner join JYOrder_Sub B on A.SubId=B.SubId where'); + SQL.Add(' A.MainId=YF_Money_CR.YFTypeId and A.CRType='''' and CPType=''Ʒ'' '); + SQL.Add(' and B.PRTPrice=YF_Money_CR.Price)'); + sql.Add(',PS=(select isnull(count(*),0) from CK_BanCP_CR A '); + sql.Add(' inner join JYOrder_Sub B on A.SubId=B.SubId where'); + SQL.Add(' A.MainId=YF_Money_CR.YFTypeId and A.CRType='''' and CPType=''Ʒ'' '); + SQL.Add(' and B.PRTPrice=YF_Money_CR.Price)'); + sql.Add(' where YFTypeId='''+Trim(Order_Main10.fieldbyname('Mainid').AsString)+''''); + sql.Add(' and Price='+Order_Main10.fieldbyname('Price').AsString); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty*HuiLv'); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + Result:=True; +end; + +procedure TfrmYSCRJZC.ToolButton4Click(Sender: TObject); +var + FYFID:String; +begin + if Trim(CDS_HZ.fieldbyname('Price').AsString)='' then + begin + Application.MessageBox('۲Ϊ!','ʾ',0); + Exit; + end; + if Trim(CDS_HZ.fieldbyname('MainId').AsString)='' then + begin + Application.MessageBox('ŲΪ!','ʾ',0); + Exit; + end; + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'Զ' then + begin + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + sql.Add(' and YFTypeId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + sql.Add(' and CRType=''ӦտǼ'' '); + SQL.Add(' and YFType=''Զ'' '); + sql.Add(' and Price='+CDS_HZ.fieldbyname('Price').AsString); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('ǰݴԶɵͬ!','ʾ',0); + Exit; + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub where Mainid='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + sql.Add(' and PRTPrice='+CDS_HZ.fieldbyname('Price').AsString); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + Application.MessageBox('ָʾûӦļ۸ͬ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪͬ','ʾ',32+4)<>IDYES then Exit; + FYFID:=Trim(CDS_HZ.fieldbyname('YFID').AsString); + try + ADOQueryCmd.Connection.BeginTrans; + if YSData(CDS_HZ)=false then + begin + ADOQueryCmd.Connection.RollbackTrans; + //Application.MessageBox('ͬʧ!','ʾ',0); + Exit; + end; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ͬɹ!','ʾ',0); + TBRafresh.Click; + ToolButton2.Click; + //FactoryName.SetFocus; + CDS_HZ.Locate('YFID',FYFID,[]); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ͬʧ!','ʾ',0); + end; +end; + +procedure TfrmYSCRJZC.v2Column7PropertiesEditValueChanged(Sender: TObject); +var + FFieldName:String; + mvalue:Boolean; +begin + //mvalue:=TcxTextEdit(Sender).EditingText; + mvalue:=TcxCheckBox(Sender).EditingValue; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + if mvalue=True then + FieldByName('YFDefFlag1').Value:=1 + else + FieldByName('YFDefFlag1').Value:=0; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if mvalue=True then + begin + sql.Add(' Set YFDefFlag1=1'); + end else + begin + sql.Add(' Set YFDefFlag1=0'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCRJZC.OrderNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(OrderNo.Text))<4 then Exit; + ToolBar1.SetFocus; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select C.Filler,A.*,C.OrderNo,C.MPRTCodeName '); + sql.Add(',PIPayMent=(select Top 1 PayMent from JYOrderCon_Main AA where AA.ConNo=C.OrderNo) '); + sql.Add(',CPZHName=(select Top 1 CPZHName from JYOrderCon_Main JM where JM.ConNo=C.ConNo)'); + sql.Add(',CPCFBi=(select Top 1 CPCFBi from JYOrderCon_Main JM where JM.ConNo=C.ConNo)'); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + SQL.Add(' left join JYOrder_Main C on A.MainId=C.MainId'); + sql.Add('where C.orderNo like '''+'%'+Trim(OrderNo.Text)+'%'+''''); + sql.Add('and A.CRType=''ӦտǼ'''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +end. diff --git a/应收应付/U_YSCRLZ.dfm b/应收应付/U_YSCRLZ.dfm new file mode 100644 index 0000000..8a1d51c --- /dev/null +++ b/应收应付/U_YSCRLZ.dfm @@ -0,0 +1,492 @@ +object frmYSCRLZ: TfrmYSCRLZ + Left = 79 + Top = 98 + Width = 1038 + Height = 618 + Caption = #24212#25910#27454#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1030 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton3Click + end + object TBDel: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object ToolButton4: TToolButton + Left = 315 + Top = 0 + Caption = #21516#27493 + ImageIndex = 60 + OnClick = ToolButton4Click + end + object TBClose: TToolButton + Left = 374 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1030 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 60 + Height = 12 + Caption = #39033#30446#21450#25688#35201 + end + object Label3: TLabel + Left = 302 + Top = 13 + Width = 48 + Height = 12 + Caption = #23545#26041#21333#20301 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 634 + Top = 13 + Width = 36 + Height = 12 + Caption = #35746#21333#21495 + end + object Label5: TLabel + Left = 782 + Top = 13 + Width = 48 + Height = 12 + Caption = #25903#20184#21488#22836 + end + object YFName: TEdit + Tag = 2 + Left = 528 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object FactoryName: TEdit + Tag = 2 + Left = 350 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + object OrderNo: TEdit + Tag = 2 + Left = 671 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object ComTaiTou: TEdit + Tag = 2 + Left = 830 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 5 + OnChange = FactoryNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1030 + Height = 511 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + Column = VBB + end + item + Kind = skSum + Column = v2PS + end + item + Kind = skSum + Column = VYB + end + item + Kind = skSum + Column = v2KP + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_YSYF.FonePurple + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 115 + end + object v2Column6: TcxGridDBColumn + Caption = #23545#26041#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 100 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39033#30446#21450#25688#35201 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 140 + end + object v2PS: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'PS' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2PSPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 56 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 82 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn6PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 70 + end + object v2Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 72 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 71 + end + object VYB: TcxGridDBColumn + Caption = #21407#24065#37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object VBB: TcxGridDBColumn + Caption = #26412#24065#37329#39069 + DataBinding.FieldName = 'BBMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object v2KP: TcxGridDBColumn + Caption = #24320#31080#37329#39069 + DataBinding.FieldName = 'KPMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2KPMoneyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 69 + end + object VOrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column7PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 76 + end + object v2Column2: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v2Column3: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object v2Column4: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 59 + end + object v2Column5: TcxGridDBColumn + Caption = #20184#27454#26041#24335 + DataBinding.FieldName = 'PIPayMent' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v2ZFTT: TcxGridDBColumn + Caption = #25903#20184#21488#22836 + DataBinding.FieldName = 'ComTaiTou' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.ImmediatePost = True + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 76 + end + object v2Column7: TcxGridDBColumn + Caption = #20195#29702 + DataBinding.FieldName = 'YFDefFlag1' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + Properties.OnEditValueChanged = v2Column7PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 50 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_YSCRLZ.pas b/应收应付/U_YSCRLZ.pas new file mode 100644 index 0000000..19c5534 --- /dev/null +++ b/应收应付/U_YSCRLZ.pas @@ -0,0 +1,1172 @@ +unit U_YSCRLZ; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDropDownEdit; + +type + TfrmYSCRLZ = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + YFName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column1: TcxGridDBColumn; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + VYB: TcxGridDBColumn; + VBB: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + v2PS: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2KP: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + Label4: TLabel; + OrderNo: TEdit; + ToolButton4: TToolButton; + v2ZFTT: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + Label5: TLabel; + ComTaiTou: TEdit; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2PSPropertiesEditValueChanged(Sender: TObject); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure v2KPMoneyPropertiesEditValueChanged(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure v2Column7PropertiesEditValueChanged(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + private + { Private declarations } + + procedure InitGridHZ(); + procedure InitGrid(); + function SaveData():Boolean; + function YSData(Order_Main10:TClientDataSet):Boolean; + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYSCRLZ: TfrmYSCRLZ; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderNewList; + +{$R *.dfm} + + + +procedure TfrmYSCRLZ.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select C.Filler,A.*,C.OrderNo,C.MPRTCodeName '); + sql.Add(',PIPayMent=(select Top 1 PayMent from JYOrderCon_Main AA where AA.ConNo=C.OrderNo) '); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + SQL.Add(' left join JYOrder_Main C on A.MainId=C.MainId'); + sql.Add('where A.CRTime>='''+Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime))+''''); + sql.Add('and A.CRTime<'''+Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1))+''''); + sql.Add('and A.CRType=''ӦտǼ'''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmYSCRLZ.InitGridHZ(); +begin +end; + +procedure TfrmYSCRLZ.FormDestroy(Sender: TObject); +begin + frmYSCRLZ:=nil; +end; + +procedure TfrmYSCRLZ.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYSCRLZ.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ӦտǼ',Tv2,''); + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); + ExecSQL; + end;} + Close; +end; +procedure TfrmYSCRLZ.TBDelClick(Sender: TObject); +var + FBBMoney,CRID:string; +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + if Application.MessageBox('ԶɣȷҪִв','ʾ',32+4)<>IDYES then Exit; + end; + if CDS_HZ.IsEmpty then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+Trim(cds_hz.fieldbyname('YFID').AsString)+''''); + Open; + end; + FBBMoney:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('YFID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; + CRID:=Trim(CDS_HZ.fieldbyname('CRID').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where CRID='+CRID); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_KC where CRID='+CRID); + ExecSQL; + end; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmYSCRLZ.FormShow(Sender: TObject); +var + fsj:string; +begin + ReadCxGrid('ӦտǼ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-50; + fsj:='select Name=ZdyName,code='''' from KH_Zdy where Type=''OrdDefStr2'' '; + SInitCxGridComboBoxBySql(ADOQueryTemp,v2ZFTT,fsj,0,False,''); + if Trim(DParameters1)='޶' then + begin + VOrderNo.Hidden:=True; + VOrderNo.Visible:=False; + label4.Visible:=False; + OrderNo.Visible:=False; + end; + if Trim(DParameters2)='' then + begin + VHL.Hidden:=True; + VHL.Visible:=False; + VBZ.Hidden:=True; + VBZ.Visible:=False; + VYB.Hidden:=True; + VYB.Visible:=False; + VBB.Caption:=''; + end; + if Trim(DParameters5)<>'Ʊ' then + begin + v2KP.Hidden:=True; + v2KP.Visible:=False; + end else + begin + v2KP.Hidden:=False; + v2KP.Visible:=True; + end; + if Trim(DParameters7)<>'ƥ' then + begin + v2PS.Hidden:=True; + v2PS.Visible:=False; + end else + begin + v2PS.Hidden:=False; + v2PS.Visible:=True; + end; + //InitGrid(); +end; + +procedure TfrmYSCRLZ.TBRafreshClick(Sender: TObject); +begin + begdate.SetFocus; + InitGrid(); +end; + +procedure TfrmYSCRLZ.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmYSCRLZ.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYSCRLZ.Button2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +function TfrmYSCRLZ.SaveData():Boolean; +var + maxId,CRID:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxId,'YS','YF_Money_CR',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''''); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + //SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦտǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('YFId').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; + +procedure TfrmYSCRLZ.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCRLZ.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + {if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; } + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + if Trim(FFieldName)<>'Money' then + begin + if Trim(FFieldName)<>'HuiLv' then + begin + FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)); + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCRLZ.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + {if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; } + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCRLZ.ToolButton3Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CustomerNoName'; + flagname:='Էλ'; + if Trim(DParameters4)='Էλֿ' then + MainType:='տ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('FactoryNo').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('FactoryName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + Self.SaveData(); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSCRLZ.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFName'; + flagname:='ĿժҪ'; + if Trim(DParameters3)='Ŀֿ' then + MainType:='տ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('YFCode').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('YFName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set YFCode='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); + sql.Add(' ,YFName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSCRLZ.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set QtyUnit='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSCRLZ.v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BZType'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('BZType').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set BZType='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSCRLZ.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'Ӧտб'); +end; + +procedure TfrmYSCRLZ.v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲɾ!','ʾ',0); + Exit; + end; + try + frmProductOrderNewList:=TfrmProductOrderNewList.Create(Application); + with frmProductOrderNewList do + begin + DParameters1:='Ȩ'; + //frmProductOrderList.v1Column4.Visible:=True; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('MainId').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString); + FieldByName('OrderNo').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrderNo').AsString); + FieldByName('MPRTCodeName').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('MPRTCodeName').AsString); + FieldByName('Filler').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('Filler').AsString); + FieldByName('ComTaiTou').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrdDefStr2').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set MainId='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString)+''''); + SQL.Add(',ComTaiTou='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrdDefStr2').AsString)+''''); + //sql.Add(' ,SubId='''+Trim(frmProductOrderList.Order_Main.fieldbyname('SubId').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + end; + finally + frmProductOrderNewList.Free; + end; +end; + +procedure TfrmYSCRLZ.v2PSPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCRLZ.v2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCRLZ.v2KPMoneyPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(KPMoney,0) KPMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('KPMoney').AsString; + FBBMoney:=CDS_HZ.fieldbyname('KPMoney').AsString; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCKPMoney=KCKPMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCRLZ.OrderNoChange(Sender: TObject); +begin + if Length(Trim(OrderNo.Text))<3 then Exit; + ToolButton2.Click; +end; + +function TfrmYSCRLZ.YSData(Order_Main10:TClientDataSet):Boolean; +var + CRID,YFID,Price,PriceUnit,OrderUnit,FFactoryName:String; + CRTime:TDateTime; +begin + Result:=False; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from CK_BanCP_CR where Mainid='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRTime:=ADOQueryTemp.fieldbyname('CRTime').Value; + end else + begin + Result:=False; + Application.MessageBox('ûзͬӦտ!','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + close; + SQL.Clear; + sql.Add('select Case when isnull(CustomerNoName,'''')='''' then '); + sql.Add(' OrderNo else CustomerNoName end as KHName from JYOrder_Main'); + sql.Add(' where Mainid='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + Open; + end; + FFactoryName:=Trim(ADOQueryTemp.fieldbyname('KHName').AsString); + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1 * from JYOrder_Sub Where Mainid='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + //sql.Add(' and PRTPrice>0'); + Open; + end; + {Price:=ADOQueryTemp.fieldbyname('PRTPrice').AsString; + if Trim(Price)='' then + begin + Price:='0'; + end; } + PriceUnit:=Trim(ADOQueryTemp.fieldbyname('PriceUnit').AsString); + OrderUnit:=Trim(ADOQueryTemp.fieldbyname('OrderUnit').AsString); + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(FFactoryName)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(FFactoryName); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + {with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where FactoryName='''+Trim(FFactoryName)+''''); + sql.Add(' and YFTypeId='''+Trim(Order_Main10.fieldbyname('Mainid').AsString)+''''); + Open; + end;} + //if ADOQueryTemp.IsEmpty then + begin + {if GetLSNo(ADOQueryCmd,YFID,'CS','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡӦʧ!','ʾ',0); + Exit; + end;} + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + Edit; + // FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(Order_Main10.fieldbyname('MainId').AsString); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦտǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(FFactoryName); + FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',CRTime)); + FieldByName('YFType').Value:='Զ'; + FieldByName('Price').Value:=Order_Main10.fieldbyname('Price').Value; + //FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=Trim(PriceUnit); + FieldByName('QtyUnit').Value:=Trim(OrderUnit); + FieldByName('YFName').Value:='۽'; + FieldByName('MainId').Value:=Trim(Order_Main10.fieldbyname('Mainid').AsString); + Post; + end; + YFID:=Trim(CDS_HZ.fieldbyname('YFID').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR Set CRTime='''+Trim(FormatDateTime('yyyy-MM-dd',CRTime))+''''); + SQL.Add(',BZType='''+Trim(PriceUnit)+''''); + SQL.Add(',QtyUnit='''+Trim(OrderUnit)+''''); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update YF_Money_CR Set Qty=(select isnull(Sum(Qty),0) from CK_BanCP_CR A '); + sql.Add(' inner join JYOrder_Sub B on A.SubId=B.SubId where'); + SQL.Add(' A.MainId=YF_Money_CR.YFTypeId and A.CRType='''' and CPType=''Ʒ'' '); + SQL.Add(' and B.PRTPrice=YF_Money_CR.Price)'); + sql.Add(',PS=(select isnull(count(*),0) from CK_BanCP_CR A '); + sql.Add(' inner join JYOrder_Sub B on A.SubId=B.SubId where'); + SQL.Add(' A.MainId=YF_Money_CR.YFTypeId and A.CRType='''' and CPType=''Ʒ'' '); + SQL.Add(' and B.PRTPrice=YF_Money_CR.Price)'); + sql.Add(' where YFTypeId='''+Trim(Order_Main10.fieldbyname('Mainid').AsString)+''''); + sql.Add(' and Price='+Order_Main10.fieldbyname('Price').AsString); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty*HuiLv'); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + Result:=True; +end; + +procedure TfrmYSCRLZ.ToolButton4Click(Sender: TObject); +var + FYFID:String; +begin + if Trim(CDS_HZ.fieldbyname('Price').AsString)='' then + begin + Application.MessageBox('۲Ϊ!','ʾ',0); + Exit; + end; + if Trim(CDS_HZ.fieldbyname('MainId').AsString)='' then + begin + Application.MessageBox('ŲΪ!','ʾ',0); + Exit; + end; + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'Զ' then + begin + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + sql.Add(' and YFTypeId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + sql.Add(' and CRType=''ӦտǼ'' '); + SQL.Add(' and YFType=''Զ'' '); + sql.Add(' and Price='+CDS_HZ.fieldbyname('Price').AsString); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('ǰݴԶɵͬ!','ʾ',0); + Exit; + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub where Mainid='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + sql.Add(' and PRTPrice='+CDS_HZ.fieldbyname('Price').AsString); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + Application.MessageBox('ָʾûӦļ۸ͬ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪͬ','ʾ',32+4)<>IDYES then Exit; + FYFID:=Trim(CDS_HZ.fieldbyname('YFID').AsString); + try + ADOQueryCmd.Connection.BeginTrans; + if YSData(CDS_HZ)=false then + begin + ADOQueryCmd.Connection.RollbackTrans; + //Application.MessageBox('ͬʧ!','ʾ',0); + Exit; + end; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ͬɹ!','ʾ',0); + TBRafresh.Click; + ToolButton2.Click; + //FactoryName.SetFocus; + CDS_HZ.Locate('YFID',FYFID,[]); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ͬʧ!','ʾ',0); + end; +end; + +procedure TfrmYSCRLZ.v2Column7PropertiesEditValueChanged(Sender: TObject); +var + FFieldName:String; + mvalue:Boolean; +begin + //mvalue:=TcxTextEdit(Sender).EditingText; + mvalue:=TcxCheckBox(Sender).EditingValue; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + if mvalue=True then + FieldByName('YFDefFlag1').Value:=1 + else + FieldByName('YFDefFlag1').Value:=0; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if mvalue=True then + begin + sql.Add(' Set YFDefFlag1=1'); + end else + begin + sql.Add(' Set YFDefFlag1=0'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCRLZ.OrderNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(OrderNo.Text))<4 then Exit; + ToolBar1.SetFocus; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select C.Filler,A.*,C.OrderNo,C.MPRTCodeName '); + sql.Add(',PIPayMent=(select Top 1 PayMent from JYOrderCon_Main AA where AA.ConNo=C.OrderNo) '); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + SQL.Add(' left join JYOrder_Main C on A.MainId=C.MainId'); + sql.Add('where C.orderNo like '''+'%'+Trim(OrderNo.Text)+'%'+''''); + sql.Add('and A.CRType=''ӦտǼ'''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +end. diff --git a/应收应付/U_YSCROL.dfm b/应收应付/U_YSCROL.dfm new file mode 100644 index 0000000..2780576 --- /dev/null +++ b/应收应付/U_YSCROL.dfm @@ -0,0 +1,455 @@ +object frmYSCROL: TfrmYSCROL + Left = 79 + Top = 98 + Width = 1038 + Height = 618 + Caption = #24212#25910#27454#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1030 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton3Click + end + object TBDel: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object ToolButton4: TToolButton + Left = 315 + Top = 0 + Caption = #21516#27493 + ImageIndex = 60 + Visible = False + OnClick = ToolButton4Click + end + object TBClose: TToolButton + Left = 374 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1030 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 60 + Height = 12 + Caption = #39033#30446#21450#25688#35201 + end + object Label3: TLabel + Left = 302 + Top = 13 + Width = 48 + Height = 12 + Caption = #23545#26041#21333#20301 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 634 + Top = 13 + Width = 36 + Height = 12 + Caption = #35746#21333#21495 + end + object YFName: TEdit + Tag = 2 + Left = 528 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object FactoryName: TEdit + Left = 350 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + object OrderNo: TEdit + Tag = 2 + Left = 671 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1030 + Height = 514 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + Column = VBB + end + item + Kind = skSum + Column = v2PS + end + item + Kind = skSum + Column = VYB + end + item + Kind = skSum + Column = v2KP + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_YSYF.FonePurple + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 115 + end + object v2Column6: TcxGridDBColumn + Caption = #23545#26041#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 100 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39033#30446#21450#25688#35201 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 140 + end + object v2PS: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'PS' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2PSPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 56 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 82 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn6PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 70 + end + object v2Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 72 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 71 + end + object VYB: TcxGridDBColumn + Caption = #21407#24065#37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object VBB: TcxGridDBColumn + Caption = #26412#24065#37329#39069 + DataBinding.FieldName = 'BBMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object v2KP: TcxGridDBColumn + Caption = #24320#31080#37329#39069 + DataBinding.FieldName = 'KPMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2KPMoneyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v2Column2: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 58 + end + object VOrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column7PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 76 + end + object v2Column3: TcxGridDBColumn + Caption = #21697#21517#27454#24335 + DataBinding.FieldName = 'PRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object v2Column7: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'PRTSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 71 + end + object v2Column4: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 59 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_YSCROL.pas b/应收应付/U_YSCROL.pas new file mode 100644 index 0000000..be2d58a --- /dev/null +++ b/应收应付/U_YSCROL.pas @@ -0,0 +1,1087 @@ +unit U_YSCROL; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmYSCROL = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + YFName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column1: TcxGridDBColumn; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + VYB: TcxGridDBColumn; + VBB: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + v2PS: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2KP: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + Label4: TLabel; + OrderNo: TEdit; + ToolButton4: TToolButton; + v2Column7: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2PSPropertiesEditValueChanged(Sender: TObject); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure v2KPMoneyPropertiesEditValueChanged(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + private + { Private declarations } + + procedure InitGridHZ(); + procedure InitGrid(); + function SaveData():Boolean; + function YSData(Order_Main10:TClientDataSet):Boolean; + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYSCROL: TfrmYSCROL; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderListOLJ; + +{$R *.dfm} + + + +procedure TfrmYSCROL.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select BB.Filler, A.* '); + sql.Add(',BB.OrderNo,BB.CustomerNoName,CC.SCNO,CC.PRTCodeName '); + sql.Add(',CC.PRTType,CC.PRTSpec,CC.PRTColor '); + sql.Add(',KHZJM=dbo.getPinYin(A.FactoryName)'); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + Sql.add(' left join JYOrder_Main BB on A.MainId=BB.MainId'); + Sql.add(' left join JYOrder_Sub CC on A.SubId=CC.SubId'); + sql.Add('where A.CRTime>='''+Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime))+''''); + sql.Add('and A.CRTime<'''+Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1))+''''); + sql.Add('and A.CRType=''ӦտǼ'''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmYSCROL.InitGridHZ(); +begin +end; + +procedure TfrmYSCROL.FormDestroy(Sender: TObject); +begin + frmYSCROL:=nil; +end; + +procedure TfrmYSCROL.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYSCROL.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ӦտǼ',Tv2,''); + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); + ExecSQL; + end;} + Close; +end; +procedure TfrmYSCROL.TBDelClick(Sender: TObject); +var + FBBMoney,CRID:string; +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + if Application.MessageBox('ԶɣȷҪִв','ʾ',32+4)<>IDYES then Exit; + end; + if CDS_HZ.IsEmpty then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+Trim(cds_hz.fieldbyname('YFID').AsString)+''''); + Open; + end; + FBBMoney:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('YFID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; + CRID:=Trim(CDS_HZ.fieldbyname('CRID').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where CRID='+CRID); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_KC where CRID='+CRID); + ExecSQL; + end; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmYSCROL.FormShow(Sender: TObject); +begin + ReadCxGrid('ӦտǼ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-50; + if Trim(DParameters1)='޶' then + begin + VOrderNo.Hidden:=True; + VOrderNo.Visible:=False; + label4.Visible:=False; + OrderNo.Visible:=False; + end; + if Trim(DParameters2)='' then + begin + VHL.Hidden:=True; + VHL.Visible:=False; + VBZ.Hidden:=True; + VBZ.Visible:=False; + VYB.Hidden:=True; + VYB.Visible:=False; + VBB.Caption:=''; + end; + if Trim(DParameters5)<>'Ʊ' then + begin + v2KP.Hidden:=True; + v2KP.Visible:=False; + end else + begin + v2KP.Hidden:=False; + v2KP.Visible:=True; + end; + if Trim(DParameters7)<>'ƥ' then + begin + v2PS.Hidden:=True; + v2PS.Visible:=False; + end else + begin + v2PS.Hidden:=False; + v2PS.Visible:=True; + end; + //InitGrid(); +end; + +procedure TfrmYSCROL.TBRafreshClick(Sender: TObject); +begin + begdate.SetFocus; + InitGrid(); +end; + +procedure TfrmYSCROL.ToolButton2Click(Sender: TObject); +var + fsj:string; +begin + if ADOQueryMain.Active=False then Exit; + if Trim(SGetFilters(Panel1,1,2))='' then + begin + if Trim(FactoryName.Text)<>'' then + begin + fsj:=' FactoryName like '''+'%'+Trim(FactoryName.Text)+'%'+'''' + +' or KHZJM like '''+'%'+Trim(FactoryName.Text)+'%'+''''; + end; + + end else + begin + if Trim(FactoryName.Text)<>'' then + begin + fsj:=SGetFilters(Panel1,1,2)+' and (FactoryName like '''+'%'+Trim(FactoryName.Text)+'%'+'''' + +' or KHZJM like '''+'%'+Trim(FactoryName.Text)+'%'+''')'; + end; + end; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); +end; + +procedure TfrmYSCROL.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYSCROL.Button2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +function TfrmYSCROL.SaveData():Boolean; +var + maxId,CRID:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxId,'YS','YF_Money_CR',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''''); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + //SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦտǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('YFId').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; + +procedure TfrmYSCROL.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCROL.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + {if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; } + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + if Trim(FFieldName)<>'Money' then + begin + if Trim(FFieldName)<>'HuiLv' then + begin + FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)); + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCROL.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + {if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; } + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCROL.ToolButton3Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CustomerNoName'; + flagname:='Էλ'; + if Trim(DParameters4)='Էλֿ' then + MainType:='տ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('FactoryNo').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('FactoryName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + Self.SaveData(); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSCROL.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFName'; + flagname:='ĿժҪ'; + if Trim(DParameters3)='Ŀֿ' then + MainType:='տ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('YFCode').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('YFName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set YFCode='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); + sql.Add(' ,YFName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSCROL.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set QtyUnit='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSCROL.v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BZType'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('BZType').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set BZType='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSCROL.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'Ӧտб'); +end; + +procedure TfrmYSCROL.v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲɾ!','ʾ',0); + Exit; + end; + try + frmProductOrderListOLJ:=TfrmProductOrderListOLJ.Create(Application); + with frmProductOrderListOLJ do + begin + + //frmProductOrderList.v1Column4.Visible:=True; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('MainId').Value:=Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('MainId').AsString); + FieldByName('OrderNo').Value:=Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('OrderNo').AsString); + FieldByName('PRTCodeName').Value:=Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('PRTCodeName').AsString); + FieldByName('Filler').Value:=Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('Filler').AsString); + FieldByName('PRTSpec').Value:=Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('Filler').AsString); + FieldByName('SCNO').Value:=Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('SCNO').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set MainId='''+Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add(' ,SubId='''+Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('SubId').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + end; + finally + frmProductOrderListOLJ.Free; + end; +end; + +procedure TfrmYSCROL.v2PSPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCROL.v2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCROL.v2KPMoneyPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(KPMoney,0) KPMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('KPMoney').AsString; + FBBMoney:=CDS_HZ.fieldbyname('KPMoney').AsString; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCKPMoney=KCKPMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCROL.OrderNoChange(Sender: TObject); +begin + if Length(Trim(OrderNo.Text))<3 then Exit; + ToolButton2.Click; +end; + +function TfrmYSCROL.YSData(Order_Main10:TClientDataSet):Boolean; +var + CRID,YFID,Price,PriceUnit,OrderUnit,FFactoryName:String; + CRTime:TDateTime; +begin + Result:=False; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from CK_BanCP_CR where Mainid='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRTime:=ADOQueryTemp.fieldbyname('CRTime').Value; + end else + begin + Result:=False; + Application.MessageBox('ûзͬӦտ!','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + close; + SQL.Clear; + sql.Add('select Case when isnull(CustomerNoName,'''')='''' then '); + sql.Add(' OrderNo else CustomerNoName end as KHName from JYOrder_Main'); + sql.Add(' where Mainid='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + Open; + end; + FFactoryName:=Trim(ADOQueryTemp.fieldbyname('KHName').AsString); + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1 * from JYOrder_Sub Where Mainid='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + //sql.Add(' and PRTPrice>0'); + Open; + end; + Price:=ADOQueryTemp.fieldbyname('PRTPrice').AsString; + if Trim(Price)='' then + begin + Price:='0'; + end; + PriceUnit:=Trim(ADOQueryTemp.fieldbyname('PriceUnit').AsString); + OrderUnit:=Trim(ADOQueryTemp.fieldbyname('OrderUnit').AsString); + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(FFactoryName)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(FFactoryName); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + {with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where FactoryName='''+Trim(FFactoryName)+''''); + sql.Add(' and YFTypeId='''+Trim(Order_Main10.fieldbyname('Mainid').AsString)+''''); + Open; + end;} + //if ADOQueryTemp.IsEmpty then + begin + {if GetLSNo(ADOQueryCmd,YFID,'CS','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡӦʧ!','ʾ',0); + Exit; + end;} + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + Edit; + // FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(Order_Main10.fieldbyname('MainId').AsString); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦտǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(FFactoryName); + FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',CRTime)); + FieldByName('YFType').Value:='Զ'; + FieldByName('Price').Value:=Price; + //FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=Trim(PriceUnit); + FieldByName('QtyUnit').Value:=Trim(OrderUnit); + FieldByName('YFName').Value:='۽'; + FieldByName('MainId').Value:=Trim(Order_Main10.fieldbyname('Mainid').AsString); + Post; + end; + YFID:=Trim(CDS_HZ.fieldbyname('YFID').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR Set CRTime='''+Trim(FormatDateTime('yyyy-MM-dd',CRTime))+''''); + sql.Add(' ,Price='+Price); + SQL.Add(',BZType='''+Trim(PriceUnit)+''''); + SQL.Add(',QtyUnit='''+Trim(OrderUnit)+''''); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update YF_Money_CR Set Qty=(select isnull(Sum(Qty),0) from CK_BanCP_CR A where '); + SQL.Add(' A.MainId=YF_Money_CR.YFTypeId and A.CRType='''' )'); + sql.Add(',PS=(select isnull(count(*),0) from CK_BanCP_CR A where '); + SQL.Add(' A.MainId=YF_Money_CR.YFTypeId and A.CRType='''' )'); + sql.Add(' where YFTypeId='''+Trim(Order_Main10.fieldbyname('Mainid').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty*HuiLv'); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + Result:=True; +end; + +procedure TfrmYSCROL.ToolButton4Click(Sender: TObject); +var + FYFID:String; +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'Զ' then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + sql.Add(' and YFTypeId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + sql.Add(' and CRType=''ӦտǼ'' '); + SQL.Add(' and YFType=''Զ'' '); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('ǰݴԶɵͬ!','ʾ',0); + Exit; + end; + end; + + if Application.MessageBox('ȷҪͬ','ʾ',32+4)<>IDYES then Exit; + FYFID:=Trim(CDS_HZ.fieldbyname('YFID').AsString); + try + ADOQueryCmd.Connection.BeginTrans; + if YSData(CDS_HZ)=false then + begin + ADOQueryCmd.Connection.RollbackTrans; + //Application.MessageBox('ͬʧ!','ʾ',0); + Exit; + end; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ͬɹ!','ʾ',0); + TBRafresh.Click; + ToolButton2.Click; + //FactoryName.SetFocus; + CDS_HZ.Locate('YFID',FYFID,[]); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ͬʧ!','ʾ',0); + end; +end; + +end. diff --git a/应收应付/U_YSCR_Gd.dfm b/应收应付/U_YSCR_Gd.dfm new file mode 100644 index 0000000..725ecea --- /dev/null +++ b/应收应付/U_YSCR_Gd.dfm @@ -0,0 +1,417 @@ +object frmYSCR_Gd: TfrmYSCR_Gd + Left = 256 + Top = 111 + Width = 1038 + Height = 618 + Caption = #24212#25910#27454#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1030 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton3Click + end + object TBDel: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1030 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 60 + Height = 12 + Caption = #39033#30446#21450#25688#35201 + end + object Label3: TLabel + Left = 302 + Top = 13 + Width = 48 + Height = 12 + Caption = #23545#26041#21333#20301 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object YFName: TEdit + Tag = 2 + Left = 528 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object FactoryName: TEdit + Tag = 2 + Left = 350 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1030 + Height = 514 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + Column = VBB + end + item + Kind = skSum + Column = v2PS + end + item + Kind = skSum + Column = VYB + end + item + Kind = skSum + Column = v2KP + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_YSYF.FonePurple + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 115 + end + object v2Column6: TcxGridDBColumn + Caption = #23545#26041#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 100 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39033#30446#21450#25688#35201 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 140 + end + object v2PS: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'PS' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2PSPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 56 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 82 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn6PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_YSYF.Default + Width = 70 + end + object v2Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 72 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 71 + end + object VYB: TcxGridDBColumn + Caption = #21407#24065#37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object VBB: TcxGridDBColumn + Caption = #26412#24065#37329#39069 + DataBinding.FieldName = 'BBMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object v2KP: TcxGridDBColumn + Caption = #24320#31080#37329#39069 + DataBinding.FieldName = 'KPMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2KPMoneyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 69 + end + object VOrderNo: TcxGridDBColumn + Caption = #20986#24211#21333 + DataBinding.FieldName = 'CRNO' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column7PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 76 + end + object v2Column3: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'P_CodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object v2Column2: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 58 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_YSCR_Gd.pas b/应收应付/U_YSCR_Gd.pas new file mode 100644 index 0000000..8cc2e29 --- /dev/null +++ b/应收应付/U_YSCR_Gd.pas @@ -0,0 +1,840 @@ +unit U_YSCR_Gd; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmYSCR_Gd = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + YFName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column1: TcxGridDBColumn; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + VYB: TcxGridDBColumn; + VBB: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + v2PS: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2KP: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2PSPropertiesEditValueChanged(Sender: TObject); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure v2KPMoneyPropertiesEditValueChanged(Sender: TObject); + private + { Private declarations } + + procedure InitGridHZ(); + procedure InitGrid(); + function SaveData():Boolean; + + public + + fflag:string; + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYSCR_Gd: TfrmYSCR_Gd; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderNewList, U_ProductOrderList; + +{$R *.dfm} + + + +procedure TfrmYSCR_Gd.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select A.*,C.CRNO,C.P_CodeName '); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + SQL.Add(' left join BP_InOut C on A.MainId=C.CRNO and C.CRID=A.subID'); + sql.Add('where A.CRTime>=:begdate and A.CRTime<:Enddate and A.CRType=''ӦտǼ'' and A.YFDefFlag1=1 '); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmYSCR_Gd.InitGridHZ(); +begin +end; + +procedure TfrmYSCR_Gd.FormDestroy(Sender: TObject); +begin + frmYSCR_Gd:=nil; +end; + +procedure TfrmYSCR_Gd.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYSCR_Gd.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption,Tv2,''); + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); + ExecSQL; + end;} + Close; +end; +procedure TfrmYSCR_Gd.TBDelClick(Sender: TObject); +var + FBBMoney,CRID:string; +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + if Application.MessageBox('ԶɣȷҪִв','ʾ',32+4)<>IDYES then Exit; + end; + if CDS_HZ.IsEmpty then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+Trim(cds_hz.fieldbyname('YFID').AsString)+''''); + Open; + end; + FBBMoney:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('YFID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; + CRID:=Trim(CDS_HZ.fieldbyname('CRID').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where CRID='+CRID); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_KC where CRID='+CRID); + ExecSQL; + end; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmYSCR_Gd.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption,Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-50; + if Trim(DParameters1)='޶' then + begin + VOrderNo.Hidden:=True; + VOrderNo.Visible:=False; + end; + if Trim(DParameters2)='' then + begin + VHL.Hidden:=True; + VHL.Visible:=False; + VBZ.Hidden:=True; + VBZ.Visible:=False; + VYB.Hidden:=True; + VYB.Visible:=False; + VBB.Caption:=''; + end; + if Trim(DParameters5)<>'Ʊ' then + begin + v2KP.Hidden:=True; + v2KP.Visible:=False; + end else + begin + v2KP.Hidden:=False; + v2KP.Visible:=True; + end; + if Trim(DParameters7)<>'ƥ' then + begin + v2PS.Hidden:=True; + v2PS.Visible:=False; + end else + begin + v2PS.Hidden:=False; + v2PS.Visible:=True; + end; + InitGrid(); +end; + +procedure TfrmYSCR_Gd.TBRafreshClick(Sender: TObject); +begin + begdate.SetFocus; + InitGrid(); +end; + +procedure TfrmYSCR_Gd.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmYSCR_Gd.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYSCR_Gd.Button2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +function TfrmYSCR_Gd.SaveData():Boolean; +var + maxId,CRID:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxId,'YS','YF_Money_CR',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''' and YFDefFlag1=1'); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + FieldByName('YFDefFlag1').Value:=1; + Post; + end; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + //SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦտǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + FieldByName('YFDefFlag1').Value:=1; + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('YFId').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; + +procedure TfrmYSCR_Gd.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCR_Gd.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + {if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; } + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + if Trim(FFieldName)<>'Money' then + begin + if Trim(FFieldName)<>'HuiLv' then + begin + FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)); + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCR_Gd.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + {if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; } + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCR_Gd.ToolButton3Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='GDCustFlag'; + flagname:='Էλ'; + if Trim(DParameters4)='Էλֿ' then + MainType:='տ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('FactoryNo').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('FactoryName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + Self.SaveData(); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSCR_Gd.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFName'; + flagname:='ĿժҪ'; + if Trim(DParameters3)='Ŀֿ' then + MainType:='տ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('YFCode').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('YFName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set YFCode='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); + sql.Add(' ,YFName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSCR_Gd.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set QtyUnit='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSCR_Gd.v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BZType'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('BZType').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set BZType='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSCR_Gd.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'Ӧտб'); +end; + +procedure TfrmYSCR_Gd.v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲɾ!','ʾ',0); + Exit; + end; + try + frmProductOrderNewList:=TfrmProductOrderNewList.Create(Application); + with frmProductOrderNewList do + begin + DParameters1:='Ȩ'; + //frmProductOrderList.v1Column4.Visible:=True; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('MainId').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString); + FieldByName('subID').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('subID').AsString); + FieldByName('OrderNo').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrderNo').AsString); + FieldByName('PRTCodeName').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('PRTCodeName').AsString); + FieldByName('Filler').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('Filler').AsString); + post; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set MainId='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add(' ,SubId='''+Trim(frmProductOrderList.Order_Main.fieldbyname('SubId').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + end; + finally + frmProductOrderNewList.Free; + self.Tv2.Controller.EditingController.ShowEdit(); + end; +end; + +procedure TfrmYSCR_Gd.v2PSPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCR_Gd.v2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSCR_Gd.v2KPMoneyPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(KPMoney,0) KPMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('KPMoney').AsString; + FBBMoney:=CDS_HZ.fieldbyname('KPMoney').AsString; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCKPMoney=KCKPMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +end. diff --git a/应收应付/U_YSFP.dfm b/应收应付/U_YSFP.dfm new file mode 100644 index 0000000..2216d9e --- /dev/null +++ b/应收应付/U_YSFP.dfm @@ -0,0 +1,435 @@ +object frmYSFP: TfrmYSFP + Left = 75 + Top = 57 + Width = 1144 + Height = 670 + Caption = #38144#39033#21457#31080#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1136 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton3Click + end + object TBDel: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1136 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 24 + Height = 12 + Caption = #21697#21517 + end + object Label3: TLabel + Left = 302 + Top = 13 + Width = 48 + Height = 12 + Caption = #23458#25143#21517#31216 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 610 + Top = 13 + Width = 36 + Height = 12 + Caption = #35746#21333#21495 + end + object Label5: TLabel + Left = 766 + Top = 13 + Width = 48 + Height = 12 + Caption = #25903#20184#21488#22836 + end + object YFName: TEdit + Tag = 2 + Left = 493 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object FactoryName: TEdit + Tag = 2 + Left = 353 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + object OrderNo: TEdit + Tag = 2 + Left = 647 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object ComTaiTou: TEdit + Tag = 2 + Left = 814 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 5 + OnChange = FactoryNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1136 + Height = 563 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v2KP + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_YSYF.Default + object v2Column6: TcxGridDBColumn + Caption = #23458#25143#21517#31216 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 100 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #24320#31080#26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 115 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'YFName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 140 + end + object v2PayMent: TcxGridDBColumn + Caption = #25903#20184#26041#24335 + DataBinding.FieldName = 'PayMent' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2PayMentPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 69 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 82 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn6PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 67 + end + object v2Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 72 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 71 + end + object v2KP: TcxGridDBColumn + Caption = #24320#31080#37329#39069 + DataBinding.FieldName = 'KPMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + Width = 62 + end + object VOrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column7PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 85 + end + object v2Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2BatchNoPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 84 + end + object v2ZFTT: TcxGridDBColumn + Caption = #25903#20184#21488#22836 + DataBinding.FieldName = 'ComTaiTou' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.ImmediatePost = True + Properties.OnEditValueChanged = v2BatchNoPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 72 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_YSFP.pas b/应收应付/U_YSFP.pas new file mode 100644 index 0000000..2b46b3a --- /dev/null +++ b/应收应付/U_YSFP.pas @@ -0,0 +1,825 @@ +unit U_YSFP; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDropDownEdit; + +type + TfrmYSFP = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + YFName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column1: TcxGridDBColumn; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + v2KP: TcxGridDBColumn; + v2PayMent: TcxGridDBColumn; + v2Note: TcxGridDBColumn; + Label4: TLabel; + OrderNo: TEdit; + v2ZFTT: TcxGridDBColumn; + Label5: TLabel; + ComTaiTou: TEdit; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure v2PSPropertiesEditValueChanged(Sender: TObject); + procedure v2BatchNoPropertiesEditValueChanged(Sender: TObject); + procedure v2PayMentPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure OrderNoChange(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + private + { Private declarations } + + procedure InitGridHZ(); + procedure InitGrid(); + function SaveData():Boolean; + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYSFP: TfrmYSFP; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderList, U_ProductOrderNewList; + +{$R *.dfm} + + + +procedure TfrmYSFP.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select A.*,C.OrderNo '); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + SQL.Add(' left join JYOrder_Main C on A.MainId=C.MainId'); + sql.Add('where A.CRTime>=:begdate and A.CRTime<:Enddate and A.CRType=''ӦտƱǼ'' '); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmYSFP.InitGridHZ(); +begin +end; + +procedure TfrmYSFP.FormDestroy(Sender: TObject); +begin + frmYSFP:=nil; +end; + +procedure TfrmYSFP.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYSFP.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ӦտƱ',Tv2,''); + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+''''); + ExecSQL; + end;} + Close; +end; +procedure TfrmYSFP.TBDelClick(Sender: TObject); +var + FBBMoney:string; +begin + if CDS_HZ.IsEmpty then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+Trim(cds_hz.fieldbyname('YFID').AsString)+''''); + Open; + end; + FBBMoney:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('YFID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmYSFP.FormShow(Sender: TObject); +var + fsj:string; +begin + ReadCxGrid('ӦտƱ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-7; + fsj:='select Name=ZdyName,code='''' from KH_Zdy where Type=''OrdDefStr2'' '; + SInitCxGridComboBoxBySql(ADOQueryTemp,v2ZFTT,fsj,0,False,''); + if Trim(DParameters1)='޶' then + begin + VOrderNo.Hidden:=True; + VOrderNo.Visible:=False; + end; + if Trim(DParameters2)='' then + begin + VHL.Hidden:=True; + VHL.Visible:=False; + VBZ.Hidden:=True; + VBZ.Visible:=False; + end; + if Trim(DParameters5)<>'Ʊ' then + begin + v2KP.Hidden:=True; + v2KP.Visible:=False; + end else + begin + v2KP.Hidden:=False; + v2KP.Visible:=True; + end; + InitGrid(); +end; + +procedure TfrmYSFP.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmYSFP.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmYSFP.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYSFP.Button2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +function TfrmYSFP.SaveData():Boolean; +var + maxId,CRID:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxId,'YF','YF_Money_CR',4,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''''); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + //SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦտƱǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString); + FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + with CDS_HZ do + begin + Edit; + FieldByName('YFId').Value:=Trim(maxId); + FieldByName('CRID').Value:=StrToInt(CRID); + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=True; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; + +procedure TfrmYSFP.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSFP.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FKPMoney,FKPNow,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(KPMoney,0) KPMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKPMoney:=ADOQueryTemp.fieldbyname('KPMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='1'; + if Trim(FFieldName)<>'KPMoney' then + begin + FKPNow:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + end else + begin + FKPNow:=CDS_HZ.fieldbyname('KPMoney').AsString; + end; + with CDS_HZ do + begin + Edit; + FieldByName('KPMoney').Value:=StrToFloat(FKPNow); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'KPMoney' then + begin + sql.Add(',KPMoney='+FKPNow); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCKPMoney=KCKPMoney-'+FKPMoney+'+'+FKPNow); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSFP.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSFP.ToolButton3Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CustomerNoName'; + flagname:='Էλ'; + if Trim(DParameters4)='Էλֿ' then + MainType:='տ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Append; + FieldByName('FactoryNo').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('FactoryName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + Self.SaveData(); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSFP.cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YFName'; + flagname:='ĿժҪ'; + if Trim(DParameters3)='Ŀֿ' then + MainType:='տ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('YFCode').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + FieldByName('YFName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set YFCode='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+''''); + sql.Add(' ,YFName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSFP.cxGridDBColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set QtyUnit='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSFP.v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BZType'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_HZ.Edit; + Self.CDS_HZ.FieldByName('BZType').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set BZType='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSFP.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'Ӧб'); +end; + +procedure TfrmYSFP.v2Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmProductOrderNewList:=TfrmProductOrderNewList.Create(Application); + with frmProductOrderNewList do + begin + DParameters1:='Ȩ'; + //frmProductOrderList.v1Column4.Visible:=True; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('MainId').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString); + FieldByName('OrderNo').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrderNo').AsString); + FieldByName('ComTaiTou').Value:=Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrdDefStr2').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set MainId='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('MainId').AsString)+''''); + SQL.Add(',ComTaiTou='''+Trim(frmProductOrderNewList.Order_Main.fieldbyname('OrdDefStr2').AsString)+''''); + //sql.Add(' ,SubId='''+Trim(frmProductOrderList.Order_Main.fieldbyname('SubId').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + end; + finally + frmProductOrderNewList.Free; + end; +end; + +procedure TfrmYSFP.v2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FBBMoney,FKCBB,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(KPMoney,0) KPMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('KPMoney').AsString; + FBBMoney:=CDS_HZ.fieldbyname('KPMoney').AsString; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + SQL.Add('Update YF_Money_KC Set KCKPMoney=KCKPMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSFP.v2PSPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSFP.v2BatchNoPropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSFP.v2PayMentPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PayMent'; + flagname:='֧ʽ'; + if ShowModal=1 then + begin + with Self.CDS_HZ do + begin + Edit; + FieldByName('PayMent').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set PayMent='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmYSFP.OrderNoChange(Sender: TObject); +begin + if Length(Trim(OrderNo.Text))<3 then Exit; + ToolButton2.Click; +end; + +procedure TfrmYSFP.OrderNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(OrderNo.Text))<4 then Exit; + begdate.SetFocus; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select A.*,C.OrderNo '); + sql.Add(' from YF_Money_CR A'); + sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID'); + SQL.Add(' left join JYOrder_Main C on A.MainId=C.MainId'); + sql.Add('where C.orderNo like :OrderNo'); + sql.Add('and A.CRType=''ӦտƱǼ'''); + Parameters.ParamByName('OrderNo').Value:='%'+Trim(OrderNo.Text)+'%'; + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +end. diff --git a/应收应付/U_YSHZMX.dfm b/应收应付/U_YSHZMX.dfm new file mode 100644 index 0000000..7741af8 --- /dev/null +++ b/应收应付/U_YSHZMX.dfm @@ -0,0 +1,471 @@ +object frmYSHZMX: TfrmYSHZMX + Left = 63 + Top = 110 + Width = 1265 + Height = 618 + Caption = #24212#25910#36134#27454#26126#32454 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1257 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1257 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 24 + Height = 12 + Caption = #21697#21517 + end + object Label3: TLabel + Left = 302 + Top = 13 + Width = 36 + Height = 12 + Caption = #35746#21333#21495 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 610 + Top = 13 + Width = 48 + Height = 12 + Caption = #25910#27454#36827#24230 + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 494 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = MPRTCodeNameChange + end + object OrderNo: TEdit + Tag = 2 + Left = 350 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + object OrdDefNote3: TComboBox + Tag = 1 + Left = 662 + Top = 9 + Width = 145 + Height = 20 + ItemHeight = 12 + TabOrder = 4 + OnChange = MPRTCodeNameChange + Items.Strings = ( + #24050#20132#21333 + #24050#25215#20817 + #24050#25276#27719 + #24050#25910#27454 + #25276#27719#20013 + #20511#27454 + '' + '') + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1257 + Height = 511 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + Column = VBB + end + item + Kind = skSum + Column = v2PS + end + item + Kind = skSum + Column = VYB + end + item + Kind = skSum + Column = v2KP + end + item + Kind = skSum + Column = cxGridDBColumn3 + end + item + Kind = skSum + Column = v2Column7 + end + item + Kind = skSum + Column = v2Column8 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_YSYF.FonePurple + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 115 + end + object VOrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 76 + end + object v2Column3: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #20986#36135#25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 82 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 66 + end + object v2Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 67 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 71 + end + object VYB: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'YSYBMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 91 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #24212#25910#21407#24065#20313#39069 + DataBinding.FieldName = 'YSYBYMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 111 + end + object v2Column8: TcxGridDBColumn + Caption = #24050#25910#27454#21407#24065#37329#39069 + DataBinding.FieldName = 'SKYBMoney' + Options.Focusing = False + Width = 105 + end + object v2KP: TcxGridDBColumn + Caption = #36864#31246#37329#39069 + DataBinding.FieldName = 'SKTSBBMoney' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 70 + end + object VBB: TcxGridDBColumn + Caption = #29260#20215#27454 + DataBinding.FieldName = 'PJMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 62 + end + object v2PS: TcxGridDBColumn + Caption = #24050#25910#27454#26412#24065#37329#39069 + DataBinding.FieldName = 'SKBBMoney' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 111 + end + object v2Column7: TcxGridDBColumn + Caption = #24320#31080#37329#39069 + DataBinding.FieldName = 'KPMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 67 + end + object v2Column6: TcxGridDBColumn + Caption = #20184#27454#26041#24335 + DataBinding.FieldName = 'FKFS' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 92 + end + object v2Column4: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 59 + end + object v2Column5: TcxGridDBColumn + Caption = #25910#27454#36827#24230 + DataBinding.FieldName = 'OrdDefNote3' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.Items.Strings = ( + #24050#20132#21333 + #24050#25215#20817 + #24050#25276#27719 + #24050#25910#27454 + #25276#27719#20013 + #20511#27454 + '' + '' + '') + Properties.OnEditValueChanged = v2Column5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v2Column2: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'OrdDefNote4' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 58 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_YSHZMX.pas b/应收应付/U_YSHZMX.pas new file mode 100644 index 0000000..83ca211 --- /dev/null +++ b/应收应付/U_YSHZMX.pas @@ -0,0 +1,432 @@ +unit U_YSHZMX; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDropDownEdit; + +type + TfrmYSHZMX = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + MPRTCodeName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + OrderNo: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + v2Column1: TcxGridDBColumn; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + VYB: TcxGridDBColumn; + VBB: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + v2PS: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2KP: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + Label4: TLabel; + OrdDefNote3: TComboBox; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure P_OrderNo_YSK(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure v2Column5PropertiesEditValueChanged(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure MPRTCodeNameChange(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + private + { Private declarations } + + procedure InitGrid(); + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYSHZMX: TfrmYSHZMX; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderNewList; + +{$R *.dfm} + + + +procedure TfrmYSHZMX.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' exec P_OrderNo_YSK :begdate,:enddate,1,'''' '); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmYSHZMX.FormDestroy(Sender: TObject); +begin + frmYSHZMX:=nil; +end; + +procedure TfrmYSHZMX.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYSHZMX.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ӧ˿ϸ',Tv2,''); + Close; +end; +procedure TfrmYSHZMX.FormShow(Sender: TObject); +begin + ReadCxGrid('Ӧ˿ϸ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-50; + InitGrid(); +end; + +procedure TfrmYSHZMX.TBRafreshClick(Sender: TObject); +begin + begdate.SetFocus; + InitGrid(); +end; + +procedure TfrmYSHZMX.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmYSHZMX.P_OrderNo_YSK(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYSHZMX.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSHZMX.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + {if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; } + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + if Trim(FFieldName)<>'Money' then + begin + if Trim(FFieldName)<>'HuiLv' then + begin + FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)); + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSHZMX.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Main '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(' where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSHZMX.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'Ӧ˿б'); +end; + +procedure TfrmYSHZMX.v2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Main '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(' where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; +end; + + +procedure TfrmYSHZMX.v2Column5PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxComboBox(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Main '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(' where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; +end; + + +procedure TfrmYSHZMX.OrderNoChange(Sender: TObject); +begin + if Length(Trim(OrderNo.Text))<3 then Exit; + ToolButton2.Click; +end; + +procedure TfrmYSHZMX.MPRTCodeNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYSHZMX.OrderNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(OrderNo.Text))<4 then Exit; + begdate.SetFocus; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' exec P_OrderNo_YSK :begdate,:enddate,2,:orderno '); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Parameters.ParamByName('orderno').Value:='%'+Trim(OrderNo.Text)+'%'; + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; + end; + +end; + +end. diff --git a/应收应付/U_YSHZMXDL.dfm b/应收应付/U_YSHZMXDL.dfm new file mode 100644 index 0000000..0df1fee --- /dev/null +++ b/应收应付/U_YSHZMXDL.dfm @@ -0,0 +1,455 @@ +object frmYSHZMXDL: TfrmYSHZMXDL + Left = 15 + Top = 123 + Width = 1265 + Height = 618 + Caption = #24212#25910#36134#27454#26126#32454'('#20195#29702')' + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1257 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1257 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 466 + Top = 13 + Width = 24 + Height = 12 + Caption = #21697#21517 + end + object Label3: TLabel + Left = 302 + Top = 13 + Width = 36 + Height = 12 + Caption = #35746#21333#21495 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 610 + Top = 13 + Width = 48 + Height = 12 + Caption = #25910#27454#36827#24230 + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 494 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = MPRTCodeNameChange + end + object OrderNo: TEdit + Tag = 2 + Left = 350 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = OrderNoChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + object OrdDefNote3: TComboBox + Tag = 1 + Left = 662 + Top = 9 + Width = 145 + Height = 20 + ItemHeight = 12 + TabOrder = 4 + OnChange = MPRTCodeNameChange + Items.Strings = ( + #24050#20132#21333 + #24050#25215#20817 + #24050#25276#27719 + #24050#25910#27454 + #25276#27719#20013 + #20511#27454 + '' + '') + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1257 + Height = 511 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + end + item + Kind = skSum + Column = v2PS + end + item + Kind = skSum + Column = VYB + end + item + Kind = skSum + end + item + Kind = skSum + Column = cxGridDBColumn3 + end + item + Kind = skSum + Column = v2Column7 + end + item + Kind = skSum + Column = v2Column8 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_YSYF.FonePurple + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 115 + end + object VOrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 76 + end + object v2Column3: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #20986#36135#25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 82 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 66 + end + object v2Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 67 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 71 + end + object VYB: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'YSYBMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 91 + end + object v2PS: TcxGridDBColumn + Caption = #24050#25910#27454#37329#39069 + DataBinding.FieldName = 'SKBBMoney' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 86 + end + object v2Column7: TcxGridDBColumn + Caption = #24320#31080#37329#39069 + DataBinding.FieldName = 'KPMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 67 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #24212#25910#24320#31080#20313#39069 + DataBinding.FieldName = 'YSKPMoneyY' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 99 + end + object v2Column8: TcxGridDBColumn + Caption = #24212#25910#21407#24065#20313#39069 + DataBinding.FieldName = 'YSYBMoneyY' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column8PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 85 + end + object v2Column6: TcxGridDBColumn + Caption = #20184#27454#26041#24335 + DataBinding.FieldName = 'FKFS' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 92 + end + object v2Column4: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 59 + end + object v2Column5: TcxGridDBColumn + Caption = #25910#27454#36827#24230 + DataBinding.FieldName = 'OrdDefNote3' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.Items.Strings = ( + #24050#20132#21333 + #24050#25215#20817 + #24050#25276#27719 + #24050#25910#27454 + #25276#27719#20013 + #20511#27454 + '' + '' + '') + Properties.OnEditValueChanged = v2Column5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v2Column2: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'OrdDefNote4' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 58 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_YSHZMXDL.pas b/应收应付/U_YSHZMXDL.pas new file mode 100644 index 0000000..80b9cf5 --- /dev/null +++ b/应收应付/U_YSHZMXDL.pas @@ -0,0 +1,429 @@ +unit U_YSHZMXDL; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDropDownEdit; + +type + TfrmYSHZMXDL = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + MPRTCodeName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + OrderNo: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + v2Column1: TcxGridDBColumn; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + VYB: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + v2PS: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + Label4: TLabel; + OrdDefNote3: TComboBox; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure P_OrderNo_YSK(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure v2Column5PropertiesEditValueChanged(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure MPRTCodeNameChange(Sender: TObject); + procedure v2Column8PropertiesEditValueChanged(Sender: TObject); + private + { Private declarations } + + procedure InitGrid(); + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYSHZMXDL: TfrmYSHZMXDL; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderNewList; + +{$R *.dfm} + + + +procedure TfrmYSHZMXDL.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' exec P_OrderNo_YSKDL :begdate,:enddate'); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmYSHZMXDL.FormDestroy(Sender: TObject); +begin + frmYSHZMXDL:=nil; +end; + +procedure TfrmYSHZMXDL.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYSHZMXDL.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ӧ˿ϸDL',Tv2,''); + Close; +end; +procedure TfrmYSHZMXDL.FormShow(Sender: TObject); +begin + ReadCxGrid('Ӧ˿ϸDL',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-50; + InitGrid(); +end; + +procedure TfrmYSHZMXDL.TBRafreshClick(Sender: TObject); +begin + begdate.SetFocus; + InitGrid(); +end; + +procedure TfrmYSHZMXDL.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmYSHZMXDL.P_OrderNo_YSK(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYSHZMXDL.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSHZMXDL.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + {if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; } + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + if Trim(FFieldName)<>'Money' then + begin + if Trim(FFieldName)<>'HuiLv' then + begin + FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)); + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSHZMXDL.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Main '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(' where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSHZMXDL.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'Ӧ˿б'); +end; + +procedure TfrmYSHZMXDL.v2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Main '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(' where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; +end; + + +procedure TfrmYSHZMXDL.v2Column5PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxComboBox(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Main '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(' where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; +end; + + +procedure TfrmYSHZMXDL.OrderNoChange(Sender: TObject); +begin + if Length(Trim(OrderNo.Text))<3 then Exit; + ToolButton2.Click; +end; + +procedure TfrmYSHZMXDL.MPRTCodeNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYSHZMXDL.v2Column8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + if Trim(mvalue)='' then + mvalue:='0'; + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Main '); + sql.Add(' Set YSYBMoneyFZ='+Trim(mvalue)); + sql.Add(',YSYBFlag=1'); + SQL.Add(' where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; +end; + +end. diff --git a/应收应付/U_YSHZMXOLJ.dfm b/应收应付/U_YSHZMXOLJ.dfm new file mode 100644 index 0000000..496b2fe --- /dev/null +++ b/应收应付/U_YSHZMXOLJ.dfm @@ -0,0 +1,441 @@ +object frmYSHZMXOLJ: TfrmYSHZMXOLJ + Left = 96 + Top = 109 + Width = 1265 + Height = 618 + Caption = #24212#25910#36134#27454#26126#32454 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1257 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1257 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 586 + Top = 13 + Width = 24 + Height = 12 + Caption = #23458#25143 + end + object Label3: TLabel + Left = 291 + Top = 13 + Width = 36 + Height = 12 + Caption = #35746#21333#21495 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 714 + Top = 13 + Width = 48 + Height = 12 + Caption = #21697#21517#27454#24335 + end + object Label5: TLabel + Left = 435 + Top = 13 + Width = 48 + Height = 12 + Caption = #29983#20135#21333#21495 + end + object Label7: TLabel + Left = 1011 + Top = 13 + Width = 24 + Height = 12 + Caption = #39068#33394 + end + object Label8: TLabel + Left = 869 + Top = 13 + Width = 24 + Height = 12 + Caption = #35268#26684 + end + object CustomerNoName: TEdit + Left = 614 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = SCNOChange + end + object OrderNo: TEdit + Tag = 2 + Left = 328 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = OrderNoChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 3 + end + object PRTCodeName: TEdit + Tag = 2 + Left = 766 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = SCNOChange + end + object SCNO: TEdit + Tag = 2 + Left = 483 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 5 + OnChange = SCNOChange + end + object PRTColor: TEdit + Tag = 2 + Left = 1039 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 6 + OnChange = SCNOChange + end + object PRTSpec: TEdit + Tag = 2 + Left = 895 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 7 + OnChange = SCNOChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1257 + Height = 511 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + Column = VBB + end + item + Kind = skSum + Column = v2PS + end + item + Kind = skSum + end + item + Kind = skSum + Column = cxGridDBColumn3 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_YSYF.FonePurple + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 115 + end + object VOrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 76 + end + object v2Column4: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 62 + end + object v2Column5: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 87 + end + object VBZ: TcxGridDBColumn + Caption = #29983#20135#21333#21495 + DataBinding.FieldName = 'SCNO' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 72 + end + object v2Column3: TcxGridDBColumn + Caption = #21697#21517#27454#24335 + DataBinding.FieldName = 'PRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object VHL: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 71 + end + object VYB: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'PRTSpec' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 95 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #21457#36135#25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 82 + end + object v2Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 67 + end + object VBB: TcxGridDBColumn + Caption = #24212#25910#27454#37329#39069 + DataBinding.FieldName = 'YSBBMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 81 + end + object v2PS: TcxGridDBColumn + Caption = #24050#25910#27454#37329#39069 + DataBinding.FieldName = 'SKBBMoney' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 86 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #26410#25910#20313#39069 + DataBinding.FieldName = 'YSBBYMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 111 + end + object v2Column2: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'SOrdDefNote4' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 83 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_YSHZMXOLJ.pas b/应收应付/U_YSHZMXOLJ.pas new file mode 100644 index 0000000..799abe7 --- /dev/null +++ b/应收应付/U_YSHZMXOLJ.pas @@ -0,0 +1,426 @@ +unit U_YSHZMXOLJ; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDropDownEdit; + +type + TfrmYSHZMXOLJ = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + CustomerNoName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + OrderNo: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + v2Column1: TcxGridDBColumn; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + VYB: TcxGridDBColumn; + VBB: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + v2PS: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + Label4: TLabel; + Label5: TLabel; + PRTCodeName: TEdit; + SCNO: TEdit; + Label7: TLabel; + Label8: TLabel; + PRTColor: TEdit; + PRTSpec: TEdit; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure P_OrderNo_YSK(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure v2Column5PropertiesEditValueChanged(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure CustomerNoNameChange(Sender: TObject); + procedure SCNOChange(Sender: TObject); + private + { Private declarations } + + procedure InitGrid(); + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYSHZMXOLJ: TfrmYSHZMXOLJ; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderNewList; + +{$R *.dfm} + + + +procedure TfrmYSHZMXOLJ.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' exec P_OrderNo_YSK :begdate,:enddate'); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmYSHZMXOLJ.FormDestroy(Sender: TObject); +begin + frmYSHZMXOLJ:=nil; +end; + +procedure TfrmYSHZMXOLJ.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYSHZMXOLJ.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ӧ˿ϸ',Tv2,''); + Close; +end; +procedure TfrmYSHZMXOLJ.FormShow(Sender: TObject); +begin + ReadCxGrid('Ӧ˿ϸ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-50; + InitGrid(); +end; + +procedure TfrmYSHZMXOLJ.TBRafreshClick(Sender: TObject); +begin + begdate.SetFocus; + InitGrid(); +end; + +procedure TfrmYSHZMXOLJ.ToolButton2Click(Sender: TObject); +var + fsj:string; +begin + if ADOQueryMain.Active=False then Exit; + if Trim(SGetFilters(Panel1,1,2))='' then + begin + if Trim(CustomerNoName.Text)<>'' then + begin + fsj:=' CustomerNoName like '''+'%'+Trim(CustomerNoName.Text)+'%'+'''' + +' or KHZJM like '''+'%'+Trim(CustomerNoName.Text)+'%'+''''; + end; + + end else + begin + if Trim(CustomerNoName.Text)<>'' then + begin + fsj:=SGetFilters(Panel1,1,2)+' and (CustomerNoName like '''+'%'+Trim(CustomerNoName.Text)+'%'+'''' + +' or KHZJM like '''+'%'+Trim(CustomerNoName.Text)+'%'+''')'; + end; + end; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); +end; + +procedure TfrmYSHZMXOLJ.P_OrderNo_YSK(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYSHZMXOLJ.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSHZMXOLJ.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + {if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; } + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + if Trim(FFieldName)<>'Money' then + begin + if Trim(FFieldName)<>'HuiLv' then + begin + FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)); + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSHZMXOLJ.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Main '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(' where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSHZMXOLJ.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'Ӧ˿б'); +end; + +procedure TfrmYSHZMXOLJ.v2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Sub '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + + +procedure TfrmYSHZMXOLJ.v2Column5PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxComboBox(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Main '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(' where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; +end; + + +procedure TfrmYSHZMXOLJ.OrderNoChange(Sender: TObject); +begin + if Length(Trim(OrderNo.Text))<3 then Exit; + ToolButton2.Click; +end; + +procedure TfrmYSHZMXOLJ.CustomerNoNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYSHZMXOLJ.SCNOChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +end. diff --git a/应收应付/U_YSHZMXView.dfm b/应收应付/U_YSHZMXView.dfm new file mode 100644 index 0000000..8cd8deb --- /dev/null +++ b/应收应付/U_YSHZMXView.dfm @@ -0,0 +1,468 @@ +object frmYSHZMXView: TfrmYSHZMXView + Left = 35 + Top = 87 + Width = 1265 + Height = 618 + Caption = #24212#25910#36134#27454#26597#35810 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1257 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1257 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 302 + Top = 13 + Width = 36 + Height = 12 + Caption = #35746#21333#21495 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 466 + Top = 13 + Width = 48 + Height = 12 + Caption = #25910#27454#36827#24230 + end + object OrderNo: TEdit + Tag = 2 + Left = 350 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 1 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object OrdDefNote3: TComboBox + Tag = 1 + Left = 518 + Top = 9 + Width = 145 + Height = 20 + ItemHeight = 12 + TabOrder = 3 + OnChange = MPRTCodeNameChange + Items.Strings = ( + #24050#20132#21333 + #24050#25215#20817 + #24050#25276#27719 + #24050#25910#27454 + #25276#27719#20013 + #20511#27454 + '' + '') + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1257 + Height = 514 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + end + item + Kind = skSum + Column = v2PS + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v2Column7 + end + item + Kind = skSum + Column = v2Column8 + end + item + Kind = skSum + Column = v2Column9 + end + item + Kind = skSum + Column = v2Column10 + end + item + Kind = skSum + Column = v2Column11 + end + item + Kind = skSum + Column = v2Column12 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.OnGetContentStyle = Tv2StylesGetContentStyle + Styles.Header = DataLink_YSYF.FonePurple + object cxGridDBColumn1: TcxGridDBColumn + Caption = #21457#36135#26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 115 + end + object VOrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 76 + end + object v2Column3: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #20986#36135#25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 82 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_YSYF.Default + Width = 66 + end + object v2Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 67 + end + object VBZ: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 63 + end + object VHL: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'HuiLv' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 71 + end + object v2Column11: TcxGridDBColumn + Caption = #24212#25910#21407#24065#37329#39069 + DataBinding.FieldName = 'YSYBMoney' + HeaderAlignmentHorz = taCenter + Width = 85 + end + object v2Column8: TcxGridDBColumn + Caption = #24212#25910#26412#24065#37329#39069 + DataBinding.FieldName = 'YSBBMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 86 + end + object v2Column10: TcxGridDBColumn + Caption = #24050#25910#21407#24065#37329#39069 + DataBinding.FieldName = 'SKYBMoney' + OnCustomDrawCell = v2Column10CustomDrawCell + Options.Focusing = False + Width = 86 + end + object v2PS: TcxGridDBColumn + Caption = #24050#25910#27454#26412#24065#37329#39069 + DataBinding.FieldName = 'SKBBMoney' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 106 + end + object v2Column12: TcxGridDBColumn + Caption = #24212#25910#21407#24065#20313#39069 + DataBinding.FieldName = 'YSYBYMoney' + HeaderAlignmentHorz = taCenter + Width = 87 + end + object v2Column9: TcxGridDBColumn + Caption = #24212#25910#26412#24065#20313#39069 + DataBinding.FieldName = 'YSBBYMoney' + Options.Focusing = False + Width = 91 + end + object v2Column7: TcxGridDBColumn + Caption = #24320#31080#37329#39069 + DataBinding.FieldName = 'KPMoney' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 60 + end + object v2Column6: TcxGridDBColumn + Caption = #20184#27454#26041#24335 + DataBinding.FieldName = 'FKFS' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 92 + end + object v2Column4: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 59 + end + object v2Column5: TcxGridDBColumn + Caption = #25910#27454#36827#24230 + DataBinding.FieldName = 'OrdDefNote3' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.Items.Strings = ( + #24050#20132#21333 + #24050#25215#20817 + #24050#25276#27719 + #24050#25910#27454 + #25276#27719#20013 + #20511#27454 + '' + '' + '') + Properties.OnEditValueChanged = v2Column5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 69 + end + object v2Column2: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'OrdDefNote4' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 58 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_YSHZMXView.pas b/应收应付/U_YSHZMXView.pas new file mode 100644 index 0000000..ca40a5e --- /dev/null +++ b/应收应付/U_YSHZMXView.pas @@ -0,0 +1,522 @@ +unit U_YSHZMXView; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDropDownEdit; + +type + TfrmYSHZMXView = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + OrderNo: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + v2Column1: TcxGridDBColumn; + VHL: TcxGridDBColumn; + VBZ: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + v2PS: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + Label4: TLabel; + OrdDefNote3: TComboBox; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + v2Column10: TcxGridDBColumn; + v2Column11: TcxGridDBColumn; + v2Column12: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure P_OrderNo_YSK(Sender: TObject); + procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure v2Column5PropertiesEditValueChanged(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure MPRTCodeNameChange(Sender: TObject); + procedure v2Column10CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure Tv2StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + private + { Private declarations } + FDate:TDateTime; + procedure InitGrid(); + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYSHZMXView: TfrmYSHZMXView; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderNewList; + +{$R *.dfm} + + + +procedure TfrmYSHZMXView.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' exec P_OrderNo_YSK_View :begdate,:enddate,:WSql'); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + if Trim(DParameters1)<>'' then + Parameters.ParamByName('WSql').Value:=' and A.Filler='''+Trim(DName)+'''' + else + Parameters.ParamByName('WSql').Value:=''; + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmYSHZMXView.FormDestroy(Sender: TObject); +begin + frmYSHZMXView:=nil; +end; + +procedure TfrmYSHZMXView.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYSHZMXView.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ӧ˿ϸѯ',Tv2,''); + Close; +end; +procedure TfrmYSHZMXView.FormShow(Sender: TObject); +begin + ReadCxGrid('Ӧ˿ϸѯ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-50; + FDate:=SGetServerDate(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmYSHZMXView.TBRafreshClick(Sender: TObject); +begin + begdate.SetFocus; + InitGrid(); +end; + +procedure TfrmYSHZMXView.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmYSHZMXView.P_OrderNo_YSK(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYSHZMXView.cxGridDBColumn8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YCL_SG_HZ '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSHZMXView.cxGridDBColumn5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String; +begin + {if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then + begin + Application.MessageBox('Զݲܸ!','ʾ',0); + Exit; + end; } + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + if Trim(DParameters2)='' then + begin + FieldByName('HuiLv').Value:=1; + end; + Post; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+''''); + Open; + end; + FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString; + + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString); + if Trim(FPrice)='' then FPrice:='0'; + FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString); + if Trim(FQty)='' then FQty:='0'; + + FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString); + if Trim(FMoney)='' then FMoney:='0'; + + FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString); + if Trim(FHuiLv)='' then FHuiLv:='0'; + + {FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString); + if Trim(FBBMoney)='' then FBBMoney:='0'; } + + if Trim(FFieldName)<>'Money' then + begin + if Trim(FFieldName)<>'HuiLv' then + begin + FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv)); + FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)); + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + + end else + begin + FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv)); + end; + with CDS_HZ do + begin + Edit; + FieldByName('Money').Value:=StrToFloat(FMoney); + FieldByName('BBMoney').Value:=StrToFloat(FBBMoney); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR '); + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + if Trim(FFieldName)<>'Money' then + begin + sql.Add(',Money='+FMoney); + end; + + sql.Add(',BBMoney='+FBBMoney); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+''''); + + SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney); + sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSHZMXView.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Main '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(' where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmYSHZMXView.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'Ӧ˿б'); +end; + +procedure TfrmYSHZMXView.v2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Main '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(' where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; +end; + + +procedure TfrmYSHZMXView.v2Column5PropertiesEditValueChanged(Sender: TObject); +var + mvalue,FFieldName:String; +begin + mvalue:=TcxComboBox(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Main '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(' where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; +end; + + +procedure TfrmYSHZMXView.OrderNoChange(Sender: TObject); +begin + if Length(Trim(OrderNo.Text))<3 then Exit; + ToolButton2.Click; +end; + +procedure TfrmYSHZMXView.MPRTCodeNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYSHZMXView.v2Column10CustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +var + Id,Id10,Id20,i:Integer; + +begin + {Id:=TV2.GetColumnByFieldName('SKYBMoney').Index;//;-TV1.GroupedItemCount; + Id10:=TV2.GetColumnByFieldName('Qty').Index; + Id20:=TV2.GetColumnByFieldName('CRTime').Index; + if Id<0 then Exit; + if Id10<0 then Exit; + if AViewInfo.GridRecord.Values[Id]=0 then + begin + if AViewInfo.GridRecord.Values[Id10]>0 then + begin + i:=FDate-AViewInfo.GridRecord.Values[Id20]; + if (i<30) and (i>0) then + begin + + end else + if (i>=30) and (i<60) then + ACanvas.Brush.Color:=clYellow + else if (i>=60) and (i<90) then + ACanvas.Brush.Color:=clRed + else + ACanvas.Brush.Color:=clGreen; + + end; + + end; } +end; + +procedure TfrmYSHZMXView.Tv2StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + Id,Id10,Id20,Id30,i:Integer; + +begin + try + if Tv2.GroupedItemCount=0 then + begin + Id:=TV2.GetColumnByFieldName('SKYBMoney').Index;//;-TV1.GroupedItemCount; + Id10:=TV2.GetColumnByFieldName('Qty').Index; + Id20:=TV2.GetColumnByFieldName('CRTime').Index; + Id30:=TV2.GetColumnByFieldName('SKBBMoney').Index; + if (ARecord.Values[Id]=0) and (ARecord.Values[Id30]=0) then + begin + if ARecord.Values[Id10]>0 then + begin + i:=FDate-ARecord.Values[Id20]; + if (i<30) and (i>0) then + begin + + end else + if (i>=30) and (i<60) then + AStyle:=DataLink_YSYF.QHuangSe + else if (i>=60) and (i<90) then + + AStyle:=DataLink_YSYF.Red + else + + AStyle:=DataLink_YSYF.Green; + + end; + + end; + end else + begin + + end; + except + end; +end; + +procedure TfrmYSHZMXView.OrderNoKeyPress(Sender: TObject; var Key: Char); +var + fsj:string; +begin + if Key=#13 then + begin + fsj:=''; + if Length(Trim(OrderNo.Text))<3 then Exit; + fsj:=' and A.OrderNo like '''+'%'+Trim(OrderNo.Text)+'%'+''''; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' exec P_OrderNo_YSK_View :begdate,:enddate,:WSql'); + Parameters.ParamByName('begdate').Value:='2000-01-01'; + Parameters.ParamByName('Enddate').Value:='2050-10-10'; + if Trim(DParameters1)<>'' then + Parameters.ParamByName('WSql').Value:=fsj+' and A.Filler='''+Trim(DName)+'''' + else + Parameters.ParamByName('WSql').Value:=fsj+''; + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +end. diff --git a/应收应付/U_YSMXlist.dfm b/应收应付/U_YSMXlist.dfm new file mode 100644 index 0000000..4eb16ce --- /dev/null +++ b/应收应付/U_YSMXlist.dfm @@ -0,0 +1,611 @@ +object frmYSMXlist: TfrmYSMXlist + Left = 115 + Top = 125 + Width = 1093 + Height = 621 + Caption = #24212#25910#27454#23545#36134#21333 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1077 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton6: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = ToolButton6Click + end + object ToolButton1: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object ToolButton3: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 58 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #38544#34255#25968#25454 + ImageIndex = 41 + Visible = False + OnClick = ToolButton4Click + end + object ToolButton5: TToolButton + Left = 402 + Top = 0 + AutoSize = True + Caption = #21462#28040#38544#34255 + ImageIndex = 129 + Visible = False + OnClick = ToolButton5Click + end + object TBClose: TToolButton + Left = 489 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1077 + Height = 38 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 702 + Top = 13 + Width = 24 + Height = 12 + Caption = #21697#21517 + end + object Label3: TLabel + Left = 514 + Top = 13 + Width = 48 + Height = 12 + Caption = #20986#24211#21333#21495 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label4: TLabel + Left = 598 + Top = 77 + Width = 48 + Height = 12 + Caption = #25910#27454#36827#24230 + end + object Label5: TLabel + Left = 324 + Top = 14 + Width = 24 + Height = 12 + Caption = #23458#25143 + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 730 + Top = 9 + Width = 120 + Height = 20 + TabOrder = 0 + OnChange = MPRTCodeNameChange + end + object inoutNO: TEdit + Tag = 2 + Left = 562 + Top = 9 + Width = 120 + Height = 20 + TabOrder = 1 + OnChange = inoutNOChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Format = 'yyyy-MM-dd' + Time = 41256.918237847230000000 + TabOrder = 2 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Format = 'yyyy-MM-dd' + Time = 41256.918237847230000000 + TabOrder = 3 + end + object OrdDefNote3: TComboBox + Tag = 1 + Left = 662 + Top = 65 + Width = 145 + Height = 20 + ItemHeight = 12 + TabOrder = 4 + OnChange = MPRTCodeNameChange + Items.Strings = ( + #24050#20132#21333 + #24050#25215#20817 + #24050#25276#27719 + #24050#25910#27454 + #25276#27719#20013 + #20511#27454 + '' + '') + end + object factoryName: TEdit + Tag = 2 + Left = 364 + Top = 9 + Width = 120 + Height = 20 + TabOrder = 5 + OnChange = MPRTCodeNameChange + end + object CheckBox1: TCheckBox + Left = 896 + Top = 12 + Width = 97 + Height = 17 + Caption = #26174#31034#38544#34255 + TabOrder = 6 + Visible = False + OnClick = CheckBox1Click + end + object CheckBox2: TCheckBox + Left = 988 + Top = 12 + Width = 97 + Height = 17 + Caption = #20840#36873 + TabOrder = 7 + Visible = False + OnClick = CheckBox2Click + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 69 + Width = 1077 + Height = 396 + Align = alTop + TabOrder = 2 + LookAndFeel.NativeStyle = False + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnCustomDrawCell = Tv2CustomDrawCell + DataController.DataSource = DS_HZ + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxQty + end + item + Kind = skSum + end + item + Kind = skSum + Column = v2BBMoney + end + item + Kind = skSum + Column = VMoney + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v2RollNum + end + item + Kind = skSum + Column = v2Column8 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsCustomize.GroupBySorting = True + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + object v2Column7: TcxGridDBColumn + Caption = #38544#34255 + DataBinding.FieldName = 'YFDefFlag1' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + VisibleForCustomization = False + Width = 50 + end + object v2factoryName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'factoryName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object cxCRTime: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.CellMerging = True + Styles.Header = DataLink_YSYF.Default + Width = 115 + OnCompareRowValuesForCellMerging = v2SMoneyCompareRowValuesForCellMerging + end + object VOrderNo: TcxGridDBColumn + Caption = #20986#24211#21333#21495 + DataBinding.FieldName = 'inoutNO' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.CellMerging = True + Width = 76 + OnCompareRowValuesForCellMerging = VOrderNoCompareRowValuesForCellMerging + end + object v2MPRTCodeName: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v2MRPTspec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'MPRTspec' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 74 + end + object v2Column1: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'MPRTCOLor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v2YFName: TcxGridDBColumn + Caption = #36153#29992#21517#31216 + DataBinding.FieldName = 'YFName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v2SMoney: TcxGridDBColumn + Caption = #20986#24211#21333#37329#39069 + DataBinding.FieldName = 'SMoney' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.CellMerging = True + Width = 81 + OnCompareRowValuesForCellMerging = v2SMoneyCompareRowValuesForCellMerging + end + object v2RollNum: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'ps' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object cxQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_YSYF.Default + Width = 82 + end + object cxQtyUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_YSYF.Default + Width = 66 + end + object v2Price: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 67 + end + object v2Column9: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'BZType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object VMoney: TcxGridDBColumn + Caption = #24212#25910#27454#37329#39069 + DataBinding.FieldName = 'Money' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 91 + end + object v2BBMoney: TcxGridDBColumn + Caption = #25910#27454#37329#39069 + DataBinding.FieldName = 'BBMoney' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 86 + end + object v2Column8: TcxGridDBColumn + Caption = #20943#20813#37329#39069 + DataBinding.FieldName = 'DerateMoney' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object cxMoneyYe: TcxGridDBColumn + Caption = #20313#39069 + DataBinding.FieldName = 'MoneyYe' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_YSYF.FonePurple + Width = 99 + end + object v2FHAddress: TcxGridDBColumn + Caption = #21457#36135#22320#22336 + DataBinding.FieldName = 'FHAddress' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 120 + end + object v2Column3: TcxGridDBColumn + Caption = #32852#31995#26041#24335 + DataBinding.FieldName = 'LXFS' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v2Column2: TcxGridDBColumn + DataBinding.FieldName = 'CRType' + Visible = False + Options.Editing = False + end + object v2Column4: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'otherNote' + HeaderAlignmentHorz = taCenter + Width = 200 + end + object v2Column5: TcxGridDBColumn + DataBinding.FieldName = 'NHxNum' + Visible = False + Options.Editing = False + VisibleForCustomization = False + end + object v2Column6: TcxGridDBColumn + DataBinding.FieldName = 'hxNum' + Visible = False + Options.Editing = False + VisibleForCustomization = False + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end + object RMDBDataSet1: TRMDBDataSet + Visible = True + DataSet = ADOPrint + Left = 360 + Top = 260 + 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 = 652 + Top = 244 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 248 + Top = 196 + ReportData = {} + end + object ADOPrint: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 584 + Top = 216 + end +end diff --git a/应收应付/U_YSMXlist.pas b/应收应付/U_YSMXlist.pas new file mode 100644 index 0000000..68688cc --- /dev/null +++ b/应收应付/U_YSMXlist.pas @@ -0,0 +1,434 @@ +unit U_YSMXlist; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxDropDownEdit, RM_e_Xls, cxLookAndFeels, + cxLookAndFeelPainters, cxNavigator; + +type + TfrmYSMXlist = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + Label1: TLabel; + MPRTCodeName: TEdit; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + inoutNO: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxCRTime: TcxGridDBColumn; + cxMoneyYe: TcxGridDBColumn; + cxQty: TcxGridDBColumn; + cxQtyUnit: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + v2Price: TcxGridDBColumn; + VMoney: TcxGridDBColumn; + VOrderNo: TcxGridDBColumn; + v2BBMoney: TcxGridDBColumn; + v2MPRTCodeName: TcxGridDBColumn; + Label4: TLabel; + OrdDefNote3: TComboBox; + v2factoryName: TcxGridDBColumn; + v2MRPTspec: TcxGridDBColumn; + v2YFName: TcxGridDBColumn; + Label5: TLabel; + factoryName: TEdit; + v2Column1: TcxGridDBColumn; + v2SMoney: TcxGridDBColumn; + v2FHAddress: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2RollNum: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + ToolButton3: TToolButton; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + CheckBox1: TCheckBox; + v2Column7: TcxGridDBColumn; + ToolButton4: TToolButton; + ToolButton5: TToolButton; + CheckBox2: TCheckBox; + ToolButton6: TToolButton; + RMDBDataSet1: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + RMGridReport1: TRMGridReport; + ADOPrint: TADOQuery; + v2Column8: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure P_OrderNo_YSK(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure inoutNOChange(Sender: TObject); + procedure MPRTCodeNameChange(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure v2SMoneyCompareRowValuesForCellMerging(Sender: TcxGridColumn; + ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; + const AValue1: Variant; ARow2: TcxGridDataRow; + AProperties2: TcxCustomEditProperties; const AValue2: Variant; + var AAreEqual: Boolean); + procedure Tv2CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure VOrderNoCompareRowValuesForCellMerging(Sender: TcxGridColumn; + ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; + const AValue1: Variant; ARow2: TcxGridDataRow; + AProperties2: TcxCustomEditProperties; const AValue2: Variant; + var AAreEqual: Boolean); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure ToolButton6Click(Sender: TObject); + private + { Private declarations } + + procedure InitGrid(); + + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYSMXlist: TfrmYSMXlist; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderNewList; + +{$R *.dfm} + +procedure TfrmYSMXlist.InitGrid(); +begin + IF trim(factoryName.Text)='' then + begin + application.MessageBox('ͻΪգͻ','ʾϢ',MB_ICONERROR); + exit; + end; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' exec P_Qry_Ysk_mx :begdate,:enddate,:factoryName'); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Parameters.ParamByName('factoryName').Value:=Trim(factoryName.Text); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + ToolButton2.Click; + end; +end; + + +procedure TfrmYSMXlist.FormDestroy(Sender: TObject); +begin + frmYSMXlist:=nil; +end; + +procedure TfrmYSMXlist.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYSMXlist.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption+'2',Tv2,''); + Close; +end; +procedure TfrmYSMXlist.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption+'2',Tv2,''); + + // InitGrid(); +end; + +procedure TfrmYSMXlist.TBRafreshClick(Sender: TObject); +begin + begdate.SetFocus; + InitGrid(); +end; + +procedure TfrmYSMXlist.ToolButton2Click(Sender: TObject); +var + sqlwhere:string; +begin + if ADOQueryMain.Active then + begin + sqlwhere:=SGetFilters(Panel1,1,2); + if sqlwhere='' then + begin + IF not CheckBox1.Checked then + begin + sqlwhere:=' YFDefFlag1=0 '; + end; + end + else + begin + IF not CheckBox1.Checked then + begin + sqlwhere:=sqlwhere+' and YFDefFlag1=0 '; + end; + end; + SDofilter(ADOQueryMain,sqlwhere); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmYSMXlist.P_OrderNo_YSK(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYSMXlist.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,self.Caption); +end; + +procedure TfrmYSMXlist.inoutNOChange(Sender: TObject); +begin + + ToolButton2.Click; +end; + +procedure TfrmYSMXlist.MPRTCodeNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYSMXlist.FormCreate(Sender: TObject); +begin + cxGrid2.Align:=AlClient; + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-30; +end; + +procedure TfrmYSMXlist.v2SMoneyCompareRowValuesForCellMerging( + Sender: TcxGridColumn; ARow1: TcxGridDataRow; + AProperties1: TcxCustomEditProperties; const AValue1: Variant; + ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; + const AValue2: Variant; var AAreEqual: Boolean); +var + colIdx0,colIdx1:integer; +begin + colIdx0:= tv2.GetColumnByFieldName('inoutNo').Index; + colIdx1:= tv2.GetColumnByFieldName('CRType').Index; + if (ARow1.Values[colIdx0] = ARow2.Values[colIdx0]) + and (ARow1.Values[colIdx1] = ARow2.Values[colIdx1]) + and (ARow1.Values[colIdx1] = 'ӦտǼ') then + AAreEqual := True + else + AAreEqual := False; +end; + +procedure TfrmYSMXlist.Tv2CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); +begin + IF AViewInfo.GridRecord.Values[tv2.GetColumnByFieldName('CRType').Index]='տǼ'then + ACanvas.Brush.Color:=clFuchsia; + IF AViewInfo.GridRecord.Values[tv2.GetColumnByFieldName('CRType').Index]<>'տǼ'then + begin + IF AViewInfo.GridRecord.Values[tv2.GetColumnByFieldName('hxNum').Index]<>0 then + ACanvas.Brush.Color:=clMoneyGreen; + end; +end; + +procedure TfrmYSMXlist.VOrderNoCompareRowValuesForCellMerging( + Sender: TcxGridColumn; ARow1: TcxGridDataRow; + AProperties1: TcxCustomEditProperties; const AValue1: Variant; + ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; + const AValue2: Variant; var AAreEqual: Boolean); +var + colIdx0,colIdx1:integer; +begin + + colIdx0:= tv2.GetColumnByFieldName('inoutNO').Index; + colIdx1:= tv2.GetColumnByFieldName('CRType').Index; + if (ARow1.Values[colIdx0] = ARow2.Values[colIdx0])then + AAreEqual := True + else + AAreEqual := False; +end; + +procedure TfrmYSMXlist.ToolButton3Click(Sender: TObject); +begin + IF CDS_HZ.IsEmpty then exit; + begdate.SetFocus; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update YF_Money_CR SET otherNote='+quotedstr(trim(CDS_HZ.fieldbyname('otherNote').AsString))); + sql.Add('where YFID='+quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); + execsql; + end; + except + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmYSMXlist.ToolButton4Click(Sender: TObject); +begin + IF CDS_HZ.IsEmpty then exit; + with CDS_HZ do + begin + DisableControls; + First; + while not eof do + begin + IF fieldbyname('YFDefFlag1').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update YF_Money_CR SET YFDefFlag1=1 '); + sql.Add('where YFID='+quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); + execsql; + end; + end; + next; + end; + First; + EnableControls; + end; + TBRafresh.Click; +end; + +procedure TfrmYSMXlist.ToolButton5Click(Sender: TObject); +begin + IF CDS_HZ.IsEmpty then exit; + IF Application.MessageBox('ȷҪȡ','ʾ',32+4)<>IDYES then Exit; + with CDS_HZ do + begin + DisableControls; + First; + while not eof do + begin + IF fieldbyname('YFDefFlag1').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update YF_Money_CR SET YFDefFlag1=0 '); + sql.Add('where YFID='+quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString))); + execsql; + end; + end; + next; + end; + First; + EnableControls; + end; + TBRafresh.Click; +end; + +procedure TfrmYSMXlist.CheckBox1Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmYSMXlist.CheckBox2Click(Sender: TObject); +begin + IF CDS_HZ.IsEmpty then exit; + with CDS_HZ do + begin + DisableControls; + First; + while not eof do + begin + edit; + fieldbyname('YFDefFlag1').Value:=checkbox2.Checked; + post; + next; + end; + First; + EnableControls; + end; +end; + +procedure TfrmYSMXlist.ToolButton6Click(Sender: TObject); +var + filepath:string; +begin + IF CDS_HZ.IsEmpty then exit; + try + with ADOPrint do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' exec P_Qry_Ysk_mx_DZ :begdate,:enddate,:factoryName'); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Parameters.ParamByName('factoryName').Value:=Trim(factoryName.Text); + Open; + end; + filepath:=ExtractFilePath(Application.ExeName) + 'report\Ӧտ˵.rmf'; + if not FileExists(Pchar(filepath)) then + begin + application.MessageBox(pchar('ļ['+filepath+']ڣ'),'ʾϢ',MB_IConError); + exit; + end; + RMVariables['dtxz'] :=FormatDateTime('yyyy-mm-dd',date()); + RmVariables['begDate'] :=FormatDateTime('yyyy-mm-dd',begDate.Date); + RmVariables['enddate'] :=FormatDateTime('yyyy-mm-dd',enddate.Date); + RMVariables['zdr'] :=trim(DName); + RmVariables['begDate'] :=FormatDateTime('yyyy-mm-dd',begDate.Date)+' '+FormatDateTime('yyyy-mm-dd',enddate.Date); + CDS_HZ.First; + RmVariables['QCNum'] :=CDS_HZ.fieldbyname('MoneyYe').AsFloat - CDS_HZ.fieldbyname('Money').AsFloat + CDS_HZ.fieldbyname('BBMoney').AsFloat ; + CDS_HZ.Last; + RmVariables['endNum'] :=CDS_HZ.fieldbyname('MoneyYe').AsString; + RMGridReport1.LoadFromFile(filepath); + // RMGridReport1.PrintReport; + RMGridReport1.ShowReport; + + finally + + end; +end; + +end. diff --git a/应收应付/U_YSSCList.dfm b/应收应付/U_YSSCList.dfm new file mode 100644 index 0000000..bbdd384 --- /dev/null +++ b/应收应付/U_YSSCList.dfm @@ -0,0 +1,539 @@ +object frmYSSCList: TfrmYSSCList + Left = 303 + Top = 437 + Width = 1160 + Height = 590 + Caption = #24212#25910#27454#29983#25104#20449#24687#21015#34920 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1144 + 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_YSYF.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #30830#23450 + ImageIndex = 41 + OnClick = ToolButton1Click + end + object TBExport: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 13 + OnClick = TBExportClick + end + object TBClose: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1144 + Height = 64 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 28 + Top = 14 + Width = 48 + Height = 12 + Caption = #26597#35810#26102#38388 + end + object Label2: TLabel + Left = 64 + Top = 39 + Width = 12 + Height = 12 + Caption = #33267 + end + object Label3: TLabel + Left = 365 + Top = 14 + Width = 24 + Height = 12 + Caption = #21697#21517 + end + object Label4: TLabel + Left = 521 + Top = 14 + Width = 24 + Height = 12 + Caption = #23458#25143 + end + object Label5: TLabel + Left = 195 + Top = 14 + Width = 36 + Height = 12 + Caption = #20973#35777#21495 + end + object Label8: TLabel + Left = 365 + Top = 39 + Width = 24 + Height = 12 + Caption = #35268#26684 + end + object Label12: TLabel + Left = 673 + Top = 14 + Width = 66 + Height = 12 + Caption = #20986'/'#20837#24211#31867#22411 + end + object Label6: TLabel + Left = 521 + Top = 39 + Width = 24 + Height = 12 + Caption = #25104#20998 + end + object Label7: TLabel + Left = 183 + Top = 39 + Width = 48 + Height = 12 + Caption = #25351#31034#21333#21495 + end + object BegDate: TDateTimePicker + Left = 77 + Top = 10 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 77 + Top = 35 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 1 + end + object SPName: TEdit + Tag = 2 + Left = 392 + Top = 10 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = TBFindClick + end + object FactoryName: TEdit + Tag = 2 + Left = 549 + Top = 10 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = FactoryNameChange + end + object SPID: TEdit + Tag = 2 + Left = 234 + Top = 10 + Width = 100 + Height = 20 + TabOrder = 4 + OnChange = SPIDChange + OnKeyPress = SPIDKeyPress + end + object SPSpec: TEdit + Tag = 2 + Left = 392 + Top = 35 + Width = 100 + Height = 20 + TabOrder = 5 + OnChange = SPSpecChange + end + object SPCF: TEdit + Tag = 2 + Left = 549 + Top = 35 + Width = 100 + Height = 20 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 6 + OnChange = FactoryNameChange + end + object OrderNo: TEdit + Tag = 2 + Left = 235 + Top = 35 + Width = 100 + Height = 20 + TabOrder = 7 + OnChange = FactoryNameChange + end + object CRType: TEdit + Tag = 2 + Left = 753 + Top = 10 + Width = 100 + Height = 20 + TabOrder = 8 + OnChange = FactoryNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 117 + Width = 1144 + Height = 434 + Align = alClient + PopupMenu = PopupMenu1 + TabOrder = 2 + object Tv1: TcxGridDBTableView + OnMouseDown = Tv1MouseDown + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + 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 + item + Kind = skSum + Column = v1Column5 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.Header = DataLink_YSYF.Default + object v1Column17: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'Ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column6: TcxGridDBColumn + Caption = #21333#21495 + DataBinding.FieldName = 'crno' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 83 + end + object v1Column2: TcxGridDBColumn + Tag = 2 + Caption = #21019#24314#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 = #20986'/'#20837#24211#31867#22411#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 = 123 + end + object v1Column20: TcxGridDBColumn + Tag = 2 + Caption = #25351#31034#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 78 + end + object v1Column14: TcxGridDBColumn + Tag = 2 + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Alignment.Horz = taLeftJustify + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 159 + end + object v1Column19: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'P_Code' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 72 + end + object v2Column1: TcxGridDBColumn + Tag = 2 + Caption = #21697#21517 + DataBinding.FieldName = 'P_codename' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 97 + end + object v1Column8: TcxGridDBColumn + Tag = 2 + Caption = #27454#21495 + DataBinding.FieldName = 'P_Spec' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Editing = False + Width = 65 + end + object v1Column1: TcxGridDBColumn + Tag = 2 + Caption = #38376#24133 + DataBinding.FieldName = 'P_MF' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 73 + end + object v1Column10: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'P_KZ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1Column11: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 54 + end + object v1Column9: TcxGridDBColumn + Tag = 2 + Caption = #21305#25968 + DataBinding.FieldName = 'PiQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 67 + end + object v2Column6: TcxGridDBColumn + Tag = 2 + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + 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 v1Column16: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'price' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 74 + end + object v1Column15: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 57 + end + object v1Column5: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'Money' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object Tv1Column1: TcxGridDBColumn + Caption = #20986#21040#23458#25143 + DataBinding.FieldName = 'Receiver' + HeaderAlignmentHorz = taCenter + Width = 65 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 97 + Width = 1144 + Height = 20 + Align = alTop + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 3 + Properties.CustomButtons.Buttons = <> + Properties.Style = 9 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + #26410#29983#25104 + #24050#29983#25104) + OnChange = cxTabControl1Change + ClientRectRight = 0 + ClientRectTop = 0 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 976 + Top = 65528 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1056 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1024 + Top = 8 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 928 + Top = 152 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 864 + Top = 152 + end + object PopupMenu1: TPopupMenu + Left = 432 + Top = 224 + object N1: TMenuItem + Caption = #20840#36873 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #20840#24323 + OnClick = N2Click + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 800 + Top = 264 + end +end diff --git a/应收应付/U_YSSCList.pas b/应收应付/U_YSSCList.pas new file mode 100644 index 0000000..ca666a1 --- /dev/null +++ b/应收应付/U_YSSCList.pas @@ -0,0 +1,428 @@ +unit U_YSSCList; + +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, cxPC, + cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu; + +type + TfrmYSSCList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBExport: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label1: TLabel; + Label2: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + CDS_Main: TClientDataSet; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + Label3: TLabel; + Label4: TLabel; + Label5: TLabel; + Label8: TLabel; + Label12: TLabel; + SPName: TEdit; + FactoryName: TEdit; + SPID: TEdit; + SPSpec: TEdit; + Label6: TLabel; + SPCF: TEdit; + Label7: TLabel; + OrderNo: TEdit; + cxGrid2: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column6: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + cxGrid2Level1: TcxGridLevel; + v1Column17: TcxGridDBColumn; + ToolButton1: TToolButton; + cxTabControl1: TcxTabControl; + cxGridPopupMenu1: TcxGridPopupMenu; + v1Column16: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + v1Column15: TcxGridDBColumn; + v1Column19: TcxGridDBColumn; + v1Column20: TcxGridDBColumn; + CRType: TEdit; + v1Column5: TcxGridDBColumn; + Tv1Column1: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure SPIDKeyPress(Sender: TObject; var Key: Char); + procedure SPIDChange(Sender: TObject); + procedure SPSpecChange(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); + private + canshu1, canshu2: string; + procedure InitGrid(); + procedure SetStatus(); + function YSData(): Boolean; + { Private declarations } + public + { Public declarations } + end; + +var + frmYSSCList: TfrmYSSCList; + +implementation + +uses + U_DataLink, U_Fun; + +{$R *.dfm} +procedure TfrmYSSCList.SetStatus(); +begin + if cxTabControl1.TabIndex = 0 then + begin + ToolButton1.Visible := True; + end + else + begin + ToolButton1.Visible := False; + end; +end; + +function TfrmYSSCList.YSData(): Boolean; +var + CRID, OrdMainId, YFID, FComTaiTou, FCRID, FFactoryName: string; +begin + Result := False; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName=' + quotedstr(Trim(CDS_Main.fieldbyname('Receiver').AsString))); + Open; + end; + if ADOQueryTemp.IsEmpty = False then + begin + CRID := ADOQueryTemp.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID := ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('FactoryName').Value := Trim(CDS_Main.fieldbyname('Receiver').AsString); + FieldByName('ZdyStr1').Value := 'Ӧ'; + Post; + end; + end; + + if GetLSNo(ADOQueryCmd, YFID, 'CS', 'YF_Money_CR', 3, 1) = False then + begin + Application.MessageBox('ȡӦʧ!', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where YFID=''' + Trim(YFID) + ''''); + Open; + end; + with ADOQueryCmd do + begin + if ADOQueryTemp.IsEmpty then + Append + else + Edit; + FieldByName('YFID').Value := Trim(YFID); + FieldByName('YFTypeId').Value := Trim(CDS_Main.fieldbyname('crno').AsString); + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('CRType').Value := 'ӦտǼ'; + FieldByName('CRFlag').Value := 'Ӧ'; + FieldByName('QtyFlag').Value := 1; + FieldByName('FactoryName').Value := Trim(CDS_Main.fieldbyname('Receiver').AsString); + if (Trim(CDS_Main.fieldbyname('CRTime').AsString) <> '') then + FieldByName('CRTime').Value := CDS_Main.fieldbyname('CRTime').AsDateTime + else + FieldByName('CRTime').Value := SGetServerDate10(ADOQueryTemp); + FieldByName('Qty').Value := CDS_Main.fieldbyname('Qty').AsFloat; + FieldByName('PS').Value := CDS_Main.fieldbyname('PiQty').AsFloat; + FieldByName('YFType').Value := 'Զ'; + FieldByName('Price').Value := CDS_Main.fieldbyname('Price').AsFloat; + FieldByName('money').Value := CDS_Main.fieldbyname('money').AsFloat; + FieldByName('BBmoney').Value := CDS_Main.fieldbyname('money').AsFloat; + FieldByName('HuiLv').Value := 1; +// FieldByName('BZType').Value := Trim(CDS_Main.fieldbyname('PriceUnit').AsString); + FieldByName('QtyUnit').Value := Trim(CDS_Main.fieldbyname('QtyUnit').AsString); +// FieldByName('orderNo').Value := Trim(CDS_Main.fieldbyname('OrderNo').AsString); +// FieldByName('P_Code').Value := Trim(CDS_Main.fieldbyname('spcode').AsString); +// FieldByName('P_CodeName').Value := Trim(CDS_Main.fieldbyname('SPName').AsString); +// FieldByName('P_Spec').Value := Trim(CDS_Main.fieldbyname('SPSpec').AsString); +// FieldByName('P_Color').Value := Trim(CDS_Main.fieldbyname('SPColor').AsString); + FieldByName('YFName').Value := Trim(CDS_Main.FieldByName('FeeName').AsString); + FieldByName('MainId').Value := Trim(CDS_Main.fieldbyname('crno').AsString); + FieldByName('SubId').Value := Trim(CDS_Main.fieldbyname('crid').AsString); +// FieldByName('KHName').Value := Trim(CDS_Main.fieldbyname('Receiver').AsString); + FieldByName('status').Value := '0'; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID=' + CRID); + ExecSQL; + end; + Result := True; +end; + +procedure TfrmYSSCList.FormDestroy(Sender: TObject); +begin + frmYSSCList := nil; +end; + +procedure TfrmYSSCList.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmYSSCList.FormCreate(Sender: TObject); +begin + //cxGrid1.Align:=alClient; + EndDate.DateTime := SGetServerDate10(ADOQueryTemp); + BegDate.DateTime := EndDate.DateTime - 30; + canshu1 := Trim(DParameters1); + canshu2 := Trim(DParameters2); +end; + +procedure TfrmYSSCList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + sql.Clear; + SQL.Add(' exec P_View_YSSC_copy1 '); + SQL.Add(' @BegDate=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.DateTime)) + ''' '); + SQL.Add(',@Enddate=''' + Trim(FormatDateTime('yyyy-MM-dd', enddate.DateTime)) + ''' '); + SQL.Add(',@Flag=' + IntToStr(cxTabControl1.TabIndex)); + // ShowMessage(SQL.Text); + Open; + end; + SCreateCDS20(ADOQueryMain, CDS_Main); + SInitCDSData20(ADOQueryMain, CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmYSSCList.TBRafreshClick(Sender: TObject); +begin + BegDate.SetFocus; + InitGrid(); +end; + +procedure TfrmYSSCList.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); + end; +end; + +procedure TfrmYSSCList.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption, Tv1, ''); + Close; +end; + +procedure TfrmYSSCList.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption, Tv1, ''); + SetStatus(); +end; + +procedure TfrmYSSCList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then + exit; + TcxGridToExcel('ӦտϢб', cxGrid2); +end; + +procedure TfrmYSSCList.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 TfrmYSSCList.N1Click(Sender: TObject); +begin + SelOKNo(CDS_Main, True); +end; + +procedure TfrmYSSCList.N2Click(Sender: TObject); +begin + SelOKNo(CDS_Main, False); +end; + +procedure TfrmYSSCList.SPIDKeyPress(Sender: TObject; var Key: Char); +begin + if Key = #13 then + begin + {if Length(Trim(SPID.Text))<4 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' select A.* '); + sql.Add(',ConNo=(select ConNo from Contract_Main CM where CM.MainId=A.CGMainId)'); + //sql.Add(' ,ConNo=(select ConNo from Contract_Main CM where CM.MainId=A.CGMainId )'); + sql.Add(' from CK_SXPB_CR A'); + sql.add(' where SPID like :SXID'); + Parameters.ParamByName('SXID').Value:='%'+Trim(SXID.Text)+'%'; + Open; + //ShowMessage(SQL.Text); + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; } + end; +end; + +procedure TfrmYSSCList.SPIDChange(Sender: TObject); +begin + if Length(Trim(SPID.Text)) < 4 then + begin + if Trim(SPID.Text) <> '' then + Exit; + end; + TBFind.Click; +end; + +procedure TfrmYSSCList.SPSpecChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmYSSCList.FactoryNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmYSSCList.ToolButton1Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then + exit; + if not CDS_Main.Locate('ssel', true, []) then + begin + application.MessageBox('ûѡݣ', 'ʾϢ', 0); + exit; + end; + ADOQueryCmd.Connection.BeginTrans; + try + with CDS_Main do + begin + DisableControls; + first; + while not eof do + begin + if fieldbyname('ssel').AsBoolean then + begin + if not YSData() then + begin + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('Ӧտʧܣ', 'ʾϢ', 0); + end; + end; + next; + end; + first; + EnableControls; + end; + ADOQueryCmd.Connection.CommitTrans; + application.MessageBox('Ӧտɹ', 'ʾϢ'); + initGrid(); + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('Ӧտʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmYSSCList.cxTabControl1Change(Sender: TObject); +begin + INITGrid(); + SetStatus(); +end; + +procedure TfrmYSSCList.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + if Button = mbright then + +end; + +end. + diff --git a/应收应付/U_YSSKList.dfm b/应收应付/U_YSSKList.dfm new file mode 100644 index 0000000..4c2ee5e --- /dev/null +++ b/应收应付/U_YSSKList.dfm @@ -0,0 +1,415 @@ +object frmYSSKList: TfrmYSSKList + Left = 168 + Top = 125 + Width = 1038 + Height = 618 + Caption = #24212#25910#27454#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1022 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object ToolButton3: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #26597#30475#26126#32454 + ImageIndex = 57 + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 276 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1022 + Height = 38 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 302 + Top = 13 + Width = 48 + Height = 12 + Caption = #23545#26041#21333#20301 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label1: TLabel + Left = 470 + Top = 45 + Width = 48 + Height = 12 + Caption = #25903#20184#21488#22836 + end + object Label4: TLabel + Left = 458 + Top = 13 + Width = 24 + Height = 12 + Caption = #31561#32423 + end + object Label5: TLabel + Left = 640 + Top = 16 + Width = 48 + Height = 12 + Caption = #26412#26399#27424#27454 + end + object Label7: TLabel + Left = 748 + Top = 16 + Width = 6 + Height = 12 + Caption = '-' + end + object FactoryName: TEdit + Tag = 2 + Left = 350 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 1 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Time = 41256.918237847230000000 + TabOrder = 2 + end + object ComTaiTou: TEdit + Tag = 2 + Left = 518 + Top = 41 + Width = 89 + Height = 20 + TabOrder = 3 + OnChange = FactoryNameChange + end + object DEFStr6: TEdit + Tag = 2 + Left = 490 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 4 + OnChange = FactoryNameChange + end + object Edit1: TEdit + Left = 692 + Top = 12 + Width = 49 + Height = 20 + TabOrder = 5 + OnChange = FactoryNameChange + end + object Edit2: TEdit + Left = 764 + Top = 12 + Width = 49 + Height = 20 + TabOrder = 6 + OnChange = FactoryNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 69 + Width = 1022 + Height = 510 + Align = alClient + TabOrder = 2 + LookAndFeel.NativeStyle = False + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DS_HZ + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + Column = v2Column1 + end + item + Kind = skSum + Column = v2Column2 + end + item + Kind = skSum + Column = v2Column3 + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v2Column14 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object v2GSTT: TcxGridDBColumn + Caption = #25903#20184#21488#22836 + DataBinding.FieldName = 'ComTaiTou' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object v2Column6: TcxGridDBColumn + Caption = #23545#26041#21333#20301 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 142 + end + object v2Column12: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'DEFStr6' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v2Column4: TcxGridDBColumn + Caption = #19978#26399#27424#27454'('#21407#24065')' + DataBinding.FieldName = 'SQMoneyYB' + Width = 99 + end + object v2Column5: TcxGridDBColumn + Caption = #19978#26399#27424#27454 + DataBinding.FieldName = 'SQMoney' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Focusing = False + Width = 98 + end + object v2Column7: TcxGridDBColumn + Caption = #26412#26399#24212#25910#27454'('#21407#24065')' + DataBinding.FieldName = 'YFMoneyYB' + Width = 111 + end + object v2Column1: TcxGridDBColumn + Caption = #26412#26399#24212#25910#27454 + DataBinding.FieldName = 'YFMoney' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Width = 95 + end + object v2Column8: TcxGridDBColumn + Caption = #26412#26399#25910#27454'('#21407#24065')' + DataBinding.FieldName = 'FKMoneyYB' + Width = 96 + end + object v2Column2: TcxGridDBColumn + Caption = #26412#26399#25910#27454 + DataBinding.FieldName = 'FKMoney' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Width = 98 + end + object v2Column14: TcxGridDBColumn + Caption = #26412#26399#20943#20813 + DataBinding.FieldName = 'JMMoney' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v2Column13: TcxGridDBColumn + Caption = #26412#26399#20943#20813'('#21407#24065')' + DataBinding.FieldName = 'JMMoneyYB' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v2Column9: TcxGridDBColumn + Caption = #26412#26399#27424#27454'('#21407#24065')' + DataBinding.FieldName = 'BQMoneyYB' + Width = 97 + end + object v2Column3: TcxGridDBColumn + Caption = #26412#26399#27424#27454 + DataBinding.FieldName = 'BQMoney' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Width = 114 + end + object v2Column10: TcxGridDBColumn + Caption = #21457#36135#22320#22336 + DataBinding.FieldName = 'FHAddress' + HeaderAlignmentHorz = taCenter + Width = 100 + end + object v2Column11: TcxGridDBColumn + Caption = #32852#31995#26041#24335 + DataBinding.FieldName = 'LXFS' + HeaderAlignmentHorz = taCenter + Width = 100 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_YSSKList.pas b/应收应付/U_YSSKList.pas new file mode 100644 index 0000000..31c1e0b --- /dev/null +++ b/应收应付/U_YSSKList.pas @@ -0,0 +1,235 @@ +unit U_YSSKList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit,strutils, cxLookAndFeels, cxLookAndFeelPainters, + cxNavigator; + +type + TfrmYSSKList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + v2GSTT: TcxGridDBColumn; + Label1: TLabel; + ComTaiTou: TEdit; + ToolButton3: TToolButton; + v2Column10: TcxGridDBColumn; + v2Column11: TcxGridDBColumn; + v2Column12: TcxGridDBColumn; + DEFStr6: TEdit; + Label4: TLabel; + Label5: TLabel; + Edit1: TEdit; + Edit2: TEdit; + Label7: TLabel; + v2Column14: TcxGridDBColumn; + v2Column13: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + { Private declarations } + procedure InitGrid(); + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYSSKList: TfrmYSSKList; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp, U_YSMXlist; + +{$R *.dfm} + + + +procedure TfrmYSSKList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + if Trim(DParameters10)='' then + sql.Add(' exec P_YSSK_List :begdate,:Enddate,:Flag') + else + SQL.Add(' exec '+Trim(DParameters10)+' :begdate,:Enddate'); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime)); + Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)); + Parameters.ParamByName('Flag').Value:=Trim(DParameters1); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + ToolButton2.Click; + end; +end; + + +procedure TfrmYSSKList.FormDestroy(Sender: TObject); +begin + frmYSSKList:=nil; +end; + +procedure TfrmYSSKList.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYSSKList.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ӧտͳ',Tv2,''); + Close; +end; +procedure TfrmYSSKList.FormShow(Sender: TObject); +begin + ReadCxGrid('Ӧտͳ',Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-7; + + if Trim(DParameters9)='̨֧ͷ' then + begin + v2GSTT.Hidden:=False; + v2GSTT.Visible:=True; + Label1.Visible:=True; + ComTaiTou.Visible:=True; + end else + begin + v2GSTT.Hidden:=True; + v2GSTT.Visible:=False; + Label1.Visible:=False; + ComTaiTou.Visible:=False; + end; + + InitGrid(); +end; + +procedure TfrmYSSKList.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmYSSKList.ToolButton2Click(Sender: TObject); +var + fsj,fsj1:string; +begin + if ADOQueryMain.Active=False then Exit; + fsj:=SGetFilters(Panel1,1,2); + fsj1:=''; + IF trim(Edit1.Text)<>'' then + begin + fsj1:=fsj1+' and BQMoney>='''+floattostr(strtofloatdef(trim(Edit1.Text),0))+''' '; + end; + IF trim(Edit2.Text)<>'' then + begin + fsj1:=fsj1+' and BQMoney<='''+floattostr(strtofloatdef(trim(Edit2.Text),0))+''' '; + end; + + IF fsj1<>'' then + begin + IF trim(fsj)='' then + begin + fsj:=Trim(RightBStr(fsj1,Length(fsj1)-4)); + end + else + fsj:=fsj+fsj1; + end; + + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); +end; + +procedure TfrmYSSKList.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYSSKList.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'Ӧտͳб'); +end; + +procedure TfrmYSSKList.ToolButton3Click(Sender: TObject); +begin + IF CDS_HZ.IsEmpty then exit; + frmYSMXlist:=TfrmYSMXlist.create(self); + with frmYSMXlist do + begin + begdate.Date:=self.begdate.Date; + enddate.Date:=self.Enddate.Date; + factoryName.Tag:=1; + factoryName.Text:=self.CDS_HZ.fieldbyname('FactoryName').AsString; + if showmodal=1 then + begin + end; + free; + end; +end; + +procedure TfrmYSSKList.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + ToolButton3.Click; +end; + +end. diff --git a/应收应付/U_YSYGGJList.dfm b/应收应付/U_YSYGGJList.dfm new file mode 100644 index 0000000..b2b19cd --- /dev/null +++ b/应收应付/U_YSYGGJList.dfm @@ -0,0 +1,576 @@ +object frmCKJYList: TfrmCKJYList + Left = 403 + Top = 314 + Width = 1333 + Height = 598 + Caption = #21592#24037#24037#20215#20449#24687 + 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 Label17: TLabel + Left = 840 + Top = 144 + Width = 42 + Height = 12 + Caption = 'Label17' + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1317 + 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_YSYF.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBExport: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + end + object TBClose: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1317 + Height = 48 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 24 + Top = 12 + Width = 48 + Height = 12 + Caption = #26597#35810#26102#38388 + end + object Label2: TLabel + Left = 168 + Top = 12 + Width = 6 + Height = 12 + Caption = '-' + end + object Label8: TLabel + Left = 211 + Top = 100 + Width = 48 + Height = 12 + Caption = #20811' '#37325 + end + object Label9: TLabel + Left = 380 + Top = 108 + Width = 24 + Height = 12 + Caption = #38376#24133 + end + object Label7: TLabel + Left = 624 + Top = 84 + Width = 48 + Height = 12 + Caption = #31867' '#22411 + end + object Label10: TLabel + Left = 496 + Top = 40 + Width = 6 + Height = 12 + end + object Label11: TLabel + Left = 488 + Top = 80 + Width = 36 + Height = 12 + Caption = #19994#21153#21592 + end + object Label12: TLabel + Left = 488 + Top = 104 + Width = 36 + Height = 12 + Caption = #36319#21333#21592 + end + object Label5: TLabel + Left = 292 + Top = 12 + Width = 48 + Height = 12 + Caption = #21592#24037#21517#31216 + end + object Label13: TLabel + Left = 448 + Top = 12 + Width = 48 + Height = 12 + Caption = #29983#20135#27454#24335 + end + object Label16: TLabel + Left = 364 + Top = 76 + Width = 24 + Height = 12 + Caption = #32593#21495 + Visible = False + end + object Label3: TLabel + Left = 756 + Top = 84 + Width = 24 + Height = 12 + Caption = #33457#21517 + end + object Label4: TLabel + Left = 592 + Top = 12 + Width = 48 + Height = 12 + Caption = #20135#21697#32534#21495 + end + object BegDate: TDateTimePicker + Left = 73 + Top = 9 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 181 + Top = 9 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 1 + end + object MPRTKZ: TEdit + Tag = 2 + Left = 260 + Top = 96 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = MPRTCodeNameChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 404 + Top = 104 + Width = 65 + Height = 20 + TabOrder = 3 + OnChange = MPRTCodeNameChange + end + object CPType: TComboBox + Tag = 2 + Left = 675 + Top = 80 + Width = 68 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 4 + OnChange = TBFindClick + Items.Strings = ( + #27491#21697 + #27425#21697 + #22810#25340 + '') + end + object YWY: TEdit + Tag = 2 + Left = 526 + Top = 76 + Width = 65 + Height = 20 + TabOrder = 5 + OnChange = MPRTCodeNameChange + end + object OrdPerson1: TEdit + Tag = 2 + Left = 526 + Top = 100 + Width = 65 + Height = 20 + TabOrder = 6 + OnChange = MPRTCodeNameChange + end + object filler: TEdit + Tag = 2 + Left = 342 + Top = 8 + Width = 80 + Height = 20 + TabOrder = 7 + OnChange = MPRTCodeNameChange + end + object GXNmae: TEdit + Tag = 2 + Left = 498 + Top = 8 + Width = 80 + Height = 20 + TabOrder = 8 + OnChange = MPRTCodeNameChange + end + object wangno: TEdit + Tag = 2 + Left = 398 + Top = 72 + Width = 80 + Height = 20 + TabOrder = 9 + Visible = False + OnChange = MPRTCodeNameChange + end + object huaname: TEdit + Tag = 2 + Left = 790 + Top = 80 + Width = 80 + Height = 20 + TabOrder = 10 + OnChange = MPRTCodeNameChange + end + object Prtcode: TEdit + Tag = 2 + Left = 642 + Top = 8 + Width = 80 + Height = 20 + TabOrder = 11 + OnChange = MPRTCodeNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 81 + Width = 1317 + Height = 478 + Align = alClient + TabOrder = 3 + object Tv1: TcxGridDBTableView + OnMouseUp = Tv1MouseUp + Navigator.Buttons.CustomButtons = <> + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + 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 + Column = Tv1Column1 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.Header = DataLink_YSYF.Default + object v1Column3: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'filltime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 142 + end + object v1Column2: TcxGridDBColumn + Caption = #21592#24037#21517#31216 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column5: TcxGridDBColumn + Caption = #24037#24207#21517#31216 + DataBinding.FieldName = 'GxName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column1: TcxGridDBColumn + Caption = #23610#30721 + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 110 + end + object v1Column13: TcxGridDBColumn + Caption = #25968#37327'/'#20214 + DataBinding.FieldName = 'QTY' + HeaderAlignmentHorz = taCenter + Width = 100 + end + object v1Column4: TcxGridDBColumn + Caption = #21333#20215'/'#20803 + DataBinding.FieldName = 'GXPrice' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column6: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'note' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column10: TcxGridDBColumn + Caption = #27599#21367#24179#22343#38271#24230'(M)' + DataBinding.FieldName = 'Roll_M' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 120 + end + object Tv1Column1: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'gxMoney' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object Tv1Column2: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'Prtcode' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object Tv1Column3: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'Prtcodename' + HeaderAlignmentHorz = taCenter + Width = 66 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel4: TPanel + Left = 62 + Top = 139 + Width = 294 + Height = 213 + TabOrder = 4 + Visible = False + object Label14: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 292 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #20107#20214#35828#26126 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + object Image2: TImage + Left = 269 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object RichEdit1: TRichEdit + Left = 1 + Top = 24 + Width = 292 + Height = 188 + Align = alClient + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + end + end + object MovePanel2: TMovePanel + Left = 408 + Top = 192 + Width = 289 + Height = 49 + BevelInner = bvLowered + Caption = #27491#22312#26597#35810#25968#25454#65292#35831#31245#21518#12290#12290#12290 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 968 + Top = 40 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + CommandTimeout = 60 + Parameters = <> + Left = 984 + Top = 40 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 980 + Top = 4 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 920 + Top = 152 + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 888 + Top = 144 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 896 + Top = 128 + end +end diff --git a/应收应付/U_YSYGGJList.pas b/应收应付/U_YSYGGJList.pas new file mode 100644 index 0000000..64cf87a --- /dev/null +++ b/应收应付/U_YSYGGJList.pas @@ -0,0 +1,277 @@ +unit U_YSYGGJList; + +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, MovePanel, cxButtonEdit, cxCalendar, cxPC, cxLookAndFeels, + cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu; + +type + TfrmCKJYList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + cxGridPopupMenu1: TcxGridPopupMenu; + Label1: TLabel; + Label2: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + CDS_Main: TClientDataSet; + Label8: TLabel; + MPRTKZ: TEdit; + Label9: TLabel; + MPRTMF: TEdit; + Label7: TLabel; + CPType: TComboBox; + MovePanel2: TMovePanel; + Label10: TLabel; + Label11: TLabel; + Label12: TLabel; + YWY: TEdit; + OrdPerson1: TEdit; + cxGrid2: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column3: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + cxGrid2Level1: TcxGridLevel; + filler: TEdit; + Label5: TLabel; + Label13: TLabel; + GXNmae: TEdit; + v1Column2: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + Panel4: TPanel; + Label14: TLabel; + Panel10: TPanel; + Image2: TImage; + RichEdit1: TRichEdit; + v1Column10: TcxGridDBColumn; + v1Column13: TcxGridDBColumn; + Label16: TLabel; + wangno: TEdit; + v1Column4: TcxGridDBColumn; + huaname: TEdit; + Label3: TLabel; + Label17: TLabel; + Tv1Column1: TcxGridDBColumn; + Tv1Column2: TcxGridDBColumn; + Tv1Column3: TcxGridDBColumn; + Label4: TLabel; + Prtcode: TEdit; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure MPRTCodeNameChange(Sender: TObject); + procedure v1Column5PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure PRTColorChange(Sender: TObject); + procedure Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure Image2Click(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + private + FLeft, FTop: Integer; + procedure InitGrid(); + { Private declarations } + public + { Public declarations } + end; + +var + frmCKJYList: TfrmCKJYList; + +implementation + +uses + U_DataLink, U_Fun, U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmCKJYList.FormDestroy(Sender: TObject); +begin + frmCKJYList := nil; +end; + +procedure TfrmCKJYList.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmCKJYList.FormCreate(Sender: TObject); +begin + //cxGrid1.Align:=alClient; + BegDate.DateTime := SGetServerDateTime(ADOQueryTemp)-30; + EndDate.DateTime := SGetServerDateTime(ADOQueryTemp) +end; + +procedure TfrmCKJYList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + Filtered := False; + sql.Add('select A.*,B.PRTCodeName,B.prtcode,'); + sql.Add('gxdj=case when A.qty<=30 then isnull((select (A.GxPrice)*2 from JyOrder_Yield B where A.CLID=B.clid ),0)'); + SQL.Add('else isnull((A.GxPrice ),0) end, '); + sql.Add('gxmoney=case when A.qty<=30 then isnull((select ((A.GxPrice)*2)*B.qty from JyOrder_Yield B where A.CLID=B.clid ),0)'); + SQL.Add(' else isnull(((A.GxPrice)*qty ),0) end '); + sql.Add('from JyOrder_Yield A '); + sql.Add('left join JYOrder_Sub B on A.mainid=B.mainid and A.subid=B.subid'); + sql.Add('where A.filltime>=''' + FormatDateTime('yyyy-MM-dd', begdate.DateTime) + ''' '); + sql.Add(' and A.filltime<''' + FormatDateTime('yyyy-MM-dd', Enddate.DateTime + 1) + ''' '); +// Sql.add('group by convert(char(10),A.FillTime,120),A.Filler,A.mainID,A.MjTypeOther,C.OrderNo,D.PRTCodeName,C.conNo,C.CustomerNoName,D.PrtColor'); + Open; + end; + SCreateCDS20(ADOQueryMain, CDS_Main); + SInitCDSData20(ADOQueryMain, CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmCKJYList.TBRafreshClick(Sender: TObject); +begin + //BegDate.SetFocus; + MovePanel2.Visible := True; + MovePanel2.Refresh; + InitGrid(); + MovePanel2.Visible := False; +end; + +procedure TfrmCKJYList.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); + end; +end; + +procedure TfrmCKJYList.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption + tv1.Name, Tv1, 'Ʒֿ1'); + Close; +end; + +procedure TfrmCKJYList.FormShow(Sender: TObject); +begin + + ReadCxGrid(self.Caption + tv1.Name, Tv1, 'Ʒֿ1'); + if Trim(DParameters2) = '' then + begin + //v1Column5.Options.Focusing:=True; + end + else + begin + //v1Column5.Options.Focusing:=False; + end; + //InitGrid(); +end; + +procedure TfrmCKJYList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then + exit; + TcxGridToExcel('б', cxGrid2); +end; + +procedure TfrmCKJYList.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 TfrmCKJYList.MPRTCodeNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCKJYList.v1Column5PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'SOrdDefStr10'; + flagname := 'ŵص'; + if ShowModal = 1 then + begin + with CDS_Main do + begin + Edit; + FieldByName('SOrdDefStr10').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrder_Sub Set SOrdDefStr10=''' + Trim(ClientDataSet1.fieldbyname('ZdyName').AsString) + ''''); + sql.Add(' where SubId=''' + Trim(Self.CDS_Main.fieldbyname('SubId').AsString) + ''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmCKJYList.PRTColorChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCKJYList.Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FLeft := X; + FTop := Y; +end; + +procedure TfrmCKJYList.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + Panel4.Left := FLeft; + Panel4.Top := FTop + 110; + Panel4.Visible := True; + Panel10.Caption := Trim(TV1.Controller.FocusedColumn.Caption); + RichEdit1.Text := CDS_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString; + application.ProcessMessages; +end; + +procedure TfrmCKJYList.Image2Click(Sender: TObject); +begin + Panel4.Visible := False; +end; + +procedure TfrmCKJYList.cxTabControl1Change(Sender: TObject); +begin + TBRafresh.Click; +end; + +end. + diff --git a/应收应付/U_YSZDList_MX.dfm b/应收应付/U_YSZDList_MX.dfm new file mode 100644 index 0000000..29c8d07 --- /dev/null +++ b/应收应付/U_YSZDList_MX.dfm @@ -0,0 +1,304 @@ +object frmYSZDList_MX: TfrmYSZDList_MX + Left = 155 + Top = 175 + Width = 1038 + Height = 618 + Caption = #24212#20184#27454#23545#36134#20449#24687 + 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 = 1022 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1022 + Height = 42 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 426 + Top = 13 + Width = 24 + Height = 12 + Caption = #23458#25143 + end + object Label2: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #26597#35810#26085#26399 + end + object Label6: TLabel + Left = 164 + Top = 13 + Width = 30 + Height = 12 + Caption = '-----' + end + object Label1: TLabel + Left = 470 + Top = 49 + Width = 48 + Height = 12 + Caption = #25903#20184#21488#22836 + end + object FactoryName: TEdit + Left = 458 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = FactoryNameChange + end + object begdate: TDateTimePicker + Left = 72 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Format = 'yyyy-MM-dd' + Time = 41256.918237847230000000 + TabOrder = 1 + end + object Enddate: TDateTimePicker + Left = 182 + Top = 9 + Width = 97 + Height = 20 + Date = 41256.918237847230000000 + Format = 'yyyy-MM-dd' + Time = 41256.918237847230000000 + TabOrder = 2 + end + object ComTaiTou: TEdit + Tag = 2 + Left = 522 + Top = 49 + Width = 89 + Height = 20 + TabOrder = 3 + OnChange = FactoryNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 73 + Width = 1022 + Height = 404 + Align = alTop + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column4 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.Header = DataLink_YSYF.FonePurple + object v2Column1: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'factoryName' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column2: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column5: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'PrtCodeName' + HeaderAlignmentHorz = taCenter + Width = 100 + end + object v2PrtColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PrtColor' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column6: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column7: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column8: TcxGridDBColumn + Caption = #24212#25910#27454#37329#39069 + DataBinding.FieldName = 'ysk' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column9: TcxGridDBColumn + Caption = #25910#27454#37329#39069 + DataBinding.FieldName = 'sk' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column4: TcxGridDBColumn + Caption = #32047#35745#27424#27454 + DataBinding.FieldName = 'yskye' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_YSYF.FontBlue + Styles.Footer = DataLink_YSYF.FontBlue + Styles.Header = DataLink_YSYF.FontBlue + Width = 80 + end + object v2Column10: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'note' + HeaderAlignmentHorz = taCenter + Width = 200 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 309 + Top = 193 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 448 + Top = 208 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 376 + Top = 208 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 520 + Top = 264 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 443 + Top = 243 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 472 + Top = 192 + end +end diff --git a/应收应付/U_YSZDList_MX.pas b/应收应付/U_YSZDList_MX.pas new file mode 100644 index 0000000..2cdb861 --- /dev/null +++ b/应收应付/U_YSZDList_MX.pas @@ -0,0 +1,210 @@ +unit U_YSZDList_MX; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmYSZDList_MX = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + FactoryName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + Label2: TLabel; + Label6: TLabel; + begdate: TDateTimePicker; + Enddate: TDateTimePicker; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + Label1: TLabel; + ComTaiTou: TEdit; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + v2Column10: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2PrtColor: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure FormCreate(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + public + { Public declarations } + RKFlag,FCYID:String; + + end; + +var + frmYSZDList_MX: TfrmYSZDList_MX; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + + + +procedure TfrmYSZDList_MX.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add('exec P_Get_zk_MX '); + sql.Add('@begdate='''+Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime))+''' '); + sql.Add(',@enddate='''+Trim(FormatDateTime('yyyy-MM-dd',enddate.DateTime+1))+''' '); + sql.Add(',@FactoryName='+quotedstr(trim(FactoryName.Text))); + sql.Add(',@sfFlag='+quotedstr(trim('1'))); + sql.Add(',@isgd='+quotedstr(trim('0'))); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmYSZDList_MX.FormDestroy(Sender: TObject); +begin + frmYSZDList_MX:=nil; +end; + +procedure TfrmYSZDList_MX.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmYSZDList_MX.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption,Tv2,''); + Close; +end; +procedure TfrmYSZDList_MX.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption,Tv2,''); + Enddate.DateTime:=SGetServerDate(ADOQueryTemp); + begdate.DateTime:=Enddate.DateTime-7; +{ if Trim(DParameters5)='Ʊ' then + begin + v2BQKP.Hidden:=False; + v2BQKP.Visible:=True; + v2WKP.Hidden:=False; + v2WKP.Visible:=True; + end else + begin + v2BQKP.Hidden:=True; + v2BQKP.Visible:=False; + v2WKP.Hidden:=True; + v2WKP.Visible:=False; + end; + if Trim(DParameters9)='̨֧ͷ' then + begin + v2GSTT.Hidden:=False; + v2GSTT.Visible:=True; + Label1.Visible:=True; + ComTaiTou.Visible:=True; + end else + begin + v2GSTT.Hidden:=True; + v2GSTT.Visible:=False; + Label1.Visible:=False; + ComTaiTou.Visible:=False; + end; + } + + InitGrid(); +end; + +procedure TfrmYSZDList_MX.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmYSZDList_MX.ToolButton2Click(Sender: TObject); +var + fsj:string; +begin + if ADOQueryMain.Active=False then Exit; + if Trim(SGetFilters(Panel1,1,2))='' then + begin + if Trim(FactoryName.Text)<>'' then + begin + fsj:=' FactoryName like '''+'%'+Trim(FactoryName.Text)+'%'+'''' + +' or KHZJM like '''+'%'+Trim(FactoryName.Text)+'%'+''''; + end; + + end else + begin + if Trim(FactoryName.Text)<>'' then + begin + fsj:=SGetFilters(Panel1,1,2)+' and (FactoryName like '''+'%'+Trim(FactoryName.Text)+'%'+'''' + +' or KHZJM like '''+'%'+Trim(FactoryName.Text)+'%'+''')'; + end; + end; + fsj:=''; + if Trim(FactoryName.Text)<>'' then + fsj:=' FactoryName like '''+'%'+Trim(FactoryName.Text)+'%'+''''; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); +end; + +procedure TfrmYSZDList_MX.FactoryNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmYSZDList_MX.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid2); +// SelExportData(Tv2,ADOQueryMain,'Ӧͳб'); +end; + +procedure TfrmYSZDList_MX.FormCreate(Sender: TObject); +begin + cxGrid2.Align:=AlClient; +end; + +end. diff --git a/应收应付/U_ZdyAttachCP.dfm b/应收应付/U_ZdyAttachCP.dfm new file mode 100644 index 0000000..a48d66c --- /dev/null +++ b/应收应付/U_ZdyAttachCP.dfm @@ -0,0 +1,350 @@ +object frmZdyAttachCP: TfrmZdyAttachCP + Left = 108 + Top = 101 + Width = 1038 + Height = 618 + Caption = #20135#21697#36164#26009#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1022 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 374 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1022 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 191 + Top = 13 + Width = 48 + Height = 12 + Caption = #20135#21697#21517#31216 + end + object Label1: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #20135#21697#32534#21495 + end + object Label2: TLabel + Left = 369 + Top = 13 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object ZdyName: TEdit + Tag = 2 + Left = 241 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 71 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object DEFstr5: TComboBox + Tag = 1 + Left = 398 + Top = 8 + Width = 81 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 2 + OnChange = ZdyNameChange + Items.Strings = ( + #22383#24067 + #25104#21697 + '') + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1022 + Height = 510 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.Header = DataLink_YSYF.handBlack + object v2Column2: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column6: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 124 + end + object v2Column11: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Width = 53 + end + object v2Column3: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column4: TcxGridDBColumn + Caption = #25104#20221 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v2Column5: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2DEFNote1: TcxGridDBColumn + Caption = #21517#31216 + DataBinding.FieldName = 'DEFNote1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 116 + end + object v2Column8: TcxGridDBColumn + Caption = #33457#21495 + DataBinding.FieldName = 'DEFstr4' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v2Column10: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'DEFstr6' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 61 + end + object v2Column9: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'DEFstr7' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v2Column7: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'DEFstr8' + HeaderAlignmentHorz = taCenter + Width = 61 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 114 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end +end diff --git a/应收应付/U_ZdyAttachCP.pas b/应收应付/U_ZdyAttachCP.pas new file mode 100644 index 0000000..523cd0e --- /dev/null +++ b/应收应付/U_ZdyAttachCP.pas @@ -0,0 +1,201 @@ +unit U_ZdyAttachCP; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; +type + TfrmZdyAttachCP = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + ToolButton4: TToolButton; + Label2: TLabel; + DEFstr5: TComboBox; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column10: TcxGridDBColumn; + v2Column11: TcxGridDBColumn; + v2DEFNote1: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + { Private declarations } + procedure InitGrid(); + + public + + end; + +var + frmZdyAttachCP: TfrmZdyAttachCP; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + + + +procedure TfrmZdyAttachCP.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where Type=''CP'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmZdyAttachCP.FormDestroy(Sender: TObject); +begin + frmZdyAttachCP:=nil; +end; + +procedure TfrmZdyAttachCP.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttachCP.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ʒ',Tv2,'ͻԶ'); + Close; +end; +procedure TfrmZdyAttachCP.TBDelClick(Sender: TObject); +begin +{ if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + sql.Add('delete KH_Zdy where ZdyNo='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; } +end; + +procedure TfrmZdyAttachCP.FormShow(Sender: TObject); +begin + ReadCxGrid('Ʒ',Tv2,'ͻԶ'); + InitGrid(); +end; + +procedure TfrmZdyAttachCP.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachCP.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmZdyAttachCP.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachCP.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'ͻб'); +end; + +procedure TfrmZdyAttachCP.ToolButton4Click(Sender: TObject); +begin +{ try + frmZdyAttInputCP:=TfrmZdyAttInputCP.Create(Application); + with frmZdyAttInputCP do + begin + FCYID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmZdyAttInputCP.Free; + end; } +end; + +procedure TfrmZdyAttachCP.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if CDS_HZ.IsEmpty then exit; + ModalResult:=1; +end; + +end. + + diff --git a/应收应付/U_ZdyAttachGYS.dfm b/应收应付/U_ZdyAttachGYS.dfm new file mode 100644 index 0000000..29d055c --- /dev/null +++ b/应收应付/U_ZdyAttachGYS.dfm @@ -0,0 +1,330 @@ +object frmZdyAttachGYS: TfrmZdyAttachGYS + Left = 192 + Top = 103 + Width = 1038 + Height = 618 + Caption = #20379#24212#21830#36164#26009#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1022 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 374 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1022 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 203 + Top = 13 + Width = 60 + Height = 12 + Caption = #20379#24212#21830#21517#31216 + end + object Label1: TLabel + Left = 22 + Top = 13 + Width = 60 + Height = 12 + Caption = #20379#24212#21830#32534#21495 + end + object Label2: TLabel + Left = 395 + Top = 13 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object ZdyName: TEdit + Tag = 2 + Left = 267 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 83 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object DEFstr5: TComboBox + Tag = 1 + Left = 424 + Top = 8 + Width = 81 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 2 + OnChange = ZdyNameChange + Items.Strings = ( + #22383#24067 + #21152#24037#21378) + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1022 + Height = 510 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + OnDblClick = Tv2DblClick + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.Header = DataLink_YSYF.handBlack + object v2Column6: TcxGridDBColumn + Caption = #20379#24212#21830#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 124 + end + object v2Column2: TcxGridDBColumn + Caption = #20379#24212#21830#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column8: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Width = 77 + end + object v2Column3: TcxGridDBColumn + Caption = #30005#35805 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column4: TcxGridDBColumn + Caption = #25163#26426 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v2Column5: TcxGridDBColumn + Caption = #20256#30495 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2Column7: TcxGridDBColumn + Caption = #20844#21496#22320#22336 + DataBinding.FieldName = 'DEFNote1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v2Column9: TcxGridDBColumn + Caption = #32852#31995#20154 + DataBinding.FieldName = 'DEFstr4' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 114 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end +end diff --git a/应收应付/U_ZdyAttachGYS.pas b/应收应付/U_ZdyAttachGYS.pas new file mode 100644 index 0000000..ffa5f9a --- /dev/null +++ b/应收应付/U_ZdyAttachGYS.pas @@ -0,0 +1,212 @@ +unit U_ZdyAttachGYS; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; +type + TfrmZdyAttachGYS = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + ToolButton4: TToolButton; + v2Column8: TcxGridDBColumn; + Label2: TLabel; + DEFstr5: TComboBox; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure Tv2DblClick(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + + public + + end; + +var + frmZdyAttachGYS: TfrmZdyAttachGYS; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + + + +procedure TfrmZdyAttachGYS.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where Type=''GYS'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmZdyAttachGYS.FormDestroy(Sender: TObject); +begin + frmZdyAttachGYS:=nil; +end; + +procedure TfrmZdyAttachGYS.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttachGYS.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ӧ',Tv2); + Close; +end; +procedure TfrmZdyAttachGYS.TBDelClick(Sender: TObject); +begin +{ if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + sql.Add('delete KH_Zdy where ZdyNo='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete;} +end; + +procedure TfrmZdyAttachGYS.FormShow(Sender: TObject); +begin + ReadCxGrid('Ӧ',Tv2); + InitGrid(); +end; + +procedure TfrmZdyAttachGYS.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachGYS.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmZdyAttachGYS.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachGYS.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'ͻб'); +end; + +procedure TfrmZdyAttachGYS.ToolButton4Click(Sender: TObject); +begin +{ try + frmZdyAttInputGYS:=TfrmZdyAttInputGYS.Create(Application); + with frmZdyAttInputGYS do + begin + FCYID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmZdyAttInputGYS.Free; + end; } +end; + +procedure TfrmZdyAttachGYS.ToolButton3Click(Sender: TObject); +begin +{ try + frmZdyAttInputGYS:=TfrmZdyAttInputGYS.Create(Application); + with frmZdyAttInputGYS do + begin + FCYID:=''; + if ShowModal=1 then + begin + + end; + end; + finally + frmZdyAttInputGYS.Free; + end; } +end; + +procedure TfrmZdyAttachGYS.Tv2DblClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then exit; + ModalResult:=1; +end; + +end. + + diff --git a/应收应付/U_ZdyAttachment.dfm b/应收应付/U_ZdyAttachment.dfm new file mode 100644 index 0000000..83216b0 --- /dev/null +++ b/应收应付/U_ZdyAttachment.dfm @@ -0,0 +1,357 @@ +object frmZdyAttachment: TfrmZdyAttachment + Left = 138 + Top = 111 + Width = 1038 + Height = 618 + Caption = #23458#25143#20449#24687#21015#34920 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poOwnerFormCenter + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1022 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 374 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1022 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 190 + Top = 13 + Width = 48 + Height = 12 + Caption = #23458#25143#21517#31216 + end + object Label1: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #23458#25143#32534#21495 + end + object Label2: TLabel + Left = 350 + Top = 13 + Width = 36 + Height = 12 + Caption = #19994#21153#21592 + end + object Label4: TLabel + Left = 518 + Top = 13 + Width = 48 + Height = 12 + Caption = #32479#35745#21333#20301 + end + object ZdyName: TEdit + Tag = 2 + Left = 238 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 70 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object DEFstr5: TEdit + Tag = 2 + Left = 388 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 2 + OnChange = ZdyNameChange + end + object ZDYNameTJ: TEdit + Tag = 2 + Left = 566 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 3 + OnChange = ZdyNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1022 + Height = 510 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DS_HZ + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoGroupsAlwaysExpanded, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_YSYF.SHuangSe + Styles.IncSearch = DataLink_YSYF.SHuangSe + Styles.Selection = DataLink_YSYF.SHuangSe + Styles.Header = DataLink_YSYF.handBlack + object v2Column2: TcxGridDBColumn + Caption = #23458#25143#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 94 + end + object v2Column6: TcxGridDBColumn + Caption = #23458#25143#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 127 + end + object v2Column11: TcxGridDBColumn + Caption = #32479#35745#21333#20301 + DataBinding.FieldName = 'ZDYNameTJ' + Visible = False + GroupIndex = 0 + HeaderAlignmentHorz = taCenter + Width = 100 + end + object v2Column10: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Width = 56 + end + object v2Column3: TcxGridDBColumn + Caption = #30005#35805 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 71 + end + object v2Column4: TcxGridDBColumn + Caption = #25163#26426 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v2Column5: TcxGridDBColumn + Caption = #20256#30495 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2Column7: TcxGridDBColumn + Caption = #20844#21496#22320#22336 + DataBinding.FieldName = 'DEFNote1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 67 + end + object v2Column8: TcxGridDBColumn + Caption = #21457#36135#22320#22336 + DataBinding.FieldName = 'DEFNote2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column9: TcxGridDBColumn + Caption = #32852#31995#20154 + DataBinding.FieldName = 'DEFstr4' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 165 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_YSYF.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end +end diff --git a/应收应付/U_ZdyAttachment.pas b/应收应付/U_ZdyAttachment.pas new file mode 100644 index 0000000..27b192f --- /dev/null +++ b/应收应付/U_ZdyAttachment.pas @@ -0,0 +1,203 @@ +unit U_ZdyAttachment; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; +type + TfrmZdyAttachment = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + v2Column10: TcxGridDBColumn; + ToolButton4: TToolButton; + Label2: TLabel; + DEFstr5: TEdit; + v2Column11: TcxGridDBColumn; + ZDYNameTJ: TEdit; + Label4: TLabel; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + { Private declarations } + procedure InitGrid(); + + public + + end; + +var + frmZdyAttachment: TfrmZdyAttachment; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + + + +procedure TfrmZdyAttachment.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where Type=''KHName'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmZdyAttachment.FormDestroy(Sender: TObject); +begin + frmZdyAttachment:=nil; +end; + +procedure TfrmZdyAttachment.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttachment.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ͻϢб1',Tv2,'ͻԶ'); + Close; +end; +procedure TfrmZdyAttachment.TBDelClick(Sender: TObject); +begin +{ if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + sql.Add('delete KH_Zdy where ZdyNo='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; } +end; + +procedure TfrmZdyAttachment.FormShow(Sender: TObject); +begin + ReadCxGrid('ͻϢб1',Tv2,'ͻԶ'); + InitGrid(); +end; + +procedure TfrmZdyAttachment.TBRafreshClick(Sender: TObject); + +begin + InitGrid(); +end; + +procedure TfrmZdyAttachment.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmZdyAttachment.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachment.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'ͻб'); +end; + +procedure TfrmZdyAttachment.ToolButton4Click(Sender: TObject); +begin +{ try + frmZdyAttInput:=TfrmZdyAttInput.Create(Application); + with frmZdyAttInput do + begin + FCYID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmZdyAttInput.Free; + end; } +end; + +procedure TfrmZdyAttachment.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if CDS_HZ.IsEmpty then exit; + ModalResult:=1; +end; + +end. + + diff --git a/应收应付/U_skHx.dfm b/应收应付/U_skHx.dfm new file mode 100644 index 0000000..9bf3c67 --- /dev/null +++ b/应收应付/U_skHx.dfm @@ -0,0 +1,310 @@ +object frmskHx: TfrmskHx + Left = 225 + Top = 220 + Width = 842 + Height = 448 + Caption = #25910#27454#26680#38144 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 826 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_YSYF.ThreeImgList + Flat = True + Images = DataLink_YSYF.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 9 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object GroupBox1: TGroupBox + Left = 0 + Top = 31 + Width = 826 + Height = 86 + Align = alTop + Color = clSkyBlue + ParentColor = False + TabOrder = 1 + object Label1: TLabel + Left = 32 + Top = 20 + Width = 48 + Height = 12 + Caption = #23458' '#25143 + end + object Label2: TLabel + Left = 252 + Top = 20 + Width = 48 + Height = 12 + Caption = #25910#27454#37329#39069 + end + object Label3: TLabel + Left = 32 + Top = 52 + Width = 130 + Height = 12 + Caption = #24403#21069#21487#26680#38144#25910#27454#24635#37329#39069 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 432 + Top = 20 + Width = 60 + Height = 12 + Caption = #24050#26680#38144#37329#39069 + end + object Label5: TLabel + Left = 616 + Top = 16 + Width = 60 + Height = 12 + Caption = #26410#26680#38144#37329#39069 + end + object factoryName: TEdit + Left = 84 + Top = 16 + Width = 100 + Height = 20 + TabOrder = 0 + Text = 'factoryName' + end + object Money: TEdit + Left = 304 + Top = 16 + Width = 100 + Height = 20 + TabOrder = 1 + Text = 'Money' + end + object curHsNum: TEdit + Left = 172 + Top = 48 + Width = 100 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + end + object hxNum: TEdit + Left = 496 + Top = 16 + Width = 100 + Height = 20 + TabOrder = 3 + Text = 'Edit2' + end + object NhxNum: TEdit + Left = 680 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 4 + Text = 'Edit2' + end + object CheckBox1: TCheckBox + Left = 304 + Top = 53 + Width = 57 + Height = 25 + Caption = #20840#36873 + TabOrder = 5 + OnClick = CheckBox1Click + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 117 + Width = 826 + Height = 228 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DS_ysk + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Column4 + end + item + Kind = skSum + Column = v1Column5 + end + item + Kind = skSum + Column = v1Column6 + end + item + Kind = skSum + Column = v1Column7 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Inserting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_YSYF.cxStyle_fontBlack + object v1Column1: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'Ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 47 + end + object v1Column9: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'CRTime' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1inoutNo: TcxGridDBColumn + Caption = #20986#24211#21333#21495 + DataBinding.FieldName = 'inoutNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column2: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'factoryName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 112 + end + object v1Column3: TcxGridDBColumn + Caption = #39033#30446#21450#25688#35201 + DataBinding.FieldName = 'YFName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 74 + end + object v1Column4: TcxGridDBColumn + Caption = #24212#25910#37329#39069 + DataBinding.FieldName = 'money' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 75 + end + object v1Column5: TcxGridDBColumn + Caption = #24050#26680#38144#37329#39069 + DataBinding.FieldName = 'hxNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 78 + end + object v1Column6: TcxGridDBColumn + Caption = #26410#26680#38144#37329#39069 + DataBinding.FieldName = 'NhxNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_YSYF.cxStyle_fontclBlue + Styles.Footer = DataLink_YSYF.cxStyle_fontclBlue + Styles.Header = DataLink_YSYF.cxStyle_fontclBlue + Width = 70 + end + object v1Column7: TcxGridDBColumn + Caption = #26412#27425#26680#38144 + DataBinding.FieldName = 'curHxNum' + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '0.##;-,0.##' + Properties.OnEditValueChanged = v1Column7PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_YSYF.cxStyle_fontclFuchsia + Styles.Footer = DataLink_YSYF.cxStyle_fontclFuchsia + Styles.Header = DataLink_YSYF.cxStyle_fontclFuchsia + Width = 87 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOQueryCmd: TADOQuery + AutoCalcFields = False + Connection = DataLink_YSYF.ADOLink + CommandTimeout = 999 + Parameters = <> + Left = 751 + Top = 41 + end + object ADOQueryTmp: TADOQuery + AutoCalcFields = False + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + CommandTimeout = 100 + Parameters = <> + Left = 464 + Top = 56 + end + object DS_ysk: TDataSource + DataSet = cdsYsk + Left = 372 + Top = 144 + end + object cdsYsk: TClientDataSet + Aggregates = <> + Params = <> + Left = 304 + Top = 273 + end + object ADOQueryYsk: TADOQuery + AutoCalcFields = False + Connection = DataLink_YSYF.ADOLink + LockType = ltReadOnly + CommandTimeout = 600 + Parameters = <> + Left = 304 + Top = 168 + end +end diff --git a/应收应付/U_skHx.pas b/应收应付/U_skHx.pas new file mode 100644 index 0000000..8374fba --- /dev/null +++ b/应收应付/U_skHx.pas @@ -0,0 +1,298 @@ +unit U_skHx; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxClasses, cxControls, + cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, StdCtrls, ComCtrls, ToolWin, DBClient, ADODB, + cxCurrencyEdit, cxCheckBox; + +type + TfrmskHx = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + GroupBox1: TGroupBox; + Label1: TLabel; + factoryName: TEdit; + Label2: TLabel; + Money: TEdit; + Label3: TLabel; + curHsNum: TEdit; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + hxNum: TEdit; + Label4: TLabel; + NhxNum: TEdit; + Label5: TLabel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DS_ysk: TDataSource; + cdsYsk: TClientDataSet; + ADOQueryYsk: TADOQuery; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + CheckBox1: TCheckBox; + v1inoutNo: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormCreate(Sender: TObject); + + procedure FormShow(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure v1Column7PropertiesEditValueChanged(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + + private + procedure InitYsk(); + procedure Initsk(); + procedure SellRec(mFlag:integer); + function savedata(mtype:integer):Boolean; + { Private declarations } + public + fKeyNo:string; + ffactoryName:string; + { Public declarations } + end; + +var + frmskHx: TfrmskHx; + +implementation + uses + U_DataLink,U_Fun10,U_ZDYHelp; +{$R *.dfm} +function TfrmskHx.savedata(mtype:integer):Boolean; +var + PZNo: String; +begin + result:=false; + + if GetLSNo(ADOQueryCmd,PZNo,'HX','YF_log',4,1)=False then + begin + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with AdoqueryCmd do + begin + Close; + SQL.Clear; + SQL.Add('EXEC P_Do_Yshx'); + SQL.Add(' @hxFlag = ' + IntToStr(mType)); + SQL.Add(',@ysAutoID = ' + QuotedStr(Trim(cdsYsk.FieldByName('YFID').AsString))); + SQL.Add(',@skAutoID = ' + QuotedStr(Trim(fkeyNO))); + SQL.Add(',@hxMoney = ' + FloatToStr(cdsYsk.FieldByName('curHxNum').AsFloat)); + SQL.Add(',@UserID = ' + QuotedStr(Trim(DName))); + SQL.Add(',@PZNo = ' + QuotedStr(Trim(PZNo))); + Open; + if FieldByName('Result').AsInteger <> 0 then + begin + Application.MessageBox(PChar(FieldByName('ShowMsg').AsString), 'ʾ', MB_ICONSTOP); + end + else + begin + Result := True; + end; + end; +end; + +procedure TfrmskHx.SellRec(mFlag:integer); +var + tmpSum:double; +begin + tmpSum:=0.0; + try + cdsYsk.DisableControls; + with cdsYsk do + begin + first; + while not eof do + begin + tmpSum:=tmpSum+FieldByName('NHxNum').asFloat; + edit; + if mFlag=0 then + begin + FieldByName('ssel').value:=False; + FieldByName('curHxNum').value:=0; + end + else + begin + FieldByName('ssel').value:=True; + if (tmpSum-StrToFloatDef(curHsNum.Text,0))>0 then + FieldByName('curHxNum').value:=FieldByName('NHxNum').asFloat-(tmpSum-StrToFloatDef(curHsNum.Text,0)) + else + FieldByName('curHxNum').value:=FieldByName('NHxNum').asFloat; + end; + post; + ////////////// + if (mFlag=1) and ((tmpSum-StrToFloatDef(curHsNum.Text,0))>0) then + break; + ///////////////////// + next; + end; + end; + cdsYsk.EnableControls ; + except + cdsYsk.EnableControls ; + end; +end; + +procedure TfrmskHx.InitYsk(); +begin + try + ADOQueryTmp.DisableControls; + with ADOQueryTmp do + begin + Close; + SQL.Clear; + Filtered:=False; + sql.Add('select *,NhxNum=Money-hxNum,curHxNum=0.00,inoutNo=(select Top 1 InoutNo from CP_INout X where X.CRNO=A.MainID) from YF_Money_CR A'); + sql.Add('where factoryName='+quotedstr(trim(ffactoryName))); + sql.Add('and CRType='+quotedstr(trim('ӦտǼ'))); + sql.Add('and Money-hxNum <>0 '); + sql.Add('order by CRTime,YFID '); + Open; + end; + SCreateCDS20(ADOQueryTmp,cdsYsk); + SInitCDSData20(ADOQueryTmp,cdsYsk); + finally + ADOQueryTmp.EnableControls; + end; +end; +procedure TfrmskHx.Initsk(); +begin + try + ADOQueryTmp.DisableControls; + with ADOQueryTmp do + begin + Close; + SQL.Clear; + Filtered:=False; + sql.Add('select *,NhxNum=Money-hxNum from YF_Money_CR A'); + sql.Add('where YFID='+quotedstr(trim(fkeyNO))); + Open; + end; + IF not ADOQueryTmp.IsEmpty then + begin + factoryName.Text:=trim(ADOQueryTmp.fieldbyname('factoryName').AsString); + money.Text:=trim(ADOQueryTmp.fieldbyname('money').AsString); + hxNUm.Text:=trim(ADOQueryTmp.fieldbyname('hxNUm').AsString); + NhxNUm.Text:=trim(ADOQueryTmp.fieldbyname('NhxNUm').AsString); + curHsNum.Text:=NhxNUm.Text; + end; + finally + ADOQueryTmp.EnableControls; + end; +end; +procedure TfrmskHx.FormDestroy(Sender: TObject); +begin + frmskHx:=nil; +end; + +procedure TfrmskHx.FormCreate(Sender: TObject); +begin + cxGrid1.Align:=alclient; +end; + +procedure TfrmskHx.FormShow(Sender: TObject); +begin + initsk(); + initysk(); +end; + +procedure TfrmskHx.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmskHx.v1Column7PropertiesEditValueChanged(Sender: TObject); +begin + try + cdsYsk.DisableControls; + if TcxCurrencyEdit(sender).EditValue >cdsYsk.FieldByName('NHxNum').AsFloat then + begin + Application.MessageBox('κܲδ!','ʾϢ',0); + TcxCurrencyEdit(sender).EditValue:=null; + with cdsYsk do + begin + edit; + FieldByName('ssel').value:=False; + FieldByName('curHxNum').value:=0; + Post; + end; + Exit; + end; + + with cdsYsk do + begin + edit; + if TcxCurrencyEdit(sender).EditValue=0 then + FieldByName('ssel').value:=False + else + FieldByName('ssel').value:=True; + FieldByName('curHxNum').value:=TcxCurrencyEdit(sender).EditValue; + Post; + end; + finally + cdsYsk.EnableControls ; + end; +end; + +procedure TfrmskHx.CheckBox1Click(Sender: TObject); +begin + if checkBox1.Checked then SellRec(1) + else SellRec(0); +end; + +procedure TfrmskHx.TBSaveClick(Sender: TObject); +begin + if cdsYsk.IsEmpty then + begin + Application.MessageBox('ûжӦӦտ¼!','ʾϢ',0); + Exit; + end; + if Abs((tv1.DataController.Summary.FooterSummaryValues[3])) <= 0.000001 then + begin + Application.MessageBox('δѡǰӦտ¼!','Ϣ',0); + Exit; + end; + if (tv1.DataController.Summary.FooterSummaryValues[3]-StrToFloatDef(curHsNum.Text,0))>0.0 then + begin + Application.MessageBox('κڵǰɺտܽ!','Ϣ',0); + Exit; + end; + + ADOQueryCmd.Connection.BeginTrans; + try + cdsYsk.First ; + while not cdsYsk.Eof do + begin + if cdsYsk.FieldByName('ssel').AsBoolean and (Abs(cdsYsk.FieldByName('curHxNum').AsFloat) > 0.001) then + begin + if not savedata(1) then + begin + ADOQueryCmd.Connection.RollbackTrans; + Exit; + end; + end; + cdsYsk.Next ; + end; + ADOQueryCmd.Connection.CommitTrans; + finally + Initysk(); + initsk(); + end; + +end; + +end. diff --git a/应收应付/U_testdll.dfm b/应收应付/U_testdll.dfm new file mode 100644 index 0000000..b1d8f4c --- /dev/null +++ b/应收应付/U_testdll.dfm @@ -0,0 +1,221 @@ +object Form1: TForm1 + Left = 153 + Top = 124 + Width = 791 + Height = 554 + Caption = 'Form1' + Color = clBtnFace + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + FormStyle = fsMDIForm + Menu = MainMenu1 + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnResize = FormResize + PixelsPerInch = 96 + TextHeight = 13 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 783 + Height = 25 + ButtonWidth = 57 + Caption = 'ToolBar1' + Flat = True + Images = ImageList1 + TabOrder = 0 + object Edit1: TEdit + Left = 0 + Top = 0 + Width = 81 + Height = 22 + TabOrder = 0 + Text = '1' + end + object ToolButton1: TToolButton + Left = 81 + Top = 0 + Caption = #20851#38381 + ImageIndex = 0 + OnClick = ToolButton1Click + end + object Label1: TLabel + Left = 138 + Top = 0 + Width = 79 + Height = 22 + Caption = ' DllName'#65306 + end + object DllName: TEdit + Left = 217 + Top = 0 + Width = 135 + Height = 22 + TabOrder = 1 + end + end + object MainMenu1: TMainMenu + Left = 232 + Top = 40 + object test1: TMenuItem + Caption = 'test' + OnClick = test1Click + end + end + object ImageList1: TImageList + Left = 320 + Top = 56 + Bitmap = { + 494C010101000400040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 + 0000000000003600000028000000400000001000000001002000000000000010 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000EFEFEF000000 + 0000EFEFEF00EFEFEF000000000000000000EFEFEF0000000000000000000000 + 0000EFEFEF00EFEFEF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000EFEFEF0000000000EFEFEF00EFEFEF0000000000EFEFEF00000000008080 + 00008080000000000000C0C0C000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EFEFEF00EFEFEF000000 + 0000EFEFEF00EFEFEF000000000000000000C0C0C00000000000000000008080 + 00008080000080800000EFEFEF00EFEFEF000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFEFEF0000000000000000000000000000000000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFEFEF0000000000808080008080800080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000008080000000000000808080008080800080808000000000008080 + 0000000000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000EFEFEF00EFEF + EF0000000000FFFF000080800000000000008080800080808000000000000000 + 0000000000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000FFFF0000FFFF0000808000000000000080808000000000008080 + 0000000000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000808000008080 + 000080800000FFFF0000FFFF0000FFFF00000000000080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000FFFF0000FFFF + 0000FFFF0000FFFF000000000000FFFF00000000000080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000FFFF0000FFFF0000FFFF00000000000080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000808000000000000080808000808080008080800080808000FFFF + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000808080008080800080808000808080000000 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000424D3E000000000000003E000000 + 2800000040000000100000000100010000000000800000000000000000000000 + 000000000000000000000000FFFFFF00FFFF000000000000D343000000000000 + F4810000000000009340000000000000F801000000000000F001000000000000 + F001000000000000C001000000000000C001000000000000C001000000000000 + C201000000000000C001000000000000F001000000000000F001000000000000 + FC03000000000000FFFF00000000000000000000000000000000000000000000 + 000000000000} + end + object ADOConnection1: TADOConnection + ConnectionString = + 'Provider=SQLOLEDB.1;Password=sa;Persist Security Info=True;User ' + + 'ID=sa;Initial Catalog=rzdata;Data Source=6GMFFMYKYMJDZW7' + LoginPrompt = False + Provider = 'SQLOLEDB.1' + Left = 408 + Top = 64 + end +end diff --git a/应收应付/U_testdll.pas b/应收应付/U_testdll.pas new file mode 100644 index 0000000..4a4cfe0 --- /dev/null +++ b/应收应付/U_testdll.pas @@ -0,0 +1,106 @@ +unit U_testdll; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ExtCtrls, StdCtrls, Menus, ToolWin, ComCtrls, ImgList, DB, ADODB; + +type + TForm1 = class(TForm) + MainMenu1: TMainMenu; + test1: TMenuItem; + ToolBar1: TToolBar; + Edit1: TEdit; + ToolButton1: TToolButton; + ImageList1: TImageList; + ADOConnection1: TADOConnection; + DllName: TEdit; + Label1: TLabel; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure test1Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure FormResize(Sender: TObject); + private + { Private declarations } + public + { Public declarations } + end; + +var + Form1: TForm1; + newh:hwnd; + +implementation + +{$R *.dfm} + +procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); +begin + sendmessage(newh,1034,4,0); + action:=cafree; +end; + +procedure TForm1.test1Click(Sender: TObject); +type + TMyFunc = function(App:Tapplication; FormH:hwnd; FormID:integer; + Language: integer; WinStyle:integer; + GCode: Pchar; GName: Pchar; DataBase:Pchar;Title:PChar; + Parameters1:PChar;Parameters2:PChar;Parameters3:PChar;Parameters4:PChar; + Parameters5:PChar;Parameters6:PChar;Parameters7:PChar;Parameters8:PChar; + Parameters9:PChar;Parameters10:PChar;DataBaseStr:PChar):hwnd;stdcall; +var + Tf: TMyFunc; + Tp: TFarProc; + Th:Thandle; +begin + //̬ + //newh:=getForm(Application,1,ADOConnection1,PChar('sa'),PChar('dsa')); + + //̬ + // showMessage(intTostr(application.Handle)); + Th := LoadLibrary('YSYF.dll'); + if Th > 0 then + begin + try + Tp := GetProcAddress(Th, 'GetDllForm'); + if Tp <> nil then + begin + Tf := TMyFunc(Tp); + newh:=Tf(Application,0,strToint(edit1.text),0,0, + PChar('sa'), + PChar('dsa'), + PChar('bsa'), + PChar('tsa'), + PChar('d1sa'), + PChar('d2sa'), + '','','','','','','','','' + ); + end + else + begin + ShowMessage('ӡִд'); + end; + finally + // FreeLibrary(); + end; + end + else + begin + ShowMessage('Ҳ'+Trim(DllName.Text)); + end; + +end; + +procedure TForm1.ToolButton1Click(Sender: TObject); +begin + close; +end; + +procedure TForm1.FormResize(Sender: TObject); +begin + sendmessage(newh,1034,1,0); +end; + +end. + diff --git a/应收应付/YSYF.cfg b/应收应付/YSYF.cfg new file mode 100644 index 0000000..e9c1cc1 --- /dev/null +++ b/应收应付/YSYF.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"c:\program files (x86)\borland\delphi7\Projects\Bpl" +-LN"c:\program files (x86)\borland\delphi7\Projects\Bpl" +-w-UNSAFE_TYPE +-w-UNSAFE_CODE +-w-UNSAFE_CAST diff --git a/应收应付/YSYF.dof b/应收应付/YSYF.dof new file mode 100644 index 0000000..5cf936b --- /dev/null +++ b/应收应付/YSYF.dof @@ -0,0 +1,138 @@ +[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=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;dclOffice2k;Rave50CLX;Rave50VCL +Conditionals= +DebugSourceDirs= +UsePackages=0 +[Parameters] +RunParams= +HostApplication=D:\Ŀ\Ŀ\\ӦӦ\testDll.exe +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= +[Excluded Packages] +c:\program files\borland\delphi7\Bin\DBWEBXPRT.BPL=Borland Web Wizard Package diff --git a/应收应付/YSYF.dpr b/应收应付/YSYF.dpr new file mode 100644 index 0000000..3abf686 --- /dev/null +++ b/应收应付/YSYF.dpr @@ -0,0 +1,73 @@ +library YSYF; + +uses + SysUtils, + classes, + forms, + WinTypes, + WinProcs, + U_DataLink in 'U_DataLink.pas' {DataLink_YSYF: TDataModule}, + U_GetDllForm in 'U_GetDllForm.pas', + U_ZDYHelpSel in '..\..\..\ThreeFun\Form\U_ZDYHelpSel.pas' {frmZDYHelpSel}, + U_Fun in '..\..\..\ThreeFun\Fun\U_Fun.pas', + U_SelExportField in '..\..\..\ThreeFun\Fun\U_SelExportField.pas' {frmSelExportField}, + U_ColumnSet in '..\..\..\ThreeFun\Form\U_ColumnSet.pas' {frmColumnSet}, + U_ZDYHelp in '..\..\..\ThreeFun\Form\U_ZDYHelp.pas' {frmZDYHelp}, + U_ColumnBandSet in '..\..\..\ThreeFun\Form\U_ColumnBandSet.pas' {frmColumnBandSet}, + U_SelPrintFieldNew in '..\..\..\ThreeFun\Form\U_SelPrintFieldNew.pas' {frmSelPrintFieldNew}, + U_ProductOrderCost in 'U_ProductOrderCost.pas' {frmProductOrderCost}, + U_YSSKList in 'U_YSSKList.pas' {frmYSSKList}, + U_SKCROLJ in 'U_SKCROLJ.pas' {frmSKCROLJ}, + U_YSCROL in 'U_YSCROL.pas' {frmYSCROL}, + U_FKCRLZ in 'U_FKCRLZ.pas' {frmFKCRLZ}, + U_YSFP in 'U_YSFP.pas' {frmYSFP}, + U_ProductOrderList in 'U_ProductOrderList.pas' {frmProductOrderList}, + U_PbProductList in 'U_PbProductList.pas' {frmPbProductList}, + U_ProductOrderListOLJ in 'U_ProductOrderListOLJ.pas' {frmProductOrderListOLJ}, + U_YSCRJZC in 'U_YSCRJZC.pas' {frmYSCRJZC}, + U_SKCRLZ in 'U_SKCRLZ.pas' {frmSKCRLZ}, + U_YSHZMXView in 'U_YSHZMXView.pas' {frmYSHZMXView}, + U_YFCRLZView in 'U_YFCRLZView.pas' {frmYFCRLZView}, + U_YFCRLZQty in 'U_YFCRLZQty.pas' {frmYFCRLZQty}, + U_Fun10 in '..\..\..\ThreeFun\Fun\U_Fun10.pas', + U_YSMXlist in 'U_YSMXlist.pas' {frmYSMXlist}, + U_ZdyAttachCP in 'U_ZdyAttachCP.pas' {frmZdyAttachCP}, + U_ZdyAttachGYS in 'U_ZdyAttachGYS.pas' {frmZdyAttachGYS}, + U_ZdyAttachment in 'U_ZdyAttachment.pas' {frmZdyAttachment}, + U_skHx in 'U_skHx.pas' {frmskHx}, + U_YKHXList in 'U_YKHXList.pas' {frmYKHXList}, + U_FDINVOICE in 'U_FDINVOICE.pas'{frmFDINVOICE}; + +// U_SelfForm in '..\..\SelfForm\U_SelfForm.pas', + // U_SelExportField in '..\..\SelfForm\U_SelExportField.pas' {frmSelExportField}, + // U_SelPrintField in '..\..\SelfForm\U_SelPrintField.pas' {frmSelPrintField}, + // U_SelPrintFieldNew in '..\..\SelfForm\U_SelPrintFieldNew.pas' {frmSelPrintFieldNew}, + //U_FormPas in '..\CommonPas\formPas\U_FormPas.pas', + //U_CxGridSet in '..\CommonPas\cxgridPas\U_CxGridSet.pas'; + +//U_RSFormPas in '..\CommonPas\RSCommon\U_RSFormPas.pas'; + +{$R *.res} + +procedure DllEnterPoint(dwReason: DWORD);far;stdcall; +begin + DLLProc := @DLLEnterPoint; + DllEnterPoint(DLL_PROCESS_ATTACH); +end; + +procedure DLLUnloadProc(Reason: Integer); register; +begin +// if (Reason = DLL_PROCESS_DETACH) or (Reason=DLL_THREAD_DETACH) then +// Application:=NewDllApp; +end; +exports + GetDllForm; +begin + try + NewDllApp:=Application; + DLLProc := @DLLUnloadProc; + except + + end; +end. + diff --git a/应收应付/YSYF.res b/应收应付/YSYF.res new file mode 100644 index 0000000000000000000000000000000000000000..2d6f24c3d9a870364649288b1c0306b551768325 GIT binary patch literal 876 zcmaJ=Jx{|h5Pc?9%tTwkz(g}L7BMg|6oiDt01W(ruz1OWgw!H+AXAn~{FzE^Brlox z9gK_}J0Q&SIVr99IQ9AN-MzD~Rtx|M;amX24SU~e>Jc?cYMoANyAd5SNQg5+p~aQP zp5HA8_(Prt$CV+GqpB(v{1D!`;JAjld@@+K+i61a|MTdsd{~!%b1ms_KJEh}cpe(` z6jA?@e29>sU}iiwp;b>~TL@2U!O)h%Yr)7`8+a;b=@mD^tI-VbODr7!U{0?gh%d@~e3Ro)^HNMvvU1UHt)HYrq~&L`&fQ16Y1SeYiaObZ>3v kZ4W@7aBc_JIL8%khzs1(H@5yR{A*B1l9s#*|B4j80N@tIJOBUy literal 0 HcmV?d00001 diff --git a/应收应付/testDll.cfg b/应收应付/testDll.cfg new file mode 100644 index 0000000..6c57635 --- /dev/null +++ b/应收应付/testDll.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"c:\program files\borland\delphi7\Projects\Bpl" +-LN"c:\program files\borland\delphi7\Projects\Bpl" +-w-UNSAFE_TYPE +-w-UNSAFE_CODE +-w-UNSAFE_CAST diff --git a/应收应付/testDll.dpr b/应收应付/testDll.dpr new file mode 100644 index 0000000..4be4b8a --- /dev/null +++ b/应收应付/testDll.dpr @@ -0,0 +1,14 @@ +program testDll; + +uses + Forms, + U_testdll in 'U_testdll.pas' {Form1}; + +{$R *.res} + +begin + Application.Initialize; + Application.CreateForm(TForm1, Form1); + Application.Run; +end. + diff --git a/应收应付/testDll.res b/应收应付/testDll.res new file mode 100644 index 0000000000000000000000000000000000000000..2d6f24c3d9a870364649288b1c0306b551768325 GIT binary patch literal 876 zcmaJ=Jx{|h5Pc?9%tTwkz(g}L7BMg|6oiDt01W(ruz1OWgw!H+AXAn~{FzE^Brlox z9gK_}J0Q&SIVr99IQ9AN-MzD~Rtx|M;amX24SU~e>Jc?cYMoANyAd5SNQg5+p~aQP zp5HA8_(Prt$CV+GqpB(v{1D!`;JAjld@@+K+i61a|MTdsd{~!%b1ms_KJEh}cpe(` z6jA?@e29>sU}iiwp;b>~TL@2U!O)h%Yr)7`8+a;b=@mD^tI-VbODr7!U{0?gh%d@~e3Ro)^HNMvvU1UHt)HYrq~&L`&fQ16Y1SeYiaObZ>3v kZ4W@7aBc_JIL8%khzs1(H@5yR{A*B1l9s#*|B4j80N@tIJOBUy literal 0 HcmV?d00001 diff --git a/成品仓库/CPCK.cfg b/成品仓库/CPCK.cfg new file mode 100644 index 0000000..7876259 --- /dev/null +++ b/成品仓库/CPCK.cfg @@ -0,0 +1,42 @@ +-$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"c:\program files (x86)\borland\delphi7\Projects\Bpl" +-LN"c:\program files (x86)\borland\delphi7\Projects\Bpl" +-U"D:\ͨERP" +-O"D:\ͨERP" +-I"D:\ͨERP" +-R"D:\ͨERP" +-w-UNSAFE_TYPE +-w-UNSAFE_CODE +-w-UNSAFE_CAST diff --git a/成品仓库/CPCK.dof b/成品仓库/CPCK.dof new file mode 100644 index 0000000..8eac372 --- /dev/null +++ b/成品仓库/CPCK.dof @@ -0,0 +1,138 @@ +[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=D:\ͨERP +Packages=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;dclOffice2k;Rave50CLX;Rave50VCL +Conditionals= +DebugSourceDirs= +UsePackages=0 +[Parameters] +RunParams= +HostApplication=D:\Ŀ\Ŀ\\Ʒֿ\testDll.exe +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= +[Excluded Packages] +c:\program files\borland\delphi7\Bin\DBWEBXPRT.BPL=Borland Web Wizard Package diff --git a/成品仓库/CPCK.dpr b/成品仓库/CPCK.dpr new file mode 100644 index 0000000..0387736 --- /dev/null +++ b/成品仓库/CPCK.dpr @@ -0,0 +1,70 @@ +library CPCK; + +uses + SysUtils, + classes, + forms, + WinTypes, + WinProcs, + U_DataLink in 'U_DataLink.pas' {CPCK_DataLink: TDataModule}, + U_GetDllForm in 'U_GetDllForm.pas', + U_Fun10 in '..\..\..\ThreeFun\Fun\U_Fun10.pas', + U_getDogServer in '..\..\..\ThreeFun\Fun\U_getDogServer.pas', + U_ZDYHelp in '..\..\..\ThreeFun\Form\U_ZDYHelp.pas' {frmZDYHelp}, + U_BpSmRk in 'U_BpSmRk.pas' {frmBpSmRk}, + U_BpJylist in 'U_BpJylist.pas' {frmBpJylist}, + U_BpRk in 'U_BpRk.pas' {frmbpRk}, + U_ProductOrderNewList in 'U_ProductOrderNewList.pas' {frmProductOrderNewList}, + U_BpCk in 'U_BpCk.pas' {frmbpCk}, + U_BpSmCk in 'U_BpSmCk.pas' {frmBpSmCk}, + U_BpRklist in 'U_BpRklist.pas' {frmBpRklist}, + U_ZdyAttachment in 'U_ZdyAttachment.pas' {frmZdyAttachment}, + U_ZDYHelpSel in '..\..\..\ThreeFun\Form\U_ZDYHelpSel.pas' {frmZDYHelpSel}, + U_Fun in '..\..\..\ThreeFun\Fun\U_Fun.pas', + U_SelExportField in '..\..\..\ThreeFun\Fun\U_SelExportField.pas' {frmSelExportField}, + U_ColumnSet in '..\..\..\ThreeFun\Form\U_ColumnSet.pas' {frmColumnSet}, + U_ColumnBandSet in '..\..\..\ThreeFun\Form\U_ColumnBandSet.pas' {frmColumnBandSet}, + U_SelPrintFieldNew in '..\..\..\ThreeFun\Form\U_SelPrintFieldNew.pas' {frmSelPrintFieldNew}, + U_ZdyAttachGYS in 'U_ZdyAttachGYS.pas' {frmZdyAttachGYS}, + U_JGCklistSel in 'U_JGCklistSel.pas' {frmJGCklistSel}, + U_BpckXjList in 'U_BpckXjList.pas' {frmBpckXjList}, + U_ProductOrderNewListSEl in 'U_ProductOrderNewListSEl.pas' {frmProductOrderNewListSEl}, + U_ZdyAttachCP in 'U_ZdyAttachCP.pas' {frmZdyAttachCP}, + U_ZdyCMZ_Sel in 'U_ZdyCMZ_Sel.pas' {frmZdyCMZ_Sel}, + U_CPKWListSel in 'U_CPKWListSel.pas' {frmCPKWListSel}, + U_ZdyYS_Sel in 'U_ZdyYS_Sel.pas' {frmZdyYS_Sel}; + + +// U_SelfForm in '..\..\SelfForm\U_SelfForm.pas', + // U_SelExportField in '..\..\SelfForm\U_SelExportField.pas' {frmSelExportField}, + // U_SelPrintField in '..\..\SelfForm\U_SelPrintField.pas' {frmSelPrintField}, + // U_SelPrintFieldNew in '..\..\SelfForm\U_SelPrintFieldNew.pas' {frmSelPrintFieldNew}, + //U_FormPas in '..\CommonPas\formPas\U_FormPas.pas', + //U_CxGridSet in '..\CommonPas\cxgridPas\U_CxGridSet.pas'; + +//U_RSFormPas in '..\CommonPas\RSCommon\U_RSFormPas.pas'; + +{$R *.res} + +procedure DllEnterPoint(dwReason: DWORD);far;stdcall; +begin + DLLProc := @DLLEnterPoint; + DllEnterPoint(DLL_PROCESS_ATTACH); +end; + +procedure DLLUnloadProc(Reason: Integer); register; +begin +// if (Reason = DLL_PROCESS_DETACH) or (Reason=DLL_THREAD_DETACH) then +// Application:=NewDllApp; +end; +exports + GetDllForm; +begin + try + NewDllApp:=Application; + DLLProc := @DLLUnloadProc; + except + + end; +end. + diff --git a/成品仓库/CPCK.rar b/成品仓库/CPCK.rar new file mode 100644 index 0000000000000000000000000000000000000000..939baae670b4f651dd7ac72a1e37aa3237eaa935 GIT binary patch literal 1767052 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

*S7qAYG!mqD`J6GA|En{s&!l=+m=Jc4ZF=W5*u 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

K|mvqn+ zgzqbFJ@oV-V5vOJ5TcGAz1zr_-)DjZ3X9yvN!&{lB2$BbD>w=`1~?5g{%O*lWaW$U zhhqqHP$~!+lAx^X^DK^3ZJ7BM!SVP!76>F23>KdiMH(kg93oQO0KnXA+(#(jJYeP= z4|U!vY5T{haqyHgaRf?(#DF*+^CF>@ALSQJ1|=91%|?-%S@2kM?Z=L(L;gbocd{1K zQr0k22CgYxWSzvaG$lI=fjd-WzM|@mba?1Kqcw-z4?aJdDuL{??t^=7+7--lAYzsB zVFZ!Hugppc?Nl4Wgi!V{obQ11Mxh&}?a-y$={a0(jX``_Hq+D+ClbKJh4n8hz8w7e z>D?&t?I+o&zq~y1Ki%NIW#aDhj+EQ6EJFvd+WdL8cEzo-3fo9w&7@v)$-Kx7H3MH20lNJjT!j_kt?# z?5HJbAX1Mz@5Ta0{e?-7^qh}jZt*jY`#>y&=ai#?Xk+$39f9G%-~Xr$2jPK4C_c?Y zVFEe{jo5&r)QRk_emx~k{50jXV@w-awwUeIolk(%gC;0Ymlz$+Tm~U@G>!Pw}u7tMDi`j^z$cBZ-AJCnRV(h+Cjud+PG~ z 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 HvB^>Nek__KshSTO zPB~%l!r@FFwBk}PXp-)>(>5jD{)-A65l|6QA=?MMUn9L?A{tw#UbxkIWIgrCOht|x z9j##ZY5pGAS@;VWVwV>{gQR>F?wDqIAkFu)OtQ3#d0-xn7 zzO^XFAioQV2elJ+8s~#Lic!v^4Ulj+v@v!sY2L?XJYK&K8XwWJda~-~JusJq{3!4I z4Pq~j(<$Rya*c%H+zfw_+G!RTSb^KMdzL;5;?{*y_g$V8_CB`Dfbx;{yi@)z>Ke$L zyy#hUaZO~d5R#`sBu;RCy32D|ebD?Q_BGS6iBbPK&Q&z7TqoUwnk?_S<2f_0%oO18 zC029QS^aNI=1q(MmZ(^WL1n@3o2|QI0*AADiQJ@868zu?58X9n5I

9zjrB{5IP_ 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%0DQ~A~r;v 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�!(!;7ZT9t^R_maCT4ydyJUDIc88Si7W)MO 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

i21<-@iCEifE^3Ix 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

}pWw5hmXPnWuW6 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%0D;(n_)q4z}m_Nq{p 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

m`WZ26vY8H?mAq2Y7VOI$r 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 z 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%0Dak~|uEF81NQoO7ha2k*-QNlu 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�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

7D96gpAS^o9$$p-fAX! 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

>}qrT8ZZj@2%J?>0?_?+}g`0Y|cl) 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 IgrLFxANJqfi~s-t literal 0 HcmV?d00001 diff --git a/成品仓库/CPCK.res b/成品仓库/CPCK.res new file mode 100644 index 0000000000000000000000000000000000000000..2d6f24c3d9a870364649288b1c0306b551768325 GIT binary patch literal 876 zcmaJ=Jx{|h5Pc?9%tTwkz(g}L7BMg|6oiDt01W(ruz1OWgw!H+AXAn~{FzE^Brlox z9gK_}J0Q&SIVr99IQ9AN-MzD~Rtx|M;amX24SU~e>Jc?cYMoANyAd5SNQg5+p~aQP zp5HA8_(Prt$CV+GqpB(v{1D!`;JAjld@@+K+i61a|MTdsd{~!%b1ms_KJEh}cpe(` z6jA?@e29>sU}iiwp;b>~TL@2U!O)h%Yr)7`8+a;b=@mD^tI-VbODr7!U{0?gh%d@~e3Ro)^HNMvvU1UHt)HYrq~&L`&fQ16Y1SeYiaObZ>3v kZ4W@7aBc_JIL8%khzs1(H@5yR{A*B1l9s#*|B4j80N@tIJOBUy literal 0 HcmV?d00001 diff --git a/成品仓库/ProjectGroup1.bpg b/成品仓库/ProjectGroup1.bpg new file mode 100644 index 0000000..dfcf494 --- /dev/null +++ b/成品仓库/ProjectGroup1.bpg @@ -0,0 +1,23 @@ +#------------------------------------------------------------------------------ +VERSION = BWS.01 +#------------------------------------------------------------------------------ +!ifndef ROOT +ROOT = $(MAKEDIR)\.. +!endif +#------------------------------------------------------------------------------ +MAKE = $(ROOT)\bin\make.exe -$(MAKEFLAGS) -f$** +DCC = $(ROOT)\bin\dcc32.exe $** +BRCC = $(ROOT)\bin\brcc32.exe $** +#------------------------------------------------------------------------------ +PROJECTS = testDll.exe CPCK.dll +#------------------------------------------------------------------------------ +default: $(PROJECTS) +#------------------------------------------------------------------------------ + +testDll.exe: testDll.dpr + $(DCC) + +CPCK.dll: CPCK.dpr + $(DCC) + + diff --git a/成品仓库/ProjectGroup1.~bpg b/成品仓库/ProjectGroup1.~bpg new file mode 100644 index 0000000..7a8a674 --- /dev/null +++ b/成品仓库/ProjectGroup1.~bpg @@ -0,0 +1,23 @@ +#------------------------------------------------------------------------------ +VERSION = BWS.01 +#------------------------------------------------------------------------------ +!ifndef ROOT +ROOT = $(MAKEDIR)\.. +!endif +#------------------------------------------------------------------------------ +MAKE = $(ROOT)\bin\make.exe -$(MAKEFLAGS) -f$** +DCC = $(ROOT)\bin\dcc32.exe $** +BRCC = $(ROOT)\bin\brcc32.exe $** +#------------------------------------------------------------------------------ +PROJECTS = testDll.exe BPCK.dll +#------------------------------------------------------------------------------ +default: $(PROJECTS) +#------------------------------------------------------------------------------ + +testDll.exe: testDll.dpr + $(DCC) + +BPCK.dll: BPCK.dpr + $(DCC) + + diff --git a/成品仓库/SYSTEMSET.ini b/成品仓库/SYSTEMSET.ini new file mode 100644 index 0000000..e4904d4 --- /dev/null +++ b/成品仓库/SYSTEMSET.ini @@ -0,0 +1,3 @@ +[SERVER] +ַ=127.0.0.1 +=XXXXXXX1 \ No newline at end of file diff --git a/成品仓库/U_BJGCl.dfm b/成品仓库/U_BJGCl.dfm new file mode 100644 index 0000000..1b2edcd --- /dev/null +++ b/成品仓库/U_BJGCl.dfm @@ -0,0 +1,698 @@ +object frmBJGCl: TfrmBJGCl + Left = 109 + Top = 115 + Width = 1194 + Height = 620 + Caption = #21152#24037#32467#31639#21333 + 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 = 1178 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 89 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Images = LbQryPrint_DataLink.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object Tqry: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#35810 + ImageIndex = 2 + OnClick = TqryClick + end + object Tprint: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + OnClick = TprintClick + end + object Txls: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986'Excel' + ImageIndex = 75 + OnClick = TxlsClick + end + object tclose: TToolButton + Left = 219 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = tcloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1178 + Height = 45 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 32 + Top = 16 + Width = 52 + Height = 12 + Caption = #26816#39564#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 592 + Top = 64 + Width = 52 + Height = 12 + Caption = #21592#24037#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 772 + Top = 64 + Width = 52 + Height = 12 + Caption = #21592#24037#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 672 + Top = 156 + Width = 48 + Height = 12 + Caption = #26816#39564#20154#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label2: TLabel + Left = 236 + Top = 16 + Width = 6 + Height = 12 + Caption = '-' + end + object Label4: TLabel + Left = 480 + Top = 16 + Width = 26 + Height = 12 + Caption = #36710#38388 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object begdate: TDateTimePicker + Left = 84 + Top = 12 + Width = 90 + Height = 20 + Date = 40422.816672789360000000 + Format = 'yyyy-MM-dd' + Time = 40422.816672789360000000 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + end + object enddate: TDateTimePicker + Left = 252 + Top = 12 + Width = 95 + Height = 20 + Date = 40422.816949467590000000 + Format = 'yyyy-MM-dd' + Time = 40422.816949467590000000 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 1 + end + object userID: TEdit + Tag = 2 + Left = 644 + Top = 60 + Width = 100 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 2 + OnChange = userIDChange + end + object userName: TEdit + Tag = 2 + Left = 828 + Top = 60 + Width = 100 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 3 + OnChange = userIDChange + end + object ComboBox1: TComboBox + Left = 752 + Top = 152 + Width = 113 + Height = 20 + Style = csDropDownList + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 12 + ParentFont = False + TabOrder = 4 + end + object begTime: TDateTimePicker + Left = 172 + Top = 12 + Width = 55 + Height = 20 + Date = 41583.333333333340000000 + Format = 'HH:mm' + Time = 41583.333333333340000000 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Kind = dtkTime + ParentFont = False + TabOrder = 5 + end + object endTime: TDateTimePicker + Left = 344 + Top = 12 + Width = 55 + Height = 20 + Date = 41583.333333333340000000 + Format = 'HH:mm' + Time = 41583.333333333340000000 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Kind = dtkTime + ParentFont = False + TabOrder = 6 + end + object dept: TComboBox + Left = 512 + Top = 12 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 7 + OnChange = userIDChange + Items.Strings = ( + '' + #19968#36710#38388 + #20108#36710#38388) + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 77 + Width = 1178 + Height = 448 + Align = alTop + TabOrder = 2 + object TV1: TcxGridDBBandedTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = V1Column2 + end + item + Kind = skSum + Column = V1Column3 + end + item + Kind = skSum + Column = V1Column4 + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = V1Column9 + end + item + Kind = skSum + Column = V1Column10 + end + item + Kind = skSum + Column = V1Column11 + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = V1Column17 + end + item + Kind = skSum + Column = V1Column18 + end + item + Kind = skSum + Column = V1Column19 + 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 + item + Kind = skSum + Column = V1Column33 + end + item + Kind = skSum + Column = V1Column34 + end + item + Kind = skSum + Column = V1Column35 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnMoving = False + OptionsData.Editing = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Footer = LbQryPrint_DataLink.cxStyle_gridFoot + Styles.GroupByBox = LbQryPrint_DataLink.cxStyle_gridGroupBox + Styles.Header = LbQryPrint_DataLink.cxStyle_gridHead + Styles.BandHeader = LbQryPrint_DataLink.cxStyle_gridHead + Bands = < + item + Width = 213 + end + item + Caption = #30002 + Width = 240 + end + item + Caption = #20057 + Width = 240 + end + item + Caption = #19993 + Width = 240 + end + item + Caption = #24635#21512#35745 + Width = 260 + end> + object V1FillTime: TcxGridDBBandedColumn + Caption = #36710#38388 + DataBinding.FieldName = 'dept' + HeaderAlignmentHorz = taCenter + Width = 70 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object V1MachType: TcxGridDBBandedColumn + Caption = #31867#21035 + DataBinding.FieldName = 'MachType' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 59 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object V1Column5: TcxGridDBBandedColumn + Caption = #21306#22495 + DataBinding.FieldName = 'machFlag' + HeaderAlignmentHorz = taCenter + Width = 84 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object V1Column2: TcxGridDBBandedColumn + Caption = 'A' + DataBinding.FieldName = 'X_A_Qty' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 40 + OnCompareRowValuesForCellMerging = V1Column2CompareRowValuesForCellMerging + Position.BandIndex = 1 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object V1Column3: TcxGridDBBandedColumn + Caption = 'B' + DataBinding.FieldName = 'X_B_Qty' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 37 + OnCompareRowValuesForCellMerging = V1Column2CompareRowValuesForCellMerging + Position.BandIndex = 1 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object V1Column4: TcxGridDBBandedColumn + Caption = 'A+B' + DataBinding.FieldName = 'X_Qty' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 42 + OnCompareRowValuesForCellMerging = V1Column2CompareRowValuesForCellMerging + Position.BandIndex = 1 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object V1Column1: TcxGridDBBandedColumn + Caption = 'A'#32423#29575 + DataBinding.FieldName = 'X_A_Qty_rate' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 41 + OnCompareRowValuesForCellMerging = V1Column2CompareRowValuesForCellMerging + Position.BandIndex = 1 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object V1Column9: TcxGridDBBandedColumn + Caption = 'A' + DataBinding.FieldName = 'Y_A_Qty' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + OnCompareRowValuesForCellMerging = V1Column2CompareRowValuesForCellMerging + Position.BandIndex = 2 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object V1Column10: TcxGridDBBandedColumn + Caption = 'B' + DataBinding.FieldName = 'Y_B_Qty' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + OnCompareRowValuesForCellMerging = V1Column2CompareRowValuesForCellMerging + Position.BandIndex = 2 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object V1Column11: TcxGridDBBandedColumn + Caption = 'A+B' + DataBinding.FieldName = 'Y_Qty' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + OnCompareRowValuesForCellMerging = V1Column2CompareRowValuesForCellMerging + Position.BandIndex = 2 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object V1Column12: TcxGridDBBandedColumn + Caption = 'A'#32423#29575 + DataBinding.FieldName = 'Y_A_Qty_rate' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + OnCompareRowValuesForCellMerging = V1Column2CompareRowValuesForCellMerging + Position.BandIndex = 2 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object V1Column17: TcxGridDBBandedColumn + Caption = 'A' + DataBinding.FieldName = 'Z_A_Qty' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 40 + OnCompareRowValuesForCellMerging = V1Column2CompareRowValuesForCellMerging + Position.BandIndex = 3 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object V1Column18: TcxGridDBBandedColumn + Caption = 'B' + DataBinding.FieldName = 'Z_B_Qty' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 26 + OnCompareRowValuesForCellMerging = V1Column2CompareRowValuesForCellMerging + Position.BandIndex = 3 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object V1Column19: TcxGridDBBandedColumn + Caption = 'A+B' + DataBinding.FieldName = 'Z_Qty' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 54 + OnCompareRowValuesForCellMerging = V1Column2CompareRowValuesForCellMerging + Position.BandIndex = 3 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object V1Column20: TcxGridDBBandedColumn + Caption = 'A'#32423#29575 + DataBinding.FieldName = 'Z_A_Qty_rate' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 40 + OnCompareRowValuesForCellMerging = V1Column2CompareRowValuesForCellMerging + Position.BandIndex = 3 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object V1Column33: TcxGridDBBandedColumn + Caption = 'A' + DataBinding.FieldName = 'A_Qty' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + OnCompareRowValuesForCellMerging = V1Column2CompareRowValuesForCellMerging + Position.BandIndex = 4 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object V1Column34: TcxGridDBBandedColumn + Caption = 'B' + DataBinding.FieldName = 'B_Qty' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + OnCompareRowValuesForCellMerging = V1Column2CompareRowValuesForCellMerging + Position.BandIndex = 4 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object V1Column35: TcxGridDBBandedColumn + Caption = 'A+B' + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + OnCompareRowValuesForCellMerging = V1Column2CompareRowValuesForCellMerging + Position.BandIndex = 4 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object V1Column36: TcxGridDBBandedColumn + Caption = 'A'#32423#29575 + DataBinding.FieldName = 'A_Qty_rate' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + OnCompareRowValuesForCellMerging = V1Column2CompareRowValuesForCellMerging + Position.BandIndex = 4 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object V1MachOrder: TcxGridDBBandedColumn + DataBinding.FieldName = 'MachOrder' + Visible = False + Hidden = True + Options.CellMerging = True + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = TV1 + end + end + object Panetime: TPanel + Left = 318 + Top = 164 + Width = 185 + 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 + Connection = LbQryPrint_DataLink.ADOLink + CommandTimeout = 600 + Parameters = <> + Left = 652 + Top = 260 + end + object DataSource1: TDataSource + DataSet = ADOQueryTmp + Left = 640 + Top = 220 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 584 + Top = 132 + end + object RMDBDataSet1: TRMDBDataSet + Visible = True + DataSet = ADOQueryTmp + Left = 464 + Top = 184 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 624 + Top = 180 + ReportData = {} + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 684 + Top = 164 + end +end diff --git a/成品仓库/U_BJGCl.pas b/成品仓库/U_BJGCl.pas new file mode 100644 index 0000000..5b8f604 --- /dev/null +++ b/成品仓库/U_BJGCl.pas @@ -0,0 +1,261 @@ +unit U_BJGCl; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, ADODB, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxGridLevel, cxClasses, cxControls, + cxGridCustomView, cxGrid, StdCtrls, ComCtrls, ExtCtrls, ToolWin, DBClient, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Common, RM_Class, RM_e_Xls, + RM_GridReport, RM_System, RM_Dataset, cxCheckBox, cxCalendar, + cxGridBandedTableView, cxGridDBBandedTableView, Buttons, cxCurrencyEdit; + +type + TfrmBJGCl = class(TForm) + ToolBar1: TToolBar; + Tqry: TToolButton; + Tprint: TToolButton; + Txls: TToolButton; + tclose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + begdate: TDateTimePicker; + enddate: TDateTimePicker; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + Panetime: TPanel; + cxGridPopupMenu1: TcxGridPopupMenu; + RMDBDataSet1: TRMDBDataSet; + RMGridReport1: TRMGridReport; + RMXLSExport1: TRMXLSExport; + Label7: TLabel; + userID: TEdit; + Label8: TLabel; + userName: TEdit; + Label3: TLabel; + ComboBox1: TComboBox; + begTime: TDateTimePicker; + endTime: TDateTimePicker; + Label2: TLabel; + Label4: TLabel; + dept: TComboBox; + TV1: TcxGridDBBandedTableView; + V1FillTime: TcxGridDBBandedColumn; + V1Column2: TcxGridDBBandedColumn; + V1Column3: TcxGridDBBandedColumn; + V1Column4: TcxGridDBBandedColumn; + V1Column1: TcxGridDBBandedColumn; + V1Column9: TcxGridDBBandedColumn; + V1Column10: TcxGridDBBandedColumn; + V1Column11: TcxGridDBBandedColumn; + V1Column12: TcxGridDBBandedColumn; + V1Column17: TcxGridDBBandedColumn; + V1Column18: TcxGridDBBandedColumn; + V1Column19: TcxGridDBBandedColumn; + V1Column20: TcxGridDBBandedColumn; + V1Column33: TcxGridDBBandedColumn; + V1Column34: TcxGridDBBandedColumn; + V1Column35: TcxGridDBBandedColumn; + V1Column36: TcxGridDBBandedColumn; + V1Column5: TcxGridDBBandedColumn; + V1MachType: TcxGridDBBandedColumn; + V1MachOrder: TcxGridDBBandedColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TqryClick(Sender: TObject); + procedure TxlsClick(Sender: TObject); + procedure tcloseClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TprintClick(Sender: TObject); + procedure userIDChange(Sender: TObject); + procedure V1Column2CompareRowValuesForCellMerging( + Sender: TcxGridColumn; ARow1: TcxGridDataRow; + AProperties1: TcxCustomEditProperties; const AValue1: Variant; + ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; + const AValue2: Variant; var AAreEqual: Boolean); + private + fstr1:string; + fstr2:string; + procedure DoQuery(); + procedure FilterData(); + { Private declarations } + public + istyjp:boolean; + fdept:string; + { Public declarations } + end; + +var + frmBJGCl: TfrmBJGCl; + +implementation +uses U_Fun10,U_DataLink; +{$R *.dfm} + + +procedure TfrmBJGCl.DoQuery(); +var + mBegdate,mEnddate:string; + i:integer; +begin + mbegdate:=FormatDateTime('yyyy-MM-dd',begdate.Date)+' '+FormatDateTime('HH:nn',begTime.Time); + menddate:=FormatDateTime('yyyy-MM-dd',enddate.Date)+' '+FormatDateTime('HH:nn',endTime.Time); + screen.Cursor:=crsqlwait; + Panetime.Visible:=true; + Panetime.Left:=(Width-Panetime.Width) div 2; + Panetime.top:=(Height-Panetime.Height-200) div 2; + application.ProcessMessages; + + try + with adoqueryTmp do + begin + close; + sql.Clear; + filtered:=false; + sql.Add(' exec P_Get_BJGCl '); + sql.Add(' @begdate='+quotedstr(trim(mbegdate))); + sql.Add(',@Enddate='+quotedstr(trim(menddate))); + sql.Add(',@dept='+quotedstr(trim(''))); + sql.Add(',@otherwhere='+quotedstr(trim(''))); + open; + end; + FilterData(); + finally + Panetime.Visible:=false; + screen.Cursor:=crdefault; + end; +end; +procedure TfrmBJGCl.FilterData(); +var + filterStr:string; +begin + filterStr:=''; + if trim(dept.Text)<>'' then + filterStr:=filterStr+' and dept like '+quotedstr('%'+trim(dept.Text)+'%'); + 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)+'%'); + 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 TfrmBJGCl.FormDestroy(Sender: TObject); +begin + frmBJGCl:=nil; +end; + +procedure TfrmBJGCl.FormClose(Sender: TObject; var Action: TCloseAction); +begin + writeCxBandedGrid(self.Caption+tv1.Name,tv1,'ۺϲѯ'); + action:=cafree; +end; + +procedure TfrmBJGCl.TqryClick(Sender: TObject); +begin + DoQuery(); +end; + +procedure TfrmBJGCl.TxlsClick(Sender: TObject); +begin + if adoquerytmp.IsEmpty then exit; + TcxGridToExcel(self.Caption,cxgrid1); +end; + +procedure TfrmBJGCl.tcloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmBJGCl.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + enddate.Date:=DServerDate; + begdate.Date:=strtodate(formatdateTime('yyyy-MM',enddate.Date)+'-01'); + +end; + +procedure TfrmBJGCl.FormShow(Sender: TObject); +begin + writeCxBandedGrid(self.Caption+tv1.Name,tv1,'ۺϲѯ'); +// Tqry.Click; + + +end; + +procedure TfrmBJGCl.TprintClick(Sender: TObject); +var + filepath:string; + mBegdate,mEnddate:string; +begin + mbegdate:=FormatDateTime('yyyy-MM-dd',begdate.Date)+' '+FormatDateTime('HH:nn',begTime.Time); + menddate:=FormatDateTime('yyyy-MM-dd',enddate.Date)+' '+FormatDateTime('HH:nn',endTime.Time); + if ADOQueryTmp.IsEmpty then exit; + try + filepath:=ExtractFilePath(Application.ExeName) + 'report\޹˱.rmf'; + if not FileExists(Pchar(filepath)) then + begin + application.MessageBox(pchar('ļ['+filepath+']ڣ'),'ʾϢ',MB_IConError); + exit; + end; + RMVariables['dtxz'] :=FormatDateTime('yyyy-mm-dd',DServerDate); + RmVariables['begDate'] :=FormatDateTime('yyyy-mm-dd',begDate.Date); + RmVariables['enddate'] :=FormatDateTime('yyyy-mm-dd',enddate.Date); + RMVariables['zdr'] :=trim(DName); + RMVariables['fstr1'] :=trim(fstr1); + RMVariables['fstr2'] :=trim(fstr2); + RmVariables['begDate'] :=mbegdate+' - '+menddate; + RmVariables['dept'] :=trim(dept.Text); + RMGridReport1.LoadFromFile(filepath); + // RMGridReport1.PrintReport; + RMGridReport1.ShowReport; + + finally + + end; + +end; + +procedure TfrmBJGCl.userIDChange(Sender: TObject); +begin + FilterData(); +end; + +procedure TfrmBJGCl.V1Column2CompareRowValuesForCellMerging( + Sender: TcxGridColumn; ARow1: TcxGridDataRow; + AProperties1: TcxCustomEditProperties; const AValue1: Variant; + ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; + const AValue2: Variant; var AAreEqual: Boolean); +var + i:integer; +begin + i:=tv1.GetColumnByFieldName('MachOrder').Index; + if ARow1.Values[i] = ARow2.Values[i] then + AAreEqual := True + else + AAreEqual := False; + + +end; + +end. diff --git a/成品仓库/U_BpCk.dfm b/成品仓库/U_BpCk.dfm new file mode 100644 index 0000000..f880f46 --- /dev/null +++ b/成品仓库/U_BpCk.dfm @@ -0,0 +1,1145 @@ +object frmbpCk: TfrmbpCk + Left = 564 + Top = 306 + Width = 1094 + Height = 539 + BorderIcons = [biSystemMenu] + Caption = #20986#24211#20449#24687 + 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 + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1078 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 29 + Width = 1078 + Height = 104 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 36 + Top = 20 + Width = 52 + Height = 12 + Caption = #20986#24211#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 408 + Top = 20 + Width = 52 + Height = 12 + Caption = #20986#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 188 + Top = 168 + Width = 48 + Height = 12 + Caption = #21457#24448#21333#20301 + end + object Label4: TLabel + Left = 544 + Top = 196 + Width = 48 + Height = 12 + Caption = #20179' '#24211 + end + object Label5: TLabel + Left = 36 + Top = 132 + Width = 48 + Height = 12 + Caption = #35746#21333#20449#24687 + end + object Label6: TLabel + Left = 252 + Top = 132 + Width = 24 + Height = 12 + Caption = #20135#21697 + end + object Label7: TLabel + Left = 488 + Top = 128 + Width = 48 + Height = 12 + Caption = #39068' '#33394 + end + object Label8: TLabel + Left = 220 + Top = 20 + Width = 52 + Height = 12 + Caption = #20986#24211#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 592 + Top = 20 + Width = 54 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 396 + Top = 144 + Width = 65 + Height = 12 + Caption = #25910#29616#37329#20154#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 568 + Top = 140 + Width = 78 + Height = 12 + Caption = #26368#36831#25910#27454#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label14: TLabel + Left = 36 + Top = 112 + Width = 53 + Height = 12 + Caption = #25171' '#21253' '#36153 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label15: TLabel + Left = 220 + Top = 168 + Width = 53 + Height = 12 + Caption = #26679' '#26495' '#36153 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label16: TLabel + Left = 408 + Top = 168 + Width = 53 + Height = 12 + Caption = #20854' '#23427' '#36153 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label17: TLabel + Left = 828 + Top = 60 + Width = 60 + Height = 14 + Caption = #27599#21305#25968#37327 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label18: TLabel + Left = 220 + Top = 144 + Width = 52 + Height = 12 + Caption = #23454#25910#29616#37329 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 36 + Top = 45 + Width = 52 + Height = 12 + Caption = #21457#36135#22320#22336 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label20: TLabel + Left = 407 + Top = 45 + Width = 52 + Height = 12 + Caption = #32852#31995#26041#24335 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label21: TLabel + Left = 828 + Top = 84 + Width = 138 + Height = 12 + Caption = '*'#21452#20987#26126#32454#34920#26684#21487#21024#38500#25968#25454 + Visible = False + end + object Label22: TLabel + Left = 828 + Top = 28 + Width = 60 + Height = 14 + Caption = #36192#36865#25968#37327 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object CRTime: TDateTimePicker + Left = 88 + Top = 16 + Width = 100 + Height = 20 + Date = 41509.970132187500000000 + Format = 'yyyy-MM-dd' + Time = 41509.970132187500000000 + TabOrder = 0 + end + object CRType: TComboBox + Left = 464 + Top = 16 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 1 + Text = #38144#21806#20986#24211 + Items.Strings = ( + #38144#21806#20986#24211 + #21152#24037#20986#24211) + end + object ToCustName: TBtnEditA + Left = 240 + Top = 164 + Width = 321 + Height = 20 + ReadOnly = True + TabOrder = 2 + OnBtnClick = ToCustNameBtnClick + end + object ckName: TComboBox + Left = 768 + Top = 172 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 3 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object orderNO: TBtnEditA + Left = 88 + Top = 132 + Width = 100 + Height = 20 + ReadOnly = True + TabOrder = 4 + OnBtnClick = orderNOBtnClick + end + object PRTCodeName: TEdit + Left = 280 + Top = 132 + Width = 100 + Height = 20 + Enabled = False + ReadOnly = True + TabOrder = 5 + end + object PRTColor: TEdit + Left = 756 + Top = 136 + Width = 100 + Height = 20 + Enabled = False + ReadOnly = True + TabOrder = 6 + end + object InoutNo: TEdit + Left = 272 + Top = 16 + Width = 100 + Height = 20 + TabOrder = 7 + end + object custName: TBtnEditA + Left = 648 + Top = 16 + Width = 101 + Height = 20 + ReadOnly = True + TabOrder = 8 + OnBtnClick = custNameBtnClick + end + object IsYjx: TCheckBox + Left = 36 + Top = 144 + Width = 97 + Height = 17 + Caption = #26159#21542#25910#29616#37329 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + end + object YjxYG: TBtnEditA + Left = 464 + Top = 140 + Width = 100 + Height = 20 + ReadOnly = True + TabOrder = 10 + OnBtnClick = YjxYGBtnClick + end + object Yjxdate: TDateTimePicker + Left = 648 + Top = 136 + Width = 101 + Height = 20 + Date = 41628.038490810180000000 + Format = 'yyyy-MM-dd' + Time = 41628.038490810180000000 + TabOrder = 11 + end + object PackFee: TcxCurrencyEdit + Left = 88 + Top = 108 + Properties.DisplayFormat = '0.##' + Properties.OnChange = PackFeePropertiesChange + TabOrder = 12 + Width = 100 + end + object YbFee: TcxCurrencyEdit + Left = 272 + Top = 164 + Properties.DisplayFormat = '0.##' + Properties.OnChange = PackFeePropertiesChange + TabOrder = 13 + Width = 100 + end + object OtherFee: TcxCurrencyEdit + Left = 464 + Top = 164 + Properties.DisplayFormat = '0.##' + Properties.OnChange = PackFeePropertiesChange + TabOrder = 14 + Width = 100 + end + object QtyMX: TEdit + Left = 888 + Top = 56 + Width = 65 + Height = 22 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 15 + Visible = False + OnKeyPress = QtyMXKeyPress + end + object XjNum: TcxCurrencyEdit + Left = 272 + Top = 140 + Properties.DisplayFormat = '0.##' + TabOrder = 16 + Width = 100 + end + object FHAddress: TBtnEditC + Tag = 2 + Left = 86 + Top = 41 + Width = 287 + Height = 20 + ReadOnly = True + TabOrder = 17 + OnBtnUpClick = FHAddressBtnUpClick + OnBtnDnClick = FHAddressBtnDnClick + end + object LXFS: TBtnEditC + Tag = 2 + Left = 462 + Top = 41 + Width = 287 + Height = 20 + ReadOnly = True + TabOrder = 18 + OnBtnUpClick = LXFSBtnUpClick + OnBtnDnClick = FHAddressBtnDnClick + end + object IsTax: TCheckBox + Left = 216 + Top = 104 + Width = 97 + Height = 17 + Caption = #26159#21542#21547#31246 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 19 + Visible = False + end + object ZsQtyMX: TEdit + Left = 888 + Top = 24 + Width = 65 + Height = 22 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 20 + Visible = False + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 133 + Width = 1078 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 2 + Visible = False + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #25195#25551#21024#34892 + ImageIndex = 48 + Visible = False + OnClick = ToolButton3Click + end + end + object Panel2: TPanel + Left = 172 + Top = 228 + Width = 289 + Height = 121 + Color = clSkyBlue + TabOrder = 3 + Visible = False + OnDblClick = Panel2DblClick + object Label10: TLabel + Left = 36 + Top = 24 + Width = 26 + Height = 12 + Caption = #26465#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 36 + Top = 72 + Width = 8 + Height = 14 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Edit1: TEdit + Left = 68 + Top = 20 + Width = 137 + Height = 20 + TabOrder = 0 + OnKeyPress = Edit1KeyPress + end + end + object Panel3: TPanel + Left = 0 + Top = 162 + Width = 1078 + Height = 122 + Align = alClient + Caption = 'Panel3' + TabOrder = 4 + object cxGrid1: TcxGrid + Left = 1 + Top = 1 + Width = 839 + Height = 120 + Align = alClient + TabOrder = 0 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + OnCellClick = Tv1CellClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = v1Qty + end + item + Kind = skSum + Column = v1Money + end + item + Kind = skSum + Column = v1Column3 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object v1Column4: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 98 + end + object v1MJID: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + VisibleForCustomization = False + Width = 75 + end + object v1MJXH: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + VisibleForCustomization = False + Width = 60 + end + object v1Column2: TcxGridDBColumn + Caption = #21152#24037#21378 + DataBinding.FieldName = 'TocustName' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 83 + end + object v1P_Code: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'P_Code' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 80 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1P_CodeNamePropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 80 + end + object v1P_SPEC: TcxGridDBColumn + Caption = #35268#26684#25104#20998 + DataBinding.FieldName = 'P_SPEC' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 80 + end + object v1Column1: TcxGridDBColumn + Caption = #23610#23544'/'#23610#30721 + DataBinding.FieldName = 'defstr1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 69 + end + object v1CPType: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'CPType' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 56 + end + object v1Qty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1QtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 80 + end + object v1Column3: TcxGridDBColumn + Caption = #36192#36865#25968#37327 + DataBinding.FieldName = 'ZsQty' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 76 + end + object v1Price: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1QtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 34 + end + object v1Money: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'Money' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Styles.Content = CPCK_DataLink.cxStyle_fontclFuchsia + Styles.Footer = CPCK_DataLink.cxStyle_fontclFuchsia + Styles.Header = CPCK_DataLink.cxStyle_fontclFuchsia + Width = 61 + end + object v1Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 132 + end + object Tv1Column1: TcxGridDBColumn + Caption = #20179#24211#32534#21495 + DataBinding.FieldName = 'DRCKNO' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column2: TcxGridDBColumn + Caption = #20179#24211#21517#31216 + DataBinding.FieldName = 'DRCKName' + HeaderAlignmentHorz = taCenter + Width = 70 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGrid2: TcxGrid + Left = 840 + Top = 1 + Width = 237 + Height = 120 + Align = alRight + TabOrder = 1 + Visible = False + object Tv2: TcxGridDBTableView + OnMouseDown = Tv2MouseDown + Navigator.Buttons.CustomButtons = <> + OnCellDblClick = Tv2CellDblClick + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column2 + end + item + Kind = skSum + Column = v2Column1 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object v2Column2: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 92 + end + object v2Column1: TcxGridDBColumn + Caption = #36192#36865#25968#37327 + DataBinding.FieldName = 'ZsQty' + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '0.##' + Properties.ReadOnly = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + end + object cxGrid3: TcxGrid + Left = 0 + Top = 284 + Width = 1078 + Height = 216 + Align = alBottom + TabOrder = 5 + object TV3: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = TV2Column2 + end + item + Kind = skSum + Column = TV2Column3 + end + item + Kind = skSum + Column = TV2Column4 + end + item + Kind = skSum + Column = TV2Column5 + end + item + Kind = skSum + Column = TV2Column6 + end + item + Kind = skSum + Column = TV2Column7 + end + item + Kind = skSum + Column = TV2Column8 + end + item + Kind = skSum + Column = TV2Column9 + end + item + Kind = skSum + Column = TV2Column10 + end + item + Kind = skSum + Column = TV2Column11 + end + item + Kind = skSum + Column = TV2Column12 + end + item + Kind = skSum + Column = TV2Column13 + end + item + Kind = skSum + Column = TV3Column1 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnSorting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object TV2Column1: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV3Column4: TcxGridDBColumn + Caption = 'CXXXS' + DataBinding.FieldName = 'Size15' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object TV2Column2: TcxGridDBColumn + Caption = 'CXXS' + DataBinding.FieldName = 'Size1' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column3: TcxGridDBColumn + Caption = 'CXS' + DataBinding.FieldName = 'Size2' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column4: TcxGridDBColumn + Caption = 'CS' + DataBinding.FieldName = 'Size3' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column5: TcxGridDBColumn + Caption = 'CM' + DataBinding.FieldName = 'Size4' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column6: TcxGridDBColumn + Caption = 'CL' + DataBinding.FieldName = 'Size5' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column7: TcxGridDBColumn + Caption = 'CXL' + DataBinding.FieldName = 'Size6' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV3Column2: TcxGridDBColumn + Caption = 'CXXL' + DataBinding.FieldName = 'Size13' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column8: TcxGridDBColumn + Caption = 'AXS' + DataBinding.FieldName = 'Size7' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column9: TcxGridDBColumn + Caption = 'AS' + DataBinding.FieldName = 'Size8' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column10: TcxGridDBColumn + Caption = 'AM' + DataBinding.FieldName = 'Size9' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column11: TcxGridDBColumn + Caption = 'AL' + DataBinding.FieldName = 'Size10' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column12: TcxGridDBColumn + Caption = 'AXL' + DataBinding.FieldName = 'Size11' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column13: TcxGridDBColumn + Caption = 'AXXL' + DataBinding.FieldName = 'Size12' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV3Column3: TcxGridDBColumn + Caption = 'AXXXL' + DataBinding.FieldName = 'Size14' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 60 + end + object TV3Column1: TcxGridDBColumn + Caption = #21512#35745 + DataBinding.FieldName = 'ZQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 70 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TV3 + end + end + object ADOQueryCmd: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 292 + Top = 8 + end + object ADOQueryTmp: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 340 + Top = 8 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 400 + Top = 9 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 17 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 716 + Top = 9 + end + object ADO_Sub: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 780 + Top = 17 + end + object DataSource2: TDataSource + DataSet = CDS_Sub + Left = 824 + Top = 337 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 345 + end +end diff --git a/成品仓库/U_BpCk.pas b/成品仓库/U_BpCk.pas new file mode 100644 index 0000000..e601ae7 --- /dev/null +++ b/成品仓库/U_BpCk.pas @@ -0,0 +1,1806 @@ +unit U_BpCk; + +interface + +uses + Windows, Messages, SysUtils, StrUtils, Variants, Classes, Graphics, Controls, + Forms, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGridLevel, cxClasses, cxControls, cxGridCustomView, + cxGrid, StdCtrls, ComCtrls, ExtCtrls, ToolWin, cxButtonEdit, cxDropDownEdit, + DBClient, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, BtnEdit, cxContainer, + cxTextEdit, cxCurrencyEdit, cxLookAndFeels, cxLookAndFeelPainters, 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 + TfrmbpCk = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + CRTime: TDateTimePicker; + Label2: TLabel; + CRType: TComboBox; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1P_SPEC: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + cxGridPopupMenu1: TcxGridPopupMenu; + Label3: TLabel; + ToCustName: TBtnEditA; + v1MJID: TcxGridDBColumn; + v1MJXH: TcxGridDBColumn; + v1CPType: TcxGridDBColumn; + ckName: TComboBox; + Label4: TLabel; + Label5: TLabel; + orderNO: TBtnEditA; + Label6: TLabel; + PRTCodeName: TEdit; + Label7: TLabel; + PRTColor: TEdit; + v1P_Code: TcxGridDBColumn; + Label8: TLabel; + InoutNo: TEdit; + Label9: TLabel; + custName: TBtnEditA; + ToolButton3: TToolButton; + Panel2: TPanel; + Label10: TLabel; + Edit1: TEdit; + Label11: TLabel; + IsYjx: TCheckBox; + Label12: TLabel; + v1Price: TcxGridDBColumn; + v1Money: TcxGridDBColumn; + YjxYG: TBtnEditA; + Label13: TLabel; + Yjxdate: TDateTimePicker; + Label14: TLabel; + PackFee: TcxCurrencyEdit; + YbFee: TcxCurrencyEdit; + Label15: TLabel; + OtherFee: TcxCurrencyEdit; + Label16: TLabel; + Panel3: TPanel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + v2Column2: TcxGridDBColumn; + ADO_Sub: TADOQuery; + DataSource2: TDataSource; + Label17: TLabel; + QtyMX: TEdit; + CDS_Sub: TClientDataSet; + Label18: TLabel; + XjNum: TcxCurrencyEdit; + FHAddress: TBtnEditC; + Label19: TLabel; + Label20: TLabel; + LXFS: TBtnEditC; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + IsTax: TCheckBox; + Label21: TLabel; + v2Column1: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + ZsQtyMX: TEdit; + Label22: TLabel; + v1Column4: TcxGridDBColumn; + cxGrid3: TcxGrid; + TV3: TcxGridDBTableView; + TV2Column1: TcxGridDBColumn; + TV2Column2: TcxGridDBColumn; + TV2Column3: TcxGridDBColumn; + TV2Column4: TcxGridDBColumn; + TV2Column5: TcxGridDBColumn; + TV2Column6: TcxGridDBColumn; + TV2Column7: TcxGridDBColumn; + TV2Column8: TcxGridDBColumn; + TV2Column9: TcxGridDBColumn; + TV2Column10: TcxGridDBColumn; + TV2Column11: TcxGridDBColumn; + TV2Column12: TcxGridDBColumn; + TV2Column13: TcxGridDBColumn; + TV3Column1: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + Tv1Column1: TcxGridDBColumn; + Tv1Column2: TcxGridDBColumn; + TV3Column2: TcxGridDBColumn; + TV3Column3: TcxGridDBColumn; + TV3Column4: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure v1P_CodeNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure ToCustNameBtnClick(Sender: TObject); + procedure orderNOBtnClick(Sender: TObject); + procedure custNameBtnClick(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure Edit1KeyPress(Sender: TObject; var Key: Char); + procedure Panel2DblClick(Sender: TObject); + procedure v1QtyPropertiesEditValueChanged(Sender: TObject); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure QtyMXKeyPress(Sender: TObject; var Key: Char); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure YjxYGBtnClick(Sender: TObject); + procedure PackFeePropertiesChange(Sender: TObject); + procedure FHAddressBtnUpClick(Sender: TObject); + procedure LXFSBtnUpClick(Sender: TObject); + procedure FHAddressBtnDnClick(Sender: TObject); + procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure TV2Column2PropertiesEditValueChanged(Sender: TObject); + private + procedure InitGrid(); + procedure Initsub(); + procedure Initsub_1(); + function savedate(): Boolean; + procedure SetComboBox(); + function YSData(): Boolean; + function SKData(): Boolean; + function YSData_Other(fYFName: string; fmoney: double): Boolean; + procedure GetxjNum(); + { Private declarations } + public + fkeyNO, FCodeName, FCode, FDRCKNO, FDRCKName: string; + FType: integer; + fCKName: string; + { Public declarations } + end; + +var + frmbpCk: TfrmbpCk; + +implementation + +uses + U_DataLink, U_Fun10, U_ZDYHelp, U_Bpkclist, U_ZdyAttachment, U_ZDYHelpSel; +{$R *.dfm} + +function TfrmbpCk.SKData(): Boolean; +var + CRID, YFID, Price, PriceUnit, OrderUnit, FComTaiTou, cust: string; +begin + Result := False; + with ADOQueryTmp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName=''' + Trim(custName.Text) + ''' and YFDefFlag1=0 '); + Open; + end; + + if not ADOQueryTmp.IsEmpty then + begin + CRID := ADOQueryTmp.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID := ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('FactoryName').Value := Trim(custName.Text); + FieldByName('ZdyStr1').Value := 'Ӧ'; + Post; + end; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + // sql.Add(' and subID='''+Trim(CDS_Main.fieldbyname('CRID').AsString)+''''); + sql.Add(' and YFName=''ֽտ'' '); + execsql; + end; + + with ADOQueryTmp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + // sql.Add(' and subID='''+Trim(CDS_Main.fieldbyname('CRID').AsString)+''''); + sql.Add(' and YFName=''ֽտ'' '); + Open; + end; + + if ADOQueryTmp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd, YFID, 'FK', 'YF_Money_CR', 4, 1) = False then + begin + Application.MessageBox('ȡӦʧ!', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value := Trim(YFID); + FieldByName('YFTypeId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('CRType').Value := 'տǼ'; + FieldByName('CRFlag').Value := 'Ӧ'; + FieldByName('QtyFlag').Value := -1; + FieldByName('FactoryName').Value := Trim(custName.Text); + FieldByName('TOFactoryName').Value := ''; + FieldByName('CRTime').Value := Trim(FormatDateTime('yyyy-MM-dd', CRTime.DateTime)); + FieldByName('YFType').Value := 'Զ'; + FieldByName('Qty').Value := 1; + FieldByName('Price').Value := strtofloatdef(XjNum.Text, 0); + FieldByName('Money').Value := strtofloatdef(XjNum.Text, 0); + FieldByName('BBMoney').Value := strtofloatdef(XjNum.Text, 0); + FieldByName('HuiLv').Value := 1; + FieldByName('BZType').Value := ''; + FieldByName('QtyUnit').Value := Trim(CDS_Main.fieldbyname('QtyUnit').AsString); + FieldByName('ComTaiTou').Value := Trim(cust); + FieldByName('YFName').Value := 'ֽտ'; + FieldByName('MainId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + // FieldByName('subID').Value:=Trim(CDS_Main.fieldbyname('CRID').AsString); + FieldByName('status').Value := '0'; + Post; + end; + end + else + begin + YFID := Trim(ADOQueryTmp.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID=' + CRID); + ExecSQL; + end; + + Result := True; +end; + +procedure TfrmbpCk.GetxjNum(); +begin + if not varisnull(tv1.DataController.Summary.FooterSummaryValues[2]) then + begin + XjNum.Value := tv1.DataController.Summary.FooterSummaryValues[2] + strtofloatdef(PackFee.Text, 0) + strtofloatdef(YbFee.Text, 0) + strtofloatdef(OtherFee.Text, 0); + end + else + begin + XjNum.Value := strtofloatdef(PackFee.Text, 0) + strtofloatdef(YbFee.Text, 0) + strtofloatdef(OtherFee.Text, 0); + end; +end; + +procedure TfrmbpCk.Initsub(); +begin +// if CDS_Main.IsEmpty then +// Exit; +// try +// with Ado_Sub do +// begin +// close; +// sql.Clear; +// sql.Add('exec P_Get_CP_CK_MX ''' + Cds_main.fieldbyname('P_CodeName').AsString + ''' ,''' + Cds_main.fieldbyname('P_Code').AsString + ''',''' + Cds_main.fieldbyname('CRNO').AsString + ''' '); +// sql.Add(' ,''' + cds_main.fieldbyname('DRCKNO').AsString + ''' ,''' + cds_main.fieldbyname('DRCKName').AsString + ''' '); +// open; +// end; +// SCreateCDS20(Ado_Sub, CDS_Sub); +// SInitCDSData20(Ado_Sub, CDS_Sub); +// finally +// end; +// if CDS_Main.IsEmpty then +// exit; +// +// with Ado_Sub do +// begin +// close; +// sql.Clear; +// sql.Add('select * from CP_InOut_MX A'); +// sql.Add('where A.MJID=' + quotedstr(trim(CDS_Main.fieldbyname('MJID').AsString))); +// open; +// end; +// SCreateCDS20(Ado_Sub, CDS_sub); +// SInitCDSData20(Ado_Sub, CDS_sub); +end; + +procedure TfrmbpCk.Initsub_1(); +begin + try + with self.adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('exec P_Get_CP_CK_MX ''' + Cds_main.fieldbyname('P_CodeName').AsString + ''' ,''' + Cds_main.fieldbyname('P_Code').AsString + ''',''' + Cds_main.fieldbyname('CRNO').AsString + ''' '); + sql.Add(' ,''' + cds_main.fieldbyname('DRCKNO').AsString + ''' ,''' + cds_main.fieldbyname('DRCKName').AsString + ''' '); + open; + end; + SCreateCDS20(adoqueryTmp, CDS_Sub); + SInitCDSData20(adoqueryTmp, CDS_Sub); + finally + end; +end; + +function TfrmbpCk.YSData(): Boolean; +var + CRID, YFID, priceUnit: string; + PrtPrice, huilv: double; +begin + Result := False; + + priceUnit := 'RMB'; + PrtPrice := 0; + huilv := 1; + with ADOQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from JYOrder_sub '); + sql.Add('where subID=''' + Trim(CDS_Main.fieldbyname('subID').AsString) + ''''); + open; + end; + if not ADOQueryTmp.IsEmpty then + begin + priceUnit := ADOQueryTmp.fieldbyname('priceUnit').AsString; + PrtPrice := ADOQueryTmp.fieldbyname('PrtPrice').AsFloat; + huilv := ADOQueryTmp.fieldbyname('huilv').AsFloat; + end; + with ADOQueryTmp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName=''' + Trim(custName.Text) + ''' and YFDefFlag1=0 '); + Open; + end; + + if not ADOQueryTmp.IsEmpty then + begin + CRID := ADOQueryTmp.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID := ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('FactoryName').Value := Trim(custName.Text); + FieldByName('ZdyStr1').Value := 'Ӧ'; + Post; + end; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + sql.Add(' and subID=''' + Trim(CDS_Main.fieldbyname('CRID').AsString) + ''''); + sql.Add(' and YFName=''Ʒ'' '); + execsql; + end; + + with ADOQueryTmp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + sql.Add(' and subID=''' + Trim(CDS_Main.fieldbyname('CRID').AsString) + ''''); + sql.Add(' and YFName=''Ʒ'' '); + Open; + end; + + if ADOQueryTmp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd, YFID, 'CS', 'YF_Money_CR', 3, 1) = False then + begin + Application.MessageBox('ȡӦʧ!', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value := Trim(YFID); + FieldByName('YFTypeId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('CRType').Value := 'ӦտǼ'; + FieldByName('CRFlag').Value := 'Ӧ'; + FieldByName('QtyFlag').Value := 1; + FieldByName('FactoryName').Value := Trim(custName.Text); + FieldByName('CRTime').Value := Trim(FormatDateTime('yyyy-MM-dd', CRTime.DateTime)); + FieldByName('YFType').Value := 'Զ'; + FieldByName('HuiLv').Value := huilv; + FieldByName('ps').Value := CDS_Main.fieldbyname('RollNum').AsFloat; + FieldByName('Qty').Value := CDS_Main.fieldbyname('Qty').AsFloat; + FieldByName('Price').Value := CDS_Main.fieldbyname('Price').AsFloat; + FieldByName('Money').Value := format('%.2f', [FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat]); + FieldByName('BBMoney').Value := format('%.2f', [FieldByName('Money').AsFloat * FieldByName('HuiLv').AsFloat]); + FieldByName('ISTAX').Value := IsTax.Checked; + FieldByName('BZType').Value := ''; + FieldByName('QtyUnit').Value := Trim(CDS_Main.fieldbyname('QtyUnit').AsString); + FieldByName('ComTaiTou').Value := Trim(custName.Text); + FieldByName('YFName').Value := 'Ʒ'; + FieldByName('MainId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + FieldByName('subID').Value := Trim(CDS_Main.fieldbyname('CRID').AsString); + FieldByName('status').Value := '0'; + Post; + end; + end + else + begin + YFID := Trim(ADOQueryTmp.fieldbyname('YFID').AsString); + end; + + Result := True; +end; + +function TfrmbpCk.YSData_Other(fYFName: string; fmoney: double): Boolean; +var + CRID, YFID, Price, PriceUnit, OrderUnit, FComTaiTou, cust: string; +begin + Result := False; + with ADOQueryTmp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName=''' + Trim(custName.Text) + ''' and YFDefFlag1=0 '); + Open; + end; + + if not ADOQueryTmp.IsEmpty then + begin + CRID := ADOQueryTmp.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID := ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('FactoryName').Value := Trim(custName.Text); + FieldByName('ZdyStr1').Value := 'Ӧ'; + Post; + end; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + sql.Add(' and subID=''' + Trim(CDS_Main.fieldbyname('CRID').AsString) + ''''); + sql.Add(' and YFName=''' + trim(fYFName) + ''' '); + execsql; + end; + + with ADOQueryTmp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + sql.Add(' and subID=''' + Trim(CDS_Main.fieldbyname('CRID').AsString) + ''''); + sql.Add(' and YFName=''' + trim(fYFName) + ''' '); + Open; + end; + + if ADOQueryTmp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd, YFID, 'CS', 'YF_Money_CR', 3, 1) = False then + begin + Application.MessageBox('ȡӦʧ!', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value := Trim(YFID); + FieldByName('YFTypeId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('CRType').Value := 'ӦտǼ'; + FieldByName('CRFlag').Value := 'Ӧ'; + FieldByName('QtyFlag').Value := 1; + FieldByName('FactoryName').Value := Trim(custName.Text); + FieldByName('CRTime').Value := Trim(FormatDateTime('yyyy-MM-dd', CRTime.DateTime)); + FieldByName('YFType').Value := 'Զ'; + FieldByName('Qty').Value := 1; + FieldByName('Price').Value := fmoney; + FieldByName('Money').Value := fmoney; + FieldByName('BBMoney').Value := fmoney; + FieldByName('HuiLv').Value := 1; + FieldByName('BZType').Value := ''; + FieldByName('QtyUnit').Value := ''; + FieldByName('ComTaiTou').Value := Trim(cust); + FieldByName('YFName').Value := fYFName; + FieldByName('ISTAX').Value := IsTax.Checked; + FieldByName('MainId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + FieldByName('subID').Value := Trim(CDS_Main.fieldbyname('CRID').AsString); + FieldByName('status').Value := '0'; + Post; + end; + end + else + begin + YFID := Trim(ADOQueryTmp.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID=' + CRID); + ExecSQL; + end; + + Result := True; +end; + +procedure TfrmbpCk.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPCK'' '); + if trim(fCKName) <> '' then + sql.Add('and zdyName=' + quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count > 0 then + ckName.ItemIndex := 0; + + CRType.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPCKTYPE'''); + if trim(fCKName) <> '' then + sql.Add('and note=' + quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count > 0 then + CRType.ItemIndex := 0; +end; + +function TfrmbpCk.savedate(): Boolean; +var + fkcID, XHNO, i: integer; + Filler, FSize: string; + FillTime: TdateTime; + maxno: string; +begin + result := false; + try + ADOQueryCmd.Connection.BeginTrans; + + if FType = 0 then + begin + Filler := DName; + FillTime := SGetServerDateTime(adoqueryTmp); + end + else + begin + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from CP_InOut'); + sql.Add('where CRNO=' + quotedstr(trim(fkeyNO))); + open; + Filler := adoqueryTmp.fieldbyname('Filler').AsString; + FillTime := adoqueryTmp.fieldbyname('FillTime').AsDateTime; + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add('where MAINid=' + quotedstr(trim(fkeyNO))); + execsql; + end; + end; + + +{ with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update CP_kc set RollNum=A.RollNum + B.RollNum, Qty=A.Qty + B.Qty '); + sql.Add('from CP_kc A'); + sql.Add('inner join CP_INout B on B.kcid=A.kcid'); + sql.Add('where B.CRNO='+quotedstr(trim(fkeyNO))); + execsql; + end; } + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from CP_INout'); + sql.Add('where CRNO=' + quotedstr(trim(fkeyNO))); + execsql; + end; + CDS_Main.DisableControls; + CDS_Main.First; + XHNO := 1; + with CDS_Main do + begin + while not eof do + begin + Edit; + FieldByName('CRNO').Value := trim(fkeyNO); +// FieldByName('CRID').Value := recNo; + post; + + { IF trim(CRType.Text)='۳'then + begin + with ADOQueryTmp do + begin + close; + sql.Clear; + sql.Add('select sum(RollNum) as RollNum,sum(Qty) as Qty from CP_InOut_MX'); + sql.Add('where MJID='+quotedstr(trim(CDS_main.fieldbyname('MJID').AsString))); + open; + end; + IF ADOQueryTmp.IsEmpty then + begin + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('۳ϸ뵥ݣ','ʾϢ',0); + exit; + end + else + begin + IF ADOQueryTmp.fieldbyname('RollNum').AsFloat<> CDS_main.fieldbyname('RollNum').AsFloat then + begin + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ϸ뵥ƥ͵ݵƥһ£','ʾϢ',0); + exit; + end; + IF ADOQueryTmp.fieldbyname('Qty').AsFloat<> CDS_main.fieldbyname('Qty').AsFloat then + begin + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ϸ뵥͵ݵһ£','ʾϢ',0); + exit; + end; + end; + end; + } + + with CDS_Sub do + begin + First; + while not eof do + begin + i := 1; + while i < 16 do + begin + FSize := 'Size' + IntToStr(i); + if StrToFloatDef(CDS_Sub.fieldbyname(FSize).AsString, 0) > 0 then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from CP_INout'); + sql.Add('where 1=2 '); + open; + end; + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('CRNO').Value := trim(fkeyNO); + ADOQueryCmd.FieldByName('CRID').Value := XHNO; + ADOQueryCmd.FieldByName('CKName').Value := trim(CKName.Text); + ADOQueryCmd.FieldByName('InoutNO').Value := trim(InoutNO.Text); + ADOQueryCmd.FieldByName('custNo').Value := trim(custName.TxtCode); + ADOQueryCmd.FieldByName('custName').Value := trim(custName.Text); + // ADOQueryCmd.FieldByName('TocustNo').Value:=trim(TocustName.TxtCode); + // ADOQueryCmd.FieldByName('TocustName').Value:=trim(TocustName.Text); + ADOQueryCmd.FieldByName('FHAddress').Value := trim(FHAddress.Text); + ADOQueryCmd.FieldByName('LXFS').Value := trim(LXFS.Text); + + if IsYjx.Checked then + begin + ADOQueryCmd.FieldByName('IsYjx').Value := ''; + ADOQueryCmd.FieldByName('xjNum').Value := strtofloatdef(xjNum.text, 0); + ADOQueryCmd.FieldByName('Yjxdate').Value := formatdateTime('yyyy-MM-dd', Yjxdate.Date); + end + else + ADOQueryCmd.FieldByName('IsYjx').Value := ''; + ADOQueryCmd.FieldByName('YjxYG').Value := trim(YjxYG.Text); + ADOQueryCmd.FieldByName('ISTAX').Value := IsTax.Checked; + // ADOQueryCmd.FieldByName('Yjxdate').Value:=formatdateTime('yyyy-MM-dd',Yjxdate.Date); + ADOQueryCmd.FieldByName('PackFee').Value := floattostr(strtofloatdef(PackFee.Text, 0)); + ADOQueryCmd.FieldByName('YbFee').Value := floattostr(strtofloatdef(YbFee.Text, 0)); + ADOQueryCmd.FieldByName('otherFee').Value := floattostr(strtofloatdef(otherFee.Text, 0)); + ADOQueryCmd.FieldByName('mainID').Value := trim(CDS_Main.fieldbyname('mainID').AsString); + ADOQueryCmd.FieldByName('subID').Value := trim(CDS_Main.fieldbyname('subID').AsString); + ADOQueryCmd.FieldByName('CRTime').Value := formatdateTime('yyyy-MM-dd', CRTIme.Date); +// ADOQueryCmd.FieldByName('TocustName').Value := trim(CDS_Main.fieldbyname('TocustName').AsString); +// ADOQueryCmd.FieldByName('batchNo').Value := trim(CDS_Main.fieldbyname('batchNo').AsString); + ADOQueryCmd.FieldByName('CRType').Value := trim(CRType.Text); + ADOQueryCmd.FieldByName('CRFlag').Value := ''; +// ADOQueryCmd.FieldByName('MJID').Value := trim(fieldbyname('MJID').AsString); +// ADOQueryCmd.FieldByName('MJXH').Value := trim(fieldbyname('MJXH').AsString); + ADOQueryCmd.FieldByName('CPTYPE').Value := 'Ʒ'; + ADOQueryCmd.FieldByName('P_Code').Value := trim(CDS_Main.fieldbyname('P_Code').AsString); + ADOQueryCmd.FieldByName('P_CodeName').Value := trim(CDS_Main.fieldbyname('P_CodeName').AsString); + ADOQueryCmd.FieldByName('P_spec').Value := trim(CDS_Main.fieldbyname('P_spec').AsString); + ADOQueryCmd.FieldByName('P_Color').Value := trim(CDS_Sub.fieldbyname('P_Color').AsString); + + ADOQueryCmd.FieldByName('DRCKNO').Value := trim(CDS_Main.fieldbyname('DRCKNO').AsString); + ADOQueryCmd.FieldByName('DRCKName').Value := trim(CDS_Main.fieldbyname('DRCKName').AsString); +// ADOQueryCmd.FieldByName('P_ColorNO').Value := trim(fieldbyname('P_ColorNO').AsString); +// ADOQueryCmd.FieldByName('defstr1').Value := trim(fieldbyname('defstr1').AsString); +// ADOQueryCmd.FieldByName('P_MF').Value := fieldbyname('P_MF').AsFloat; +// ADOQueryCmd.FieldByName('P_KZ').Value := fieldbyname('P_KZ').AsFloat; +// ADOQueryCmd.FieldByName('RollNum').Value := fieldbyname('RollNum').AsFloat; + ADOQueryCmd.FieldByName('Qty').Value := CDS_sub.fieldbyname(FSize).AsFloat; +// ADOQueryCmd.FieldByName('zsQty').Value := fieldbyname('zsQty').AsFloat; +// ADOQueryCmd.FieldByName('QtyUnit').Value := trim(fieldbyname('QtyUnit').AsString); + ADOQueryCmd.FieldByName('Price').Value := CDS_Main.fieldbyname('price').AsFloat; + ADOQueryCmd.FieldByName('money').Value := CDS_Main.fieldbyname('money').AsFloat; + ADOQueryCmd.FieldByName('rkPrice').Value := CDS_Main.fieldbyname('rkPrice').AsFloat; + ADOQueryCmd.FieldByName('note').Value := trim(CDS_Main.fieldbyname('note').AsString); + ADOQueryCmd.FieldByName('Filler').Value := trim(Filler); + ADOQueryCmd.FieldByName('FillTime').Value := dateTimetostr(FillTime); + ADOQueryCmd.FieldByName('inoutNo').Value := trim(inoutNo.Text); + // ADOQueryCmd.FieldByName('FirstNo').Value:=trim(FirstName.TxtCode); + // ADOQueryCmd.FieldByName('FirstName').Value:=trim(FirstName.Text); + + if i = 1 then + begin + ADOQueryCmd.FieldByName('defstr1').Value := 'CXXS'; + end + else if i = 2 then + begin + ADOQueryCmd.FieldByName('defstr1').Value := 'CXS'; + end + else if i = 3 then + begin + ADOQueryCmd.FieldByName('defstr1').Value := 'CS'; + end + else if i = 4 then + begin + ADOQueryCmd.FieldByName('defstr1').Value := 'CM'; + end + else if i = 5 then + begin + ADOQueryCmd.FieldByName('defstr1').Value := 'CL'; + end + else if i = 6 then + begin + ADOQueryCmd.FieldByName('defstr1').Value := 'CXL'; + end + else if i = 7 then + begin + ADOQueryCmd.FieldByName('defstr1').Value := 'AXS'; + end + else if i = 8 then + begin + ADOQueryCmd.FieldByName('defstr1').Value := 'AS'; + end + else if i = 9 then + begin + ADOQueryCmd.FieldByName('defstr1').Value := 'AM'; + end + else if i = 10 then + begin + ADOQueryCmd.FieldByName('defstr1').Value := 'AL'; + end + else if i = 11 then + begin + ADOQueryCmd.FieldByName('defstr1').Value := 'AXL'; + end + else if i = 12 then + begin + ADOQueryCmd.FieldByName('defstr1').Value := 'AXXL'; + end + else if i = 13 then + begin + ADOQueryCmd.FieldByName('defstr1').Value := 'CXXL'; + end + else if i = 14 then + begin + ADOQueryCmd.FieldByName('defstr1').Value := 'AXXXL'; + end + else if i = 15 then + begin + ADOQueryCmd.FieldByName('defstr1').Value := 'CXXXS'; + end; + + if FType = 1 then + begin + ADOQueryCmd.FieldByName('editer').Value := trim(dName); + ADOQueryCmd.FieldByName('editTime').Value := SGetServerDateTime(adoqueryTmp); + end; +// ADOQueryCmd.FieldByName('kcID').Value := FieldByName('kcID').AsInteger; + ADOQueryCmd.Post; + + with ADOQueryTmp do + begin + close; + sql.Clear; + sql.Add('select isnull(mainID,'''') as Mainid,isnull(subID,'''') as Subid,isnull(P_Code,'''') as P_Code,isnull(P_CodeName,'''') as P_CodeName,isnull(P_spec,'''') '); + sql.Add(',isnull(P_Color,'''') as P_Color,defstr1,isnull(P_MF,'''') as P_MF,isnull(P_KZ,'''') as P_KZ,RKprice, '); + sql.Add('SUM(CRFlagRate * RollNum ) as RollNum,'); + sql.Add('SUM(CRFlagRate * (Qty+zsQty)) as Qty,'); + sql.Add('CAST( P_KZ as varchar(10)) as P_KZ_s,'); + sql.Add(' SUM(CRFlagRate * (Qty+zsQty))*RKprice as money '); + sql.Add(',ISNULL(OrderNO,'''') as OrderNO'); + sql.Add(',isnull(DRCKNO ,'''') as DRCKNO ,isnull(DRCKName,'''') as DRCKName'); + sql.Add('from( '); + sql.Add('select RKprice=(select top 1 RKprice from CP_inout D where D.P_code=A.P_code order by D.RKprice desc), '); + SQL.Add('A.mainid,Subid,P_Code,P_CodeName,P_spec,P_MF,P_KZ,DRCKNO,DRCKName,RollNum,Qty,zsQty,P_color,DEFstr1, '); + sql.Add('case when CRFlag='''' then 1 else -1 end as CRFlagRate '); + sql.Add(',Orderno '); + sql.Add('from CP_inout A'); + sql.Add('left join JYOrder_main B on A.maiNID=B.Mainid '); + sql.Add('where a.Valid=''Y'' '); + sql.Add('and isnull(A.p_Codename,'''')=''' + CDS_Main.fieldbyname('p_Codename').AsString + ''' '); + sql.Add('and isnull(A.P_Code,'''')=''' + CDS_Main.fieldbyname('P_Code').AsString + ''' '); + sql.Add('and isnull(A.DRCKNO,'''')=''' + CDS_Main.fieldbyname('DRCKNO').AsString + ''' '); + sql.Add('and isnull(A.DRCKName,'''')=''' + CDS_Main.fieldbyname('DRCKName').AsString + ''' '); + sql.Add('and isnull(A.P_color,'''')=''' + CDS_Sub.fieldbyname('P_Color').AsString + ''' '); + sql.Add('and isnull(defstr1,'''')=(select defstr1 from CP_inout X where X.CRNO=''' + trim(fkeyNO) + ''' and X.CRID=''' + IntToStr(XHNO) + ''')'); + sql.Add(' )AA'); + sql.Add(' group by ISNULL(mainID,''''),ISNULL(subID,''''),isnull(P_Code,''''),isnull(P_CodeName,''''),ISNULL(P_spec,''''),isnull(P_MF,''''),isnull(P_KZ,''''),RKprice,ISNULL(OrderNO,'''') ,CAST( P_KZ as varchar(10)) '); + sql.Add(',isnull(DRCKNO ,'''') ,isnull(DRCKName,''''),isnull(P_Color,'''') ,defstr1 '); +// showmessage(sql.Text); + open; + end; + + if ((ADOQueryTmp.FieldByName('Qty').AsFloat) < 0) or (ADOQueryTmp.IsEmpty = True) then + begin +// application.MessageBox('ܴڿ', 'ʾϢ', 0); + Application.MessageBox(PChar(CDS_Sub.fieldbyname('P_Color').AsString + 'ܴڿ'), 'ʾ', 0); + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + exit; + end; + + XHNO := XHNO + 1; + end; + + i := i + 1; + end; + + Next; + end; + end; + + + +// if trim(CRType.Text) = '۳' then +// begin +// if not YSData() then +// begin +// ADOQueryCmd.Connection.RollbackTrans; +// exit; +// end; +// end; + next; + end; +// if trim(CRType.Text) = '۳' then +// begin +// if strtofloatdef(PackFee.Text, 0) <> 0 then +// begin +// if not YSData_other('', strtofloatdef(PackFee.Text, 0)) then +// begin +// ADOQueryCmd.Connection.RollbackTrans; +// exit; +// end; +// end; +// if strtofloatdef(YbFee.Text, 0) <> 0 then +// begin +// if not YSData_other('', strtofloatdef(YbFee.Text, 0)) then +// begin +// ADOQueryCmd.Connection.RollbackTrans; +// exit; +// end; +// end; +// if strtofloatdef(OtherFee.Text, 0) <> 0 then +// begin +// if not YSData_other('', strtofloatdef(otherFee.Text, 0)) then +// begin +// ADOQueryCmd.Connection.RollbackTrans; +// exit; +// end; +// end; +// if IsYjx.Checked then +// begin +// if not SKData() then +// begin +// ADOQueryCmd.Connection.RollbackTrans; +// exit; +// end; +// end; +// +// end; + + end; + CDS_Main.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + result := true; + except + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; + +procedure TfrmbpCk.InitGrid(); +begin + try + with adoqueryTmp do + begin +// close; +// sql.Clear; +// sql.Add('select A.*,'); +// sql.Add('orderNo=(select Top 1 orderNo from JYOrder_Main X where X.MainID=A.MainID )'); +// sql.Add('from CP_InOut A'); +// // sql.Add('left join JYOrder_sub B on B.mainID=A.mainID and B.subID=A.subID '); +// sql.Add('where A.CRNO=' + quotedstr(trim(fkeyNO))); +// open; + close; + sql.Clear; + sql.Add('select isnull(mainID,'''') as Mainid,isnull(subID,'''') as Subid,isnull(P_Code,'''') as P_Code,isnull(P_CodeName,'''') as P_CodeName,isnull(P_spec,'''') as P_spec '); + sql.Add(',isnull(P_MF,'''') as P_MF,isnull(P_KZ,'''') as P_KZ,RKprice,'); + sql.Add('SUM(RollNum ) as RollNum,'); + sql.Add('SUM((Qty+zsQty)) as Qty,'); + sql.Add('CAST( P_KZ as varchar(10)) as P_KZ_s,'); + sql.Add('SUM((Qty+zsQty))*RKprice as money'); + sql.Add(',ISNULL(OrderNO,'''') as OrderNO'); + sql.Add(',isnull(DRCKNO ,'''') as DRCKNO ,isnull(DRCKName,'''') as DRCKName,CRNO,InOutNo,CRTime,isnull(custName,'''') as custName,CRType,CKName,isnull(custNo,'''') as custNo,CPType '); + SQL.Add(',isnull(Note,'''') as Note,isnull(Price,0) as Price,FHAddress,LXFS,TocustName'); + sql.Add('from (select A.*,'); + sql.Add('orderNo=(select Top 1 orderNo from JYOrder_Main X where X.MainID=A.MainID )'); + sql.Add('from CP_InOut A'); + sql.Add('where CRNO=' + quotedstr(trim(fkeyNO))); + SQL.Add('and P_Code=' + quotedstr(trim(FCode))); + SQL.Add('and P_CodeName=' + quotedstr(trim(FCodeName))); +// SQL.Add('and DRCKNO=' + quotedstr(trim(FDRCKNO))); +// SQL.Add('and DRCKName=' + quotedstr(trim(FDRCKName))); + sql.Add(')AA'); + sql.Add('group by ISNULL(mainID,''''),ISNULL(subID,''''),isnull(P_Code,''''),isnull(P_CodeName,''''),ISNULL(P_spec,'''')'); + sql.Add(',isnull(P_MF,''''),isnull(P_KZ,''''),RKprice,ISNULL(OrderNO,'''') ,CAST( P_KZ as varchar(10))'); + sql.Add(',isnull(DRCKNO ,'''') ,isnull(DRCKName,''''),CRNO,InOutNo,CRTime,isnull(custName,''''),CRType,CKName,isnull(custNo,''''),CPType'); + sql.Add(',isnull(Note,''''),isnull(Price,0),FHAddress,LXFS,TocustName'); +// ShowMessage(SQL.text); + open; + end; + SCreateCDS20(adoqueryTmp, CDS_Main); + SInitCDSData20(adoqueryTmp, CDS_Main); + if not CDS_Main.IsEmpty then + begin + CRTime.Date := CDS_Main.fieldbyname('CRTime').AsDateTime; + CKName.ItemIndex := CKName.Items.IndexOf(trim(CDS_Main.fieldbyname('CKName').AsString)); + CRType.ItemIndex := CRType.Items.IndexOf(trim(CDS_Main.fieldbyname('CRType').AsString)); + InoutNO.Text := trim(CDS_Main.fieldbyname('InoutNO').AsString); + // orderNo.Text:=trim(CDS_Main.fieldbyname('orderNo').AsString); + // PRTCodeName.Text:=trim(CDS_Main.fieldbyname('PRTCodeName').AsString); + // PRTColor.Text:=trim(CDS_Main.fieldbyname('PRTColor').AsString); + custName.TxtCode := trim(CDS_Main.fieldbyname('custNo').AsString); + custName.Text := trim(CDS_Main.fieldbyname('custName').AsString); +// TocustName.TxtCode := trim(CDS_Main.fieldbyname('TocustNo').AsString); +// TocustName.Text := trim(CDS_Main.fieldbyname('TocustName').AsString); + FHAddress.Text := trim(CDS_Main.fieldbyname('FHAddress').AsString); + LXFS.Text := trim(CDS_Main.fieldbyname('LXFS').AsString); +// IStax.Checked := CDS_Main.FieldByName('IsTax').AsBoolean; +// if CDS_Main.fieldbyname('IsYjx').AsString = '' then +// begin +// IsYjx.Checked := true; +// Yjxdate.Date := CDS_Main.FieldByName('Yjxdate').AsDateTime; +// end +// else +// IsYjx.Checked := false; +// YjxYG.Text := trim(CDS_Main.FieldByName('YjxYG').AsString); +// PackFee.Value := CDS_Main.FieldByName('PackFee').AsFloat; +// YbFee.Value := CDS_Main.FieldByName('YbFee').AsFloat; +// otherFee.Value := CDS_Main.FieldByName('otherFee').AsFloat; +// XjNum.Value := CDS_Main.FieldByName('XjNum').AsFloat; +// ToolButton1.Click; + Initsub_1(); + end + else + ToolButton1.Click; + finally + end; + Initsub(); +end; + +procedure TfrmbpCk.FormDestroy(Sender: TObject); +begin + frmbpCk := nil; +end; + +procedure TfrmbpCk.FormCreate(Sender: TObject); +begin + CRTime.Date := DServerDate; + panel3.Align := alclient; + Yjxdate.Date := DServerDate; +end; + +procedure TfrmbpCk.FormClose(Sender: TObject; var Action: TCloseAction); +begin + writeCxGrid(self.Caption + tv1.Name + '2', Tv1, 'Ʒֿ'); + Action := cahide; +end; + +procedure TfrmbpCk.FormShow(Sender: TObject); +begin + readCxGrid(self.Caption + tv1.Name + '2', Tv1, 'Ʒֿ'); + SetComboBox(); + InitGrid(); + if fType = 0 then + begin + if GetLSNo(ADOQueryCmd, fkeyNo, 'CK', 'CP_InOut', 3, 1) = False then + begin + // ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!', 'ʾ', 0); + Exit; + end; + inoutNo.Text := 'C' + Trim(RightBStr(fkeyNo, Length(fkeyNo) - 2)); + end; +end; + +procedure TfrmbpCk.TBSaveClick(Sender: TObject); +begin + if cds_main.IsEmpty then + exit; + CRTime.SetFocus; + if trim(CRType.Text) = '' then + begin + application.MessageBox('ͲΪգ', 'ʾϢ', 0); + exit; + end; + if trim(CRType.Text) = '۳' then + begin + if trim(custName.Text) = '' then + begin + application.MessageBox('ͻΪգ', 'ʾϢ', 0); + exit; + end; + end; + + if IsYjx.Checked then + begin + if trim(YjxYG.Text) = '' then + begin + application.MessageBox('տ˲Ϊգ', 'ʾϢ', 0); + exit; + end; + end; + if (trim(CRType.Text) = 'Ʒ') and (trim(orderNO.Text) = '') then + begin + application.MessageBox('ϢΪգ', 'ʾϢ', 0); + exit; + end; + +// if cds_main.Locate('QtyUnit','',[]) then +// begin +// application.MessageBox('λΪգ','ʾϢ',0); +// exit; +// end; +// if cds_main.Locate('QtyUnit',NULL,[]) then +// begin +// application.MessageBox('λΪգ','ʾϢ',0); +// exit; +// end; + + if savedate() then + begin + application.MessageBox('ݱɹ', 'ʾϢ'); + ModalResult := 1; + end + else + begin + application.MessageBox('ݱʧܣ', 'ʾϢ', MB_ICONERROR); + end; +end; + +procedure TfrmbpCk.v1P_CodeNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'Cloth'; + flagname := ''; + if ShowModal = 1 then + begin + Self.CDS_Main.Edit; + Self.CDS_Main.FieldByName('P_CodeName').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.CDS_Main.FieldByName('P_Code').Value := Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmbpCk.ToolButton1Click(Sender: TObject); +var + FMJID: string; +begin + frmBpkclist := TfrmBpkclist.create(self); + with frmBpkclist do + begin + fType := 10; + fckName := self.fckName; + if showmodal = 1 then + begin +// cds_main.DisableControls; +// cds_main.First; +// while not cds_main.Eof do +// begin +// if (cds_main.fieldbyname('ssel').AsBoolean) then +// begin +// if GetLSNo(self.ADOQueryCmd, FMJID, 'MJ', 'CP_InOut_MX', 3, 1) = False then +// begin +// // ADOQueryCmd.Connection.RollbackTrans; +// Application.MessageBox('ȡʧ!', 'ʾ', 0); +// Exit; +// end; + self.cds_main.Append; +// self.cds_main.FieldByName('kcid').Value:=trim(cds_main.fieldbyname('kcid').AsString); + self.cds_main.FieldByName('orderNo').Value := trim(cds_main.fieldbyname('orderNo').AsString); + self.cds_main.FieldByName('mainID').Value := trim(cds_main.fieldbyname('mainID').AsString); + self.cds_main.FieldByName('subID').Value := trim(cds_main.fieldbyname('subID').AsString); +// self.cds_main.FieldByName('MJID').Value := trim(FMJID); + // self.cds_main.FieldByName('MJXH').Value:=trim(cds_main.fieldbyname('MJXH').AsString); + // self.cds_main.FieldByName('CPTYPE').Value:=trim(cds_main.fieldbyname('CPTYPE').AsString); + // self.cds_main.FieldByName('TocustName').Value:=trim(cds_main.fieldbyname('custName').AsString); + // self.cds_main.FieldByName('batchNo').Value:=trim(cds_main.fieldbyname('batchNo').AsString); + self.cds_main.FieldByName('P_Code').Value := trim(cds_main.fieldbyname('P_Code').AsString); +// self.cds_main.FieldByName('defstr1').Value := trim(cds_main.fieldbyname('defstr1').AsString); + self.cds_main.FieldByName('P_CodeName').Value := trim(cds_main.fieldbyname('P_CodeName').AsString); +// self.cds_main.FieldByName('P_spec').Value := trim(cds_main.fieldbyname('P_spec').AsString); +// self.cds_main.FieldByName('P_Color').Value := trim(cds_main.fieldbyname('P_Color').AsString); +// self.cds_main.FieldByName('P_ColorNo').Value := trim(cds_main.fieldbyname('P_ColorNo').AsString); +// self.cds_main.FieldByName('P_MF').Value := cds_main.fieldbyname('P_MF').AsFloat; +// self.cds_main.FieldByName('P_KZ').Value := cds_main.fieldbyname('P_KZ').AsFloat; +// self.cds_main.FieldByName('RollNum').Value := cds_main.fieldbyname('RollNum').AsFloat; + self.cds_main.FieldByName('Qty').Value := cds_main.fieldbyname('Qty').AsFloat; +// self.cds_main.FieldByName('QtyUnit').Value := trim(cds_main.fieldbyname('QtyUnit').AsString); + self.cds_main.FieldByName('price').Value := cds_main.fieldbyname('rkprice').AsFloat; + self.cds_main.FieldByName('rkprice').Value := cds_main.fieldbyname('rkprice').AsFloat; + self.cds_main.FieldByName('money').Value := cds_main.fieldbyname('money').AsFloat; + + self.cds_main.FieldByName('DRCKNO').Value := trim(cds_main.fieldbyname('DRCKNO').AsString); + self.cds_main.FieldByName('DRCKName').Value := trim(cds_main.fieldbyname('DRCKName').AsString); + self.cds_main.Post; + + try + with self.adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('exec P_Get_CP_KC_MX ''' + Cds_main.fieldbyname('P_CodeName').AsString + ''' ,''' + Cds_main.fieldbyname('P_Code').AsString + ''' '); + sql.Add(',''' + Cds_main.fieldbyname('DRCKNO').AsString + ''' ,''' + Cds_main.fieldbyname('DRCKName').AsString + ''''); +// ShowMessage(sql.Text); + open; + end; + SCreateCDS20(self.adoqueryTmp, Self.CDS_Sub); +// SInitCDSData20(self.adoqueryTmp, Self.CDS_Sub); + with self.adoqueryTmp do + begin + First; + while not Eof do + begin + with Self.CDS_Sub do + begin + Append; + FieldByName('P_Color').Value := trim(self.adoqueryTmp.fieldbyname('P_Color').AsString); + Post; + end; + Next; + end; + + end; + + finally + + end; +// end; +// cds_main.Next; +// end; +// cds_main.EnableControls; + end; + free; + end; +// Initsub(); + + +end; + +procedure TfrmbpCk.ToolButton2Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then + exit; + CDS_Main.Delete; + getxjNum(); +end; + +procedure TfrmbpCk.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmbpCk.ToCustNameBtnClick(Sender: TObject); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'CustomerNoName'; + flagname := 'ͻ'; + if ShowModal = 1 then + begin + ToCustName.Text := Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + ToCustName.TxtCode := Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmbpCk.orderNOBtnClick(Sender: TObject); +begin + { frmProductOrderNewList:=TfrmProductOrderNewList.Create(Application); + with frmProductOrderNewList do + begin + DParameters1:='Ȩ'; + if showmodal=1 then + begin + self.fmainID:=trim(Order_Main.fieldbyname('MainID').AsString); + self.fsubID:=trim(Order_Main.fieldbyname('subID').AsString); + self.orderNo.Text:=trim(Order_Main.fieldbyname('orderNo').AsString); + self.PRTCodeName.Text:=trim(Order_Main.fieldbyname('PRTCodeName').AsString); + self.PRTColor.Text:=trim(Order_Main.fieldbyname('PRTColor').AsString); + end; + free; + end; } +end; + +procedure TfrmbpCk.custNameBtnClick(Sender: TObject); +begin + try + frmZdyAttachment := TfrmZdyAttachment.Create(Application); + with frmZdyAttachment do + begin + if ShowModal = 1 then + begin + custName.Text := Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + custName.TxtCode := Trim(CDS_HZ.fieldbyname('ZdyCode').AsString); + FHAddress.Text := Trim(CDS_HZ.fieldbyname('DEFNote2').AsString); + LXFS.Text := Trim(CDS_HZ.fieldbyname('DEFstr1').AsString) + ' ' + Trim(CDS_HZ.fieldbyname('DEFstr2').AsString); + end; + end; + finally + frmZdyAttachment.Free; + end; +end; + +procedure TfrmbpCk.ToolButton3Click(Sender: TObject); +begin + Panel2.Visible := true; +end; + +procedure TfrmbpCk.Edit1KeyPress(Sender: TObject; var Key: Char); +begin + if Key = #13 then + begin + if CDS_Main.IsEmpty then + exit; + if trim(edit1.Text) = '' then + exit; + if CDS_Main.Locate('MJID', trim(edit1.Text), []) then + begin + CDS_Main.Delete; + Label11.Caption := ':' + trim(edit1.Text) + 'ɾɹ'; + end + else + begin + Label11.Caption := ':' + trim(edit1.Text) + 'ɾʧܣ'; + end; + + edit1.Text := ''; + end; +end; + +procedure TfrmbpCk.Panel2DblClick(Sender: TObject); +begin + Panel2.Visible := false; +end; + +procedure TfrmbpCk.v1QtyPropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_Main do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + FieldbyName('Money').Value := format('%.2f', [FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat]); + Post; + end; + tv1.Controller.EditingController.ShowEdit(); + GetxjNum(); +end; + +procedure TfrmbpCk.Tv1CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + Initsub(); +end; + +procedure TfrmbpCk.QtyMXKeyPress(Sender: TObject; var Key: Char); +var + fMJXH: string; + fRollNum: integer; + fQty, fzsQty: double; +begin + if Key = #13 then + begin + if strtofloatdef(QtyMX.Text, 0) = 0 then + exit; + + if GetLSNo(self.ADOQueryCmd, fMJXH, 'MX', 'CP_InOut_MX', 4, 1) = False then + begin + // ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!', 'ʾ', 0); + Exit; + end; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from CP_InOut_MX A'); + sql.Add('where 1=2'); + open; + append; + Fieldbyname('MJID').Value := trim(CDS_Main.fieldbyname('MJID').AsString); + Fieldbyname('MJXH').Value := fMJXH; + Fieldbyname('RollNUm').Value := 1; + Fieldbyname('Qty').Value := strtofloatdef(QtyMX.Text, 0) - strtofloatdef(zsQtyMX.Text, 0); + Fieldbyname('zsQty').Value := strtofloatdef(zsQtyMX.Text, 0); + Fieldbyname('Qtyunit').Value := trim(CDS_Main.fieldbyname('Qtyunit').AsString); + post; + end; + + with CDS_sub do + begin + append; + Fieldbyname('Qty').Value := strtofloatdef(QtyMX.Text, 0) - strtofloatdef(zsQtyMX.Text, 0); + Fieldbyname('zsQty').Value := strtofloatdef(zsQtyMX.Text, 0); + post; + end; + if varisnull(tv2.DataController.Summary.FooterSummaryValues[0]) then + begin + fRollNum := 0; + fQty := 0; + fzsQty := 0; + end + else + begin + fRollNum := CDS_Sub.RecordCount; + fQty := tv2.DataController.Summary.FooterSummaryValues[0]; + fzsQty := tv2.DataController.Summary.FooterSummaryValues[1]; + end; + with CDS_Main do + begin + EDIT; + FieldByName('RollNum').Value := fRollNum; + Fieldbyname('Qty').Value := fQty; + Fieldbyname('zsQty').Value := fzsQty; + FieldbyName('Money').Value := format('%.2f', [FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat]); + post; + end; + QtyMX.Text := ''; + // zsQtyMX.Text:=''; + QtyMX.SetFocus; + except + end; + end; +end; + +procedure TfrmbpCk.Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +var + FROLLnUM: INTEGER; + FQTY: double; + fzsQty: double; +begin + if CDS_Sub.IsEmpty then + exit; + if Application.MessageBox('ȷҪɾƥ', 'ʾ', 32 + 4) <> IDYES then + Exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from CP_InOut_MX '); + sql.Add('where MJXH=' + quotedstr(trim(CDS_Sub.fieldbyname('MJXH').AsString))); + + sql.Add('update CP_InOut SET RollNum=(select count(MJXH) from CP_InOut_MX X where X.MJID=CP_InOut.MJID) '); + sql.Add(',Qty=(select sum(Qty) from CP_InOut_MX X where X.MJID=CP_InOut.MJID) '); + sql.Add(',ZsQty=(select sum(ZsQty) from CP_InOut_MX X where X.MJID=CP_InOut.MJID) '); + sql.Add('where MJID=' + quotedstr(trim(CDS_Sub.fieldbyname('MJID').AsString))); + sql.Add('and CRFLag='''' '); + execsql; + end; + Initsub(); + if varisnull(tv2.DataController.Summary.FooterSummaryValues[0]) then + begin + FROLLnUM := 0; + FQTY := 0; + fzsQty := 0; + end + else + begin + FROLLnUM := CDS_Sub.RecordCount; + FQTY := tv2.DataController.Summary.FooterSummaryValues[0]; + fzsQty := tv2.DataController.Summary.FooterSummaryValues[1]; + end; + with CDS_Main do + begin + EDIT; + FieldByName('RollNum').Value := FROLLnUM; + Fieldbyname('Qty').Value := FQTY; + Fieldbyname('ZsQty').Value := fzsQty; + FieldbyName('Money').Value := format('%.2f', [FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat]); + post; + end; + except + application.MessageBox('ɾʧ', 'ʾϢ', 0) + end; +end; + +procedure TfrmbpCk.YjxYGBtnClick(Sender: TObject); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'YjxYGFlag'; + flagname := 'տ'; + if ShowModal = 1 then + begin + YjxYG.Text := Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmbpCk.PackFeePropertiesChange(Sender: TObject); +begin + GetxjNum(); +end; + +procedure TfrmbpCk.FHAddressBtnUpClick(Sender: TObject); +begin + if Trim(custName.Text) = '' then + begin + Application.MessageBox('ͻΪ!', 'ʾ', 0); + Exit; + end; + try + frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag := 'FHAddress'; + flagname := 'ַ'; + MainType := Trim(custName.Text); + if ShowModal = 1 then + begin + FHAddress.Text := Trim(ReturnStr); + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmbpCk.LXFSBtnUpClick(Sender: TObject); +begin + if Trim(custName.Text) = '' then + begin + Application.MessageBox('ͻΪ!', 'ʾ', 0); + Exit; + end; + try + frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag := 'LXFS'; + flagname := 'ϵʽ'; + MainType := Trim(custName.Text); + if ShowModal = 1 then + begin + LXFS.Text := Trim(ReturnStr); + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmbpCk.FHAddressBtnDnClick(Sender: TObject); +begin + TBtnEditC(Sender).Text := ''; + TBtnEditC(Sender).TxtCode := ''; +end; + +procedure TfrmbpCk.Tv2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +var + FROLLnUM: INTEGER; + FQTY: double; + fzsQty: double; +begin + if Button = mbRight then + begin + if CDS_Sub.IsEmpty then + exit; + if Application.MessageBox('ȷҪɾƥ', 'ʾ', 32 + 4) <> IDYES then + Exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from CP_InOut_MX '); + sql.Add('where MJXH=' + quotedstr(trim(CDS_Sub.fieldbyname('MJXH').AsString))); + + sql.Add('update CP_InOut SET RollNum=(select count(MJXH) from CP_InOut_MX X where X.MJID=CP_InOut.MJID) '); + sql.Add(',Qty=(select sum(Qty) from CP_InOut_MX X where X.MJID=CP_InOut.MJID) '); + sql.Add(',zsQty=(select sum(zsQty) from CP_InOut_MX X where X.MJID=CP_InOut.MJID) '); + sql.Add('where MJID=' + quotedstr(trim(CDS_Sub.fieldbyname('MJID').AsString))); + sql.Add('and CRFlag='''''); + + execsql; + end; + Initsub(); + if varisnull(tv2.DataController.Summary.FooterSummaryValues[0]) then + begin + FROLLnUM := 0; + FQTY := 0; + fzsQty := 0; + end + else + begin + FROLLnUM := CDS_Sub.RecordCount; + FQTY := tv2.DataController.Summary.FooterSummaryValues[0]; + fzsQty := tv2.DataController.Summary.FooterSummaryValues[1]; + end; + with CDS_Main do + begin + EDIT; + FieldByName('RollNum').Value := FROLLnUM; + Fieldbyname('Qty').Value := FQTY; + Fieldbyname('zsQty').Value := fzsQty; + FieldbyName('Money').Value := format('%.3f', [FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat]); + post; + end; + except + application.MessageBox('ɾʧ', 'ʾϢ', 0) + end; + end; +end; + +procedure TfrmbpCk.ToolButton4Click(Sender: TObject); +begin + with CDS_Sub do + begin + append; + post; + end; +end; + +procedure TfrmbpCk.ToolButton5Click(Sender: TObject); +begin + if CDS_Sub.IsEmpty then + exit; + CDS_Sub.Delete; +end; + +procedure TfrmbpCk.TV2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; + Qty1, Qty2, Qty3, Qty4, Qty5, Qty6, Qty7, Qty8, Qty9, Qty10, Qty11, Qty12, Qty13, Qty14, Qty15, ZQty, a: Integer; + Fprice, Fmoney: Double; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName); + + with CDS_Sub do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + + Qty1 := StrToIntDef(CDS_Sub.fieldbyname('Size1').asstring, 0); + Qty2 := StrToIntDef(CDS_Sub.fieldbyname('Size2').asstring, 0); + Qty3 := StrToIntDef(CDS_Sub.fieldbyname('Size3').asstring, 0); + Qty4 := StrToIntDef(CDS_Sub.fieldbyname('Size4').asstring, 0); + Qty5 := StrToIntDef(CDS_Sub.fieldbyname('Size5').asstring, 0); + Qty6 := StrToIntDef(CDS_Sub.fieldbyname('Size6').asstring, 0); + Qty7 := StrToIntDef(CDS_Sub.fieldbyname('Size7').asstring, 0); + Qty8 := StrToIntDef(CDS_Sub.fieldbyname('Size8').asstring, 0); + Qty9 := StrToIntDef(CDS_Sub.fieldbyname('Size9').asstring, 0); + Qty10 := StrToIntDef(CDS_Sub.fieldbyname('Size10').asstring, 0); + Qty11 := StrToIntDef(CDS_Sub.fieldbyname('Size11').asstring, 0); + Qty12 := StrToIntDef(CDS_Sub.fieldbyname('Size12').asstring, 0); + Qty13 := StrToIntDef(CDS_Sub.fieldbyname('Size13').asstring, 0); + Qty14 := StrToIntDef(CDS_Sub.fieldbyname('Size14').asstring, 0); + Qty15 := StrToIntDef(CDS_Sub.fieldbyname('Size15').asstring, 0); + ZQty := Qty1 + Qty2 + Qty3 + Qty4 + Qty5 + Qty6 + Qty7 + Qty8 + Qty9 + Qty10 + Qty11 + Qty12 + Qty13 + Qty14 + Qty15; + + with CDS_Sub do + begin + Edit; + FieldByName('ZQty').Value := ZQty; + Post; + end; + + tv3.Controller.EditingController.ShowEdit(); +// CDS_Main.FieldByName('Qty').Value + a := TV3.DataController.Summary.FooterSummaryValues[15]; + + CDS_Main.Edit; + CDS_Main.FieldByName('Qty').Value := a; + CDS_Main.post; + + Fprice := StrToIntDef(CDS_Main.fieldbyname('Price').asstring, 0); + + Fmoney := Fprice * a; + + with CDS_Main do + begin + Edit; + FieldByName('Money').Value := Fmoney; + Post; + end; +end; + +end. + diff --git a/成品仓库/U_BpJylist.dfm b/成品仓库/U_BpJylist.dfm new file mode 100644 index 0000000..b8dcc7e --- /dev/null +++ b/成品仓库/U_BpJylist.dfm @@ -0,0 +1,517 @@ +object frmBpJylist: TfrmBpJylist + Left = 172 + Top = 168 + Width = 956 + Height = 500 + Caption = #24067#21305#20449#24687#34920 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 940 + AutoSize = True + 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 = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#35810 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TOk: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #30830#23450 + ImageIndex = 41 + Visible = False + OnClick = TOkClick + end + object TBExport: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 940 + Height = 61 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #26816#39564#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 64 + Top = 40 + Width = 13 + Height = 12 + Caption = #33267 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 328 + Top = 40 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 552 + Top = 16 + Width = 52 + Height = 12 + Caption = #35268#26684#22411#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 120 + Top = 80 + Width = 52 + Height = 12 + Caption = #20837#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 288 + Top = 72 + Width = 24 + Height = 12 + Caption = #20179#24211 + end + object Label7: TLabel + Left = 328 + Top = 16 + Width = 47 + Height = 12 + Caption = #21697' '#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 100 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + ShowCheckbox = True + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 100 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + ShowCheckbox = True + TabOrder = 1 + end + object MJstr7: TEdit + Tag = 2 + Left = 384 + Top = 35 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = MJstr7Change + end + object MPrtSpec: TEdit + Tag = 2 + Left = 612 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = MJstr7Change + end + object CRType: TComboBox + Tag = 2 + Left = 176 + Top = 76 + Width = 120 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 4 + OnChange = MJstr7Change + Items.Strings = ( + '' + #29983#20135#20837#24211) + end + object CheckBox1: TCheckBox + Left = 564 + Top = 88 + Width = 97 + Height = 17 + Caption = #21547#24211#23384#20026#38646 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + end + object ckName: TComboBox + Left = 320 + Top = 68 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 6 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object MPrtCode: TEdit + Tag = 2 + Left = 384 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 7 + OnChange = MJstr7Change + end + object begTime: TDateTimePicker + Left = 172 + Top = 11 + Width = 55 + Height = 20 + Date = 41583.333333333340000000 + Format = 'HH:mm' + Time = 41583.333333333340000000 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Kind = dtkTime + ParentFont = False + TabOrder = 8 + end + object endTime: TDateTimePicker + Left = 172 + Top = 35 + Width = 55 + Height = 20 + Date = 41583.333333333340000000 + Format = 'HH:mm' + Time = 41583.333333333340000000 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Kind = dtkTime + ParentFont = False + TabOrder = 9 + end + object CheckBox2: TCheckBox + Left = 556 + Top = 40 + Width = 97 + Height = 17 + Caption = #20840#36873 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 10 + OnClick = CheckBox2Click + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 93 + Width = 940 + Height = 316 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1RollNum + end + item + Kind = skSum + Column = v1Qty + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object v1Ssel: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'Ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + end + object v1CRTime: TcxGridDBColumn + Caption = #26816#39564#26085#26399 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1MJID: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1MJXH: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1P_Code: TcxGridDBColumn + Caption = #21697#21495 + DataBinding.FieldName = 'MPrtCode' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'MJstr7' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1P_SPEC: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'MPrtSpec' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 90 + end + object v1P_Color: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1P_MF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'P_MF' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1P_KZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'P_KZ' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1CPType: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'MJType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1RollNum: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'RollNum' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 59 + end + object v1Qty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'MJlen' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 59 + end + object v1QtyUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'Mjstr1' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOQueryCmd: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 680 + Top = 8 + end + object ADOQueryTmp: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 536 + Top = 4 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 576 + Top = 1 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 612 + Top = 5 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 504 + Top = 12 + end +end diff --git a/成品仓库/U_BpJylist.pas b/成品仓库/U_BpJylist.pas new file mode 100644 index 0000000..2b01184 --- /dev/null +++ b/成品仓库/U_BpJylist.pas @@ -0,0 +1,250 @@ +unit U_BpJylist; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, + cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, DBClient, ADODB, cxGridCustomPopupMenu, + cxGridPopupMenu, cxCheckBox; + +type + TfrmBpJylist = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1P_SPEC: TcxGridDBColumn; + v1P_MF: TcxGridDBColumn; + v1P_KZ: TcxGridDBColumn; + v1RollNum: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1QtyUnit: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1CRTime: TcxGridDBColumn; + Label2: TLabel; + Label3: TLabel; + Label4: TLabel; + MJstr7: TEdit; + MPrtSpec: TEdit; + CRType: TComboBox; + Label5: TLabel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + TOk: TToolButton; + v1Ssel: TcxGridDBColumn; + CheckBox1: TCheckBox; + v1MJID: TcxGridDBColumn; + v1MJXH: TcxGridDBColumn; + v1CPType: TcxGridDBColumn; + ckName: TComboBox; + Label6: TLabel; + v1P_Color: TcxGridDBColumn; + v1P_Code: TcxGridDBColumn; + Label7: TLabel; + MPrtCode: TEdit; + begTime: TDateTimePicker; + endTime: TDateTimePicker; + CheckBox2: TCheckBox; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure MJstr7Change(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TOkClick(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + private + procedure InitGrid(); + procedure SetComboBox(); + { Private declarations } + public + fType:integer; + fCKName:string; + + { Public declarations } + end; + +var + frmBpJylist: TfrmBpJylist; + +implementation +uses + U_DataLink,U_Fun10,U_ZDYHelp, U_BpRk; +{$R *.dfm} +procedure TfrmBpJylist.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPCK'' '); + if trim(fCKName)<>'' then + sql.Add('and zdyName='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count>0 then ckName.ItemIndex:=0; + + CRType.Items.Clear; + CRType.Items.Add(''); + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPRKTYPE'''); + if trim(fCKName)<>'' then + sql.Add('and note='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count>0 then CRType.ItemIndex:=0; +end; +procedure TfrmBpJylist.InitGrid(); +var + mBegdate,mEnddate:string; +begin + mbegdate:=FormatDateTime('yyyy-MM-dd',begdate.Date)+' '+FormatDateTime('HH:nn',begTime.Time); + menddate:=FormatDateTime('yyyy-MM-dd',enddate.Date)+' '+FormatDateTime('HH:nn',endTime.Time); + try + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select A.*,B.MPrtCode,MPrtCodeName=A.MJStr7,B.MPrtSpec from WFB_MJJY A'); + sql.Add('INNER JOIN JYOrder_main B on B.MainID=A.mainID '); + sql.Add('where A.MJstr2=''δ'''); + if begdate.Checked then + sql.Add('and A.FillTime>='''+trim(mbegdate)+''' '); + if enddate.Checked then + sql.Add('and A.FillTime<'''+trim(menddate)+''' '); + if not CheckBox1.Checked then + // sql.Add('and (RollNum<>0 or qty<>0 ) '); +{ if trim(FckName)<>'' then + sql.Add('and ckName='+quotedstr(trim(FckName)) ); } + open; + end; + SCreateCDS20(adoqueryTmp,CDS_Main); + SInitCDSData20(adoqueryTmp,CDS_Main); + finally + end; +end; + +procedure TfrmBpJylist.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + writeCxGrid(self.Caption,Tv1,'Ʒֿ'); + if fType=10 then Action:=cahide + else Action:=cafree; +end; + +procedure TfrmBpJylist.FormDestroy(Sender: TObject); +begin + frmBpJylist:=nil; +end; + +procedure TfrmBpJylist.MJstr7Change(Sender: TObject); +begin + if ADOQueryTmp.Active=False then Exit; + SDofilter(ADOQueryTmp,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryTmp,CDS_Main); + SInitCDSData20(ADOQueryTmp,CDS_Main); +end; + +procedure TfrmBpJylist.FormShow(Sender: TObject); +begin + if fType=10 then + begin + TOk.Visible:=true; + v1Ssel.Visible:=true; + end; + TOk.Visible:=true; + v1Ssel.Visible:=true; + readCxGrid(self.Caption,Tv1,'Ʒֿ'); + SetComboBox(); + InitGrid(); +end; + +procedure TfrmBpJylist.FormCreate(Sender: TObject); +begin + BegDate.Date:=DServerDate-7; + EndDate.Date:=DServerDate; + cxGrid1.Align:=alclient; + +end; + +procedure TfrmBpJylist.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmBpJylist.TBRafreshClick(Sender: TObject); +begin + + initGrid(); +end; + +procedure TfrmBpJylist.TBPrintClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid1); +end; + +procedure TfrmBpJylist.TBExportClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid1); +end; + +procedure TfrmBpJylist.TOkClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + ModalResult:=1; +end; + +procedure TfrmBpJylist.CheckBox2Click(Sender: TObject); +begin + with CDS_Main do + begin + DisableControls; + First; + while not eof do + begin + edit; + fieldbyname('Ssel').Value:=checkbox2.Checked; + post; + next; + end; + First; + EnableControls; + end; +end; + +end. diff --git a/成品仓库/U_BpRk.dfm b/成品仓库/U_BpRk.dfm new file mode 100644 index 0000000..dd4d5ff --- /dev/null +++ b/成品仓库/U_BpRk.dfm @@ -0,0 +1,884 @@ +object frmbpRk: TfrmbpRk + Left = 343 + Top = 489 + Width = 1381 + Height = 660 + Caption = #20837#24211#20449#24687 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1365 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 29 + Width = 1365 + Height = 56 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 36 + Top = 20 + Width = 48 + Height = 12 + Caption = #20837#24211#26085#26399 + end + object Label2: TLabel + Left = 540 + Top = 20 + Width = 48 + Height = 12 + Caption = #20837#24211#31867#22411 + end + object Label3: TLabel + Left = 384 + Top = 20 + Width = 24 + Height = 12 + Caption = #20179#24211 + end + object Label8: TLabel + Left = 216 + Top = 20 + Width = 48 + Height = 12 + Caption = #20837#24211#21333#21495 + end + object Label4: TLabel + Left = 724 + Top = 20 + Width = 66 + Height = 12 + Caption = #21152#24037#21378'/'#23458#25143 + end + object Label17: TLabel + Left = 1096 + Top = 22 + Width = 60 + Height = 14 + Caption = #27599#21305#25968#37327 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label14: TLabel + Left = 32 + Top = 84 + Width = 48 + Height = 12 + Caption = #25171' '#21253' '#36153 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object CRTime: TDateTimePicker + Left = 88 + Top = 16 + Width = 100 + Height = 20 + Date = 41509.970132187500000000 + Format = 'yyyy-MM-dd' + Time = 41509.970132187500000000 + TabOrder = 0 + end + object CRType: TComboBox + Left = 592 + Top = 16 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 1 + Text = #29983#20135#20837#24211 + Items.Strings = ( + #29983#20135#20837#24211) + end + object ckName: TComboBox + Left = 416 + Top = 16 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 2 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object InoutNo: TEdit + Left = 264 + Top = 16 + Width = 100 + Height = 20 + TabOrder = 3 + end + object custName: TBtnEditA + Left = 796 + Top = 16 + Width = 101 + Height = 20 + ReadOnly = True + TabOrder = 4 + OnBtnClick = custNameBtnClick + end + object QtyMX: TEdit + Left = 1156 + Top = 18 + Width = 65 + Height = 22 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + OnKeyPress = QtyMXKeyPress + end + object PackFee: TcxCurrencyEdit + Left = 84 + Top = 80 + Properties.DisplayFormat = '0.##' + TabOrder = 6 + Width = 100 + end + object CheckBox1: TCheckBox + Left = 927 + Top = 19 + Width = 61 + Height = 17 + Caption = #35009#21098 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + end + object CheckBox2: TCheckBox + Left = 1008 + Top = 17 + Width = 61 + Height = 21 + Caption = #32541#32427 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 85 + Width = 1365 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 2 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + object ToolButton5: TToolButton + Left = 126 + Top = 0 + Caption = #36873#25321#35746#21333 + ImageIndex = 108 + OnClick = ToolButton5Click + end + end + object Panel2: TPanel + Left = 0 + Top = 114 + Width = 1365 + Height = 267 + Align = alClient + Caption = 'Panel2' + TabOrder = 3 + object cxGrid1: TcxGrid + Left = 1 + Top = 1 + Width = 1154 + Height = 265 + Align = alClient + TabOrder = 0 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + OnCellClick = Tv1CellClick + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = v1Qty + end + item + Kind = skSum + Column = v1Money + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column5PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1Column2: TcxGridDBColumn + Caption = #21152#24037#21333#21495 + DataBinding.FieldName = 'fromMainID' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v1Column2PropertiesButtonClick + Visible = False + HeaderAlignmentHorz = taCenter + VisibleForCustomization = False + Width = 90 + end + object v1MJXH: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 50 + end + object v1MJId: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJId' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 80 + end + object v1P_Code: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'P_Code' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1P_CodePropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 79 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1P_CodePropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 90 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'P_SPEC' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 90 + end + object Tv1Column4: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object Tv1Column5: TcxGridDBColumn + Caption = #39068#33394#33521#25991 + DataBinding.FieldName = 'P_Ecolor' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column1: TcxGridDBColumn + Caption = #25209#27425 + DataBinding.FieldName = 'batchNo' + Visible = False + HeaderAlignmentHorz = taCenter + VisibleForCustomization = False + Width = 70 + end + object v1Column3: TcxGridDBColumn + Caption = #23610#23544'/'#23610#30721 + DataBinding.FieldName = 'defstr1' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v1Column4: TcxGridDBColumn + Caption = #24037#21345#21495 + DataBinding.FieldName = 'defstr2' + Visible = False + HeaderAlignmentHorz = taCenter + VisibleForCustomization = False + Width = 60 + end + object v1Qty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'qty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 86 + end + object v1Price: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1PricePropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 43 + end + object v1Money: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'Money' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Styles.Content = CPCK_DataLink.cxStyle_fontclFuchsia + Styles.Footer = CPCK_DataLink.cxStyle_fontclFuchsia + Styles.Header = CPCK_DataLink.cxStyle_fontclFuchsia + Width = 52 + end + object v1Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 94 + end + object Tv1Column2: TcxGridDBColumn + Caption = #20179#24211#32534#21495 + DataBinding.FieldName = 'DRCKNO' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column3: TcxGridDBColumn + Caption = #20179#24211#21517#31216 + DataBinding.FieldName = 'DRCKName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = Tv1Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1CPType: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'CPType' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsEditFixedList + Properties.Items.Strings = ( + #27491#21697 + #27425#21697) + Properties.ReadOnly = False + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 63 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGrid2: TcxGrid + Left = 1155 + Top = 1 + Width = 209 + Height = 265 + Align = alRight + TabOrder = 1 + Visible = False + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + OnCellDblClick = Tv2CellDblClick + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column2 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object v2Column2: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 102 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + end + object cxGrid3: TcxGrid + Left = 0 + Top = 410 + Width = 1365 + Height = 211 + Align = alBottom + TabOrder = 4 + Visible = False + object TV3: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = TV2Column2 + end + item + Kind = skSum + Column = TV2Column3 + end + item + Kind = skSum + Column = TV2Column4 + end + item + Kind = skSum + Column = TV2Column5 + end + item + Kind = skSum + Column = TV2Column6 + end + item + Kind = skSum + Column = TV2Column7 + end + item + Kind = skSum + Column = TV2Column8 + end + item + Kind = skSum + Column = TV2Column9 + end + item + Kind = skSum + Column = TV2Column10 + end + item + Kind = skSum + Column = TV2Column11 + end + item + Kind = skSum + Column = TV2Column12 + end + item + Kind = skSum + Column = TV2Column13 + end + item + Kind = skSum + Column = TV3Column1 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnSorting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object TV2Column1: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = TV2Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV3Column4: TcxGridDBColumn + Caption = 'CXXXS' + DataBinding.FieldName = 'Size15' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object TV2Column2: TcxGridDBColumn + Caption = 'CXXS' + DataBinding.FieldName = 'Size1' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column3: TcxGridDBColumn + Caption = 'CXS' + DataBinding.FieldName = 'Size2' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column4: TcxGridDBColumn + Caption = 'CS' + DataBinding.FieldName = 'Size3' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column5: TcxGridDBColumn + Caption = 'CM' + DataBinding.FieldName = 'Size4' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column6: TcxGridDBColumn + Caption = 'CL' + DataBinding.FieldName = 'Size5' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column7: TcxGridDBColumn + Caption = 'CXL' + DataBinding.FieldName = 'Size6' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV3Column2: TcxGridDBColumn + Caption = 'CXXL' + DataBinding.FieldName = 'Size13' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column8: TcxGridDBColumn + Caption = 'AXS' + DataBinding.FieldName = 'Size7' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column9: TcxGridDBColumn + Caption = 'AS' + DataBinding.FieldName = 'Size8' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column10: TcxGridDBColumn + Caption = 'AM' + DataBinding.FieldName = 'Size9' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column11: TcxGridDBColumn + Caption = 'AL' + DataBinding.FieldName = 'Size10' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column12: TcxGridDBColumn + Caption = 'AXL' + DataBinding.FieldName = 'Size11' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column13: TcxGridDBColumn + Caption = 'AXXL' + DataBinding.FieldName = 'Size12' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV3Column3: TcxGridDBColumn + Caption = 'AXXXL' + DataBinding.FieldName = 'Size14' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TV2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 60 + end + object TV3Column1: TcxGridDBColumn + Caption = #21512#35745 + DataBinding.FieldName = 'ZQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 70 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TV3 + end + end + object ToolBar3: TToolBar + Left = 0 + Top = 381 + Width = 1365 + Height = 29 + Align = alBottom + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 5 + Visible = False + object ToolButton3: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton4Click + end + end + object ADOQueryCmd: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 292 + end + object ADOQueryTmp: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 344 + Top = 4 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 400 + Top = 1 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 1 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 532 + Top = 65 + end + object ADO_Sub: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 964 + Top = 5 + end + object DataSource2: TDataSource + DataSet = CDS_Sub + Left = 872 + Top = 425 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 832 + Top = 429 + end +end diff --git a/成品仓库/U_BpRk.pas b/成品仓库/U_BpRk.pas new file mode 100644 index 0000000..03dd988 --- /dev/null +++ b/成品仓库/U_BpRk.pas @@ -0,0 +1,1739 @@ +unit U_BpRk; + +interface + +uses + Windows, Messages, SysUtils, StrUtils, Variants, Classes, Graphics, Controls, + Forms, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGridLevel, cxClasses, cxControls, cxGridCustomView, + cxGrid, StdCtrls, ComCtrls, ExtCtrls, ToolWin, cxButtonEdit, cxDropDownEdit, + DBClient, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, cxTextEdit, BtnEdit, + cxContainer, cxCurrencyEdit, cxLookAndFeels, cxLookAndFeelPainters, + 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 + TfrmbpRk = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + CRTime: TDateTimePicker; + Label2: TLabel; + CRType: TComboBox; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + cxGridPopupMenu1: TcxGridPopupMenu; + Label3: TLabel; + ckName: TComboBox; + v1MJXH: TcxGridDBColumn; + v1MJId: TcxGridDBColumn; + v1CPType: TcxGridDBColumn; + v1P_Code: TcxGridDBColumn; + InoutNo: TEdit; + Label8: TLabel; + Label4: TLabel; + custName: TBtnEditA; + v1Price: TcxGridDBColumn; + v1Money: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + Panel2: TPanel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column2: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + QtyMX: TEdit; + Label17: TLabel; + ADO_Sub: TADOQuery; + DataSource2: TDataSource; + CDS_Sub: TClientDataSet; + PackFee: TcxCurrencyEdit; + Label14: TLabel; + v1OrderNo: TcxGridDBColumn; + Tv1Column2: TcxGridDBColumn; + Tv1Column3: TcxGridDBColumn; + cxGrid3: TcxGrid; + TV3: TcxGridDBTableView; + TV2Column1: TcxGridDBColumn; + TV2Column2: TcxGridDBColumn; + TV2Column3: TcxGridDBColumn; + TV2Column4: TcxGridDBColumn; + TV2Column5: TcxGridDBColumn; + TV2Column6: TcxGridDBColumn; + TV2Column7: TcxGridDBColumn; + TV2Column8: TcxGridDBColumn; + TV2Column9: TcxGridDBColumn; + TV2Column10: TcxGridDBColumn; + TV2Column11: TcxGridDBColumn; + TV2Column12: TcxGridDBColumn; + TV2Column13: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + ToolBar3: TToolBar; + ToolButton3: TToolButton; + ToolButton4: TToolButton; + TV3Column1: TcxGridDBColumn; + TV3Column2: TcxGridDBColumn; + CheckBox1: TCheckBox; + CheckBox2: TCheckBox; + TV3Column3: TcxGridDBColumn; + TV3Column4: TcxGridDBColumn; + Tv1Column4: TcxGridDBColumn; + Tv1Column5: TcxGridDBColumn; + ToolButton5: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure v1P_CodeNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure v1P_ColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1P_CodePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1P_ColorPropertiesEditValueChanged(Sender: TObject); + procedure custNameBtnClick(Sender: TObject); + procedure v1QtyPropertiesEditValueChanged(Sender: TObject); + procedure v1Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure QtyMXKeyPress(Sender: TObject; var Key: Char); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure v1Column5PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1QtyUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure TV2Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure TV2Column2PropertiesEditValueChanged(Sender: TObject); + procedure v1PricePropertiesEditValueChanged(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure Tv1Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + private + procedure InitGrid(); + function savedate(): Boolean; + procedure Initsub(); + procedure InitMX(); + procedure SetComboBox(); + function YSData(): Boolean; + function YFData(freeName: string): Boolean; + function YSData_Other(fYFName: string; fmoney: double): Boolean; + { Private declarations } + public + fkeyNO, FCodeName, FCode, FDRCKNO, FDRCKName: string; + FType: integer; + fCKName: string; + { Public declarations } + end; + +var + frmbpRk: TfrmbpRk; + +implementation + +uses + U_DataLink, U_Fun10, U_ZDYHelp, U_BpJylist, U_ZdyAttachment, U_ZdyAttachGYS, + U_JGCklistSel, U_ProductOrderNewListSEl, U_ZdyAttachCP, U_ZdyCMZ_Sel,U_CPKWListSel, + U_ZdyYS_Sel; +{$R *.dfm} + +function TfrmbpRk.YSData_Other(fYFName: string; fmoney: double): Boolean; +var + CRID, YFID, Price, PriceUnit, OrderUnit, FComTaiTou, cust: string; +begin + Result := False; + with ADOQueryTmp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName=''' + Trim(custName.Text) + ''' and YFDefFlag1=0 '); + Open; + end; + + if not ADOQueryTmp.IsEmpty then + begin + CRID := ADOQueryTmp.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID := ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('FactoryName').Value := Trim(custName.Text); + FieldByName('ZdyStr1').Value := 'Ӧ'; + Post; + end; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + sql.Add(' and subID=''' + Trim(CDS_Main.fieldbyname('CRID').AsString) + ''''); + sql.Add(' and YFName=''' + trim(fYFName) + ''' '); + execsql; + end; + + with ADOQueryTmp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + sql.Add(' and subID=''' + Trim(CDS_Main.fieldbyname('CRID').AsString) + ''''); + sql.Add(' and YFName=''' + trim(fYFName) + ''' '); + Open; + end; + + if ADOQueryTmp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd, YFID, 'CS', 'YF_Money_CR', 3, 1) = False then + begin + Application.MessageBox('ȡӦʧ!', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value := Trim(YFID); + FieldByName('YFTypeId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('CRType').Value := 'ӦտǼ'; + FieldByName('CRFlag').Value := 'Ӧ'; + FieldByName('QtyFlag').Value := 1; + FieldByName('FactoryName').Value := Trim(custName.Text); + FieldByName('CRTime').Value := Trim(FormatDateTime('yyyy-MM-dd', CRTime.DateTime)); + FieldByName('YFType').Value := 'Զ'; + FieldByName('Qty').Value := 1; + FieldByName('Price').Value := fmoney; + FieldByName('Money').Value := fmoney; + FieldByName('BBMoney').Value := fmoney; + FieldByName('HuiLv').Value := 1; + FieldByName('BZType').Value := ''; + FieldByName('QtyUnit').Value := ''; + FieldByName('ComTaiTou').Value := Trim(cust); + FieldByName('YFName').Value := fYFName; + // FieldByName('ISTAX').Value:=IsTax.Checked; + FieldByName('MainId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + FieldByName('subID').Value := Trim(CDS_Main.fieldbyname('CRID').AsString); + FieldByName('note').Value := '˻'; + FieldByName('status').Value := '0'; + Post; + end; + end + else + begin + YFID := Trim(ADOQueryTmp.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID=' + CRID); + ExecSQL; + end; + Result := True; +end; + +procedure TfrmbpRk.Initsub(); +begin +// if CDS_Main.IsEmpty then +// exit; +// +// with Ado_Sub do +// begin +// close; +// sql.Clear; +// sql.Add('select * from CP_InOut_MX A'); +// sql.Add('where A.MJID=' + quotedstr(trim(CDS_Main.fieldbyname('MJID').AsString))); +// open; +// end; +// SCreateCDS20(Ado_Sub, CDS_sub); +// SInitCDSData20(Ado_Sub, CDS_sub); +end; + +function TfrmbpRk.YFData(freeName: string): Boolean; +var + CRID, YFID, Price, PriceUnit, OrderUnit, FComTaiTou, cust: string; +begin + Result := False; + with ADOQueryTmp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName=''' + Trim(custName.Text) + ''' and YFDefFlag1=0 '); + Open; + end; + + if not ADOQueryTmp.IsEmpty then + begin + CRID := ADOQueryTmp.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID := ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('FactoryName').Value := Trim(custName.Text); + FieldByName('ZdyStr1').Value := 'Ӧ'; + Post; + end; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + sql.Add(' and subID=''' + Trim(CDS_Main.fieldbyname('CRID').AsString) + ''''); + sql.Add(' and YFName=''' + Trim(freeName) + ''''); + execsql; + end; + + with ADOQueryTmp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + sql.Add(' and subID=''' + Trim(CDS_Main.fieldbyname('CRID').AsString) + ''''); + sql.Add(' and YFName=''' + Trim(freeName) + ''''); + Open; + end; + + if ADOQueryTmp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd, YFID, 'CF', 'YF_Money_CR', 3, 1) = False then + begin + Application.MessageBox('ȡӦʧ!', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value := Trim(YFID); + FieldByName('YFTypeId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('CRType').Value := 'ӦǼ'; + FieldByName('CRFlag').Value := 'Ӧ'; + FieldByName('QtyFlag').Value := 1; + FieldByName('FactoryName').Value := Trim(custName.Text); + FieldByName('CRTime').Value := Trim(FormatDateTime('yyyy-MM-dd', CRTime.DateTime)); + FieldByName('YFType').Value := 'Զ'; + FieldByName('ps').Value := CDS_Main.fieldbyname('RollNum').AsFloat; + FieldByName('Qty').Value := CDS_Main.fieldbyname('Qty').AsFloat; + FieldByName('Price').Value := CDS_Main.fieldbyname('Price').AsFloat; + FieldByName('Money').Value := CDS_Main.fieldbyname('Money').AsFloat; + FieldByName('BBMoney').Value := CDS_Main.fieldbyname('Money').AsFloat; + FieldByName('HuiLv').Value := 1; + FieldByName('BZType').Value := ''; + FieldByName('QtyUnit').Value := Trim(CDS_Main.fieldbyname('QtyUnit').AsString); + FieldByName('ComTaiTou').Value := Trim(cust); + FieldByName('YFName').Value := freeName; + FieldByName('MainId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + FieldByName('subID').Value := Trim(CDS_Main.fieldbyname('CRID').AsString); + FieldByName('status').Value := '0'; + Post; + end; + end + else + begin + YFID := Trim(ADOQueryTmp.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID=' + CRID); + ExecSQL; + end; + + Result := True; +end; + +function TfrmbpRk.YSData(): Boolean; +var + CRID, YFID, Price, PriceUnit, OrderUnit, FComTaiTou, cust: string; +begin + Result := False; + with ADOQueryTmp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName=''' + Trim(custName.Text) + ''' and YFDefFlag1=0 '); + Open; + end; + + if not ADOQueryTmp.IsEmpty then + begin + CRID := ADOQueryTmp.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID := ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('FactoryName').Value := Trim(custName.Text); + FieldByName('ZdyStr1').Value := 'Ӧ'; + Post; + end; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + sql.Add(' and subID=''' + Trim(CDS_Main.fieldbyname('CRID').AsString) + ''''); + sql.Add(' and YFName=''ͻ˻'' '); + execsql; + end; + + with ADOQueryTmp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''''); + sql.Add(' and subID=''' + Trim(CDS_Main.fieldbyname('CRID').AsString) + ''''); + sql.Add(' and YFName=''ͻ˻'' '); + Open; + end; + + if ADOQueryTmp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd, YFID, 'CS', 'YF_Money_CR', 3, 1) = False then + begin + Application.MessageBox('ȡӦʧ!', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value := Trim(YFID); + FieldByName('YFTypeId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + FieldByName('CRID').Value := StrToInt(CRID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('CRType').Value := 'ӦտǼ'; + FieldByName('CRFlag').Value := 'Ӧ'; + FieldByName('QtyFlag').Value := 1; + FieldByName('FactoryName').Value := Trim(custName.Text); + FieldByName('CRTime').Value := Trim(FormatDateTime('yyyy-MM-dd', CRTime.DateTime)); + FieldByName('YFType').Value := 'Զ'; + FieldByName('ps').Value := -1 * CDS_Main.fieldbyname('RollNum').AsFloat; + FieldByName('Qty').Value := -1 * CDS_Main.fieldbyname('Qty').AsFloat; + FieldByName('Price').Value := CDS_Main.fieldbyname('Price').AsFloat; + FieldByName('Money').Value := -1 * CDS_Main.fieldbyname('Money').AsFloat; + FieldByName('BBMoney').Value := -1 * CDS_Main.fieldbyname('Money').AsFloat; + FieldByName('HuiLv').Value := 1; + FieldByName('BZType').Value := ''; + FieldByName('QtyUnit').Value := Trim(CDS_Main.fieldbyname('QtyUnit').AsString); + FieldByName('ComTaiTou').Value := Trim(cust); + FieldByName('YFName').Value := 'ͻ˻'; + FieldByName('MainId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString); + FieldByName('subID').Value := Trim(CDS_Main.fieldbyname('CRID').AsString); + FieldByName('note').Value := '˻'; + FieldByName('status').Value := '0'; + Post; + end; + end + else + begin + YFID := Trim(ADOQueryTmp.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID=' + CRID); + ExecSQL; + end; + + Result := True; +end; + +procedure TfrmbpRk.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPCK'' '); + if trim(fCKName) <> '' then + sql.Add('and zdyName=' + quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count > 0 then + ckName.ItemIndex := 0; + + CRType.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPRKTYPE'''); + if trim(fCKName) <> '' then + sql.Add('and note=' + quotedstr(trim(fCKName))); + // sql.Add('and zdyName<>'+quotedstr(trim('ӹ'))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count > 0 then + CRType.ItemIndex := 0; +end; + +function TfrmbpRk.savedate(): Boolean; +var + fkcID, XHNO, i: integer; + Filler, FSize: string; + FillTime: TdateTime; +begin + result := false; + try + ADOQueryCmd.Connection.BeginTrans; + if FType = 0 then + begin + Filler := DName; + FillTime := SGetServerDateTime(adoqueryTmp); + end + else + begin + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from CP_InOut'); + sql.Add('where CRNO=' + quotedstr(trim(fkeyNO))); + open; + Filler := adoqueryTmp.fieldbyname('Filler').AsString; + FillTime := adoqueryTmp.fieldbyname('FillTime').AsDateTime; + end; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + sql.Add(' where MainID=''' + Trim(fkeyNO) + ''''); + execsql; + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from CP_InOut'); + sql.Add('where CRNO=' + quotedstr(trim(fkeyNO))); + execsql; + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from CP_kc'); + sql.Add('where CRNO=' + quotedstr(trim(fkeyNO))); + execsql; + end; + + CDS_Main.DisableControls; + CDS_Main.First; + XHNO := 1; + with CDS_Main do + begin + First; + + while not eof do + begin + Edit; + FieldByName('CRNO').Value := trim(fkeyNO); +// FieldByName('CRID').Value := recNo; + post; + +// with CDS_Sub do +// begin +// First; +// while not eof do +// begin +// i := 1; +// while i < 16 do +// begin +// FSize := 'Size' + IntToStr(i); +// if StrToFloatDef(CDS_Sub.fieldbyname(FSize).AsString, 0) > 0 then +// begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.add('Update CP_Kcid Set kcid=kcid+1'); + sql.Add('select kcid from CP_Kcid'); + Open; + end; + + fkcID := ADOQueryCmd.fieldbyname('kcid').AsInteger; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from CP_InOut'); + sql.Add('where 1=2 '); + open; + end; + + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('CRNO').Value := trim(fkeyNO); + ADOQueryCmd.FieldByName('CRID').Value := XHNO; + ADOQueryCmd.FieldByName('custNo').Value := trim(custName.TxtCode); + ADOQueryCmd.FieldByName('custName').Value := trim(custName.Text); + + ADOQueryCmd.FieldByName('CRTime').Value := formatdateTime('yyyy-MM-dd', CRTIme.Date); + ADOQueryCmd.FieldByName('CKName').Value := trim(CKName.Text); + ADOQueryCmd.FieldByName('CRType').Value := trim(CRType.Text); + ADOQueryCmd.FieldByName('CRFlag').Value := ''; + ADOQueryCmd.FieldByName('mainID').Value := trim(CDS_Main.fieldbyname('mainID').AsString); + ADOQueryCmd.FieldByName('subID').Value := trim(CDS_Main.fieldbyname('subID').AsString); +// ADOQueryCmd.FieldByName('MJID').Value := trim(CDS_Main.fieldbyname('MJID').AsString); +// ADOQueryCmd.FieldByName('batchNo').Value := trim(CDS_Main.fieldbyname('batchNo').AsString); +// ADOQueryCmd.FieldByName('MJXH').Value := trim(CDS_Main.fieldbyname('MJXH').AsString); + ADOQueryCmd.FieldByName('CPTYPE').Value := trim(CDS_Main.fieldbyname('CPTYPE').AsString); + ADOQueryCmd.FieldByName('P_Code').Value := trim(CDS_Main.fieldbyname('P_Code').AsString); + ADOQueryCmd.FieldByName('P_CodeName').Value := trim(CDS_Main.fieldbyname('P_CodeName').AsString); + ADOQueryCmd.FieldByName('P_spec').Value := trim(CDS_Main.fieldbyname('P_spec').AsString); + ADOQueryCmd.FieldByName('P_Color').Value := trim(CDS_Main.fieldbyname('P_Color').AsString); +// ADOQueryCmd.FieldByName('P_ColorNo').Value := trim(CDS_Sub.fieldbyname('P_ColorNo').AsString); +// ADOQueryCmd.FieldByName('P_MF').Value := CDS_Main.fieldbyname('P_MF').AsFloat; +// ADOQueryCmd.FieldByName('P_KZ').Value := CDS_Main.fieldbyname('P_KZ').AsFloat; + ADOQueryCmd.FieldByName('RollNum').Value := CDS_Main.fieldbyname('RollNum').AsFloat; +// ADOQueryCmd.FieldByName('Qty').Value := CDS_Sub.fieldbyname(FSize).AsFloat; + ADOQueryCmd.FieldByName('Qty').Value := CDS_Main.fieldbyname('Qty').AsFloat; +// ADOQueryCmd.FieldByName('QtyUnit').Value := trim(CDS_Main.fieldbyname('QtyUnit').AsString); + ADOQueryCmd.FieldByName('Price').Value := CDS_Main.fieldbyname('price').AsFloat; + ADOQueryCmd.FieldByName('rkPrice').Value := CDS_Main.fieldbyname('price').AsFloat; + ADOQueryCmd.FieldByName('money').Value := CDS_Main.fieldbyname('money').AsFloat; + ADOQueryCmd.FieldByName('note').Value := trim(CDS_Main.fieldbyname('note').AsString); + ADOQueryCmd.FieldByName('Filler').Value := trim(Filler); + ADOQueryCmd.FieldByName('FillTime').Value := dateTimetostr(FillTime); + ADOQueryCmd.FieldByName('InOutNo').Value := trim(InOutNo.Text); + + ADOQueryCmd.FieldByName('DRCKNO').Value := trim(CDS_Main.fieldbyname('DRCKNO').AsString); + ADOQueryCmd.FieldByName('DRCKName').Value := trim(CRType.Text); +// trim(CDS_Main.fieldbyname('DRCKName').AsString); +// ADOQueryCmd.FieldByName('fromMainID').Value := trim(CDS_Main.fieldbyname('fromMainID').AsString); +// ADOQueryCmd.FieldByName('fromsubID').Value := trim(CDS_Main.fieldbyname('fromsubID').AsString); + ADOQueryCmd.FieldByName('defstr1').Value := trim(CDS_Main.fieldbyname('defstr1').AsString); +// ADOQueryCmd.FieldByName('defstr2').Value := trim(CDS_Main.fieldbyname('defstr2').AsString); +// ADOQueryCmd.FieldByName('defstr3').Value := trim(CDS_Main.fieldbyname('defstr3').AsString); +// ADOQueryCmd.FieldByName('defstr4').Value := trim(CDS_Main.fieldbyname('defstr4').AsString); +// ADOQueryCmd.FieldByName('defstr5').Value := trim(CDS_Main.fieldbyname('defstr5').AsString); +// if CheckBox1.Checked then +// begin +// ADOQueryCmd.FieldByName('Caijian').Value := 'ü'; +// end; +// if CheckBox2.Checked then +// begin +// ADOQueryCmd.FieldByName('Fengren').Value := ''; +// end; +// if i = 1 then +// begin +// ADOQueryCmd.FieldByName('defstr1').Value := 'CXXS'; +// end +// else if i = 2 then +// begin +// ADOQueryCmd.FieldByName('defstr1').Value := 'CXS'; +// end +// else if i = 3 then +// begin +// ADOQueryCmd.FieldByName('defstr1').Value := 'CS'; +// end +// else if i = 4 then +// begin +// ADOQueryCmd.FieldByName('defstr1').Value := 'CM'; +// end +// else if i = 5 then +// begin +// ADOQueryCmd.FieldByName('defstr1').Value := 'CL'; +// end +// else if i = 6 then +// begin +// ADOQueryCmd.FieldByName('defstr1').Value := 'CXL'; +// end +// else if i = 7 then +// begin +// ADOQueryCmd.FieldByName('defstr1').Value := 'AXS'; +// end +// else if i = 8 then +// begin +// ADOQueryCmd.FieldByName('defstr1').Value := 'AS'; +// end +// else if i = 9 then +// begin +// ADOQueryCmd.FieldByName('defstr1').Value := 'AM'; +// end +// else if i = 10 then +// begin +// ADOQueryCmd.FieldByName('defstr1').Value := 'AL'; +// end +// else if i = 11 then +// begin +// ADOQueryCmd.FieldByName('defstr1').Value := 'AXL'; +// end +// else if i = 12 then +// begin +// ADOQueryCmd.FieldByName('defstr1').Value := 'AXXL'; +// end +// else if i = 13 then +// begin +// ADOQueryCmd.FieldByName('defstr1').Value := 'CXXL'; +// end +// else if i = 14 then +// begin +// ADOQueryCmd.FieldByName('defstr1').Value := 'AXXXL'; +// end +// else if i = 15 then +// begin +// ADOQueryCmd.FieldByName('defstr1').Value := 'CXXXS'; +// end; + + if FType = 1 then + begin + ADOQueryCmd.FieldByName('editer').Value := trim(dName); + ADOQueryCmd.FieldByName('editTime').Value := SGetServerDateTime(adoqueryTmp); + end; + ADOQueryCmd.FieldByName('kcID').Value := fkcID; + ADOQueryCmd.Post; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from CP_KC'); + sql.Add('where 1=2 '); + open; + end; + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('kcID').Value := fkcID; + ADOQueryCmd.FieldByName('CKName').Value := trim(CKName.Text); + ADOQueryCmd.FieldByName('CRNO').Value := trim(fkeyNO); + ADOQueryCmd.FieldByName('CRID').Value := XHNO; + ADOQueryCmd.FieldByName('CRTime').Value := formatdateTime('yyyy-MM-dd', CRTIme.Date); + ADOQueryCmd.FieldByName('CRType').Value := trim(CRType.Text); + ADOQueryCmd.FieldByName('CRFlag').Value := ''; + ADOQueryCmd.FieldByName('mainID').Value := trim(cds_main.fieldbyname('mainID').AsString); + ADOQueryCmd.FieldByName('subID').Value := trim(cds_main.fieldbyname('subID').AsString); +// ADOQueryCmd.FieldByName('MJXH').Value := trim(fieldbyname('MJXH').AsString); +// ADOQueryCmd.FieldByName('MJID').Value := trim(fieldbyname('MJID').AsString); + ADOQueryCmd.FieldByName('CPType').Value := trim(cds_main.fieldbyname('CPType').AsString); + ADOQueryCmd.FieldByName('P_Code').Value := trim(cds_main.fieldbyname('P_Code').AsString); + ADOQueryCmd.FieldByName('P_CodeName').Value := trim(cds_main.fieldbyname('P_CodeName').AsString); + ADOQueryCmd.FieldByName('P_spec').Value := trim(cds_main.fieldbyname('P_spec').AsString); + ADOQueryCmd.FieldByName('P_Color').Value := trim(CDS_Main.fieldbyname('P_Color').AsString); + ADOQueryCmd.FieldByName('DRCKNO').Value := trim(CDS_Main.fieldbyname('DRCKNO').AsString); + ADOQueryCmd.FieldByName('DRCKName').Value := trim(CDS_Main.fieldbyname('DRCKName').AsString); + ADOQueryCmd.FieldByName('Qty').Value := CDS_Main.fieldbyname('QTY').AsFloat; + ADOQueryCmd.FieldByName('kcID').Value := fkcID; + ADOQueryCmd.Post; + + XHNO := XHNO + 1; +// end; +// +// i := i + 1; +// end; + + Next; + end; + end; + + + + +// if trim(CRType.Text) = 'ӹ' then +// begin +// if not YFData('ӹ') then +// begin +// ADOQueryCmd.Connection.RollbackTrans; +// exit; +// end; +// end; +// if trim(CRType.Text) = '˻' then +// begin +// if not YSData() then +// begin +// ADOQueryCmd.Connection.RollbackTrans; +// exit; +// end; +// end; + next; +// end; + { if trim(CRType.Text)='˻' then + begin + IF strtofloatdef(PackFee.Text,0)<>0 then + begin + if not YSData_other('',strtofloatdef(PackFee.Text,0)) then + begin + ADOQueryCmd.Connection.RollbackTrans; + exit; + end; + end; + end; } +// end; + CDS_Main.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + result := true; + except + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; + +procedure TfrmbpRk.InitGrid(); +begin + try + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select isnull(mainID,'''') as Mainid,isnull(subID,'''') as Subid,isnull(P_Code,'''') as P_Code,isnull(P_CodeName,'''') as P_CodeName,isnull(P_spec,'''') as P_spec '); + sql.Add(',isnull(P_MF,'''') as P_MF,isnull(P_KZ,'''') as P_KZ,RKprice,isnull(P_Color,'''') as P_Color,isnull(defstr1,'''') as defstr1,'); + sql.Add('SUM(RollNum ) as RollNum,'); + sql.Add('SUM((Qty+zsQty)) as Qty,'); + sql.Add('CAST( P_KZ as varchar(10)) as P_KZ_s,'); + sql.Add('SUM((Qty+zsQty))*RKprice as money'); + sql.Add(',ISNULL(OrderNO,'''') as OrderNO'); + sql.Add(',isnull(DRCKNO ,'''') as DRCKNO ,isnull(DRCKName,'''') as DRCKName,CRNO,InOutNo,CRTime,isnull(custName,'''') as custName,CRType,CKName,isnull(custNo,'''') as custNo,CPType '); + SQL.Add(',isnull(Note,'''') as Note,isnull(Price,0) as Price'); + sql.Add('from (select A.*,'); + sql.Add('orderNo=(select Top 1 orderNo from JYOrder_Main X where X.MainID=A.MainID )'); + sql.Add('from CP_InOut A'); + sql.Add('where CRNO=' + quotedstr(trim(fkeyNO))); + SQL.Add('and P_Code=' + quotedstr(trim(FCode))); + SQL.Add('and P_CodeName=' + quotedstr(trim(FCodeName))); + SQL.Add('and DRCKNO=' + quotedstr(trim(FDRCKNO))); + SQL.Add('and DRCKName=' + quotedstr(trim(FDRCKName))); + sql.Add(')AA'); + sql.Add('group by ISNULL(mainID,''''),ISNULL(subID,''''),isnull(P_Code,''''),isnull(P_CodeName,''''),ISNULL(P_spec,'''')'); + sql.Add(',isnull(P_MF,''''),isnull(P_KZ,''''),RKprice,ISNULL(OrderNO,'''') ,isnull(P_Color,''''),isnull(defstr1,''''),CAST( P_KZ as varchar(10))'); + sql.Add(',isnull(DRCKNO ,'''') ,isnull(DRCKName,''''),CRNO,InOutNo,CRTime,isnull(custName,''''),CRType,CKName,isnull(custNo,''''),CPType'); + sql.Add(',isnull(Note,''''),isnull(Price,0)'); + open; + end; + SCreateCDS20(adoqueryTmp, CDS_Main); + SInitCDSData20(adoqueryTmp, CDS_Main); + + if not CDS_Main.IsEmpty then + begin + CRTime.Date := CDS_Main.fieldbyname('CRTime').AsDateTime; + CKName.ItemIndex := CKName.Items.IndexOf(trim(CDS_Main.fieldbyname('CKName').AsString)); + CRType.ItemIndex := CRType.Items.IndexOf(trim(CDS_Main.fieldbyname('CRType').AsString)); + inoutNo.Text := CDS_Main.fieldbyname('inoutNo').asstring; + custName.TxtCode := trim(CDS_Main.fieldbyname('custNo').AsString); + custName.Text := trim(CDS_Main.fieldbyname('custName').AsString); + // FirstName.TxtCode:=trim(CDS_Main.fieldbyname('FirstNo').AsString); + // FirstName.Text:=trim(CDS_Main.fieldbyname('FirstName').AsString); + end + else + ToolButton1.Click; + finally + end; + Initsub(); + InitMX(); +end; + +procedure TfrmbpRk.FormDestroy(Sender: TObject); +begin + frmbpRk := nil; +end; + +procedure TfrmbpRk.FormCreate(Sender: TObject); +begin + CRTime.Date := DServerDate; + Panel2.Align := alclient; + +end; + +procedure TfrmbpRk.FormClose(Sender: TObject; var Action: TCloseAction); +begin + writeCxGrid(self.Caption + tv1.Name + '4', Tv1, 'Ʒֿ'); + Action := cahide; +end; + +procedure TfrmbpRk.FormShow(Sender: TObject); +begin + readCxGrid(self.Caption + tv1.Name + '4', Tv1, 'Ʒֿ'); + SetComboBox(); + InitGrid(); + if fType = 0 then + begin + if GetLSNo(ADOQueryCmd, fkeyNo, 'RK', 'CP_InOut', 3, 1) = False then + begin + Application.MessageBox('ȡʧ!', 'ʾ', 0); + Exit; + end; + inoutNo.Text := 'R' + Trim(RightBStr(fkeyNo, Length(fkeyNo) - 2)); + end; +end; + +procedure TfrmbpRk.TBSaveClick(Sender: TObject); +begin + if cds_main.IsEmpty then + exit; + CRTime.SetFocus; + if trim(CRType.Text) = '' then + begin + application.MessageBox('ͲΪգ', 'ʾϢ', 0); + exit; + end; + + if trim(custName.Text) = '' then + begin + application.MessageBox('ӹΪգ', 'ʾϢ', MB_ICONERROR); + exit; + end; + +// if cds_main.Locate('QtyUnit', '', []) then +// begin +// application.MessageBox('λΪգ', 'ʾϢ', 0); +// exit; +// end; +// if cds_main.Locate('QtyUnit', NULL, []) then +// begin +// application.MessageBox('λΪգ', 'ʾϢ', 0); +// exit; +// end; + {if trim(CRType.Text)='ӹ' then + begin + if cds_main.Locate('fromMainID',NULL,[]) then + begin + application.MessageBox('ӹŲΪգ','ʾϢ',0); + exit; + end; + if cds_main.Locate('fromMainID','',[]) then + begin + application.MessageBox('ӹŲΪգ','ʾϢ',0); + exit; + end; + end;} + if savedate() then + begin + application.MessageBox('ݱɹ', 'ʾϢ'); + ModalResult := 1; + end + else + begin + application.MessageBox('ݱʧܣ', 'ʾϢ', MB_ICONERROR); + end; +end; + +procedure TfrmbpRk.v1P_CodeNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'MPRTCodeName'; + flagname := 'Ʒ'; + if ShowModal = 1 then + begin + Self.CDS_Main.Edit; + Self.CDS_Main.FieldByName('P_CodeName').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.CDS_Main.FieldByName('P_Code').Value := Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; + self.tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmbpRk.ToolButton1Click(Sender: TObject); +//var +// FMJID: string; +begin +// if GetLSNo(self.ADOQueryCmd, FMJID, 'MR', 'CP_InOut_MX', 3, 1) = False then +// begin +// // ADOQueryCmd.Connection.RollbackTrans; +// Application.MessageBox('ȡʧ!', 'ʾ', 0); +// Exit; +// end; + with CDS_Main do + begin + append; +// FieldByName('MJID').Value := trim(FMJID); + FieldbyName('CPType').Value := 'Ʒ'; + // FieldbyName('QtyUnit').Value:='KG'; + post; + end; +{ frmBpJylist:=TfrmBpJylist.create(self); + with frmBpJylist do + begin + fType:=10; + // fckName:=self.fckName; + if showmodal=1 then + begin + self.cds_main.DisableControls; + cds_main.DisableControls; + cds_main.First; + while not cds_main.Eof do + begin + if (cds_main.fieldbyname('ssel').AsBoolean) then //and (not self.cds_main.Locate('MJID',trim(cds_main.fieldbyname('MJID').AsString),[])) + begin + self.cds_main.Append; + // self.cds_main.FieldByName('kcid').Value:=trim(cds_main.fieldbyname('kcid').AsString); + self.cds_main.FieldByName('mainID').Value:=trim(cds_main.fieldbyname('mainID').AsString); + self.cds_main.FieldByName('subID').Value:=trim(cds_main.fieldbyname('subID').AsString); + self.cds_main.FieldByName('MJID').Value:=trim(cds_main.fieldbyname('MJID').AsString); + self.cds_main.FieldByName('MJXH').Value:=trim(cds_main.fieldbyname('MJXH').AsString); + self.cds_main.FieldByName('CPTYPE').Value:=trim(cds_main.fieldbyname('MJType').AsString); + self.cds_main.FieldByName('P_Code').Value:=trim(cds_main.fieldbyname('MprtCode').AsString); + self.cds_main.FieldByName('P_CodeName').Value:=trim(cds_main.fieldbyname('MprtCodeName').AsString); + self.cds_main.FieldByName('P_spec').Value:=trim(cds_main.fieldbyname('Mprtspec').AsString); + // self.cds_main.FieldByName('P_Color').Value:=trim(cds_main.fieldbyname('P_Color').AsString); + // self.cds_main.FieldByName('P_MF').Value:=cds_main.fieldbyname('P_MF').AsFloat; + // self.cds_main.FieldByName('P_KZ').Value:=cds_main.fieldbyname('P_KZ').AsFloat; + self.cds_main.FieldByName('RollNum').Value:=1; + self.cds_main.FieldByName('Qty').Value:=cds_main.fieldbyname('MJLen').AsFloat; + self.cds_main.FieldByName('QtyUnit').Value:=trim(cds_main.fieldbyname('MJTypeother').AsString); + self.cds_main.Post; + end; + cds_main.Next; + end; + cds_main.EnableControls; + self.cds_main.EnableControls; + end; + free; + end;} +end; + +procedure TfrmbpRk.ToolButton2Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then + exit; + CDS_Main.Delete; +end; + +procedure TfrmbpRk.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmbpRk.v1P_ColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin +// try +// frmZDYHelp := TfrmZDYHelp.Create(Application); +// with frmZDYHelp do +// begin +// flag := 'OrdColor'; +// flagname := 'ɫ'; +// V1Name.Caption := ''; +// V1Note.Caption := 'Ӣ'; +// MainType := Trim(DName); +// fnote := True; +// if ShowModal = 1 then +// begin +// Self.CDS_Main.Edit; +// Self.CDS_Main.FieldByName('P_Color').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); +// Self.CDS_Main.Post; +// end; +// end; +// finally +// frmZDYHelp.Free; +// end; +// self.tv1.Controller.EditingController.ShowEdit(); + + frmZdyYS_sel := TfrmZdyYS_sel.create(self); + with frmZdyYS_sel do + begin + if showmodal = 1 then + begin + with CDS_Main do + begin + Edit; + FieldByName('P_Color').value := CDS_HZ.fieldbyname('CodeName').AsString; + Post; + end; + end; + free; + end; +end; + +procedure TfrmbpRk.v1P_CodePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin +// try +// frmZDYHelp:=TfrmZDYHelp.Create(Application); +// with frmZDYHelp do +// begin +// flag:='MPRTCodeName'; +// flagname:='Ʒ'; +// if ShowModal=1 then +// begin +// Self.CDS_Main.Edit; +// Self.CDS_Main.FieldByName('P_CodeName').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); +// Self.CDS_Main.FieldByName('P_Code').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); +// end; +// end; +// finally +// frmZDYHelp.Free; +// end; +// self.tv1.Controller.EditingController.ShowEdit(); + try + frmZdyAttachCP := TfrmZdyAttachCP.Create(Application); + with frmZdyAttachCP do + begin + + if ShowModal = 1 then + begin + with CDS_Main do + begin + CDS_Main.Edit; + CDS_Main.fieldbyname('P_Code').Value := Trim(CDS_HZ.fieldbyname('ZDYCode').AsString); + CDS_Main.fieldbyname('P_CodeName').Value := Trim(CDS_HZ.fieldbyname('ZDYName').AsString); +// CDS_Main.fieldbyname('defstr1').Value := Trim(CDS_HZ.fieldbyname('CYCM').AsString); + CDS_Main.Post; + end; + + with CDS_Sub do + begin + append; + FieldByName('P_Color').Value := Trim(CDS_HZ.fieldbyname('CYYS').AsString); + post; + end; + end; + + end; + finally + frmZdyAttachCP.Free; + end; + self.tv1.Controller.EditingController.ShowEdit(); + +end; + +procedure TfrmbpRk.v1P_ColorPropertiesEditValueChanged(Sender: TObject); +var + mvalue: string; +begin +{ mvalue:=TcxTextEdit(Sender).EditingText; + + IF trim(mvalue)='' then exit; + + IF rightBstr(trim(mvalue),1)<>'#'THEN + BEGIn + mvalue:=trim(mvalue)+'#'; + END; + + + + with CDS_Main do + begin + Edit; + FieldByName('P_Color').Value:=Trim(mvalue); + Post; + end; + self.tv1.Controller.EditingController.ShowEdit();} +end; + +procedure TfrmbpRk.custNameBtnClick(Sender: TObject); +begin + if CRType.Text = '˻' then + begin + try + frmZdyAttachment := TfrmZdyAttachment.Create(Application); + with frmZdyAttachment do + begin + if ShowModal = 1 then + begin + custName.Text := Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + custName.TxtCode := Trim(CDS_HZ.fieldbyname('ZdyCode').AsString); + end; + end; + finally + frmZdyAttachment.Free; + end; + end + else + begin + try + frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application); + with frmZdyAttachGYS do + begin + if ShowModal = 1 then + begin + custName.Text := Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + custName.TxtCode := Trim(CDS_HZ.fieldbyname('ZdyCode').AsString); + end; + end; + finally + frmZdyAttachGYS.Free; + end; + end; +end; + +procedure TfrmbpRk.v1QtyPropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_Main do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + FieldbyName('Money').Value := format('%.2f', [FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat]); + Post; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmbpRk.v1Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + frmJGCklistSel := TfrmJGCklistSel.create(self); + with frmJGCklistSel do + begin + cust.text := self.custName.Text; + if showmodal = 1 then + begin + self.CDS_Main.edit; + self.CDS_Main.FieldByName('frommainid').Value := CDS_Main.FieldByName('crno').AsString; + self.CDS_Main.FieldByName('fromsubid').Value := CDS_Main.FieldByName('crid').AsString; + self.CDS_Main.post; + + end; + free; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmbpRk.QtyMXKeyPress(Sender: TObject; var Key: Char); +var + fMJXH: string; + fRollNum: integer; + fQty: double; +begin + if Key = #13 then + begin + if strtofloatdef(QtyMX.Text, 0) = 0 then + exit; + + if GetLSNo(self.ADOQueryCmd, fMJXH, 'MX', 'CP_InOut_MX', 4, 1) = False then + begin + // ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!', 'ʾ', 0); + Exit; + end; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from CP_InOut_MX A'); + sql.Add('where 1=2'); + open; + append; + Fieldbyname('MJID').Value := trim(CDS_Main.fieldbyname('MJID').AsString); + Fieldbyname('MJXH').Value := fMJXH; + Fieldbyname('RollNUm').Value := 1; + Fieldbyname('Qty').Value := strtofloatdef(QtyMX.Text, 0); + Fieldbyname('Qtyunit').Value := trim(CDS_Main.fieldbyname('Qtyunit').AsString); + post; + end; + + with CDS_sub do + begin + append; + Fieldbyname('Qty').Value := strtofloatdef(QtyMX.Text, 0); + post; + end; + if varisnull(tv2.DataController.Summary.FooterSummaryValues[0]) then + begin + fRollNum := 0; + fQty := 0; + end + else + begin + fRollNum := CDS_Sub.RecordCount; + fQty := tv2.DataController.Summary.FooterSummaryValues[0]; + end; + with CDS_Main do + begin + EDIT; + FieldByName('RollNum').Value := fRollNum; + Fieldbyname('Qty').Value := fQty; + FieldbyName('Money').Value := format('%.2f', [FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat]); + post; + end; + QtyMX.Text := ''; + except + end; + end; +end; + +procedure TfrmbpRk.Tv1CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin +// Initsub(); +end; + +procedure TfrmbpRk.Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +var + FROLLnUM: INTEGER; + FQTY: double; +begin + if CDS_Sub.IsEmpty then + exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from CP_InOut_MX '); + sql.Add('where MJXH=' + quotedstr(trim(CDS_Sub.fieldbyname('MJXH').AsString))); + execsql; + end; + Initsub(); + if varisnull(tv2.DataController.Summary.FooterSummaryValues[0]) then + begin + FROLLnUM := 0; + FQTY := 0; + end + else + begin + FROLLnUM := CDS_Sub.RecordCount; + FQTY := tv2.DataController.Summary.FooterSummaryValues[0]; + end; + with CDS_Main do + begin + EDIT; + FieldByName('RollNum').Value := FROLLnUM; + Fieldbyname('Qty').Value := FQTY; + FieldbyName('Money').Value := format('%.2f', [FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat]); + post; + end; + except + application.MessageBox('ɾʧ', 'ʾϢ', 0) + end; +end; + +procedure TfrmbpRk.v1Column5PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + frmProductOrderNewListSEl := TfrmProductOrderNewListSEl.create(self); + with frmProductOrderNewListSEl do + begin + FCloth := 1; + if showmodal = 1 then + begin + Order_Main.First; + while not Order_Main.Eof do + begin + if Order_Main.fieldbyname('ssel').AsBoolean then + begin + CDS_Main.edit; + CDS_Main.FieldByName('orderNo').Value := trim(order_main.fieldbyname('orderNo').asstring); + CDS_Main.FieldByName('mainID').Value := trim(order_main.fieldbyname('mainID').asstring); + CDS_Main.FieldByName('subID').Value := trim(order_main.fieldbyname('subID').asstring); + CDS_Main.FieldByName('P_Code').Value := trim(order_main.fieldbyname('prtcode').asstring); + CDS_Main.FieldByName('P_CodeName').Value := trim(order_main.fieldbyname('prtCodeName').asstring); + CDS_Main.FieldByName('P_Spec').Value := trim(order_main.fieldbyname('prtspec').asstring); + CDS_Main.FieldByName('P_Color').Value := trim(order_main.fieldbyname('prtcolor').asstring); +// CDS_Main.FieldByName('P_EColor').Value := trim(order_main.fieldbyname('SOrdDefStr4').asstring); //ɫӢ + CDS_Main.FieldByName('defstr1').Value := trim(order_main.fieldbyname('Sorddefstr5').asstring); + CDS_Main.FieldByName('qty').Value := trim(order_main.fieldbyname('PRTOrderQty').asstring); + + CDS_Main.post; + end; + Order_Main.Next; + end; + + free; + +// CDS_Main.Edit; +// CDS_Main.FieldByName('orderNo').Value := trim(order_main.fieldbyname('orderNo').asstring); +// CDS_Main.FieldByName('mainID').Value := trim(order_main.fieldbyname('mainID').asstring); +// CDS_Main.FieldByName('subID').Value := trim(order_main.fieldbyname('subID').asstring); +// CDS_Main.FieldByName('P_Code').Value := trim(order_main.fieldbyname('prtcode').asstring); +// CDS_Main.FieldByName('P_CodeName').Value := trim(order_main.fieldbyname('prtCodeName').asstring); +// CDS_Main.FieldByName('P_Spec').Value := trim(order_main.fieldbyname('prtspec').asstring); +//// CDS_Main.FieldByName('P_Color').Value := trim(order_main.fieldbyname('prtcolor').asstring); +//// CDS_Main.FieldByName('defstr1').Value := trim(order_main.fieldbyname('Sorddefstr5').asstring); +//// CDS_Main.FieldByName('P_MF').Value := trim(order_main.fieldbyname('PRTMF').asstring); +//// CDS_Main.FieldByName('P_KZ').Value := trim(order_main.fieldbyname('PRTKZ').asstring); +// CDS_Main.post; + end; +// free; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmbpRk.v1QtyUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'QtyUnitType'; + flagname := 'λ'; + V1Name.Caption := 'λ'; + fnote := false; + if ShowModal = 1 then + begin + Self.CDS_Main.Edit; + Self.CDS_Main.FieldByName('QtyUnit').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.CDS_Main.Post; + end; + end; + finally + frmZDYHelp.Free; + end; + self.tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmbpRk.v1Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + frmZdyCMZ_sel := TfrmZdyCMZ_sel.create(self); + with frmZdyCMZ_sel do + begin + if showmodal = 1 then + begin + with CDS_Main do + begin + Edit; + FieldByName('defstr1').value := cdssub.fieldbyname('SizeSpec').AsString; + Post; + end; + end; + free; + end; +end; + +procedure TfrmbpRk.Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + initsub(); +end; + +procedure TfrmbpRk.InitMX(); +begin + try + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('exec P_Get_CP_RK_MX ''' + Cds_main.fieldbyname('P_CodeName').AsString + ''' ,''' + Cds_main.fieldbyname('P_Code').AsString + ''',''' + Cds_main.fieldbyname('CRNO').AsString + ''',''' + Cds_main.fieldbyname('DRCKNO').AsString + ''',''' + Cds_main.fieldbyname('DRCKName').AsString + ''' '); +// ShowMessage(SQL.text); + open; + end; + SCreateCDS20(adoqueryTmp, CDS_Sub); + SInitCDSData20(adoqueryTmp, CDS_Sub); + finally + end; +end; + +procedure TfrmbpRk.TV2Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + frmZdyYS_sel := TfrmZdyYS_sel.create(self); + with frmZdyYS_sel do + begin + if showmodal = 1 then + begin + with CDS_Sub do + begin + Edit; + FieldByName('P_Color').value := CDS_HZ.fieldbyname('CodeName').AsString; + Post; + end; + end; + free; + end; +end; + +procedure TfrmbpRk.ToolButton3Click(Sender: TObject); +begin + with CDS_Sub do + begin + append; + post; + end; +end; + +procedure TfrmbpRk.ToolButton4Click(Sender: TObject); +begin + if CDS_Sub.IsEmpty then + exit; + CDS_Sub.Delete; +end; + +procedure TfrmbpRk.TV2Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; + Qty1, Qty2, Qty3, Qty4, Qty5, Qty6, Qty7, Qty8, Qty9, Qty10, Qty11, Qty12, Qty13, Qty14, Qty15, ZQty, a: Integer; + Fprice, Fmoney: Double; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName); + + with CDS_Sub do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + + Qty1 := StrToIntDef(CDS_Sub.fieldbyname('Size1').asstring, 0); + Qty2 := StrToIntDef(CDS_Sub.fieldbyname('Size2').asstring, 0); + Qty3 := StrToIntDef(CDS_Sub.fieldbyname('Size3').asstring, 0); + Qty4 := StrToIntDef(CDS_Sub.fieldbyname('Size4').asstring, 0); + Qty5 := StrToIntDef(CDS_Sub.fieldbyname('Size5').asstring, 0); + Qty6 := StrToIntDef(CDS_Sub.fieldbyname('Size6').asstring, 0); + Qty7 := StrToIntDef(CDS_Sub.fieldbyname('Size7').asstring, 0); + Qty8 := StrToIntDef(CDS_Sub.fieldbyname('Size8').asstring, 0); + Qty9 := StrToIntDef(CDS_Sub.fieldbyname('Size9').asstring, 0); + Qty10 := StrToIntDef(CDS_Sub.fieldbyname('Size10').asstring, 0); + Qty11 := StrToIntDef(CDS_Sub.fieldbyname('Size11').asstring, 0); + Qty12 := StrToIntDef(CDS_Sub.fieldbyname('Size12').asstring, 0); + Qty13 := StrToIntDef(CDS_Sub.fieldbyname('Size13').asstring, 0); + Qty14 := StrToIntDef(CDS_Sub.fieldbyname('Size14').asstring, 0); + Qty15 := StrToIntDef(CDS_Sub.fieldbyname('Size15').asstring, 0); + ZQty := Qty1 + Qty2 + Qty3 + Qty4 + Qty5 + Qty6 + Qty7 + Qty8 + Qty9 + Qty10 + Qty11 + Qty12 + Qty13 + Qty14 + Qty15; + + with CDS_Sub do + begin + Edit; + FieldByName('ZQty').Value := ZQty; + Post; + end; + + tv3.Controller.EditingController.ShowEdit(); +// CDS_Main.FieldByName('Qty').Value + a := TV3.DataController.Summary.FooterSummaryValues[15]; + + CDS_Main.Edit; + CDS_Main.FieldByName('Qty').Value := a; + CDS_Main.post; + + Fprice := StrToIntDef(CDS_Main.fieldbyname('Price').asstring, 0); + + Fmoney := Fprice * a; + + with CDS_Main do + begin + Edit; + FieldByName('Money').Value := Fmoney; + Post; + end; +end; + +procedure TfrmbpRk.v1PricePropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_Main do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + FieldbyName('Money').Value := format('%.2f', [FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat]); + Post; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmbpRk.ToolButton5Click(Sender: TObject); +begin + frmProductOrderNewListSEl := TfrmProductOrderNewListSEl.create(self); + with frmProductOrderNewListSEl do + begin + FCloth := 1; + if showmodal = 1 then + begin + Order_Main.First; + while not Order_Main.Eof do + begin + if Order_Main.fieldbyname('ssel').AsBoolean then + begin + CDS_Main.Append; + CDS_Main.FieldByName('orderNo').Value := trim(order_main.fieldbyname('orderNo').asstring); + CDS_Main.FieldByName('mainID').Value := trim(order_main.fieldbyname('mainID').asstring); + CDS_Main.FieldByName('subID').Value := trim(order_main.fieldbyname('subID').asstring); + CDS_Main.FieldByName('P_Code').Value := trim(order_main.fieldbyname('prtcode').asstring); + CDS_Main.FieldByName('P_CodeName').Value := trim(order_main.fieldbyname('prtCodeName').asstring); + CDS_Main.FieldByName('P_Spec').Value := trim(order_main.fieldbyname('prtspec').asstring); + CDS_Main.FieldByName('P_Color').Value := trim(order_main.fieldbyname('prtcolor').asstring); +// CDS_Main.FieldByName('P_EColor').Value := trim(order_main.fieldbyname('SOrdDefStr4').asstring); //ɫӢ + CDS_Main.FieldByName('defstr1').Value := trim(order_main.fieldbyname('Sorddefstr5').asstring); + CDS_Main.FieldByName('qty').Value := trim(order_main.fieldbyname('PRTOrderQty').asstring); + + CDS_Main.post; + end; + Order_Main.Next; + end; + free; + end; + + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmbpRk.Tv1Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmCPKWListSel := TfrmCPKWListSel.Create(Application); + with frmCPKWListSel do + begin + if ShowModal = 1 then + begin + Self.CDS_Main.Edit; + Self.CDS_Main.FieldByName('DRCKName').Value := Trim(CDS_HZ.fieldbyname('ZdyCode').AsString); + end; + end; + finally + frmCPKWListSel.Free; + end; + self.tv1.Controller.EditingController.ShowEdit(); +end; + +end. + diff --git a/成品仓库/U_BpRklist.dfm b/成品仓库/U_BpRklist.dfm new file mode 100644 index 0000000..e9b3c55 --- /dev/null +++ b/成品仓库/U_BpRklist.dfm @@ -0,0 +1,872 @@ +object frmBpRklist: TfrmBpRklist + Left = 394 + Top = 212 + Width = 1265 + Height = 518 + Caption = #20837#24211#21015#34920 + 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 = 1249 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#35810 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + Visible = False + end + object TBAdd: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20837#24211 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBAddSM: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25195#25551#20837#24211 + ImageIndex = 3 + Visible = False + OnClick = TBAddSMClick + end + object TBEdit: TToolButton + Left = 276 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object TBDel: TToolButton + Left = 339 + Top = 0 + AutoSize = True + Caption = #20316#24223 + ImageIndex = 17 + OnClick = TBDelClick + end + object TBCdel: TToolButton + Left = 402 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 107 + OnClick = TBCdelClick + end + object TBExport: TToolButton + Left = 465 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 528 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 591 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1249 + Height = 61 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 35 + Top = 15 + Width = 52 + Height = 12 + Caption = #20837#24211#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 76 + Top = 36 + Width = 13 + Height = 12 + Caption = #33267 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 624 + Top = 16 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 264 + Top = 16 + Width = 52 + Height = 12 + Caption = #20837#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 288 + Top = 100 + Width = 24 + Height = 12 + Caption = #20179#24211 + end + object Label7: TLabel + Left = 264 + Top = 40 + Width = 52 + Height = 12 + Caption = #20837#24211#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 440 + Top = 16 + Width = 72 + Height = 12 + Caption = #21152#24037#21378'/'#23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 440 + Top = 40 + Width = 53 + Height = 12 + Caption = #35746' '#21333' '#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 620 + Top = 40 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 88 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 88 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object P_CodeName: TEdit + Tag = 2 + Left = 680 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = P_CodeNameChange + end + object CRType: TComboBox + Tag = 2 + Left = 320 + Top = 12 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 3 + OnChange = P_CodeNameChange + Items.Strings = ( + '' + #29983#20135#20837#24211) + end + object ckName: TComboBox + Left = 320 + Top = 96 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 4 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object inoutNo: TEdit + Tag = 2 + Left = 320 + Top = 36 + Width = 100 + Height = 20 + TabOrder = 5 + OnChange = P_CodeNameChange + end + object custName: TEdit + Tag = 2 + Left = 516 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 6 + OnChange = P_CodeNameChange + end + object orderNo: TEdit + Tag = 2 + Left = 516 + Top = 36 + Width = 100 + Height = 20 + TabOrder = 7 + OnChange = P_CodeNameChange + end + object P_Code: TEdit + Tag = 2 + Left = 680 + Top = 36 + Width = 100 + Height = 20 + TabOrder = 8 + OnChange = P_CodeNameChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 113 + Width = 1249 + Height = 155 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = v1Qty + end + item + Kind = skSum + Column = v1money + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object v1CRNO: TcxGridDBColumn + Caption = #20837#24211#32534#21495 + DataBinding.FieldName = 'CRNO' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1CRID: TcxGridDBColumn + Caption = #24207#27425#21495 + DataBinding.FieldName = 'CRID' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column4: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 94 + end + object v1INoutNo: TcxGridDBColumn + Caption = #20837#24211#21333#21495 + DataBinding.FieldName = 'INoutNo' + HeaderAlignmentHorz = taCenter + Width = 79 + end + object v1custName: TcxGridDBColumn + Caption = #21152#24037#21378'/'#23458#25143 + DataBinding.FieldName = 'custName' + HeaderAlignmentHorz = taCenter + Width = 89 + end + object v1CRTime: TcxGridDBColumn + Caption = #20837#24211#26085#26399 + DataBinding.FieldName = 'CRTime' + Width = 60 + end + object v1CRType: TcxGridDBColumn + Caption = #20837#24211#31867#22411 + DataBinding.FieldName = 'CRType' + HeaderAlignmentHorz = taCenter + end + object v1MJID: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1MJXH: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1P_Code: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'P_Code' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column1: TcxGridDBColumn + Caption = #25209#27425 + DataBinding.FieldName = 'batchNo' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1P_SPEC: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'P_SPEC' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 90 + end + object Tv1Column4: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_color' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object Tv1Column5: TcxGridDBColumn + Caption = #39068#33394#33521#25991 + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Qty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 50 + end + object v1Column2: TcxGridDBColumn + Caption = #23610#23544'/'#23610#30721 + DataBinding.FieldName = 'defstr1' + HeaderAlignmentHorz = taCenter + Width = 71 + end + object Tv1Column2: TcxGridDBColumn + Caption = #20179#24211#32534#21495 + DataBinding.FieldName = 'DRCKNO' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column3: TcxGridDBColumn + Caption = #20179#24211#21517#31216 + DataBinding.FieldName = 'DRCKName' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column3: TcxGridDBColumn + Caption = #24037#21345#21495 + DataBinding.FieldName = 'defstr2' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1CPType: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'CPType' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Price: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1money: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'money' + HeaderAlignmentHorz = taCenter + Styles.Content = CPCK_DataLink.cxStyle_fontclFuchsia + Styles.Footer = CPCK_DataLink.cxStyle_fontclFuchsia + Styles.Header = CPCK_DataLink.cxStyle_fontclFuchsia + Width = 60 + end + object v1Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1Filler: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1FillTime: TcxGridDBColumn + Caption = #25805#20316#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Width = 75 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 93 + Width = 1249 + Height = 20 + Align = alTop + TabOrder = 3 + Properties.CustomButtons.Buttons = <> + Properties.Style = 9 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + #26410#20316#24223 + #24050#20316#24223 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectRight = 0 + ClientRectTop = 0 + end + object cxGrid2: TcxGrid + Left = 0 + Top = 268 + Width = 1249 + Height = 211 + Align = alBottom + TabOrder = 4 + Visible = False + object TV2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = TV2Column14 + end + item + Kind = skSum + Column = TV2Column2 + end + item + Kind = skSum + Column = TV2Column3 + end + item + Kind = skSum + Column = TV2Column4 + end + item + Kind = skSum + Column = TV2Column5 + end + item + Kind = skSum + Column = TV2Column6 + end + item + Kind = skSum + Column = TV2Column7 + end + item + Kind = skSum + Column = TV2Column8 + end + item + Kind = skSum + Column = TV2Column9 + end + item + Kind = skSum + Column = TV2Column10 + end + item + Kind = skSum + Column = TV2Column11 + end + item + Kind = skSum + Column = TV2Column12 + end + item + Kind = skSum + Column = TV2Column13 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object TV2Column1: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column14: TcxGridDBColumn + Caption = #21512#35745 + DataBinding.FieldName = 'ZQty' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column17: TcxGridDBColumn + Caption = 'CXXXS' + DataBinding.FieldName = 'Size15' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object TV2Column2: TcxGridDBColumn + Caption = 'CXXS' + DataBinding.FieldName = 'Size1' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column3: TcxGridDBColumn + Caption = 'CXS' + DataBinding.FieldName = 'Size2' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column4: TcxGridDBColumn + Caption = 'CS' + DataBinding.FieldName = 'Size3' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column5: TcxGridDBColumn + Caption = 'CM' + DataBinding.FieldName = 'Size4' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column6: TcxGridDBColumn + Caption = 'CL' + DataBinding.FieldName = 'Size5' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column7: TcxGridDBColumn + Caption = 'CXL' + DataBinding.FieldName = 'Size6' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column15: TcxGridDBColumn + Caption = 'CXXL' + DataBinding.FieldName = 'Size13' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column8: TcxGridDBColumn + Caption = 'AXS' + DataBinding.FieldName = 'Size7' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column9: TcxGridDBColumn + Caption = 'AS' + DataBinding.FieldName = 'Size8' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column10: TcxGridDBColumn + Caption = 'AM' + DataBinding.FieldName = 'Size9' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column11: TcxGridDBColumn + Caption = 'AL' + DataBinding.FieldName = 'Size10' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column12: TcxGridDBColumn + Caption = 'AXL' + DataBinding.FieldName = 'Size11' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column13: TcxGridDBColumn + Caption = 'AXXL' + DataBinding.FieldName = 'Size12' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column16: TcxGridDBColumn + Caption = 'AXXXL' + DataBinding.FieldName = 'Size14' + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + object ADOQueryCmd: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 680 + Top = 8 + end + object ADOQueryTmp: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 796 + Top = 12 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 652 + Top = 1 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 716 + Top = 1 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 860 + Top = 65528 + end + object AdoPrint: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 908 + Top = 76 + end + object AdoPrint1: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 1012 + Top = 48 + end + object RMDB_MD: TRMDBDataSet + Visible = True + DataSet = AdoPrint1 + Left = 876 + Top = 64 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = AdoPrint + Left = 952 + Top = 56 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 896 + Top = 8 + ReportData = {} + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 956 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 904 + Top = 353 + end + object DataSource2: TDataSource + DataSet = CDS_Sub + Left = 840 + Top = 353 + end + object ADOQuerySub: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 760 + Top = 380 + end +end diff --git a/成品仓库/U_BpRklist.pas b/成品仓库/U_BpRklist.pas new file mode 100644 index 0000000..59e9a94 --- /dev/null +++ b/成品仓库/U_BpRklist.pas @@ -0,0 +1,565 @@ +unit U_BpRklist; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, + cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, + cxGrid, DBClient, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, RM_Common, + RM_Class, RM_e_Xls, RM_GridReport, RM_System, RM_Dataset, cxPC, cxLookAndFeels, + cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu, 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 + TfrmBpRklist = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1P_SPEC: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1CRType: TcxGridDBColumn; + v1CRTime: TcxGridDBColumn; + v1CRNO: TcxGridDBColumn; + v1CRID: TcxGridDBColumn; + v1Filler: TcxGridDBColumn; + v1FillTime: TcxGridDBColumn; + Label2: TLabel; + Label3: TLabel; + P_CodeName: TEdit; + CRType: TComboBox; + Label5: TLabel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + v1MJID: TcxGridDBColumn; + v1MJXH: TcxGridDBColumn; + v1CPType: TcxGridDBColumn; + ckName: TComboBox; + Label6: TLabel; + v1P_Code: TcxGridDBColumn; + TBAddSM: TToolButton; + v1INoutNo: TcxGridDBColumn; + Label7: TLabel; + inoutNo: TEdit; + v1custName: TcxGridDBColumn; + v1Price: TcxGridDBColumn; + v1money: TcxGridDBColumn; + custName: TEdit; + Label8: TLabel; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + AdoPrint: TADOQuery; + AdoPrint1: TADOQuery; + RMDB_MD: TRMDBDataSet; + RMDB_Main: TRMDBDataSet; + RMGridReport1: TRMGridReport; + RMXLSExport1: TRMXLSExport; + cxTabControl1: TcxTabControl; + TBCdel: TToolButton; + v1Column4: TcxGridDBColumn; + orderNo: TEdit; + Label9: TLabel; + P_Code: TEdit; + Label11: TLabel; + Tv1Column2: TcxGridDBColumn; + Tv1Column3: TcxGridDBColumn; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + TV2Column1: TcxGridDBColumn; + TV2Column14: TcxGridDBColumn; + TV2Column2: TcxGridDBColumn; + TV2Column3: TcxGridDBColumn; + TV2Column4: TcxGridDBColumn; + TV2Column5: TcxGridDBColumn; + TV2Column6: TcxGridDBColumn; + TV2Column7: TcxGridDBColumn; + TV2Column8: TcxGridDBColumn; + TV2Column9: TcxGridDBColumn; + TV2Column10: TcxGridDBColumn; + TV2Column11: TcxGridDBColumn; + TV2Column12: TcxGridDBColumn; + TV2Column13: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + CDS_Sub: TClientDataSet; + DataSource2: TDataSource; + ADOQuerySub: TADOQuery; + TV2Column15: TcxGridDBColumn; + TV2Column16: TcxGridDBColumn; + TV2Column17: TcxGridDBColumn; + Tv1Column4: TcxGridDBColumn; + Tv1Column5: TcxGridDBColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure P_CodeNameChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBAddSMClick(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure TBCdelClick(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + private + procedure InitGrid(); + procedure InitSub(); + procedure SetComboBox(); + procedure SetStatus(); + { Private declarations } + public + fCKName: string; + { Public declarations } + end; + +var + frmBpRklist: TfrmBpRklist; + +implementation + +uses + U_DataLink, U_Fun10, U_ZDYHelp, U_BpRk, U_BpSmRk; +{$R *.dfm} + +procedure TfrmBpRklist.SetStatus(); +begin + TBedit.Visible := false; + Tbdel.Visible := false; + tbcdel.Visible := false; + case cxTabControl1.TabIndex of + 0: + begin + TBedit.Visible := true; + Tbdel.Visible := true; + end; + 1: + begin + tbcdel.Visible := true; + end; + end; +end; + +procedure TfrmBpRklist.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPCK'' '); + if trim(fCKName) <> '' then + sql.Add('and zdyName=' + quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count > 0 then + ckName.ItemIndex := 0; + + CRType.Items.Clear; + CRType.Items.Add(''); + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPRKTYPE'''); + if trim(fCKName) <> '' then + sql.Add('and note=' + quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count > 0 then + CRType.ItemIndex := 0; +end; + +procedure TfrmBpRklist.InitGrid(); +begin + try + with adoqueryTmp do + begin + close; + sql.Clear; +// sql.Add(' exec P_Get_CP_RK ''' + formatdateTime('yyyy-MM-dd', begdate.Date) + ''',''' + formatdateTime('yyyy-MM-dd', enddate.Date + 1) + ''',''' + inttostr(cxTabControl1.TabIndex) + ''' '); + + sql.Add('select A.*,'); + sql.Add('orderNo=(select Top 1 orderNo from JYOrder_Main X where X.MainID=A.MainID )'); + + sql.Add('from CP_InOut A'); + sql.Add('where CRTime>=''' + formatdateTime('yyyy-MM-dd', begdate.Date) + ''' '); + sql.Add('and CRTime<''' + formatdateTime('yyyy-MM-dd', enddate.Date + 1) + ''' '); + sql.Add('and CRFlag='''' '); + if trim(FckName) <> '' then + sql.Add('and ckName=' + quotedstr(trim(fckName))); + if cxTabControl1.TabIndex = 0 then + sql.Add('and valid=''Y'' '); + if cxTabControl1.TabIndex = 1 then + sql.Add('and valid=''N'' '); +// ShowMessage(sql.Text); + open; + end; + SCreateCDS20(adoqueryTmp, CDS_Main); + SInitCDSData20(adoqueryTmp, CDS_Main); + finally + end; +end; + +procedure TfrmBpRklist.InitSub(); +begin + if CDS_Main.IsEmpty then + Exit; + try + with ADOQuerySub do + begin + close; + sql.Clear; + sql.Add('exec P_Get_CP_RK_MX ''' + Cds_main.fieldbyname('P_CodeName').AsString + ''' ,''' + Cds_main.fieldbyname('P_Code').AsString + ''',''' + Cds_main.fieldbyname('CRNO').AsString + ''' '); + sql.Add(' ,''' + cds_main.fieldbyname('DRCKNO').AsString + ''' ,''' + cds_main.fieldbyname('DRCKName').AsString + ''' '); +// ShowMessage(sql.text); + open; + end; + SCreateCDS20(ADOQuerySub, CDS_Sub); + SInitCDSData20(ADOQuerySub, CDS_Sub); + finally + end; +end; + +procedure TfrmBpRklist.FormClose(Sender: TObject; var Action: TCloseAction); +begin + writeCxGrid(self.Caption + '1', Tv1, 'Ʒֿ'); + Action := cafree; +end; + +procedure TfrmBpRklist.FormDestroy(Sender: TObject); +begin + frmBpRklist := nil; +end; + +procedure TfrmBpRklist.TBAddClick(Sender: TObject); +begin + frmbpRk := TfrmbpRk.create(self); + with frmbpRk do + begin + fkeyNo := ''; + fType := 0; + fckName := self.fckName; + if showmodal = 1 then + begin + TBRafresh.Click; + self.CDS_Main.Locate('crNo', trim(fkeyNo), []); + end; + free; + end; +end; + +procedure TfrmBpRklist.P_CodeNameChange(Sender: TObject); +begin + if ADOQueryTmp.Active = False then + Exit; + SDofilter(ADOQueryTmp, SGetFilters(Panel1, 1, 2)); + SCreateCDS20(ADOQueryTmp, CDS_Main); + SInitCDSData20(ADOQueryTmp, CDS_Main); +end; + +procedure TfrmBpRklist.FormShow(Sender: TObject); +begin + readCxGrid(self.Caption + '1', Tv1, 'Ʒֿ'); + SetComboBox(); + SetStatus(); + InitGrid(); +end; + +procedure TfrmBpRklist.FormCreate(Sender: TObject); +begin + BegDate.Date := DServerDate - 7; + EndDate.Date := DServerDate; + cxGrid1.Align := alclient; + +end; + +procedure TfrmBpRklist.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmBpRklist.TBEditClick(Sender: TObject); +begin + if cds_main.IsEmpty then + exit; + if Trim(CDS_Main.fieldbyname('CRType').AsString) = Trim('ӹ') then + begin + Application.MessageBox('˵Ǽӹ⣬޸ģ', 'ʾ', 0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add(' select * from YF_Money_CR A'); + SQL.Add(' where A.mainid=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sql.Add(' and status>=''1'' '); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('Ӧûгˣ޸ģ', 'ʾ', 0); + Exit; + end; +{ + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CP_InOut A'); + SQL.Add('where A.kcid='''+Trim(CDS_Main.fieldbyname('kcid').AsString)+''' '); + sQL.Add('and A.CRFlag='''''); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('Ѳݣ޸ģ','ʾ',0); + Exit; + end; } + + frmbpRk := TfrmbpRk.create(self); + with frmbpRk do + begin + fkeyNo := self.cds_main.fieldbyname('CRNO').AsString; + FCode := self.cds_main.fieldbyname('P_Code').AsString; + FCodeName := self.cds_main.fieldbyname('P_Codename').AsString; + FDRCKNO := self.cds_main.fieldbyname('DRCKNO').AsString; + FDRCKName := self.cds_main.fieldbyname('DRCKName').AsString; + fType := 1; + fckName := self.fckName; + if showmodal = 1 then + begin + TBRafresh.Click; + self.CDS_Main.Locate('crNo', trim(fkeyNo), []); + end; + free; + end; +end; + +procedure TfrmBpRklist.TBDelClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then + Exit; + { if Trim(CDS_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; } + if Trim(CDS_Main.fieldbyname('CRType').AsString) = Trim('ӹ') then + begin + Application.MessageBox('˵Ǽӹ⣬ϣ', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add(' select * from YF_Money_CR A'); + SQL.Add(' where A.mainid=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sql.Add(' and status>=''1'' '); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('Ӧûгˣϣ', 'ʾ', 0); + Exit; + end; + + if Application.MessageBox('ȷҪ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + try + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR '); + SQL.Add('where mainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + + sql.Add('delete from CP_kc '); + SQL.Add('where CRNO=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + SQL.Add('and ISNULL(P_Code,'''')=''' + trim(CDS_Main.fieldbyname('P_Code').AsString) + ''' '); + SQL.Add('and ISNULL(P_CodeName,'''')=''' + trim(CDS_Main.fieldbyname('P_CodeName').AsString) + ''' '); + SQL.Add('and ISNULL(DRCKNO,'''')=''' + trim(CDS_Main.fieldbyname('DRCKNO').AsString) + ''' '); + SQL.Add('and ISNULL(DRCKName,'''')=''' + trim(CDS_Main.fieldbyname('DRCKName').AsString) + ''' '); + + sql.Add('update CP_InOut SET valid=''N'' '); + SQL.Add('where CRNO=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + SQL.Add('and ISNULL(P_Code,'''')=''' + trim(CDS_Main.fieldbyname('P_Code').AsString) + ''' '); + SQL.Add('and ISNULL(P_CodeName,'''')=''' + trim(CDS_Main.fieldbyname('P_CodeName').AsString) + ''' '); + SQL.Add('and ISNULL(DRCKNO,'''')=''' + trim(CDS_Main.fieldbyname('DRCKNO').AsString) + ''' '); + SQL.Add('and ISNULL(DRCKName,'''')=''' + trim(CDS_Main.fieldbyname('DRCKName').AsString) + ''' '); + execsql; + end; + TBRafresh.Click; + except + Application.MessageBox('ɾʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmBpRklist.TBRafreshClick(Sender: TObject); +begin + initGrid(); +end; + +procedure TfrmBpRklist.TBPrintClick(Sender: TObject); +var + filepath: string; +begin + if CDS_Main.IsEmpty then + exit; + if CDS_Main.FieldByName('CRType').AsString <> '˻' then + begin + application.MessageBox('˻⣬ܴӡ뵥', 'ʾϢ', 0); + exit; + end; + + with AdoPrint do + begin + close; + sql.Clear; + sql.Add('select A.* from CP_InOut A'); + sql.Add('where inoutNO=' + quotedstr(trim(CDS_Main.fieldbyname('inoutNO').AsString))); + open; + end; + + with AdoPrint1 do + begin + close; + sql.Clear; + sql.Add('exec P_Print_cpCkMd '); + sql.Add('@inoutNo=' + quotedstr(trim(CDS_Main.fieldbyname('inoutNO').AsString))); + sql.Add(',@flag=' + quotedstr(trim(''))); + open; + end; + + try + filepath := ExtractFilePath(Application.ExeName) + 'report\˻뵥.rmf'; + if not FileExists(Pchar(filepath)) then + begin + application.MessageBox(pchar('ļ[' + filepath + ']ڣ'), 'ʾϢ', MB_IConError); + exit; + end; + RMVariables['dtxz'] := FormatDateTime('yyyy-mm-dd', date()); + RMVariables['zdr'] := trim(DName); + RMVariables['Filler'] := trim(CDS_Main.fieldbyname('Filler').AsString); + RMGridReport1.LoadFromFile(filepath); + RMGridReport1.ShowReport; + finally + + end; +end; + +procedure TfrmBpRklist.TBExportClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then + Exit; + TcxGridToExcel(self.Caption, cxgrid1); +end; + +procedure TfrmBpRklist.TBAddSMClick(Sender: TObject); +begin + frmBpSmRk := TfrmBpSmRk.create(self); + with frmBpSmRk do + begin + fkeyNo := ''; + fType := 0; + fckName := self.fckName; + if showmodal = 1 then + begin + TBRafresh.Click; + // self.CDS_Main.Locate('crNo',trim(fkeyNo),[]) ; + end; + free; + end; +end; + +procedure TfrmBpRklist.cxTabControl1Change(Sender: TObject); +begin + SetStatus(); + InitGrid(); +end; + +procedure TfrmBpRklist.TBCdelClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then + exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + try + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from CP_InOut where CRNO=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + SQL.Add('and ISNULL(P_Code,'''')=''' + trim(CDS_Main.fieldbyname('P_Code').AsString) + ''' '); + SQL.Add('and ISNULL(P_CodeName,'''')=''' + trim(CDS_Main.fieldbyname('P_CodeName').AsString) + ''' '); + SQL.Add('and ISNULL(DRCKNO,'''')=''' + trim(CDS_Main.fieldbyname('DRCKNO').AsString) + ''' '); + SQL.Add('and ISNULL(DRCKName,'''')=''' + trim(CDS_Main.fieldbyname('DRCKName').AsString) + ''' '); + execsql; + end; + TBRafresh.Click; + except + Application.MessageBox('ɾʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmBpRklist.Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + initsub(); +end; + +end. + diff --git a/成品仓库/U_BpSmCk.dfm b/成品仓库/U_BpSmCk.dfm new file mode 100644 index 0000000..73a8bec --- /dev/null +++ b/成品仓库/U_BpSmCk.dfm @@ -0,0 +1,828 @@ +object frmBpSmCk: TfrmBpSmCk + Left = 10 + Top = 2 + Width = 1308 + Height = 707 + Caption = #25195#25551#20986#24211 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + WindowState = wsMaximized + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1292 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + Visible = False + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 228 + Width = 1292 + Height = 52 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 20 + Top = 20 + Width = 48 + Height = 12 + Caption = #20986#24211#26085#26399 + end + object Label2: TLabel + Left = 504 + Top = 20 + Width = 48 + Height = 12 + Caption = #20986#24211#31867#22411 + end + object Label3: TLabel + Left = 36 + Top = 80 + Width = 48 + Height = 12 + Caption = #21457#24448#21333#20301 + end + object Label4: TLabel + Left = 364 + Top = 20 + Width = 24 + Height = 12 + Caption = #20179#24211 + end + object Label5: TLabel + Left = 36 + Top = 64 + Width = 48 + Height = 12 + Caption = #35746#21333#20449#24687 + end + object Label6: TLabel + Left = 252 + Top = 64 + Width = 24 + Height = 12 + Caption = #20135#21697 + end + object Label7: TLabel + Left = 488 + Top = 64 + Width = 48 + Height = 12 + Caption = #39068' '#33394 + end + object Label8: TLabel + Left = 196 + Top = 20 + Width = 48 + Height = 12 + Caption = #20986#24211#21333#21495 + end + object Label10: TLabel + Left = 856 + Top = 20 + Width = 48 + Height = 12 + Caption = #21457#24448#21333#20301 + end + object Label11: TLabel + Left = 668 + Top = 20 + Width = 48 + Height = 12 + Caption = #23458' '#25143 + end + object CRTime: TDateTimePicker + Left = 72 + Top = 16 + Width = 100 + Height = 20 + Date = 41509.970132187500000000 + Format = 'yyyy-MM-dd' + Time = 41509.970132187500000000 + TabOrder = 0 + end + object CRType: TComboBox + Left = 556 + Top = 16 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 1 + Text = #38144#21806#20986#24211 + Items.Strings = ( + #38144#21806#20986#24211 + #21152#24037#20986#24211) + end + object FirstName: TBtnEditA + Left = 88 + Top = 76 + Width = 557 + Height = 20 + ReadOnly = True + TabOrder = 2 + OnBtnClick = FirstNameBtnClick + end + object ckName: TComboBox + Left = 392 + Top = 16 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 3 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object orderNO: TBtnEditA + Left = 88 + Top = 60 + Width = 100 + Height = 20 + ReadOnly = True + TabOrder = 4 + OnBtnClick = orderNOBtnClick + end + object PRTCodeName: TEdit + Left = 280 + Top = 60 + Width = 100 + Height = 20 + Enabled = False + ReadOnly = True + TabOrder = 5 + end + object PRTColor: TEdit + Left = 544 + Top = 60 + Width = 100 + Height = 20 + Enabled = False + ReadOnly = True + TabOrder = 6 + end + object InoutNo: TEdit + Left = 244 + Top = 16 + Width = 100 + Height = 20 + TabOrder = 7 + end + object ToCustName: TBtnEditA + Left = 912 + Top = 16 + Width = 120 + Height = 20 + ReadOnly = True + TabOrder = 8 + OnBtnClick = ToCustNameBtnClick + end + object custName: TBtnEditA + Left = 720 + Top = 16 + Width = 120 + Height = 20 + ReadOnly = True + TabOrder = 9 + OnBtnClick = custNameBtnClick + end + end + object GroupBox1: TGroupBox + Left = 0 + Top = 280 + Width = 565 + Height = 389 + Align = alLeft + TabOrder = 2 + object cxGrid1: TcxGrid + Left = 2 + Top = 14 + Width = 561 + Height = 373 + Align = alClient + TabOrder = 0 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1RollNum + end + item + Kind = skSum + Column = v1Qty + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object v1MJID: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 75 + end + object v1MJXH: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1P_Code: TcxGridDBColumn + Caption = #21697#21495 + DataBinding.FieldName = 'P_Code' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1P_CodeNamePropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1P_SPEC: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'P_SPEC' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 90 + end + object v1P_Color: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1P_MF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'P_MF' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1P_KZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'P_KZ' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1CPType: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'CPType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1RollNum: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'RollNum' + HeaderAlignmentHorz = taCenter + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 50 + end + object v1Qty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 60 + end + object v1QtyUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 132 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + end + object GroupBox2: TGroupBox + Left = 565 + Top = 280 + Width = 612 + Height = 389 + Align = alLeft + TabOrder = 3 + object Panel2: TPanel + Left = 2 + Top = 14 + Width = 608 + Height = 75 + Align = alTop + BevelOuter = bvNone + TabOrder = 0 + object Label9: TLabel + Left = 28 + Top = 20 + Width = 60 + Height = 20 + Caption = #21367#26465#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object MJID: TEdit + Left = 92 + Top = 16 + Width = 185 + Height = 28 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + OnKeyPress = MJIDKeyPress + end + end + object cxGrid3: TcxGrid + Left = 2 + Top = 89 + Width = 608 + Height = 298 + Align = alClient + TabOrder = 1 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCustomDrawCell = Tv3CustomDrawCell + DataController.DataSource = DS_inout + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = cxGridDBColumn7 + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn13 + end + item + Kind = skSum + Column = cxGridDBColumn14 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object cxGridDBColumn16: TcxGridDBColumn + Caption = #22791#27880#20449#24687 + DataBinding.FieldName = 'SDefNote' + HeaderAlignmentHorz = taCenter + Width = 132 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 75 + end + object cxGridDBColumn13: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'RollNum' + HeaderAlignmentHorz = taCenter + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 50 + end + object cxGridDBColumn14: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 60 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #21697#21495 + DataBinding.FieldName = 'P_Code' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object cxGridDBColumn7: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1P_CodeNamePropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object cxGridDBColumn8: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'P_SPEC' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 90 + end + object cxGridDBColumn12: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'CPType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object cxGridDBColumn15: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + end + object Panel3: TPanel + Left = 0 + Top = 29 + Width = 1292 + Height = 199 + Align = alTop + BevelOuter = bvNone + TabOrder = 4 + object cxGrid2: TcxGrid + Left = 0 + Top = 0 + Width = 1180 + Height = 199 + Align = alClient + TabOrder = 0 + object TV2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DS_CP + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.GroupByBox = False + Styles.Inactive = CPCK_DataLink.SHuangSe + Styles.IncSearch = CPCK_DataLink.SHuangSe + Styles.Selection = CPCK_DataLink.SHuangSe + Styles.Header = CPCK_DataLink.Default + object v1SSel: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 68 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 72 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 68 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 73 + end + object v1Column1: TcxGridDBColumn + Caption = #21697#21495 + DataBinding.FieldName = 'MPrtCode' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 62 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 69 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1pbRollNum: TcxGridDBColumn + Caption = #26410#20837#24211#21305#25968 + DataBinding.FieldName = 'pbRollNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1pbQty: TcxGridDBColumn + Caption = #26410#20837#24211#25968#37327 + DataBinding.FieldName = 'pbQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1rkRollNum: TcxGridDBColumn + Caption = #20837#24211#21305#25968 + DataBinding.FieldName = 'rkRollNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1rkqty: TcxGridDBColumn + Caption = #20837#24211#25968#37327 + DataBinding.FieldName = 'rkqty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1ckRollNum: TcxGridDBColumn + Caption = #20986#24211#21305#25968 + DataBinding.FieldName = 'ckRollNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1ckQty: TcxGridDBColumn + Caption = #20986#24211#25968#37327 + DataBinding.FieldName = 'ckQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1kcRollNum: TcxGridDBColumn + Caption = #24211#23384#21305#25968 + DataBinding.FieldName = 'kcRollNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1kcQty: TcxGridDBColumn + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'kcQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + object Panel4: TPanel + Left = 1180 + Top = 0 + Width = 112 + Height = 199 + Align = alRight + TabOrder = 1 + object cxButton1: TcxButton + Left = 4 + Top = 16 + Width = 105 + Height = 37 + Caption = #36873#25321#20135#21697 + TabOrder = 0 + OnClick = cxButton1Click + LookAndFeel.Kind = lfOffice11 + end + end + end + object Panel5: TPanel + Left = 52 + Top = 328 + Width = 485 + Height = 261 + Caption = 'PanelXs' + TabOrder = 5 + Visible = False + end + object ADOQueryCmd: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 292 + Top = 8 + end + object ADOQueryTmp: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 340 + Top = 8 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 340 + Top = 341 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 376 + Top = 337 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 728 + Top = 101 + end + object CDS_CP: TClientDataSet + Aggregates = <> + Params = <> + Left = 350 + Top = 163 + end + object DS_CP: TDataSource + DataSet = CDS_CP + Left = 294 + Top = 155 + end + object CDS_Inout: TClientDataSet + Aggregates = <> + Params = <> + Left = 864 + Top = 296 + end + object DS_inout: TDataSource + DataSet = CDS_Inout + Left = 820 + Top = 308 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 628 + Top = 113 + end + object cxGridPopupMenu3: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 536 + Top = 101 + end +end diff --git a/成品仓库/U_BpSmCk.pas b/成品仓库/U_BpSmCk.pas new file mode 100644 index 0000000..82affba --- /dev/null +++ b/成品仓库/U_BpSmCk.pas @@ -0,0 +1,864 @@ +unit U_BpSmCk; + +interface + +uses + Windows, Messages, SysUtils,StrUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxGridLevel, cxClasses, cxControls, + cxGridCustomView, cxGrid, StdCtrls, ComCtrls, ExtCtrls, ToolWin, + cxButtonEdit, cxDropDownEdit, DBClient, ADODB, cxGridCustomPopupMenu, + cxGridPopupMenu, BtnEdit, Menus, cxLookAndFeelPainters, cxButtons, + cxCheckBox, cxCalendar; + +type + TfrmBpSmCk = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + CRTime: TDateTimePicker; + Label2: TLabel; + CRType: TComboBox; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1P_SPEC: TcxGridDBColumn; + v1P_MF: TcxGridDBColumn; + v1P_KZ: TcxGridDBColumn; + v1RollNum: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1QtyUnit: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + Label3: TLabel; + FirstName: TBtnEditA; + v1MJID: TcxGridDBColumn; + v1MJXH: TcxGridDBColumn; + v1CPType: TcxGridDBColumn; + ckName: TComboBox; + Label4: TLabel; + Label5: TLabel; + orderNO: TBtnEditA; + Label6: TLabel; + PRTCodeName: TEdit; + Label7: TLabel; + PRTColor: TEdit; + v1P_Color: TcxGridDBColumn; + v1P_Code: TcxGridDBColumn; + Label8: TLabel; + InoutNo: TEdit; + GroupBox1: TGroupBox; + Panel3: TPanel; + GroupBox2: TGroupBox; + Panel2: TPanel; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridDBColumn7: TcxGridDBColumn; + cxGridDBColumn8: TcxGridDBColumn; + cxGridDBColumn12: TcxGridDBColumn; + cxGridDBColumn13: TcxGridDBColumn; + cxGridDBColumn14: TcxGridDBColumn; + cxGridDBColumn15: TcxGridDBColumn; + cxGridDBColumn16: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + Label9: TLabel; + MJID: TEdit; + CDS_CP: TClientDataSet; + DS_CP: TDataSource; + CDS_Inout: TClientDataSet; + DS_inout: TDataSource; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + v1SSel: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1OrderNo: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1CustomerNoName: TcxGridDBColumn; + v1MPRTCodeName: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + v1pbRollNum: TcxGridDBColumn; + v1pbQty: TcxGridDBColumn; + v1rkRollNum: TcxGridDBColumn; + v1rkqty: TcxGridDBColumn; + v1ckRollNum: TcxGridDBColumn; + v1ckQty: TcxGridDBColumn; + v1kcRollNum: TcxGridDBColumn; + v1kcQty: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Panel4: TPanel; + cxButton1: TcxButton; + Panel5: TPanel; + cxGridPopupMenu2: TcxGridPopupMenu; + cxGridPopupMenu3: TcxGridPopupMenu; + ToCustName: TBtnEditA; + Label10: TLabel; + custName: TBtnEditA; + Label11: TLabel; + procedure FormDestroy(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure v1P_CodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton2Click(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FirstNameBtnClick(Sender: TObject); + procedure orderNOBtnClick(Sender: TObject); + procedure cxButton1Click(Sender: TObject); + procedure MJIDKeyPress(Sender: TObject; var Key: Char); + procedure Tv3CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure ToCustNameBtnClick(Sender: TObject); + procedure custNameBtnClick(Sender: TObject); + private + fcrId:integer; + TblCprk:string; + procedure InitGrid(); + function savedate():Boolean; + procedure SetComboBox(); + function YSData(Order_Main10:TClientDataSet):Boolean; + procedure DoCRkNum(); + procedure CreateTable(); + procedure DropTable(); + { Private declarations } + public + fkeyNO:string; + FType:integer; + fCKName:string; + { Public declarations } + end; + +var + frmBpSmCk: TfrmBpSmCk; + +implementation + uses + U_DataLink,U_Fun10,U_ZDYHelp, U_Bpkclist, U_ProductOrderNewList; +{$R *.dfm} +procedure TfrmBpSmCk.DropTable(); +var + strSQL:string; +begin + // TblCprk := '[##CP_INOut123' + trim(DCode) + IntToStr(Handle)+formatdatetime('hhnnsszzz',time) + ']'; + //ʱ + strSQL := 'IF OBJECT_ID(''tempdb..' + TblCprk + ''') IS NOT NULL DROP TABLE ' + TblCprk; + with adoqueryTmp do + begin + Close; + SQL.Clear; + SQL.Add(strSQL); + ExecSQL; + end; +end; +procedure TfrmBpSmCk.CreateTable(); +var + strSQL:string; +begin + TblCprk := '[##CP_INOut123' + trim(DCode) + IntToStr(Handle)+formatdatetime('hhnnsszzz',time) + ']'; + //ʱ + strSQL := 'IF OBJECT_ID(''tempdb..' + TblCprk + ''') IS NOT NULL DROP TABLE ' + TblCprk + #13 + + 'CREATE TABLE ' + TblCprk + ' (' + + 'MainID VARCHAR(20),' + + 'subID VARCHAR(20))'#13; + with adoqueryTmp do + begin + Close; + SQL.Clear; + SQL.Add(strSQL); + ExecSQL; + end; +end; +procedure TfrmBpSmCk.DocRkNum(); +var + strsql:string; +begin + if cds_Cp.IsEmpty then exit; + strsql:=''; + + with adoqueryTmp do + begin + Close; + SQL.Clear; + SQL.Add('delete from '+TblCprk); + execsql; + end; + with cds_Cp do + begin + DisableControls; + First; + while not eof do + begin + with adoqueryTmp do + begin + Close; + SQL.Clear; + SQL.Add(' insert into '+TblCprk+'(MainID) values( '); + SQL.Add(' '+quotedstr(trim(CDS_CP.fieldbyname('mainID').AsString))); + sql.add(')'); + execsql; + end; + next; + end; + EnableControls; + end; + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from CP_KC A'); + sql.Add('inner join '+TblCprk+' B on B.mainID=A.MainID '); + sql.Add('where A.Qty<>0'); + open; + end; + SCreateCDS20(adoqueryTmp,CDS_Inout); + SCreateCDS20(adoqueryTmp,CDS_Main); + SInitCDSData20(adoqueryTmp,CDS_Main); +end; +function TfrmBpSmCk.YSData(Order_Main10:TClientDataSet):Boolean; +var + CRID,YFID,Price,PriceUnit,OrderUnit,FComTaiTou,cust:String; +begin + Result:=False; + with Order_Main10 do + begin + + with ADOQueryTmp do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrder_main where MainID='''+Trim(Order_Main10.fieldbyname('MainID').AsString)+''''); + Open; + cust:=FieldbyName('customerNOName').AsString; + end; + with ADOQueryTmp do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrder_sub where MainID='''+Trim(Order_Main10.fieldbyname('MainID').AsString)+''''); + sql.Add(' and subID='''+Trim(Order_Main10.fieldbyname('subID').AsString)+''''); + Open; + Price:=FieldbyName('PrtPrice').AsString; + end; + + with ADOQueryTmp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(cust)+''' and YFDefFlag1=0 '); + Open; + end; + if not ADOQueryTmp.IsEmpty then + begin + CRID:=ADOQueryTmp.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(cust); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryTmp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add(' where MainID='''+Trim(Order_Main10.fieldbyname('MainID').AsString)+''''); + sql.Add(' and subID='''+Trim(Order_Main10.fieldbyname('subID').AsString)+''''); + sql.Add(' and YFName=''Ʒ'' '); + Open; + end; + if ADOQueryTmp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd,YFID,'CS','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡӦʧ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(Order_Main10.fieldbyname('MainId').AsString); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦտǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(cust); + FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',date())); + FieldByName('YFType').Value:='Զ'; + FieldByName('Price').Value:=Price; + //FieldByName('HuiLv').Value:=1; + FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=''; + FieldByName('QtyUnit').Value:=Trim(Order_Main10.fieldbyname('QtyUnit').AsString); + FieldByName('ComTaiTou').Value:=Trim(cust); + FieldByName('YFName').Value:='Ʒ'; + FieldByName('MainId').Value:=Trim(Order_Main10.fieldbyname('Mainid').AsString); + FieldByName('subID').Value:=Trim(Order_Main10.fieldbyname('subID').AsString); + Post; + end; + end + else + begin + YFID:=Trim(ADOQueryTmp.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update YF_Money_CR Set Qty=(select isnull(Sum(Qty),0) from BP_INout A '); + sql.Add(' where A.mainID=YF_Money_CR.mainID and A.subiD=YF_Money_CR.subiD and A.CRType=''Ʒ'' )'); + sql.Add(',PS=(select isnull(count(*),0) from BP_INout A '); + sql.Add(' where A.mainID=YF_Money_CR.mainID and A.subiD=YF_Money_CR.subiD and A.CRType=''Ʒ'' )'); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty*HuiLv'); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + end; + Result:=True; +end; +procedure TfrmBpSmCk.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPCK'' '); + if trim(fCKName)<>'' then + sql.Add('and zdyName='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count>0 then ckName.ItemIndex:=0; + + CRType.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPCKTYPE'''); + if trim(fCKName)<>'' then + sql.Add('and note='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count>0 then CRType.ItemIndex:=0; +end; +function TfrmBpSmCk.savedate():Boolean; +var + fkcID:integer; + Filler:string; + FillTime:TdateTime; + maxno:string; +begin + result:=false; + try + ADOQueryCmd.Connection.BeginTrans; + if FType=0 then + begin + Filler:=DName; + FillTime:=SGetServerDateTime(adoqueryTmp); + end + else + begin + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from CP_InOut'); + sql.Add('where CRNO='+quotedstr(trim(fkeyNO))); + open; + Filler:=adoqueryTmp.fieldbyname('Filler').AsString; + FillTime:=adoqueryTmp.fieldbyname('FillTime').AsDateTime; + end; + end; + + { with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update CP_kc set RollNum=A.RollNum + B.RollNum, Qty=A.Qty + B.Qty '); + sql.Add('from CP_kc A'); + sql.Add('inner join CP_INout B on B.kcid=A.kcid'); + sql.Add('where B.CRNO='+quotedstr(trim(fkeyNO))); + execsql; + end; + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from CP_INout'); + sql.Add('where CRNO='+quotedstr(trim(fkeyNO))); + execsql; + end; } + // CDS_Main.DisableControls; + // CDS_Main.First; + with CDS_Main do + begin + // while not eof do + // begin + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from CP_INout'); + sql.Add('where 1=2 '); + open; + end; + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('CRNO').Value:=trim(fkeyNO); + ADOQueryCmd.FieldByName('CRID').Value:=fcrid; + ADOQueryCmd.FieldByName('CKName').Value:=trim(CKName.Text); + ADOQueryCmd.FieldByName('InoutNO').Value:=trim(InoutNO.Text); + ADOQueryCmd.FieldByName('custNo').Value:=trim(custName.TxtCode); + ADOQueryCmd.FieldByName('custName').Value:=trim(custName.Text); + ADOQueryCmd.FieldByName('TocustNo').Value:=trim(TocustName.TxtCode); + ADOQueryCmd.FieldByName('TocustName').Value:=trim(TocustName.Text); + ADOQueryCmd.FieldByName('mainID').Value:=trim(fieldbyname('MainID').AsString); + ADOQueryCmd.FieldByName('subID').Value:=trim(fieldbyname('subID').AsString); + ADOQueryCmd.FieldByName('CRTime').Value:=formatdateTime('yyyy-MM-dd',CRTIme.Date); + ADOQueryCmd.FieldByName('CRType').Value:=trim(CRType.Text); + ADOQueryCmd.FieldByName('CRFlag').Value:=''; + ADOQueryCmd.FieldByName('MJID').Value:=trim(fieldbyname('MJID').AsString); + ADOQueryCmd.FieldByName('MJXH').Value:=trim(fieldbyname('MJXH').AsString); + ADOQueryCmd.FieldByName('CPTYPE').Value:=trim(fieldbyname('CPTYPE').AsString); + ADOQueryCmd.FieldByName('P_Code').Value:=trim(fieldbyname('P_Code').AsString); + ADOQueryCmd.FieldByName('P_CodeName').Value:=trim(fieldbyname('P_CodeName').AsString); + ADOQueryCmd.FieldByName('P_spec').Value:=trim(fieldbyname('P_spec').AsString); + ADOQueryCmd.FieldByName('P_Color').Value:=trim(fieldbyname('P_Color').AsString); + ADOQueryCmd.FieldByName('P_MF').Value:=fieldbyname('P_MF').AsFloat; + ADOQueryCmd.FieldByName('P_KZ').Value:=fieldbyname('P_KZ').AsFloat; + ADOQueryCmd.FieldByName('RollNum').Value:=fieldbyname('RollNum').AsFloat; + ADOQueryCmd.FieldByName('Qty').Value:=fieldbyname('Qty').AsFloat; + ADOQueryCmd.FieldByName('QtyUnit').Value:=trim(fieldbyname('QtyUnit').AsString); +// ADOQueryCmd.FieldByName('note').Value:=trim(fieldbyname('note').AsString); + ADOQueryCmd.FieldByName('Filler').Value:=trim(Filler); + ADOQueryCmd.FieldByName('FillTime').Value:=dateTimetostr(FillTime); + // ADOQueryCmd.FieldByName('FirstNo').Value:=trim(FirstName.TxtCode); + // ADOQueryCmd.FieldByName('FirstName').Value:=trim(FirstName.Text); + if FType=1 then + begin + ADOQueryCmd.FieldByName('editer').Value:=trim(dName); + ADOQueryCmd.FieldByName('editTime').Value:=SGetServerDateTime(adoqueryTmp); + end; + ADOQueryCmd.FieldByName('kcID').Value:=FieldByName('kcID').AsInteger; + ADOQueryCmd.Post; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update CP_kc set RollNum=A.RollNum - B.RollNum, Qty=A.Qty - B.Qty '); + sql.Add('from CP_kc A'); + sql.Add('inner join CP_INout B on B.kcid=A.kcid'); + sql.Add('where B.CRNO='+quotedstr(trim(fkeyNO))); + sql.Add('and B.CRID='''+inttostr(fcriD)+''''); + execsql; + end; + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update CP_kc set RollNum=1'); + sql.Add('from CP_kc A'); + sql.Add('where A.RollNum=0 and A.Qty<>0 '); + execsql; + end; + + { if trim(CRType.Text)='Ʒ' then + begin + if not YSData(CDS_Main) then + begin + ADOQueryCmd.Connection.RollbackTrans; + exit; + end; + end; } + end; + // CDS_Main.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + fcrId:=fcrId+1; + result:=true; + except + // CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; +procedure TfrmBpSmCk.InitGrid(); +begin + try + with adoqueryTmp do + begin + Close; + sql.Clear; + Filtered:=False; + sql.add('exec P_View_Order_CP :begdate,:enddate,:WSql') ; + Parameters.ParamByName('begdate').Value:='2012-10-01'; + Parameters.ParamByName('enddate').Value:='2011-10-01'; + Parameters.ParamByName('WSql').Value:=' and 1=2 '; + Open; + end; + SCreateCDS20(adoqueryTmp,CDS_CP); + SInitCDSData20(adoqueryTmp,CDS_CP); + + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select A.* from CP_InOut A'); + // sql.Add('left join JYOrder_sub B on B.mainID=A.mainID and B.subID=A.subID '); + sql.Add('where A.CRNO='+quotedstr(trim(fkeyNO))); + open; + end; + SCreateCDS20(adoqueryTmp,CDS_Inout); + SCreateCDS20(adoqueryTmp,CDS_Main); + SInitCDSData20(adoqueryTmp,CDS_Main); + if not CDS_Main.IsEmpty then + begin + CRTime.Date:= CDS_Main.fieldbyname('CRTime').AsDateTime; + CKName.ItemIndex:=CKName.Items.IndexOf(trim(CDS_Main.fieldbyname('CKName').AsString)); + CRType.ItemIndex:=CRType.Items.IndexOf(trim(CDS_Main.fieldbyname('CRType').AsString)); + InoutNO.Text:=trim(CDS_Main.fieldbyname('InoutNO').AsString); + // orderNo.Text:=trim(CDS_Main.fieldbyname('orderNo').AsString); + // PRTCodeName.Text:=trim(CDS_Main.fieldbyname('PRTCodeName').AsString); + // PRTColor.Text:=trim(CDS_Main.fieldbyname('PRTColor').AsString); + // FirstName.TxtCode:=trim(CDS_Main.fieldbyname('FirstNo').AsString); + // FirstName.Text:=trim(CDS_Main.fieldbyname('FirstName').AsString); + end; + finally + end; +end; + +procedure TfrmBpSmCk.FormDestroy(Sender: TObject); +begin + frmBpSmCk:=nil; +end; + +procedure TfrmBpSmCk.FormCreate(Sender: TObject); +begin + CRTime.Date:=DServerDate; + GroupBox2.Align:=alclient; + + CreateTable(); + fcrID:=1; +end; + +procedure TfrmBpSmCk.FormClose(Sender: TObject; var Action: TCloseAction); +begin + DropTable(); + writeCxGrid(self.Caption,Tv1,'Ʒֿ'); + writeCxGrid(self.Caption,Tv2,'Ʒֿ'); + writeCxGrid(self.Caption,Tv3,'Ʒֿ'); + Action:=cahide; +end; + +procedure TfrmBpSmCk.FormShow(Sender: TObject); +begin + readCxGrid(self.Caption,Tv1,'Ʒֿ'); + readCxGrid(self.Caption,Tv2,'Ʒֿ'); + readCxGrid(self.Caption,Tv3,'Ʒֿ'); + SetComboBox(); + InitGrid(); + if fType=0 then + begin + if GetLSNo(ADOQueryCmd,fkeyNo,'CK','CP_InOut',3,1)=False then + begin + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + inoutNo.Text:='C'+Trim(RightBStr(fkeyNo,Length(fkeyNo)-2)); + end; + MJID.SetFocus; +end; + +procedure TfrmBpSmCk.TBSaveClick(Sender: TObject); +begin + if cds_main.IsEmpty then exit; + CRTime.SetFocus; + if trim(CRType.Text)='' then + begin + application.MessageBox('ͲΪգ','ʾϢ',0); + exit; + end; + if trim(inoutNo.Text)='' then + begin + application.MessageBox('ⵥŲΪգ','ʾϢ',0); + exit; + end; + + if savedate() then + begin + InitCDSToCDS(CDS_Main,CDS_Inout); + CDS_Main.Delete; + with CDS_Inout do + begin + edit; + fieldbyname('SDefNote').Value:='ɹ'; + post; + end; + end + else + begin + // InitCDSToCDS(CDS_Main,CDS_Inout); + with CDS_Inout do + begin + append; + fieldbyname('MJID').Value:=CDS_Main.fieldbyname('MJID').AsString; + fieldbyname('SDefNote').Value:='ʧ'; + post; + end; + end; +end; + +procedure TfrmBpSmCk.v1P_CodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Cloth'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_Main.Edit; + Self.CDS_Main.FieldByName('P_CodeName').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.CDS_Main.FieldByName('P_Code').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmBpSmCk.ToolButton2Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then exit; + CDS_Main.Delete; +end; + +procedure TfrmBpSmCk.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmBpSmCk.FirstNameBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:='ص'; + MainType:='RanFactory'; + if ShowModal=1 then + begin + FirstName.Text:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + FirstName.TxtCode:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmBpSmCk.orderNOBtnClick(Sender: TObject); +begin + { frmProductOrderNewList:=TfrmProductOrderNewList.Create(Application); + with frmProductOrderNewList do + begin + DParameters1:='Ȩ'; + if showmodal=1 then + begin + self.fmainID:=trim(Order_Main.fieldbyname('MainID').AsString); + self.fsubID:=trim(Order_Main.fieldbyname('subID').AsString); + self.orderNo.Text:=trim(Order_Main.fieldbyname('orderNo').AsString); + self.PRTCodeName.Text:=trim(Order_Main.fieldbyname('PRTCodeName').AsString); + self.PRTColor.Text:=trim(Order_Main.fieldbyname('PRTColor').AsString); + end; + free; + end; } +end; + +procedure TfrmBpSmCk.cxButton1Click(Sender: TObject); +begin + frmProductOrderNewList:=TfrmProductOrderNewList.create(self); + with frmProductOrderNewList do + begin + // fType:=10; + // fckName:=self.fckName; + if showmodal=1 then + begin + self.CDS_CP.EmptyDataSet; + Order_Main.DisableControls; + Order_Main.First; + + while not Order_Main.Eof do + begin + + if (order_main.fieldbyname('ssel').AsBoolean) and + (not self.CDS_CP.Locate('MprtCode',order_main.fieldbyname('MprtCode').AsString,[])) then + begin + InitCDSToCDS(order_main,self.CDS_CP); + end; + Order_Main.Next; + end; + Order_Main.EnableControls; + end; + free; + end; + DocRkNum(); + MJID.SetFocus; +end; + +procedure TfrmBpSmCk.MJIDKeyPress(Sender: TObject; var Key: Char); +var + IsCz:boolean; +begin + IsCz:=false; + if key=#13 then + begin + if trim(MJID.Text)='' then exit; + + if CDS_Main.Locate('MJID',trim(MJID.Text),[]) then + begin + TBsave.Click; + end + else + begin + with CDS_Inout do + begin + append; + fieldbyname('MJID').Value:=trim(MJID.Text); + fieldbyname('SDefNote').Value:=''; + post; + end; + end; + MJID.text:=''; + MJID.SetFocus; + end; +end; + +procedure TfrmBpSmCk.Tv3CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); +var + i:integer; +begin + i:=tv3.GetColumnByFieldName('SDefNote').Index; + if (AViewInfo.GridRecord.Values[i]='ʧ') or (AViewInfo.GridRecord.Values[i]='') then + ACanvas.Brush.Color:=clred; + +end; + +procedure TfrmBpSmCk.ToCustNameBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CustomerNoName'; + flagname:='ͻ'; + if ShowModal=1 then + begin + ToCustName.Text:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + ToCustName.TxtCode:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmBpSmCk.custNameBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CustomerNoName'; + flagname:='ͻ'; + if ShowModal=1 then + begin + CustName.Text:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + CustName.TxtCode:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYNo').AsString); + ToCustName.Text:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + ToCustName.TxtCode:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +end. diff --git a/成品仓库/U_BpSmRk.dfm b/成品仓库/U_BpSmRk.dfm new file mode 100644 index 0000000..d763891 --- /dev/null +++ b/成品仓库/U_BpSmRk.dfm @@ -0,0 +1,796 @@ +object frmBpSmRk: TfrmBpSmRk + Left = 38 + Top = 26 + Width = 1308 + Height = 707 + Caption = #25195#25551#20837#24211 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + WindowState = wsMaximized + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1292 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + Visible = False + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + Visible = False + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 228 + Width = 1292 + Height = 52 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 32 + Top = 20 + Width = 48 + Height = 12 + Caption = #20837#24211#26085#26399 + end + object Label2: TLabel + Left = 600 + Top = 20 + Width = 48 + Height = 12 + Caption = #20837#24211#31867#22411 + end + object Label3: TLabel + Left = 36 + Top = 80 + Width = 48 + Height = 12 + Caption = #21457#24448#21333#20301 + end + object Label4: TLabel + Left = 420 + Top = 20 + Width = 24 + Height = 12 + Caption = #20179#24211 + end + object Label5: TLabel + Left = 36 + Top = 64 + Width = 48 + Height = 12 + Caption = #35746#21333#20449#24687 + end + object Label6: TLabel + Left = 252 + Top = 64 + Width = 24 + Height = 12 + Caption = #20135#21697 + end + object Label7: TLabel + Left = 488 + Top = 64 + Width = 48 + Height = 12 + Caption = #39068' '#33394 + end + object Label8: TLabel + Left = 228 + Top = 20 + Width = 48 + Height = 12 + Caption = #20837#24211#21333#21495 + end + object CRTime: TDateTimePicker + Left = 84 + Top = 16 + Width = 100 + Height = 20 + Date = 41509.970132187500000000 + Format = 'yyyy-MM-dd' + Time = 41509.970132187500000000 + TabOrder = 0 + end + object CRType: TComboBox + Left = 656 + Top = 16 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 1 + Text = #38144#21806#20986#24211 + Items.Strings = ( + #38144#21806#20986#24211 + #21152#24037#20986#24211) + end + object FirstName: TBtnEditA + Left = 88 + Top = 76 + Width = 557 + Height = 20 + ReadOnly = True + TabOrder = 2 + OnBtnClick = FirstNameBtnClick + end + object ckName: TComboBox + Left = 448 + Top = 16 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 3 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object orderNO: TBtnEditA + Left = 88 + Top = 60 + Width = 100 + Height = 20 + ReadOnly = True + TabOrder = 4 + OnBtnClick = orderNOBtnClick + end + object PRTCodeName: TEdit + Left = 280 + Top = 60 + Width = 100 + Height = 20 + Enabled = False + ReadOnly = True + TabOrder = 5 + end + object PRTColor: TEdit + Left = 544 + Top = 60 + Width = 100 + Height = 20 + Enabled = False + ReadOnly = True + TabOrder = 6 + end + object InoutNo: TEdit + Left = 280 + Top = 16 + Width = 100 + Height = 20 + TabOrder = 7 + end + end + object GroupBox1: TGroupBox + Left = 0 + Top = 280 + Width = 565 + Height = 389 + Align = alLeft + TabOrder = 2 + Visible = False + object cxGrid1: TcxGrid + Left = 2 + Top = 14 + Width = 561 + Height = 373 + Align = alClient + TabOrder = 0 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1RollNum + end + item + Kind = skSum + Column = v1Qty + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object v1MJID: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 75 + end + object v1MJXH: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1P_Code: TcxGridDBColumn + Caption = #21697#21495 + DataBinding.FieldName = 'P_Code' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1P_CodeNamePropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1P_SPEC: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'P_SPEC' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 90 + end + object v1P_Color: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1P_MF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'P_MF' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1P_KZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'P_KZ' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1CPType: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'CPType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1RollNum: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'RollNum' + HeaderAlignmentHorz = taCenter + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 50 + end + object v1Qty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 60 + end + object v1QtyUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 132 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + end + object GroupBox2: TGroupBox + Left = 565 + Top = 280 + Width = 612 + Height = 389 + Align = alLeft + TabOrder = 3 + object Panel2: TPanel + Left = 2 + Top = 14 + Width = 608 + Height = 75 + Align = alTop + BevelOuter = bvNone + TabOrder = 0 + object Label9: TLabel + Left = 28 + Top = 20 + Width = 60 + Height = 20 + Caption = #21367#26465#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object MJID: TEdit + Left = 92 + Top = 16 + Width = 185 + Height = 28 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + OnKeyPress = MJIDKeyPress + end + end + object cxGrid3: TcxGrid + Left = 2 + Top = 89 + Width = 608 + Height = 298 + Align = alClient + TabOrder = 1 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCustomDrawCell = Tv3CustomDrawCell + DataController.DataSource = DS_inout + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = cxGridDBColumn7 + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn13 + end + item + Kind = skSum + Column = cxGridDBColumn14 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object cxGridDBColumn16: TcxGridDBColumn + Caption = #22791#27880#20449#24687 + DataBinding.FieldName = 'SDefNote' + HeaderAlignmentHorz = taCenter + Width = 148 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 75 + end + object cxGridDBColumn13: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'RollNum' + HeaderAlignmentHorz = taCenter + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 50 + end + object cxGridDBColumn14: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'MJLEn' + HeaderAlignmentHorz = taCenter + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 60 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #21697#21495 + DataBinding.FieldName = 'MPRTCode' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object cxGridDBColumn7: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'MJStr7' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1P_CodeNamePropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object cxGridDBColumn8: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'MPRTSPEC' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 90 + end + object cxGridDBColumn12: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'MJType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object cxGridDBColumn15: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'MJTypeother' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + end + object Panel3: TPanel + Left = 0 + Top = 29 + Width = 1292 + Height = 199 + Align = alTop + BevelOuter = bvNone + TabOrder = 4 + Visible = False + object cxGrid2: TcxGrid + Left = 0 + Top = 0 + Width = 1180 + Height = 199 + Align = alClient + TabOrder = 0 + object TV2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DS_CP + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Styles.Inactive = CPCK_DataLink.SHuangSe + Styles.IncSearch = CPCK_DataLink.SHuangSe + Styles.Selection = CPCK_DataLink.SHuangSe + Styles.Header = CPCK_DataLink.Default + object v1SSel: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 68 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 72 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 68 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 73 + end + object v1Column1: TcxGridDBColumn + Caption = #21697#21495 + DataBinding.FieldName = 'MPrtCode' + HeaderAlignmentHorz = taCenter + Options.Editing = False + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 62 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 69 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1pbRollNum: TcxGridDBColumn + Caption = #26410#20837#24211#21305#25968 + DataBinding.FieldName = 'pbRollNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1pbQty: TcxGridDBColumn + Caption = #26410#20837#24211#25968#37327 + DataBinding.FieldName = 'pbQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1rkRollNum: TcxGridDBColumn + Caption = #20837#24211#21305#25968 + DataBinding.FieldName = 'rkRollNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1rkqty: TcxGridDBColumn + Caption = #20837#24211#25968#37327 + DataBinding.FieldName = 'rkqty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1ckRollNum: TcxGridDBColumn + Caption = #20986#24211#21305#25968 + DataBinding.FieldName = 'ckRollNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1ckQty: TcxGridDBColumn + Caption = #20986#24211#25968#37327 + DataBinding.FieldName = 'ckQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1kcRollNum: TcxGridDBColumn + Caption = #24211#23384#21305#25968 + DataBinding.FieldName = 'kcRollNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1kcQty: TcxGridDBColumn + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'kcQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + object Panel4: TPanel + Left = 1180 + Top = 0 + Width = 112 + Height = 199 + Align = alRight + TabOrder = 1 + object cxButton1: TcxButton + Left = 4 + Top = 16 + Width = 105 + Height = 37 + Caption = #36873#25321#20135#21697 + TabOrder = 0 + OnClick = cxButton1Click + LookAndFeel.Kind = lfOffice11 + end + end + end + object Panel5: TPanel + Left = 52 + Top = 328 + Width = 485 + Height = 261 + Caption = 'PanelXs' + TabOrder = 5 + Visible = False + end + object ADOQueryCmd: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 292 + Top = 8 + end + object ADOQueryTmp: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 340 + Top = 8 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 340 + Top = 341 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 376 + Top = 337 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 728 + Top = 101 + end + object CDS_CP: TClientDataSet + Aggregates = <> + Params = <> + Left = 350 + Top = 163 + end + object DS_CP: TDataSource + DataSet = CDS_CP + Left = 294 + Top = 155 + end + object CDS_Inout: TClientDataSet + Aggregates = <> + Params = <> + Left = 864 + Top = 296 + end + object DS_inout: TDataSource + DataSet = CDS_Inout + Left = 820 + Top = 308 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 628 + Top = 113 + end + object cxGridPopupMenu3: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 536 + Top = 101 + end +end diff --git a/成品仓库/U_BpSmRk.pas b/成品仓库/U_BpSmRk.pas new file mode 100644 index 0000000..c4edad6 --- /dev/null +++ b/成品仓库/U_BpSmRk.pas @@ -0,0 +1,845 @@ +unit U_BpSmRk; + +interface + +uses + Windows, Messages, SysUtils,StrUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxGridLevel, cxClasses, cxControls, + cxGridCustomView, cxGrid, StdCtrls, ComCtrls, ExtCtrls, ToolWin, + cxButtonEdit, cxDropDownEdit, DBClient, ADODB, cxGridCustomPopupMenu, + cxGridPopupMenu, BtnEdit, Menus, cxLookAndFeelPainters, cxButtons, + cxCheckBox, cxCalendar; + +type + TfrmBpSmRk = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + CRTime: TDateTimePicker; + Label2: TLabel; + CRType: TComboBox; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1P_SPEC: TcxGridDBColumn; + v1P_MF: TcxGridDBColumn; + v1P_KZ: TcxGridDBColumn; + v1RollNum: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1QtyUnit: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + Label3: TLabel; + FirstName: TBtnEditA; + v1MJID: TcxGridDBColumn; + v1MJXH: TcxGridDBColumn; + v1CPType: TcxGridDBColumn; + ckName: TComboBox; + Label4: TLabel; + Label5: TLabel; + orderNO: TBtnEditA; + Label6: TLabel; + PRTCodeName: TEdit; + Label7: TLabel; + PRTColor: TEdit; + v1P_Color: TcxGridDBColumn; + v1P_Code: TcxGridDBColumn; + Label8: TLabel; + InoutNo: TEdit; + GroupBox1: TGroupBox; + Panel3: TPanel; + GroupBox2: TGroupBox; + Panel2: TPanel; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridDBColumn7: TcxGridDBColumn; + cxGridDBColumn8: TcxGridDBColumn; + cxGridDBColumn12: TcxGridDBColumn; + cxGridDBColumn13: TcxGridDBColumn; + cxGridDBColumn14: TcxGridDBColumn; + cxGridDBColumn15: TcxGridDBColumn; + cxGridDBColumn16: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + Label9: TLabel; + MJID: TEdit; + CDS_CP: TClientDataSet; + DS_CP: TDataSource; + CDS_Inout: TClientDataSet; + DS_inout: TDataSource; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + v1SSel: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1OrderNo: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1CustomerNoName: TcxGridDBColumn; + v1MPRTCodeName: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + v1pbRollNum: TcxGridDBColumn; + v1pbQty: TcxGridDBColumn; + v1rkRollNum: TcxGridDBColumn; + v1rkqty: TcxGridDBColumn; + v1ckRollNum: TcxGridDBColumn; + v1ckQty: TcxGridDBColumn; + v1kcRollNum: TcxGridDBColumn; + v1kcQty: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Panel4: TPanel; + cxButton1: TcxButton; + Panel5: TPanel; + cxGridPopupMenu2: TcxGridPopupMenu; + cxGridPopupMenu3: TcxGridPopupMenu; + procedure FormDestroy(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure v1P_CodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton2Click(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FirstNameBtnClick(Sender: TObject); + procedure orderNOBtnClick(Sender: TObject); + procedure cxButton1Click(Sender: TObject); + procedure MJIDKeyPress(Sender: TObject; var Key: Char); + procedure Tv3CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + private + // fmainID,fsubID:string; + TblCprk:string; + fiscreate:boolean; + fCRID:integer; + procedure InitGrid(); + function savedate():Boolean; + procedure SetComboBox(); + function YSData(Order_Main10:TClientDataSet):Boolean; + procedure DoCRkNum(); + procedure CreateTable(); + procedure DropTable(); + { Private declarations } + public + fkeyNO:string; + FType:integer; + fCKName:string; + + { Public declarations } + end; + +var + frmBpSmRk: TfrmBpSmRk; + +implementation + uses + U_DataLink,U_Fun10,U_ZDYHelp, U_Bpkclist, U_ProductOrderNewList; +{$R *.dfm} +procedure TfrmBpSmRk.DropTable(); +var + strSQL:string; +begin + // TblCprk := '[##CP_INOut123' + trim(DCode) + IntToStr(Handle)+formatdatetime('hhnnsszzz',time) + ']'; + //ʱ + strSQL := 'IF OBJECT_ID(''tempdb..' + TblCprk + ''') IS NOT NULL DROP TABLE ' + TblCprk; + with adoqueryTmp do + begin + Close; + SQL.Clear; + SQL.Add(strSQL); + ExecSQL; + end; +end; +procedure TfrmBpSmRk.CreateTable(); +var + strSQL:string; +begin + TblCprk := '[##CP_INOut123RK' + trim(DCode) + IntToStr(Handle)+formatdatetime('hhnnsszzz',time) + ']'; + //ʱ + strSQL := 'IF OBJECT_ID(''tempdb..' + TblCprk + ''') IS NOT NULL DROP TABLE ' + TblCprk + #13 + + 'CREATE TABLE ' + TblCprk + ' (' + + 'MainID VARCHAR(20),' + + 'subID VARCHAR(20))'#13; + with adoqueryTmp do + begin + Close; + SQL.Clear; + SQL.Add(strSQL); + ExecSQL; + end; +end; +procedure TfrmBpSmRk.DocRkNum(); +var + strsql:string; +begin +{ if cds_Cp.IsEmpty then exit; + strsql:=''; + + with adoqueryTmp do + begin + Close; + SQL.Clear; + SQL.Add('delete from '+TblCprk); + execsql; + end; + with cds_Cp do + begin + DisableControls; + First; + while not eof do + begin + with adoqueryTmp do + begin + Close; + SQL.Clear; + SQL.Add(' insert into '+TblCprk+'(MainID) values( '); + SQL.Add(' '+quotedstr(trim(CDS_CP.fieldbyname('mainID').AsString))); + sql.add(')'); + execsql; + end; + next; + end; + EnableControls; + end; + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from CP_KC A'); + sql.Add('inner join '+TblCprk+' B on B.mainID=A.MainID '); + sql.Add('where A.Qty<>0'); + open; + end; } + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add(' select A.MJXH,A.MJID,A.MJLen,A.MainID,A.SubID,A.MJType,A.MJTypeother,A.MJStr2,A.MJSTR7,B.MPrtCode,B.MPRTSpec,RollNum=1 from WFB_MJJY A '); + sql.Add('inner join JYOrder_Main B on B.MainId=A.MainId'); + sql.Add(' where A.MJID='+quotedstr(trim(MJID.Text))); + open; + end; + IF fiscreate=false then + begin + SCreateCDS20(adoqueryTmp,CDS_Inout); + fiscreate:=true; + end; + SCreateCDS20(adoqueryTmp,CDS_Main); + SInitCDSData20(adoqueryTmp,CDS_Main); +end; +function TfrmBpSmRk.YSData(Order_Main10:TClientDataSet):Boolean; +var + CRID,YFID,Price,PriceUnit,OrderUnit,FComTaiTou,cust:String; +begin + Result:=False; + with Order_Main10 do + begin + + with ADOQueryTmp do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrder_main where MainID='''+Trim(Order_Main10.fieldbyname('MainID').AsString)+''''); + Open; + cust:=FieldbyName('customerNOName').AsString; + end; + with ADOQueryTmp do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrder_sub where MainID='''+Trim(Order_Main10.fieldbyname('MainID').AsString)+''''); + sql.Add(' and subID='''+Trim(Order_Main10.fieldbyname('subID').AsString)+''''); + Open; + Price:=FieldbyName('PrtPrice').AsString; + end; + + with ADOQueryTmp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(cust)+''' and YFDefFlag1=0 '); + Open; + end; + if not ADOQueryTmp.IsEmpty then + begin + CRID:=ADOQueryTmp.fieldbyname('CRID').AsString; + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(cust); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryTmp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add(' where MainID='''+Trim(Order_Main10.fieldbyname('MainID').AsString)+''''); + sql.Add(' and subID='''+Trim(Order_Main10.fieldbyname('subID').AsString)+''''); + sql.Add(' and YFName=''Ʒ'' '); + Open; + end; + if ADOQueryTmp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd,YFID,'CS','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡӦʧ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(Order_Main10.fieldbyname('MainId').AsString); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦտǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(cust); + FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',date())); + FieldByName('YFType').Value:='Զ'; + FieldByName('Price').Value:=Price; + //FieldByName('HuiLv').Value:=1; + FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=''; + FieldByName('QtyUnit').Value:=Trim(Order_Main10.fieldbyname('QtyUnit').AsString); + FieldByName('ComTaiTou').Value:=Trim(cust); + FieldByName('YFName').Value:='Ʒ'; + FieldByName('MainId').Value:=Trim(Order_Main10.fieldbyname('Mainid').AsString); + FieldByName('subID').Value:=Trim(Order_Main10.fieldbyname('subID').AsString); + Post; + end; + end + else + begin + YFID:=Trim(ADOQueryTmp.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update YF_Money_CR Set Qty=(select isnull(Sum(Qty),0) from BP_INout A '); + sql.Add(' where A.mainID=YF_Money_CR.mainID and A.subiD=YF_Money_CR.subiD and A.CRType=''Ʒ'' )'); + sql.Add(',PS=(select isnull(count(*),0) from BP_INout A '); + sql.Add(' where A.mainID=YF_Money_CR.mainID and A.subiD=YF_Money_CR.subiD and A.CRType=''Ʒ'' )'); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty*HuiLv'); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + end; + Result:=True; +end; +procedure TfrmBpSmRk.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPCK'' '); + if trim(fCKName)<>'' then + sql.Add('and zdyName='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count>0 then ckName.ItemIndex:=0; + + CRType.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPRKTYPE'''); + if trim(fCKName)<>'' then + sql.Add('and note='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count>0 then CRType.ItemIndex:=0; +end; +function TfrmBpSmRk.savedate():Boolean; +var + fkcID:integer; + Filler:string; + FillTime:TdateTime; + maxno:string; + +begin + result:=false; + try + if FType=0 then + begin + Filler:=DName; + FillTime:=SGetServerDateTime(adoqueryTmp); + end + else + begin + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from CP_InOut'); + sql.Add('where CRNO='+quotedstr(trim(fkeyNO))); + open; + Filler:=adoqueryTmp.fieldbyname('Filler').AsString; + FillTime:=adoqueryTmp.fieldbyname('FillTime').AsDateTime; + end; + end; + + ADOQueryCmd.Connection.BeginTrans; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.add('Update CP_Kcid Set kcid=kcid+1'); + sql.Add('select kcid from CP_Kcid'); + Open; + end; + fkcID:=ADOQueryCmd.fieldbyname('kcid').AsInteger; + + +// CDS_Main.DisableControls; +// CDS_Main.First; + with CDS_Main do + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from CP_INout'); + sql.Add('where 1=2 '); + open; + end; + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('CRNO').Value:=trim(fkeyNO); + ADOQueryCmd.FieldByName('CRID').Value:=fCRID; + ADOQueryCmd.FieldByName('CKName').Value:=trim(CKName.Text); + ADOQueryCmd.FieldByName('InoutNO').Value:=trim(InoutNO.Text); + ADOQueryCmd.FieldByName('mainID').Value:=trim(fieldbyname('MainID').AsString); + ADOQueryCmd.FieldByName('subID').Value:=trim(fieldbyname('subID').AsString); + ADOQueryCmd.FieldByName('CRTime').Value:=formatdateTime('yyyy-MM-dd',CRTIme.Date); + ADOQueryCmd.FieldByName('CRType').Value:=trim(CRType.Text); + ADOQueryCmd.FieldByName('CRFlag').Value:=''; + ADOQueryCmd.FieldByName('MJID').Value:=trim(fieldbyname('MJID').AsString); + ADOQueryCmd.FieldByName('MJXH').Value:=trim(fieldbyname('MJXH').AsString); + ADOQueryCmd.FieldByName('CPTYPE').Value:=trim(fieldbyname('MJTYPE').AsString); + ADOQueryCmd.FieldByName('P_Code').Value:=trim(fieldbyname('MPRTCode').AsString); + ADOQueryCmd.FieldByName('P_CodeName').Value:=trim(fieldbyname('MJSTR7').AsString); + ADOQueryCmd.FieldByName('P_spec').Value:=trim(fieldbyname('MPRTSPEC').AsString); + ADOQueryCmd.FieldByName('P_Color').Value:=''; + ADOQueryCmd.FieldByName('P_MF').Value:=0; + ADOQueryCmd.FieldByName('P_KZ').Value:=0; + ADOQueryCmd.FieldByName('RollNum').Value:=trim(fieldbyname('RollNum').AsString); + ADOQueryCmd.FieldByName('Qty').Value:=fieldbyname('MJlen').AsFloat; + ADOQueryCmd.FieldByName('QtyUnit').Value:=trim(fieldbyname('MJTypeother').AsString); +// ADOQueryCmd.FieldByName('note').Value:=trim(fieldbyname('note').AsString); + ADOQueryCmd.FieldByName('Filler').Value:=trim(Filler); + ADOQueryCmd.FieldByName('FillTime').Value:=dateTimetostr(FillTime); + // ADOQueryCmd.FieldByName('FirstNo').Value:=trim(FirstName.TxtCode); + // ADOQueryCmd.FieldByName('FirstName').Value:=trim(FirstName.Text); + if FType=1 then + begin + ADOQueryCmd.FieldByName('editer').Value:=trim(dName); + ADOQueryCmd.FieldByName('editTime').Value:=SGetServerDateTime(adoqueryTmp); + end; + ADOQueryCmd.FieldByName('kcID').Value:=fkcID; + ADOQueryCmd.Post; + + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from CP_KC'); + sql.Add('where 1=2 '); + open; + end; + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('kcID').Value:=fkcID; + ADOQueryCmd.FieldByName('CKName').Value:=trim(CKName.Text); + ADOQueryCmd.FieldByName('CRNO').Value:=trim(fkeyNO); + ADOQueryCmd.FieldByName('CRID').Value:=fCRID; + ADOQueryCmd.FieldByName('CRTime').Value:=formatdateTime('yyyy-MM-dd',CRTIme.Date); + ADOQueryCmd.FieldByName('CRType').Value:=trim(CRType.Text); + ADOQueryCmd.FieldByName('CRFlag').Value:=''; + ADOQueryCmd.FieldByName('mainID').Value:=trim(fieldbyname('mainID').AsString); + ADOQueryCmd.FieldByName('subID').Value:=trim(fieldbyname('subID').AsString); + ADOQueryCmd.FieldByName('MJXH').Value:=trim(fieldbyname('MJXH').AsString); + ADOQueryCmd.FieldByName('MJID').Value:=trim(fieldbyname('MJID').AsString); + ADOQueryCmd.FieldByName('CPTYPE').Value:=trim(fieldbyname('MJTYPE').AsString); + ADOQueryCmd.FieldByName('P_Code').Value:=trim(fieldbyname('MPRTCode').AsString); + ADOQueryCmd.FieldByName('P_CodeName').Value:=trim(fieldbyname('MJSTR7').AsString); + ADOQueryCmd.FieldByName('P_spec').Value:=trim(fieldbyname('MPRTSPEC').AsString); + ADOQueryCmd.FieldByName('P_Color').Value:=''; + ADOQueryCmd.FieldByName('P_MF').Value:=0; + ADOQueryCmd.FieldByName('P_KZ').Value:=0; + ADOQueryCmd.FieldByName('RollNum').Value:=1; + ADOQueryCmd.FieldByName('Qty').Value:=fieldbyname('MJlen').AsFloat; + ADOQueryCmd.FieldByName('QtyUnit').Value:=trim(fieldbyname('MJTypeother').AsString); + ADOQueryCmd.FieldByName('kcID').Value:=fkcID; + ADOQueryCmd.Post; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update WFB_MJJY SET MJStr2='''' '); + sql.Add('where MJID='+quotedstr(trim(CDS_Main.fieldbyname('MJID').AsString))); + execsql; + end; + end; + // CDS_Main.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + fCRID:=fCRID+1; + result:=true; + except + // CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; +procedure TfrmBpSmRk.InitGrid(); +begin + try + with adoqueryTmp do + begin + Close; + sql.Clear; + Filtered:=False; + sql.add('exec P_View_Order_CP :begdate,:enddate,:WSql') ; + Parameters.ParamByName('begdate').Value:='2012-10-01'; + Parameters.ParamByName('enddate').Value:='2011-10-01'; + Parameters.ParamByName('WSql').Value:=''; + Open; + end; + SCreateCDS20(adoqueryTmp,CDS_CP); + SInitCDSData20(adoqueryTmp,CDS_CP); + + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select A.* from CP_InOut A'); + // sql.Add('left join JYOrder_sub B on B.mainID=A.mainID and B.subID=A.subID '); + sql.Add('where A.CRNO='+quotedstr(trim(fkeyNO))); + open; + end; + SCreateCDS20(adoqueryTmp,CDS_Inout); + SCreateCDS20(adoqueryTmp,CDS_Main); + SInitCDSData20(adoqueryTmp,CDS_Main); + if not CDS_Main.IsEmpty then + begin + CRTime.Date:= CDS_Main.fieldbyname('CRTime').AsDateTime; + CKName.ItemIndex:=CKName.Items.IndexOf(trim(CDS_Main.fieldbyname('CKName').AsString)); + CRType.ItemIndex:=CRType.Items.IndexOf(trim(CDS_Main.fieldbyname('CRType').AsString)); + // fmainID:=trim(CDS_Main.fieldbyname('MainID').AsString); + // fsubID:=trim(CDS_Main.fieldbyname('subID').AsString); + InoutNO.Text:=trim(CDS_Main.fieldbyname('InoutNO').AsString); + // orderNo.Text:=trim(CDS_Main.fieldbyname('orderNo').AsString); + // PRTCodeName.Text:=trim(CDS_Main.fieldbyname('PRTCodeName').AsString); + // PRTColor.Text:=trim(CDS_Main.fieldbyname('PRTColor').AsString); + // FirstName.TxtCode:=trim(CDS_Main.fieldbyname('FirstNo').AsString); + // FirstName.Text:=trim(CDS_Main.fieldbyname('FirstName').AsString); + end; + finally + end; +end; + +procedure TfrmBpSmRk.FormDestroy(Sender: TObject); +begin + frmBpSmRk:=nil; +end; + +procedure TfrmBpSmRk.FormCreate(Sender: TObject); +begin + CRTime.Date:=DServerDate; + GroupBox2.Align:=alclient; + + fCRID:=1; + CreateTable(); + fiscreate:=false; +end; + +procedure TfrmBpSmRk.FormClose(Sender: TObject; var Action: TCloseAction); +begin + DropTable(); + writeCxGrid(self.Caption,Tv1,'Ʒֿ'); + writeCxGrid(self.Caption,Tv2,'Ʒֿ'); + writeCxGrid(self.Caption,Tv3,'Ʒֿ'); + Action:=cahide; +end; + +procedure TfrmBpSmRk.FormShow(Sender: TObject); +begin + readCxGrid(self.Caption,Tv1,'Ʒֿ'); + readCxGrid(self.Caption,Tv2,'Ʒֿ'); + readCxGrid(self.Caption,Tv3,'Ʒֿ'); + SetComboBox(); + InitGrid(); + if fType=0 then + begin + if GetLSNo(ADOQueryCmd,fkeyNO,'RK','CP_InOut',3,1)=False then + begin + // ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + inoutNo.Text:='R'+Trim(RightBStr(fkeyNo,Length(fkeyNo)-2)); + end; + MJID.SetFocus; +end; + +procedure TfrmBpSmRk.TBSaveClick(Sender: TObject); +begin + if cds_main.IsEmpty then exit; + CRTime.SetFocus; + if trim(CRType.Text)='' then + begin + application.MessageBox('ͲΪգ','ʾϢ',0); + exit; + end; + if trim(inoutNo.Text)='' then + begin + application.MessageBox('ⵥŲΪգ','ʾϢ',0); + exit; + end; + + if savedate() then + begin + InitCDSToCDS(CDS_Main,CDS_Inout); + CDS_Main.Delete; + with CDS_Inout do + begin + edit; + fieldbyname('SDefNote').Value:='ɹ'; + post; + end; + end + else + begin + // InitCDSToCDS(CDS_Main,CDS_Inout); + with CDS_Inout do + begin + append; + fieldbyname('MJID').Value:=CDS_Main.fieldbyname('MJID').AsString; + fieldbyname('SDefNote').Value:='ʧ'; + post; + end; + end; +end; + +procedure TfrmBpSmRk.v1P_CodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Cloth'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_Main.Edit; + Self.CDS_Main.FieldByName('P_CodeName').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.CDS_Main.FieldByName('P_Code').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmBpSmRk.ToolButton2Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then exit; + CDS_Main.Delete; +end; + +procedure TfrmBpSmRk.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmBpSmRk.FirstNameBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:='ص'; + MainType:='RanFactory'; + if ShowModal=1 then + begin + FirstName.Text:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + FirstName.TxtCode:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmBpSmRk.orderNOBtnClick(Sender: TObject); +begin + { frmProductOrderNewList:=TfrmProductOrderNewList.Create(Application); + with frmProductOrderNewList do + begin + DParameters1:='Ȩ'; + if showmodal=1 then + begin + self.fmainID:=trim(Order_Main.fieldbyname('MainID').AsString); + self.fsubID:=trim(Order_Main.fieldbyname('subID').AsString); + self.orderNo.Text:=trim(Order_Main.fieldbyname('orderNo').AsString); + self.PRTCodeName.Text:=trim(Order_Main.fieldbyname('PRTCodeName').AsString); + self.PRTColor.Text:=trim(Order_Main.fieldbyname('PRTColor').AsString); + end; + free; + end; } +end; + +procedure TfrmBpSmRk.cxButton1Click(Sender: TObject); +begin + frmProductOrderNewList:=TfrmProductOrderNewList.create(self); + with frmProductOrderNewList do + begin + // fType:=10; + // fckName:=self.fckName; + if showmodal=1 then + begin + self.CDS_CP.EmptyDataSet; + Order_Main.DisableControls; + Order_Main.First; + while not Order_Main.Eof do + begin + if (order_main.fieldbyname('ssel').AsBoolean) and + (not self.CDS_CP.Locate('MprtCode',order_main.fieldbyname('MprtCode').AsString,[])) then + begin + InitCDSToCDS(order_main,self.CDS_CP); + end; + Order_Main.Next; + end; + Order_Main.EnableControls; + end; + free; + end; + DocRkNum(); +end; + +procedure TfrmBpSmRk.MJIDKeyPress(Sender: TObject; var Key: Char); +begin + if key=#13 then + begin + if trim(MJID.Text)='' then exit; + DocRkNum(); + IF CDS_Main.IsEmpty then + begin + with CDS_Inout do + begin + append; + fieldbyname('MJID').Value:=trim(MJID.Text); + fieldbyname('SDefNote').Value:='ɨʧ<벻>'; + post; + end; + end + else + IF trim(CDS_Main.FieldByName('MJStr2').AsString)<>'δ' then + begin + with CDS_Inout do + begin + append; + fieldbyname('MJID').Value:=trim(MJID.Text); + fieldbyname('SDefNote').Value:='ɨʧ<>'; + post; + end; + end + else + if CDS_Main.Locate('MJID',trim(MJID.Text),[]) then + begin + TBsave.Click; + end; + MJID.text:=''; + MJID.SetFocus; + end; +end; + +procedure TfrmBpSmRk.Tv3CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); +var + i:integer; +begin + i:=tv3.GetColumnByFieldName('SDefNote').Index; + if (AViewInfo.GridRecord.Values[i]<>'ɹ') then + ACanvas.Brush.Color:=clred; + +end; + +end. diff --git a/成品仓库/U_BpckXjList.dfm b/成品仓库/U_BpckXjList.dfm new file mode 100644 index 0000000..bd19f05 --- /dev/null +++ b/成品仓库/U_BpckXjList.dfm @@ -0,0 +1,594 @@ +object frmBpckXjList: TfrmBpckXjList + Left = 164 + Top = 134 + Width = 1088 + Height = 579 + Caption = #20986#24211#21015#34920 + 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 = 1072 + Height = 62 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#35810 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + Visible = False + end + object TBAdd: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20986#24211 + ImageIndex = 3 + Visible = False + OnClick = TBAddClick + end + object TBsmADD: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25195#25551#20986#24211 + ImageIndex = 3 + Visible = False + OnClick = TBsmADDClick + end + object TBEdit: TToolButton + Left = 276 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = TBEditClick + end + object TBDel: TToolButton + Left = 339 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Wrap = True + Visible = False + OnClick = TBDelClick + end + object Tchk: TToolButton + Left = 0 + Top = 30 + AutoSize = True + Caption = #23457#26680 + ImageIndex = 41 + OnClick = TchkClick + end + object Tnochk: TToolButton + Left = 63 + Top = 30 + AutoSize = True + Caption = #25764#38144#23457#26680 + ImageIndex = 56 + Visible = False + OnClick = TnochkClick + end + object TBExport: TToolButton + Left = 150 + Top = 30 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 213 + Top = 30 + AutoSize = True + Caption = #25171#21360#32454#30721#21333 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object TbPrint1: TToolButton + Left = 312 + Top = 30 + Caption = #25171#21360#21457#36135#21333 + ImageIndex = 12 + Visible = False + OnClick = TbPrint1Click + end + object TBClose: TToolButton + Left = 407 + Top = 30 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 62 + Width = 1072 + Height = 45 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #20986#24211#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 168 + Top = 16 + Width = 6 + Height = 12 + Caption = '-' + end + object Label3: TLabel + Left = 476 + Top = 56 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 312 + Top = 16 + Width = 26 + Height = 12 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 168 + Top = 52 + Width = 52 + Height = 12 + Caption = #20986#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 328 + Top = 56 + Width = 24 + Height = 12 + Caption = #20179#24211 + end + object Label7: TLabel + Left = 472 + Top = 84 + Width = 52 + Height = 12 + Caption = #20986#24211#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 180 + Top = 11 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object P_CodeName: TEdit + Tag = 2 + Left = 528 + Top = 52 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = P_CodeNameChange + end + object custName: TEdit + Tag = 2 + Left = 364 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = P_CodeNameChange + end + object CRType: TComboBox + Tag = 2 + Left = 224 + Top = 48 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 4 + OnChange = P_CodeNameChange + Items.Strings = ( + '' + #38144#21806#20986#24211 + #21152#24037#20986#24211) + end + object ckName: TComboBox + Left = 356 + Top = 52 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 5 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object inoutNo: TEdit + Tag = 2 + Left = 712 + Top = 64 + Width = 100 + Height = 20 + TabOrder = 6 + OnChange = P_CodeNameChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 129 + Width = 1072 + Height = 396 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column2 + end + item + Kind = skSum + Column = v1Column6 + end + item + Kind = skSum + Column = v1Column7 + end + item + Kind = skSum + Column = v1Column8 + end + item + Kind = skSum + Column = v1Column3 + end + item + Kind = skSum + Column = v1Column4 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object v1Column1: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 50 + end + object v1CRNO: TcxGridDBColumn + Caption = #20986#24211#32534#21495 + DataBinding.FieldName = 'CRNO' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 85 + end + object v1custName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'custName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 93 + end + object v1TocustName: TcxGridDBColumn + Caption = #21457#24448#21333#20301 + DataBinding.FieldName = 'TocustName' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1CRTime: TcxGridDBColumn + Caption = #20986#24211#26085#26399 + DataBinding.FieldName = 'CRTime' + Options.Editing = False + Width = 124 + end + object v1MJID: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1MJXH: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1P_Code: TcxGridDBColumn + Caption = #21697#21495 + DataBinding.FieldName = 'P_Code' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column2: TcxGridDBColumn + Caption = #36135#27454#37329#39069 + DataBinding.FieldName = 'money' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 82 + end + object v1Column6: TcxGridDBColumn + Caption = #25171#21253#36153 + DataBinding.FieldName = 'packFee' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 91 + end + object v1Column7: TcxGridDBColumn + Caption = #26679#26495#36153 + DataBinding.FieldName = 'YBFEE' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 76 + end + object v1Column8: TcxGridDBColumn + Caption = #20854#23427#36153 + DataBinding.FieldName = 'OtherFee' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 84 + end + object v1Column3: TcxGridDBColumn + Caption = #24212#25910#29616#37329 + DataBinding.FieldName = 'YsXj' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = CPCK_DataLink.cxStyle_fontclBlue + Styles.Footer = CPCK_DataLink.cxStyle_fontclBlue + Styles.Header = CPCK_DataLink.cxStyle_fontclBlue + Width = 75 + end + object v1Column4: TcxGridDBColumn + Caption = #23454#25910#29616#37329 + DataBinding.FieldName = 'xjNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = CPCK_DataLink.cxStyle_fontclFuchsia + Styles.Footer = CPCK_DataLink.cxStyle_fontclFuchsia + Styles.Header = CPCK_DataLink.cxStyle_fontclFuchsia + Width = 126 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 107 + Width = 1072 + Height = 22 + Align = alTop + TabOrder = 3 + Properties.CustomButtons.Buttons = <> + Properties.Style = 9 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + #26410#23457#26680 + #24050#23457#26680 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectBottom = 22 + ClientRectRight = 1072 + ClientRectTop = 19 + object CheckBox1: TCheckBox + Left = 196 + Top = 1 + Width = 97 + Height = 17 + Caption = #20840#36873 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + OnClick = CheckBox1Click + end + end + object ADOQueryCmd: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 796 + Top = 52 + end + object ADOQueryTmp: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 624 + Top = 100 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 760 + Top = 49 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 828 + Top = 97 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 592 + Top = 52 + end + object ADOPrint: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 836 + Top = 56 + end + object RMDB_MD: TRMDBDataSet + Visible = True + DataSet = ADOPrint + Left = 876 + Top = 48 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 896 + Top = 8 + ReportData = {} + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 948 + Top = 20 + end + object ADOQuery1: TADOQuery + Parameters = <> + Left = 732 + Top = 32 + end +end diff --git a/成品仓库/U_BpckXjList.pas b/成品仓库/U_BpckXjList.pas new file mode 100644 index 0000000..c34bdf1 --- /dev/null +++ b/成品仓库/U_BpckXjList.pas @@ -0,0 +1,555 @@ +unit U_BpckXjList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, + cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, DBClient, ADODB, cxGridCustomPopupMenu, + cxGridPopupMenu, RM_Common, RM_Class, RM_e_Xls, RM_GridReport, RM_System, + RM_Dataset, cxPC, cxCheckBox, 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 + TfrmBpckXjList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + v1CRTime: TcxGridDBColumn; + v1CRNO: TcxGridDBColumn; + Label2: TLabel; + Label3: TLabel; + Label4: TLabel; + P_CodeName: TEdit; + custName: TEdit; + CRType: TComboBox; + Label5: TLabel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + v1MJID: TcxGridDBColumn; + v1MJXH: TcxGridDBColumn; + ckName: TComboBox; + Label6: TLabel; + ADOPrint: TADOQuery; + RMDB_MD: TRMDBDataSet; + RMGridReport1: TRMGridReport; + RMXLSExport1: TRMXLSExport; + v1P_Code: TcxGridDBColumn; + TBsmADD: TToolButton; + inoutNo: TEdit; + Label7: TLabel; + v1custName: TcxGridDBColumn; + v1TocustName: TcxGridDBColumn; + TbPrint1: TToolButton; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + cxTabControl1: TcxTabControl; + Tchk: TToolButton; + Tnochk: TToolButton; + CheckBox1: TCheckBox; + v1Column1: TcxGridDBColumn; + ADOQuery1: TADOQuery; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure P_CodeNameChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBsmADDClick(Sender: TObject); + procedure TbPrint1Click(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure TchkClick(Sender: TObject); + procedure TnochkClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + private + procedure InitGrid(); + procedure SetComboBox(); + { Private declarations } + public + fCKName:string; + { Public declarations } + end; + +var + frmBpckXjList: TfrmBpckXjList; + +implementation +uses + U_DataLink,U_Fun10,U_ZDYHelp, U_BpCk, U_BpSmCk; +{$R *.dfm} +procedure TfrmBpckXjList.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPCK'' '); + if trim(fCKName)<>'' then + sql.Add('and zdyName='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count>0 then ckName.ItemIndex:=0; + + CRType.Items.Clear; + CRType.Items.Add(''); + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPCKTYPE'''); + if trim(fCKName)<>'' then + sql.Add('and note='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count>0 then CRType.ItemIndex:=0; +end; +procedure TfrmBpckXjList.InitGrid(); +begin + try + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select A.CRNO,A.CRTime,A.CustName,packFee,YBfee,OtherFee,A.IsYjx,A.xjNum,status,SUM(Money) as Money,SUM(Money)+packFee+YBfee+OtherFee as YsXj '); + sql.Add('from CP_InOut A '); + sql.Add('where CRTime>='''+formatdateTime('yyyy-MM-dd',begdate.Date)+''' '); + sql.Add('and CRTime<'''+formatdateTime('yyyy-MM-dd',enddate.Date+1)+''' '); + sql.Add('and CRFlag='''' and IsYjx='''' '); + IF cxTabControl1.TabIndex<2 then + sql.Add('and isnull(A.status,''0'')='''+inttostr(cxTabControl1.TabIndex)+''' '); + if trim(FckName)<>'' then + sql.Add('and ckName='+quotedstr(trim(FckName)) ); + sql.Add('group by A.CRNO,A.CRTime,A.CustName,packFee,YBfee,OtherFee,A.IsYjx,A.xjNum,status '); + open; + end; + SCreateCDS20(adoqueryTmp,CDS_Main); + SInitCDSData20(adoqueryTmp,CDS_Main); + finally + end; +end; + +procedure TfrmBpckXjList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + writeCxGrid(self.Caption,Tv1,'Ʒֿ'); + Action:=cafree; +end; + +procedure TfrmBpckXjList.FormDestroy(Sender: TObject); +begin + frmBpckXjList:=nil; +end; + +procedure TfrmBpckXjList.TBAddClick(Sender: TObject); +begin + frmbpck:=Tfrmbpck.create(self); + with frmbpck do + begin + fkeyNo:=''; + fType:=0; + fckName:=self.fckName; + if showmodal=1 then + begin + TBRafresh.Click; + self.CDS_Main.Locate('crNo',trim(fkeyNo),[]) ; + end; + free; + end; +end; + +procedure TfrmBpckXjList.P_CodeNameChange(Sender: TObject); +begin + if ADOQueryTmp.Active=False then Exit; + SDofilter(ADOQueryTmp,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryTmp,CDS_Main); + SInitCDSData20(ADOQueryTmp,CDS_Main); +end; + +procedure TfrmBpckXjList.FormShow(Sender: TObject); +begin + readCxGrid(self.Caption,Tv1,'Ʒֿ'); + SetComboBox(); + InitGrid(); +end; + +procedure TfrmBpckXjList.FormCreate(Sender: TObject); +begin + BegDate.Date:=DServerDate-7; + EndDate.Date:=DServerDate; + cxGrid1.Align:=alclient; + +end; + +procedure TfrmBpckXjList.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmBpckXjList.TBEditClick(Sender: TObject); +begin + if cds_main.IsEmpty then exit; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR A'); + SQL.Add('where A.mainid='''+Trim(CDS_Main.fieldbyname('CRNO').AsString)+''' '); + sQL.Add('and A.hxNum<>0 '); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('˵Ѿݣ޸ģ','ʾ',0); + Exit; + end; + + + { with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from BP_InOut A'); + SQL.Add('where A.kcid='''+Trim(CDS_Main.fieldbyname('kcid').AsString)+''' '); + sQL.Add('and A.CRFlag='''''); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('Ѳݣ޸ģ','ʾ',0); + Exit; + end; } + + frmbpck:=Tfrmbpck.create(self); + with frmbpck do + begin + fkeyNo:=self.cds_main.fieldbyname('CRNO').AsString; + fType:=1; + fckName:=self.fckName; + if showmodal=1 then + begin + TBRafresh.Click; + self.CDS_Main.Locate('crNo',trim(fkeyNo),[]) ; + end; + free; + end; +end; + +procedure TfrmBpckXjList.TBDelClick(Sender: TObject); +var + YFID,CRID:string; +begin + if CDS_Main.IsEmpty then Exit; + { if Trim(CDS_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; } + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR A'); + SQL.Add('where A.mainid='''+Trim(CDS_Main.fieldbyname('CRNO').AsString)+''' '); + sQL.Add('and A.hxNum<>0 '); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('˵Ѿݣɾ','ʾ',0); + Exit; + end; + + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + + try + + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from CP_InOut '); + SQL.Add('where CRNO='''+Trim(CDS_Main.fieldbyname('CRNO').AsString)+''' '); + sql.Add('delete from YF_Money_CR '); + SQL.Add('where mainID='''+Trim(CDS_Main.fieldbyname('CRNO').AsString)+''' '); + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + execsql; + end; + TBRafresh.Click; + except + Application.MessageBox('ɾʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmBpckXjList.TBRafreshClick(Sender: TObject); +begin + initGrid(); +end; + +procedure TfrmBpckXjList.TBPrintClick(Sender: TObject); +var + filepath:string; +begin + if CDS_Main.IsEmpty then exit; + + with AdoPrint do + begin + close; + sql.Clear; + sql.Add('exec P_Print_cpCkMd '); + sql.Add('@inoutNo='+quotedstr(trim(CDS_Main.fieldbyname('inoutNO').AsString))); + sql.Add(',@flag='+quotedstr(trim(''))); + open; + end; + + try + filepath:=ExtractFilePath(Application.ExeName) + 'report\뵥.rmf'; + if not FileExists(Pchar(filepath)) then + begin + application.MessageBox(pchar('ļ['+filepath+']ڣ'),'ʾϢ',MB_IConError); + exit; + end; + RMVariables['dtxz'] :=FormatDateTime('yyyy-mm-dd',date()); + RMVariables['zdr'] :=trim(DName); + RMVariables['Filler'] :=trim(CDS_Main.fieldbyname('Filler').AsString); + RMGridReport1.LoadFromFile(filepath); + RMGridReport1.ShowReport; + finally + + end; + +end; + +procedure TfrmBpckXjList.TBExportClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid1); +end; + +procedure TfrmBpckXjList.TBsmADDClick(Sender: TObject); +begin + frmbpsmck:=Tfrmbpsmck.create(self); + with frmbpsmck do + begin + fkeyNo:=''; + fType:=0; + fckName:=self.fckName; + if showmodal=1 then + begin + TBRafresh.Click; + // self.CDS_Main.Locate('crNo',trim(fkeyNo),[]) ; + end; + TBRafresh.Click; + free; + end; +end; + +procedure TfrmBpckXjList.TbPrint1Click(Sender: TObject); +var + filepath:string; +begin + if CDS_Main.IsEmpty then exit; + + with AdoPrint do + begin + close; + sql.Clear; + sql.Add('select * from CP_INout A '); + sql.Add('where A.inoutNo='+quotedstr(trim(CDS_Main.fieldbyname('inoutNO').AsString))); + open; + end; + + try + filepath:=ExtractFilePath(Application.ExeName) + 'report\.rmf'; + if not FileExists(Pchar(filepath)) then + begin + application.MessageBox(pchar('ļ['+filepath+']ڣ'),'ʾϢ',MB_IConError); + exit; + end; + RMVariables['dtxz'] :=FormatDateTime('yyyy-mm-dd',date()); + RMVariables['zdr'] :=trim(DName); + RMVariables['Filler'] :=trim(CDS_Main.fieldbyname('Filler').AsString); + RMGridReport1.LoadFromFile(filepath); + RMGridReport1.ShowReport; + finally + + end; + +end; + +procedure TfrmBpckXjList.cxTabControl1Change(Sender: TObject); +begin + Tchk.Visible:=false; + TNochk.Visible:=false; + if cxTabControl1.TabIndex=0 then + begin + Tchk.Visible:=true; + end; + if cxTabControl1.TabIndex=1 then + begin + TNochk.Visible:=true; + end; +InitGrid(); + +end; + +procedure TfrmBpckXjList.TchkClick(Sender: TObject); +begin + IF CDS_Main.IsEmpty then exit; + + if CDS_Main.Locate('ssel',true,[])=false then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_Main do + begin + DisableControls; + First; + while not eof do + begin + IF Fieldbyname('ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update CP_InOut SET status=''1'' '); + sql.Add('where CRNO ='+quotedstr(trim(CDS_Main.fieldbyname('CRNO').AsString))); + execsql; + end; + end; + next; + end; + First; + EnableControls; + end; + + InitGrid(); + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmBpckXjList.TnochkClick(Sender: TObject); +begin + IF CDS_Main.IsEmpty then exit; + + if CDS_Main.Locate('ssel',true,[])=false then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_Main do + begin + DisableControls; + First; + while not eof do + begin + IF Fieldbyname('ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update CP_InOut SET status=''0'' '); + sql.Add('where CRNO ='+quotedstr(trim(CDS_Main.fieldbyname('CRNO').AsString))); + execsql; + end; + end; + next; + end; + First; + EnableControls; + end; + + InitGrid(); + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmBpckXjList.CheckBox1Click(Sender: TObject); +begin + IF CDS_Main.IsEmpty then exit; + with CDS_Main do + begin + DisableControls; + first; + while not eof do + begin + edit; + fieldbyname('ssel').Value:=checkbox1.Checked; + post; + next; + end; + First; + EnableControls; + end; +end; + +end. diff --git a/成品仓库/U_Bpcklist.dfm b/成品仓库/U_Bpcklist.dfm new file mode 100644 index 0000000..367bdaa --- /dev/null +++ b/成品仓库/U_Bpcklist.dfm @@ -0,0 +1,1172 @@ +object frmBpCklist: TfrmBpCklist + Left = 251 + Top = 294 + Width = 1287 + Height = 579 + Caption = #20986#24211#21015#34920 + 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 = 1271 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#35810 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + Visible = False + end + object TBAdd: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20986#24211 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBsmADD: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25195#25551#20986#24211 + ImageIndex = 3 + Visible = False + OnClick = TBsmADDClick + end + object TBEdit: TToolButton + Left = 276 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object TBDel: TToolButton + Left = 339 + Top = 0 + AutoSize = True + Caption = #20316#24223 + ImageIndex = 17 + OnClick = TBDelClick + end + object TBcdel: TToolButton + Left = 402 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 107 + OnClick = TBcdelClick + end + object TBExport: TToolButton + Left = 465 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 528 + Top = 0 + AutoSize = True + Caption = #25171#21360#32454#30721#21333 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object TbPrint1: TToolButton + Left = 627 + Top = 0 + Caption = #25171#21360#21457#36135#21333 + ImageIndex = 12 + Visible = False + OnClick = TbPrint1Click + end + object TBClose: TToolButton + Left = 722 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1271 + Height = 69 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 35 + Top = 15 + Width = 52 + Height = 12 + Caption = #20986#24211#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 74 + Top = 40 + Width = 13 + Height = 12 + Caption = #33267 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 676 + Top = 16 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 676 + Top = 40 + Width = 54 + Height = 12 + Caption = #39068' '#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 228 + Top = 16 + Width = 52 + Height = 12 + Caption = #20986#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 312 + Top = 72 + Width = 24 + Height = 12 + Caption = #20179#24211 + end + object Label7: TLabel + Left = 228 + Top = 40 + Width = 52 + Height = 12 + Caption = #20986#24211#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 448 + Top = 16 + Width = 54 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 448 + Top = 40 + Width = 53 + Height = 12 + Caption = #35746' '#21333' '#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 880 + Top = 40 + Width = 59 + Height = 12 + Caption = #23610#23544'/'#23610#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 880 + Top = 16 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 88 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 88 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object P_CodeName: TEdit + Tag = 2 + Left = 732 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = P_CodeNameChange + end + object P_Color: TEdit + Tag = 2 + Left = 732 + Top = 36 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = P_CodeNameChange + end + object CRType: TComboBox + Tag = 2 + Left = 284 + Top = 12 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 4 + OnChange = P_CodeNameChange + Items.Strings = ( + '' + #38144#21806#20986#24211 + #21152#24037#20986#24211) + end + object ckName: TComboBox + Left = 352 + Top = 76 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 5 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object inoutNo: TEdit + Tag = 2 + Left = 284 + Top = 36 + Width = 100 + Height = 20 + TabOrder = 6 + OnChange = P_CodeNameChange + end + object custName: TEdit + Tag = 2 + Left = 508 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 7 + OnChange = P_CodeNameChange + end + object orderNo: TEdit + Tag = 2 + Left = 508 + Top = 36 + Width = 100 + Height = 20 + TabOrder = 8 + OnChange = P_CodeNameChange + end + object P_Code: TEdit + Tag = 2 + Left = 944 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 9 + OnChange = P_CodeNameChange + end + object defstr1: TEdit + Tag = 2 + Left = 944 + Top = 36 + Width = 100 + Height = 20 + TabOrder = 10 + OnChange = P_CodeNameChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 121 + Width = 1271 + Height = 208 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + OnCustomDrawCell = Tv1CustomDrawCell + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1RollNum + end + item + Kind = skSum + Column = v1Qty + end + item + Kind = skSum + Column = v1Column2 + end + item + Kind = skSum + Column = v1Column14 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object v1CRNO: TcxGridDBColumn + Caption = #20986#24211#32534#21495 + DataBinding.FieldName = 'CRNO' + PropertiesClassName = 'TcxTextEditProperties' + Properties.Alignment.Horz = taCenter + Visible = False + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1CRID: TcxGridDBColumn + Caption = #24207#27425#21495 + DataBinding.FieldName = 'CRID' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1inoutNO: TcxGridDBColumn + Caption = #20986#24211#21333#21495 + DataBinding.FieldName = 'inoutNO' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 88 + end + object v1custName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'custName' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1TocustName: TcxGridDBColumn + Caption = #21152#24037#21378 + DataBinding.FieldName = 'TocustName' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column15: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1CRTime: TcxGridDBColumn + Caption = #20986#24211#26085#26399 + DataBinding.FieldName = 'CRTime' + Width = 60 + end + object v1CRType: TcxGridDBColumn + Caption = #20986#24211#31867#22411 + DataBinding.FieldName = 'CRType' + HeaderAlignmentHorz = taCenter + end + object v1MJID: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1MJXH: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1P_Code1: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'P_Code' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1P_SPEC: TcxGridDBColumn + Caption = #35268#26684#25104#20998 + DataBinding.FieldName = 'P_SPEC' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 90 + end + object v1P_Color: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column12: TcxGridDBColumn + Caption = #23610#23544'/'#23610#30721 + DataBinding.FieldName = 'defstr1' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1P_MF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'P_MF' + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1P_KZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'P_KZ' + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1CPTYPE: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'CPTYPE' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1RollNum: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'RollNum' + HeaderAlignmentHorz = taCenter + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 50 + end + object v1Qty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 50 + end + object v1Column14: TcxGridDBColumn + Caption = #36192#36865#25968#37327 + DataBinding.FieldName = 'ZSQty' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1Filler: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1FillTime: TcxGridDBColumn + Caption = #25805#20316#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Width = 75 + end + object v1Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'price' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column2: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'money' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle_fontclPurple + Styles.Footer = cxStyle_fontclPurple + Styles.Header = cxStyle_fontclPurple + Width = 60 + end + object v1Column3: TcxGridDBColumn + Caption = #26159#21542#25910#29616#37329 + DataBinding.FieldName = 'ISyjx' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column4: TcxGridDBColumn + Caption = #23454#25910#29616#37329 + DataBinding.FieldName = 'xjNum' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column5: TcxGridDBColumn + Caption = #26368#36831#25910#29616#37329#26085#26399 + DataBinding.FieldName = 'Yjxdate' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 75 + end + object v1Column6: TcxGridDBColumn + Caption = #25171#21253#36153 + DataBinding.FieldName = 'packFee' + PropertiesClassName = 'TcxTextEditProperties' + Properties.Alignment.Horz = taCenter + Visible = False + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 60 + OnCompareRowValuesForCellMerging = v1Column6CompareRowValuesForCellMerging + end + object v1Column7: TcxGridDBColumn + Caption = #26679#26495#36153 + DataBinding.FieldName = 'YBFEE' + PropertiesClassName = 'TcxTextEditProperties' + Properties.Alignment.Horz = taCenter + Visible = False + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 60 + OnCompareRowValuesForCellMerging = v1Column6CompareRowValuesForCellMerging + end + object v1Column8: TcxGridDBColumn + Caption = #20854#23427#36153 + DataBinding.FieldName = 'OtherFee' + PropertiesClassName = 'TcxTextEditProperties' + Properties.Alignment.Horz = taCenter + Visible = False + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 60 + OnCompareRowValuesForCellMerging = v1Column6CompareRowValuesForCellMerging + end + object v1Column9: TcxGridDBColumn + Caption = #21457#36135#22320#22336 + DataBinding.FieldName = 'FHAddress' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column10: TcxGridDBColumn + Caption = #32852#31995#26041#24335 + DataBinding.FieldName = 'LXFS' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column11: TcxGridDBColumn + Caption = #24635#37329#39069 + DataBinding.FieldName = 'sMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.Alignment.Horz = taCenter + Visible = False + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Styles.Content = cxStyle_fontclFuchsia + Styles.Footer = cxStyle_fontclFuchsia + Styles.Header = cxStyle_fontclFuchsia + Width = 70 + OnCompareRowValuesForCellMerging = v1Column6CompareRowValuesForCellMerging + end + object v1validName: TcxGridDBColumn + Caption = #26159#21542#20316#24223 + DataBinding.FieldName = 'validName' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column13: TcxGridDBColumn + Caption = #26159#21542#21547#31246 + DataBinding.FieldName = 'Istax' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object Tv1Column1: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'P_ColorNo' + HeaderAlignmentHorz = taCenter + Width = 70 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 101 + Width = 1271 + Height = 20 + Align = alTop + TabOrder = 3 + Properties.CustomButtons.Buttons = <> + Properties.Style = 9 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + #26410#20316#24223 + #24050#20316#24223 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectRight = 0 + ClientRectTop = 0 + end + object cxGrid2: TcxGrid + Left = 0 + Top = 329 + Width = 1271 + Height = 211 + Align = alBottom + TabOrder = 4 + object TV2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = TV2Column14 + end + item + Kind = skSum + Column = TV2Column2 + end + item + Kind = skSum + Column = TV2Column3 + end + item + Kind = skSum + Column = TV2Column4 + end + item + Kind = skSum + Column = TV2Column5 + end + item + Kind = skSum + Column = TV2Column6 + end + item + Kind = skSum + Column = TV2Column7 + end + item + Kind = skSum + Column = TV2Column8 + end + item + Kind = skSum + Column = TV2Column9 + end + item + Kind = skSum + Column = TV2Column10 + end + item + Kind = skSum + Column = TV2Column11 + end + item + Kind = skSum + Column = TV2Column12 + end + item + Kind = skSum + Column = TV2Column13 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object TV2Column1: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column14: TcxGridDBColumn + Caption = #21512#35745 + DataBinding.FieldName = 'ZQty' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column17: TcxGridDBColumn + Caption = 'CXXXS' + DataBinding.FieldName = 'Size15' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object TV2Column2: TcxGridDBColumn + Caption = 'CXXS' + DataBinding.FieldName = 'Size1' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column3: TcxGridDBColumn + Caption = 'CXS' + DataBinding.FieldName = 'Size2' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column4: TcxGridDBColumn + Caption = 'CS' + DataBinding.FieldName = 'Size3' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column5: TcxGridDBColumn + Caption = 'CM' + DataBinding.FieldName = 'Size4' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column6: TcxGridDBColumn + Caption = 'CL' + DataBinding.FieldName = 'Size5' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column7: TcxGridDBColumn + Caption = 'CXL' + DataBinding.FieldName = 'Size6' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column15: TcxGridDBColumn + Caption = 'CXXL' + DataBinding.FieldName = 'Size13' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column8: TcxGridDBColumn + Caption = 'AXS' + DataBinding.FieldName = 'Size7' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column9: TcxGridDBColumn + Caption = 'AS' + DataBinding.FieldName = 'Size8' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column10: TcxGridDBColumn + Caption = 'AM' + DataBinding.FieldName = 'Size9' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column11: TcxGridDBColumn + Caption = 'AL' + DataBinding.FieldName = 'Size10' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column12: TcxGridDBColumn + Caption = 'AXL' + DataBinding.FieldName = 'Size11' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column13: TcxGridDBColumn + Caption = 'AXXL' + DataBinding.FieldName = 'Size12' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column16: TcxGridDBColumn + Caption = 'AXXXL' + DataBinding.FieldName = 'SIZE14' + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + object ADOQueryCmd: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 1140 + Top = 65532 + end + object ADOQueryTmp: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 608 + Top = 152 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 812 + Top = 65517 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 964 + Top = 113 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 1032 + Top = 56 + end + object ADOPrint: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 848 + Top = 104 + end + object RMDB_MD: TRMDBDataSet + Visible = True + DataSet = ADOPrint1 + Left = 908 + Top = 152 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 896 + Top = 8 + ReportData = {} + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 956 + end + object ADOPrint1: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 860 + Top = 4 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOPrint + Left = 904 + Top = 152 + end + object cxStyleRepository1: TcxStyleRepository + Left = 265 + Top = 174 + PixelsPerInch = 96 + object cxStyle1: TcxStyle + AssignedValues = [svColor] + Color = clInactiveCaption + end + object cxStyle2: TcxStyle + AssignedValues = [svColor, svTextColor] + Color = 4707838 + TextColor = clBtnText + end + object cxStyle_gridRow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16311512 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_gridFoot: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridHead: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridGroupBox: TcxStyle + AssignedValues = [svColor, svFont] + Color = clMoneyGreen + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_yellow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_fontBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_fontclFuchsia: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clFuchsia + end + object cxStyle_fontclPurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clPurple + end + object cxStyle_fontclGreen: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clGreen + end + object cxStyle_fontclBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object cxStyle_fontclTeal: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clTeal + end + object cxStyle_fontclOlive: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + end + object DataSource2: TDataSource + DataSet = CDS_Sub + Left = 840 + Top = 353 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 904 + Top = 353 + end + object ADOQuerySub: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 760 + Top = 380 + end +end diff --git a/成品仓库/U_Bpcklist.pas b/成品仓库/U_Bpcklist.pas new file mode 100644 index 0000000..7fe228b --- /dev/null +++ b/成品仓库/U_Bpcklist.pas @@ -0,0 +1,676 @@ +unit U_BpCklist; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, + cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, + cxGrid, DBClient, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, RM_Common, + RM_Class, RM_e_Xls, RM_GridReport, RM_System, RM_Dataset, cxTextEdit, + cxCheckBox, cxPC, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, + dxBarBuiltInMenu, 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 + TfrmBpCklist = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1P_SPEC: TcxGridDBColumn; + v1P_MF: TcxGridDBColumn; + v1P_KZ: TcxGridDBColumn; + v1RollNum: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1CRType: TcxGridDBColumn; + v1CRTime: TcxGridDBColumn; + v1CRNO: TcxGridDBColumn; + v1CRID: TcxGridDBColumn; + v1Filler: TcxGridDBColumn; + v1FillTime: TcxGridDBColumn; + Label2: TLabel; + Label3: TLabel; + Label4: TLabel; + P_CodeName: TEdit; + P_Color: TEdit; + CRType: TComboBox; + Label5: TLabel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + v1MJID: TcxGridDBColumn; + v1MJXH: TcxGridDBColumn; + v1CPTYPE: TcxGridDBColumn; + ckName: TComboBox; + Label6: TLabel; + v1P_Color: TcxGridDBColumn; + ADOPrint: TADOQuery; + RMDB_MD: TRMDBDataSet; + RMGridReport1: TRMGridReport; + RMXLSExport1: TRMXLSExport; + v1P_Code1: TcxGridDBColumn; + v1inoutNO: TcxGridDBColumn; + TBsmADD: TToolButton; + inoutNo: TEdit; + Label7: TLabel; + v1custName: TcxGridDBColumn; + v1TocustName: TcxGridDBColumn; + TbPrint1: TToolButton; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + ADOPrint1: TADOQuery; + RMDB_Main: TRMDBDataSet; + v1Column11: TcxGridDBColumn; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxStyle_gridRow: TcxStyle; + cxStyle_gridFoot: TcxStyle; + cxStyle_gridHead: TcxStyle; + cxStyle_gridGroupBox: TcxStyle; + cxStyle_yellow: TcxStyle; + cxStyle_Red: TcxStyle; + cxStyle_fontBlack: TcxStyle; + cxStyle_fontclFuchsia: TcxStyle; + cxStyle_fontclPurple: TcxStyle; + cxStyle_fontclGreen: TcxStyle; + cxStyle_fontclBlue: TcxStyle; + cxStyle_fontclTeal: TcxStyle; + cxStyle_fontclOlive: TcxStyle; + Label8: TLabel; + custName: TEdit; + v1validName: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + v1Column13: TcxGridDBColumn; + cxTabControl1: TcxTabControl; + TBcdel: TToolButton; + v1Column14: TcxGridDBColumn; + v1Column15: TcxGridDBColumn; + orderNo: TEdit; + Label9: TLabel; + P_Code: TEdit; + defstr1: TEdit; + Label10: TLabel; + Label11: TLabel; + Tv1Column1: TcxGridDBColumn; + DataSource2: TDataSource; + CDS_Sub: TClientDataSet; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + TV2Column1: TcxGridDBColumn; + TV2Column14: TcxGridDBColumn; + TV2Column2: TcxGridDBColumn; + TV2Column3: TcxGridDBColumn; + TV2Column4: TcxGridDBColumn; + TV2Column5: TcxGridDBColumn; + TV2Column6: TcxGridDBColumn; + TV2Column7: TcxGridDBColumn; + TV2Column8: TcxGridDBColumn; + TV2Column9: TcxGridDBColumn; + TV2Column10: TcxGridDBColumn; + TV2Column11: TcxGridDBColumn; + TV2Column12: TcxGridDBColumn; + TV2Column13: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ADOQuerySub: TADOQuery; + TV2Column15: TcxGridDBColumn; + TV2Column16: TcxGridDBColumn; + TV2Column17: TcxGridDBColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure P_CodeNameChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBsmADDClick(Sender: TObject); + procedure TbPrint1Click(Sender: TObject); + procedure v1Column6CompareRowValuesForCellMerging(Sender: TcxGridColumn; ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; const AValue1: Variant; ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; const AValue2: Variant; var AAreEqual: Boolean); + procedure ToolButton1Click(Sender: TObject); + procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); + procedure cxTabControl1Change(Sender: TObject); + procedure TBcdelClick(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + private + procedure InitGrid(); + procedure InitSub(); + procedure SetComboBox(); + procedure SetStatus(); + { Private declarations } + public + fCKName: string; + { Public declarations } + end; + +var + frmBpCklist: TfrmBpCklist; + +implementation + +uses + U_DataLink, U_Fun10, U_ZDYHelp, U_BpCk, U_BpSmCk; +{$R *.dfm} + +procedure TfrmBpCklist.SetStatus(); +begin + TBedit.Visible := false; + Tbdel.Visible := false; + tbcdel.Visible := false; + case cxTabControl1.TabIndex of + 0: + begin + TBedit.Visible := true; + Tbdel.Visible := true; + end; + 1: + begin + tbcdel.Visible := true; + end; + end; +end; + +procedure TfrmBpCklist.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPCK'' '); + if trim(fCKName) <> '' then + sql.Add('and zdyName=' + quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count > 0 then + ckName.ItemIndex := 0; + + CRType.Items.Clear; + CRType.Items.Add(''); + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPCKTYPE'''); + if trim(fCKName) <> '' then + sql.Add('and note=' + quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count > 0 then + CRType.ItemIndex := 0; +end; + +procedure TfrmBpCklist.InitGrid(); +begin + try + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add(' exec P_Get_CP_CK ''' + formatdateTime('yyyy-MM-dd', begdate.Date) + ''',''' + formatdateTime('yyyy-MM-dd', enddate.Date + 1) + ''',''' + inttostr(cxTabControl1.TabIndex) + ''' '); +// sql.Add('select A.*, '); +// sql.Add('SMoney=PackFee+YbFee+OtherFee+(select SUM(money) from CP_InOut X where X.CRNO=A.CRNO), '); +// sql.Add('orderNo=(select Top 1 orderNo from JYOrder_Main X where X.MainID=A.MainID ),'); +// sql.Add('validName=case when valid=''N'' then '''' else ''δ'' end '); +// sql.Add('from CP_InOut A'); +// sql.Add('where CRTime>=''' + formatdateTime('yyyy-MM-dd', begdate.Date) + ''' '); +// sql.Add('and CRTime<''' + formatdateTime('yyyy-MM-dd', enddate.Date + 1) + ''' '); +// sql.Add('and CRFlag='''' '); +// if trim(FckName) <> '' then +// sql.Add('and ckName=' + quotedstr(trim(FckName))); +// if cxTabControl1.TabIndex = 0 then +// sql.Add('and valid=''Y'' '); +// if cxTabControl1.TabIndex = 1 then +// sql.Add('and valid=''N'' '); + open; + end; + SCreateCDS20(adoqueryTmp, CDS_Main); + SInitCDSData20(adoqueryTmp, CDS_Main); + finally + end; +end; + +procedure TfrmBpCklist.FormClose(Sender: TObject; var Action: TCloseAction); +begin + writeCxGrid(self.Caption + '1', Tv1, 'Ʒֿ'); + Action := cafree; +end; + +procedure TfrmBpCklist.FormDestroy(Sender: TObject); +begin + frmBpCklist := nil; +end; + +procedure TfrmBpCklist.TBAddClick(Sender: TObject); +begin + frmbpck := Tfrmbpck.create(self); + with frmbpck do + begin + fkeyNo := ''; + fType := 0; + fckName := self.fckName; + if showmodal = 1 then + begin + TBRafresh.Click; + self.CDS_Main.Locate('crNo', trim(fkeyNo), []); + end; + free; + end; +end; + +procedure TfrmBpCklist.P_CodeNameChange(Sender: TObject); +begin + if ADOQueryTmp.Active = False then + Exit; + SDofilter(ADOQueryTmp, SGetFilters(Panel1, 1, 2)); + SCreateCDS20(ADOQueryTmp, CDS_Main); + SInitCDSData20(ADOQueryTmp, CDS_Main); +end; + +procedure TfrmBpCklist.FormShow(Sender: TObject); +begin + readCxGrid(self.Caption + '1', Tv1, 'Ʒֿ'); + SetComboBox(); + SetStatus(); + InitGrid(); +end; + +procedure TfrmBpCklist.FormCreate(Sender: TObject); +begin + BegDate.Date := DServerDate - 7; + EndDate.Date := DServerDate; + cxGrid1.Align := alclient; + +end; + +procedure TfrmBpCklist.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmBpCklist.TBEditClick(Sender: TObject); +begin + if cds_main.IsEmpty then + exit; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR A'); + SQL.Add('where A.mainid=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sQL.Add('and A.hxNum<>0 '); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('˵Ѿݣ޸ģ', 'ʾ', 0); + Exit; + end; + + + { with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from BP_InOut A'); + SQL.Add('where A.kcid='''+Trim(CDS_Main.fieldbyname('kcid').AsString)+''' '); + sQL.Add('and A.CRFlag='''''); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('Ѳݣ޸ģ','ʾ',0); + Exit; + end; } + + frmbpck := Tfrmbpck.create(self); + with frmbpck do + begin + fkeyNo := self.cds_main.fieldbyname('CRNO').AsString; + FCode := self.cds_main.fieldbyname('P_Code').AsString; + FCodeName := self.cds_main.fieldbyname('P_Codename').AsString; + FDRCKNO := self.cds_main.fieldbyname('DRCKNO').AsString; + FDRCKName := self.cds_main.fieldbyname('DRCKName').AsString; + fType := 1; + fckName := self.fckName; + if showmodal = 1 then + begin + + end; + free; + end; + TBRafresh.Click; + +end; + +procedure TfrmBpCklist.TBDelClick(Sender: TObject); +var + YFID, CRID: string; +begin + if CDS_Main.IsEmpty then + Exit; + { if Trim(CDS_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; } + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR A'); + SQL.Add('where A.mainid=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sQL.Add('and A.hxNum<>0 '); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('˵Ѿݣɾ', 'ʾ', 0); + Exit; + end; + + if Application.MessageBox('ȷҪ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + try + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update CP_InOut SET valid=''N'' '); + SQL.Add('where CRNO=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sql.Add('delete from YF_Money_CR '); + SQL.Add('where mainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + execsql; + end; + TBRafresh.Click; + except + Application.MessageBox('ɾʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmBpCklist.TBRafreshClick(Sender: TObject); +begin + initGrid(); +end; + +procedure TfrmBpCklist.TBPrintClick(Sender: TObject); +var + filepath: string; +begin + if CDS_Main.IsEmpty then + exit; + + with AdoPrint do + begin + close; + sql.Clear; + sql.Add('select A.* from CP_InOut A'); + sql.Add('where inoutNO=' + quotedstr(trim(CDS_Main.fieldbyname('inoutNO').AsString))); + open; + end; + + with AdoPrint1 do + begin + close; + sql.Clear; + sql.Add('exec P_Print_cpCkMd '); + sql.Add('@inoutNo=' + quotedstr(trim(CDS_Main.fieldbyname('inoutNO').AsString))); + sql.Add(',@flag=' + quotedstr(trim(''))); + open; + end; + + try + filepath := ExtractFilePath(Application.ExeName) + 'report\뵥.rmf'; + if not FileExists(Pchar(filepath)) then + begin + application.MessageBox(pchar('ļ[' + filepath + ']ڣ'), 'ʾϢ', MB_IConError); + exit; + end; + RMVariables['dtxz'] := FormatDateTime('yyyy-mm-dd', date()); + RMVariables['zdr'] := trim(DName); + RMVariables['Filler'] := trim(CDS_Main.fieldbyname('Filler').AsString); + RMGridReport1.LoadFromFile(filepath); + RMGridReport1.ShowReport; + finally + + end; + +end; + +procedure TfrmBpCklist.TBExportClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then + Exit; + TcxGridToExcel(self.Caption, cxgrid1); +end; + +procedure TfrmBpCklist.TBsmADDClick(Sender: TObject); +begin + frmbpsmck := Tfrmbpsmck.create(self); + with frmbpsmck do + begin + fkeyNo := ''; + fType := 0; + fckName := self.fckName; + if showmodal = 1 then + begin + TBRafresh.Click; + // self.CDS_Main.Locate('crNo',trim(fkeyNo),[]) ; + end; + TBRafresh.Click; + free; + end; +end; + +procedure TfrmBpCklist.TbPrint1Click(Sender: TObject); +var + filepath: string; +begin + if CDS_Main.IsEmpty then + exit; + + with AdoPrint do + begin + close; + sql.Clear; + sql.Add('select * from CP_INout A '); + sql.Add('where A.inoutNo=' + quotedstr(trim(CDS_Main.fieldbyname('inoutNO').AsString))); + open; + end; + + try + filepath := ExtractFilePath(Application.ExeName) + 'report\.rmf'; + if not FileExists(Pchar(filepath)) then + begin + application.MessageBox(pchar('ļ[' + filepath + ']ڣ'), 'ʾϢ', MB_IConError); + exit; + end; + RMVariables['dtxz'] := FormatDateTime('yyyy-mm-dd', date()); + RMVariables['zdr'] := trim(DName); + RMVariables['Filler'] := trim(CDS_Main.fieldbyname('Filler').AsString); + RMGridReport1.LoadFromFile(filepath); + RMGridReport1.ShowReport; + finally + + end; + +end; + +procedure TfrmBpCklist.v1Column6CompareRowValuesForCellMerging(Sender: TcxGridColumn; ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; const AValue1: Variant; ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; const AValue2: Variant; var AAreEqual: Boolean); +var + colIdx0, colIdx1: integer; +begin + colIdx0 := tv1.GetColumnByFieldName('CRNO').Index; +// colIdx1:= tv1.GetColumnByFieldName('colorname').Index; + if (ARow1.Values[colIdx0] = ARow2.Values[colIdx0]) then + AAreEqual := True + else + AAreEqual := False; + +end; + +procedure TfrmBpCklist.ToolButton1Click(Sender: TObject); +var + YFID, CRID: string; +begin + if CDS_Main.IsEmpty then + Exit; + { if Trim(CDS_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; } + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR A'); + SQL.Add('where A.mainid=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sQL.Add('and A.hxNum<>0 '); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('˵Ѿݣɾ', 'ʾ', 0); + Exit; + end; + + if Application.MessageBox('ȷҪ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + try + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update CP_InOut SET valid=''N'' '); + SQL.Add('where CRNO=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sql.Add('delete from YF_Money_CR '); + SQL.Add('where mainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + execsql; + end; + TBRafresh.Click; + except + Application.MessageBox('ʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmBpCklist.Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin +// IF AViewInfo.GridRecord.Values[tv1.GetColumnByFieldName('validName').Index]='' then +// ACanvas.Font.Color:=clred; +end; + +procedure TfrmBpCklist.cxTabControl1Change(Sender: TObject); +begin + SetStatus(); + InitGrid(); +end; + +procedure TfrmBpCklist.TBcdelClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then + exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + try + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from CP_InOut where CRNO=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + ''' '); + execsql; + end; + TBRafresh.Click; + except + Application.MessageBox('ɾʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmBpCklist.Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + initsub(); +end; + +procedure TfrmBpCklist.InitSub(); +begin + if CDS_Main.IsEmpty then + Exit; + try + with ADOQuerySub do + begin + close; + sql.Clear; + sql.Add('exec P_Get_CP_CK_MX ''' + Cds_main.fieldbyname('P_CodeName').AsString + ''' ,''' + Cds_main.fieldbyname('P_Code').AsString + ''',''' + Cds_main.fieldbyname('CRNO').AsString + ''' '); + sql.Add(' ,''' + cds_main.fieldbyname('DRCKNO').AsString + ''' ,''' + cds_main.fieldbyname('DRCKName').AsString + ''' '); +// ShowMessage(SQL.text); + open; + end; + SCreateCDS20(ADOQuerySub, CDS_Sub); + SInitCDSData20(ADOQuerySub, CDS_Sub); + finally + end; +end; + +end. + diff --git a/成品仓库/U_Bpkclist.dfm b/成品仓库/U_Bpkclist.dfm new file mode 100644 index 0000000..1e2170b --- /dev/null +++ b/成品仓库/U_Bpkclist.dfm @@ -0,0 +1,1383 @@ +object frmBpkclist: TfrmBpkclist + Left = 636 + Top = 153 + Width = 1097 + Height = 891 + Caption = #24211#23384#20449#24687#34920 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Label7: TLabel + Left = 268 + Top = 16 + Width = 52 + Height = 12 + Caption = #35268#26684#22411#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1081 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 107 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#35810 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TOk: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #30830#23450 + ImageIndex = 41 + Visible = False + OnClick = TOkClick + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #22270#26679#26597#30475 + ImageIndex = 57 + Visible = False + OnClick = ToolButton1Click + end + object TBExport: TToolButton + Left = 213 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object ToolButton2: TToolButton + Left = 276 + Top = 0 + Caption = #20462#25913#20179#24211#32534#21495 + ImageIndex = 54 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 383 + Top = 0 + Caption = #20462#25913#20179#24211#21517#31216 + ImageIndex = 54 + OnClick = ToolButton3Click + end + object TBPrint: TToolButton + Left = 490 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 553 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1081 + Height = 45 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 27 + Top = 135 + Width = 52 + Height = 12 + Caption = #20837#24211#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 60 + Top = 124 + Width = 13 + Height = 12 + Caption = #33267 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 16 + Top = 64 + Width = 39 + Height = 12 + Caption = #21152#24037#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 308 + Top = 152 + Width = 52 + Height = 12 + Caption = #20837#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 288 + Top = 72 + Width = 24 + Height = 12 + Caption = #20179#24211 + end + object Label8: TLabel + Left = 192 + Top = 64 + Width = 26 + Height = 12 + Caption = #25209#27425 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 188 + Top = 16 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 540 + Top = 64 + Width = 52 + Height = 12 + Caption = #35268#26684#22411#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 516 + Top = 16 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 424 + Top = 76 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 32 + Top = 16 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 656 + Top = 16 + Width = 59 + Height = 12 + Caption = #23610#23544'/'#23610#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label14: TLabel + Left = 348 + Top = 16 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label15: TLabel + Left = 828 + Top = 16 + Width = 52 + Height = 12 + Caption = #20179#24211#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 216 + Top = 131 + Width = 100 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + ShowCheckbox = True + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 88 + Top = 127 + Width = 100 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + ShowCheckbox = True + TabOrder = 1 + end + object custName: TEdit + Tag = 2 + Left = 60 + Top = 60 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = custNameChange + end + object CRType: TComboBox + Tag = 2 + Left = 384 + Top = 152 + Width = 120 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 3 + OnChange = custNameChange + Items.Strings = ( + '' + #29983#20135#20837#24211) + end + object CheckBox1: TCheckBox + Left = 544 + Top = 152 + Width = 97 + Height = 17 + Caption = #21547#24211#23384#20026#38646 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + end + object ckName: TComboBox + Left = 320 + Top = 68 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 5 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object batchNo: TEdit + Tag = 2 + Left = 220 + Top = 60 + Width = 100 + Height = 20 + TabOrder = 6 + OnChange = custNameChange + end + object P_CodeName: TEdit + Tag = 2 + Left = 408 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 7 + OnChange = custNameChange + end + object P_Spec: TEdit + Tag = 2 + Left = 592 + Top = 60 + Width = 100 + Height = 20 + TabOrder = 8 + OnChange = custNameChange + end + object P_Color: TEdit + Tag = 2 + Left = 548 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 9 + OnChange = custNameChange + end + object P_KZ_S: TEdit + Tag = 2 + Left = 456 + Top = 72 + Width = 100 + Height = 20 + TabOrder = 10 + OnChange = custNameChange + end + object orderNo: TEdit + Tag = 2 + Left = 76 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 11 + OnChange = custNameChange + end + object defstr1: TEdit + Tag = 2 + Left = 720 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 12 + OnChange = custNameChange + end + object P_Code: TEdit + Tag = 2 + Left = 244 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 13 + OnChange = custNameChange + end + object DRCKName: TEdit + Tag = 2 + Left = 884 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 14 + OnChange = custNameChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 77 + Width = 1081 + Height = 359 + Align = alTop + PopupMenu = PopupMenu1 + TabOrder = 2 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1RollNum + end + item + Kind = skSum + Column = v1Qty + end + item + Kind = skSum + Column = v1Column7 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnSorting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object v1Ssel: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'Ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Options.Sorting = False + end + object v1Column4: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 128 + end + object v1CRTime: TcxGridDBColumn + Caption = #20837#24211#26085#26399 + DataBinding.FieldName = 'CRTime' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 60 + end + object v1CRType: TcxGridDBColumn + Caption = #20837#24211#31867#22411 + DataBinding.FieldName = 'CRType' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + end + object v1MJID: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 60 + end + object v1MJXH: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 60 + end + object v1Column2: TcxGridDBColumn + Caption = #21152#24037#21378 + DataBinding.FieldName = 'custName' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 100 + end + object v1Column3: TcxGridDBColumn + Caption = #25209#27425 + DataBinding.FieldName = 'batchNo' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 100 + end + object Tv1Column3: TcxGridDBColumn + Caption = #20837#24211#31867#22411 + DataBinding.FieldName = 'CRType' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1P_Code: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'P_Code' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object v1P_SPEC: TcxGridDBColumn + Caption = #35268#26684#25104#20998 + DataBinding.FieldName = 'P_SPEC' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 128 + end + object v1CPType: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'CPType' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + VisibleForCustomization = False + Width = 76 + end + object v1RollNum: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'RollNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 59 + end + object v1Qty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 59 + end + object v1Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 90 + end + object v1Column6: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'RKPrice' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column7: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'money' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object Tv1Column1: TcxGridDBColumn + Caption = #20179#24211#32534#21495 + DataBinding.FieldName = 'DRCKNO' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column2: TcxGridDBColumn + Caption = #20179#24211#21517#31216 + DataBinding.FieldName = 'DRCKName' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column4: TcxGridDBColumn + Caption = #39044#25187#38500#25968#37327 + DataBinding.FieldName = 'preckQty' + HeaderAlignmentHorz = taCenter + Width = 100 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object MovePanel2: TMovePanel + Left = 280 + Top = 128 + Width = 289 + Height = 49 + BevelInner = bvLowered + Caption = #27491#22312#26597#35810#25968#25454#65292#35831#31245#21518#12290#12290#12290 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + end + object GroupBox2: TGroupBox + Left = 0 + Top = 436 + Width = 1081 + Height = 208 + Align = alBottom + Caption = #24211#23384#20449#24687 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + object cxGrid2: TcxGrid + Left = 2 + Top = 16 + Width = 1077 + Height = 190 + Align = alTop + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + object TV2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = TV2Column14 + end + item + Kind = skSum + Column = TV2Column2 + end + item + Kind = skSum + Column = TV2Column3 + end + item + Kind = skSum + Column = TV2Column4 + end + item + Kind = skSum + Column = TV2Column5 + end + item + Kind = skSum + Column = TV2Column6 + end + item + Kind = skSum + Column = TV2Column7 + end + item + Kind = skSum + Column = TV2Column8 + end + item + Kind = skSum + Column = TV2Column9 + end + item + Kind = skSum + Column = TV2Column10 + end + item + Kind = skSum + Column = TV2Column11 + end + item + Kind = skSum + Column = TV2Column12 + end + item + Kind = skSum + Column = TV2Column13 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object TV2Column1: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column14: TcxGridDBColumn + Caption = #21512#35745 + DataBinding.FieldName = 'ZQty' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column17: TcxGridDBColumn + Caption = 'CXXXS' + DataBinding.FieldName = 'Size15' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object TV2Column2: TcxGridDBColumn + Caption = 'CXXS' + DataBinding.FieldName = 'Size1' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column3: TcxGridDBColumn + Caption = 'CXS' + DataBinding.FieldName = 'Size2' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column4: TcxGridDBColumn + Caption = 'CS' + DataBinding.FieldName = 'Size3' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column5: TcxGridDBColumn + Caption = 'CM' + DataBinding.FieldName = 'Size4' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column6: TcxGridDBColumn + Caption = 'CL' + DataBinding.FieldName = 'Size5' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column7: TcxGridDBColumn + Caption = 'CXL' + DataBinding.FieldName = 'Size6' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column15: TcxGridDBColumn + Caption = 'CXXL' + DataBinding.FieldName = 'Size13' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column8: TcxGridDBColumn + Caption = 'AXS' + DataBinding.FieldName = 'Size7' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column9: TcxGridDBColumn + Caption = 'AS' + DataBinding.FieldName = 'Size8' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column10: TcxGridDBColumn + Caption = 'AM' + DataBinding.FieldName = 'Size9' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column11: TcxGridDBColumn + Caption = 'AL' + DataBinding.FieldName = 'Size10' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column12: TcxGridDBColumn + Caption = 'AXL' + DataBinding.FieldName = 'Size11' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column13: TcxGridDBColumn + Caption = 'AXXL' + DataBinding.FieldName = 'Size12' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object TV2Column16: TcxGridDBColumn + Caption = 'AXXXL' + DataBinding.FieldName = 'Size14' + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + end + object GroupBox1: TGroupBox + Left = 0 + Top = 644 + Width = 1081 + Height = 208 + Align = alBottom + Caption = #39044#20986#24211#20449#24687 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + object cxGrid3: TcxGrid + Left = 2 + Top = 16 + Width = 1077 + Height = 190 + Align = alTop + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + object TV3: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource3 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + end> + 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 + 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 + Column = TV3Column2 + end + item + Kind = skSum + Column = TV3Column3 + end + item + Kind = skSum + Column = TV3Column4 + end + item + Kind = skSum + Column = TV3Column5 + end + item + Kind = skSum + Column = TV3Column6 + end + item + Kind = skSum + Column = TV3Column7 + end + item + Kind = skSum + Column = TV3Column8 + end + item + Kind = skSum + Column = TV3Column9 + end + item + Kind = skSum + Column = TV3Column10 + end + item + Kind = skSum + Column = TV3Column11 + end + item + Kind = skSum + Column = TV3Column12 + end + item + Kind = skSum + Column = TV3Column13 + end + item + Kind = skSum + Column = TV3Column14 + end + item + Kind = skSum + Column = TV3Column15 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object TV3Column1: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object TV3Column2: TcxGridDBColumn + Caption = #21512#35745 + DataBinding.FieldName = 'ZQty' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object TV3Column17: TcxGridDBColumn + Caption = 'CXXXS' + DataBinding.FieldName = 'Size15' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object TV3Column3: TcxGridDBColumn + Caption = 'CXXS' + DataBinding.FieldName = 'Size1' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object TV3Column4: TcxGridDBColumn + Caption = 'CXS' + DataBinding.FieldName = 'Size2' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object TV3Column5: TcxGridDBColumn + Caption = 'CS' + DataBinding.FieldName = 'Size3' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object TV3Column6: TcxGridDBColumn + Caption = 'CM' + DataBinding.FieldName = 'Size4' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object TV3Column7: TcxGridDBColumn + Caption = 'CL' + DataBinding.FieldName = 'Size5' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object TV3Column8: TcxGridDBColumn + Caption = 'CXL' + DataBinding.FieldName = 'Size6' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object TV3Column9: TcxGridDBColumn + Caption = 'CXXL' + DataBinding.FieldName = 'Size13' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object TV3Column10: TcxGridDBColumn + Caption = 'AXS' + DataBinding.FieldName = 'Size7' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object TV3Column11: TcxGridDBColumn + Caption = 'AS' + DataBinding.FieldName = 'Size8' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object TV3Column12: TcxGridDBColumn + Caption = 'AM' + DataBinding.FieldName = 'Size9' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object TV3Column13: TcxGridDBColumn + Caption = 'AL' + DataBinding.FieldName = 'Size10' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object TV3Column14: TcxGridDBColumn + Caption = 'AXL' + DataBinding.FieldName = 'Size11' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object TV3Column15: TcxGridDBColumn + Caption = 'AXXL' + DataBinding.FieldName = 'Size12' + HeaderAlignmentHorz = taCenter + Width = 66 + end + object TV3Column16: TcxGridDBColumn + Caption = 'AXXXL' + DataBinding.FieldName = 'Size14' + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TV3 + end + end + end + object Panel9: TPanel + Left = 168 + Top = 220 + Width = 261 + Height = 141 + Color = clSkyBlue + TabOrder = 6 + Visible = False + object Label32: TLabel + Left = 15 + Top = 44 + Width = 48 + Height = 12 + Caption = #20179#24211#32534#21495 + end + object Button11: TButton + Left = 40 + Top = 93 + Width = 60 + Height = 25 + Caption = #30830#23450 + TabOrder = 0 + OnClick = Button11Click + end + object Button12: TButton + Left = 156 + Top = 93 + Width = 60 + Height = 25 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button12Click + end + object Edit1: TEdit + Tag = 2 + Left = 69 + Top = 40 + Width = 116 + Height = 20 + TabOrder = 2 + end + end + object Panel2: TPanel + Left = 436 + Top = 216 + Width = 261 + Height = 141 + Color = clSkyBlue + TabOrder = 7 + Visible = False + object Label16: TLabel + Left = 15 + Top = 44 + Width = 48 + Height = 12 + Caption = #20179#24211#21517#31216 + end + object Button1: TButton + Left = 40 + Top = 93 + Width = 60 + Height = 25 + Caption = #30830#23450 + TabOrder = 0 + OnClick = Button1Click + end + object Button2: TButton + Left = 156 + Top = 93 + Width = 60 + Height = 25 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button2Click + end + object Edit2: TEdit + Tag = 2 + Left = 69 + Top = 40 + Width = 116 + Height = 20 + TabOrder = 2 + end + end + object ADOQueryCmd: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 680 + Top = 8 + end + object ADOQueryTmp: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 756 + Top = 4 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 576 + Top = 1 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 612 + Top = 5 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 640 + Top = 116 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 772 + Top = 317 + end + object DataSource2: TDataSource + DataSet = CDS_Sub + Left = 736 + Top = 313 + end + object ADOQuerySub: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 688 + Top = 312 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = AdoPrint + Left = 524 + Top = 160 + end + object AdoPrint: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 496 + Top = 156 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 464 + Top = 160 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 440 + Top = 164 + ReportData = {} + end + object PopupMenu1: TPopupMenu + Left = 256 + Top = 152 + object N1: TMenuItem + Caption = #20840#36873 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #20840#24323 + OnClick = N2Click + end + end + object ADOQueryYck: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 192 + Top = 712 + end + object DataSource3: TDataSource + DataSet = CDS_Yck + Left = 240 + Top = 713 + end + object CDS_Yck: TClientDataSet + Aggregates = <> + Params = <> + Left = 276 + Top = 717 + end +end diff --git a/成品仓库/U_Bpkclist.pas b/成品仓库/U_Bpkclist.pas new file mode 100644 index 0000000..ffaa072 --- /dev/null +++ b/成品仓库/U_Bpkclist.pas @@ -0,0 +1,669 @@ +unit U_Bpkclist; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, + cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, + cxGrid, DBClient, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, cxCheckBox, + IdFTP, ShellAPI, strutils, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, + RM_Common, RM_Class, RM_GridReport, RM_e_Xls, RM_System, RM_Dataset, Menus, + MovePanel, cxContainer, cxTextEdit, cxCurrencyEdit, 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 + TfrmBpkclist = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1P_SPEC: TcxGridDBColumn; + v1RollNum: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1CRType: TcxGridDBColumn; + v1CRTime: TcxGridDBColumn; + Label2: TLabel; + Label3: TLabel; + custName: TEdit; + CRType: TComboBox; + Label5: TLabel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + TOk: TToolButton; + v1Ssel: TcxGridDBColumn; + CheckBox1: TCheckBox; + v1MJID: TcxGridDBColumn; + v1MJXH: TcxGridDBColumn; + v1CPType: TcxGridDBColumn; + ckName: TComboBox; + Label6: TLabel; + v1P_Code: TcxGridDBColumn; + Label7: TLabel; + batchNo: TEdit; + Label8: TLabel; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + P_CodeName: TEdit; + Label9: TLabel; + P_Spec: TEdit; + Label10: TLabel; + Label11: TLabel; + P_Color: TEdit; + Label12: TLabel; + P_KZ_S: TEdit; + orderNo: TEdit; + Label4: TLabel; + v1Column4: TcxGridDBColumn; + ToolButton1: TToolButton; + defstr1: TEdit; + Label13: TLabel; + P_Code: TEdit; + Label14: TLabel; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + Tv1Column1: TcxGridDBColumn; + Tv1Column2: TcxGridDBColumn; + CDS_Sub: TClientDataSet; + DataSource2: TDataSource; + ADOQuerySub: TADOQuery; + Tv1Column3: TcxGridDBColumn; + RMDB_Main: TRMDBDataSet; + AdoPrint: TADOQuery; + RMXLSExport1: TRMXLSExport; + RMGridReport1: TRMGridReport; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + MovePanel2: TMovePanel; + Label15: TLabel; + DRCKName: TEdit; + Tv1Column4: TcxGridDBColumn; + GroupBox2: TGroupBox; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + TV2Column1: TcxGridDBColumn; + TV2Column14: TcxGridDBColumn; + TV2Column2: TcxGridDBColumn; + TV2Column3: TcxGridDBColumn; + TV2Column4: TcxGridDBColumn; + TV2Column5: TcxGridDBColumn; + TV2Column6: TcxGridDBColumn; + TV2Column7: TcxGridDBColumn; + TV2Column15: TcxGridDBColumn; + TV2Column8: TcxGridDBColumn; + TV2Column9: TcxGridDBColumn; + TV2Column10: TcxGridDBColumn; + TV2Column11: TcxGridDBColumn; + TV2Column12: TcxGridDBColumn; + TV2Column13: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + GroupBox1: TGroupBox; + cxGrid3: TcxGrid; + TV3: TcxGridDBTableView; + cxGridLevel2: TcxGridLevel; + ADOQueryYck: TADOQuery; + DataSource3: TDataSource; + CDS_Yck: TClientDataSet; + TV3Column1: TcxGridDBColumn; + TV3Column2: TcxGridDBColumn; + TV3Column3: TcxGridDBColumn; + TV3Column4: TcxGridDBColumn; + TV3Column5: TcxGridDBColumn; + TV3Column6: TcxGridDBColumn; + TV3Column7: TcxGridDBColumn; + TV3Column8: TcxGridDBColumn; + TV3Column9: TcxGridDBColumn; + TV3Column10: TcxGridDBColumn; + TV3Column11: TcxGridDBColumn; + TV3Column12: TcxGridDBColumn; + TV3Column13: TcxGridDBColumn; + TV3Column14: TcxGridDBColumn; + TV3Column15: TcxGridDBColumn; + ToolButton2: TToolButton; + Panel9: TPanel; + Label32: TLabel; + Button11: TButton; + Button12: TButton; + Edit1: TEdit; + ToolButton3: TToolButton; + Panel2: TPanel; + Label16: TLabel; + Button1: TButton; + Button2: TButton; + Edit2: TEdit; + TV2Column16: TcxGridDBColumn; + TV3Column16: TcxGridDBColumn; + TV2Column17: TcxGridDBColumn; + TV3Column17: TcxGridDBColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure custNameChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TOkClick(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure Button11Click(Sender: TObject); + procedure Button12Click(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + + + private + procedure InitGrid(); + procedure InitSub(); + procedure SetComboBox(); + { Private declarations } + public + fType: integer; + fCKName: string; + + { Public declarations } + end; + +var + frmBpkclist: TfrmBpkclist; + +implementation + +uses + U_DataLink, U_Fun10, U_ZDYHelp, U_BpRk; +{$R *.dfm} + +procedure TfrmBpkclist.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPCK'' '); + if trim(fCKName) <> '' then + sql.Add('and zdyName=' + quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count > 0 then + ckName.ItemIndex := 0; + + CRType.Items.Clear; + CRType.Items.Add(''); + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPRKTYPE'''); + if trim(fCKName) <> '' then + sql.Add('and note=' + quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count > 0 then + CRType.ItemIndex := 0; +end; + +procedure TfrmBpkclist.InitGrid(); +begin + MovePanel2.Visible := True; + try + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('exec P_Get_CP_KC'); + open; + end; + SCreateCDS20(adoqueryTmp, CDS_Main); + SInitCDSData20(adoqueryTmp, CDS_Main); + finally + end; + MovePanel2.Visible := False; +end; + +procedure TfrmBpkclist.InitSub(); +begin + if CDS_Main.IsEmpty then + Exit; + try + with adoquerysub do + begin + close; + sql.Clear; + sql.Add('exec P_Get_CP_KC_MX ''' + Cds_main.fieldbyname('P_CodeName').AsString + ''' ,''' + Cds_main.fieldbyname('P_Code').AsString + ''' '); + sql.Add(',''' + Cds_main.fieldbyname('DRCKNO').AsString + ''' ,''' + Cds_main.fieldbyname('DRCKName').AsString + ''''); +// ShowMessage(SQL.text); + open; + end; + SCreateCDS20(adoquerysub, CDS_Sub); + SInitCDSData20(adoquerysub, CDS_Sub); + + with ADOQueryYck do + begin + close; + sql.Clear; + sql.Add('exec P_Get_CP_KC_MX_Yck ''' + Cds_main.fieldbyname('P_CodeName').AsString + ''' ,''' + Cds_main.fieldbyname('P_Code').AsString + ''' '); + sql.Add(',''' + Cds_main.fieldbyname('DRCKNO').AsString + ''' ,''' + Cds_main.fieldbyname('DRCKName').AsString + ''''); +// ShowMessage(SQL.text); + open; + end; + SCreateCDS20(ADOQueryYck, CDS_Yck); + SInitCDSData20(ADOQueryYck, CDS_Yck); + finally + end; +end; + +procedure TfrmBpkclist.FormClose(Sender: TObject; var Action: TCloseAction); +begin + writeCxGrid(self.Caption + tv1.Name + '3', Tv1, 'Ʒֿ'); + if fType = 10 then + Action := cahide + else + Action := cafree; +end; + +procedure TfrmBpkclist.FormDestroy(Sender: TObject); +begin + frmBpkclist := nil; +end; + +procedure TfrmBpkclist.custNameChange(Sender: TObject); +begin + if ADOQueryTmp.Active = False then + Exit; + SDofilter(ADOQueryTmp, SGetFilters(Panel1, 1, 2)); + SCreateCDS20(ADOQueryTmp, CDS_Main); + SInitCDSData20(ADOQueryTmp, CDS_Main); +end; + +procedure TfrmBpkclist.FormShow(Sender: TObject); +begin + if fType = 10 then + begin + TOk.Visible := true; + end; + v1Ssel.Visible := true; + readCxGrid(self.Caption + tv1.Name + 'KC', Tv1, 'Ʒֿ'); + SetComboBox(); + InitGrid(); +end; + +procedure TfrmBpkclist.FormCreate(Sender: TObject); +begin + BegDate.Date := DServerDate - 7; + EndDate.Date := DServerDate; + cxGrid1.Align := alclient; + +end; + +procedure TfrmBpkclist.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmBpkclist.TBRafreshClick(Sender: TObject); +begin + + initGrid(); +end; + +procedure TfrmBpkclist.TBPrintClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then + Exit; + TcxGridToExcel(self.Caption, cxgrid1); +end; + +procedure TfrmBpkclist.TBExportClick(Sender: TObject); +var + filepath: string; + sqlstr: string; + i: Integer; +begin + if CDS_Main.IsEmpty then + exit; + + if CDS_Main.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + + with ADOQueryTmp do + begin + close; + SQL.Clear; + sql.Add('delete CPKC_Print '); + ExecSQL; + end; + Tv1.OnFocusedRecordChanged := nil; + sqlstr := ''; + i := 0; + MovePanel2.Visible := True; + with CDS_Main do + begin + First; + while CDS_Main.Locate('SSel', true, []) do + begin + sqlstr := sqlstr + Cds_main.fieldbyname('P_CodeName').AsString + Cds_main.fieldbyname('P_Code').AsString + Cds_main.fieldbyname('DRCKNO').AsString + Cds_main.fieldbyname('DRCKName').AsString + ','; + +// sqlstr := sqlstr + 'exec P_Get_CP_KC_copy1 ''' + Cds_main.fieldbyname('P_CodeName').AsString + ''' ,''' + Cds_main.fieldbyname('P_Code').AsString + ''''; +// sqlstr := sqlstr + ',''' + Cds_main.fieldbyname('DRCKNO').AsString + ''' ,''' + Cds_main.fieldbyname('DRCKName').AsString + ''' '; +// i := i + 1; +// with ADOQueryTmp do +// begin +// close; +// sql.Clear; +// sql.Add('exec P_Get_CP_KC_copy1 ''' + Cds_main.fieldbyname('P_CodeName').AsString + ''' ,''' + Cds_main.fieldbyname('P_Code').AsString + ''' '); +// sql.Add(',''' + Cds_main.fieldbyname('DRCKNO').AsString + ''' ,''' + Cds_main.fieldbyname('DRCKName').AsString + ''''); +//// ShowMessage(SQL.text); +// ExecSQL; +// end; + Delete; +// if i = 50 then +// begin +// i := 0; +// sqlstr := ''; +// end; + + end; + end; + + sqlstr := Copy(sqlstr, 1, Length(sqlstr) - 1); + + with ADOQueryTmp do + begin + close; + SQL.Clear; + sql.Add('exec P_Get_CP_KC_copy3 ' + QuotedStr(sqlstr)); +// ShowMessage(SQL.Text); + ExecSQL; + end; +// ShowMessage(sqlstr); +// with ADOQueryTmp do +// begin +// close; +// SQL.Clear; +// sql.Add(sqlstr); +//// ShowMessage(SQL.text); +// ExecSQL; +// end; + + with AdoPrint do + begin + close; + sql.Clear; + sql.Add('select A.* from CPKC_Print A'); + sql.Add('order by P_Code,P_Color,'); + sql.Add('case when defstr1=''CXXS'' then 1 when defstr1=''CXS'' then 2 when defstr1=''CS'' then 3 '); + sql.Add(' when defstr1=''CM'' then 4 when defstr1=''CL'' then 5 when defstr1=''CXL'' then 6'); + sql.Add(' when defstr1=''AXS'' then 7 when defstr1=''AS'' then 8 when defstr1=''AM'' then 9'); + sql.Add(' when defstr1=''AL'' then 10 when defstr1=''AXL'' then 11 when defstr1=''AXXL'' then 12'); + sql.Add('else 99 end '); +// ShowMessage(sql.Text); + open; + end; + + try + filepath := ExtractFilePath(Application.ExeName) + 'report\ϸ.rmf'; + if not FileExists(Pchar(filepath)) then + begin + application.MessageBox(pchar('ļ[' + filepath + ']ڣ'), 'ʾϢ', MB_IConError); + exit; + end; + RMGridReport1.LoadFromFile(filepath); + RMGridReport1.ShowReport; + finally + Tv1.OnFocusedRecordChanged := Tv1FocusedRecordChanged; + InitGrid(); + end; + MovePanel2.Visible := False; + +end; +//begin +// if CDS_Main.IsEmpty then +// Exit; +// TcxGridToExcel(self.Caption, cxgrid1); + +//end; + +procedure TfrmBpkclist.TOkClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then + Exit; + ModalResult := 1; +end; + +procedure TfrmBpkclist.ToolButton1Click(Sender: TObject); +var + IdFTP1: TIdFTP; + FileName, FPath, FFName: string; + FInt: integer; +begin + if CDS_Main.IsEmpty then + Exit; + with adoqueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from TP_File '); + sql.Add('where WBID=' + quotedstr(trim(CDS_Main.fieldbyname('orderNo').AsString))); + //sql.Add('and TFType=''Ʒ'''); + open; + end; + if adoqueryCmd.IsEmpty then + begin + application.MessageBox('ָʾûͼϢ', 'ʾϢ', MB_ICONERROR); + exit; + end; + FileName := adoqueryCmd.fieldbyname('FileName').AsString; + + try + IdFTP1 := TIdFTP.Create(self); + IdFTP1.Host := server; + IdFTP1.Username := 'three'; + IdFTP1.Password := '641010'; + IdFTP1.Connect(); + except + IdFTP1.Quit; + IdFTP1.Free; + Application.MessageBox('޷ӵļ飡', 'ʾ', MB_ICONWARNING); + Exit; + end; + FPath := Leftstr(ExtractFilePath(Application.ExeName), 1) + ':\ͼƬ鿴\'; + if not DirectoryExists(ExtractFileDir(FPath)) then + CreateDir(ExtractFileDir(FPath)); + FFName := Trim(FileName); + FFName := FPath + FFName; + deleteFile(FFName); + IdFTP1.Get('TP\' + FileName, FFName); + if IdFTP1.Connected then + begin + IdFTP1.Quit; + IdFTP1.Free; + end; + try + ShellExecute(Handle, 'open', PChar(FFName), '', '', SW_SHOWNORMAL); + except + end; + +end; + +procedure TfrmBpkclist.Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + initsub(); +end; + +procedure TfrmBpkclist.N1Click(Sender: TObject); +begin + SelOKNo(CDS_Main, True); +end; + +procedure TfrmBpkclist.N2Click(Sender: TObject); +begin + SelOKNo(CDS_Main, False); +end; + +procedure TfrmBpkclist.ToolButton2Click(Sender: TObject); +begin + Panel9.Left := (self.Width - Panel9.Width) div 2; + Panel9.Visible := true; +end; + +procedure TfrmBpkclist.Button11Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then + Exit; + if CDS_Main.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + try + CDS_Main.DisableControls; + ADOQueryCmd.Connection.BeginTrans; + with CDS_Main do + begin + First; + while not Eof do + begin + if CDS_Main.FieldByName('SSel').AsBoolean = True then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update CP_inout Set DRCKNO=''' + trim(Edit1.Text) + ''' '); + sql.Add('where P_CodeName=''' + Trim(CDS_Main.fieldbyname('P_CodeName').AsString) + ''''); + sql.Add('and P_Code=''' + Trim(CDS_Main.fieldbyname('P_Code').AsString) + ''''); + sql.Add('and DRCKNO=''' + Trim(CDS_Main.fieldbyname('DRCKNO').AsString) + ''''); + sql.Add('and DRCKName=''' + Trim(CDS_Main.fieldbyname('DRCKName').AsString) + ''''); +// sql.add('where AA.P_CodeName='FAIRY' and AA.P_Code='1505-C' and isnull(DRCKNO,'')='101' and isnull(DRCKName,'')='²''); + ExecSQL; + end; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + CDS_Main.EnableControls; + application.MessageBox('ݱɹ', 'ʾϢ'); + Panel9.Visible := false; + TBRafresh.Click; + except + ADOQueryCmd.Connection.RollbackTrans; + CDS_Main.EnableControls; + application.MessageBox('ݱʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmBpkclist.Button12Click(Sender: TObject); +begin + Panel9.Visible := false; +end; + +procedure TfrmBpkclist.Button1Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then + Exit; + if CDS_Main.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + try + CDS_Main.DisableControls; + ADOQueryCmd.Connection.BeginTrans; + with CDS_Main do + begin + First; + while not Eof do + begin + if CDS_Main.FieldByName('SSel').AsBoolean = True then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update CP_inout Set DRCKName=''' + trim(Edit2.Text) + ''' '); + sql.Add('where P_CodeName=''' + Trim(CDS_Main.fieldbyname('P_CodeName').AsString) + ''''); + sql.Add('and P_Code=''' + Trim(CDS_Main.fieldbyname('P_Code').AsString) + ''''); + sql.Add('and DRCKNO=''' + Trim(CDS_Main.fieldbyname('DRCKNO').AsString) + ''''); + sql.Add('and DRCKName=''' + Trim(CDS_Main.fieldbyname('DRCKName').AsString) + ''''); +// sql.add('where AA.P_CodeName='FAIRY' and AA.P_Code='1505-C' and isnull(DRCKNO,'')='101' and isnull(DRCKName,'')='²''); + ExecSQL; + end; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + CDS_Main.EnableControls; + application.MessageBox('ݱɹ', 'ʾϢ'); + Panel2.Visible := false; + TBRafresh.Click; + except + ADOQueryCmd.Connection.RollbackTrans; + CDS_Main.EnableControls; + application.MessageBox('ݱʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmBpkclist.Button2Click(Sender: TObject); +begin + Panel2.Visible := false; +end; + +procedure TfrmBpkclist.ToolButton3Click(Sender: TObject); +begin + Panel2.Left := (self.Width - Panel2.Width) div 2; + Panel2.Visible := true; +end; + + +end. + diff --git a/成品仓库/U_Bpkclist_HZ.dfm b/成品仓库/U_Bpkclist_HZ.dfm new file mode 100644 index 0000000..a27c892 --- /dev/null +++ b/成品仓库/U_Bpkclist_HZ.dfm @@ -0,0 +1,595 @@ +object frmBpkclist_HZ: TfrmBpkclist_HZ + Left = 138 + Top = 151 + Width = 1097 + Height = 506 + Caption = #24211#23384#20449#24687#34920 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Label7: TLabel + Left = 268 + Top = 16 + Width = 52 + Height = 12 + Caption = #35268#26684#22411#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1081 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#35810 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TOk: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #30830#23450 + ImageIndex = 41 + Visible = False + OnClick = TOkClick + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #22270#26679#26597#30475 + ImageIndex = 57 + Visible = False + OnClick = ToolButton1Click + end + object TBExport: TToolButton + Left = 213 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 276 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 339 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1081 + Height = 41 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 27 + Top = 135 + Width = 52 + Height = 12 + Caption = #20837#24211#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 60 + Top = 124 + Width = 13 + Height = 12 + Caption = #33267 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 16 + Top = 64 + Width = 39 + Height = 12 + Caption = #21152#24037#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 308 + Top = 152 + Width = 52 + Height = 12 + Caption = #20837#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 288 + Top = 72 + Width = 24 + Height = 12 + Caption = #20179#24211 + end + object Label8: TLabel + Left = 192 + Top = 64 + Width = 26 + Height = 12 + Caption = #25209#27425 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 36 + Top = 16 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 540 + Top = 64 + Width = 52 + Height = 12 + Caption = #35268#26684#22411#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 652 + Top = 56 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 424 + Top = 76 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 36 + Top = 80 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 840 + Top = 56 + Width = 59 + Height = 12 + Caption = #23610#23544'/'#23610#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label14: TLabel + Left = 236 + Top = 16 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 216 + Top = 131 + Width = 100 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + ShowCheckbox = True + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 88 + Top = 127 + Width = 100 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + ShowCheckbox = True + TabOrder = 1 + end + object custName: TEdit + Tag = 2 + Left = 60 + Top = 60 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = custNameChange + end + object CRType: TComboBox + Tag = 2 + Left = 384 + Top = 152 + Width = 120 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 3 + OnChange = custNameChange + Items.Strings = ( + '' + #29983#20135#20837#24211) + end + object CheckBox1: TCheckBox + Left = 544 + Top = 152 + Width = 97 + Height = 17 + Caption = #21547#24211#23384#20026#38646 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + end + object ckName: TComboBox + Left = 320 + Top = 68 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 5 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object batchNo: TEdit + Tag = 2 + Left = 220 + Top = 60 + Width = 100 + Height = 20 + TabOrder = 6 + OnChange = custNameChange + end + object P_CodeName: TEdit + Tag = 2 + Left = 296 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 7 + OnChange = custNameChange + end + object P_Spec: TEdit + Tag = 2 + Left = 592 + Top = 60 + Width = 100 + Height = 20 + TabOrder = 8 + OnChange = custNameChange + end + object P_Color: TEdit + Tag = 2 + Left = 684 + Top = 52 + Width = 100 + Height = 20 + TabOrder = 9 + OnChange = custNameChange + end + object P_KZ_S: TEdit + Tag = 2 + Left = 456 + Top = 72 + Width = 100 + Height = 20 + TabOrder = 10 + OnChange = custNameChange + end + object orderNo: TEdit + Tag = 2 + Left = 80 + Top = 76 + Width = 100 + Height = 20 + TabOrder = 11 + OnChange = custNameChange + end + object defstr1: TEdit + Tag = 2 + Left = 900 + Top = 52 + Width = 100 + Height = 20 + TabOrder = 12 + OnChange = custNameChange + end + object P_Code: TEdit + Tag = 2 + Left = 92 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 13 + OnChange = custNameChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 73 + Width = 1081 + Height = 316 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCustomDrawCell = Tv1CustomDrawCell + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1RollNum + end + item + Kind = skSum + Column = v1Qty + end + item + Kind = skSum + Column = v1Column7 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object v1Ssel: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'Ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Options.Sorting = False + end + object v1P_Code: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'P_Code' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object v1P_SPEC: TcxGridDBColumn + Caption = #35268#26684#25104#20998 + DataBinding.FieldName = 'P_SPEC' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 128 + end + object v1RollNum: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'RollNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 59 + end + object v1Qty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 59 + end + object v1QtyUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 90 + end + object v1Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 90 + end + object v1Column7: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'money' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 75 + end + object v1Column6: TcxGridDBColumn + Caption = #26368#20302#24211#23384#37327 + DataBinding.FieldName = 'kc_min' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 91 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOQueryCmd: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 680 + Top = 8 + end + object ADOQueryTmp: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 540 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 576 + Top = 1 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 612 + Top = 5 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 508 + Top = 4 + end +end diff --git a/成品仓库/U_Bpkclist_HZ.pas b/成品仓库/U_Bpkclist_HZ.pas new file mode 100644 index 0000000..606feac --- /dev/null +++ b/成品仓库/U_Bpkclist_HZ.pas @@ -0,0 +1,286 @@ +unit U_Bpkclist_HZ; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, + cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, DBClient, ADODB, cxGridCustomPopupMenu, + cxGridPopupMenu, cxCheckBox,IdFTP,ShellAPI,strutils; + +type + TfrmBpkclist_HZ = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1P_SPEC: TcxGridDBColumn; + v1RollNum: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1QtyUnit: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + Label2: TLabel; + Label3: TLabel; + custName: TEdit; + CRType: TComboBox; + Label5: TLabel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + TOk: TToolButton; + v1Ssel: TcxGridDBColumn; + CheckBox1: TCheckBox; + ckName: TComboBox; + Label6: TLabel; + v1P_Code: TcxGridDBColumn; + Label7: TLabel; + batchNo: TEdit; + Label8: TLabel; + P_CodeName: TEdit; + Label9: TLabel; + P_Spec: TEdit; + Label10: TLabel; + Label11: TLabel; + P_Color: TEdit; + Label12: TLabel; + P_KZ_S: TEdit; + orderNo: TEdit; + Label4: TLabel; + ToolButton1: TToolButton; + defstr1: TEdit; + Label13: TLabel; + P_Code: TEdit; + Label14: TLabel; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure custNameChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TOkClick(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + private + procedure InitGrid(); + procedure SetComboBox(); + { Private declarations } + public + fType:integer; + fCKName:string; + + { Public declarations } + end; + +var + frmBpkclist_HZ: TfrmBpkclist_HZ; + +implementation +uses + U_DataLink,U_Fun10,U_ZDYHelp, U_BpRk; +{$R *.dfm} +procedure TfrmBpkclist_HZ.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPCK'' '); + if trim(fCKName)<>'' then + sql.Add('and zdyName='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count>0 then ckName.ItemIndex:=0; + + CRType.Items.Clear; + CRType.Items.Add(''); + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''CPRKTYPE'''); + if trim(fCKName)<>'' then + sql.Add('and note='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count>0 then CRType.ItemIndex:=0; +end; +procedure TfrmBpkclist_HZ.InitGrid(); +begin + try + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('exec P_Get_CP_KC_HZ'); + open; + end; + SCreateCDS20(adoqueryTmp,CDS_Main); + SInitCDSData20(adoqueryTmp,CDS_Main); + finally + end; +end; + +procedure TfrmBpkclist_HZ.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + writeCxGrid(self.Caption+tv1.Name+'3',Tv1,'Ʒֿ'); + if fType=10 then Action:=cahide + else Action:=cafree; +end; + +procedure TfrmBpkclist_HZ.FormDestroy(Sender: TObject); +begin + frmBpkclist_HZ:=nil; +end; + +procedure TfrmBpkclist_HZ.custNameChange(Sender: TObject); +begin + if ADOQueryTmp.Active=False then Exit; + SDofilter(ADOQueryTmp,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryTmp,CDS_Main); + SInitCDSData20(ADOQueryTmp,CDS_Main); +end; + +procedure TfrmBpkclist_HZ.FormShow(Sender: TObject); +begin + if fType=10 then + begin + TOk.Visible:=true; + v1Ssel.Visible:=true; + end; + readCxGrid(self.Caption+tv1.Name+'3',Tv1,'Ʒֿ'); + SetComboBox(); + InitGrid(); +end; + +procedure TfrmBpkclist_HZ.FormCreate(Sender: TObject); +begin + BegDate.Date:=DServerDate-7; + EndDate.Date:=DServerDate; + cxGrid1.Align:=alclient; + +end; + +procedure TfrmBpkclist_HZ.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmBpkclist_HZ.TBRafreshClick(Sender: TObject); +begin + + initGrid(); +end; + +procedure TfrmBpkclist_HZ.TBPrintClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid1); +end; + +procedure TfrmBpkclist_HZ.TBExportClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid1); +end; + +procedure TfrmBpkclist_HZ.TOkClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + ModalResult:=1; +end; + +procedure TfrmBpkclist_HZ.ToolButton1Click(Sender: TObject); +var + IdFTP1: TIdFTP; + FileName,FPath,FFName:string; + FInt:integer; +begin + if CDS_Main.IsEmpty then Exit; + with adoqueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from TP_File '); + sql.Add('where WBID='+quotedstr(trim(CDS_Main.fieldbyname('orderNo').AsString))); + //sql.Add('and TFType=''Ʒ'''); + open; + end; + IF adoqueryCmd.IsEmpty then + begin + application.MessageBox('ָʾûͼϢ','ʾϢ',MB_ICONERROR); + exit; + end; + FileName:= adoqueryCmd.fieldbyname('FileName').AsString; + + try + IdFTP1:=TIdFTP.Create(self); + IdFTP1.Host:=server; + IdFTP1.Username:= 'three'; + IdFTP1.Password:= '641010'; + IdFTP1.Connect(); + except + IdFTP1.Quit; + IdFTP1.Free; + Application.MessageBox('޷ӵļ飡', 'ʾ', MB_ICONWARNING); + Exit; + end; + FPath:=Leftstr(ExtractFilePath(Application.ExeName),1)+':\ͼƬ鿴\'; + if not DirectoryExists(ExtractFileDir(FPath)) then CreateDir(ExtractFileDir(FPath)); + FFName:=Trim(FileName); + FFName:=FPath+FFName; + deleteFile(FFName); + IdFTP1.Get('TP\'+FileName,FFName); + if IdFTP1.Connected then + begin + IdFTP1.Quit; + IdFTP1.Free; + end; + try + ShellExecute(Handle, 'open',PChar(FFName),'', '', SW_SHOWNORMAL); + except + end; + +end; + +procedure TfrmBpkclist_HZ.Tv1CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); +begin + IF AViewInfo.GridRecord.Values[tv1.GetColumnByFieldName('Qty').index] + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = BPCK_DataLink.SHuangSe + Styles.IncSearch = BPCK_DataLink.SHuangSe + Styles.Selection = BPCK_DataLink.SHuangSe + Styles.Header = BPCK_DataLink.handBlack + object v2Column6: TcxGridDBColumn + Caption = #20179#20301#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 124 + end + object v2Column8: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'DEFstr1' + HeaderAlignmentHorz = taCenter + Width = 97 + end + object v2Column10: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'DEFStr2' + HeaderAlignmentHorz = taCenter + Width = 79 + end + object v2Column11: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFStr3' + HeaderAlignmentHorz = taCenter + Width = 85 + end + object v2Column3: TcxGridDBColumn + Caption = #35774#23450#21305#25968 + DataBinding.FieldName = 'mrate' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 114 + end + object v2Column2: TcxGridDBColumn + Caption = #24211#23384#21305#25968 + DataBinding.FieldName = 'CPNUm' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 76 + end + object v2Column12: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column13: TcxGridDBColumn + Caption = #25805#20316#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Width = 153 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = BPCK_DataLink.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = BPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 700 + Top = 228 + end +end diff --git a/成品仓库/U_CPKWListSel.pas b/成品仓库/U_CPKWListSel.pas new file mode 100644 index 0000000..656929f --- /dev/null +++ b/成品仓库/U_CPKWListSel.pas @@ -0,0 +1,174 @@ +unit U_CPKWListSel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, + 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 + TfrmCPKWListSel = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + defstr1: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + v2Column8: TcxGridDBColumn; + Label2: TLabel; + DEFstr3: TComboBox; + v2Column10: TcxGridDBColumn; + v2Column11: TcxGridDBColumn; + v2Column12: TcxGridDBColumn; + v2Column13: TcxGridDBColumn; + defstr2: TEdit; + Label4: TLabel; + v2Column2: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure defstr1Change(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure Tv2DblClick(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + + public + + end; + +var + frmCPKWListSel: TfrmCPKWListSel; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmCPKWListSel.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select A.* '); +// sql.Add(' ,cpNum=(select count(MJID) from CK_BanCP_KC X where X.KCKW=A.zdyCode and X.kcQty>0)'); + sql.Add(' from KH_Zdy_Attachment A '); + sql.Add(' where Type=''CPKW'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; + ToolButton2.Click; +end; + + +procedure TfrmCPKWListSel.FormDestroy(Sender: TObject); +begin + frmCPKWListSel:=nil; +end; + +procedure TfrmCPKWListSel.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmCPKWListSel.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption,Tv2,'ͻԶ'); + Close; +end; +procedure TfrmCPKWListSel.FormShow(Sender: TObject); +begin + cxGrid2.Align:=alclient; + ReadCxGrid(self.Caption,Tv2,'ͻԶ'); + InitGrid(); +end; + +procedure TfrmCPKWListSel.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmCPKWListSel.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmCPKWListSel.defstr1Change(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmCPKWListSel.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid2); +// SelExportData(Tv2,ADOQueryMain,'Ӧб'); +end; + +procedure TfrmCPKWListSel.Tv2DblClick(Sender: TObject); +begin + ModalResult := 1; +end; + +end. + + diff --git a/成品仓库/U_DataLink.dfm b/成品仓库/U_DataLink.dfm new file mode 100644 index 0000000..00116ea --- /dev/null +++ b/成品仓库/U_DataLink.dfm @@ -0,0 +1,18108 @@ +object CPCK_DataLink: TCPCK_DataLink + OldCreateOrder = False + OnDestroy = DataModuleDestroy + Left = 244 + Top = 208 + Height = 349 + Width = 482 + object AdoDataLink: TADOQuery + Connection = ADOLink + Parameters = <> + Left = 136 + Top = 8 + end + object ADOLink: TADOConnection + LoginPrompt = False + Left = 48 + Top = 8 + end + object ThreeImgList: TImageList + Height = 24 + Width = 24 + Left = 48 + Top = 72 + 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 + object ThreeLookAndFeelCol: TcxLookAndFeelController + Kind = lfStandard + NativeStyle = False + Left = 253 + Top = 12 + end + object ThreeColorBase: TcxStyleRepository + Left = 139 + Top = 80 + PixelsPerInch = 96 + object SHuangSe: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = 4707838 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + TextColor = clBtnText + end + object SkyBlue: TcxStyle + AssignedValues = [svColor, svFont] + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object Default: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object QHuangSe: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object FontBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object TextSHuangSe: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + object FonePurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindow + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clPurple + end + object FoneClMaroon: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clMaroon + end + object FoneRed: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clRed + end + object RowColor: TcxStyle + AssignedValues = [svColor] + Color = 16311512 + end + object handBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxBlue: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16711731 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + end + object cxStyleRepository1: TcxStyleRepository + Left = 265 + Top = 174 + PixelsPerInch = 96 + object cxStyle1: TcxStyle + AssignedValues = [svColor] + Color = clInactiveCaption + end + object cxStyle2: TcxStyle + AssignedValues = [svColor, svTextColor] + Color = 4707838 + TextColor = clBtnText + end + object cxStyle_gridRow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16311512 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_gridFoot: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridHead: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridGroupBox: TcxStyle + AssignedValues = [svColor, svFont] + Color = clMoneyGreen + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_yellow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_fontBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_fontclFuchsia: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clFuchsia + end + object cxStyle_fontclPurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clPurple + end + object cxStyle_fontclGreen: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clGreen + end + object cxStyle_fontclBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object cxStyle_fontclTeal: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clTeal + end + object cxStyle_fontclOlive: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + end + object Timer1: TTimer + Enabled = False + Interval = 10000 + Left = 272 + Top = 104 + end +end diff --git a/成品仓库/U_DataLink.pas b/成品仓库/U_DataLink.pas new file mode 100644 index 0000000..761b2c5 --- /dev/null +++ b/成品仓库/U_DataLink.pas @@ -0,0 +1,99 @@ +unit U_DataLink; + +interface + +uses + SysUtils, Classes, DB, ADODB, ImgList, Controls, cxStyles, cxLookAndFeels, + Windows,Messages,forms,OleCtnrs,DateUtils, ExtCtrls, AppEvnts, 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; {ݿӲ} + DCurHandle:hwnd; //ǰ + DName:string ; //#û#// + DCode:string ; //#û#// + Ddatabase:string; //#ݿ#// + DTitCaption:string; //##// + DParameters1,DParameters2,DParameters3,DParameters4,DParameters5:string;// ⲿ + DParameters6,DParameters7,DParameters8,DParameters9,DParameters10:string;//ⲿ + OldDllApp:Tapplication; //ԭо + NewDllApp: Tapplication;//ǰ + MainApplication: Tapplication ; + DFormCode:integer; //ǰں + IsDelphiLanguage:integer; + DServerDate:TdateTime; //ʱ + DCompany:string; //˾ +type + TCPCK_DataLink = class(TDataModule) + AdoDataLink: TADOQuery; + ADOLink: TADOConnection; + ThreeImgList: TImageList; + ThreeLookAndFeelCol: TcxLookAndFeelController; + ThreeColorBase: TcxStyleRepository; + SHuangSe: TcxStyle; + SkyBlue: TcxStyle; + Default: TcxStyle; + QHuangSe: TcxStyle; + Red: TcxStyle; + FontBlue: TcxStyle; + TextSHuangSe: TcxStyle; + FonePurple: TcxStyle; + FoneClMaroon: TcxStyle; + FoneRed: TcxStyle; + RowColor: TcxStyle; + handBlack: TcxStyle; + cxBlue: TcxStyle; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxStyle_gridRow: TcxStyle; + cxStyle_gridFoot: TcxStyle; + cxStyle_gridHead: TcxStyle; + cxStyle_gridGroupBox: TcxStyle; + cxStyle_yellow: TcxStyle; + cxStyle_Red: TcxStyle; + cxStyle_fontBlack: TcxStyle; + cxStyle_fontclFuchsia: TcxStyle; + cxStyle_fontclPurple: TcxStyle; + cxStyle_fontclGreen: TcxStyle; + cxStyle_fontclBlue: TcxStyle; + cxStyle_fontclTeal: TcxStyle; + cxStyle_fontclOlive: TcxStyle; + Timer1: TTimer; + procedure DataModuleDestroy(Sender: TObject); + private + { Private declarations } + public + { Public declarations } + end; + +var + CPCK_DataLink: TCPCK_DataLink; + +implementation +{$R *.dfm} + + +procedure TCPCK_DataLink.DataModuleDestroy(Sender: TObject); +begin + CPCK_DataLink:=nil; +end; + +end. + + + + diff --git a/成品仓库/U_GetDllForm.pas b/成品仓库/U_GetDllForm.pas new file mode 100644 index 0000000..33640ac --- /dev/null +++ b/成品仓库/U_GetDllForm.pas @@ -0,0 +1,318 @@ +unit U_GetDllForm; + +interface + +uses + Windows, Messages, forms, OleCtnrs, DateUtils, SysUtils, ADODB, IniFiles, + dxCore, ActiveX; + +function GetDllForm(App: Tapplication; FormH: hwnd; FormID: integer; Language: integer; WinStyle: integer; GCode: Pchar; GName: Pchar; DataBase: Pchar; Title: PChar; Parameters1: PChar; Parameters2: PChar; Parameters3: PChar; Parameters4: PChar; Parameters5: PChar; Parameters6: PChar; Parameters7: PChar; Parameters8: PChar; Parameters9: PChar; Parameters10: PChar; DataBaseStr: PChar): hwnd; export; stdcall; + +function ConnData(): Boolean; + +function GetsysParam(muserId: pchar; fparam1: pchar): Boolean; + +implementation + +uses + U_DataLink, U_getDogServer, U_BpRklist, U_Bpcklist, U_Bpkclist, U_ZDYHelp,U_CPKWListSel, + U_BpckXjList, U_Bpkclist_HZ; + + ///////////////////////////////////////////////////////////////// + // ˵:ȡDllеô // + // ˵App>>Ӧó // + // FormH>>ôھ // + // FormID>>ں; // + // Language>>; // + // WinStyle>>ͣ // +///////////////////////////////////////////////////////////////// +function GetDllForm(App: Tapplication; FormH: hwnd; FormID: integer; Language: integer; WinStyle: integer; GCode: Pchar; GName: Pchar; DataBase: Pchar; Title: PChar; Parameters1: PChar; Parameters2: PChar; Parameters3: PChar; Parameters4: PChar; Parameters5: PChar; Parameters6: PChar; Parameters7: PChar; Parameters8: PChar; Parameters9: PChar; Parameters10: PChar; DataBaseStr: PChar): hwnd; +var + mnewHandle: hwnd; + mstyle: TFormStyle; // 0:Ӵ; 1ͨ + mstate: TWindowState; + mborderstyle: TFormBorderStyle; +begin + mnewHandle := 0; + DName := GName; + DCode := GName; + DdataBase := DataBase; + DTitCaption := Title; + DParameters1 := Parameters1; + DParameters2 := Parameters2; + DParameters3 := Parameters3; + DParameters4 := Parameters4; + DParameters5 := Parameters5; + DParameters6 := Parameters6; + DParameters7 := Parameters7; + DParameters8 := Parameters8; + DParameters9 := Parameters9; + DParameters10 := Parameters10; + + MainApplication := App; + DCurHandle := FormH; + IsDelphiLanguage := Language; + + Application := TApplication(App); + DCurHandle := 0; + + + //ֵַ + SetLength(server, 255); + SetLength(dtbase, 255); + SetLength(user, 255); + SetLength(pswd, 255); + + server := '139.224.12.182,7781'; // 122.224.36.142,7781 + dtbase := 'aidengdata'; //jinzhicaidata + user := 'aidengsa'; + pswd := 'rightsoft@3203'; + DConString := 'Provider=SQLOLEDB.1;Password=' + pswd + ';Persist Security Info=True;User ID=' + user + ';Initial Catalog=' + dtbase + ';Data Source=' + server; + if trim(DataBaseStr) <> '' then + begin + DConString := DataBaseStr; + + end; + Parameters1 := 'Ʒֿ'; + + // if GetLinkDog(DCurHandle,DConString)<0 then application.Terminate; + if not ConnData() then + begin + result := 0; + exit; + end; + GetsysParam('', ''); + // 崰 ״̬ + if WinStyle = 0 then + begin + mstyle := fsMDIChild; + mstate := wsMaximized; + mborderstyle := bsSizeable; + end + else + begin + mstyle := fsNormal; + mstate := wsNormal; + mborderstyle := bsSizeable; + end; + ///////////////////// + //ģ鴰 + case FormID of + -1: //ֿ + begin + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'CPCK'; + flagname := ''; + if ShowModal = 1 then + begin + + end; + free; + end; + end; + -2: // + begin + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'CPRKTYPE'; + flagname := ''; + fnote := true; + if ShowModal = 1 then + begin + + end; + free; + end; + end; + -3: // + begin + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'CPCKTYPE'; + flagname := ''; + fnote := true; + if ShowModal = 1 then + begin + + end; + free; + end; + end; + 10: //Ʒ + begin + if frmBpRklist = nil then + begin + frmBpRklist := TfrmBpRklist.Create(application.MainForm); + with frmBpRklist do + begin + caption := Trim(Title); + fCkName := trim(Parameters1); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmBpRklist.BringToFront; + // + mnewHandle := frmBpRklist.Handle; + end; + 20: //Ʒ + begin + if frmBpCklist = nil then + begin + frmBpCklist := TfrmBpCklist.Create(application.MainForm); + with frmBpCklist do + begin + caption := Trim(Title); + fCkName := trim(Parameters1); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmBpCklist.BringToFront; + // + mnewHandle := frmBpCklist.Handle; + end; + 21: //Ʒ + begin + if frmBpckXjList = nil then + begin + frmBpckXjList := TfrmBpckXjList.Create(application.MainForm); + with frmBpckXjList do + begin + caption := Trim(Title); + fCkName := trim(Parameters1); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmBpckXjList.BringToFront; + // + mnewHandle := frmBpckXjList.Handle; + end; + 30: //Ʒ + begin + if frmBpkclist = nil then + begin + frmBpkclist := TfrmBpkclist.Create(application.MainForm); + with frmBpkclist do + begin + caption := Trim(Title); + fCkName := trim(Parameters1); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmBpkclist.BringToFront; + // + mnewHandle := frmBpkclist.Handle; + end; + 31: //Ʒ + begin + if frmBpkclist_HZ = nil then + begin + frmBpkclist_HZ := TfrmBpkclist_HZ.Create(application.MainForm); + with frmBpkclist_HZ do + begin + caption := Trim(Title); + fCkName := trim(Parameters1); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmBpkclist_HZ.BringToFront; + // + mnewHandle := frmBpkclist_HZ.Handle; + end; + + end; // end case + + Result := mnewHandle; +// NewDllApp := Application; +end; +//=========================================================== + //ݿӳ +//=========================================================== + +function ConnData(): Boolean; +var + IniFile: TIniFile; +begin + try + IniFile := TIniFile.Create(ExtractFilePath(Application.ExeName) + 'SYSTEMSET.INI'); + server := IniFile.ReadString('SERVER', 'ַ', '127.0.0.1'); + finally + IniFile.Free; + end; + if not Assigned(CPCK_DataLink) then + CPCK_DataLink := TCPCK_DataLink.Create(Application); + try + with CPCK_DataLink.ADOLink do + begin + if not Connected then + begin + Connected := false; + ConnectionString := DConString; + LoginPrompt := false; + Connected := true; + // BaseData10_DataLink.Timer1.Enabled:=true; + end; + end; + Result := true; + except + Result := false; + application.MessageBox('ݿʧܣ', '', mb_Ok + MB_ICONERROR); + end; + +end; +//========================================================= + //ȡϵͳ +//========================================================= + +function GetsysParam(muserId: pchar; fparam1: pchar): Boolean; +begin + result := true; + ////////////////////////////// + shortDateFormat := 'yyyy-MM-dd'; + // + with CPCK_DataLink.AdoDataLink do + begin + close; + sql.Clear; + sql.Add('select getDate()as dt'); + open; + DServerDate := fieldByName('dt').AsDatetime; + end; + result := true; +end; + +initialization + CoInitialize(nil); + dxUnitsLoader.Initialize; + + +finalization + CPCK_DataLink.Free; + application := NewDllApp; + dxUnitsLoader.Finalize; + +end. + diff --git a/成品仓库/U_JGCklistSel.dfm b/成品仓库/U_JGCklistSel.dfm new file mode 100644 index 0000000..a9c8642 --- /dev/null +++ b/成品仓库/U_JGCklistSel.dfm @@ -0,0 +1,503 @@ +object frmJGCklistSel: TfrmJGCklistSel + Left = 136 + Top = 125 + Width = 1140 + Height = 579 + Caption = #22383#24067#21152#24037#21015#34920 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Label7: TLabel + Left = 800 + Top = 48 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1124 + AutoSize = True + 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 = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#35810 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + Visible = False + end + object TOK: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #30830#23450 + ImageIndex = 41 + OnClick = TOKClick + end + object TBClose: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1124 + Height = 45 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #20986#24211#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 168 + Top = 16 + Width = 6 + Height = 12 + Caption = '-' + end + object Label3: TLabel + Left = 468 + Top = 16 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 640 + Top = 16 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 288 + Top = 16 + Width = 52 + Height = 12 + Caption = #20986#24211#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 328 + Top = 56 + Width = 24 + Height = 12 + Caption = #20179#24211 + end + object Label8: TLabel + Left = 792 + Top = 16 + Width = 39 + Height = 12 + Caption = #21152#24037#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 180 + Top = 11 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object P_CodeName: TEdit + Tag = 2 + Left = 520 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = P_CodeNameChange + end + object P_Color: TEdit + Tag = 2 + Left = 668 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = P_CodeNameChange + end + object CRType: TComboBox + Tag = 2 + Left = 344 + Top = 12 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 4 + OnChange = P_CodeNameChange + Items.Strings = ( + '' + #38144#21806#20986#24211 + #21152#24037#20986#24211) + end + object ckName: TComboBox + Left = 356 + Top = 52 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 5 + Text = #26679#21697#20179#24211 + Items.Strings = ( + #26679#21697#20179#24211) + end + object cust: TEdit + Tag = 2 + Left = 832 + Top = 13 + Width = 100 + Height = 20 + TabOrder = 6 + OnChange = P_CodeNameChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 77 + Width = 1124 + Height = 384 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + OnDblClick = Tv1DblClick + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1P_CodeName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1RollNum + end + item + Kind = skSum + Column = v1Qty + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = CPCK_DataLink.Default + object v1Column1: TcxGridDBColumn + Caption = #20986#24211#21333#21495 + DataBinding.FieldName = 'CRNO' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1CRTime: TcxGridDBColumn + Caption = #20986#24211#26085#26399 + DataBinding.FieldName = 'CRTime' + HeaderAlignmentHorz = taCenter + Width = 98 + end + object v1CRType: TcxGridDBColumn + Caption = #20986#24211#31867#22411 + DataBinding.FieldName = 'CRType' + HeaderAlignmentHorz = taCenter + Width = 76 + end + object v1customerNoname: TcxGridDBColumn + Caption = #21152#24037#21378 + DataBinding.FieldName = 'cust' + HeaderAlignmentHorz = taCenter + Width = 101 + end + object v1MJID: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1MJXH: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1P_CodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 108 + end + object v1P_SPEC: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'P_SPEC' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 90 + end + object v1P_Color: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'P_Color' + HeaderAlignmentHorz = taCenter + Width = 91 + end + object v1P_MF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'P_MF' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1P_KZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'P_KZ' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1CPTYPE: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'CPTYPE' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1RollNum: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'RollNum' + HeaderAlignmentHorz = taCenter + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 50 + end + object v1Qty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Styles.Content = CPCK_DataLink.FontBlue + Styles.Footer = CPCK_DataLink.FontBlue + Styles.Header = CPCK_DataLink.FontBlue + Width = 50 + end + object v1QtyUnit: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Width = 50 + end + object v1Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 118 + end + object v1Filler: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1FillTime: TcxGridDBColumn + Caption = #25805#20316#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Width = 75 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOQueryCmd: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 724 + Top = 4 + end + object ADOQueryTmp: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 560 + Top = 4 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 624 + Top = 1 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 660 + Top = 5 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 592 + Top = 52 + end + object ADOPrint: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 816 + Top = 16 + end + object RMDB_MD: TRMDBDataSet + Visible = True + DataSet = ADOPrint + Left = 848 + Top = 16 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 896 + Top = 8 + ReportData = {} + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 948 + Top = 20 + end +end diff --git a/成品仓库/U_JGCklistSel.pas b/成品仓库/U_JGCklistSel.pas new file mode 100644 index 0000000..6d194be --- /dev/null +++ b/成品仓库/U_JGCklistSel.pas @@ -0,0 +1,223 @@ +unit U_JGCklistSel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, + cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, DBClient, ADODB, cxGridCustomPopupMenu, + cxGridPopupMenu, RM_Common, RM_Class, RM_e_Xls, RM_GridReport, RM_System, + RM_Dataset; + +type + TfrmJGCklistSel = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TOK: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_CodeName: TcxGridDBColumn; + v1P_SPEC: TcxGridDBColumn; + v1P_MF: TcxGridDBColumn; + v1P_KZ: TcxGridDBColumn; + v1RollNum: TcxGridDBColumn; + v1Qty: TcxGridDBColumn; + v1QtyUnit: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1CRType: TcxGridDBColumn; + v1CRTime: TcxGridDBColumn; + v1Filler: TcxGridDBColumn; + v1FillTime: TcxGridDBColumn; + Label2: TLabel; + Label3: TLabel; + Label4: TLabel; + P_CodeName: TEdit; + P_Color: TEdit; + CRType: TComboBox; + Label5: TLabel; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + CDS_Main: TClientDataSet; + cxGridPopupMenu1: TcxGridPopupMenu; + v1MJID: TcxGridDBColumn; + v1MJXH: TcxGridDBColumn; + v1CPTYPE: TcxGridDBColumn; + ckName: TComboBox; + Label6: TLabel; + v1P_Color: TcxGridDBColumn; + ADOPrint: TADOQuery; + RMDB_MD: TRMDBDataSet; + RMGridReport1: TRMGridReport; + RMXLSExport1: TRMXLSExport; + v1customerNoname: TcxGridDBColumn; + cust: TEdit; + Label7: TLabel; + Label8: TLabel; + v1Column1: TcxGridDBColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure P_CodeNameChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TOKClick(Sender: TObject); + procedure Tv1DblClick(Sender: TObject); + private + procedure InitGrid(); + procedure SetComboBox(); + { Private declarations } + public + fCKName:string; + { Public declarations } + end; + +var + frmJGCklistSel: TfrmJGCklistSel; +implementation +uses + U_DataLink,U_Fun10,U_ZDYHelp; +{$R *.dfm} +procedure TfrmJGCklistSel.SetComboBox(); +begin + ckName.Items.Clear; + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCK'' '); + if trim(fCKName)<>'' then + sql.Add('and zdyName='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + ckName.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if ckName.Items.Count>0 then ckName.ItemIndex:=0; + + CRType.Items.Clear; + CRType.Items.Add(''); + with adoQueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type=''BPCKTYPE'''); + if trim(fCKName)<>'' then + sql.Add('and note='+quotedstr(trim(fCKName))); + open; + while not eof do + begin + CRType.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + end; + if CRType.Items.Count>0 then CRType.ItemIndex:=0; +end; +procedure TfrmJGCklistSel.InitGrid(); +begin + try + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select A.* from BP_InOut A'); + sql.Add('where CRTime>='''+formatdateTime('yyyy-MM-dd',begdate.Date)+''' '); + sql.Add('and CRTime<'''+formatdateTime('yyyy-MM-dd',enddate.Date+1)+''' '); + sql.Add('and CRFlag='''' '); + sql.Add('and CRType=''ӹ'' '); + sql.Add('and ckName='+quotedstr(trim('ֿ')) ); + open; + end; + SCreateCDS20(adoqueryTmp,CDS_Main); + SInitCDSData20(adoqueryTmp,CDS_Main); + finally + end; +end; + +procedure TfrmJGCklistSel.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + writeCxGrid(self.Caption,Tv1,'ƥֿ'); + Action:=cafree; +end; + +procedure TfrmJGCklistSel.FormDestroy(Sender: TObject); +begin + frmJGCklistSel:=nil; +end; + +procedure TfrmJGCklistSel.P_CodeNameChange(Sender: TObject); +var + m:string; +begin + if ADOQueryTmp.Active=False then Exit; + SDofilter(ADOQueryTmp,SGetFilters(Panel1,1,2)); + m:= SGetFilters(Panel1,1,2); + SCreateCDS20(ADOQueryTmp,CDS_Main); + SInitCDSData20(ADOQueryTmp,CDS_Main); +end; + +procedure TfrmJGCklistSel.FormShow(Sender: TObject); +begin + readCxGrid(self.Caption,Tv1,'ƥֿ'); + SetComboBox(); + try + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select top 50 A.* from BP_InOut A'); + sql.Add('where CRFlag='''' '); + sql.Add('and CRType=''ӹ'' '); + sql.Add('and ckName='+quotedstr(trim('ֿ'))); + sql.Add('order by A.FillTime desc'); + open; + end; + SCreateCDS20(adoqueryTmp,CDS_Main); + SInitCDSData20(adoqueryTmp,CDS_Main); + finally + end; +end; + +procedure TfrmJGCklistSel.FormCreate(Sender: TObject); +begin + BegDate.Date:=DServerDate-30; + EndDate.Date:=DServerDate; + cxGrid1.Align:=alclient; +end; + +procedure TfrmJGCklistSel.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmJGCklistSel.TBRafreshClick(Sender: TObject); +begin + initGrid(); +end; + +procedure TfrmJGCklistSel.TOKClick(Sender: TObject); +begin + IF CDS_Main.IsEmpty then exit; + ModalResult:=1; +end; + +procedure TfrmJGCklistSel.Tv1DblClick(Sender: TObject); +begin + tok.Click; +end; + +end. diff --git a/成品仓库/U_PackList.dfm b/成品仓库/U_PackList.dfm new file mode 100644 index 0000000..07cd745 --- /dev/null +++ b/成品仓库/U_PackList.dfm @@ -0,0 +1,648 @@ +object frmPackList: TfrmPackList + Left = 77 + Top = 101 + Width = 921 + Height = 634 + Caption = #25171#21253#20449#24687 + 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 = 913 + Height = 33 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = Packaged_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 47 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 49 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 48 + OnClick = ToolButton3Click + end + object TBExport: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #23548#20986#30721#21333 + ImageIndex = 44 + OnClick = TBExportClick + end + object TBClose: TToolButton + Left = 402 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 913 + Height = 56 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 239 + Top = 12 + Width = 48 + Height = 12 + Caption = #23458#25143#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label1: TLabel + Left = 24 + Top = 12 + Width = 48 + Height = 12 + Caption = #25171#21253#26085#26399 + end + object Label2: TLabel + Left = 240 + Top = 32 + Width = 48 + Height = 12 + Caption = #35745#21010#21333#21495 + end + object Label4: TLabel + Left = 444 + Top = 12 + Width = 48 + Height = 12 + Caption = #20135#21697#21517#31216 + end + object khName: TEdit + Left = 292 + Top = 7 + Width = 100 + Height = 20 + TabOrder = 0 + OnChange = khNameChange + end + object begdate: TDateTimePicker + Left = 76 + Top = 8 + Width = 97 + Height = 20 + Date = 41009.831677152770000000 + Format = 'yyyy-MM-dd' + Time = 41009.831677152770000000 + TabOrder = 1 + end + object enddate: TDateTimePicker + Left = 76 + Top = 28 + Width = 97 + Height = 20 + Date = 41009.831677152770000000 + Format = 'yyyy-MM-dd' + Time = 41009.831677152770000000 + TabOrder = 2 + end + object orderNo: TEdit + Left = 292 + Top = 28 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = khNameChange + end + object cpName: TEdit + Left = 500 + Top = 8 + Width = 100 + Height = 20 + TabOrder = 4 + OnChange = khNameChange + end + object CheckBox1: TCheckBox + Left = 444 + Top = 32 + Width = 97 + Height = 17 + Caption = #20840#36873 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 5 + OnClick = CheckBox1Click + end + end + object CXGrid1: TcxGrid + Left = 4 + Top = 89 + Width = 505 + Height = 316 + TabOrder = 2 + LookAndFeel.Kind = lfStandard + object TV1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = TV1CellClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = V1qtyMi + end + item + Kind = skSum + Column = V1qtyjz + end + item + Kind = skSum + Column = V1qtyMa + end + item + Kind = skSum + Column = V1QtyMz + end + item + Kind = skSum + Column = V1QtyPZ + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.ContentOdd = Packaged_DataLink.cxStyle_gridRow + Styles.Footer = Packaged_DataLink.cxStyle_gridFoot + Styles.GroupByBox = Packaged_DataLink.cxStyle_gridGroupBox + Styles.Header = Packaged_DataLink.cxStyle_gridHead + object V1SSel: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 50 + end + object V1packID: TcxGridDBColumn + Caption = #21253#26465#30721 + DataBinding.FieldName = 'packID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 74 + end + object V1FillTime: TcxGridDBColumn + Caption = #25171#21253#26085#26399 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 75 + end + object V1packNo: TcxGridDBColumn + Caption = #21253#21495 + DataBinding.FieldName = 'packNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 67 + end + object TV1KHName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'KHName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 80 + end + object TV1OrderNo: TcxGridDBColumn + Caption = #35745#21010#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 100 + end + object TV1CPName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'CPName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 109 + end + object V1qtyMi: TcxGridDBColumn + Caption = #31859#25968 + DataBinding.FieldName = 'qtyMi' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = Packaged_DataLink.cxStyle_fontclBlue + Styles.Footer = Packaged_DataLink.cxStyle_fontclBlue + Styles.Header = Packaged_DataLink.cxStyle_fontclBlue + Width = 50 + end + object V1qtyjz: TcxGridDBColumn + Caption = #20844#26020#25968 + DataBinding.FieldName = 'qtyjz' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = Packaged_DataLink.cxStyle_fontclFuchsia + Styles.Footer = Packaged_DataLink.cxStyle_fontclFuchsia + Styles.Header = Packaged_DataLink.cxStyle_fontclFuchsia + Width = 50 + end + object V1qtyMa: TcxGridDBColumn + Caption = #30721#25968 + DataBinding.FieldName = 'qtyMa' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 50 + end + object V1QtyMz: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'QtyMz' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 50 + end + object V1QtyPZ: TcxGridDBColumn + Caption = #30382#37325 + DataBinding.FieldName = 'QtyPZ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 50 + end + end + object CXGrid1L1: TcxGridLevel + GridView = TV1 + end + end + object cxSplitter1: TcxSplitter + Left = 641 + Top = 89 + Width = 8 + Height = 319 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salRight + Control = cxGrid2 + end + object cxGrid2: TcxGrid + Left = 649 + Top = 89 + Width = 264 + Height = 319 + Align = alRight + TabOrder = 4 + LookAndFeel.Kind = lfStandard + object tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = cxGridDBqtyMi + end + item + Kind = skSum + Column = cxGridDBqtyjz + end + item + Kind = skSum + Column = cxGridDBqtyMa + end + item + Kind = skSum + Column = cxGridDBQtyMz + end + item + Kind = skSum + Column = cxGridDBQtyPZ + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.ContentOdd = Packaged_DataLink.cxStyle_gridRow + Styles.Footer = Packaged_DataLink.cxStyle_gridFoot + Styles.GroupByBox = Packaged_DataLink.cxStyle_gridGroupBox + Styles.Header = Packaged_DataLink.cxStyle_gridHead + object cxGridDBTMID: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'TMID' + HeaderAlignmentHorz = taCenter + Width = 75 + end + object cxGridDBJH: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'JH' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object cxGridDBColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'Color' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 60 + end + object cxGridDBHX: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'HX' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 60 + end + object cxGridDBqtyMi: TcxGridDBColumn + Caption = #31859#25968 + DataBinding.FieldName = 'qtyMi' + HeaderAlignmentHorz = taCenter + Styles.Content = Packaged_DataLink.cxStyle_fontclBlue + Styles.Footer = Packaged_DataLink.cxStyle_fontclBlue + Styles.Header = Packaged_DataLink.cxStyle_fontclBlue + Width = 50 + end + object cxGridDBqtyjz: TcxGridDBColumn + Caption = #20844#26020#25968 + DataBinding.FieldName = 'qtyjz' + HeaderAlignmentHorz = taCenter + Styles.Content = Packaged_DataLink.cxStyle_fontclFuchsia + Styles.Footer = Packaged_DataLink.cxStyle_fontclFuchsia + Styles.Header = Packaged_DataLink.cxStyle_fontclFuchsia + Width = 50 + end + object cxGridDBqtyMa: TcxGridDBColumn + Caption = #30721#25968 + DataBinding.FieldName = 'qtyMa' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object cxGridDBQtyMz: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'QtyMz' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object cxGridDBQtyPZ: TcxGridDBColumn + Caption = #30382#37325 + DataBinding.FieldName = 'QtyPZ' + HeaderAlignmentHorz = taCenter + Width = 50 + end + end + object cxGridLevel1: TcxGridLevel + GridView = tv2 + end + end + object cxGrid3: TcxGrid + Left = 0 + Top = 408 + Width = 913 + Height = 194 + Align = alBottom + TabOrder = 5 + Visible = False + object TV3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource3 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + object TV3ORDERNO: TcxGridDBColumn + Caption = 'ORDER NO' + DataBinding.FieldName = 'ORDERNO' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 70 + end + object TV3BALNO: TcxGridDBColumn + Caption = 'BAL NO' + DataBinding.FieldName = 'PackNo' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 60 + end + object TV3TYpe: TcxGridDBColumn + DataBinding.FieldName = 'TYPE' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 60 + IsCaptionAssigned = True + end + object TV3DESNO: TcxGridDBColumn + Caption = 'DES NO' + DataBinding.FieldName = 'HX' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 60 + end + object TV31: TcxGridDBColumn + Caption = '1' + DataBinding.FieldName = 'ROW1' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV32: TcxGridDBColumn + Caption = '2' + DataBinding.FieldName = 'ROW2' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV33: TcxGridDBColumn + Caption = '3' + DataBinding.FieldName = 'ROW3' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV34: TcxGridDBColumn + Caption = '4' + DataBinding.FieldName = 'ROW4' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV35: TcxGridDBColumn + Caption = '5' + DataBinding.FieldName = 'ROW5' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV36: TcxGridDBColumn + Caption = '6' + DataBinding.FieldName = 'ROW6' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV37: TcxGridDBColumn + Caption = '7' + DataBinding.FieldName = 'ROW7' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV38: TcxGridDBColumn + Caption = '8' + DataBinding.FieldName = 'ROW8' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV39: TcxGridDBColumn + Caption = '9' + DataBinding.FieldName = 'ROW9' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV310: TcxGridDBColumn + Caption = '10' + DataBinding.FieldName = 'ROW10' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object TV3TTL: TcxGridDBColumn + Caption = 'TTL' + DataBinding.FieldName = 'ROWSUM' + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGrid3Level1: TcxGridLevel + GridView = TV3 + end + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 356 + Top = 181 + end + object ADOQuerymain: TADOQuery + Connection = Packaged_DataLink.ADOLink + Parameters = <> + SQL.Strings = ( + 'SELECT * FROM JD_Pack A' + '' + '' + '' + '' + '') + Left = 412 + Top = 164 + end + object ADOQuerysub: TADOQuery + Connection = Packaged_DataLink.ADOLink + Parameters = <> + Left = 684 + Top = 188 + end + object DataSource2: TDataSource + DataSet = ADOQuerysub + Left = 720 + Top = 248 + end + object ADOQueryPrint: TADOQuery + Connection = Packaged_DataLink.ADOLink + Parameters = <> + Left = 292 + Top = 408 + end + object DataSource3: TDataSource + DataSet = ADOQueryPrint + Left = 324 + Top = 408 + end + object ADOQueryCMD: TADOQuery + Connection = Packaged_DataLink.ADOLink + Parameters = <> + Left = 644 + Top = 45 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 468 + Top = 216 + end +end diff --git a/成品仓库/U_ProductOrderNewList.dfm b/成品仓库/U_ProductOrderNewList.dfm new file mode 100644 index 0000000..5e47f12 --- /dev/null +++ b/成品仓库/U_ProductOrderNewList.dfm @@ -0,0 +1,673 @@ +object frmProductOrderNewList: TfrmProductOrderNewList + Left = 93 + Top = 81 + Width = 1124 + Height = 633 + Caption = #29983#20135#25351#31034#21333 + 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 = 1108 + AutoSize = True + 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 = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #30830#23450 + ImageIndex = 106 + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1108 + Height = 41 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 19 + Top = 47 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 35 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 63 + Top = 83 + Width = 40 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 314 + Top = 99 + Width = 26 + Height = 12 + Caption = #26579#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 285 + Top = 76 + Width = 53 + Height = 12 + Caption = #19994' '#21153' '#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 588 + Top = 103 + Width = 54 + Height = 12 + Caption = #25104' '#20998 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 585 + Top = 87 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 425 + Top = 15 + Width = 52 + Height = 12 + Caption = #20013#25991#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 179 + Top = 99 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 729 + Top = 103 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 437 + Top = 99 + Width = 52 + Height = 12 + Caption = #20844#21496#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 861 + Top = 115 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 861 + Top = 91 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label14: TLabel + Left = 160 + Top = 48 + Width = 6 + Height = 12 + Caption = '-' + end + object Label15: TLabel + Left = 231 + Top = 15 + Width = 26 + Height = 12 + Caption = #21697#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 47 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 172 + Top = 47 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 80 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object CustomerNoName: TEdit + Tag = 2 + Left = 104 + Top = 79 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = OrderNoChange + end + object JGFactoryName: TEdit + Tag = 2 + Left = 343 + Top = 95 + Width = 76 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + end + object OrdPerson1: TEdit + Tag = 2 + Left = 339 + Top = 71 + Width = 100 + Height = 20 + TabOrder = 5 + OnChange = OrderNoChange + end + object MPRTCF: TEdit + Tag = 2 + Left = 641 + Top = 99 + Width = 76 + Height = 20 + TabOrder = 6 + OnChange = OrderNoChange + end + object PRTColor: TEdit + Tag = 2 + Left = 614 + Top = 83 + Width = 100 + Height = 20 + TabOrder = 7 + OnChange = OrderNoChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 479 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 8 + OnChange = OrderNoChange + end + object ConNo: TEdit + Tag = 2 + Left = 220 + Top = 95 + Width = 77 + Height = 20 + TabOrder = 9 + OnChange = OrderNoChange + end + object MPRTSpec: TEdit + Tag = 2 + Left = 758 + Top = 99 + Width = 76 + Height = 20 + TabOrder = 10 + OnChange = OrderNoChange + end + object OrdDefStr1: TEdit + Tag = 2 + Left = 491 + Top = 95 + Width = 76 + Height = 20 + TabOrder = 11 + OnChange = OrderNoChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 890 + Top = 111 + Width = 56 + Height = 20 + TabOrder = 12 + OnChange = OrderNoChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 890 + Top = 87 + Width = 56 + Height = 20 + TabOrder = 13 + OnChange = OrderNoChange + end + object MPRTCode: TEdit + Tag = 2 + Left = 260 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 14 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 73 + Width = 1108 + Height = 424 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Styles.Inactive = CPCK_DataLink.SHuangSe + Styles.IncSearch = CPCK_DataLink.SHuangSe + Styles.Selection = CPCK_DataLink.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = CPCK_DataLink.Default + object v1SSel: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 68 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 72 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 68 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson1' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 73 + end + object v1Column1: TcxGridDBColumn + Caption = #21697#21495 + DataBinding.FieldName = 'MPrtCode' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 62 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 69 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1pbRollNum: TcxGridDBColumn + Caption = #26410#20837#24211#21305#25968 + DataBinding.FieldName = 'pbRollNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1pbQty: TcxGridDBColumn + Caption = #26410#20837#24211#25968#37327 + DataBinding.FieldName = 'pbQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1rkRollNum: TcxGridDBColumn + Caption = #20837#24211#21305#25968 + DataBinding.FieldName = 'rkRollNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1rkqty: TcxGridDBColumn + Caption = #20837#24211#25968#37327 + DataBinding.FieldName = 'rkqty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1ckRollNum: TcxGridDBColumn + Caption = #20986#24211#21305#25968 + DataBinding.FieldName = 'ckRollNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1ckQty: TcxGridDBColumn + Caption = #20986#24211#25968#37327 + DataBinding.FieldName = 'ckQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1kcRollNum: TcxGridDBColumn + Caption = #24211#23384#21305#25968 + DataBinding.FieldName = 'kcRollNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1kcQty: TcxGridDBColumn + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'kcQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = CPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = CPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 256 + Top = 176 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = CPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end +end diff --git a/成品仓库/U_ProductOrderNewList.pas b/成品仓库/U_ProductOrderNewList.pas new file mode 100644 index 0000000..893edaa --- /dev/null +++ b/成品仓库/U_ProductOrderNewList.pas @@ -0,0 +1,458 @@ +unit U_ProductOrderNewList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus; + +type + TfrmProductOrderNewList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNo: TEdit; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + Label4: TLabel; + CustomerNoName: TEdit; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + Label2: TLabel; + JGFactoryName: TEdit; + Label5: TLabel; + OrdPerson1: TEdit; + Label6: TLabel; + MPRTCF: TEdit; + Label7: TLabel; + PRTColor: TEdit; + Label8: TLabel; + MPRTCodeName: TEdit; + Label9: TLabel; + ConNo: TEdit; + Label10: TLabel; + MPRTSpec: TEdit; + Label11: TLabel; + OrdDefStr1: TEdit; + Label12: TLabel; + MPRTKZ: TEdit; + Label13: TLabel; + MPRTMF: TEdit; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1SSel: TcxGridDBColumn; + v1OrderNo: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1CustomerNoName: TcxGridDBColumn; + v1MPRTCodeName: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1pbRollNum: TcxGridDBColumn; + v1pbQty: TcxGridDBColumn; + v1rkRollNum: TcxGridDBColumn; + v1rkqty: TcxGridDBColumn; + v1ckRollNum: TcxGridDBColumn; + v1ckQty: TcxGridDBColumn; + v1kcRollNum: TcxGridDBColumn; + v1kcQty: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + Label14: TLabel; + MPRTCode: TEdit; + Label15: TLabel; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmProductOrderNewList: TfrmProductOrderNewList; + +implementation +uses + U_DataLink,U_Fun10; + + +{$R *.dfm} + +procedure TfrmProductOrderNewList.FormDestroy(Sender: TObject); +begin + frmProductOrderNewList:=nil; +end; + +procedure TfrmProductOrderNewList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderNewList.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderNewList.TBCloseClick(Sender: TObject); +begin + Close; + if FCloth<>1 then + // WriteCxGrid('ָʾб10',Tv1,'ָʾ') + else + // WriteCxGrid('ָʾбѡ',Tv1,'ָʾ'); +end; + +procedure TfrmProductOrderNewList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + Filtered:=False; + sql.add('exec P_View_Order_CP :begdate,:enddate,:WSql') ; + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + Parameters.ParamByName('WSql').Value:=''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +// TBFind.Click; +end; +procedure TfrmProductOrderNewList.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderNewList.InitForm(); +begin + if SGetServerDate(ADOQueryTemp)>StrToDate('2014-07-11') then + begin + ToolBar1.Visible:=False; + Application.MessageBox('ҪϵӦ̣','ʾ',0); + Exit; + end; + if FCloth<>1 then + // ReadCxGrid('ָʾб10',Tv1,'ָʾ') + else + // ReadCxGrid('ָʾбѡ',Tv1,'ָʾ'); + + if FCloth=1 then + begin + // v1Column4.Visible:=True; + + end else + begin + // v1Column4.Visible:=False; + end; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + //InitGrid(); +end; + +procedure TfrmProductOrderNewList.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmProductOrderNewList.DelData():Boolean; +begin +end; + +procedure TfrmProductOrderNewList.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + InitGridFH(); + end else + begin + InitGrid(); + end; +end; + +procedure TfrmProductOrderNewList.OrderNoChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderNewList.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderNewList.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmProductOrderNewList.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderNewList.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderNewList.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderNewList.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderNewList.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewList.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewList.ToolButton3Click(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + ModalResult:=1; +end; + +procedure TfrmProductOrderNewList.OrderNoKeyPress(Sender: TObject; + var Key: Char); +var + fsj:string; +begin +{ if Key=#13 then + begin + if Length(Trim(OrderNoM.Text))<4 then Exit; + fsj:='%'+Trim(OrderNoM.Text)+'%'; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql') ; + if Trim(DParameters1)<>'Ȩ' then + begin + Parameters.ParamByName('WSql').Value:=' and A.Filler='''+Trim(DName)+''''; + end else + begin + Parameters.ParamByName('WSql').Value:=' and A.OrderNo like '''+fsj+''''; + end; + Parameters.ParamByName('begdate').Value:='1900-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; } +end; + +procedure TfrmProductOrderNewList.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + ToolButton3.Click; +end; + +end. diff --git a/成品仓库/U_ProductOrderNewListSEl.dfm b/成品仓库/U_ProductOrderNewListSEl.dfm new file mode 100644 index 0000000..219f487 --- /dev/null +++ b/成品仓库/U_ProductOrderNewListSEl.dfm @@ -0,0 +1,633 @@ +object frmProductOrderNewListSEl: TfrmProductOrderNewListSEl + Left = 364 + Top = 135 + Width = 1226 + Height = 596 + Caption = #29983#20135#25351#31034#21333 + 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 = 1210 + AutoSize = True + 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 = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #36873#25321 + ImageIndex = 106 + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1210 + Height = 65 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 239 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 239 + Top = 39 + Width = 40 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 314 + Top = 99 + Width = 26 + Height = 12 + Caption = #26579#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 453 + Top = 16 + Width = 53 + Height = 12 + Caption = #19994' '#21153' '#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 588 + Top = 103 + Width = 54 + Height = 12 + Caption = #25104' '#20998 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 693 + Top = 15 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 453 + Top = 39 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 179 + Top = 99 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 729 + Top = 103 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 437 + Top = 99 + Width = 52 + Height = 12 + Caption = #20844#21496#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 861 + Top = 115 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 861 + Top = 91 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 280 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object CustomerNoName: TEdit + Tag = 2 + Left = 280 + Top = 35 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = OrderNoChange + end + object JGFactoryName: TEdit + Tag = 2 + Left = 343 + Top = 95 + Width = 76 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + end + object OrdPerson1: TEdit + Tag = 2 + Left = 507 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 5 + OnChange = OrderNoChange + end + object MPRTCF: TEdit + Tag = 2 + Left = 641 + Top = 99 + Width = 76 + Height = 20 + TabOrder = 6 + OnChange = OrderNoChange + end + object PRTColor: TEdit + Tag = 2 + Left = 722 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 7 + OnChange = OrderNoChange + end + object PRTCodeName: TEdit + Tag = 2 + Left = 507 + Top = 35 + Width = 100 + Height = 20 + TabOrder = 8 + OnChange = OrderNoChange + end + object ConNo: TEdit + Tag = 2 + Left = 220 + Top = 95 + Width = 77 + Height = 20 + TabOrder = 9 + OnChange = OrderNoChange + end + object MPRTSpec: TEdit + Tag = 2 + Left = 758 + Top = 99 + Width = 76 + Height = 20 + TabOrder = 10 + OnChange = OrderNoChange + end + object OrdDefStr1: TEdit + Tag = 2 + Left = 491 + Top = 95 + Width = 76 + Height = 20 + TabOrder = 11 + OnChange = OrderNoChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 890 + Top = 111 + Width = 56 + Height = 20 + TabOrder = 12 + OnChange = OrderNoChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 890 + Top = 87 + Width = 56 + Height = 20 + TabOrder = 13 + OnChange = OrderNoChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 97 + Width = 1210 + Height = 424 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Styles.Inactive = CPCK_DataLink.SHuangSe + Styles.IncSearch = CPCK_DataLink.SHuangSe + Styles.Selection = CPCK_DataLink.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = CPCK_DataLink.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 100 + end + object v1Column6: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'conNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 105 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 73 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 70 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 70 + end + object v1Column2: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'prtcode' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'PRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 110 + end + object v1Column7: TcxGridDBColumn + Caption = #35268#26684#25104#20998 + DataBinding.FieldName = 'Prtspec' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 89 + end + object v1Column1: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column5: TcxGridDBColumn + Caption = #23610#23544 + DataBinding.FieldName = 'SOrddefstr5' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 80 + end + object v1Column3: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column8: TcxGridDBColumn + Caption = #22791#27880#21450#35201#27714 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = CPCK_DataLink.Default + Width = 80 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = CPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = CPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 256 + Top = 176 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = CPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end +end diff --git a/成品仓库/U_ProductOrderNewListSEl.pas b/成品仓库/U_ProductOrderNewListSEl.pas new file mode 100644 index 0000000..a3e4fdf --- /dev/null +++ b/成品仓库/U_ProductOrderNewListSEl.pas @@ -0,0 +1,466 @@ +unit U_ProductOrderNewListSEl; + +interface +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus, 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 + TfrmProductOrderNewListSEl = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNo: TEdit; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + Label4: TLabel; + CustomerNoName: TEdit; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + Label2: TLabel; + JGFactoryName: TEdit; + Label5: TLabel; + OrdPerson1: TEdit; + Label6: TLabel; + MPRTCF: TEdit; + Label7: TLabel; + PRTColor: TEdit; + Label8: TLabel; + PRTCodeName: TEdit; + Label9: TLabel; + ConNo: TEdit; + Label10: TLabel; + MPRTSpec: TEdit; + Label11: TLabel; + OrdDefStr1: TEdit; + Label12: TLabel; + MPRTKZ: TEdit; + Label13: TLabel; + MPRTMF: TEdit; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column4: TcxGridDBColumn; + v1OrderNo: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1CustomerNoName: TcxGridDBColumn; + v1MPRTCodeName: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1Column3: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmProductOrderNewListSEl: TfrmProductOrderNewListSEl; + +implementation +uses + U_DataLink,U_Fun10; + + +{$R *.dfm} + +procedure TfrmProductOrderNewListSEl.FormDestroy(Sender: TObject); +begin + frmProductOrderNewListSEl:=nil; +end; + +procedure TfrmProductOrderNewListSEl.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderNewListSEl.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderNewListSEl.TBCloseClick(Sender: TObject); +begin + Close; + if FCloth<>1 then + WriteCxGrid('ָʾб10',Tv1,'ָʾ') + else + WriteCxGrid('ָʾбѡ',Tv1,'ָʾ'); +end; + +procedure TfrmProductOrderNewListSEl.InitGrid(); +var + strwhere:string; +begin + strwhere:=''; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select B.orderno,A.*,B.* '); + sql.Add('from JYorder_sub A'); + sql.Add('inner join JYorder_main B on B.mainID=A.MainID'); + sql.Add('where B.FillTime>='''+formatdateTime('yyyy-MM-dd',begdate.DateTime)+''''); + sql.Add('and B.FillTime<'''+formatdateTime('yyyy-MM-dd',enddate.DateTime+1)+''''); +// ShowMessage(SQL.text); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderNewListSEl.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select A.*,B.* '); + sql.Add('from JYorder_sub A'); + sql.Add('inner join JYorder_main B on B.mainID=A.MainID'); + sql.Add('where B.FillTime>='''+formatdateTime('yyyy-MM-dd',begdate.DateTime)+''''); + sql.Add('and B.FillTime<'''+formatdateTime('yyyy-MM-dd',enddate.DateTime+1)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderNewListSEl.InitForm(); +begin + if FCloth<>1 then + ReadCxGrid('ָʾб10',Tv1,'ָʾ') + else + ReadCxGrid('ָʾбѡ',Tv1,'ָʾ'); + + if FCloth=1 then + begin + v1Column4.Visible:=True; + + end else + begin + v1Column4.Visible:=False; + end; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + //InitGrid(); +end; + +procedure TfrmProductOrderNewListSEl.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmProductOrderNewListSEl.DelData():Boolean; +begin +end; + +procedure TfrmProductOrderNewListSEl.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + InitGridFH(); + end else + begin + InitGrid(); + end; +end; + +procedure TfrmProductOrderNewListSEl.OrderNoChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderNewListSEl.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderNewListSEl.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmProductOrderNewListSEl.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderNewListSEl.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderNewListSEl.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderNewListSEl.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderNewListSEl.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewListSEl.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewListSEl.ToolButton3Click(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + ModalResult:=1; +end; + +procedure TfrmProductOrderNewListSEl.OrderNoKeyPress(Sender: TObject; + var Key: Char); +var + fsj:string; +begin +{ if Key=#13 then + begin + if Length(Trim(OrderNoM.Text))<4 then Exit; + fsj:='%'+Trim(OrderNoM.Text)+'%'; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql') ; + if Trim(DParameters1)<>'Ȩ' then + begin + Parameters.ParamByName('WSql').Value:=' and A.Filler='''+Trim(DName)+''''; + end else + begin + Parameters.ParamByName('WSql').Value:=' and A.OrderNo like '''+fsj+''''; + end; + Parameters.ParamByName('begdate').Value:='1900-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; } +end; + +procedure TfrmProductOrderNewListSEl.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + ToolButton3.Click; +end; + +end. diff --git a/成品仓库/U_ZdyAttachCP.dfm b/成品仓库/U_ZdyAttachCP.dfm new file mode 100644 index 0000000..03fd222 --- /dev/null +++ b/成品仓库/U_ZdyAttachCP.dfm @@ -0,0 +1,380 @@ +object frmZdyAttachCP: TfrmZdyAttachCP + Left = 143 + Top = 163 + Width = 1075 + Height = 569 + Caption = #20135#21697#36164#26009#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1059 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 113 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = CPCK_DataLink.ThreeImgList + Flat = True + Images = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + OnClick = TBDelClick + end + object ToolButton5: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #25552#21462'Excel'#25968#25454 + ImageIndex = 106 + Visible = False + OnClick = ToolButton5Click + end + object ToolButton1: TToolButton + Left = 432 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 495 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1059 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 191 + Top = 13 + Width = 48 + Height = 12 + Caption = #20135#21697#21517#31216 + end + object Label1: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #20135#21697#32534#21495 + end + object Label2: TLabel + Left = 373 + Top = 13 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object ZdyName: TEdit + Tag = 2 + Left = 241 + Top = 9 + Width = 90 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 71 + Top = 9 + Width = 90 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object DEFstr5: TComboBox + Tag = 1 + Left = 398 + Top = 8 + Width = 90 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 2 + OnChange = ZdyNameChange + Items.Strings = ( + #33258#24049 + #23458#25143 + '' + '' + '' + '') + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1059 + Height = 460 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = CPCK_DataLink.SHuangSe + Styles.IncSearch = CPCK_DataLink.SHuangSe + Styles.Selection = CPCK_DataLink.SHuangSe + Styles.Header = CPCK_DataLink.handBlack + object v2Column2: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 89 + end + object v2Column6: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 124 + end + object v2Column11: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column3: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column4: TcxGridDBColumn + Caption = #25104#20998 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column13: TcxGridDBColumn + Caption = #23494#24230 + DataBinding.FieldName = 'defNote2' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column9: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'DEFstr7' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column7: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'DEFstr8' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 150 + end + object v2Column14: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 60 + end + object v2Column15: TcxGridDBColumn + Caption = #25805#20316#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 80 + end + object Tv2Column1: TcxGridDBColumn + Caption = #23610#30721#32452 + DataBinding.FieldName = 'CYCM' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv2Column2: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'CYys' + HeaderAlignmentHorz = taCenter + Width = 70 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = CPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = CPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end + object OpenDialog1: TOpenDialog + Left = 936 + Top = 41 + end +end diff --git a/成品仓库/U_ZdyAttachCP.pas b/成品仓库/U_ZdyAttachCP.pas new file mode 100644 index 0000000..58852bb --- /dev/null +++ b/成品仓库/U_ZdyAttachCP.pas @@ -0,0 +1,400 @@ +unit U_ZdyAttachCP; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, ComObj, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, + cxNavigator; + +type + + FdDy=record + inc: integer; //ͻ׽־ + FDdys:string[32]; //ͻ׽ + FdDysName:string[32]; //ͻ׽ + end; + TfrmZdyAttachCP = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + Label1: TLabel; + ZdyCode: TEdit; + ToolButton4: TToolButton; + Label2: TLabel; + DEFstr5: TComboBox; + OpenDialog1: TOpenDialog; + ToolButton5: TToolButton; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column2: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v2Column11: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column13: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column14: TcxGridDBColumn; + v2Column15: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Tv2Column1: TcxGridDBColumn; + Tv2Column2: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + { Private declarations } + procedure InitGrid(); + + public + fkhType:string; + dFdDy: array[0..20] of FdDy; //ͻ + end; + +var + frmZdyAttachCP: TfrmZdyAttachCP; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + + + +procedure TfrmZdyAttachCP.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; +// sql.Add(' select * from KH_Zdy_Attachment where Type=''CP'' '); + sql.Add(' select * from KH_Zdy_Attachment A left JOIN KH_YS B on A.atid=B.atid where A.Type=''CP'' '); + // sql.Add(' and isnull(khType,'''')='+quotedstr(trim(fkhType))); + sql.Add(' order by zdyCode '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmZdyAttachCP.FormDestroy(Sender: TObject); +begin + frmZdyAttachCP:=nil; +end; + +procedure TfrmZdyAttachCP.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttachCP.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ʒ',Tv2,'ͻԶ'); + Close; +end; +procedure TfrmZdyAttachCP.TBDelClick(Sender: TObject); +begin + + if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + sql.Add('delete KH_Zdy where ZdyNo='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmZdyAttachCP.FormShow(Sender: TObject); +begin + ReadCxGrid('Ʒ',Tv2,'ͻԶ'); + InitGrid(); +end; + +procedure TfrmZdyAttachCP.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachCP.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmZdyAttachCP.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachCP.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid2); +// SelExportData(Tv2,ADOQueryMain,'Ʒб'); +end; + +procedure TfrmZdyAttachCP.ToolButton4Click(Sender: TObject); +begin +{ try + frmZdyAttInputCP:=TfrmZdyAttInputCP.Create(Application); + with frmZdyAttInputCP do + begin + FCYID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + fkhType:=self.fkhType; + if ShowModal=1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP.Free; + end; } +end; + +procedure TfrmZdyAttachCP.ToolButton3Click(Sender: TObject); +begin +{ try + frmZdyAttInputCP:=TfrmZdyAttInputCP.Create(Application); + with frmZdyAttInputCP do + begin + FCYID:=''; + fkhType:=self.fkhType; + if ShowModal=1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP.Free; + end; } +end; + +procedure TfrmZdyAttachCP.ToolButton5Click(Sender: TObject); +var + excelApp,WorkBook:Variant; + i,j,k,ExcelRowCount:integer; + maxId:string; +begin + + try + ExcelApp := CreateOleObject('Excel.Application'); + openDialog1.Filter:='*.CSV;*.xls'; + if opendialog1.Execute then + begin + WorkBook :=ExcelApp.WorkBooks.Open(OpenDialog1.FileName); + end + else + exit; + + ExcelApp.Visible := false; + ExcelRowCount := WorkBook.WorkSheets[1].UsedRange.Rows.Count; + except + application.MessageBox('EXCEL','Ϣ',MB_ICONERROR); + exit; + end; + + try + k:=0; + for i:=1 to 20 do + begin + if trim(excelapp.Cells[1,i].value)='' then break; + if trim(excelapp.Cells[1,i].value)='Ʒ' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='ZdyCode'; + dFdDy[k].FdDysName:='Ʒ'; + end; + + if trim(excelapp.Cells[1,i].value)='Ʒ' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='ZdyName'; + dFdDy[k].FdDysName:='Ʒ'; + end; + + if trim(excelapp.Cells[1,i].value)='' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='defNote1'; + dFdDy[k].FdDysName:=''; + end; + + if trim(excelapp.Cells[1,i].value)='ɫ' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='DEFstr3'; + dFdDy[k].FdDysName:=''; + end; + + if trim(excelapp.Cells[1,i].value)='' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='defNote2'; + dFdDy[k].FdDysName:=''; + end; + if trim(excelapp.Cells[1,i].value)='' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='DEFstr5'; + dFdDy[k].FdDysName:=''; + end; + if trim(excelapp.Cells[1,i].value)='' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='DEFstr1'; + dFdDy[k].FdDysName:=''; + end; + if trim(excelapp.Cells[1,i].value)='ɷ' then + begin + dFdDy[k].inc:=i; + dFdDy[k].FDdys:='DEFstr2'; + dFdDy[k].FdDysName:='ɷ'; + end; + k:=k+1; + end; + except + end; + + ADOQueryCmd.Connection.BeginTrans; + try + for i := 2 to excelrowcount do + begin + if GetLSNo(ADOQueryCmd,maxId,'AT','KH_Zdy_Attachment',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment where 1=2'); + open; + end; + ADOQueryCmd.Append; + for j:=0 to k-1 do + begin + ADOQueryCmd.fieldbyname(dFdDy[j].FDdys).Value:=excelapp.Cells[i,dFdDy[j].inc].Value; + end; + ADOQueryCmd.FieldByName('ATID').Value:=Trim(maxId); + ADOQueryCmd.FieldByName('Type').Value:='CP'; + ADOQueryCmd.FieldByName('Filler').Value:=Trim(DName); + ADOQueryCmd.Post; + + + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment where ATID='''+trim(maxId)+''' '); + open; + end; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_Zdy where ZdyNo='''+Trim(maxId)+''''); + Open; + end; + with ADOQueryCmd do + begin + if ADOQueryCmd.IsEmpty then + begin + Append; + end else + begin + Edit; + end; + FieldByName('ZdyNo').Value:=Trim(maxId); + FieldByName('ZdyName').Value:=Trim(ADOQueryTemp.fieldbyname('ZdyName').AsString); + FieldByName('Type').Value:='CP'; + FieldByName('MainType').Value:=Trim(ADOQueryTemp.fieldbyname('DEFstr5').AsString); + Post; + end; + end; + WorkBook.Close; + ExcelApp.Quit; + ExcelApp := Unassigned; + WorkBook := Unassigned; + ADOQueryCmd.Connection.CommitTrans; + InitGrid(); + except + WorkBook.Close; + ExcelApp.Quit; + ExcelApp := Unassigned; + WorkBook := Unassigned; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; + +procedure TfrmZdyAttachCP.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + IF cds_Hz.IsEmpty then exit; + ModalResult:=1; +end; + +end. + + diff --git a/成品仓库/U_ZdyAttachGYS.dfm b/成品仓库/U_ZdyAttachGYS.dfm new file mode 100644 index 0000000..89736e3 --- /dev/null +++ b/成品仓库/U_ZdyAttachGYS.dfm @@ -0,0 +1,331 @@ +object frmZdyAttachGYS: TfrmZdyAttachGYS + Left = 192 + Top = 103 + Width = 1038 + Height = 618 + Caption = #20379#24212#21830#36164#26009#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1022 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = CPCK_DataLink.ThreeImgList + Flat = True + Images = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + Visible = False + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 374 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1022 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 203 + Top = 13 + Width = 60 + Height = 12 + Caption = #20379#24212#21830#21517#31216 + end + object Label1: TLabel + Left = 22 + Top = 13 + Width = 60 + Height = 12 + Caption = #20379#24212#21830#32534#21495 + end + object Label2: TLabel + Left = 395 + Top = 13 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object ZdyName: TEdit + Tag = 2 + Left = 267 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 83 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object DEFstr5: TComboBox + Tag = 1 + Left = 424 + Top = 8 + Width = 81 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 2 + OnChange = ZdyNameChange + Items.Strings = ( + #22383#24067 + #21152#24037#21378) + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1022 + Height = 510 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + OnDblClick = Tv2DblClick + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = CPCK_DataLink.SHuangSe + Styles.IncSearch = CPCK_DataLink.SHuangSe + Styles.Selection = CPCK_DataLink.SHuangSe + Styles.Header = CPCK_DataLink.handBlack + object v2Column6: TcxGridDBColumn + Caption = #20379#24212#21830#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 124 + end + object v2Column2: TcxGridDBColumn + Caption = #20379#24212#21830#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column8: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Width = 77 + end + object v2Column3: TcxGridDBColumn + Caption = #30005#35805 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column4: TcxGridDBColumn + Caption = #25163#26426 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v2Column5: TcxGridDBColumn + Caption = #20256#30495 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2Column7: TcxGridDBColumn + Caption = #20844#21496#22320#22336 + DataBinding.FieldName = 'DEFNote1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v2Column9: TcxGridDBColumn + Caption = #32852#31995#20154 + DataBinding.FieldName = 'DEFstr4' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 114 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = CPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = CPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end +end diff --git a/成品仓库/U_ZdyAttachGYS.pas b/成品仓库/U_ZdyAttachGYS.pas new file mode 100644 index 0000000..8b0c0a4 --- /dev/null +++ b/成品仓库/U_ZdyAttachGYS.pas @@ -0,0 +1,213 @@ +unit U_ZdyAttachGYS; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmZdyAttachGYS = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + ToolButton4: TToolButton; + v2Column8: TcxGridDBColumn; + Label2: TLabel; + DEFstr5: TComboBox; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure Tv2DblClick(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + + public + + end; + +var + frmZdyAttachGYS: TfrmZdyAttachGYS; + +implementation +uses + U_DataLink,U_Fun10,U_ZDYHelp; + +{$R *.dfm} + + + +procedure TfrmZdyAttachGYS.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where Type=''GYS'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmZdyAttachGYS.FormDestroy(Sender: TObject); +begin + frmZdyAttachGYS:=nil; +end; + +procedure TfrmZdyAttachGYS.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttachGYS.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ӧ',Tv2); + Close; +end; +procedure TfrmZdyAttachGYS.TBDelClick(Sender: TObject); +begin +{ if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + sql.Add('delete KH_Zdy where ZdyNo='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete;} +end; + +procedure TfrmZdyAttachGYS.FormShow(Sender: TObject); +begin + ReadCxGrid('Ӧ',Tv2); + InitGrid(); +end; + +procedure TfrmZdyAttachGYS.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachGYS.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmZdyAttachGYS.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachGYS.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; +// SelExportData(Tv2,ADOQueryMain,'ͻб'); +end; + +procedure TfrmZdyAttachGYS.ToolButton4Click(Sender: TObject); +begin +{ try + frmZdyAttInputGYS:=TfrmZdyAttInputGYS.Create(Application); + with frmZdyAttInputGYS do + begin + FCYID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmZdyAttInputGYS.Free; + end; } +end; + +procedure TfrmZdyAttachGYS.ToolButton3Click(Sender: TObject); +begin +{ try + frmZdyAttInputGYS:=TfrmZdyAttInputGYS.Create(Application); + with frmZdyAttInputGYS do + begin + FCYID:=''; + if ShowModal=1 then + begin + + end; + end; + finally + frmZdyAttInputGYS.Free; + end; } +end; + +procedure TfrmZdyAttachGYS.Tv2DblClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then exit; + ModalResult:=1; +end; + +end. + + diff --git a/成品仓库/U_ZdyAttachment.dfm b/成品仓库/U_ZdyAttachment.dfm new file mode 100644 index 0000000..9d0aa5f --- /dev/null +++ b/成品仓库/U_ZdyAttachment.dfm @@ -0,0 +1,356 @@ +object frmZdyAttachment: TfrmZdyAttachment + Left = 113 + Top = 139 + Width = 1038 + Height = 618 + Caption = #23458#25143#20449#24687#21015#34920 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1022 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = CPCK_DataLink.ThreeImgList + Flat = True + Images = CPCK_DataLink.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + Visible = False + end + object TBClose: TToolButton + Left = 374 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1022 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 190 + Top = 13 + Width = 48 + Height = 12 + Caption = #23458#25143#21517#31216 + end + object Label1: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #23458#25143#32534#21495 + end + object Label2: TLabel + Left = 350 + Top = 13 + Width = 36 + Height = 12 + Caption = #19994#21153#21592 + end + object Label4: TLabel + Left = 506 + Top = 13 + Width = 48 + Height = 12 + Caption = #32479#35745#21333#20301 + end + object ZdyName: TEdit + Tag = 2 + Left = 238 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 70 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object DEFstr5: TEdit + Tag = 2 + Left = 388 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 2 + OnChange = ZdyNameChange + end + object ZDYNameTJ: TEdit + Tag = 2 + Left = 556 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 3 + OnChange = ZdyNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1022 + Height = 510 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DS_HZ + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoGroupsAlwaysExpanded, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = CPCK_DataLink.SHuangSe + Styles.IncSearch = CPCK_DataLink.SHuangSe + Styles.Selection = CPCK_DataLink.SHuangSe + Styles.Header = CPCK_DataLink.handBlack + object v2Column2: TcxGridDBColumn + Caption = #23458#25143#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 86 + end + object v2Column6: TcxGridDBColumn + Caption = #23458#25143#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 127 + end + object v2Column10: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Width = 56 + end + object v2Column3: TcxGridDBColumn + Caption = #30005#35805 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 71 + end + object v2Column4: TcxGridDBColumn + Caption = #25163#26426 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v2Column5: TcxGridDBColumn + Caption = #20256#30495 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2Column7: TcxGridDBColumn + Caption = #20844#21496#22320#22336 + DataBinding.FieldName = 'DEFNote1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 67 + end + object v2Column8: TcxGridDBColumn + Caption = #21457#36135#22320#22336 + DataBinding.FieldName = 'DEFNote2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column9: TcxGridDBColumn + Caption = #32852#31995#20154 + DataBinding.FieldName = 'DEFstr4' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 165 + end + object v2Column11: TcxGridDBColumn + Caption = #32479#35745#21333#20301 + DataBinding.FieldName = 'ZDYNameTJ' + Visible = False + GroupIndex = 0 + HeaderAlignmentHorz = taCenter + Width = 120 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = CPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = CPCK_DataLink.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = CPCK_DataLink.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end +end diff --git a/成品仓库/U_ZdyAttachment.pas b/成品仓库/U_ZdyAttachment.pas new file mode 100644 index 0000000..f347330 --- /dev/null +++ b/成品仓库/U_ZdyAttachment.pas @@ -0,0 +1,196 @@ +unit U_ZdyAttachment; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmZdyAttachment = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + v2Column10: TcxGridDBColumn; + ToolButton4: TToolButton; + Label2: TLabel; + DEFstr5: TEdit; + v2Column11: TcxGridDBColumn; + ZDYNameTJ: TEdit; + Label4: TLabel; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + { Private declarations } + procedure InitGrid(); + + public + + end; + +var + frmZdyAttachment: TfrmZdyAttachment; + +implementation +uses + U_DataLink,U_Fun10,U_ZDYHelp; + +{$R *.dfm} + + + +procedure TfrmZdyAttachment.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where Type=''KHName'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmZdyAttachment.FormDestroy(Sender: TObject); +begin + frmZdyAttachment:=nil; +end; + +procedure TfrmZdyAttachment.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttachment.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ͻϢб',Tv2,'ͻԶ'); + Close; +end; +procedure TfrmZdyAttachment.TBDelClick(Sender: TObject); +begin +{ if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + sql.Add('delete KH_Zdy where ZdyNo='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; } +end; + +procedure TfrmZdyAttachment.FormShow(Sender: TObject); +begin + ReadCxGrid('ͻϢб',Tv2,'ͻԶ'); + InitGrid(); +end; + +procedure TfrmZdyAttachment.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachment.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmZdyAttachment.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachment.ToolButton4Click(Sender: TObject); +begin +{ try + frmZdyAttInput:=TfrmZdyAttInput.Create(Application); + with frmZdyAttInput do + begin + FCYID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmZdyAttInput.Free; + end; } +end; + +procedure TfrmZdyAttachment.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if CDS_HZ.IsEmpty then exit; + ModalResult:=1; +end; + +end. + + diff --git a/成品仓库/U_ZdyCMZ_Sel.dfm b/成品仓库/U_ZdyCMZ_Sel.dfm new file mode 100644 index 0000000..a5e7483 --- /dev/null +++ b/成品仓库/U_ZdyCMZ_Sel.dfm @@ -0,0 +1,302 @@ +object frmZdyCMZ_Sel: TfrmZdyCMZ_Sel + Left = 461 + Top = 361 + Width = 813 + Height = 662 + Caption = #23610#30721#32452 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Panel2: TPanel + Left = 383 + Top = 31 + Width = 414 + Height = 592 + Align = alRight + Caption = 'Panel2' + TabOrder = 0 + object cxGrid1: TcxGrid + Left = 1 + Top = 1 + Width = 412 + Height = 590 + Align = alClient + TabOrder = 0 + object TV1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DSsub + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object TV1Column1: TcxGridDBColumn + OnGetDisplayText = TV1Column1GetDisplayText + HeaderAlignmentHorz = taCenter + MinWidth = 30 + Options.Editing = False + Options.Focusing = False + Options.GroupFooters = False + Options.Grouping = False + Options.HorzSizing = False + Width = 30 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #23610#30721'/'#35268#26684 + DataBinding.FieldName = 'SizeSpec' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 101 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 101 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #20851#32852#35268#26684 + DataBinding.FieldName = 'assSpec' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 77 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TV1 + end + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 383 + Height = 592 + Align = alClient + Caption = 'Panel1' + TabOrder = 1 + object cxGrid2: TcxGrid + Left = 1 + Top = 1 + Width = 381 + Height = 590 + Align = alClient + TabOrder = 0 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + OnFocusedRecordChanged = Tv2FocusedRecordChanged + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object v2Column2: TcxGridDBColumn + Caption = #32534#21495 + DataBinding.FieldName = 'Code' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 80 + end + object v2Column6: TcxGridDBColumn + Caption = #23610#30721'/'#35268#26684#32452#21517#31216 + DataBinding.FieldName = 'CodeName' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 124 + end + object v2Column14: TcxGridDBColumn + Caption = #25551#36848 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 147 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 797 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 2 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + Visible = False + OnClick = TBRafreshClick + end + object ToolButton1: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 41 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 357 + Top = 73 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 401 + Top = 145 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 125 + Top = 169 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 320 + Top = 148 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 160 + Top = 176 + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 356 + Top = 164 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 247 + Top = 171 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 204 + Top = 172 + end + object DSsub: TDataSource + DataSet = CDSsub + Left = 512 + Top = 272 + end + object CDSsub: TClientDataSet + Aggregates = <> + Params = <> + Left = 540 + Top = 268 + end + object ADOQuerysub: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 484 + Top = 276 + end +end diff --git a/成品仓库/U_ZdyCMZ_Sel.pas b/成品仓库/U_ZdyCMZ_Sel.pas new file mode 100644 index 0000000..d3642bd --- /dev/null +++ b/成品仓库/U_ZdyCMZ_Sel.pas @@ -0,0 +1,278 @@ +unit U_ZdyCMZ_Sel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls, + cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, + cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; + +type + TfrmZdyCMZ_Sel = class(TForm) + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + DSsub: TDataSource; + CDSsub: TClientDataSet; + ADOQuerysub: TADOQuery; + Panel2: TPanel; + cxGrid1: TcxGrid; + TV1: TcxGridDBTableView; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + Panel1: TPanel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column2: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v2Column14: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + TV1Column1: TcxGridDBColumn; + ToolButton1: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure TV1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); + procedure Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure v2Column6PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn2PropertiesEditValueChanged(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + procedure InitSub(); + public + fDEFstr5: string; + end; + +var + frmZdyCMZ_Sel: TfrmZdyCMZ_Sel; + +implementation + +uses + U_DataLink, U_Fun, U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmZdyCMZ_Sel.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + SQL.Clear; + sql.Add(' select mainid=cast(mainid as varchar(30)),* from CP_CMYS where Type='''' '); + Open; + end; + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmZdyCMZ_Sel.InitSub(); +begin + with ADOQuerysub do + begin + Close; + SQL.Clear; + sql.Add(' select subid=cast(subid as varchar(30)),* from CP_CMYS_Sub where Mainid=''' + cds_hz.fieldbyname('Mainid').AsString + ''' '); +// ShowMessage(sql.Text); + Open; + end; + SCreateCDS20(ADOQuerysub, CDSsub); + SInitCDSData20(ADOQuerysub, CDSsub); +end; + +procedure TfrmZdyCMZ_Sel.FormDestroy(Sender: TObject); +begin + frmZdyCMZ_Sel := nil; +end; + +procedure TfrmZdyCMZ_Sel.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmZdyCMZ_Sel.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption, Tv2, 'ͻԶ'); + Close; +end; + +procedure TfrmZdyCMZ_Sel.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption, Tv2, 'ͻԶ'); + + InitGrid(); +end; + +procedure TfrmZdyCMZ_Sel.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyCMZ_Sel.Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + if cds_hz.IsEmpty then + exit; + if CDSsub.IsEmpty then + exit; + self.ModalResult := 1; +end; + +procedure TfrmZdyCMZ_Sel.TV1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); +begin + AText := IntToStr(ARecord.Index + 1); +end; + +procedure TfrmZdyCMZ_Sel.Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + initsub(); +end; + +procedure TfrmZdyCMZ_Sel.ToolButton1Click(Sender: TObject); +begin + if cds_hz.IsEmpty then + exit; + self.ModalResult := 1; +end; + +procedure TfrmZdyCMZ_Sel.ToolButton3Click(Sender: TObject); +var + FMainid: string; +begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from CP_CMYS_Sub where 1<>1'); + Open; + + Append; + fieldbyname('Mainid').Value := CDS_HZ.fieldbyname('Mainid').AsString; + Post; + end; + + InitSub(); +end; + +procedure TfrmZdyCMZ_Sel.ToolButton2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CP_CMYS where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + sql.Add('delete CP_CMYS_Sub where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; + CDS_HZ.Delete; +end; + +procedure TfrmZdyCMZ_Sel.ToolButton4Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CP_CMYS_Sub where Subid=''' + Trim(CDSsub.fieldbyname('Subid').AsString) + ''''); + ExecSQL; + end; + CDSsub.Delete; +end; + +procedure TfrmZdyCMZ_Sel.v2Column6PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := ''; + end; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate CP_CMYS '); + sql.Add(' Set ' + FFieldName + '=' + Trim(mvalue)); + SQL.Add(' where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; +end; + +procedure TfrmZdyCMZ_Sel.cxGridDBColumn2PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := ''; + end; + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDSsub do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate CP_CMYS_sub '); + sql.Add(' Set ' + FFieldName + '=' + Trim(mvalue)); + SQL.Add(' where Subid=''' + Trim(CDSsub.fieldbyname('subid').AsString) + ''''); +// ShowMessage(sql.text); + ExecSQL; + end; +end; + +end. + diff --git a/成品仓库/U_ZdyYS_Sel.dfm b/成品仓库/U_ZdyYS_Sel.dfm new file mode 100644 index 0000000..8f74e23 --- /dev/null +++ b/成品仓库/U_ZdyYS_Sel.dfm @@ -0,0 +1,300 @@ +object frmZdyYS_Sel: TfrmZdyYS_Sel + Left = 891 + Top = 239 + Width = 813 + Height = 662 + Caption = #39068#33394 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 797 + Height = 592 + Align = alClient + Caption = 'Panel1' + TabOrder = 0 + object cxGrid2: TcxGrid + Left = 1 + Top = 40 + Width = 795 + Height = 551 + Align = alClient + TabOrder = 0 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + OnFocusedRecordChanged = Tv2FocusedRecordChanged + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_BaseInfo.SHuangSe + Styles.IncSearch = DataLink_BaseInfo.SHuangSe + Styles.Selection = DataLink_BaseInfo.SHuangSe + Styles.Header = DataLink_BaseInfo.handBlack + object Tv2Column1: TcxGridDBColumn + OnGetDisplayText = Tv2Column1GetDisplayText + MinWidth = 30 + Options.HorzSizing = False + Width = 30 + IsCaptionAssigned = True + end + object Tv2Column2: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + end + object v2Column2: TcxGridDBColumn + Caption = #39068#33394#20195#21495 + DataBinding.FieldName = 'Code' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 80 + end + object v2Column6: TcxGridDBColumn + Caption = #39068#33394#21517#31216 + DataBinding.FieldName = 'CodeName' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 200 + end + object Tv2Column3: TcxGridDBColumn + Caption = #39068#33394#21517#31216#33521#25991 + DataBinding.FieldName = 'CodeNameYW' + HeaderAlignmentHorz = taCenter + Width = 100 + end + object v2Column14: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 147 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object Panel2: TPanel + Left = 1 + Top = 1 + Width = 795 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 231 + Top = 13 + Width = 48 + Height = 12 + Caption = #39068#33394#21517#31216 + end + object Label1: TLabel + Left = 34 + Top = 13 + Width = 48 + Height = 12 + Caption = #39068#33394#20195#21495 + end + object Label2: TLabel + Left = 399 + Top = 13 + Width = 72 + Height = 12 + Caption = #39068#33394#33521#25991#21517#31216 + end + object CodeName: TEdit + Tag = 2 + Left = 281 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 0 + OnChange = CodeNameChange + end + object Code: TEdit + Tag = 2 + Left = 83 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 1 + OnChange = CodeChange + end + object Edit1: TEdit + Tag = 2 + Left = 625 + Top = 13 + Width = 100 + Height = 20 + TabOrder = 2 + Visible = False + end + object CodeNameYW: TEdit + Tag = 2 + Left = 475 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = CodeNameChange + end + end + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 797 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_BaseInfo.ThreeImgList + Flat = True + Images = DataLink_BaseInfo.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 1 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + Visible = False + OnClick = TBRafreshClick + end + object ToolButton1: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 41 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 357 + Top = 73 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 401 + Top = 145 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 125 + Top = 169 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 320 + Top = 148 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 160 + Top = 176 + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 356 + Top = 164 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 247 + Top = 171 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 204 + Top = 172 + end + object DSsub: TDataSource + DataSet = CDSsub + Left = 512 + Top = 272 + end + object CDSsub: TClientDataSet + Aggregates = <> + Params = <> + Left = 540 + Top = 268 + end + object ADOQuerysub: TADOQuery + Connection = DataLink_BaseInfo.ADOLink + Parameters = <> + Left = 484 + Top = 276 + end +end diff --git a/成品仓库/U_ZdyYS_Sel.pas b/成品仓库/U_ZdyYS_Sel.pas new file mode 100644 index 0000000..cc3a4ed --- /dev/null +++ b/成品仓库/U_ZdyYS_Sel.pas @@ -0,0 +1,324 @@ +unit U_ZdyYS_Sel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls, + cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, + cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, 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 + TfrmZdyYS_Sel = class(TForm) + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + DSsub: TDataSource; + CDSsub: TClientDataSet; + ADOQuerysub: TADOQuery; + Panel1: TPanel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column2: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v2Column14: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + Tv2Column1: TcxGridDBColumn; + ToolButton1: TToolButton; + Panel2: TPanel; + Label3: TLabel; + Label1: TLabel; + CodeName: TEdit; + Code: TEdit; + Tv2Column2: TcxGridDBColumn; + Edit1: TEdit; + Tv2Column3: TcxGridDBColumn; + Label2: TLabel; + CodeNameYW: TEdit; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure TV1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); + procedure Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure v2Column6PropertiesEditValueChanged(Sender: TObject); + procedure Tv2Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); + procedure CodeChange(Sender: TObject); + procedure CodeNameChange(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + procedure InitSub(); + public + fDEFstr5: string; + end; + +var + frmZdyYS_Sel: TfrmZdyYS_Sel; + +implementation + +uses + U_DataLink, U_Fun, U_ZDYHelp; //, U_ZdyAttInputGYS, U_ZdyAttachCP10_help + +{$R *.dfm} + +procedure TfrmZdyYS_Sel.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + SQL.Clear; + sql.Add(' select mainid=cast(mainid as varchar(30)),* from CP_CMYS where Type=''ɫ'' '); + Open; + end; + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmZdyYS_Sel.InitSub(); +begin + with ADOQuerysub do + begin + Close; + SQL.Clear; + sql.Add(' select subid=cast(subid as varchar(30)),* from CP_CMYS_Sub where Mainid=''' + cds_hz.fieldbyname('Mainid').AsString + ''' '); +// ShowMessage(sql.Text); + Open; + end; + SCreateCDS20(ADOQuerysub, CDSsub); + SInitCDSData20(ADOQuerysub, CDSsub); +end; + +procedure TfrmZdyYS_Sel.FormDestroy(Sender: TObject); +begin + frmZdyYS_Sel := nil; +end; + +procedure TfrmZdyYS_Sel.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmZdyYS_Sel.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption, Tv2, 'ͻԶ'); + Close; +end; + +procedure TfrmZdyYS_Sel.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption, Tv2, 'ͻԶ'); + + InitGrid(); +end; + +procedure TfrmZdyYS_Sel.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyYS_Sel.Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + if cds_hz.IsEmpty then + exit; + self.ModalResult := 1; +end; + +procedure TfrmZdyYS_Sel.TV1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); +begin + AText := IntToStr(ARecord.Index + 1); +end; + +procedure TfrmZdyYS_Sel.Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + initsub(); +end; + +procedure TfrmZdyYS_Sel.ToolButton1Click(Sender: TObject); +var + Maxno, x, y: string; +begin + if cds_hz.IsEmpty then + exit; + try + CDS_HZ.DisableControls; + ADOQueryCmd.Connection.BeginTrans; + with CDS_HZ do + begin + First; + while not Eof do + begin + if CDS_HZ.FieldByName('SSel').AsBoolean then + begin + x := CDS_HZ.FieldByName('CodeName').AsString; + if y = '' then + begin + y := x; + end + else + begin + y := y + ',' + x; + end; + + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + CDS_HZ.EnableControls; + except + ADOQueryCmd.Connection.RollbackTrans; + CDS_HZ.EnableControls; + end; + Edit1.Text := Trim(y); + self.ModalResult := 1; +end; + +procedure TfrmZdyYS_Sel.ToolButton3Click(Sender: TObject); +var + FMainid: string; +begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from CP_CMYS_Sub where 1<>1'); + Open; + + Append; + fieldbyname('Mainid').Value := CDS_HZ.fieldbyname('Mainid').AsString; + Post; + end; + + InitSub(); +end; + +procedure TfrmZdyYS_Sel.ToolButton2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾɫ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CP_CMYS where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; + CDS_HZ.Delete; +end; + +procedure TfrmZdyYS_Sel.ToolButton4Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CP_CMYS_Sub where Subid=''' + Trim(CDSsub.fieldbyname('Subid').AsString) + ''''); + ExecSQL; + end; + CDSsub.Delete; +end; + +procedure TfrmZdyYS_Sel.v2Column6PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := ''; + end; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate CP_CMYS '); + sql.Add(' Set ' + FFieldName + '=' + Trim(mvalue)); + SQL.Add(' where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; +end; + +procedure TfrmZdyYS_Sel.Tv2Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); +begin + AText := IntToStr(ARecord.Index + 1) +end; + +procedure TfrmZdyYS_Sel.CodeChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel2, 1, 2)); + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + end; +end; + +procedure TfrmZdyYS_Sel.CodeNameChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel2, 1, 2)); + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + end; +end; + +end. + diff --git a/成品仓库/U_testdll.dfm b/成品仓库/U_testdll.dfm new file mode 100644 index 0000000..6fdbe41 --- /dev/null +++ b/成品仓库/U_testdll.dfm @@ -0,0 +1,221 @@ +object Form1: TForm1 + Left = 97 + Top = 122 + Width = 791 + Height = 554 + Caption = 'Form1' + Color = clBtnFace + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + FormStyle = fsMDIForm + Menu = MainMenu1 + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnResize = FormResize + PixelsPerInch = 96 + TextHeight = 13 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 775 + Height = 25 + ButtonWidth = 57 + Caption = 'ToolBar1' + Flat = True + Images = ImageList1 + TabOrder = 0 + object Edit1: TEdit + Left = 0 + Top = 0 + Width = 81 + Height = 22 + TabOrder = 0 + Text = '1' + end + object ToolButton1: TToolButton + Left = 81 + Top = 0 + Caption = #20851#38381 + ImageIndex = 0 + OnClick = ToolButton1Click + end + object Label1: TLabel + Left = 138 + Top = 0 + Width = 79 + Height = 22 + Caption = ' DllName'#65306 + end + object DllName: TEdit + Left = 217 + Top = 0 + Width = 135 + Height = 22 + TabOrder = 1 + end + end + object MainMenu1: TMainMenu + Left = 232 + Top = 40 + object test1: TMenuItem + Caption = 'test' + OnClick = test1Click + end + end + object ImageList1: TImageList + Left = 320 + Top = 56 + Bitmap = { + 494C010101000400040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 + 0000000000003600000028000000400000001000000001002000000000000010 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000EFEFEF000000 + 0000EFEFEF00EFEFEF000000000000000000EFEFEF0000000000000000000000 + 0000EFEFEF00EFEFEF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000EFEFEF0000000000EFEFEF00EFEFEF0000000000EFEFEF00000000008080 + 00008080000000000000C0C0C000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EFEFEF00EFEFEF000000 + 0000EFEFEF00EFEFEF000000000000000000C0C0C00000000000000000008080 + 00008080000080800000EFEFEF00EFEFEF000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFEFEF0000000000000000000000000000000000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFEFEF0000000000808080008080800080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000008080000000000000808080008080800080808000000000008080 + 0000000000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000EFEFEF00EFEF + EF0000000000FFFF000080800000000000008080800080808000000000000000 + 0000000000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000FFFF0000FFFF0000808000000000000080808000000000008080 + 0000000000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000808000008080 + 000080800000FFFF0000FFFF0000FFFF00000000000080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000FFFF0000FFFF + 0000FFFF0000FFFF000000000000FFFF00000000000080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000FFFF0000FFFF0000FFFF00000000000080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000808000000000000080808000808080008080800080808000FFFF + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000808080008080800080808000808080000000 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000424D3E000000000000003E000000 + 2800000040000000100000000100010000000000800000000000000000000000 + 000000000000000000000000FFFFFF00FFFF000000000000D343000000000000 + F4810000000000009340000000000000F801000000000000F001000000000000 + F001000000000000C001000000000000C001000000000000C001000000000000 + C201000000000000C001000000000000F001000000000000F001000000000000 + FC03000000000000FFFF00000000000000000000000000000000000000000000 + 000000000000} + end + object ADOConnection1: TADOConnection + ConnectionString = + 'Provider=SQLOLEDB.1;Password=sa;Persist Security Info=True;User ' + + 'ID=sa;Initial Catalog=rzdata;Data Source=6GMFFMYKYMJDZW7' + LoginPrompt = False + Provider = 'SQLOLEDB.1' + Left = 408 + Top = 64 + end +end diff --git a/成品仓库/U_testdll.pas b/成品仓库/U_testdll.pas new file mode 100644 index 0000000..fe773fb --- /dev/null +++ b/成品仓库/U_testdll.pas @@ -0,0 +1,106 @@ +unit U_testdll; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ExtCtrls, StdCtrls, Menus, ToolWin, ComCtrls, ImgList, DB, ADODB; + +type + TForm1 = class(TForm) + MainMenu1: TMainMenu; + test1: TMenuItem; + ToolBar1: TToolBar; + Edit1: TEdit; + ToolButton1: TToolButton; + ImageList1: TImageList; + ADOConnection1: TADOConnection; + DllName: TEdit; + Label1: TLabel; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure test1Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure FormResize(Sender: TObject); + private + { Private declarations } + public + { Public declarations } + end; + +var + Form1: TForm1; + newh:hwnd; + +implementation + +{$R *.dfm} + +procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); +begin + sendmessage(newh,1034,4,0); + action:=cafree; +end; + +procedure TForm1.test1Click(Sender: TObject); +type + TMyFunc = function(App:Tapplication; FormH:hwnd; FormID:integer; + Language: integer; WinStyle:integer; + GCode: Pchar; GName: Pchar; DataBase:Pchar;Title:PChar; + Parameters1:PChar;Parameters2:PChar;Parameters3:PChar;Parameters4:PChar; + Parameters5:PChar;Parameters6:PChar;Parameters7:PChar;Parameters8:PChar; + Parameters9:PChar;Parameters10:PChar;DataBaseStr:PChar):hwnd;stdcall; +var + Tf: TMyFunc; + Tp: TFarProc; + Th:Thandle; +begin + //̬ + //newh:=getForm(Application,1,ADOConnection1,PChar('sa'),PChar('dsa')); + + //̬ + // showMessage(intTostr(application.Handle)); + Th := LoadLibrary('CPCK.dll'); + if Th > 0 then + begin + try + Tp := GetProcAddress(Th, 'GetDllForm'); + if Tp <> nil then + begin + Tf := TMyFunc(Tp); + newh:=Tf(Application,0,strToint(edit1.text),0,0, + PChar('sa'), + PChar('dsa'), + PChar('bsa'), + PChar('tsa'), + PChar('d1sa'), + PChar('d2sa'), + '','','','','','','','','' + ); + end + else + begin + ShowMessage('ӡִд'); + end; + finally + // FreeLibrary(); + end; + end + else + begin + ShowMessage('Ҳ'+Trim(DllName.Text)); + end; + +end; + +procedure TForm1.ToolButton1Click(Sender: TObject); +begin + close; +end; + +procedure TForm1.FormResize(Sender: TObject); +begin + sendmessage(newh,1034,1,0); +end; + +end. + diff --git a/成品仓库/consvr.ini b/成品仓库/consvr.ini new file mode 100644 index 0000000..3a03c34 --- /dev/null +++ b/成品仓库/consvr.ini @@ -0,0 +1,2 @@ +[SERVER] +SERVER=192.168.88.254 \ No newline at end of file diff --git a/成品仓库/testDll.cfg b/成品仓库/testDll.cfg new file mode 100644 index 0000000..0ee74bb --- /dev/null +++ b/成品仓库/testDll.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/成品仓库/testDll.dof b/成品仓库/testDll.dof new file mode 100644 index 0000000..b0e203c --- /dev/null +++ b/成品仓库/testDll.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=F:\selfware_83398\selfware\ֿ\Ŀ\self\Ϣ\testDll.exe +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/成品仓库/testDll.dpr b/成品仓库/testDll.dpr new file mode 100644 index 0000000..4be4b8a --- /dev/null +++ b/成品仓库/testDll.dpr @@ -0,0 +1,14 @@ +program testDll; + +uses + Forms, + U_testdll in 'U_testdll.pas' {Form1}; + +{$R *.res} + +begin + Application.Initialize; + Application.CreateForm(TForm1, Form1); + Application.Run; +end. + diff --git a/成品仓库/testDll.res b/成品仓库/testDll.res new file mode 100644 index 0000000000000000000000000000000000000000..2d6f24c3d9a870364649288b1c0306b551768325 GIT binary patch literal 876 zcmaJ=Jx{|h5Pc?9%tTwkz(g}L7BMg|6oiDt01W(ruz1OWgw!H+AXAn~{FzE^Brlox z9gK_}J0Q&SIVr99IQ9AN-MzD~Rtx|M;amX24SU~e>Jc?cYMoANyAd5SNQg5+p~aQP zp5HA8_(Prt$CV+GqpB(v{1D!`;JAjld@@+K+i61a|MTdsd{~!%b1ms_KJEh}cpe(` z6jA?@e29>sU}iiwp;b>~TL@2U!O)h%Yr)7`8+a;b=@mD^tI-VbODr7!U{0?gh%d@~e3Ro)^HNMvvU1UHt)HYrq~&L`&fQ16Y1SeYiaObZ>3v kZ4W@7aBc_JIL8%khzs1(H@5yR{A*B1l9s#*|B4j80N@tIJOBUy literal 0 HcmV?d00001 diff --git a/艾登贸易管理/AES.pas b/艾登贸易管理/AES.pas new file mode 100644 index 0000000..3b8432d --- /dev/null +++ b/艾登贸易管理/AES.pas @@ -0,0 +1,317 @@ +(**************************************************) + +unit AES; + +interface + +uses + SysUtils, Classes, Math, ElAES; + +type + TKeyBit = (kb128, kb192, kb256); + +function StrToHex(Value: string): string; +function HexToStr(Value: string): string; +function EncryptString(Value: string; Key: string; + KeyBit: TKeyBit = kb128): string; +function DecryptString(Value: string; Key: string; + KeyBit: TKeyBit = kb128): string; +function EncryptStream(Stream: TStream; Key: string; + KeyBit: TKeyBit = kb128): TStream; +function DecryptStream(Stream: TStream; Key: string; + KeyBit: TKeyBit = kb128): TStream; +procedure EncryptFile(SourceFile, DestFile: string; + Key: string; KeyBit: TKeyBit = kb128); +procedure DecryptFile(SourceFile, DestFile: string; + Key: string; KeyBit: TKeyBit = kb128); + +implementation + +function StrToHex(Value: string): string; +var + I: Integer; +begin + Result := ''; + for I := 1 to Length(Value) do + Result := Result + IntToHex(Ord(Value[I]), 2); +end; + +function HexToStr(Value: string): string; +var + I: Integer; +begin + Result := ''; + for I := 1 to Length(Value) do + begin + if ((I mod 2) = 1) then + Result := Result + Chr(StrToInt('0x'+ Copy(Value, I, 2))); + end; +end; + +{ -- ַܺ Ĭϰ 128 λܳ׼ -- } +function EncryptString(Value: string; Key: string; + KeyBit: TKeyBit = kb128): string; +var + SS, DS: TStringStream; + Size: Int64; + AESKey128: TAESKey128; + AESKey192: TAESKey192; + AESKey256: TAESKey256; +begin + Result := ''; + SS := TStringStream.Create(Value); + DS := TStringStream.Create(''); + try + Size := SS.Size; + DS.WriteBuffer(Size, SizeOf(Size)); + { -- 128 λܳ󳤶Ϊ 16 ַ -- } + if KeyBit = kb128 then + begin + FillChar(AESKey128, SizeOf(AESKey128), 0 ); + Move(PChar(Key)^, AESKey128, Min(SizeOf(AESKey128), Length(Key))); + EncryptAESStreamECB(SS, 0, AESKey128, DS); + end; + { -- 192 λܳ󳤶Ϊ 24 ַ -- } + if KeyBit = kb192 then + begin + FillChar(AESKey192, SizeOf(AESKey192), 0 ); + Move(PChar(Key)^, AESKey192, Min(SizeOf(AESKey192), Length(Key))); + EncryptAESStreamECB(SS, 0, AESKey192, DS); + end; + { -- 256 λܳ󳤶Ϊ 32 ַ -- } + if KeyBit = kb256 then + begin + FillChar(AESKey256, SizeOf(AESKey256), 0 ); + Move(PChar(Key)^, AESKey256, Min(SizeOf(AESKey256), Length(Key))); + EncryptAESStreamECB(SS, 0, AESKey256, DS); + end; + Result := StrToHex(DS.DataString); + finally + SS.Free; + DS.Free; + end; +end; + +{ -- ַܺ Ĭϰ 128 λܳ׽ -- } +function DecryptString(Value: string; Key: string; + KeyBit: TKeyBit = kb128): string; +var + SS, DS: TStringStream; + Size: Int64; + AESKey128: TAESKey128; + AESKey192: TAESKey192; + AESKey256: TAESKey256; +begin + Result := ''; + SS := TStringStream.Create(HexToStr(Value)); + DS := TStringStream.Create(''); + try + Size := SS.Size; + SS.ReadBuffer(Size, SizeOf(Size)); + { -- 128 λܳ󳤶Ϊ 16 ַ -- } + if KeyBit = kb128 then + begin + FillChar(AESKey128, SizeOf(AESKey128), 0 ); + Move(PChar(Key)^, AESKey128, Min(SizeOf(AESKey128), Length(Key))); + DecryptAESStreamECB(SS, SS.Size - SS.Position, AESKey128, DS); + end; + { -- 192 λܳ󳤶Ϊ 24 ַ -- } + if KeyBit = kb192 then + begin + FillChar(AESKey192, SizeOf(AESKey192), 0 ); + Move(PChar(Key)^, AESKey192, Min(SizeOf(AESKey192), Length(Key))); + DecryptAESStreamECB(SS, SS.Size - SS.Position, AESKey192, DS); + end; + { -- 256 λܳ󳤶Ϊ 32 ַ -- } + if KeyBit = kb256 then + begin + FillChar(AESKey256, SizeOf(AESKey256), 0 ); + Move(PChar(Key)^, AESKey256, Min(SizeOf(AESKey256), Length(Key))); + DecryptAESStreamECB(SS, SS.Size - SS.Position, AESKey256, DS); + end; + Result := DS.DataString; + finally + SS.Free; + DS.Free; + end; +end; + +{ -- ܺ Ĭϰ 128 λܳ׽ -- } +function EncryptStream(Stream: TStream; Key: string; + KeyBit: TKeyBit = kb128): TStream; +var + Count: Int64; + OutStrm: TStream; + AESKey128: TAESKey128; + AESKey192: TAESKey192; + AESKey256: TAESKey256; +begin + OutStrm := TStream.Create; + Stream.Position := 0; + Count := Stream.Size; + OutStrm.Write(Count, SizeOf(Count)); + try + { -- 128 λܳ󳤶Ϊ 16 ַ -- } + if KeyBit = kb128 then + begin + FillChar(AESKey128, SizeOf(AESKey128), 0 ); + Move(PChar(Key)^, AESKey128, Min(SizeOf(AESKey128), Length(Key))); + EncryptAESStreamECB(Stream, 0, AESKey128, OutStrm); + end; + { -- 192 λܳ󳤶Ϊ 24 ַ -- } + if KeyBit = kb192 then + begin + FillChar(AESKey192, SizeOf(AESKey192), 0 ); + Move(PChar(Key)^, AESKey192, Min(SizeOf(AESKey192), Length(Key))); + EncryptAESStreamECB(Stream, 0, AESKey192, OutStrm); + end; + { -- 256 λܳ󳤶Ϊ 32 ַ -- } + if KeyBit = kb256 then + begin + FillChar(AESKey256, SizeOf(AESKey256), 0 ); + Move(PChar(Key)^, AESKey256, Min(SizeOf(AESKey256), Length(Key))); + EncryptAESStreamECB(Stream, 0, AESKey256, OutStrm); + end; + Result := OutStrm; + finally + OutStrm.Free; + end; +end; + +{ -- ܺ Ĭϰ 128 λܳ׽ -- } +function DecryptStream(Stream: TStream; Key: string; + KeyBit: TKeyBit = kb128): TStream; +var + Count, OutPos: Int64; + OutStrm: TStream; + AESKey128: TAESKey128; + AESKey192: TAESKey192; + AESKey256: TAESKey256; +begin + OutStrm := TStream.Create; + Stream.Position := 0; + OutPos :=OutStrm.Position; + Stream.ReadBuffer(Count, SizeOf(Count)); + try + { -- 128 λܳ󳤶Ϊ 16 ַ -- } + if KeyBit = kb128 then + begin + FillChar(AESKey128, SizeOf(AESKey128), 0 ); + Move(PChar(Key)^, AESKey128, Min(SizeOf(AESKey128), Length(Key))); + DecryptAESStreamECB(Stream, Stream.Size - Stream.Position, + AESKey128, OutStrm); + end; + { -- 192 λܳ󳤶Ϊ 24 ַ -- } + if KeyBit = kb192 then + begin + FillChar(AESKey192, SizeOf(AESKey192), 0 ); + Move(PChar(Key)^, AESKey192, Min(SizeOf(AESKey192), Length(Key))); + DecryptAESStreamECB(Stream, Stream.Size - Stream.Position, + AESKey192, OutStrm); + end; + { -- 256 λܳ󳤶Ϊ 32 ַ -- } + if KeyBit = kb256 then + begin + FillChar(AESKey256, SizeOf(AESKey256), 0 ); + Move(PChar(Key)^, AESKey256, Min(SizeOf(AESKey256), Length(Key))); + DecryptAESStreamECB(Stream, Stream.Size - Stream.Position, + AESKey256, OutStrm); + end; + OutStrm.Size := OutPos + Count; + OutStrm.Position := OutPos; + Result := OutStrm; + finally + OutStrm.Free; + end; +end; + +{ -- ļܺ Ĭϰ 128 λܳ׽ -- } +procedure EncryptFile(SourceFile, DestFile: string; + Key: string; KeyBit: TKeyBit = kb128); +var + SFS, DFS: TFileStream; + Size: Int64; + AESKey128: TAESKey128; + AESKey192: TAESKey192; + AESKey256: TAESKey256; +begin + SFS := TFileStream.Create(SourceFile, fmOpenRead); + try + DFS := TFileStream.Create(DestFile, fmCreate); + try + Size := SFS.Size; + DFS.WriteBuffer(Size, SizeOf(Size)); + { -- 128 λܳ󳤶Ϊ 16 ַ -- } + if KeyBit = kb128 then + begin + FillChar(AESKey128, SizeOf(AESKey128), 0 ); + Move(PChar(Key)^, AESKey128, Min(SizeOf(AESKey128), Length(Key))); + EncryptAESStreamECB(SFS, 0, AESKey128, DFS); + end; + { -- 192 λܳ󳤶Ϊ 24 ַ -- } + if KeyBit = kb192 then + begin + FillChar(AESKey192, SizeOf(AESKey192), 0 ); + Move(PChar(Key)^, AESKey192, Min(SizeOf(AESKey192), Length(Key))); + EncryptAESStreamECB(SFS, 0, AESKey192, DFS); + end; + { -- 256 λܳ󳤶Ϊ 32 ַ -- } + if KeyBit = kb256 then + begin + FillChar(AESKey256, SizeOf(AESKey256), 0 ); + Move(PChar(Key)^, AESKey256, Min(SizeOf(AESKey256), Length(Key))); + EncryptAESStreamECB(SFS, 0, AESKey256, DFS); + end; + finally + DFS.Free; + end; + finally + SFS.Free; + end; +end; + +{ -- ļܺ Ĭϰ 128 λܳ׽ -- } +procedure DecryptFile(SourceFile, DestFile: string; + Key: string; KeyBit: TKeyBit = kb128); +var + SFS, DFS: TFileStream; + Size: Int64; + AESKey128: TAESKey128; + AESKey192: TAESKey192; + AESKey256: TAESKey256; +begin + SFS := TFileStream.Create(SourceFile, fmOpenRead); + try + SFS.ReadBuffer(Size, SizeOf(Size)); + DFS := TFileStream.Create(DestFile, fmCreate); + try + { -- 128 λܳ󳤶Ϊ 16 ַ -- } + if KeyBit = kb128 then + begin + FillChar(AESKey128, SizeOf(AESKey128), 0 ); + Move(PChar(Key)^, AESKey128, Min(SizeOf(AESKey128), Length(Key))); + DecryptAESStreamECB(SFS, SFS.Size - SFS.Position, AESKey128, DFS); + end; + { -- 192 λܳ󳤶Ϊ 24 ַ -- } + if KeyBit = kb192 then + begin + FillChar(AESKey192, SizeOf(AESKey192), 0 ); + Move(PChar(Key)^, AESKey192, Min(SizeOf(AESKey192), Length(Key))); + DecryptAESStreamECB(SFS, SFS.Size - SFS.Position, AESKey192, DFS); + end; + { -- 256 λܳ󳤶Ϊ 32 ַ -- } + if KeyBit = kb256 then + begin + FillChar(AESKey256, SizeOf(AESKey256), 0 ); + Move(PChar(Key)^, AESKey256, Min(SizeOf(AESKey256), Length(Key))); + DecryptAESStreamECB(SFS, SFS.Size - SFS.Position, AESKey256, DFS); + end; + DFS.Size := Size; + finally + DFS.Free; + end; + finally + SFS.Free; + end; +end; +end. diff --git a/艾登贸易管理/ElAES.pas b/艾登贸易管理/ElAES.pas new file mode 100644 index 0000000..7a3e6c8 --- /dev/null +++ b/艾登贸易管理/ElAES.pas @@ -0,0 +1,2488 @@ +(**************************************************) +(* *) +(* Advanced Encryption Standard (AES) *) +(* *) +(* Copyright (c) 1998-2001 *) +(* EldoS, Alexander Ionov *) +(* *) +(**************************************************) + +unit ElAES; + +interface + +uses + Classes, SysUtils; + +type + EAESError = class(Exception); + + PInteger = ^Integer; + + TAESBuffer = array [0..15] of byte; + TAESKey128 = array [0..15] of byte; + TAESKey192 = array [0..23] of byte; + TAESKey256 = array [0..31] of byte; + TAESExpandedKey128 = array [0..43] of longword; + TAESExpandedKey192 = array [0..53] of longword; + TAESExpandedKey256 = array [0..63] of longword; + + PAESBuffer =^TAESBuffer; + PAESKey128 =^TAESKey128; + PAESKey192 =^TAESKey192; + PAESKey256 =^TAESKey256; + PAESExpandedKey128 =^TAESExpandedKey128; + PAESExpandedKey192 =^TAESExpandedKey192; + PAESExpandedKey256 =^TAESExpandedKey256; + +// Key expansion routines for encryption + +procedure ExpandAESKeyForEncryption(const Key: TAESKey128; + var ExpandedKey: TAESExpandedKey128); overload; +procedure ExpandAESKeyForEncryption(const Key: TAESKey192; + var ExpandedKey: TAESExpandedKey192); overload; +procedure ExpandAESKeyForEncryption(const Key: TAESKey256; + var ExpandedKey: TAESExpandedKey256); overload; + +// Block encryption routines + +procedure EncryptAES(const InBuf: TAESBuffer; const Key: TAESExpandedKey128; + var OutBuf: TAESBuffer); overload; +procedure EncryptAES(const InBuf: TAESBuffer; const Key: TAESExpandedKey192; + var OutBuf: TAESBuffer); overload; +procedure EncryptAES(const InBuf: TAESBuffer; const Key: TAESExpandedKey256; + var OutBuf: TAESBuffer); overload; + +// Stream encryption routines (ECB mode) + +procedure EncryptAESStreamECB(Source: TStream; Count: cardinal; + const Key: TAESKey128; Dest: TStream); overload; +procedure EncryptAESStreamECB(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey128; Dest: TStream); overload; + +procedure EncryptAESStreamECB(Source: TStream; Count: cardinal; + const Key: TAESKey192; Dest: TStream); overload; +procedure EncryptAESStreamECB(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey192; Dest: TStream); overload; + +procedure EncryptAESStreamECB(Source: TStream; Count: cardinal; + const Key: TAESKey256; Dest: TStream); overload; +procedure EncryptAESStreamECB(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey256; Dest: TStream); overload; + +// Stream encryption routines (CBC mode) + +procedure EncryptAESStreamCBC(Source: TStream; Count: cardinal; + const Key: TAESKey128; const InitVector: TAESBuffer; Dest: TStream); overload; +procedure EncryptAESStreamCBC(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey128; const InitVector: TAESBuffer; + Dest: TStream); overload; + +procedure EncryptAESStreamCBC(Source: TStream; Count: cardinal; + const Key: TAESKey192; const InitVector: TAESBuffer; Dest: TStream); overload; +procedure EncryptAESStreamCBC(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey192; const InitVector: TAESBuffer; + Dest: TStream); overload; + +procedure EncryptAESStreamCBC(Source: TStream; Count: cardinal; + const Key: TAESKey256; const InitVector: TAESBuffer; Dest: TStream); overload; +procedure EncryptAESStreamCBC(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey256; const InitVector: TAESBuffer; + Dest: TStream); overload; + +// Key transformation routines for decryption + +procedure ExpandAESKeyForDecryption(var ExpandedKey: TAESExpandedKey128); overload; +procedure ExpandAESKeyForDecryption(const Key: TAESKey128; + var ExpandedKey: TAESExpandedKey128); overload; + +procedure ExpandAESKeyForDecryption(var ExpandedKey: TAESExpandedKey192); overload; +procedure ExpandAESKeyForDecryption(const Key: TAESKey192; + var ExpandedKey: TAESExpandedKey192); overload; + +procedure ExpandAESKeyForDecryption(var ExpandedKey: TAESExpandedKey256); overload; +procedure ExpandAESKeyForDecryption(const Key: TAESKey256; + var ExpandedKey: TAESExpandedKey256); overload; + +// Block decryption routines + +procedure DecryptAES(const InBuf: TAESBuffer; const Key: TAESExpandedKey128; + var OutBuf: TAESBuffer); overload; +procedure DecryptAES(const InBuf: TAESBuffer; const Key: TAESExpandedKey192; + var OutBuf: TAESBuffer); overload; +procedure DecryptAES(const InBuf: TAESBuffer; const Key: TAESExpandedKey256; + var OutBuf: TAESBuffer); overload; + +// Stream decryption routines (ECB mode) + +procedure DecryptAESStreamECB(Source: TStream; Count: cardinal; + const Key: TAESKey128; Dest: TStream); overload; +procedure DecryptAESStreamECB(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey128; Dest: TStream); overload; + +procedure DecryptAESStreamECB(Source: TStream; Count: cardinal; + const Key: TAESKey192; Dest: TStream); overload; +procedure DecryptAESStreamECB(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey192; Dest: TStream); overload; + +procedure DecryptAESStreamECB(Source: TStream; Count: cardinal; + const Key: TAESKey256; Dest: TStream); overload; +procedure DecryptAESStreamECB(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey256; Dest: TStream); overload; + +// Stream decryption routines (CBC mode) + +procedure DecryptAESStreamCBC(Source: TStream; Count: cardinal; + const Key: TAESKey128; const InitVector: TAESBuffer; Dest: TStream); overload; +procedure DecryptAESStreamCBC(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey128; const InitVector: TAESBuffer; + Dest: TStream); overload; + +procedure DecryptAESStreamCBC(Source: TStream; Count: cardinal; + const Key: TAESKey192; const InitVector: TAESBuffer; Dest: TStream); overload; +procedure DecryptAESStreamCBC(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey192; const InitVector: TAESBuffer; + Dest: TStream); overload; + +procedure DecryptAESStreamCBC(Source: TStream; Count: cardinal; + const Key: TAESKey256; const InitVector: TAESBuffer; Dest: TStream); overload; +procedure DecryptAESStreamCBC(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey256; const InitVector: TAESBuffer; + Dest: TStream); overload; + +resourcestring + SInvalidInBufSize = 'Invalid buffer size for decryption'; + SReadError = 'Stream read error'; + SWriteError = 'Stream write error'; + +implementation + +type + PLongWord = ^LongWord; + +function Min(A, B: integer): integer; +begin + if A < B then + Result := A + else + Result := B; +end; + +const + Rcon: array [1..30] of longword = ( + $00000001, $00000002, $00000004, $00000008, $00000010, $00000020, + $00000040, $00000080, $0000001B, $00000036, $0000006C, $000000D8, + $000000AB, $0000004D, $0000009A, $0000002F, $0000005E, $000000BC, + $00000063, $000000C6, $00000097, $00000035, $0000006A, $000000D4, + $000000B3, $0000007D, $000000FA, $000000EF, $000000C5, $00000091 + ); + + ForwardTable: array [0..255] of longword = ( + $A56363C6, $847C7CF8, $997777EE, $8D7B7BF6, $0DF2F2FF, $BD6B6BD6, $B16F6FDE, $54C5C591, + $50303060, $03010102, $A96767CE, $7D2B2B56, $19FEFEE7, $62D7D7B5, $E6ABAB4D, $9A7676EC, + $45CACA8F, $9D82821F, $40C9C989, $877D7DFA, $15FAFAEF, $EB5959B2, $C947478E, $0BF0F0FB, + $ECADAD41, $67D4D4B3, $FDA2A25F, $EAAFAF45, $BF9C9C23, $F7A4A453, $967272E4, $5BC0C09B, + $C2B7B775, $1CFDFDE1, $AE93933D, $6A26264C, $5A36366C, $413F3F7E, $02F7F7F5, $4FCCCC83, + $5C343468, $F4A5A551, $34E5E5D1, $08F1F1F9, $937171E2, $73D8D8AB, $53313162, $3F15152A, + $0C040408, $52C7C795, $65232346, $5EC3C39D, $28181830, $A1969637, $0F05050A, $B59A9A2F, + $0907070E, $36121224, $9B80801B, $3DE2E2DF, $26EBEBCD, $6927274E, $CDB2B27F, $9F7575EA, + $1B090912, $9E83831D, $742C2C58, $2E1A1A34, $2D1B1B36, $B26E6EDC, $EE5A5AB4, $FBA0A05B, + $F65252A4, $4D3B3B76, $61D6D6B7, $CEB3B37D, $7B292952, $3EE3E3DD, $712F2F5E, $97848413, + $F55353A6, $68D1D1B9, $00000000, $2CEDEDC1, $60202040, $1FFCFCE3, $C8B1B179, $ED5B5BB6, + $BE6A6AD4, $46CBCB8D, $D9BEBE67, $4B393972, $DE4A4A94, $D44C4C98, $E85858B0, $4ACFCF85, + $6BD0D0BB, $2AEFEFC5, $E5AAAA4F, $16FBFBED, $C5434386, $D74D4D9A, $55333366, $94858511, + $CF45458A, $10F9F9E9, $06020204, $817F7FFE, $F05050A0, $443C3C78, $BA9F9F25, $E3A8A84B, + $F35151A2, $FEA3A35D, $C0404080, $8A8F8F05, $AD92923F, $BC9D9D21, $48383870, $04F5F5F1, + $DFBCBC63, $C1B6B677, $75DADAAF, $63212142, $30101020, $1AFFFFE5, $0EF3F3FD, $6DD2D2BF, + $4CCDCD81, $140C0C18, $35131326, $2FECECC3, $E15F5FBE, $A2979735, $CC444488, $3917172E, + $57C4C493, $F2A7A755, $827E7EFC, $473D3D7A, $AC6464C8, $E75D5DBA, $2B191932, $957373E6, + $A06060C0, $98818119, $D14F4F9E, $7FDCDCA3, $66222244, $7E2A2A54, $AB90903B, $8388880B, + $CA46468C, $29EEEEC7, $D3B8B86B, $3C141428, $79DEDEA7, $E25E5EBC, $1D0B0B16, $76DBDBAD, + $3BE0E0DB, $56323264, $4E3A3A74, $1E0A0A14, $DB494992, $0A06060C, $6C242448, $E45C5CB8, + $5DC2C29F, $6ED3D3BD, $EFACAC43, $A66262C4, $A8919139, $A4959531, $37E4E4D3, $8B7979F2, + $32E7E7D5, $43C8C88B, $5937376E, $B76D6DDA, $8C8D8D01, $64D5D5B1, $D24E4E9C, $E0A9A949, + $B46C6CD8, $FA5656AC, $07F4F4F3, $25EAEACF, $AF6565CA, $8E7A7AF4, $E9AEAE47, $18080810, + $D5BABA6F, $887878F0, $6F25254A, $722E2E5C, $241C1C38, $F1A6A657, $C7B4B473, $51C6C697, + $23E8E8CB, $7CDDDDA1, $9C7474E8, $211F1F3E, $DD4B4B96, $DCBDBD61, $868B8B0D, $858A8A0F, + $907070E0, $423E3E7C, $C4B5B571, $AA6666CC, $D8484890, $05030306, $01F6F6F7, $120E0E1C, + $A36161C2, $5F35356A, $F95757AE, $D0B9B969, $91868617, $58C1C199, $271D1D3A, $B99E9E27, + $38E1E1D9, $13F8F8EB, $B398982B, $33111122, $BB6969D2, $70D9D9A9, $898E8E07, $A7949433, + $B69B9B2D, $221E1E3C, $92878715, $20E9E9C9, $49CECE87, $FF5555AA, $78282850, $7ADFDFA5, + $8F8C8C03, $F8A1A159, $80898909, $170D0D1A, $DABFBF65, $31E6E6D7, $C6424284, $B86868D0, + $C3414182, $B0999929, $772D2D5A, $110F0F1E, $CBB0B07B, $FC5454A8, $D6BBBB6D, $3A16162C + ); + + LastForwardTable: array [0..255] of longword = ( + $00000063, $0000007C, $00000077, $0000007B, $000000F2, $0000006B, $0000006F, $000000C5, + $00000030, $00000001, $00000067, $0000002B, $000000FE, $000000D7, $000000AB, $00000076, + $000000CA, $00000082, $000000C9, $0000007D, $000000FA, $00000059, $00000047, $000000F0, + $000000AD, $000000D4, $000000A2, $000000AF, $0000009C, $000000A4, $00000072, $000000C0, + $000000B7, $000000FD, $00000093, $00000026, $00000036, $0000003F, $000000F7, $000000CC, + $00000034, $000000A5, $000000E5, $000000F1, $00000071, $000000D8, $00000031, $00000015, + $00000004, $000000C7, $00000023, $000000C3, $00000018, $00000096, $00000005, $0000009A, + $00000007, $00000012, $00000080, $000000E2, $000000EB, $00000027, $000000B2, $00000075, + $00000009, $00000083, $0000002C, $0000001A, $0000001B, $0000006E, $0000005A, $000000A0, + $00000052, $0000003B, $000000D6, $000000B3, $00000029, $000000E3, $0000002F, $00000084, + $00000053, $000000D1, $00000000, $000000ED, $00000020, $000000FC, $000000B1, $0000005B, + $0000006A, $000000CB, $000000BE, $00000039, $0000004A, $0000004C, $00000058, $000000CF, + $000000D0, $000000EF, $000000AA, $000000FB, $00000043, $0000004D, $00000033, $00000085, + $00000045, $000000F9, $00000002, $0000007F, $00000050, $0000003C, $0000009F, $000000A8, + $00000051, $000000A3, $00000040, $0000008F, $00000092, $0000009D, $00000038, $000000F5, + $000000BC, $000000B6, $000000DA, $00000021, $00000010, $000000FF, $000000F3, $000000D2, + $000000CD, $0000000C, $00000013, $000000EC, $0000005F, $00000097, $00000044, $00000017, + $000000C4, $000000A7, $0000007E, $0000003D, $00000064, $0000005D, $00000019, $00000073, + $00000060, $00000081, $0000004F, $000000DC, $00000022, $0000002A, $00000090, $00000088, + $00000046, $000000EE, $000000B8, $00000014, $000000DE, $0000005E, $0000000B, $000000DB, + $000000E0, $00000032, $0000003A, $0000000A, $00000049, $00000006, $00000024, $0000005C, + $000000C2, $000000D3, $000000AC, $00000062, $00000091, $00000095, $000000E4, $00000079, + $000000E7, $000000C8, $00000037, $0000006D, $0000008D, $000000D5, $0000004E, $000000A9, + $0000006C, $00000056, $000000F4, $000000EA, $00000065, $0000007A, $000000AE, $00000008, + $000000BA, $00000078, $00000025, $0000002E, $0000001C, $000000A6, $000000B4, $000000C6, + $000000E8, $000000DD, $00000074, $0000001F, $0000004B, $000000BD, $0000008B, $0000008A, + $00000070, $0000003E, $000000B5, $00000066, $00000048, $00000003, $000000F6, $0000000E, + $00000061, $00000035, $00000057, $000000B9, $00000086, $000000C1, $0000001D, $0000009E, + $000000E1, $000000F8, $00000098, $00000011, $00000069, $000000D9, $0000008E, $00000094, + $0000009B, $0000001E, $00000087, $000000E9, $000000CE, $00000055, $00000028, $000000DF, + $0000008C, $000000A1, $00000089, $0000000D, $000000BF, $000000E6, $00000042, $00000068, + $00000041, $00000099, $0000002D, $0000000F, $000000B0, $00000054, $000000BB, $00000016 + ); + + InverseTable: array [0..255] of longword = ( + $50A7F451, $5365417E, $C3A4171A, $965E273A, $CB6BAB3B, $F1459D1F, $AB58FAAC, $9303E34B, + $55FA3020, $F66D76AD, $9176CC88, $254C02F5, $FCD7E54F, $D7CB2AC5, $80443526, $8FA362B5, + $495AB1DE, $671BBA25, $980EEA45, $E1C0FE5D, $02752FC3, $12F04C81, $A397468D, $C6F9D36B, + $E75F8F03, $959C9215, $EB7A6DBF, $DA595295, $2D83BED4, $D3217458, $2969E049, $44C8C98E, + $6A89C275, $78798EF4, $6B3E5899, $DD71B927, $B64FE1BE, $17AD88F0, $66AC20C9, $B43ACE7D, + $184ADF63, $82311AE5, $60335197, $457F5362, $E07764B1, $84AE6BBB, $1CA081FE, $942B08F9, + $58684870, $19FD458F, $876CDE94, $B7F87B52, $23D373AB, $E2024B72, $578F1FE3, $2AAB5566, + $0728EBB2, $03C2B52F, $9A7BC586, $A50837D3, $F2872830, $B2A5BF23, $BA6A0302, $5C8216ED, + $2B1CCF8A, $92B479A7, $F0F207F3, $A1E2694E, $CDF4DA65, $D5BE0506, $1F6234D1, $8AFEA6C4, + $9D532E34, $A055F3A2, $32E18A05, $75EBF6A4, $39EC830B, $AAEF6040, $069F715E, $51106EBD, + $F98A213E, $3D06DD96, $AE053EDD, $46BDE64D, $B58D5491, $055DC471, $6FD40604, $FF155060, + $24FB9819, $97E9BDD6, $CC434089, $779ED967, $BD42E8B0, $888B8907, $385B19E7, $DBEEC879, + $470A7CA1, $E90F427C, $C91E84F8, $00000000, $83868009, $48ED2B32, $AC70111E, $4E725A6C, + $FBFF0EFD, $5638850F, $1ED5AE3D, $27392D36, $64D90F0A, $21A65C68, $D1545B9B, $3A2E3624, + $B1670A0C, $0FE75793, $D296EEB4, $9E919B1B, $4FC5C080, $A220DC61, $694B775A, $161A121C, + $0ABA93E2, $E52AA0C0, $43E0223C, $1D171B12, $0B0D090E, $ADC78BF2, $B9A8B62D, $C8A91E14, + $8519F157, $4C0775AF, $BBDD99EE, $FD607FA3, $9F2601F7, $BCF5725C, $C53B6644, $347EFB5B, + $7629438B, $DCC623CB, $68FCEDB6, $63F1E4B8, $CADC31D7, $10856342, $40229713, $2011C684, + $7D244A85, $F83DBBD2, $1132F9AE, $6DA129C7, $4B2F9E1D, $F330B2DC, $EC52860D, $D0E3C177, + $6C16B32B, $99B970A9, $FA489411, $2264E947, $C48CFCA8, $1A3FF0A0, $D82C7D56, $EF903322, + $C74E4987, $C1D138D9, $FEA2CA8C, $360BD498, $CF81F5A6, $28DE7AA5, $268EB7DA, $A4BFAD3F, + $E49D3A2C, $0D927850, $9BCC5F6A, $62467E54, $C2138DF6, $E8B8D890, $5EF7392E, $F5AFC382, + $BE805D9F, $7C93D069, $A92DD56F, $B31225CF, $3B99ACC8, $A77D1810, $6E639CE8, $7BBB3BDB, + $097826CD, $F418596E, $01B79AEC, $A89A4F83, $656E95E6, $7EE6FFAA, $08CFBC21, $E6E815EF, + $D99BE7BA, $CE366F4A, $D4099FEA, $D67CB029, $AFB2A431, $31233F2A, $3094A5C6, $C066A235, + $37BC4E74, $A6CA82FC, $B0D090E0, $15D8A733, $4A9804F1, $F7DAEC41, $0E50CD7F, $2FF69117, + $8DD64D76, $4DB0EF43, $544DAACC, $DF0496E4, $E3B5D19E, $1B886A4C, $B81F2CC1, $7F516546, + $04EA5E9D, $5D358C01, $737487FA, $2E410BFB, $5A1D67B3, $52D2DB92, $335610E9, $1347D66D, + $8C61D79A, $7A0CA137, $8E14F859, $893C13EB, $EE27A9CE, $35C961B7, $EDE51CE1, $3CB1477A, + $59DFD29C, $3F73F255, $79CE1418, $BF37C773, $EACDF753, $5BAAFD5F, $146F3DDF, $86DB4478, + $81F3AFCA, $3EC468B9, $2C342438, $5F40A3C2, $72C31D16, $0C25E2BC, $8B493C28, $41950DFF, + $7101A839, $DEB30C08, $9CE4B4D8, $90C15664, $6184CB7B, $70B632D5, $745C6C48, $4257B8D0 + ); + + LastInverseTable: array [0..255] of longword = ( + $00000052, $00000009, $0000006A, $000000D5, $00000030, $00000036, $000000A5, $00000038, + $000000BF, $00000040, $000000A3, $0000009E, $00000081, $000000F3, $000000D7, $000000FB, + $0000007C, $000000E3, $00000039, $00000082, $0000009B, $0000002F, $000000FF, $00000087, + $00000034, $0000008E, $00000043, $00000044, $000000C4, $000000DE, $000000E9, $000000CB, + $00000054, $0000007B, $00000094, $00000032, $000000A6, $000000C2, $00000023, $0000003D, + $000000EE, $0000004C, $00000095, $0000000B, $00000042, $000000FA, $000000C3, $0000004E, + $00000008, $0000002E, $000000A1, $00000066, $00000028, $000000D9, $00000024, $000000B2, + $00000076, $0000005B, $000000A2, $00000049, $0000006D, $0000008B, $000000D1, $00000025, + $00000072, $000000F8, $000000F6, $00000064, $00000086, $00000068, $00000098, $00000016, + $000000D4, $000000A4, $0000005C, $000000CC, $0000005D, $00000065, $000000B6, $00000092, + $0000006C, $00000070, $00000048, $00000050, $000000FD, $000000ED, $000000B9, $000000DA, + $0000005E, $00000015, $00000046, $00000057, $000000A7, $0000008D, $0000009D, $00000084, + $00000090, $000000D8, $000000AB, $00000000, $0000008C, $000000BC, $000000D3, $0000000A, + $000000F7, $000000E4, $00000058, $00000005, $000000B8, $000000B3, $00000045, $00000006, + $000000D0, $0000002C, $0000001E, $0000008F, $000000CA, $0000003F, $0000000F, $00000002, + $000000C1, $000000AF, $000000BD, $00000003, $00000001, $00000013, $0000008A, $0000006B, + $0000003A, $00000091, $00000011, $00000041, $0000004F, $00000067, $000000DC, $000000EA, + $00000097, $000000F2, $000000CF, $000000CE, $000000F0, $000000B4, $000000E6, $00000073, + $00000096, $000000AC, $00000074, $00000022, $000000E7, $000000AD, $00000035, $00000085, + $000000E2, $000000F9, $00000037, $000000E8, $0000001C, $00000075, $000000DF, $0000006E, + $00000047, $000000F1, $0000001A, $00000071, $0000001D, $00000029, $000000C5, $00000089, + $0000006F, $000000B7, $00000062, $0000000E, $000000AA, $00000018, $000000BE, $0000001B, + $000000FC, $00000056, $0000003E, $0000004B, $000000C6, $000000D2, $00000079, $00000020, + $0000009A, $000000DB, $000000C0, $000000FE, $00000078, $000000CD, $0000005A, $000000F4, + $0000001F, $000000DD, $000000A8, $00000033, $00000088, $00000007, $000000C7, $00000031, + $000000B1, $00000012, $00000010, $00000059, $00000027, $00000080, $000000EC, $0000005F, + $00000060, $00000051, $0000007F, $000000A9, $00000019, $000000B5, $0000004A, $0000000D, + $0000002D, $000000E5, $0000007A, $0000009F, $00000093, $000000C9, $0000009C, $000000EF, + $000000A0, $000000E0, $0000003B, $0000004D, $000000AE, $0000002A, $000000F5, $000000B0, + $000000C8, $000000EB, $000000BB, $0000003C, $00000083, $00000053, $00000099, $00000061, + $00000017, $0000002B, $00000004, $0000007E, $000000BA, $00000077, $000000D6, $00000026, + $000000E1, $00000069, $00000014, $00000063, $00000055, $00000021, $0000000C, $0000007D + ); + +procedure ExpandAESKeyForEncryption(const Key: TAESKey128; var ExpandedKey: TAESExpandedKey128); +var + I, J: integer; + T: longword; + W0, W1, W2, W3: longword; +begin + ExpandedKey[0] := PLongWord(@Key[0])^; + ExpandedKey[1] := PLongWord(@Key[4])^; + ExpandedKey[2] := PLongWord(@Key[8])^; + ExpandedKey[3] := PLongWord(@Key[12])^; + I := 0; J := 1; + repeat + T := (ExpandedKey[I + 3] shl 24) or (ExpandedKey[I + 3] shr 8); + W0 := LastForwardTable[Byte(T)]; W1 := LastForwardTable[Byte(T shr 8)]; + W2 := LastForwardTable[Byte(T shr 16)]; W3 := LastForwardTable[Byte(T shr 24)]; + ExpandedKey[I + 4] := ExpandedKey[I] xor + (W0 xor ((W1 shl 8) or (W1 shr 24)) xor + ((W2 shl 16) or (W2 shr 16)) xor ((W3 shl 24) or (W3 shr 8))) xor Rcon[J]; + Inc(J); + ExpandedKey[I + 5] := ExpandedKey[I + 1] xor ExpandedKey[I + 4]; + ExpandedKey[I + 6] := ExpandedKey[I + 2] xor ExpandedKey[I + 5]; + ExpandedKey[I + 7] := ExpandedKey[I + 3] xor ExpandedKey[I + 6]; + Inc(I, 4); + until I >= 40; +end; + +procedure ExpandAESKeyForEncryption(const Key: TAESKey192; var ExpandedKey: TAESExpandedKey192); overload; +var + I, J: integer; + T: longword; + W0, W1, W2, W3: longword; +begin + ExpandedKey[0] := PLongWord(@Key[0])^; + ExpandedKey[1] := PLongWord(@Key[4])^; + ExpandedKey[2] := PLongWord(@Key[8])^; + ExpandedKey[3] := PLongWord(@Key[12])^; + ExpandedKey[4] := PLongWord(@Key[16])^; + ExpandedKey[5] := PLongWord(@Key[20])^; + I := 0; J := 1; + repeat + T := (ExpandedKey[I + 5] shl 24) or (ExpandedKey[I + 5] shr 8); + W0 := LastForwardTable[Byte(T)]; W1 := LastForwardTable[Byte(T shr 8)]; + W2 := LastForwardTable[Byte(T shr 16)]; W3 := LastForwardTable[Byte(T shr 24)]; + ExpandedKey[I + 6] := ExpandedKey[I] xor + (W0 xor ((W1 shl 8) or (W1 shr 24)) xor + ((W2 shl 16) or (W2 shr 16)) xor ((W3 shl 24) or (W3 shr 8))) xor Rcon[J]; + Inc(J); + ExpandedKey[I + 7] := ExpandedKey[I + 1] xor ExpandedKey[I + 6]; + ExpandedKey[I + 8] := ExpandedKey[I + 2] xor ExpandedKey[I + 7]; + ExpandedKey[I + 9] := ExpandedKey[I + 3] xor ExpandedKey[I + 8]; + ExpandedKey[I + 10] := ExpandedKey[I + 4] xor ExpandedKey[I + 9]; + ExpandedKey[I + 11] := ExpandedKey[I + 5] xor ExpandedKey[I + 10]; + Inc(I, 6); + until I >= 46; +end; + +procedure ExpandAESKeyForEncryption(const Key: TAESKey256; var ExpandedKey: TAESExpandedKey256); overload; +var + I, J: integer; + T: longword; + W0, W1, W2, W3: longword; +begin + ExpandedKey[0] := PLongWord(@Key[0])^; + ExpandedKey[1] := PLongWord(@Key[4])^; + ExpandedKey[2] := PLongWord(@Key[8])^; + ExpandedKey[3] := PLongWord(@Key[12])^; + ExpandedKey[4] := PLongWord(@Key[16])^; + ExpandedKey[5] := PLongWord(@Key[20])^; + ExpandedKey[6] := PLongWord(@Key[24])^; + ExpandedKey[7] := PLongWord(@Key[28])^; + I := 0; J := 1; + repeat + T := (ExpandedKey[I + 7] shl 24) or (ExpandedKey[I + 7] shr 8); + W0 := LastForwardTable[Byte(T)]; W1 := LastForwardTable[Byte(T shr 8)]; + W2 := LastForwardTable[Byte(T shr 16)]; W3 := LastForwardTable[Byte(T shr 24)]; + ExpandedKey[I + 8] := ExpandedKey[I] xor + (W0 xor ((W1 shl 8) or (W1 shr 24)) xor + ((W2 shl 16) or (W2 shr 16)) xor ((W3 shl 24) or (W3 shr 8))) xor Rcon[J]; + Inc(J); + ExpandedKey[I + 9] := ExpandedKey[I + 1] xor ExpandedKey[I + 8]; + ExpandedKey[I + 10] := ExpandedKey[I + 2] xor ExpandedKey[I + 9]; + ExpandedKey[I + 11] := ExpandedKey[I + 3] xor ExpandedKey[I + 10]; + W0 := LastForwardTable[Byte(ExpandedKey[I + 11])]; + W1 := LastForwardTable[Byte(ExpandedKey[I + 11] shr 8)]; + W2 := LastForwardTable[Byte(ExpandedKey[I + 11] shr 16)]; + W3 := LastForwardTable[Byte(ExpandedKey[I + 11] shr 24)]; + ExpandedKey[I + 12] := ExpandedKey[I + 4] xor + (W0 xor ((W1 shl 8) or (W1 shr 24)) xor + ((W2 shl 16) or (W2 shr 16)) xor ((W3 shl 24) or (W3 shr 8))); + ExpandedKey[I + 13] := ExpandedKey[I + 5] xor ExpandedKey[I + 12]; + ExpandedKey[I + 14] := ExpandedKey[I + 6] xor ExpandedKey[I + 13]; + ExpandedKey[I + 15] := ExpandedKey[I + 7] xor ExpandedKey[I + 14]; + Inc(I, 8); + until I >= 52; +end; + +procedure EncryptAES(const InBuf: TAESBuffer; const Key: TAESExpandedKey128; + var OutBuf: TAESBuffer); +var + T0, T1: array [0..3] of longword; + W0, W1, W2, W3: longword; +begin + // initializing + T0[0] := PLongWord(@InBuf[0])^ xor Key[0]; + T0[1] := PLongWord(@InBuf[4])^ xor Key[1]; + T0[2] := PLongWord(@InBuf[8])^ xor Key[2]; + T0[3] := PLongWord(@InBuf[12])^ xor Key[3]; + // performing transformation 9 times + // round 1 + W0 := ForwardTable[Byte(T0[0])]; W1 := ForwardTable[Byte(T0[1] shr 8)]; + W2 := ForwardTable[Byte(T0[2] shr 16)]; W3 := ForwardTable[Byte(T0[3] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[4]; + W0 := ForwardTable[Byte(T0[1])]; W1 := ForwardTable[Byte(T0[2] shr 8)]; + W2 := ForwardTable[Byte(T0[3] shr 16)]; W3 := ForwardTable[Byte(T0[0] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[5]; + W0 := ForwardTable[Byte(T0[2])]; W1 := ForwardTable[Byte(T0[3] shr 8)]; + W2 := ForwardTable[Byte(T0[0] shr 16)]; W3 := ForwardTable[Byte(T0[1] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[6]; + W0 := ForwardTable[Byte(T0[3])]; W1 := ForwardTable[Byte(T0[0] shr 8)]; + W2 := ForwardTable[Byte(T0[1] shr 16)]; W3 := ForwardTable[Byte(T0[2] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[7]; + // round 2 + W0 := ForwardTable[Byte(T1[0])]; W1 := ForwardTable[Byte(T1[1] shr 8)]; + W2 := ForwardTable[Byte(T1[2] shr 16)]; W3 := ForwardTable[Byte(T1[3] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[8]; + W0 := ForwardTable[Byte(T1[1])]; W1 := ForwardTable[Byte(T1[2] shr 8)]; + W2 := ForwardTable[Byte(T1[3] shr 16)]; W3 := ForwardTable[Byte(T1[0] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[9]; + W0 := ForwardTable[Byte(T1[2])]; W1 := ForwardTable[Byte(T1[3] shr 8)]; + W2 := ForwardTable[Byte(T1[0] shr 16)]; W3 := ForwardTable[Byte(T1[1] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[10]; + W0 := ForwardTable[Byte(T1[3])]; W1 := ForwardTable[Byte(T1[0] shr 8)]; + W2 := ForwardTable[Byte(T1[1] shr 16)]; W3 := ForwardTable[Byte(T1[2] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[11]; + // round 3 + W0 := ForwardTable[Byte(T0[0])]; W1 := ForwardTable[Byte(T0[1] shr 8)]; + W2 := ForwardTable[Byte(T0[2] shr 16)]; W3 := ForwardTable[Byte(T0[3] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[12]; + W0 := ForwardTable[Byte(T0[1])]; W1 := ForwardTable[Byte(T0[2] shr 8)]; + W2 := ForwardTable[Byte(T0[3] shr 16)]; W3 := ForwardTable[Byte(T0[0] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[13]; + W0 := ForwardTable[Byte(T0[2])]; W1 := ForwardTable[Byte(T0[3] shr 8)]; + W2 := ForwardTable[Byte(T0[0] shr 16)]; W3 := ForwardTable[Byte(T0[1] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[14]; + W0 := ForwardTable[Byte(T0[3])]; W1 := ForwardTable[Byte(T0[0] shr 8)]; + W2 := ForwardTable[Byte(T0[1] shr 16)]; W3 := ForwardTable[Byte(T0[2] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[15]; + // round 4 + W0 := ForwardTable[Byte(T1[0])]; W1 := ForwardTable[Byte(T1[1] shr 8)]; + W2 := ForwardTable[Byte(T1[2] shr 16)]; W3 := ForwardTable[Byte(T1[3] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[16]; + W0 := ForwardTable[Byte(T1[1])]; W1 := ForwardTable[Byte(T1[2] shr 8)]; + W2 := ForwardTable[Byte(T1[3] shr 16)]; W3 := ForwardTable[Byte(T1[0] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[17]; + W0 := ForwardTable[Byte(T1[2])]; W1 := ForwardTable[Byte(T1[3] shr 8)]; + W2 := ForwardTable[Byte(T1[0] shr 16)]; W3 := ForwardTable[Byte(T1[1] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[18]; + W0 := ForwardTable[Byte(T1[3])]; W1 := ForwardTable[Byte(T1[0] shr 8)]; + W2 := ForwardTable[Byte(T1[1] shr 16)]; W3 := ForwardTable[Byte(T1[2] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[19]; + // round 5 + W0 := ForwardTable[Byte(T0[0])]; W1 := ForwardTable[Byte(T0[1] shr 8)]; + W2 := ForwardTable[Byte(T0[2] shr 16)]; W3 := ForwardTable[Byte(T0[3] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[20]; + W0 := ForwardTable[Byte(T0[1])]; W1 := ForwardTable[Byte(T0[2] shr 8)]; + W2 := ForwardTable[Byte(T0[3] shr 16)]; W3 := ForwardTable[Byte(T0[0] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[21]; + W0 := ForwardTable[Byte(T0[2])]; W1 := ForwardTable[Byte(T0[3] shr 8)]; + W2 := ForwardTable[Byte(T0[0] shr 16)]; W3 := ForwardTable[Byte(T0[1] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[22]; + W0 := ForwardTable[Byte(T0[3])]; W1 := ForwardTable[Byte(T0[0] shr 8)]; + W2 := ForwardTable[Byte(T0[1] shr 16)]; W3 := ForwardTable[Byte(T0[2] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[23]; + // round 6 + W0 := ForwardTable[Byte(T1[0])]; W1 := ForwardTable[Byte(T1[1] shr 8)]; + W2 := ForwardTable[Byte(T1[2] shr 16)]; W3 := ForwardTable[Byte(T1[3] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[24]; + W0 := ForwardTable[Byte(T1[1])]; W1 := ForwardTable[Byte(T1[2] shr 8)]; + W2 := ForwardTable[Byte(T1[3] shr 16)]; W3 := ForwardTable[Byte(T1[0] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[25]; + W0 := ForwardTable[Byte(T1[2])]; W1 := ForwardTable[Byte(T1[3] shr 8)]; + W2 := ForwardTable[Byte(T1[0] shr 16)]; W3 := ForwardTable[Byte(T1[1] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[26]; + W0 := ForwardTable[Byte(T1[3])]; W1 := ForwardTable[Byte(T1[0] shr 8)]; + W2 := ForwardTable[Byte(T1[1] shr 16)]; W3 := ForwardTable[Byte(T1[2] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[27]; + // round 7 + W0 := ForwardTable[Byte(T0[0])]; W1 := ForwardTable[Byte(T0[1] shr 8)]; + W2 := ForwardTable[Byte(T0[2] shr 16)]; W3 := ForwardTable[Byte(T0[3] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[28]; + W0 := ForwardTable[Byte(T0[1])]; W1 := ForwardTable[Byte(T0[2] shr 8)]; + W2 := ForwardTable[Byte(T0[3] shr 16)]; W3 := ForwardTable[Byte(T0[0] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[29]; + W0 := ForwardTable[Byte(T0[2])]; W1 := ForwardTable[Byte(T0[3] shr 8)]; + W2 := ForwardTable[Byte(T0[0] shr 16)]; W3 := ForwardTable[Byte(T0[1] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[30]; + W0 := ForwardTable[Byte(T0[3])]; W1 := ForwardTable[Byte(T0[0] shr 8)]; + W2 := ForwardTable[Byte(T0[1] shr 16)]; W3 := ForwardTable[Byte(T0[2] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[31]; + // round 8 + W0 := ForwardTable[Byte(T1[0])]; W1 := ForwardTable[Byte(T1[1] shr 8)]; + W2 := ForwardTable[Byte(T1[2] shr 16)]; W3 := ForwardTable[Byte(T1[3] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[32]; + W0 := ForwardTable[Byte(T1[1])]; W1 := ForwardTable[Byte(T1[2] shr 8)]; + W2 := ForwardTable[Byte(T1[3] shr 16)]; W3 := ForwardTable[Byte(T1[0] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[33]; + W0 := ForwardTable[Byte(T1[2])]; W1 := ForwardTable[Byte(T1[3] shr 8)]; + W2 := ForwardTable[Byte(T1[0] shr 16)]; W3 := ForwardTable[Byte(T1[1] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[34]; + W0 := ForwardTable[Byte(T1[3])]; W1 := ForwardTable[Byte(T1[0] shr 8)]; + W2 := ForwardTable[Byte(T1[1] shr 16)]; W3 := ForwardTable[Byte(T1[2] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[35]; + // round 9 + W0 := ForwardTable[Byte(T0[0])]; W1 := ForwardTable[Byte(T0[1] shr 8)]; + W2 := ForwardTable[Byte(T0[2] shr 16)]; W3 := ForwardTable[Byte(T0[3] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[36]; + W0 := ForwardTable[Byte(T0[1])]; W1 := ForwardTable[Byte(T0[2] shr 8)]; + W2 := ForwardTable[Byte(T0[3] shr 16)]; W3 := ForwardTable[Byte(T0[0] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[37]; + W0 := ForwardTable[Byte(T0[2])]; W1 := ForwardTable[Byte(T0[3] shr 8)]; + W2 := ForwardTable[Byte(T0[0] shr 16)]; W3 := ForwardTable[Byte(T0[1] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[38]; + W0 := ForwardTable[Byte(T0[3])]; W1 := ForwardTable[Byte(T0[0] shr 8)]; + W2 := ForwardTable[Byte(T0[1] shr 16)]; W3 := ForwardTable[Byte(T0[2] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[39]; + // last round of transformations + W0 := LastForwardTable[Byte(T1[0])]; W1 := LastForwardTable[Byte(T1[1] shr 8)]; + W2 := LastForwardTable[Byte(T1[2] shr 16)]; W3 := LastForwardTable[Byte(T1[3] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[40]; + W0 := LastForwardTable[Byte(T1[1])]; W1 := LastForwardTable[Byte(T1[2] shr 8)]; + W2 := LastForwardTable[Byte(T1[3] shr 16)]; W3 := LastForwardTable[Byte(T1[0] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[41]; + W0 := LastForwardTable[Byte(T1[2])]; W1 := LastForwardTable[Byte(T1[3] shr 8)]; + W2 := LastForwardTable[Byte(T1[0] shr 16)]; W3 := LastForwardTable[Byte(T1[1] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[42]; + W0 := LastForwardTable[Byte(T1[3])]; W1 := LastForwardTable[Byte(T1[0] shr 8)]; + W2 := LastForwardTable[Byte(T1[1] shr 16)]; W3 := LastForwardTable[Byte(T1[2] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[43]; + // finalizing + PLongWord(@OutBuf[0])^ := T0[0]; PLongWord(@OutBuf[4])^ := T0[1]; + PLongWord(@OutBuf[8])^ := T0[2]; PLongWord(@OutBuf[12])^ := T0[3]; +end; + +procedure EncryptAES(const InBuf: TAESBuffer; const Key: TAESExpandedKey192; + var OutBuf: TAESBuffer); +var + T0, T1: array [0..3] of longword; + W0, W1, W2, W3: longword; +begin + // initializing + T0[0] := PLongWord(@InBuf[0])^ xor Key[0]; + T0[1] := PLongWord(@InBuf[4])^ xor Key[1]; + T0[2] := PLongWord(@InBuf[8])^ xor Key[2]; + T0[3] := PLongWord(@InBuf[12])^ xor Key[3]; + // performing transformation 11 times + // round 1 + W0 := ForwardTable[Byte(T0[0])]; W1 := ForwardTable[Byte(T0[1] shr 8)]; + W2 := ForwardTable[Byte(T0[2] shr 16)]; W3 := ForwardTable[Byte(T0[3] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[4]; + W0 := ForwardTable[Byte(T0[1])]; W1 := ForwardTable[Byte(T0[2] shr 8)]; + W2 := ForwardTable[Byte(T0[3] shr 16)]; W3 := ForwardTable[Byte(T0[0] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[5]; + W0 := ForwardTable[Byte(T0[2])]; W1 := ForwardTable[Byte(T0[3] shr 8)]; + W2 := ForwardTable[Byte(T0[0] shr 16)]; W3 := ForwardTable[Byte(T0[1] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[6]; + W0 := ForwardTable[Byte(T0[3])]; W1 := ForwardTable[Byte(T0[0] shr 8)]; + W2 := ForwardTable[Byte(T0[1] shr 16)]; W3 := ForwardTable[Byte(T0[2] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[7]; + // round 2 + W0 := ForwardTable[Byte(T1[0])]; W1 := ForwardTable[Byte(T1[1] shr 8)]; + W2 := ForwardTable[Byte(T1[2] shr 16)]; W3 := ForwardTable[Byte(T1[3] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[8]; + W0 := ForwardTable[Byte(T1[1])]; W1 := ForwardTable[Byte(T1[2] shr 8)]; + W2 := ForwardTable[Byte(T1[3] shr 16)]; W3 := ForwardTable[Byte(T1[0] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[9]; + W0 := ForwardTable[Byte(T1[2])]; W1 := ForwardTable[Byte(T1[3] shr 8)]; + W2 := ForwardTable[Byte(T1[0] shr 16)]; W3 := ForwardTable[Byte(T1[1] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[10]; + W0 := ForwardTable[Byte(T1[3])]; W1 := ForwardTable[Byte(T1[0] shr 8)]; + W2 := ForwardTable[Byte(T1[1] shr 16)]; W3 := ForwardTable[Byte(T1[2] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[11]; + // round 3 + W0 := ForwardTable[Byte(T0[0])]; W1 := ForwardTable[Byte(T0[1] shr 8)]; + W2 := ForwardTable[Byte(T0[2] shr 16)]; W3 := ForwardTable[Byte(T0[3] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[12]; + W0 := ForwardTable[Byte(T0[1])]; W1 := ForwardTable[Byte(T0[2] shr 8)]; + W2 := ForwardTable[Byte(T0[3] shr 16)]; W3 := ForwardTable[Byte(T0[0] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[13]; + W0 := ForwardTable[Byte(T0[2])]; W1 := ForwardTable[Byte(T0[3] shr 8)]; + W2 := ForwardTable[Byte(T0[0] shr 16)]; W3 := ForwardTable[Byte(T0[1] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[14]; + W0 := ForwardTable[Byte(T0[3])]; W1 := ForwardTable[Byte(T0[0] shr 8)]; + W2 := ForwardTable[Byte(T0[1] shr 16)]; W3 := ForwardTable[Byte(T0[2] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[15]; + // round 4 + W0 := ForwardTable[Byte(T1[0])]; W1 := ForwardTable[Byte(T1[1] shr 8)]; + W2 := ForwardTable[Byte(T1[2] shr 16)]; W3 := ForwardTable[Byte(T1[3] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[16]; + W0 := ForwardTable[Byte(T1[1])]; W1 := ForwardTable[Byte(T1[2] shr 8)]; + W2 := ForwardTable[Byte(T1[3] shr 16)]; W3 := ForwardTable[Byte(T1[0] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[17]; + W0 := ForwardTable[Byte(T1[2])]; W1 := ForwardTable[Byte(T1[3] shr 8)]; + W2 := ForwardTable[Byte(T1[0] shr 16)]; W3 := ForwardTable[Byte(T1[1] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[18]; + W0 := ForwardTable[Byte(T1[3])]; W1 := ForwardTable[Byte(T1[0] shr 8)]; + W2 := ForwardTable[Byte(T1[1] shr 16)]; W3 := ForwardTable[Byte(T1[2] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[19]; + // round 5 + W0 := ForwardTable[Byte(T0[0])]; W1 := ForwardTable[Byte(T0[1] shr 8)]; + W2 := ForwardTable[Byte(T0[2] shr 16)]; W3 := ForwardTable[Byte(T0[3] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[20]; + W0 := ForwardTable[Byte(T0[1])]; W1 := ForwardTable[Byte(T0[2] shr 8)]; + W2 := ForwardTable[Byte(T0[3] shr 16)]; W3 := ForwardTable[Byte(T0[0] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[21]; + W0 := ForwardTable[Byte(T0[2])]; W1 := ForwardTable[Byte(T0[3] shr 8)]; + W2 := ForwardTable[Byte(T0[0] shr 16)]; W3 := ForwardTable[Byte(T0[1] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[22]; + W0 := ForwardTable[Byte(T0[3])]; W1 := ForwardTable[Byte(T0[0] shr 8)]; + W2 := ForwardTable[Byte(T0[1] shr 16)]; W3 := ForwardTable[Byte(T0[2] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[23]; + // round 6 + W0 := ForwardTable[Byte(T1[0])]; W1 := ForwardTable[Byte(T1[1] shr 8)]; + W2 := ForwardTable[Byte(T1[2] shr 16)]; W3 := ForwardTable[Byte(T1[3] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[24]; + W0 := ForwardTable[Byte(T1[1])]; W1 := ForwardTable[Byte(T1[2] shr 8)]; + W2 := ForwardTable[Byte(T1[3] shr 16)]; W3 := ForwardTable[Byte(T1[0] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[25]; + W0 := ForwardTable[Byte(T1[2])]; W1 := ForwardTable[Byte(T1[3] shr 8)]; + W2 := ForwardTable[Byte(T1[0] shr 16)]; W3 := ForwardTable[Byte(T1[1] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[26]; + W0 := ForwardTable[Byte(T1[3])]; W1 := ForwardTable[Byte(T1[0] shr 8)]; + W2 := ForwardTable[Byte(T1[1] shr 16)]; W3 := ForwardTable[Byte(T1[2] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[27]; + // round 7 + W0 := ForwardTable[Byte(T0[0])]; W1 := ForwardTable[Byte(T0[1] shr 8)]; + W2 := ForwardTable[Byte(T0[2] shr 16)]; W3 := ForwardTable[Byte(T0[3] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[28]; + W0 := ForwardTable[Byte(T0[1])]; W1 := ForwardTable[Byte(T0[2] shr 8)]; + W2 := ForwardTable[Byte(T0[3] shr 16)]; W3 := ForwardTable[Byte(T0[0] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[29]; + W0 := ForwardTable[Byte(T0[2])]; W1 := ForwardTable[Byte(T0[3] shr 8)]; + W2 := ForwardTable[Byte(T0[0] shr 16)]; W3 := ForwardTable[Byte(T0[1] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[30]; + W0 := ForwardTable[Byte(T0[3])]; W1 := ForwardTable[Byte(T0[0] shr 8)]; + W2 := ForwardTable[Byte(T0[1] shr 16)]; W3 := ForwardTable[Byte(T0[2] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[31]; + // round 8 + W0 := ForwardTable[Byte(T1[0])]; W1 := ForwardTable[Byte(T1[1] shr 8)]; + W2 := ForwardTable[Byte(T1[2] shr 16)]; W3 := ForwardTable[Byte(T1[3] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[32]; + W0 := ForwardTable[Byte(T1[1])]; W1 := ForwardTable[Byte(T1[2] shr 8)]; + W2 := ForwardTable[Byte(T1[3] shr 16)]; W3 := ForwardTable[Byte(T1[0] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[33]; + W0 := ForwardTable[Byte(T1[2])]; W1 := ForwardTable[Byte(T1[3] shr 8)]; + W2 := ForwardTable[Byte(T1[0] shr 16)]; W3 := ForwardTable[Byte(T1[1] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[34]; + W0 := ForwardTable[Byte(T1[3])]; W1 := ForwardTable[Byte(T1[0] shr 8)]; + W2 := ForwardTable[Byte(T1[1] shr 16)]; W3 := ForwardTable[Byte(T1[2] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[35]; + // round 9 + W0 := ForwardTable[Byte(T0[0])]; W1 := ForwardTable[Byte(T0[1] shr 8)]; + W2 := ForwardTable[Byte(T0[2] shr 16)]; W3 := ForwardTable[Byte(T0[3] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[36]; + W0 := ForwardTable[Byte(T0[1])]; W1 := ForwardTable[Byte(T0[2] shr 8)]; + W2 := ForwardTable[Byte(T0[3] shr 16)]; W3 := ForwardTable[Byte(T0[0] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[37]; + W0 := ForwardTable[Byte(T0[2])]; W1 := ForwardTable[Byte(T0[3] shr 8)]; + W2 := ForwardTable[Byte(T0[0] shr 16)]; W3 := ForwardTable[Byte(T0[1] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[38]; + W0 := ForwardTable[Byte(T0[3])]; W1 := ForwardTable[Byte(T0[0] shr 8)]; + W2 := ForwardTable[Byte(T0[1] shr 16)]; W3 := ForwardTable[Byte(T0[2] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[39]; + // round 10 + W0 := ForwardTable[Byte(T1[0])]; W1 := ForwardTable[Byte(T1[1] shr 8)]; + W2 := ForwardTable[Byte(T1[2] shr 16)]; W3 := ForwardTable[Byte(T1[3] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[40]; + W0 := ForwardTable[Byte(T1[1])]; W1 := ForwardTable[Byte(T1[2] shr 8)]; + W2 := ForwardTable[Byte(T1[3] shr 16)]; W3 := ForwardTable[Byte(T1[0] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[41]; + W0 := ForwardTable[Byte(T1[2])]; W1 := ForwardTable[Byte(T1[3] shr 8)]; + W2 := ForwardTable[Byte(T1[0] shr 16)]; W3 := ForwardTable[Byte(T1[1] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[42]; + W0 := ForwardTable[Byte(T1[3])]; W1 := ForwardTable[Byte(T1[0] shr 8)]; + W2 := ForwardTable[Byte(T1[1] shr 16)]; W3 := ForwardTable[Byte(T1[2] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[43]; + // round 11 + W0 := ForwardTable[Byte(T0[0])]; W1 := ForwardTable[Byte(T0[1] shr 8)]; + W2 := ForwardTable[Byte(T0[2] shr 16)]; W3 := ForwardTable[Byte(T0[3] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[44]; + W0 := ForwardTable[Byte(T0[1])]; W1 := ForwardTable[Byte(T0[2] shr 8)]; + W2 := ForwardTable[Byte(T0[3] shr 16)]; W3 := ForwardTable[Byte(T0[0] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[45]; + W0 := ForwardTable[Byte(T0[2])]; W1 := ForwardTable[Byte(T0[3] shr 8)]; + W2 := ForwardTable[Byte(T0[0] shr 16)]; W3 := ForwardTable[Byte(T0[1] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[46]; + W0 := ForwardTable[Byte(T0[3])]; W1 := ForwardTable[Byte(T0[0] shr 8)]; + W2 := ForwardTable[Byte(T0[1] shr 16)]; W3 := ForwardTable[Byte(T0[2] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[47]; + // last round of transformations + W0 := LastForwardTable[Byte(T1[0])]; W1 := LastForwardTable[Byte(T1[1] shr 8)]; + W2 := LastForwardTable[Byte(T1[2] shr 16)]; W3 := LastForwardTable[Byte(T1[3] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[48]; + W0 := LastForwardTable[Byte(T1[1])]; W1 := LastForwardTable[Byte(T1[2] shr 8)]; + W2 := LastForwardTable[Byte(T1[3] shr 16)]; W3 := LastForwardTable[Byte(T1[0] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[49]; + W0 := LastForwardTable[Byte(T1[2])]; W1 := LastForwardTable[Byte(T1[3] shr 8)]; + W2 := LastForwardTable[Byte(T1[0] shr 16)]; W3 := LastForwardTable[Byte(T1[1] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[50]; + W0 := LastForwardTable[Byte(T1[3])]; W1 := LastForwardTable[Byte(T1[0] shr 8)]; + W2 := LastForwardTable[Byte(T1[1] shr 16)]; W3 := LastForwardTable[Byte(T1[2] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[51]; + // finalizing + PLongWord(@OutBuf[0])^ := T0[0]; PLongWord(@OutBuf[4])^ := T0[1]; + PLongWord(@OutBuf[8])^ := T0[2]; PLongWord(@OutBuf[12])^ := T0[3]; +end; + +procedure EncryptAES(const InBuf: TAESBuffer; const Key: TAESExpandedKey256; + var OutBuf: TAESBuffer); +var + T0, T1: array [0..3] of longword; + W0, W1, W2, W3: longword; +begin + // initializing + T0[0] := PLongWord(@InBuf[0])^ xor Key[0]; + T0[1] := PLongWord(@InBuf[4])^ xor Key[1]; + T0[2] := PLongWord(@InBuf[8])^ xor Key[2]; + T0[3] := PLongWord(@InBuf[12])^ xor Key[3]; + // performing transformation 13 times + // round 1 + W0 := ForwardTable[Byte(T0[0])]; W1 := ForwardTable[Byte(T0[1] shr 8)]; + W2 := ForwardTable[Byte(T0[2] shr 16)]; W3 := ForwardTable[Byte(T0[3] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[4]; + W0 := ForwardTable[Byte(T0[1])]; W1 := ForwardTable[Byte(T0[2] shr 8)]; + W2 := ForwardTable[Byte(T0[3] shr 16)]; W3 := ForwardTable[Byte(T0[0] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[5]; + W0 := ForwardTable[Byte(T0[2])]; W1 := ForwardTable[Byte(T0[3] shr 8)]; + W2 := ForwardTable[Byte(T0[0] shr 16)]; W3 := ForwardTable[Byte(T0[1] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[6]; + W0 := ForwardTable[Byte(T0[3])]; W1 := ForwardTable[Byte(T0[0] shr 8)]; + W2 := ForwardTable[Byte(T0[1] shr 16)]; W3 := ForwardTable[Byte(T0[2] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[7]; + // round 2 + W0 := ForwardTable[Byte(T1[0])]; W1 := ForwardTable[Byte(T1[1] shr 8)]; + W2 := ForwardTable[Byte(T1[2] shr 16)]; W3 := ForwardTable[Byte(T1[3] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[8]; + W0 := ForwardTable[Byte(T1[1])]; W1 := ForwardTable[Byte(T1[2] shr 8)]; + W2 := ForwardTable[Byte(T1[3] shr 16)]; W3 := ForwardTable[Byte(T1[0] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[9]; + W0 := ForwardTable[Byte(T1[2])]; W1 := ForwardTable[Byte(T1[3] shr 8)]; + W2 := ForwardTable[Byte(T1[0] shr 16)]; W3 := ForwardTable[Byte(T1[1] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[10]; + W0 := ForwardTable[Byte(T1[3])]; W1 := ForwardTable[Byte(T1[0] shr 8)]; + W2 := ForwardTable[Byte(T1[1] shr 16)]; W3 := ForwardTable[Byte(T1[2] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[11]; + // round 3 + W0 := ForwardTable[Byte(T0[0])]; W1 := ForwardTable[Byte(T0[1] shr 8)]; + W2 := ForwardTable[Byte(T0[2] shr 16)]; W3 := ForwardTable[Byte(T0[3] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[12]; + W0 := ForwardTable[Byte(T0[1])]; W1 := ForwardTable[Byte(T0[2] shr 8)]; + W2 := ForwardTable[Byte(T0[3] shr 16)]; W3 := ForwardTable[Byte(T0[0] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[13]; + W0 := ForwardTable[Byte(T0[2])]; W1 := ForwardTable[Byte(T0[3] shr 8)]; + W2 := ForwardTable[Byte(T0[0] shr 16)]; W3 := ForwardTable[Byte(T0[1] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[14]; + W0 := ForwardTable[Byte(T0[3])]; W1 := ForwardTable[Byte(T0[0] shr 8)]; + W2 := ForwardTable[Byte(T0[1] shr 16)]; W3 := ForwardTable[Byte(T0[2] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[15]; + // round 4 + W0 := ForwardTable[Byte(T1[0])]; W1 := ForwardTable[Byte(T1[1] shr 8)]; + W2 := ForwardTable[Byte(T1[2] shr 16)]; W3 := ForwardTable[Byte(T1[3] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[16]; + W0 := ForwardTable[Byte(T1[1])]; W1 := ForwardTable[Byte(T1[2] shr 8)]; + W2 := ForwardTable[Byte(T1[3] shr 16)]; W3 := ForwardTable[Byte(T1[0] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[17]; + W0 := ForwardTable[Byte(T1[2])]; W1 := ForwardTable[Byte(T1[3] shr 8)]; + W2 := ForwardTable[Byte(T1[0] shr 16)]; W3 := ForwardTable[Byte(T1[1] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[18]; + W0 := ForwardTable[Byte(T1[3])]; W1 := ForwardTable[Byte(T1[0] shr 8)]; + W2 := ForwardTable[Byte(T1[1] shr 16)]; W3 := ForwardTable[Byte(T1[2] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[19]; + // round 5 + W0 := ForwardTable[Byte(T0[0])]; W1 := ForwardTable[Byte(T0[1] shr 8)]; + W2 := ForwardTable[Byte(T0[2] shr 16)]; W3 := ForwardTable[Byte(T0[3] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[20]; + W0 := ForwardTable[Byte(T0[1])]; W1 := ForwardTable[Byte(T0[2] shr 8)]; + W2 := ForwardTable[Byte(T0[3] shr 16)]; W3 := ForwardTable[Byte(T0[0] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[21]; + W0 := ForwardTable[Byte(T0[2])]; W1 := ForwardTable[Byte(T0[3] shr 8)]; + W2 := ForwardTable[Byte(T0[0] shr 16)]; W3 := ForwardTable[Byte(T0[1] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[22]; + W0 := ForwardTable[Byte(T0[3])]; W1 := ForwardTable[Byte(T0[0] shr 8)]; + W2 := ForwardTable[Byte(T0[1] shr 16)]; W3 := ForwardTable[Byte(T0[2] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[23]; + // round 6 + W0 := ForwardTable[Byte(T1[0])]; W1 := ForwardTable[Byte(T1[1] shr 8)]; + W2 := ForwardTable[Byte(T1[2] shr 16)]; W3 := ForwardTable[Byte(T1[3] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[24]; + W0 := ForwardTable[Byte(T1[1])]; W1 := ForwardTable[Byte(T1[2] shr 8)]; + W2 := ForwardTable[Byte(T1[3] shr 16)]; W3 := ForwardTable[Byte(T1[0] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[25]; + W0 := ForwardTable[Byte(T1[2])]; W1 := ForwardTable[Byte(T1[3] shr 8)]; + W2 := ForwardTable[Byte(T1[0] shr 16)]; W3 := ForwardTable[Byte(T1[1] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[26]; + W0 := ForwardTable[Byte(T1[3])]; W1 := ForwardTable[Byte(T1[0] shr 8)]; + W2 := ForwardTable[Byte(T1[1] shr 16)]; W3 := ForwardTable[Byte(T1[2] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[27]; + // round 7 + W0 := ForwardTable[Byte(T0[0])]; W1 := ForwardTable[Byte(T0[1] shr 8)]; + W2 := ForwardTable[Byte(T0[2] shr 16)]; W3 := ForwardTable[Byte(T0[3] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[28]; + W0 := ForwardTable[Byte(T0[1])]; W1 := ForwardTable[Byte(T0[2] shr 8)]; + W2 := ForwardTable[Byte(T0[3] shr 16)]; W3 := ForwardTable[Byte(T0[0] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[29]; + W0 := ForwardTable[Byte(T0[2])]; W1 := ForwardTable[Byte(T0[3] shr 8)]; + W2 := ForwardTable[Byte(T0[0] shr 16)]; W3 := ForwardTable[Byte(T0[1] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[30]; + W0 := ForwardTable[Byte(T0[3])]; W1 := ForwardTable[Byte(T0[0] shr 8)]; + W2 := ForwardTable[Byte(T0[1] shr 16)]; W3 := ForwardTable[Byte(T0[2] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[31]; + // round 8 + W0 := ForwardTable[Byte(T1[0])]; W1 := ForwardTable[Byte(T1[1] shr 8)]; + W2 := ForwardTable[Byte(T1[2] shr 16)]; W3 := ForwardTable[Byte(T1[3] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[32]; + W0 := ForwardTable[Byte(T1[1])]; W1 := ForwardTable[Byte(T1[2] shr 8)]; + W2 := ForwardTable[Byte(T1[3] shr 16)]; W3 := ForwardTable[Byte(T1[0] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[33]; + W0 := ForwardTable[Byte(T1[2])]; W1 := ForwardTable[Byte(T1[3] shr 8)]; + W2 := ForwardTable[Byte(T1[0] shr 16)]; W3 := ForwardTable[Byte(T1[1] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[34]; + W0 := ForwardTable[Byte(T1[3])]; W1 := ForwardTable[Byte(T1[0] shr 8)]; + W2 := ForwardTable[Byte(T1[1] shr 16)]; W3 := ForwardTable[Byte(T1[2] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[35]; + // round 9 + W0 := ForwardTable[Byte(T0[0])]; W1 := ForwardTable[Byte(T0[1] shr 8)]; + W2 := ForwardTable[Byte(T0[2] shr 16)]; W3 := ForwardTable[Byte(T0[3] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[36]; + W0 := ForwardTable[Byte(T0[1])]; W1 := ForwardTable[Byte(T0[2] shr 8)]; + W2 := ForwardTable[Byte(T0[3] shr 16)]; W3 := ForwardTable[Byte(T0[0] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[37]; + W0 := ForwardTable[Byte(T0[2])]; W1 := ForwardTable[Byte(T0[3] shr 8)]; + W2 := ForwardTable[Byte(T0[0] shr 16)]; W3 := ForwardTable[Byte(T0[1] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[38]; + W0 := ForwardTable[Byte(T0[3])]; W1 := ForwardTable[Byte(T0[0] shr 8)]; + W2 := ForwardTable[Byte(T0[1] shr 16)]; W3 := ForwardTable[Byte(T0[2] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[39]; + // round 10 + W0 := ForwardTable[Byte(T1[0])]; W1 := ForwardTable[Byte(T1[1] shr 8)]; + W2 := ForwardTable[Byte(T1[2] shr 16)]; W3 := ForwardTable[Byte(T1[3] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[40]; + W0 := ForwardTable[Byte(T1[1])]; W1 := ForwardTable[Byte(T1[2] shr 8)]; + W2 := ForwardTable[Byte(T1[3] shr 16)]; W3 := ForwardTable[Byte(T1[0] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[41]; + W0 := ForwardTable[Byte(T1[2])]; W1 := ForwardTable[Byte(T1[3] shr 8)]; + W2 := ForwardTable[Byte(T1[0] shr 16)]; W3 := ForwardTable[Byte(T1[1] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[42]; + W0 := ForwardTable[Byte(T1[3])]; W1 := ForwardTable[Byte(T1[0] shr 8)]; + W2 := ForwardTable[Byte(T1[1] shr 16)]; W3 := ForwardTable[Byte(T1[2] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[43]; + // round 11 + W0 := ForwardTable[Byte(T0[0])]; W1 := ForwardTable[Byte(T0[1] shr 8)]; + W2 := ForwardTable[Byte(T0[2] shr 16)]; W3 := ForwardTable[Byte(T0[3] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[44]; + W0 := ForwardTable[Byte(T0[1])]; W1 := ForwardTable[Byte(T0[2] shr 8)]; + W2 := ForwardTable[Byte(T0[3] shr 16)]; W3 := ForwardTable[Byte(T0[0] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[45]; + W0 := ForwardTable[Byte(T0[2])]; W1 := ForwardTable[Byte(T0[3] shr 8)]; + W2 := ForwardTable[Byte(T0[0] shr 16)]; W3 := ForwardTable[Byte(T0[1] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[46]; + W0 := ForwardTable[Byte(T0[3])]; W1 := ForwardTable[Byte(T0[0] shr 8)]; + W2 := ForwardTable[Byte(T0[1] shr 16)]; W3 := ForwardTable[Byte(T0[2] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[47]; + // round 12 + W0 := ForwardTable[Byte(T1[0])]; W1 := ForwardTable[Byte(T1[1] shr 8)]; + W2 := ForwardTable[Byte(T1[2] shr 16)]; W3 := ForwardTable[Byte(T1[3] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[48]; + W0 := ForwardTable[Byte(T1[1])]; W1 := ForwardTable[Byte(T1[2] shr 8)]; + W2 := ForwardTable[Byte(T1[3] shr 16)]; W3 := ForwardTable[Byte(T1[0] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[49]; + W0 := ForwardTable[Byte(T1[2])]; W1 := ForwardTable[Byte(T1[3] shr 8)]; + W2 := ForwardTable[Byte(T1[0] shr 16)]; W3 := ForwardTable[Byte(T1[1] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[50]; + W0 := ForwardTable[Byte(T1[3])]; W1 := ForwardTable[Byte(T1[0] shr 8)]; + W2 := ForwardTable[Byte(T1[1] shr 16)]; W3 := ForwardTable[Byte(T1[2] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[51]; + // round 13 + W0 := ForwardTable[Byte(T0[0])]; W1 := ForwardTable[Byte(T0[1] shr 8)]; + W2 := ForwardTable[Byte(T0[2] shr 16)]; W3 := ForwardTable[Byte(T0[3] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[52]; + W0 := ForwardTable[Byte(T0[1])]; W1 := ForwardTable[Byte(T0[2] shr 8)]; + W2 := ForwardTable[Byte(T0[3] shr 16)]; W3 := ForwardTable[Byte(T0[0] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[53]; + W0 := ForwardTable[Byte(T0[2])]; W1 := ForwardTable[Byte(T0[3] shr 8)]; + W2 := ForwardTable[Byte(T0[0] shr 16)]; W3 := ForwardTable[Byte(T0[1] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[54]; + W0 := ForwardTable[Byte(T0[3])]; W1 := ForwardTable[Byte(T0[0] shr 8)]; + W2 := ForwardTable[Byte(T0[1] shr 16)]; W3 := ForwardTable[Byte(T0[2] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[55]; + // last round of transformations + W0 := LastForwardTable[Byte(T1[0])]; W1 := LastForwardTable[Byte(T1[1] shr 8)]; + W2 := LastForwardTable[Byte(T1[2] shr 16)]; W3 := LastForwardTable[Byte(T1[3] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[56]; + W0 := LastForwardTable[Byte(T1[1])]; W1 := LastForwardTable[Byte(T1[2] shr 8)]; + W2 := LastForwardTable[Byte(T1[3] shr 16)]; W3 := LastForwardTable[Byte(T1[0] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[57]; + W0 := LastForwardTable[Byte(T1[2])]; W1 := LastForwardTable[Byte(T1[3] shr 8)]; + W2 := LastForwardTable[Byte(T1[0] shr 16)]; W3 := LastForwardTable[Byte(T1[1] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[58]; + W0 := LastForwardTable[Byte(T1[3])]; W1 := LastForwardTable[Byte(T1[0] shr 8)]; + W2 := LastForwardTable[Byte(T1[1] shr 16)]; W3 := LastForwardTable[Byte(T1[2] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[59]; + // finalizing + PLongWord(@OutBuf[0])^ := T0[0]; PLongWord(@OutBuf[4])^ := T0[1]; + PLongWord(@OutBuf[8])^ := T0[2]; PLongWord(@OutBuf[12])^ := T0[3]; +end; + +procedure ExpandAESKeyForDecryption(var ExpandedKey: TAESExpandedKey128); +var + I: integer; + U, F2, F4, F8, F9: longword; +begin + for I := 1 to 9 do + begin + F9 := ExpandedKey[I * 4]; + U := F9 and $80808080; + F2 := ((F9 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F2 and $80808080; + F4 := ((F2 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F4 and $80808080; + F8 := ((F4 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + F9 := F9 xor F8; + ExpandedKey[I * 4] := F2 xor F4 xor F8 xor + (((F2 xor F9) shl 24) or ((F2 xor F9) shr 8)) xor + (((F4 xor F9) shl 16) or ((F4 xor F9) shr 16)) xor ((F9 shl 8) or (F9 shr 24)); + F9 := ExpandedKey[I * 4 + 1]; + U := F9 and $80808080; + F2 := ((F9 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F2 and $80808080; + F4 := ((F2 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F4 and $80808080; + F8 := ((F4 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + F9 := F9 xor F8; + ExpandedKey[I * 4 + 1] := F2 xor F4 xor F8 xor + (((F2 xor F9) shl 24) or ((F2 xor F9) shr 8)) xor + (((F4 xor F9) shl 16) or ((F4 xor F9) shr 16)) xor ((F9 shl 8) or (F9 shr 24)); + F9 := ExpandedKey[I * 4 + 2]; + U := F9 and $80808080; + F2 := ((F9 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F2 and $80808080; + F4 := ((F2 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F4 and $80808080; + F8 := ((F4 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + F9 := F9 xor F8; + ExpandedKey[I * 4 + 2] := F2 xor F4 xor F8 xor + (((F2 xor F9) shl 24) or ((F2 xor F9) shr 8)) xor + (((F4 xor F9) shl 16) or ((F4 xor F9) shr 16)) xor ((F9 shl 8) or (F9 shr 24)); + F9 := ExpandedKey[I * 4 + 3]; + U := F9 and $80808080; + F2 := ((F9 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F2 and $80808080; + F4 := ((F2 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F4 and $80808080; + F8 := ((F4 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + F9 := F9 xor F8; + ExpandedKey[I * 4 + 3] := F2 xor F4 xor F8 xor + (((F2 xor F9) shl 24) or ((F2 xor F9) shr 8)) xor + (((F4 xor F9) shl 16) or ((F4 xor F9) shr 16)) xor ((F9 shl 8) or (F9 shr 24)); + end; +end; + +procedure ExpandAESKeyForDecryption(const Key: TAESKey128; var ExpandedKey: TAESExpandedKey128); +begin + ExpandAESKeyForEncryption(Key, ExpandedKey); + ExpandAESKeyForDecryption(ExpandedKey); +end; + +procedure ExpandAESKeyForDecryption(var ExpandedKey: TAESExpandedKey192); +var + I: integer; + U, F2, F4, F8, F9: longword; +begin + for I := 1 to 11 do + begin + F9 := ExpandedKey[I * 4]; + U := F9 and $80808080; + F2 := ((F9 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F2 and $80808080; + F4 := ((F2 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F4 and $80808080; + F8 := ((F4 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + F9 := F9 xor F8; + ExpandedKey[I * 4] := F2 xor F4 xor F8 xor + (((F2 xor F9) shl 24) or ((F2 xor F9) shr 8)) xor + (((F4 xor F9) shl 16) or ((F4 xor F9) shr 16)) xor ((F9 shl 8) or (F9 shr 24)); + F9 := ExpandedKey[I * 4 + 1]; + U := F9 and $80808080; + F2 := ((F9 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F2 and $80808080; + F4 := ((F2 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F4 and $80808080; + F8 := ((F4 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + F9 := F9 xor F8; + ExpandedKey[I * 4 + 1] := F2 xor F4 xor F8 xor + (((F2 xor F9) shl 24) or ((F2 xor F9) shr 8)) xor + (((F4 xor F9) shl 16) or ((F4 xor F9) shr 16)) xor ((F9 shl 8) or (F9 shr 24)); + F9 := ExpandedKey[I * 4 + 2]; + U := F9 and $80808080; + F2 := ((F9 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F2 and $80808080; + F4 := ((F2 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F4 and $80808080; + F8 := ((F4 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + F9 := F9 xor F8; + ExpandedKey[I * 4 + 2] := F2 xor F4 xor F8 xor + (((F2 xor F9) shl 24) or ((F2 xor F9) shr 8)) xor + (((F4 xor F9) shl 16) or ((F4 xor F9) shr 16)) xor ((F9 shl 8) or (F9 shr 24)); + F9 := ExpandedKey[I * 4 + 3]; + U := F9 and $80808080; + F2 := ((F9 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F2 and $80808080; + F4 := ((F2 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F4 and $80808080; + F8 := ((F4 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + F9 := F9 xor F8; + ExpandedKey[I * 4 + 3] := F2 xor F4 xor F8 xor + (((F2 xor F9) shl 24) or ((F2 xor F9) shr 8)) xor + (((F4 xor F9) shl 16) or ((F4 xor F9) shr 16)) xor ((F9 shl 8) or (F9 shr 24)); + end; +end; + +procedure ExpandAESKeyForDecryption(const Key: TAESKey192; var ExpandedKey: TAESExpandedKey192); +begin + ExpandAESKeyForEncryption(Key, ExpandedKey); + ExpandAESKeyForDecryption(ExpandedKey); +end; + +procedure ExpandAESKeyForDecryption(var ExpandedKey: TAESExpandedKey256); +var + I: integer; + U, F2, F4, F8, F9: longword; +begin + for I := 1 to 13 do + begin + F9 := ExpandedKey[I * 4]; + U := F9 and $80808080; + F2 := ((F9 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F2 and $80808080; + F4 := ((F2 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F4 and $80808080; + F8 := ((F4 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + F9 := F9 xor F8; + ExpandedKey[I * 4] := F2 xor F4 xor F8 xor + (((F2 xor F9) shl 24) or ((F2 xor F9) shr 8)) xor + (((F4 xor F9) shl 16) or ((F4 xor F9) shr 16)) xor ((F9 shl 8) or (F9 shr 24)); + F9 := ExpandedKey[I * 4 + 1]; + U := F9 and $80808080; + F2 := ((F9 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F2 and $80808080; + F4 := ((F2 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F4 and $80808080; + F8 := ((F4 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + F9 := F9 xor F8; + ExpandedKey[I * 4 + 1] := F2 xor F4 xor F8 xor + (((F2 xor F9) shl 24) or ((F2 xor F9) shr 8)) xor + (((F4 xor F9) shl 16) or ((F4 xor F9) shr 16)) xor ((F9 shl 8) or (F9 shr 24)); + F9 := ExpandedKey[I * 4 + 2]; + U := F9 and $80808080; + F2 := ((F9 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F2 and $80808080; + F4 := ((F2 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F4 and $80808080; + F8 := ((F4 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + F9 := F9 xor F8; + ExpandedKey[I * 4 + 2] := F2 xor F4 xor F8 xor + (((F2 xor F9) shl 24) or ((F2 xor F9) shr 8)) xor + (((F4 xor F9) shl 16) or ((F4 xor F9) shr 16)) xor ((F9 shl 8) or (F9 shr 24)); + F9 := ExpandedKey[I * 4 + 3]; + U := F9 and $80808080; + F2 := ((F9 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F2 and $80808080; + F4 := ((F2 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + U := F4 and $80808080; + F8 := ((F4 and $7F7F7F7F) shl 1) xor ((U - (U shr 7)) and $1B1B1B1B); + F9 := F9 xor F8; + ExpandedKey[I * 4 + 3] := F2 xor F4 xor F8 xor + (((F2 xor F9) shl 24) or ((F2 xor F9) shr 8)) xor + (((F4 xor F9) shl 16) or ((F4 xor F9) shr 16)) xor ((F9 shl 8) or (F9 shr 24)); + end; +end; + +procedure ExpandAESKeyForDecryption(const Key: TAESKey256; var ExpandedKey: TAESExpandedKey256); +begin + ExpandAESKeyForEncryption(Key, ExpandedKey); + ExpandAESKeyForDecryption(ExpandedKey); +end; + +procedure DecryptAES(const InBuf: TAESBuffer; const Key: TAESExpandedKey128; + var OutBuf: TAESBuffer); +var + T0, T1: array [0..3] of longword; + W0, W1, W2, W3: longword; +begin + // initializing + T0[0] := PLongWord(@InBuf[0])^ xor Key[40]; + T0[1] := PLongWord(@InBuf[4])^ xor Key[41]; + T0[2] := PLongWord(@InBuf[8])^ xor Key[42]; + T0[3] := PLongWord(@InBuf[12])^ xor Key[43]; + // performing transformations 9 times + // round 1 + W0 := InverseTable[Byte(T0[0])]; W1 := InverseTable[Byte(T0[3] shr 8)]; + W2 := InverseTable[Byte(T0[2] shr 16)]; W3 := InverseTable[Byte(T0[1] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[36]; + W0 := InverseTable[Byte(T0[1])]; W1 := InverseTable[Byte(T0[0] shr 8)]; + W2 := InverseTable[Byte(T0[3] shr 16)]; W3 := InverseTable[Byte(T0[2] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[37]; + W0 := InverseTable[Byte(T0[2])]; W1 := InverseTable[Byte(T0[1] shr 8)]; + W2 := InverseTable[Byte(T0[0] shr 16)]; W3 := InverseTable[Byte(T0[3] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[38]; + W0 := InverseTable[Byte(T0[3])]; W1 := InverseTable[Byte(T0[2] shr 8)]; + W2 := InverseTable[Byte(T0[1] shr 16)]; W3 := InverseTable[Byte(T0[0] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[39]; + // round 2 + W0 := InverseTable[Byte(T1[0])]; W1 := InverseTable[Byte(T1[3] shr 8)]; + W2 := InverseTable[Byte(T1[2] shr 16)]; W3 := InverseTable[Byte(T1[1] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[32]; + W0 := InverseTable[Byte(T1[1])]; W1 := InverseTable[Byte(T1[0] shr 8)]; + W2 := InverseTable[Byte(T1[3] shr 16)]; W3 := InverseTable[Byte(T1[2] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[33]; + W0 := InverseTable[Byte(T1[2])]; W1 := InverseTable[Byte(T1[1] shr 8)]; + W2 := InverseTable[Byte(T1[0] shr 16)]; W3 := InverseTable[Byte(T1[3] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[34]; + W0 := InverseTable[Byte(T1[3])]; W1 := InverseTable[Byte(T1[2] shr 8)]; + W2 := InverseTable[Byte(T1[1] shr 16)]; W3 := InverseTable[Byte(T1[0] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[35]; + // round 3 + W0 := InverseTable[Byte(T0[0])]; W1 := InverseTable[Byte(T0[3] shr 8)]; + W2 := InverseTable[Byte(T0[2] shr 16)]; W3 := InverseTable[Byte(T0[1] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[28]; + W0 := InverseTable[Byte(T0[1])]; W1 := InverseTable[Byte(T0[0] shr 8)]; + W2 := InverseTable[Byte(T0[3] shr 16)]; W3 := InverseTable[Byte(T0[2] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[29]; + W0 := InverseTable[Byte(T0[2])]; W1 := InverseTable[Byte(T0[1] shr 8)]; + W2 := InverseTable[Byte(T0[0] shr 16)]; W3 := InverseTable[Byte(T0[3] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[30]; + W0 := InverseTable[Byte(T0[3])]; W1 := InverseTable[Byte(T0[2] shr 8)]; + W2 := InverseTable[Byte(T0[1] shr 16)]; W3 := InverseTable[Byte(T0[0] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[31]; + // round 4 + W0 := InverseTable[Byte(T1[0])]; W1 := InverseTable[Byte(T1[3] shr 8)]; + W2 := InverseTable[Byte(T1[2] shr 16)]; W3 := InverseTable[Byte(T1[1] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[24]; + W0 := InverseTable[Byte(T1[1])]; W1 := InverseTable[Byte(T1[0] shr 8)]; + W2 := InverseTable[Byte(T1[3] shr 16)]; W3 := InverseTable[Byte(T1[2] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[25]; + W0 := InverseTable[Byte(T1[2])]; W1 := InverseTable[Byte(T1[1] shr 8)]; + W2 := InverseTable[Byte(T1[0] shr 16)]; W3 := InverseTable[Byte(T1[3] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[26]; + W0 := InverseTable[Byte(T1[3])]; W1 := InverseTable[Byte(T1[2] shr 8)]; + W2 := InverseTable[Byte(T1[1] shr 16)]; W3 := InverseTable[Byte(T1[0] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[27]; + // round 5 + W0 := InverseTable[Byte(T0[0])]; W1 := InverseTable[Byte(T0[3] shr 8)]; + W2 := InverseTable[Byte(T0[2] shr 16)]; W3 := InverseTable[Byte(T0[1] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[20]; + W0 := InverseTable[Byte(T0[1])]; W1 := InverseTable[Byte(T0[0] shr 8)]; + W2 := InverseTable[Byte(T0[3] shr 16)]; W3 := InverseTable[Byte(T0[2] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[21]; + W0 := InverseTable[Byte(T0[2])]; W1 := InverseTable[Byte(T0[1] shr 8)]; + W2 := InverseTable[Byte(T0[0] shr 16)]; W3 := InverseTable[Byte(T0[3] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[22]; + W0 := InverseTable[Byte(T0[3])]; W1 := InverseTable[Byte(T0[2] shr 8)]; + W2 := InverseTable[Byte(T0[1] shr 16)]; W3 := InverseTable[Byte(T0[0] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[23]; + // round 6 + W0 := InverseTable[Byte(T1[0])]; W1 := InverseTable[Byte(T1[3] shr 8)]; + W2 := InverseTable[Byte(T1[2] shr 16)]; W3 := InverseTable[Byte(T1[1] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[16]; + W0 := InverseTable[Byte(T1[1])]; W1 := InverseTable[Byte(T1[0] shr 8)]; + W2 := InverseTable[Byte(T1[3] shr 16)]; W3 := InverseTable[Byte(T1[2] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[17]; + W0 := InverseTable[Byte(T1[2])]; W1 := InverseTable[Byte(T1[1] shr 8)]; + W2 := InverseTable[Byte(T1[0] shr 16)]; W3 := InverseTable[Byte(T1[3] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[18]; + W0 := InverseTable[Byte(T1[3])]; W1 := InverseTable[Byte(T1[2] shr 8)]; + W2 := InverseTable[Byte(T1[1] shr 16)]; W3 := InverseTable[Byte(T1[0] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[19]; + // round 7 + W0 := InverseTable[Byte(T0[0])]; W1 := InverseTable[Byte(T0[3] shr 8)]; + W2 := InverseTable[Byte(T0[2] shr 16)]; W3 := InverseTable[Byte(T0[1] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[12]; + W0 := InverseTable[Byte(T0[1])]; W1 := InverseTable[Byte(T0[0] shr 8)]; + W2 := InverseTable[Byte(T0[3] shr 16)]; W3 := InverseTable[Byte(T0[2] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[13]; + W0 := InverseTable[Byte(T0[2])]; W1 := InverseTable[Byte(T0[1] shr 8)]; + W2 := InverseTable[Byte(T0[0] shr 16)]; W3 := InverseTable[Byte(T0[3] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[14]; + W0 := InverseTable[Byte(T0[3])]; W1 := InverseTable[Byte(T0[2] shr 8)]; + W2 := InverseTable[Byte(T0[1] shr 16)]; W3 := InverseTable[Byte(T0[0] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[15]; + // round 8 + W0 := InverseTable[Byte(T1[0])]; W1 := InverseTable[Byte(T1[3] shr 8)]; + W2 := InverseTable[Byte(T1[2] shr 16)]; W3 := InverseTable[Byte(T1[1] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[8]; + W0 := InverseTable[Byte(T1[1])]; W1 := InverseTable[Byte(T1[0] shr 8)]; + W2 := InverseTable[Byte(T1[3] shr 16)]; W3 := InverseTable[Byte(T1[2] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[9]; + W0 := InverseTable[Byte(T1[2])]; W1 := InverseTable[Byte(T1[1] shr 8)]; + W2 := InverseTable[Byte(T1[0] shr 16)]; W3 := InverseTable[Byte(T1[3] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[10]; + W0 := InverseTable[Byte(T1[3])]; W1 := InverseTable[Byte(T1[2] shr 8)]; + W2 := InverseTable[Byte(T1[1] shr 16)]; W3 := InverseTable[Byte(T1[0] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[11]; + // round 9 + W0 := InverseTable[Byte(T0[0])]; W1 := InverseTable[Byte(T0[3] shr 8)]; + W2 := InverseTable[Byte(T0[2] shr 16)]; W3 := InverseTable[Byte(T0[1] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[4]; + W0 := InverseTable[Byte(T0[1])]; W1 := InverseTable[Byte(T0[0] shr 8)]; + W2 := InverseTable[Byte(T0[3] shr 16)]; W3 := InverseTable[Byte(T0[2] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[5]; + W0 := InverseTable[Byte(T0[2])]; W1 := InverseTable[Byte(T0[1] shr 8)]; + W2 := InverseTable[Byte(T0[0] shr 16)]; W3 := InverseTable[Byte(T0[3] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[6]; + W0 := InverseTable[Byte(T0[3])]; W1 := InverseTable[Byte(T0[2] shr 8)]; + W2 := InverseTable[Byte(T0[1] shr 16)]; W3 := InverseTable[Byte(T0[0] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[7]; + // last round of transformations + W0 := LastInverseTable[Byte(T1[0])]; W1 := LastInverseTable[Byte(T1[3] shr 8)]; + W2 := LastInverseTable[Byte(T1[2] shr 16)]; W3 := LastInverseTable[Byte(T1[1] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[0]; + W0 := LastInverseTable[Byte(T1[1])]; W1 := LastInverseTable[Byte(T1[0] shr 8)]; + W2 := LastInverseTable[Byte(T1[3] shr 16)]; W3 := LastInverseTable[Byte(T1[2] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[1]; + W0 := LastInverseTable[Byte(T1[2])]; W1 := LastInverseTable[Byte(T1[1] shr 8)]; + W2 := LastInverseTable[Byte(T1[0] shr 16)]; W3 := LastInverseTable[Byte(T1[3] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[2]; + W0 := LastInverseTable[Byte(T1[3])]; W1 := LastInverseTable[Byte(T1[2] shr 8)]; + W2 := LastInverseTable[Byte(T1[1] shr 16)]; W3 := LastInverseTable[Byte(T1[0] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[3]; + // finalizing + PLongWord(@OutBuf[0])^ := T0[0]; PLongWord(@OutBuf[4])^ := T0[1]; + PLongWord(@OutBuf[8])^ := T0[2]; PLongWord(@OutBuf[12])^ := T0[3]; +end; + +procedure DecryptAES(const InBuf: TAESBuffer; const Key: TAESExpandedKey192; + var OutBuf: TAESBuffer); +var + T0, T1: array [0..3] of longword; + W0, W1, W2, W3: longword; +begin + // initializing + T0[0] := PLongWord(@InBuf[0])^ xor Key[48]; + T0[1] := PLongWord(@InBuf[4])^ xor Key[49]; + T0[2] := PLongWord(@InBuf[8])^ xor Key[50]; + T0[3] := PLongWord(@InBuf[12])^ xor Key[51]; + // performing transformations 11 times + // round 1 + W0 := InverseTable[Byte(T0[0])]; W1 := InverseTable[Byte(T0[3] shr 8)]; + W2 := InverseTable[Byte(T0[2] shr 16)]; W3 := InverseTable[Byte(T0[1] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[44]; + W0 := InverseTable[Byte(T0[1])]; W1 := InverseTable[Byte(T0[0] shr 8)]; + W2 := InverseTable[Byte(T0[3] shr 16)]; W3 := InverseTable[Byte(T0[2] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[45]; + W0 := InverseTable[Byte(T0[2])]; W1 := InverseTable[Byte(T0[1] shr 8)]; + W2 := InverseTable[Byte(T0[0] shr 16)]; W3 := InverseTable[Byte(T0[3] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[46]; + W0 := InverseTable[Byte(T0[3])]; W1 := InverseTable[Byte(T0[2] shr 8)]; + W2 := InverseTable[Byte(T0[1] shr 16)]; W3 := InverseTable[Byte(T0[0] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[47]; + // round 2 + W0 := InverseTable[Byte(T1[0])]; W1 := InverseTable[Byte(T1[3] shr 8)]; + W2 := InverseTable[Byte(T1[2] shr 16)]; W3 := InverseTable[Byte(T1[1] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[40]; + W0 := InverseTable[Byte(T1[1])]; W1 := InverseTable[Byte(T1[0] shr 8)]; + W2 := InverseTable[Byte(T1[3] shr 16)]; W3 := InverseTable[Byte(T1[2] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[41]; + W0 := InverseTable[Byte(T1[2])]; W1 := InverseTable[Byte(T1[1] shr 8)]; + W2 := InverseTable[Byte(T1[0] shr 16)]; W3 := InverseTable[Byte(T1[3] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[42]; + W0 := InverseTable[Byte(T1[3])]; W1 := InverseTable[Byte(T1[2] shr 8)]; + W2 := InverseTable[Byte(T1[1] shr 16)]; W3 := InverseTable[Byte(T1[0] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[43]; + // round 3 + W0 := InverseTable[Byte(T0[0])]; W1 := InverseTable[Byte(T0[3] shr 8)]; + W2 := InverseTable[Byte(T0[2] shr 16)]; W3 := InverseTable[Byte(T0[1] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[36]; + W0 := InverseTable[Byte(T0[1])]; W1 := InverseTable[Byte(T0[0] shr 8)]; + W2 := InverseTable[Byte(T0[3] shr 16)]; W3 := InverseTable[Byte(T0[2] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[37]; + W0 := InverseTable[Byte(T0[2])]; W1 := InverseTable[Byte(T0[1] shr 8)]; + W2 := InverseTable[Byte(T0[0] shr 16)]; W3 := InverseTable[Byte(T0[3] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[38]; + W0 := InverseTable[Byte(T0[3])]; W1 := InverseTable[Byte(T0[2] shr 8)]; + W2 := InverseTable[Byte(T0[1] shr 16)]; W3 := InverseTable[Byte(T0[0] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[39]; + // round 4 + W0 := InverseTable[Byte(T1[0])]; W1 := InverseTable[Byte(T1[3] shr 8)]; + W2 := InverseTable[Byte(T1[2] shr 16)]; W3 := InverseTable[Byte(T1[1] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[32]; + W0 := InverseTable[Byte(T1[1])]; W1 := InverseTable[Byte(T1[0] shr 8)]; + W2 := InverseTable[Byte(T1[3] shr 16)]; W3 := InverseTable[Byte(T1[2] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[33]; + W0 := InverseTable[Byte(T1[2])]; W1 := InverseTable[Byte(T1[1] shr 8)]; + W2 := InverseTable[Byte(T1[0] shr 16)]; W3 := InverseTable[Byte(T1[3] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[34]; + W0 := InverseTable[Byte(T1[3])]; W1 := InverseTable[Byte(T1[2] shr 8)]; + W2 := InverseTable[Byte(T1[1] shr 16)]; W3 := InverseTable[Byte(T1[0] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[35]; + // round 5 + W0 := InverseTable[Byte(T0[0])]; W1 := InverseTable[Byte(T0[3] shr 8)]; + W2 := InverseTable[Byte(T0[2] shr 16)]; W3 := InverseTable[Byte(T0[1] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[28]; + W0 := InverseTable[Byte(T0[1])]; W1 := InverseTable[Byte(T0[0] shr 8)]; + W2 := InverseTable[Byte(T0[3] shr 16)]; W3 := InverseTable[Byte(T0[2] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[29]; + W0 := InverseTable[Byte(T0[2])]; W1 := InverseTable[Byte(T0[1] shr 8)]; + W2 := InverseTable[Byte(T0[0] shr 16)]; W3 := InverseTable[Byte(T0[3] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[30]; + W0 := InverseTable[Byte(T0[3])]; W1 := InverseTable[Byte(T0[2] shr 8)]; + W2 := InverseTable[Byte(T0[1] shr 16)]; W3 := InverseTable[Byte(T0[0] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[31]; + // round 6 + W0 := InverseTable[Byte(T1[0])]; W1 := InverseTable[Byte(T1[3] shr 8)]; + W2 := InverseTable[Byte(T1[2] shr 16)]; W3 := InverseTable[Byte(T1[1] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[24]; + W0 := InverseTable[Byte(T1[1])]; W1 := InverseTable[Byte(T1[0] shr 8)]; + W2 := InverseTable[Byte(T1[3] shr 16)]; W3 := InverseTable[Byte(T1[2] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[25]; + W0 := InverseTable[Byte(T1[2])]; W1 := InverseTable[Byte(T1[1] shr 8)]; + W2 := InverseTable[Byte(T1[0] shr 16)]; W3 := InverseTable[Byte(T1[3] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[26]; + W0 := InverseTable[Byte(T1[3])]; W1 := InverseTable[Byte(T1[2] shr 8)]; + W2 := InverseTable[Byte(T1[1] shr 16)]; W3 := InverseTable[Byte(T1[0] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[27]; + // round 7 + W0 := InverseTable[Byte(T0[0])]; W1 := InverseTable[Byte(T0[3] shr 8)]; + W2 := InverseTable[Byte(T0[2] shr 16)]; W3 := InverseTable[Byte(T0[1] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[20]; + W0 := InverseTable[Byte(T0[1])]; W1 := InverseTable[Byte(T0[0] shr 8)]; + W2 := InverseTable[Byte(T0[3] shr 16)]; W3 := InverseTable[Byte(T0[2] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[21]; + W0 := InverseTable[Byte(T0[2])]; W1 := InverseTable[Byte(T0[1] shr 8)]; + W2 := InverseTable[Byte(T0[0] shr 16)]; W3 := InverseTable[Byte(T0[3] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[22]; + W0 := InverseTable[Byte(T0[3])]; W1 := InverseTable[Byte(T0[2] shr 8)]; + W2 := InverseTable[Byte(T0[1] shr 16)]; W3 := InverseTable[Byte(T0[0] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[23]; + // round 8 + W0 := InverseTable[Byte(T1[0])]; W1 := InverseTable[Byte(T1[3] shr 8)]; + W2 := InverseTable[Byte(T1[2] shr 16)]; W3 := InverseTable[Byte(T1[1] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[16]; + W0 := InverseTable[Byte(T1[1])]; W1 := InverseTable[Byte(T1[0] shr 8)]; + W2 := InverseTable[Byte(T1[3] shr 16)]; W3 := InverseTable[Byte(T1[2] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[17]; + W0 := InverseTable[Byte(T1[2])]; W1 := InverseTable[Byte(T1[1] shr 8)]; + W2 := InverseTable[Byte(T1[0] shr 16)]; W3 := InverseTable[Byte(T1[3] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[18]; + W0 := InverseTable[Byte(T1[3])]; W1 := InverseTable[Byte(T1[2] shr 8)]; + W2 := InverseTable[Byte(T1[1] shr 16)]; W3 := InverseTable[Byte(T1[0] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[19]; + // round 9 + W0 := InverseTable[Byte(T0[0])]; W1 := InverseTable[Byte(T0[3] shr 8)]; + W2 := InverseTable[Byte(T0[2] shr 16)]; W3 := InverseTable[Byte(T0[1] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[12]; + W0 := InverseTable[Byte(T0[1])]; W1 := InverseTable[Byte(T0[0] shr 8)]; + W2 := InverseTable[Byte(T0[3] shr 16)]; W3 := InverseTable[Byte(T0[2] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[13]; + W0 := InverseTable[Byte(T0[2])]; W1 := InverseTable[Byte(T0[1] shr 8)]; + W2 := InverseTable[Byte(T0[0] shr 16)]; W3 := InverseTable[Byte(T0[3] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[14]; + W0 := InverseTable[Byte(T0[3])]; W1 := InverseTable[Byte(T0[2] shr 8)]; + W2 := InverseTable[Byte(T0[1] shr 16)]; W3 := InverseTable[Byte(T0[0] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[15]; + // round 10 + W0 := InverseTable[Byte(T1[0])]; W1 := InverseTable[Byte(T1[3] shr 8)]; + W2 := InverseTable[Byte(T1[2] shr 16)]; W3 := InverseTable[Byte(T1[1] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[8]; + W0 := InverseTable[Byte(T1[1])]; W1 := InverseTable[Byte(T1[0] shr 8)]; + W2 := InverseTable[Byte(T1[3] shr 16)]; W3 := InverseTable[Byte(T1[2] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[9]; + W0 := InverseTable[Byte(T1[2])]; W1 := InverseTable[Byte(T1[1] shr 8)]; + W2 := InverseTable[Byte(T1[0] shr 16)]; W3 := InverseTable[Byte(T1[3] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[10]; + W0 := InverseTable[Byte(T1[3])]; W1 := InverseTable[Byte(T1[2] shr 8)]; + W2 := InverseTable[Byte(T1[1] shr 16)]; W3 := InverseTable[Byte(T1[0] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[11]; + // round 11 + W0 := InverseTable[Byte(T0[0])]; W1 := InverseTable[Byte(T0[3] shr 8)]; + W2 := InverseTable[Byte(T0[2] shr 16)]; W3 := InverseTable[Byte(T0[1] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[4]; + W0 := InverseTable[Byte(T0[1])]; W1 := InverseTable[Byte(T0[0] shr 8)]; + W2 := InverseTable[Byte(T0[3] shr 16)]; W3 := InverseTable[Byte(T0[2] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[5]; + W0 := InverseTable[Byte(T0[2])]; W1 := InverseTable[Byte(T0[1] shr 8)]; + W2 := InverseTable[Byte(T0[0] shr 16)]; W3 := InverseTable[Byte(T0[3] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[6]; + W0 := InverseTable[Byte(T0[3])]; W1 := InverseTable[Byte(T0[2] shr 8)]; + W2 := InverseTable[Byte(T0[1] shr 16)]; W3 := InverseTable[Byte(T0[0] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[7]; + // last round of transformations + W0 := LastInverseTable[Byte(T1[0])]; W1 := LastInverseTable[Byte(T1[3] shr 8)]; + W2 := LastInverseTable[Byte(T1[2] shr 16)]; W3 := LastInverseTable[Byte(T1[1] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[0]; + W0 := LastInverseTable[Byte(T1[1])]; W1 := LastInverseTable[Byte(T1[0] shr 8)]; + W2 := LastInverseTable[Byte(T1[3] shr 16)]; W3 := LastInverseTable[Byte(T1[2] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[1]; + W0 := LastInverseTable[Byte(T1[2])]; W1 := LastInverseTable[Byte(T1[1] shr 8)]; + W2 := LastInverseTable[Byte(T1[0] shr 16)]; W3 := LastInverseTable[Byte(T1[3] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[2]; + W0 := LastInverseTable[Byte(T1[3])]; W1 := LastInverseTable[Byte(T1[2] shr 8)]; + W2 := LastInverseTable[Byte(T1[1] shr 16)]; W3 := LastInverseTable[Byte(T1[0] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[3]; + // finalizing + PLongWord(@OutBuf[0])^ := T0[0]; PLongWord(@OutBuf[4])^ := T0[1]; + PLongWord(@OutBuf[8])^ := T0[2]; PLongWord(@OutBuf[12])^ := T0[3]; +end; + +procedure DecryptAES(const InBuf: TAESBuffer; const Key: TAESExpandedKey256; + var OutBuf: TAESBuffer); +var + T0, T1: array [0..3] of longword; + W0, W1, W2, W3: longword; +begin + // initializing + T0[0] := PLongWord(@InBuf[0])^ xor Key[56]; + T0[1] := PLongWord(@InBuf[4])^ xor Key[57]; + T0[2] := PLongWord(@InBuf[8])^ xor Key[58]; + T0[3] := PLongWord(@InBuf[12])^ xor Key[59]; + // performing transformations 13 times + // round 1 + W0 := InverseTable[Byte(T0[0])]; W1 := InverseTable[Byte(T0[3] shr 8)]; + W2 := InverseTable[Byte(T0[2] shr 16)]; W3 := InverseTable[Byte(T0[1] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[52]; + W0 := InverseTable[Byte(T0[1])]; W1 := InverseTable[Byte(T0[0] shr 8)]; + W2 := InverseTable[Byte(T0[3] shr 16)]; W3 := InverseTable[Byte(T0[2] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[53]; + W0 := InverseTable[Byte(T0[2])]; W1 := InverseTable[Byte(T0[1] shr 8)]; + W2 := InverseTable[Byte(T0[0] shr 16)]; W3 := InverseTable[Byte(T0[3] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[54]; + W0 := InverseTable[Byte(T0[3])]; W1 := InverseTable[Byte(T0[2] shr 8)]; + W2 := InverseTable[Byte(T0[1] shr 16)]; W3 := InverseTable[Byte(T0[0] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[55]; + // round 2 + W0 := InverseTable[Byte(T1[0])]; W1 := InverseTable[Byte(T1[3] shr 8)]; + W2 := InverseTable[Byte(T1[2] shr 16)]; W3 := InverseTable[Byte(T1[1] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[48]; + W0 := InverseTable[Byte(T1[1])]; W1 := InverseTable[Byte(T1[0] shr 8)]; + W2 := InverseTable[Byte(T1[3] shr 16)]; W3 := InverseTable[Byte(T1[2] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[49]; + W0 := InverseTable[Byte(T1[2])]; W1 := InverseTable[Byte(T1[1] shr 8)]; + W2 := InverseTable[Byte(T1[0] shr 16)]; W3 := InverseTable[Byte(T1[3] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[50]; + W0 := InverseTable[Byte(T1[3])]; W1 := InverseTable[Byte(T1[2] shr 8)]; + W2 := InverseTable[Byte(T1[1] shr 16)]; W3 := InverseTable[Byte(T1[0] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[51]; + // round 3 + W0 := InverseTable[Byte(T0[0])]; W1 := InverseTable[Byte(T0[3] shr 8)]; + W2 := InverseTable[Byte(T0[2] shr 16)]; W3 := InverseTable[Byte(T0[1] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[44]; + W0 := InverseTable[Byte(T0[1])]; W1 := InverseTable[Byte(T0[0] shr 8)]; + W2 := InverseTable[Byte(T0[3] shr 16)]; W3 := InverseTable[Byte(T0[2] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[45]; + W0 := InverseTable[Byte(T0[2])]; W1 := InverseTable[Byte(T0[1] shr 8)]; + W2 := InverseTable[Byte(T0[0] shr 16)]; W3 := InverseTable[Byte(T0[3] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[46]; + W0 := InverseTable[Byte(T0[3])]; W1 := InverseTable[Byte(T0[2] shr 8)]; + W2 := InverseTable[Byte(T0[1] shr 16)]; W3 := InverseTable[Byte(T0[0] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[47]; + // round 4 + W0 := InverseTable[Byte(T1[0])]; W1 := InverseTable[Byte(T1[3] shr 8)]; + W2 := InverseTable[Byte(T1[2] shr 16)]; W3 := InverseTable[Byte(T1[1] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[40]; + W0 := InverseTable[Byte(T1[1])]; W1 := InverseTable[Byte(T1[0] shr 8)]; + W2 := InverseTable[Byte(T1[3] shr 16)]; W3 := InverseTable[Byte(T1[2] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[41]; + W0 := InverseTable[Byte(T1[2])]; W1 := InverseTable[Byte(T1[1] shr 8)]; + W2 := InverseTable[Byte(T1[0] shr 16)]; W3 := InverseTable[Byte(T1[3] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[42]; + W0 := InverseTable[Byte(T1[3])]; W1 := InverseTable[Byte(T1[2] shr 8)]; + W2 := InverseTable[Byte(T1[1] shr 16)]; W3 := InverseTable[Byte(T1[0] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[43]; + // round 5 + W0 := InverseTable[Byte(T0[0])]; W1 := InverseTable[Byte(T0[3] shr 8)]; + W2 := InverseTable[Byte(T0[2] shr 16)]; W3 := InverseTable[Byte(T0[1] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[36]; + W0 := InverseTable[Byte(T0[1])]; W1 := InverseTable[Byte(T0[0] shr 8)]; + W2 := InverseTable[Byte(T0[3] shr 16)]; W3 := InverseTable[Byte(T0[2] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[37]; + W0 := InverseTable[Byte(T0[2])]; W1 := InverseTable[Byte(T0[1] shr 8)]; + W2 := InverseTable[Byte(T0[0] shr 16)]; W3 := InverseTable[Byte(T0[3] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[38]; + W0 := InverseTable[Byte(T0[3])]; W1 := InverseTable[Byte(T0[2] shr 8)]; + W2 := InverseTable[Byte(T0[1] shr 16)]; W3 := InverseTable[Byte(T0[0] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[39]; + // round 6 + W0 := InverseTable[Byte(T1[0])]; W1 := InverseTable[Byte(T1[3] shr 8)]; + W2 := InverseTable[Byte(T1[2] shr 16)]; W3 := InverseTable[Byte(T1[1] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[32]; + W0 := InverseTable[Byte(T1[1])]; W1 := InverseTable[Byte(T1[0] shr 8)]; + W2 := InverseTable[Byte(T1[3] shr 16)]; W3 := InverseTable[Byte(T1[2] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[33]; + W0 := InverseTable[Byte(T1[2])]; W1 := InverseTable[Byte(T1[1] shr 8)]; + W2 := InverseTable[Byte(T1[0] shr 16)]; W3 := InverseTable[Byte(T1[3] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[34]; + W0 := InverseTable[Byte(T1[3])]; W1 := InverseTable[Byte(T1[2] shr 8)]; + W2 := InverseTable[Byte(T1[1] shr 16)]; W3 := InverseTable[Byte(T1[0] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[35]; + // round 7 + W0 := InverseTable[Byte(T0[0])]; W1 := InverseTable[Byte(T0[3] shr 8)]; + W2 := InverseTable[Byte(T0[2] shr 16)]; W3 := InverseTable[Byte(T0[1] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[28]; + W0 := InverseTable[Byte(T0[1])]; W1 := InverseTable[Byte(T0[0] shr 8)]; + W2 := InverseTable[Byte(T0[3] shr 16)]; W3 := InverseTable[Byte(T0[2] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[29]; + W0 := InverseTable[Byte(T0[2])]; W1 := InverseTable[Byte(T0[1] shr 8)]; + W2 := InverseTable[Byte(T0[0] shr 16)]; W3 := InverseTable[Byte(T0[3] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[30]; + W0 := InverseTable[Byte(T0[3])]; W1 := InverseTable[Byte(T0[2] shr 8)]; + W2 := InverseTable[Byte(T0[1] shr 16)]; W3 := InverseTable[Byte(T0[0] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[31]; + // round 8 + W0 := InverseTable[Byte(T1[0])]; W1 := InverseTable[Byte(T1[3] shr 8)]; + W2 := InverseTable[Byte(T1[2] shr 16)]; W3 := InverseTable[Byte(T1[1] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[24]; + W0 := InverseTable[Byte(T1[1])]; W1 := InverseTable[Byte(T1[0] shr 8)]; + W2 := InverseTable[Byte(T1[3] shr 16)]; W3 := InverseTable[Byte(T1[2] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[25]; + W0 := InverseTable[Byte(T1[2])]; W1 := InverseTable[Byte(T1[1] shr 8)]; + W2 := InverseTable[Byte(T1[0] shr 16)]; W3 := InverseTable[Byte(T1[3] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[26]; + W0 := InverseTable[Byte(T1[3])]; W1 := InverseTable[Byte(T1[2] shr 8)]; + W2 := InverseTable[Byte(T1[1] shr 16)]; W3 := InverseTable[Byte(T1[0] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[27]; + // round 9 + W0 := InverseTable[Byte(T0[0])]; W1 := InverseTable[Byte(T0[3] shr 8)]; + W2 := InverseTable[Byte(T0[2] shr 16)]; W3 := InverseTable[Byte(T0[1] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[20]; + W0 := InverseTable[Byte(T0[1])]; W1 := InverseTable[Byte(T0[0] shr 8)]; + W2 := InverseTable[Byte(T0[3] shr 16)]; W3 := InverseTable[Byte(T0[2] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[21]; + W0 := InverseTable[Byte(T0[2])]; W1 := InverseTable[Byte(T0[1] shr 8)]; + W2 := InverseTable[Byte(T0[0] shr 16)]; W3 := InverseTable[Byte(T0[3] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[22]; + W0 := InverseTable[Byte(T0[3])]; W1 := InverseTable[Byte(T0[2] shr 8)]; + W2 := InverseTable[Byte(T0[1] shr 16)]; W3 := InverseTable[Byte(T0[0] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[23]; + // round 10 + W0 := InverseTable[Byte(T1[0])]; W1 := InverseTable[Byte(T1[3] shr 8)]; + W2 := InverseTable[Byte(T1[2] shr 16)]; W3 := InverseTable[Byte(T1[1] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[16]; + W0 := InverseTable[Byte(T1[1])]; W1 := InverseTable[Byte(T1[0] shr 8)]; + W2 := InverseTable[Byte(T1[3] shr 16)]; W3 := InverseTable[Byte(T1[2] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[17]; + W0 := InverseTable[Byte(T1[2])]; W1 := InverseTable[Byte(T1[1] shr 8)]; + W2 := InverseTable[Byte(T1[0] shr 16)]; W3 := InverseTable[Byte(T1[3] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[18]; + W0 := InverseTable[Byte(T1[3])]; W1 := InverseTable[Byte(T1[2] shr 8)]; + W2 := InverseTable[Byte(T1[1] shr 16)]; W3 := InverseTable[Byte(T1[0] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[19]; + // round 11 + W0 := InverseTable[Byte(T0[0])]; W1 := InverseTable[Byte(T0[3] shr 8)]; + W2 := InverseTable[Byte(T0[2] shr 16)]; W3 := InverseTable[Byte(T0[1] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[12]; + W0 := InverseTable[Byte(T0[1])]; W1 := InverseTable[Byte(T0[0] shr 8)]; + W2 := InverseTable[Byte(T0[3] shr 16)]; W3 := InverseTable[Byte(T0[2] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[13]; + W0 := InverseTable[Byte(T0[2])]; W1 := InverseTable[Byte(T0[1] shr 8)]; + W2 := InverseTable[Byte(T0[0] shr 16)]; W3 := InverseTable[Byte(T0[3] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[14]; + W0 := InverseTable[Byte(T0[3])]; W1 := InverseTable[Byte(T0[2] shr 8)]; + W2 := InverseTable[Byte(T0[1] shr 16)]; W3 := InverseTable[Byte(T0[0] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[15]; + // round 12 + W0 := InverseTable[Byte(T1[0])]; W1 := InverseTable[Byte(T1[3] shr 8)]; + W2 := InverseTable[Byte(T1[2] shr 16)]; W3 := InverseTable[Byte(T1[1] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[8]; + W0 := InverseTable[Byte(T1[1])]; W1 := InverseTable[Byte(T1[0] shr 8)]; + W2 := InverseTable[Byte(T1[3] shr 16)]; W3 := InverseTable[Byte(T1[2] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[9]; + W0 := InverseTable[Byte(T1[2])]; W1 := InverseTable[Byte(T1[1] shr 8)]; + W2 := InverseTable[Byte(T1[0] shr 16)]; W3 := InverseTable[Byte(T1[3] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[10]; + W0 := InverseTable[Byte(T1[3])]; W1 := InverseTable[Byte(T1[2] shr 8)]; + W2 := InverseTable[Byte(T1[1] shr 16)]; W3 := InverseTable[Byte(T1[0] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[11]; + // round 13 + W0 := InverseTable[Byte(T0[0])]; W1 := InverseTable[Byte(T0[3] shr 8)]; + W2 := InverseTable[Byte(T0[2] shr 16)]; W3 := InverseTable[Byte(T0[1] shr 24)]; + T1[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[4]; + W0 := InverseTable[Byte(T0[1])]; W1 := InverseTable[Byte(T0[0] shr 8)]; + W2 := InverseTable[Byte(T0[3] shr 16)]; W3 := InverseTable[Byte(T0[2] shr 24)]; + T1[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[5]; + W0 := InverseTable[Byte(T0[2])]; W1 := InverseTable[Byte(T0[1] shr 8)]; + W2 := InverseTable[Byte(T0[0] shr 16)]; W3 := InverseTable[Byte(T0[3] shr 24)]; + T1[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[6]; + W0 := InverseTable[Byte(T0[3])]; W1 := InverseTable[Byte(T0[2] shr 8)]; + W2 := InverseTable[Byte(T0[1] shr 16)]; W3 := InverseTable[Byte(T0[0] shr 24)]; + T1[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[7]; + // last round of transformations + W0 := LastInverseTable[Byte(T1[0])]; W1 := LastInverseTable[Byte(T1[3] shr 8)]; + W2 := LastInverseTable[Byte(T1[2] shr 16)]; W3 := LastInverseTable[Byte(T1[1] shr 24)]; + T0[0] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[0]; + W0 := LastInverseTable[Byte(T1[1])]; W1 := LastInverseTable[Byte(T1[0] shr 8)]; + W2 := LastInverseTable[Byte(T1[3] shr 16)]; W3 := LastInverseTable[Byte(T1[2] shr 24)]; + T0[1] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[1]; + W0 := LastInverseTable[Byte(T1[2])]; W1 := LastInverseTable[Byte(T1[1] shr 8)]; + W2 := LastInverseTable[Byte(T1[0] shr 16)]; W3 := LastInverseTable[Byte(T1[3] shr 24)]; + T0[2] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[2]; + W0 := LastInverseTable[Byte(T1[3])]; W1 := LastInverseTable[Byte(T1[2] shr 8)]; + W2 := LastInverseTable[Byte(T1[1] shr 16)]; W3 := LastInverseTable[Byte(T1[0] shr 24)]; + T0[3] := (W0 xor ((W1 shl 8) or (W1 shr 24)) xor ((W2 shl 16) or (W2 shr 16)) + xor ((W3 shl 24) or (W3 shr 8))) xor Key[3]; + // finalizing + PLongWord(@OutBuf[0])^ := T0[0]; PLongWord(@OutBuf[4])^ := T0[1]; + PLongWord(@OutBuf[8])^ := T0[2]; PLongWord(@OutBuf[12])^ := T0[3]; +end; + +// Stream encryption routines (ECB mode) + +procedure EncryptAESStreamECB(Source: TStream; Count: cardinal; + const Key: TAESKey128; Dest: TStream); +var + ExpandedKey: TAESExpandedKey128; +begin + ExpandAESKeyForEncryption(Key, ExpandedKey); + EncryptAESStreamECB(Source, Count, ExpandedKey, Dest); +end; + +procedure EncryptAESStreamECB(Source: TStream; Count: cardinal; + const Key: TAESKey192; Dest: TStream); +var + ExpandedKey: TAESExpandedKey192; +begin + ExpandAESKeyForEncryption(Key, ExpandedKey); + EncryptAESStreamECB(Source, Count, ExpandedKey, Dest); +end; + +procedure EncryptAESStreamECB(Source: TStream; Count: cardinal; + const Key: TAESKey256; Dest: TStream); +var + ExpandedKey: TAESExpandedKey256; +begin + ExpandAESKeyForEncryption(Key, ExpandedKey); + EncryptAESStreamECB(Source, Count, ExpandedKey, Dest); +end; + +procedure EncryptAESStreamECB(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey128; Dest: TStream); +var + TempIn, TempOut: TAESBuffer; + Done: cardinal; +begin + if Count = 0 then + begin + Source.Position := 0; + Count := Source.Size; + end + else Count := Min(Count, Source.Size - Source.Position); + if Count = 0 then exit; + while Count >= SizeOf(TAESBuffer) do + begin + Done := Source.Read(TempIn, SizeOf(TempIn)); + if Done < SizeOf(TempIn) then + raise EStreamError.Create(SReadError); + EncryptAES(TempIn, ExpandedKey, TempOut); + Done := Dest.Write(TempOut, SizeOf(TempOut)); + if Done < SizeOf(TempOut) then + raise EStreamError.Create(SWriteError); + Dec(Count, SizeOf(TAESBuffer)); + end; + if Count > 0 then + begin + Done := Source.Read(TempIn, Count); + if Done < Count then + raise EStreamError.Create(SReadError); + FillChar(TempIn[Count], SizeOf(TempIn) - Count, 0); + EncryptAES(TempIn, ExpandedKey, TempOut); + Done := Dest.Write(TempOut, SizeOf(TempOut)); + if Done < SizeOf(TempOut) then + raise EStreamError.Create(SWriteError); + end; +end; + +procedure EncryptAESStreamECB(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey192; Dest: TStream); +var + TempIn, TempOut: TAESBuffer; + Done: cardinal; +begin + if Count = 0 then + begin + Source.Position := 0; + Count := Source.Size; + end + else Count := Min(Count, Source.Size - Source.Position); + if Count = 0 then exit; + while Count >= SizeOf(TAESBuffer) do + begin + Done := Source.Read(TempIn, SizeOf(TempIn)); + if Done < SizeOf(TempIn) then + raise EStreamError.Create(SReadError); + EncryptAES(TempIn, ExpandedKey, TempOut); + Done := Dest.Write(TempOut, SizeOf(TempOut)); + if Done < SizeOf(TempOut) then + raise EStreamError.Create(SWriteError); + Dec(Count, SizeOf(TAESBuffer)); + end; + if Count > 0 then + begin + Done := Source.Read(TempIn, Count); + if Done < Count then + raise EStreamError.Create(SReadError); + FillChar(TempIn[Count], SizeOf(TempIn) - Count, 0); + EncryptAES(TempIn, ExpandedKey, TempOut); + Done := Dest.Write(TempOut, SizeOf(TempOut)); + if Done < SizeOf(TempOut) then + raise EStreamError.Create(SWriteError); + end; +end; + +procedure EncryptAESStreamECB(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey256; Dest: TStream); +var + TempIn, TempOut: TAESBuffer; + Done: cardinal; +begin + if Count = 0 then + begin + Source.Position := 0; + Count := Source.Size; + end + else Count := Min(Count, Source.Size - Source.Position); + if Count = 0 then exit; + while Count >= SizeOf(TAESBuffer) do + begin + Done := Source.Read(TempIn, SizeOf(TempIn)); + if Done < SizeOf(TempIn) then + raise EStreamError.Create(SReadError); + EncryptAES(TempIn, ExpandedKey, TempOut); + Done := Dest.Write(TempOut, SizeOf(TempOut)); + if Done < SizeOf(TempOut) then + raise EStreamError.Create(SWriteError); + Dec(Count, SizeOf(TAESBuffer)); + end; + if Count > 0 then + begin + Done := Source.Read(TempIn, Count); + if Done < Count then + raise EStreamError.Create(SReadError); + FillChar(TempIn[Count], SizeOf(TempIn) - Count, 0); + EncryptAES(TempIn, ExpandedKey, TempOut); + Done := Dest.Write(TempOut, SizeOf(TempOut)); + if Done < SizeOf(TempOut) then + raise EStreamError.Create(SWriteError); + end; +end; + +// Stream decryption routines (ECB mode) + +procedure DecryptAESStreamECB(Source: TStream; Count: cardinal; + const Key: TAESKey128; Dest: TStream); +var + ExpandedKey: TAESExpandedKey128; +begin + ExpandAESKeyForDecryption(Key, ExpandedKey); + DecryptAESStreamECB(Source, Count, ExpandedKey, Dest); +end; + +procedure DecryptAESStreamECB(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey128; Dest: TStream); +var + TempIn, TempOut: TAESBuffer; + Done: cardinal; +begin + if Count = 0 then + begin + Source.Position := 0; + Count := Source.Size; + end + else Count := Min(Count, Source.Size - Source.Position); + if Count = 0 then exit; + if (Count mod SizeOf(TAESBuffer)) > 0 then + raise EAESError.Create(SInvalidInBufSize); + while Count >= SizeOf(TAESBuffer) do + begin + Done := Source.Read(TempIn, SizeOf(TempIn)); + if Done < SizeOf(TempIn) then + raise EStreamError.Create(SReadError); + DecryptAES(TempIn, ExpandedKey, TempOut); + Done := Dest.Write(TempOut, SizeOf(TempOut)); + if Done < SizeOf(TempOut) then + raise EStreamError.Create(SWriteError); + Dec(Count, SizeOf(TAESBuffer)); + end; +end; + +procedure DecryptAESStreamECB(Source: TStream; Count: cardinal; + const Key: TAESKey192; Dest: TStream); +var + ExpandedKey: TAESExpandedKey192; +begin + ExpandAESKeyForDecryption(Key, ExpandedKey); + DecryptAESStreamECB(Source, Count, ExpandedKey, Dest); +end; + +procedure DecryptAESStreamECB(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey192; Dest: TStream); +var + TempIn, TempOut: TAESBuffer; + Done: cardinal; +begin + if Count = 0 then + begin + Source.Position := 0; + Count := Source.Size; + end + else Count := Min(Count, Source.Size - Source.Position); + if Count = 0 then exit; + if (Count mod SizeOf(TAESBuffer)) > 0 then + raise EAESError.Create(SInvalidInBufSize); + while Count >= SizeOf(TAESBuffer) do + begin + Done := Source.Read(TempIn, SizeOf(TempIn)); + if Done < SizeOf(TempIn) then + raise EStreamError.Create(SReadError); + DecryptAES(TempIn, ExpandedKey, TempOut); + Done := Dest.Write(TempOut, SizeOf(TempOut)); + if Done < SizeOf(TempOut) then + raise EStreamError.Create(SWriteError); + Dec(Count, SizeOf(TAESBuffer)); + end; +end; + +procedure DecryptAESStreamECB(Source: TStream; Count: cardinal; + const Key: TAESKey256; Dest: TStream); +var + ExpandedKey: TAESExpandedKey256; +begin + ExpandAESKeyForDecryption(Key, ExpandedKey); + DecryptAESStreamECB(Source, Count, ExpandedKey, Dest); +end; + +procedure DecryptAESStreamECB(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey256; Dest: TStream); +var + TempIn, TempOut: TAESBuffer; + Done: cardinal; +begin + if Count = 0 then + begin + Source.Position := 0; + Count := Source.Size; + end + else Count := Min(Count, Source.Size - Source.Position); + if Count = 0 then exit; + if (Count mod SizeOf(TAESBuffer)) > 0 then + raise EAESError.Create(SInvalidInBufSize); + while Count >= SizeOf(TAESBuffer) do + begin + Done := Source.Read(TempIn, SizeOf(TempIn)); + if Done < SizeOf(TempIn) then + raise EStreamError.Create(SReadError); + DecryptAES(TempIn, ExpandedKey, TempOut); + Done := Dest.Write(TempOut, SizeOf(TempOut)); + if Done < SizeOf(TempOut) then + raise EStreamError.Create(SWriteError); + Dec(Count, SizeOf(TAESBuffer)); + end; +end; + +// Stream encryption routines (CBC mode) + +procedure EncryptAESStreamCBC(Source: TStream; Count: cardinal; + const Key: TAESKey128; const InitVector: TAESBuffer; Dest: TStream); +var + ExpandedKey: TAESExpandedKey128; +begin + ExpandAESKeyForEncryption(Key, ExpandedKey); + EncryptAESStreamCBC(Source, Count, ExpandedKey, InitVector, Dest); +end; + +procedure EncryptAESStreamCBC(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey128; const InitVector: TAESBuffer; + Dest: TStream); +var + TempIn, TempOut, Vector: TAESBuffer; + Done: cardinal; +begin + if Count = 0 then + begin + Source.Position := 0; + Count := Source.Size; + end + else Count := Min(Count, Source.Size - Source.Position); + if Count = 0 then exit; + Vector := InitVector; + while Count >= SizeOf(TAESBuffer) do + begin + Done := Source.Read(TempIn, SizeOf(TempIn)); + if Done < SizeOf(TempIn) then + raise EStreamError.Create(SReadError); + PLongWord(@TempIn[0])^ := PLongWord(@TempIn[0])^ xor PLongWord(@Vector[0])^; + PLongWord(@TempIn[4])^ := PLongWord(@TempIn[4])^ xor PLongWord(@Vector[4])^; + PLongWord(@TempIn[8])^ := PLongWord(@TempIn[8])^ xor PLongWord(@Vector[8])^; + PLongWord(@TempIn[12])^ := PLongWord(@TempIn[12])^ xor PLongWord(@Vector[12])^; + EncryptAES(TempIn, ExpandedKey, TempOut); + Done := Dest.Write(TempOut, SizeOf(TempOut)); + if Done < SizeOf(TempOut) then + raise EStreamError.Create(SWriteError); + Vector := TempOut; + Dec(Count, SizeOf(TAESBuffer)); + end; + if Count > 0 then + begin + Done := Source.Read(TempIn, Count); + if Done < Count then + raise EStreamError.Create(SReadError); + FillChar(TempIn[Count], SizeOf(TempIn) - Count, 0); + PLongWord(@TempIn[0])^ := PLongWord(@TempIn[0])^ xor PLongWord(@Vector[0])^; + PLongWord(@TempIn[4])^ := PLongWord(@TempIn[4])^ xor PLongWord(@Vector[4])^; + PLongWord(@TempIn[8])^ := PLongWord(@TempIn[8])^ xor PLongWord(@Vector[8])^; + PLongWord(@TempIn[12])^ := PLongWord(@TempIn[12])^ xor PLongWord(@Vector[12])^; + EncryptAES(TempIn, ExpandedKey, TempOut); + Done := Dest.Write(TempOut, SizeOf(TempOut)); + if Done < SizeOf(TempOut) then + raise EStreamError.Create(SWriteError); + end; +end; + +procedure EncryptAESStreamCBC(Source: TStream; Count: cardinal; + const Key: TAESKey192; const InitVector: TAESBuffer; Dest: TStream); +var + ExpandedKey: TAESExpandedKey192; +begin + ExpandAESKeyForEncryption(Key, ExpandedKey); + EncryptAESStreamCBC(Source, Count, ExpandedKey, InitVector, Dest); +end; + +procedure EncryptAESStreamCBC(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey192; const InitVector: TAESBuffer; + Dest: TStream); +var + TempIn, TempOut, Vector: TAESBuffer; + Done: cardinal; +begin + if Count = 0 then + begin + Source.Position := 0; + Count := Source.Size; + end + else Count := Min(Count, Source.Size - Source.Position); + if Count = 0 then exit; + Vector := InitVector; + while Count >= SizeOf(TAESBuffer) do + begin + Done := Source.Read(TempIn, SizeOf(TempIn)); + if Done < SizeOf(TempIn) then + raise EStreamError.Create(SReadError); + PLongWord(@TempIn[0])^ := PLongWord(@TempIn[0])^ xor PLongWord(@Vector[0])^; + PLongWord(@TempIn[4])^ := PLongWord(@TempIn[4])^ xor PLongWord(@Vector[4])^; + PLongWord(@TempIn[8])^ := PLongWord(@TempIn[8])^ xor PLongWord(@Vector[8])^; + PLongWord(@TempIn[12])^ := PLongWord(@TempIn[12])^ xor PLongWord(@Vector[12])^; + EncryptAES(TempIn, ExpandedKey, TempOut); + Done := Dest.Write(TempOut, SizeOf(TempOut)); + if Done < SizeOf(TempOut) then + raise EStreamError.Create(SWriteError); + Vector := TempOut; + Dec(Count, SizeOf(TAESBuffer)); + end; + if Count > 0 then + begin + Done := Source.Read(TempIn, Count); + if Done < Count then + raise EStreamError.Create(SReadError); + FillChar(TempIn[Count], SizeOf(TempIn) - Count, 0); + PLongWord(@TempIn[0])^ := PLongWord(@TempIn[0])^ xor PLongWord(@Vector[0])^; + PLongWord(@TempIn[4])^ := PLongWord(@TempIn[4])^ xor PLongWord(@Vector[4])^; + PLongWord(@TempIn[8])^ := PLongWord(@TempIn[8])^ xor PLongWord(@Vector[8])^; + PLongWord(@TempIn[12])^ := PLongWord(@TempIn[12])^ xor PLongWord(@Vector[12])^; + EncryptAES(TempIn, ExpandedKey, TempOut); + Done := Dest.Write(TempOut, SizeOf(TempOut)); + if Done < SizeOf(TempOut) then + raise EStreamError.Create(SWriteError); + end; +end; + +procedure EncryptAESStreamCBC(Source: TStream; Count: cardinal; + const Key: TAESKey256; const InitVector: TAESBuffer; Dest: TStream); +var + ExpandedKey: TAESExpandedKey256; +begin + ExpandAESKeyForEncryption(Key, ExpandedKey); + EncryptAESStreamCBC(Source, Count, ExpandedKey, InitVector, Dest); +end; + +procedure EncryptAESStreamCBC(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey256; const InitVector: TAESBuffer; + Dest: TStream); +var + TempIn, TempOut, Vector: TAESBuffer; + Done: cardinal; +begin + if Count = 0 then + begin + Source.Position := 0; + Count := Source.Size; + end + else Count := Min(Count, Source.Size - Source.Position); + if Count = 0 then exit; + Vector := InitVector; + while Count >= SizeOf(TAESBuffer) do + begin + Done := Source.Read(TempIn, SizeOf(TempIn)); + if Done < SizeOf(TempIn) then + raise EStreamError.Create(SReadError); + PLongWord(@TempIn[0])^ := PLongWord(@TempIn[0])^ xor PLongWord(@Vector[0])^; + PLongWord(@TempIn[4])^ := PLongWord(@TempIn[4])^ xor PLongWord(@Vector[4])^; + PLongWord(@TempIn[8])^ := PLongWord(@TempIn[8])^ xor PLongWord(@Vector[8])^; + PLongWord(@TempIn[12])^ := PLongWord(@TempIn[12])^ xor PLongWord(@Vector[12])^; + EncryptAES(TempIn, ExpandedKey, TempOut); + Done := Dest.Write(TempOut, SizeOf(TempOut)); + if Done < SizeOf(TempOut) then + raise EStreamError.Create(SWriteError); + Vector := TempOut; + Dec(Count, SizeOf(TAESBuffer)); + end; + if Count > 0 then + begin + Done := Source.Read(TempIn, Count); + if Done < Count then + raise EStreamError.Create(SReadError); + FillChar(TempIn[Count], SizeOf(TempIn) - Count, 0); + PLongWord(@TempIn[0])^ := PLongWord(@TempIn[0])^ xor PLongWord(@Vector[0])^; + PLongWord(@TempIn[4])^ := PLongWord(@TempIn[4])^ xor PLongWord(@Vector[4])^; + PLongWord(@TempIn[8])^ := PLongWord(@TempIn[8])^ xor PLongWord(@Vector[8])^; + PLongWord(@TempIn[12])^ := PLongWord(@TempIn[12])^ xor PLongWord(@Vector[12])^; + EncryptAES(TempIn, ExpandedKey, TempOut); + Done := Dest.Write(TempOut, SizeOf(TempOut)); + if Done < SizeOf(TempOut) then + raise EStreamError.Create(SWriteError); + end; +end; + +// Stream decryption routines (CBC mode) + +procedure DecryptAESStreamCBC(Source: TStream; Count: cardinal; + const Key: TAESKey128; const InitVector: TAESBuffer; Dest: TStream); +var + ExpandedKey: TAESExpandedKey128; +begin + ExpandAESKeyForDecryption(Key, ExpandedKey); + DecryptAESStreamCBC(Source, Count, ExpandedKey, InitVector, Dest); +end; + +procedure DecryptAESStreamCBC(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey128; const InitVector: TAESBuffer; + Dest: TStream); +var + TempIn, TempOut: TAESBuffer; + Vector1, Vector2: TAESBuffer; + Done: cardinal; +begin + if Count = 0 then + begin + Source.Position := 0; + Count := Source.Size; + end + else Count := Min(Count, Source.Size - Source.Position); + if Count = 0 then exit; + if (Count mod SizeOf(TAESBuffer)) > 0 then + raise EAESError.Create(SInvalidInBufSize); + Vector1 := InitVector; + while Count >= SizeOf(TAESBuffer) do + begin + Done := Source.Read(TempIn, SizeOf(TempIn)); + if Done < SizeOf(TempIn) then + raise EStreamError(SReadError); + Vector2 := TempIn; + DecryptAES(TempIn, ExpandedKey, TempOut); + PLongWord(@TempOut[0])^ := PLongWord(@TempOut[0])^ xor PLongWord(@Vector1[0])^; + PLongWord(@TempOut[4])^ := PLongWord(@TempOut[4])^ xor PLongWord(@Vector1[4])^; + PLongWord(@TempOut[8])^ := PLongWord(@TempOut[8])^ xor PLongWord(@Vector1[8])^; + PLongWord(@TempOut[12])^ := PLongWord(@TempOut[12])^ xor PLongWord(@Vector1[12])^; + Done := Dest.Write(TempOut, SizeOf(TempOut)); + if Done < SizeOf(TempOut) then + raise EStreamError(SWriteError); + Vector1 := Vector2; + Dec(Count, SizeOf(TAESBuffer)); + end; +end; + +procedure DecryptAESStreamCBC(Source: TStream; Count: cardinal; + const Key: TAESKey192; const InitVector: TAESBuffer; Dest: TStream); +var + ExpandedKey: TAESExpandedKey192; +begin + ExpandAESKeyForDecryption(Key, ExpandedKey); + DecryptAESStreamCBC(Source, Count, ExpandedKey, InitVector, Dest); +end; + +procedure DecryptAESStreamCBC(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey192; const InitVector: TAESBuffer; + Dest: TStream); +var + TempIn, TempOut: TAESBuffer; + Vector1, Vector2: TAESBuffer; + Done: cardinal; +begin + if Count = 0 then + begin + Source.Position := 0; + Count := Source.Size; + end + else Count := Min(Count, Source.Size - Source.Position); + if Count = 0 then exit; + if (Count mod SizeOf(TAESBuffer)) > 0 then + raise EAESError.Create(SInvalidInBufSize); + Vector1 := InitVector; + while Count >= SizeOf(TAESBuffer) do + begin + Done := Source.Read(TempIn, SizeOf(TempIn)); + if Done < SizeOf(TempIn) then + raise EStreamError(SReadError); + Vector2 := TempIn; + DecryptAES(TempIn, ExpandedKey, TempOut); + PLongWord(@TempOut[0])^ := PLongWord(@TempOut[0])^ xor PLongWord(@Vector1[0])^; + PLongWord(@TempOut[4])^ := PLongWord(@TempOut[4])^ xor PLongWord(@Vector1[4])^; + PLongWord(@TempOut[8])^ := PLongWord(@TempOut[8])^ xor PLongWord(@Vector1[8])^; + PLongWord(@TempOut[12])^ := PLongWord(@TempOut[12])^ xor PLongWord(@Vector1[12])^; + Done := Dest.Write(TempOut, SizeOf(TempOut)); + if Done < SizeOf(TempOut) then + raise EStreamError(SWriteError); + Vector1 := Vector2; + Dec(Count, SizeOf(TAESBuffer)); + end; +end; + +procedure DecryptAESStreamCBC(Source: TStream; Count: cardinal; + const Key: TAESKey256; const InitVector: TAESBuffer; Dest: TStream); +var + ExpandedKey: TAESExpandedKey256; +begin + ExpandAESKeyForDecryption(Key, ExpandedKey); + DecryptAESStreamCBC(Source, Count, ExpandedKey, InitVector, Dest); +end; + +procedure DecryptAESStreamCBC(Source: TStream; Count: cardinal; + const ExpandedKey: TAESExpandedKey256; const InitVector: TAESBuffer; + Dest: TStream); +var + TempIn, TempOut: TAESBuffer; + Vector1, Vector2: TAESBuffer; + Done: cardinal; +begin + if Count = 0 then + begin + Source.Position := 0; + Count := Source.Size; + end + else Count := Min(Count, Source.Size - Source.Position); + if Count = 0 then exit; + if (Count mod SizeOf(TAESBuffer)) > 0 then + raise EAESError.Create(SInvalidInBufSize); + Vector1 := InitVector; + while Count >= SizeOf(TAESBuffer) do + begin + Done := Source.Read(TempIn, SizeOf(TempIn)); + if Done < SizeOf(TempIn) then + raise EStreamError(SReadError); + Vector2 := TempIn; + DecryptAES(TempIn, ExpandedKey, TempOut); + PLongWord(@TempOut[0])^ := PLongWord(@TempOut[0])^ xor PLongWord(@Vector1[0])^; + PLongWord(@TempOut[4])^ := PLongWord(@TempOut[4])^ xor PLongWord(@Vector1[4])^; + PLongWord(@TempOut[8])^ := PLongWord(@TempOut[8])^ xor PLongWord(@Vector1[8])^; + PLongWord(@TempOut[12])^ := PLongWord(@TempOut[12])^ xor PLongWord(@Vector1[12])^; + Done := Dest.Write(TempOut, SizeOf(TempOut)); + if Done < SizeOf(TempOut) then + raise EStreamError(SWriteError); + Vector1 := Vector2; + Dec(Count, SizeOf(TAESBuffer)); + end; +end; + +end. diff --git a/艾登贸易管理/FieldExportSet/.INI b/艾登贸易管理/FieldExportSet/.INI new file mode 100644 index 0000000..51d8293 --- /dev/null +++ b/艾登贸易管理/FieldExportSet/.INI @@ -0,0 +1,2 @@ +[] +ֶ=Begin//ɫ/ⳤ/ȵλ//׺ diff --git a/艾登贸易管理/FieldExportSet/检验分析订单.INI b/艾登贸易管理/FieldExportSet/检验分析订单.INI new file mode 100644 index 0000000..423fd63 --- /dev/null +++ b/艾登贸易管理/FieldExportSet/检验分析订单.INI @@ -0,0 +1,2 @@ +[] +ֶ=Begin///ɫ//()/õ diff --git a/艾登贸易管理/FieldExportSet/检验报告.INI b/艾登贸易管理/FieldExportSet/检验报告.INI new file mode 100644 index 0000000..0961376 --- /dev/null +++ b/艾登贸易管理/FieldExportSet/检验报告.INI @@ -0,0 +1,2 @@ +[] +ֶ=Begin diff --git a/艾登贸易管理/FieldExportSet/生产指示单列表.INI b/艾登贸易管理/FieldExportSet/生产指示单列表.INI new file mode 100644 index 0000000..9215b79 --- /dev/null +++ b/艾登贸易管理/FieldExportSet/生产指示单列表.INI @@ -0,0 +1,2 @@ +[] +ֶ=Begin/Ʒ/Ʒ//ŷ(cm)/(g/O)/ɫ/ɫӢ/ߴ//λ/ע/ܶ//ͬ/ѡ/Ű/ͻ/ʱ/ŵ diff --git a/艾登贸易管理/FieldExportSet/订生产指示单排版列表.INI b/艾登贸易管理/FieldExportSet/订生产指示单排版列表.INI new file mode 100644 index 0000000..9215b79 --- /dev/null +++ b/艾登贸易管理/FieldExportSet/订生产指示单排版列表.INI @@ -0,0 +1,2 @@ +[] +ֶ=Begin/Ʒ/Ʒ//ŷ(cm)/(g/O)/ɫ/ɫӢ/ߴ//λ/ע/ܶ//ͬ/ѡ/Ű/ͻ/ʱ/ŵ diff --git a/艾登贸易管理/FieldExportSet/采购单列表.INI b/艾登贸易管理/FieldExportSet/采购单列表.INI new file mode 100644 index 0000000..8ea03c0 --- /dev/null +++ b/艾登贸易管理/FieldExportSet/采购单列表.INI @@ -0,0 +1,2 @@ +[] +ֶ=Begin/ɹ/Fabric/ diff --git a/艾登贸易管理/File.INI b/艾登贸易管理/File.INI new file mode 100644 index 0000000..824f0fd --- /dev/null +++ b/艾登贸易管理/File.INI @@ -0,0 +1,7 @@ +[] +̨־= +̨= +˿ں= +˿Dllļ= +Ƿ= +Dllļ=JCYData.DLL diff --git a/艾登贸易管理/OrderManage.dof b/艾登贸易管理/OrderManage.dof new file mode 100644 index 0000000..30929e3 --- /dev/null +++ b/艾登贸易管理/OrderManage.dof @@ -0,0 +1,138 @@ +[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=D:\ͨERP +Packages=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;dclOffice2k;Rave50CLX;Rave50VCL +Conditionals= +DebugSourceDirs= +UsePackages=0 +[Parameters] +RunParams= +HostApplication=F:\selfware_83398\selfware\ֿ\Ŀ\self\\testDll.exe +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= +[Excluded Packages] +c:\program files\borland\delphi7\Bin\DBWEBXPRT.BPL=Borland Web Wizard Package diff --git a/艾登贸易管理/ProjectGroup1.bpg b/艾登贸易管理/ProjectGroup1.bpg new file mode 100644 index 0000000..e6b2914 --- /dev/null +++ b/艾登贸易管理/ProjectGroup1.bpg @@ -0,0 +1,20 @@ +#------------------------------------------------------------------------------ +VERSION = BWS.01 +#------------------------------------------------------------------------------ +!ifndef ROOT +ROOT = $(MAKEDIR)\.. +!endif +#------------------------------------------------------------------------------ +MAKE = $(ROOT)\bin\make.exe -$(MAKEFLAGS) -f$** +DCC = $(ROOT)\bin\dcc32.exe $** +BRCC = $(ROOT)\bin\brcc32.exe $** +#------------------------------------------------------------------------------ +PROJECTS = testDll.exe +#------------------------------------------------------------------------------ +default: $(PROJECTS) +#------------------------------------------------------------------------------ + +testDll.exe: testDll.dpr + $(DCC) + + diff --git a/艾登贸易管理/ProjectGroup1.~bpg b/艾登贸易管理/ProjectGroup1.~bpg new file mode 100644 index 0000000..7c050f6 --- /dev/null +++ b/艾登贸易管理/ProjectGroup1.~bpg @@ -0,0 +1,23 @@ +#------------------------------------------------------------------------------ +VERSION = BWS.01 +#------------------------------------------------------------------------------ +!ifndef ROOT +ROOT = $(MAKEDIR)\.. +!endif +#------------------------------------------------------------------------------ +MAKE = $(ROOT)\bin\make.exe -$(MAKEFLAGS) -f$** +DCC = $(ROOT)\bin\dcc32.exe $** +BRCC = $(ROOT)\bin\brcc32.exe $** +#------------------------------------------------------------------------------ +PROJECTS = testDll.exe ProductPrice.dll +#------------------------------------------------------------------------------ +default: $(PROJECTS) +#------------------------------------------------------------------------------ + +testDll.exe: testDll.dpr + $(DCC) + +ProductPrice.dll: ProductPrice.dpr + $(DCC) + + diff --git a/艾登贸易管理/RCInspection.cfg b/艾登贸易管理/RCInspection.cfg new file mode 100644 index 0000000..6c57635 --- /dev/null +++ b/艾登贸易管理/RCInspection.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"c:\program files\borland\delphi7\Projects\Bpl" +-LN"c:\program files\borland\delphi7\Projects\Bpl" +-w-UNSAFE_TYPE +-w-UNSAFE_CODE +-w-UNSAFE_CAST diff --git a/艾登贸易管理/RCInspection.dof b/艾登贸易管理/RCInspection.dof new file mode 100644 index 0000000..c0c0e6a --- /dev/null +++ b/艾登贸易管理/RCInspection.dof @@ -0,0 +1,141 @@ +[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=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;dclOffice2k;Rave50CLX;Rave50VCL +Conditionals= +DebugSourceDirs= +UsePackages=0 +[Parameters] +RunParams= +HostApplication=D:\selfware_83398\selfware\ֿ\Ŀ\self\Ⱦ\testDll.exe +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= +[Excluded Packages] +c:\program files\borland\delphi7\Bin\DBWEBXPRT.BPL=Borland Web Wizard Package +[HistoryLists\hlUnitAliases] +Count=1 +Item0=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; diff --git a/艾登贸易管理/RCInspection.res b/艾登贸易管理/RCInspection.res new file mode 100644 index 0000000000000000000000000000000000000000..2d6f24c3d9a870364649288b1c0306b551768325 GIT binary patch literal 876 zcmaJ=Jx{|h5Pc?9%tTwkz(g}L7BMg|6oiDt01W(ruz1OWgw!H+AXAn~{FzE^Brlox z9gK_}J0Q&SIVr99IQ9AN-MzD~Rtx|M;amX24SU~e>Jc?cYMoANyAd5SNQg5+p~aQP zp5HA8_(Prt$CV+GqpB(v{1D!`;JAjld@@+K+i61a|MTdsd{~!%b1ms_KJEh}cpe(` z6jA?@e29>sU}iiwp;b>~TL@2U!O)h%Yr)7`8+a;b=@mD^tI-VbODr7!U{0?gh%d@~e3Ro)^HNMvvU1UHt)HYrq~&L`&fQ16Y1SeYiaObZ>3v kZ4W@7aBc_JIL8%khzs1(H@5yR{A*B1l9s#*|B4j80N@tIJOBUy literal 0 HcmV?d00001 diff --git a/艾登贸易管理/SYSTEMSET.ini b/艾登贸易管理/SYSTEMSET.ini new file mode 100644 index 0000000..f185e50 --- /dev/null +++ b/艾登贸易管理/SYSTEMSET.ini @@ -0,0 +1,6 @@ +[SERVER] +ַ=139.224.12.182 +ַ=15 +ǷԶ=1 +=Ƿι + diff --git a/艾登贸易管理/TradeManage.cfg b/艾登贸易管理/TradeManage.cfg new file mode 100644 index 0000000..e9c1cc1 --- /dev/null +++ b/艾登贸易管理/TradeManage.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"c:\program files (x86)\borland\delphi7\Projects\Bpl" +-LN"c:\program files (x86)\borland\delphi7\Projects\Bpl" +-w-UNSAFE_TYPE +-w-UNSAFE_CODE +-w-UNSAFE_CAST diff --git a/艾登贸易管理/TradeManage.dof b/艾登贸易管理/TradeManage.dof new file mode 100644 index 0000000..9181ffa --- /dev/null +++ b/艾登贸易管理/TradeManage.dof @@ -0,0 +1,141 @@ +[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=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;dclOffice2k;Rave50CLX;Rave50VCL +Conditionals= +DebugSourceDirs= +UsePackages=0 +[Parameters] +RunParams= +HostApplication=D:\Ŀ\Ŀ\\ó׹\testDll.exe +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= +[Excluded Packages] +c:\program files\borland\delphi7\Bin\DBWEBXPRT.BPL=Borland Web Wizard Package +[HistoryLists\hlUnitAliases] +Count=1 +Item0=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; diff --git a/艾登贸易管理/TradeManage.dpr b/艾登贸易管理/TradeManage.dpr new file mode 100644 index 0000000..c59a9b4 --- /dev/null +++ b/艾登贸易管理/TradeManage.dpr @@ -0,0 +1,113 @@ +library TradeManage; + +uses + SysUtils, + classes, + forms, + WinTypes, + WinProcs, + U_DataLink in 'U_DataLink.pas' {DataLink_TradeManage: TDataModule}, + U_GetDllForm in 'U_GetDllForm.pas', + U_ZDYHelpSel in '..\..\..\ThreeFun\Form\U_ZDYHelpSel.pas' {frmZDYHelpSel}, + U_SelExportField in '..\..\..\ThreeFun\Fun\U_SelExportField.pas' {frmSelExportField}, + U_ColumnSet in '..\..\..\ThreeFun\Form\U_ColumnSet.pas' {frmColumnSet}, + U_ZDYHelp in '..\..\..\ThreeFun\Form\U_ZDYHelp.pas' {frmZDYHelp}, + U_GetAddRess in '..\..\..\ThreeFun\Form\U_GetAddRess.pas', + U_iniParam in 'U_iniParam.pas', + AES in 'AES.pas', + ElAES in 'ElAES.pas', + U_ColumnBandSet in '..\..\..\ThreeFun\Form\U_ColumnBandSet.pas' {frmColumnBandSet}, + U_SelPrintFieldNew in '..\..\..\ThreeFun\Form\U_SelPrintFieldNew.pas' {frmSelPrintFieldNew}, + U_LabelPrint in 'U_LabelPrint.pas' {frmLabelPrint}, + U_ConInPutJG in 'U_ConInPutJG.pas' {frmConInPutJG}, + U_ProductOrderAnPaiGQX in 'U_ProductOrderAnPaiGQX.pas' {frmProductOrderAnPaiGQX}, + U_MJManageNewFDNew in 'U_MJManageNewFDNew.pas' {frmMJManageNewFDNewSF}, + U_MJEdit in 'U_MJEdit.pas' {frmMJEdit}, + U_BanCpCkSaoM in 'U_BanCpCkSaoM.pas' {frmBanCpCkSaoM}, + U_CpRkSaoMNewDB in 'U_CpRkSaoMNewDB.pas' {frmCpRkSaoMNewDB}, + U_OrderSelRK in 'U_OrderSelRK.pas' {frmOrderSelRK}, + U_CKJYList in 'U_CKJYList.pas' {frmCKJYList}, + U_BanCpHCSaoM in 'U_BanCpHCSaoM.pas' {frmBanCpHCSaoM}, + U_ClothHCList in 'U_ClothHCList.pas' {frmClothHCList}, + U_ClothContractInPutPB in 'U_ClothContractInPutPB.pas' {frmClothContractInPutPB}, + U_ContractListJG in 'U_ContractListJG.pas' {frmContractListJG}, + U_ClothContractListDHSXQJG in 'U_ClothContractListDHSXQJG.pas' {frmClothContractListDHSXQJG}, + U_OrderJDList in 'U_OrderJDList.pas' {frmOrderJDList}, + U_ClothContractListWJG in 'U_ClothContractListWJG.pas' {frmClothContractListWJG}, + U_ProductOrderListSel in 'U_ProductOrderListSel.pas' {frmProductOrderListSel}, + U_BefChkHX in 'U_BefChkHX.pas' {frmBefChkHX}, + U_ConInPut in 'U_ConInPut.pas' {frmConInPut}, + U_ClothContractInPut in 'U_ClothContractInPut.pas' {frmClothContractInPut}, + U_ClothContractList in 'U_ClothContractList.pas' {frmClothContractList}, + U_ClothContractListDH in 'U_ClothContractListDH.pas' {frmClothContractListDH}, + U_ClothContractInPutHZ in 'U_ClothContractInPutHZ.pas' {frmClothContractInPutHZ}, + U_OrderInPut in 'U_OrderInPut.pas' {frmOrderInPut}, + U_CKProductBCPOutList in 'U_CKProductBCPOutList.pas' {frmCKProductBCPOutList}, + U_ClothPDInfoList in 'U_ClothPDInfoList.pas' {frmClothPDInfoList}, + U_ClothContractListDHSX in 'U_ClothContractListDHSX.pas' {frmClothContractListDHSX}, + U_CpRkSaoMNew in 'U_CpRkSaoMNew.pas' {frmCpRkSaoMNew}, + U_ClothContractInPutSXMX in 'U_ClothContractInPutSXMX.pas' {frmClothContractInPutSXMX}, + U_Fun10 in '..\..\..\ThreeFun\Fun\U_Fun10.pas', + U_ProductOrderNewList_JD_copy1 in 'U_ProductOrderNewList_JD_copy1.pas' {frmProductOrderNewList_JD_copy1}, + U_OrderInPut_FB in 'U_OrderInPut_FB.pas' {frmOrderInPut_FB}, + U_ProductOrderNewList_FB in 'U_ProductOrderNewList_FB.pas' {frmProductOrderNewList_FB}, + U_HCList in 'U_HCList.pas' {frmHCList}, + U_OrderInPut_HYWT in 'U_OrderInPut_HYWT.pas' {frmorderInput_HYWT}, + U_orderInPut_HYWT_Sub in 'U_orderInPut_HYWT_Sub.pas' {FrmOrderInPut_HYWT_Sub}, + U_ModulePromptList in 'U_ModulePromptList.pas' {frmModulePromptList}, + U_ProductOrderNewList_CY_Sel in 'U_ProductOrderNewList_CY_Sel.pas' {frmProductOrderNewList_CY_Sel}, + U_Fun in '..\..\..\ThreeFun\Fun\U_Fun.pas', + U_FanYangList in 'U_FanYangList.pas' {FrmFanYangList}, + U_FanYangListHZ in 'U_FanYangListHZ.pas' {FrmFanYangListHZ}, + U_CPGangNo in 'U_CPGangNo.pas' {frmCPGangNo}, + U_JYMJIDPRINT in 'U_JYMJIDPRINT.pas' {frmJYMJIDPRINT}, + U_FjList_RZ in 'U_FjList_RZ.pas' {frmFjList_RZ}, + U_CompressionFun in '..\..\..\ThreeFun\Fun\U_CompressionFun.pas', + U_ZdyAttachment in 'U_ZdyAttachment.pas' {frmZdyAttachment}, + U_Contract_Main in 'U_Contract_Main.pas' {frmContract_Main}, + U_ProductOrder_CX in 'U_ProductOrder_CX.pas' {FrmProductOrder_CX}, + U_OrderJD in 'U_OrderJD.pas' {frmOrderJD}, + U_ZdyAttachGYS in 'U_ZdyAttachGYS.pas' {frmZdyAttachGYS}, + U_FjList10 in '..\..\..\ThreeFun\Form\U_FjList10.pas' {frmFjList10}, + U_SysLogHelp in '..\..\..\ThreeFun\Form\U_SysLogHelp.pas' {frmSysLogHelp}, + U_ZdyAttachGYS_help in 'U_ZdyAttachGYS_help.pas' {frmZdyAttachGYS_help}, + U_ZdyCMZ_Sel in 'U_ZdyCMZ_Sel.pas' {frmZdyCMZ_Sel}, + U_ZdyAttachCP in 'U_ZdyAttachCP.pas' {frmZdyAttachCP}, + U_LabelList in 'U_LabelList.pas' {frmLabelList}, + U_LabelAdd in 'U_LabelAdd.pas' {frmLabelAdd}, + U_RTFun in '..\..\..\ThreeFun\Fun\U_RTFun.pas', + U_ZdyYS_Sel in 'U_ZdyYS_Sel.pas' {frmZdyYS_Sel}; + +// U_SelfForm in '..\..\SelfForm\U_SelfForm.pas', + // U_SelExportField in '..\..\SelfForm\U_SelExportField.pas' {frmSelExportField}, + // U_SelPrintField in '..\..\SelfForm\U_SelPrintField.pas' {frmSelPrintField}, + // U_SelPrintFieldNew in '..\..\SelfForm\U_SelPrintFieldNew.pas' {frmSelPrintFieldNew}, + //U_FormPas in '..\CommonPas\formPas\U_FormPas.pas', + //U_CxGridSet in '..\CommonPas\cxgridPas\U_CxGridSet.pas'; + +//U_RSFormPas in '..\CommonPas\RSCommon\U_RSFormPas.pas'; + +{$R *.res} + +procedure DllEnterPoint(dwReason: DWORD);far;stdcall; +begin + DLLProc := @DLLEnterPoint; + DllEnterPoint(DLL_PROCESS_ATTACH); +end; + +procedure DLLUnloadProc(Reason: Integer); register; +begin +// if (Reason = DLL_PROCESS_DETACH) or (Reason=DLL_THREAD_DETACH) then +// Application:=NewDllApp; +end; +exports + GetDllForm; +begin + try + NewDllApp:=Application; + DLLProc := @DLLUnloadProc; + except + + end; +end. + diff --git a/艾登贸易管理/TradeManage.rar b/艾登贸易管理/TradeManage.rar new file mode 100644 index 0000000000000000000000000000000000000000..cfd1a0392d1bff7b8dad7458196e42ee541b0e31 GIT binary patch literal 2185007 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

iU2)Q>MrhYS(Av8_ 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

^^bF7PWO+fYQgeYD>=YC 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 z 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

Y;jaEU)u)K7i49J)2;Z)I`12=!Mw@s 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�c^=id3hZM-u=-;(hsRtj+ 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%0D@U%TF3SenPHquGM<(y0Xz` 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

sfnbE@7T2C%sgmVhPLK}PC?uey_TzcJ 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

yRYG~4%EHyrk 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 z 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�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

  • P%YZyVMpTyA!`VGK;gyz8dTu;6>my9;UPJ;$gaX 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 #lAM4AF-A_5&$+r<>66;x85LWq?f z80nhETFL^OL`DW?BSckJ(2%xOj~wd~Nes<*WzJyS+S_DIN?}n=jK(z$7~5Ju@kard}plRti`K(+;i#(cU|PGNXXXITE-r z8Jk7H7U0XCfO8L1hb1A3oyES-2IB*{`(J@`&s)gqd&Pnc!|ALq;U5UYQVroa_e7@ZzVb^A8;~deqNl^&$Pn2{zl7YS7syh@yx!|j9ecDs#T{%vd)~P*6>VC%DpCl77dOjWUkOJy_R{scG1A5#fK=+q1j}lLyOgN_t*UD66F+Q!KkN zjymWG_G#L&Je9YsA^&o~x)g7-OJX=38e&sJCBkJm;RI29bMBzHpWn!^Ev`I4==`)^ zF%tG!;w}w&K{6DE*R8@0)XL^Q+v|9wOW~w_vZ-p}7;m+vm)A@W`s4oOckD3ew}usc zP(?(rNvc3f&l~M*ZkEfmT~9wJ5)}*|kt}?9R+Ex27*0AhD4tuv-*wxa1zcgtf8`F9 zmKuBdn6L@vqHNctXojZj#3r%XG*%pB#Zilg$e3^STy;|r-ENswYRi;a-8PnNIOrJ1G9Og@Uv?*xS^rSp)+Bty<5$u&s*v>RjnbhQcP8Mq}U+jqR{q5LN=-C`TY~f zGmwqcrsNP(NPuETF>l_*ojt#`BXrX!(J|l#o%rot_?B0M%(Q;K9f}9haMDjk2sBHl zuc>6GqIbk`j$)zbh)K)SyUOro{km9LuYue2?O9H9~Rae+2F( zoFqzmU22+~GjzP2By27EHjO{kLPY2}NO;jNXUzXR?Hdp^3n!yyqZ;Hbo_2eea17-H{_PYI&7@?B@E|C5x zXG|2903E5hID&g~5u}j*v7LOHT12`@B|d{$?g%+Fz~*P!wfGt7O{Dz?b6kXaWNAvb z+sH~c*zE=?cz;TiW}L;_^~&auQ-E5eN1?{PtaKF$)nS)ztVA3xSnQP8qWe6#N{Y0 zKJSj-hfZP^8O(5VC+g0hNjR%HhT^HB}pD39Xh_U+Ab{28djx!1q4GV5ca@f1eKE!qIGFM59xFcNB{_GR2v- z@^gJAr}dn=pnO)n+BwD6BHJX8USENm476~3No~w{6-cC-_O+uWVyU{4NPyAGp|)=J zAMI1jKD0Mp=6&EbQBe%?Q*^uUrUj9HRJ~qF&xe7q>2_&=KZv!}HLN&of7U~-znEWI z+f|Om1IddUt)y&I{_!=D7C410mb!@4+H18o##^b;w$-a@ubMqA**9pnA`ahKNg&{6 zA>3(vh4JM1cEqMRpDKnrR-%`+o6P4TyPRb&NfLbVYYgINwLZEZ#cPCYZ6)scObEI~ z*MSgNX35(a)JRY}4!C zP0vLi$6up~V0@=iISPgxvgULEv*_KS^TX7p!k^E8&LQ7lX)){yBn;7yERgzI8`a-! zwUMpyK5)qR<~0oZ%%F6IpzW=>4|uNf`ZSho?0{IBNofU3E;fdHHzKrg>0>NobzKu_ zpkAs=1^F&Qq9yktp0f7^2_;fUD97R%KFweng^9JFu>+C6 zXE`xTF%*Q&qC}oH??hsH06LuMg)pyrP{3!PS&A9 zkbO^_ms7ttD891NR&q^`oY*E+0M7W(_XOEQq{c6=*-f2P^4tj%5nmC`fZgJLA5OrW z9{5G|tru~nSBox{l>8xzn}22@^qLbkcI(`>fB~#z(K4V44Kqpt&}djs@_xjjV7ps+ zf5-^-Mc>L#&C^b-%yllcbpytnoHqV!*}41UQ}aon*G7CMi(KuGa2Ojqdj-g)a)Tbh z>(`_D0N+V5n9W4NcGzi{7Gi)kIaX(A(($8;=1*$ywD*Ix84o&IJ}S)SvTXP=5t$K9 z4pcz--(>BDw6k+`y+;ALN>h7FC3H-)DQ;VPp-dr@rt{0-pU0p6^34O^3%clkZX!!W z@zu0~KdQ#*ew?Eef-%BKoQXNDw01m|9lgJj`XJEPcc3&y&dQ^#X<68tPzF#Oa2arM zhXfjRul3XN84S0vmh|&J-mkCS@EzM5A&v|dz0V%ZkoJ`BNWxyrCc*>MK6MP9G)!{8 zi__}vxw$)7LnH$wY<0J35z}GMU6OK=Hac5>FLn1Y$7TS3^mF*k+4pivzM|cTPFgO7 ziybPdv7R?@afuS2$#(|Sf%6cJM)&aAtuK7!#T|}8_0hh`mX!Iv3=XV>@)9U$FUMFK2#mppdg;&g21t^miKA< zo%&d=?K_F1$MgG}V=CCo+^PI%?065>>(K#{(t%SA?2;1T&{a~YJopVE+L4!? z8m)_z4_afsUsXUU5OXB@#|Ck#TECTJ%Ula2n{O5l&Y2rbdbU6fjgvuajy9nY|$auQs?hKmOk;<`XO%j zsZwRf=aA%LFc+ky->S^Jw9}#f<%DJ1MgY|Q6Exz^gh<~J5~u08RwVrfOlTIXKmLg9t(u?3r`~&|28mZS3@xQshIyGK zgrpu?Rca1tm-Uk}_FXFIBko;{Eatsgr-Q-2CY^Kv`)XX<(wC6whSSuAAbwB~Clsrq zVX9G)s0iW;YwD#PpVjj`k4(As-TP}&Q%hoRuQ|9ANK7j1-_WRi-}J#(XIvjQjR^{p z%SyGVcud-q_QkQW+5%+IrU_lVw9Xl1{Mo8*%nhRo11+~s;Y=x$^s=yh>UB^EAZG}R~<|HwerzahH~Yi(_nH}x-E^3Z*i-Wkq66rz>victM{B*Y~r`y7w7dp zvSrDa*3-Q1`~5ohZ{EAwT9{2=@cgDgXr7^?sc~nTsu((Hl3dMhT zP>Eis5xAkuTDi(GQ8`R`+?J^w#W-A^ zA^~*mbe(z~{he}HJv(j;lo4rohN!!Iq(e5zEFi}cI>w>VuVS_NtfM-Ys_C~8baIT( zslz3FWd{IEVvsH`s%65uz3CmlW^9CyhzWver$-#cwuc09Wz?;!2wuog1s>d0Dl51o zoO+#jHm5Smyf9tHMdfbgr`g)e%1BH@=|Tha#1u{L;9#nk2IC@ytyzwTl>+$s!KH^#&m=w#5T#4o9G?i+tDcX~Py`0#B>MS9!0_$kIzlqj59{?pU&Ji|TGzp%(fy z7-<$^(gt%8wSP+SGcxEO$ff{o0QqQt>61dqx#8CRj<^Qm{1LqV8ElZb@E4$W&A10A z^T7QO5trbN#K-9ZDi9N(Q2?0?1u_TqaKSIN5DDPM%oEXz6p?C1F9B=@BYOZf0~W~} zu<~jxa?~CcoqAaMpI)(V>UX6;ycVp&0F-{HZBcg_Ogc1I^;Hpvoj-Q79~L963AR-I zT^S1vK^%xd6Va%N1{o%Etc0geUTF2ayABR(qp=PO%YbXW(K=$no>w#xaOqO(s z8(;N|KjHH?&b2)uz*PES9NJzdNvJZRZW9&z}w%Qu+>2 zaxbl6lFMzn!|sh2{@fS>D+>x*py`ao|4zB2Mpl=sG+EFSU)6QUdM&Y3Uk4LFop-|T zq^u?ys@ftWWcA839o~M_Y9KB5hH!M|E9M{0fcGqY|m;J!ZmdEevTc~Aj=_Ke2g?cL0=~%0QT!U3>!#@ z@?u+G97Ev42`MggsMZ1aZF&_zr)bt1pS0j13YFy;GLxgMxme&uI*u2k*I<`+$=q18i0+v3q; zV@PBpjgoD?R&?{*WKG83GriTkaEexJ$!N3hrr^Gf%CJY8FR_9+(9I&d-QA|VdyP%9 zL5jFls(9z|-9wR%J(|RLVE)em?*=r#1z_+V^s`i{t4P|@=YwO*pUnGIhy1efhybUH zM*nSA9bMt^H9!K(RI>rzviF7^RbQH$W1zy5Au@lp1h%-h|I_*IT=T54(jRl&XTD*7 zOj4ysNq5Mex;pfCiqSL7a3(;N+u@yU(RDy=8SvQM9WO0vWe8;n5JpS~JKvkD#G%M_ z#WGwo2dY~^pjN!p^GHfDnqE*YFQrTd(`$hIZHP0>-IF;~`e57%n~U;G>5DIac!YwR zk+P2TqGn=mDXC{z{;xAygGR54?)}s3UX`iI1E5E~d)YL!Gia%CGw%Yn^k3|mRH*3g zs<~0HzHX4{IS*Yc@iIEkOL>bw<@bhAO4d!^@m$|Y1W=} zU$SMxP!dOL>b7NZnLR!n6dXsxyZ(S1@E|bTq5pVQcfxIy>0L+*oeMU~@@wQpXqpC= zJZ)sjC7>LaND(X#x_4|khe=}?p4UrDuE`%auq(`6&3b2nFny!or7WKKwu$yPu1R$Y z;h&e$&?EG_VYykSO9qB`618OpRR4w~yI?AX{UB7z+zDYTaxrQP1yrYE5XZ`6+@Q!J z(Fa4likc9aQz3nc44^jXwk9vqTd@rDEu6FJsMT(0^g@_W?eh<^CUA92u!BFF-K z@i|NfTY;*lSm%16p<%4diVpw&py_!Mq6G<_?)xm9JAp^k+|}qjGD0DUi>&ORqzKrV zxt1Vw{MtH7(3Z_=pI2zL6fD&6NlV!-h$#I!$U4%CRF3kR>4_#-P%i2qO?^rjBk*0E zea|K7%-XHPmd zSd6;MCy-^$8#iE?U_|6SCRnS`O0Ije7o~eJ&o}miMYtXI(7}YWvS^kCzddJU%So?y zIBZKcL@`D!TO521}2% zMdTuE-)hu9#|V<>7nAxf;W;wYrx((OaVa_Ea~)PvgN>y4M7a_+>8W9x1lmW?$2p0W z#{FTQh6;|AM#n0q83@x8ZOreJ+?$53il_8<#T?L1<_A++{Qgl34^UG!bD-pqqdXf6 z9IPi{zL&f0R;2v263RmPgtNzE>E)!xcJkB;Yt%EQQ^if%uS!?d^jc;1R;V0Qpkmw$ zrV`KMU>_AunYOu-6Tz{kGsK^bH$n7VEY1C6r*sb>{gtattKS0(`{=OEYp%^S7V3RV z8e2|#rl5HUu@A@e04C@h5y-nq!>~U5BUUE+2m8=wi4NJNa?P#XjXAYJ;lA(PPN9$T z8DWt+>kf{6bzQ0`sRUUjcU%Xq2w`ixiaJ@~9|*X<`g7oC#w8dF`XGLYX8U@8I)Y

    HVtG|WAk`fR6Rm@KmLY3)la-3?R!(fu}=PX9li1vWSFxVlM%>=dkV zs^InM1MNCHsY!iS#ra9j!7PVRU`nPHbM!un?9}GCI|Zqx{e=ChElj9X&wP-YRgMKL z$I^ycwOS2VstZu{I;l)dCO(21D>JDjvW*he!V+wNgw~F=FHTItt@}2VU66m`>YhP2 z6r$%(`oM15{Z-Xb|2I5R9k4yxAzD+VEB{2&Yh%eY(x-WWPVUFLXNRuKneCwsZ{hzS zSkp_jO-RIfV~3DTM2_p-E^jUFo~WUG;By)bcr|kxaBbvT6+TDda*fB$;L7E$b3v)A zTXLtk{qHpKt#_AC+_rS|DsA@gOykpZ9L}dqHv$gcX7Y#BVa|GO+3T=$IaDfaM)3yb z#v4YxpKk>r+U(@tcj@Z-Mo`%MK|)72TiB%)SWm+OjCroR{(C6y?hPOD9(>wIa@XMr zM{mR1zxlhBE-GWn1|ccgVm6tvzweshcR#d0F}H@)rv1|n`GsyW50Bn7 zPLpAp@#UaM)#GY6G4FGLf~dO60qR$?&1Jt^CPGvX^C_>%PZLE&0!~~V-W_JNCzqLS zJ5chhLcE0`_T4E~G;ioQH+hq9o*iI3wue*dutb={X5B34zbc)LUlP&4jqW|AZHrpM zi=Nn!+P8F`oan|{rHga+P=h_1nUpY@G2k%T?O9}LZ8*8`3I3oMTAB&l;6Lxlp1Cs3 zp)@g;u(dvkGx{33!=e8|@;H)t_SGiV)Grofw#xankX(jVE`ot5z5CTPLzT+ zfR9@6no(0xqbxibP;~clppj9huH4xcxUh^*`UyVQTKc38+iB}HtpZPv-|MNm8CIUY zccj%NCS&p}QZtyfPq^cJnkISavnH<(8<-zPL8GUjl)z0d&Du%W@T27weO9mH{qMsQ zJ(^ATDFo;E<<039mVz=t4QV}6QH~aQMqL!0bVc7248OHmE1Lj|TnzSd&62o~$9nhZ zV|b5URwMEYx3o@lIN1BLz*`7P^;ixKFfK?RKMs<*a@2XOUKz z7phv0s4E!noIb&Yh^#rTl{5w~W{s~Gtd;ha8)iEBQ`3N9$0E5sWP)+&pzpPt#CUM@ zvFnFLgJ*ouIfpeuw|$Y@c#I*Bv8W4=p+f;OWNd>bnWlR#)i3m^ch%{3c0QDcii=f1O zCNU5^nKR6r0&#~Mrt>MrB`vH<|Fu2;ucUfwfSKDZn8q5as@#Y9YMH2`sBUFp&nfbz zzZaQyjtM&JMFpYSC5cPGJu4*B&K2Bmk?&A*N$^B#0)Dv6cpLlR* zjAZmRY<;ui+1k0;N%PHE|B-sTdo@n3+ow$+%LG2$sJX+Vh?Hp_Y~f>ddA2=sv{o(m zxl;{AD5m1B&Pp^}J_2{7{UxDd%wKSG70Kj@&DqF|M`LJl>gTrjtA0LbxxLl7KYT!C z#>&T^2A@G`!VAvB55CRUay8rRs5#)4;ZYnY)wbDb^Pw$*qDK2&mE@pHSLTXwG!yPo zgC#;dCyr@(NzpC<4v5o)?GWdwE=h>DYYSuMCKV4@tr$nkNLnhvW(L*)v|1pCQagIZ zwB4$hmfs-~b=0w62@~2!?*1*(M$)B&y^CVj)6pU9FQTRYcbr3g=?;){ULz4?QB^#! zOX4YJwyLnVkFP!SiYWkqnONpp{WBVuZ92#nfB&Cd_UWohZ_npYmJ+Y$nTpim_$DWY zkX4V-)2udHk2335EV&w1D>D(RMx4ufA@uQ_-kpnHy^vfnHm`E5M!xs6hKOI$JoK*p zu+2I3)f!bf?SLI|*q;wl6F#8CueU+3rcTit+3tAU;&*(;{G3Y$1X|Fh%U$L^)*%Lr zx5NBdw>Uw`Qj@pPI-%s+9wyf3cFB9D%p+5S@4``SlMvt((Qgz9OMa4EAf;slu{ypK zVlU<-+NHH>o>;WCckNZKO%~#mzTc?ZG&f8hJoW1snt?i=JZ-# z^hwsb=LpgL`A}>UfdrqsT)Q%-`gtKRH>pCcihM5d8pvRtgmw(mS0PNh-u+4oYed6) z1&U@+vF6N%{rXM1Ed1K8LDd9ih|1Ymlr&r?c}uNYg^62^@XR>hq}7(yDIJ^c8V5D6 z0ED;Jvf`f6M^a{EnR%FG3#7`Epso{~rg%hgi;@0<;_3C552v{@^2v#~06 zQ9QTa4G=Z}F6%ooGeK(J-Xq_JmlZ9$w|Ub=BeVe>okxsFLTzbea9LFygqZsO2xQ1v z;O}(hl{(Y39U9=+hf-2Yh9B9qMsaYOUaZ%Juxag>G`DgLnV5jQa|d2A`&)rf8evsu zO;*b~n!~JursBfVO~^G}^rQ}P?-?b)Hozoc5;Z@MciszZmM(eYh3-?{`x?_$OgS$) z{CyQVAM2OLU+$J7DwCM1))-_TazAPQq*SUB;&2D^$q`QkF<#)-r7k5<9=T+&zCS}@ z`Uz?11mLuXy@=ff{}}EL@4!w6yY9+@tsEzu=+lIcBX`}VAHx{omkv2Hr-m;e_Jni0 z&h?czGQ!_A4fyzXwF|s)X1KRz>ZNQzn{@%DcaYB?Gvb8UfZ&G2fPDI!72;nXsg9Kn zD}#XckCEt%t!bW{sc7U<_csPqb3R=UYbuVu^Gafa>UaF=UmGMBJ)A>`fuj%1rSxB1 z?ldaywmF^Kjx#+=P^%slqu8L0g ztyl;DgUABVkJbRh290f!#(IeZpWwRcq_{j8J#-dxhB6t~B zb$mkrwFuiyC^q;aR#>XYJm3V|cfWFfze~NUz`~Ump;WTJ=2(uHV*1OQps0&7!kPVO z)5uy8iRC;}HTQ$Ev`1%7IE5dIunZsrVqnICb zv)+ zNkbwl7x6(hpsyMqRRXvq*n+nSvjq4jf(qm&&=t^1;8&q60UQNyugQBP-Dtd#p27X3 z84(xBszYPnn?R`yn1?W%`#I6rqg3^SUQ6Hd-dK2x0IKLSSC8F69YqqN-`oW1X}s&gx1cSq)8@xNCz8tz@@SZ6-V|t z$z#LA451{cQc;KHl@cQ+-Nfo~r!`NeidM`K68h7iFB$y{f12GFF;1H%H;zwvfo^(OsnBV5)|*I$5+I{1+?$d zMle*$r-yO2DNTFRZd){{`Y&y=Li=?zDv#DjuGa5+eIB!-n>GhoI5kdKZD5-0z(+@f zx|#vBifA16Yz0^1(1V+u0c%0U1CH*%Pj-zDqbGoDc=AL*DcHEYv&H4c*48ifrpmu&^U95tzF8=EdN3qB1GbKdO6W$Yd^-n!rk6+toZ zn2k;!#EDk3KbM}Ww=cDxS{vGl@<47-?$6K_`N*y_xfsO^!QI6bVJYlrUhj&kvinX} zKxc>~F^L_rE?3YGGDnuB1d_c~o%HWEMj!0o*0a7fR$q6T6LQ^KF7GFjneQL&Emnd0n?v|(?`nBuYj}D^>y-!Pe8tUXd&`1nXDh2~)`QFM zKGbo^Vm;=X49w>566lrEAPhXFuc`0T$xBq(qnk%1PU4x@u{Da!$@enJ z3Tc3E5V?wxb4C`OmAVG%k{N*W%Kc-<0So*Cl1${ulzk zm|*#B-(eBGQfvFKe&C9iUzn|aM+Jx1ewDym-x$?B)2M z!C1B0dJ=Y)+>-@@yYnEubX*FQh!wT`YN@nx#vPO}!(=lZ1%*RgkNCzX(Ux9Kfxhyb z`!)Yv=jnZ5suJ&h;5D5_1nkWRLUuxvud0YwkJ3i;eRS4oTMc#d7`ji=ka9&DfD!d=MZ(*Yn>6RGpEFvAThQrLrvj3~jzq`Jm zor18@SeZ4b)5$ZyQ(~wGn zodGDvfRYsl#<(wXwc1vmB+qKbNOv#x&!uupd#WNWzYh5J+du2s{r8XxfWgXqoxI0T z(V}&&G$Ss;*O=7dtiaV3d5n1A%mbpkM4H!_?B|9tP&1PaUjQd;s`r@k%Spg&qxn!v zV!J(vTKau+5SN(6nG1FyG#xe>IR8!?I|=n1!g?JMjXCh+zNH(Oj8!HxsgQ3l8jM$F z2vL;ZnI#k~Maa?hEIhwESS3VQ1vEpUj>rOZjG~vkpL(S@lyACI=A*kAzoVsteTj|k zi|JcpyCDNSqHh3ivm)Ye!DMSjURij^A)7`*7`znSX%;p67lA}fXJ6=$jCNq8tC=U5 zyb#ra79h)coaKvg-d@SLJg(vXQq7W9o2JfgL$cO@u|{NYFX{7$#HDs5$2sI;QnHx{ z+g9lS;y7ok6gkJv50+Nu5f6FGrx%$Gy9~TZ3CwYcFI$-$>!>%EhSE<&#K9=?>AuBM zqc)Ux;f%^ftS!zX8=@>yZ`rHQMyw=%dWPNuwXh`DA{NrLatPk*DUqaEa+rQ-)4@9whkz%PkaT{n>N{|DWP zg*m*yXA~bXrj5aGFdc$kU8-w?BokwKXz5DHRGPb+T}`mST8fB%3n;TWeBO%0v>Z3?!DZWpp!yA{CGI z(NQfq8X+d}I_m^rmzBTh(qb>q5Bu#_FL{HmEw%F{bDcU7rB{YEH#*i;Q4tT}OUln9 zHQQdfRd?tool$f!zwfQ?1bzjlec!rq5K13ft>iaJrShgAV`o-}m)yZQ*X)V_4@&yoO!Vr%;!Tq58Z_1YYKIQPCu}bJZ-npsaa< zX*cL*edenKx_ZD=87#>wH(3aKzem{|u5XYF^y^*(pIRa+pOi}&8_uV@bnjY^Mj37& zx$38>jI3W;yRxda#O`k7+>!Zn*Ef?u!uP^IvPo?b5t;aalo0@D!j=do>g!y!@9#dt zbd@5XrLQn*wd4=53(P3tIe{-H7z0@knH@~g z`tz)bNB~+a`KpM}+7w!5BYv-_Mj47gd2HO7TeiqC1&6tPtNLAQYDjK|eSZf}tM!mr%#RttQ&t9`44+u(7%%D6GrebM|NJ$g%be5UK?)Ye}zJiQNq z?r&=dn(KeBSW(Qn3D|V~lGlxlA(jQp^7%PvWN&g+^btII5kRXiAEr0IY%h1`ZhXU1d)4wpczjJ3Nint8?Q7O_Z2j-X4*=0Z6`rQAO2gLIp;37~U0(AC zzJWrOPD4wCWH*@_I&^tutxT_wBVO7bdf>pRT=Rd#9bNs6FU@^D8RP-MBqRvP7}2d8 zdDV`1qT8^Or@w;SX9W7mO_4y*;&J626Ai`*%|$K;pv0FwFhIh@tv`?w8;8R}iq04H zk`S7kZ00p>JYDA6KY-^ zH@iml61hMT{3@bcAIGWbXEDX{ZOo#zs)bFeFJVg7tYZWTsSnG-6--o;EMW-aEny4% z05z8MPNDajTK--{I-|3VGM-&LK!>~JFJkJB?`sJdut?jheZqA>Dh z=af32{EzxSBx0Pw{G7-`lxgUlcpg*^*Z+Spz90Rp(u%V4V=UgaA!DnTzZP>Fzs`nF z0%N0wO#5=5oo&!pGn|9f5q3;riwQg)j85G36cH436|hInraOB{`lMn^cJ7TU#J;eVT8!-o3pKaM<)OmXN{EG2IJjW?jelrmwShe^Bi8C{SF!6vCggx zDk=i1e@np~$%T`&{$s&K0f-j(|25!-{z)%10@=k7moSo&PtJJgFM^!coZ+6$9RyF6 znBcyTK8(i&c+c%K9F|sS^~#RnQYu$sq2^L5Z`tT0ROD2E*;cKf#H#sMq00WxGvnrP zN+kU2ue0m-w*~0Q>kMFqaL-8qwm+T21e~tjz(&kM@%(R=A1)z64tr{emT&wp+x*Q} zx$@pR32YAb%u|;Jhd5oV#u9Q(3OsX?O9AFbUjn1ke1nYE~fRD#|#&HNM zOjEMYG&{xA4#~^2)z|eiN1KnV9+OL~-h8@l4@yX+nn^i_nCNOcQW!aug+U3==UEHC zB!=d>w>>EwGGgbzCz(i-c&B72H-vPZM^Qg5&6YSuZZ5pDYtSDx`6HJN{E@Xg_@dz) zLMM7AVigyIb$1}Bg(MXaVjCffLAnlqmvw~eHCT@HDpxBuIC`t_fufkjNz>n@;FtaAs|TWm{MFVdH6U ziQQH}?{;6Qb%1%j?cvMe8*2=RQfyoXk}EOZsZmzf^*j^*A5ySI2GMib89jj-kSDt_ za@y$EL8tunl^y21fvrVhaZJHJZ;KvRa@xl8^paXYpJ0K>e{~F0ETS+x*MM^#bHJCW zNuo#2pcAN(n5O-~)xC9BeZG=q28i*jj*5O)=UEyfHynJ4IPea7ed|8~;<9)IjVpULJn;iH4j z>-HD^IY>E|sLIHKWsN#XKuaoPY9y3cf=&h)Vw;x?n1Umq&P{J#9onbZWla{xALIgYu2E(jjt~i+qjVYTMTKo;i&7%EUV*9XkR!%Srqk)D8QK87Bk%TIO2la=s9Cp z)p`NcK7f7irX`WK5vsO-AL<6~eL*B&sv)uUMK!*tvpMSs@w^>PvHIM88&t3XY3lbt&&rB{u(;MV{F_|E#UraS((&S{VO!{H- z@D@oXC~h20{8pk)v$PHKtweer(0_yGkH3BnG%q;MQg?6iY-e9Ic;ooU>(&rh)G6eB zVZKw=V$;7@&3eVLMPYGLTZn6W0N)PWS2@@Z_#s%zw7<_!MvO4x8N$qOKqQAL23YzIb^X8yDY- zdIwP(q4)2^{N*E-Fjov^?sQ`oNm3!O66`~2gEnvc5hMn4g9M9ag!PuLEGGHX)(#l2 zY+HlN*(}AI3}YmN6>>~S(-;`L8RfWiox^4@^6hBcy~!+q`8j~&&9>c+FaWz0Q{r8msgAWikG zh%_C8Ju*TUV4Gb)`wSIblm;nzj-!P!g&*Z)azhsj-~HKXoH2&k?`(n8Mn19BWBo{#L;xH`Q$bK(z;6#w-XGiV{nc)k$~K@Cw=mXunymoE{fM9fMZ?#oYQ}W z#=Y(0D%E1JQ)+kJWs*0K()D-%)h&9fydjNy_2ff3SLzsA`LW(PbKcgD$!%$iCOdmg zue({`Zx^i2`V%1V7_d-><6lck>F8d4pe5w0GKDEKa$yD7xIq}S-Jo2w#F~VZWTlGI zo-YheFH1&*2`AWRn=(Dr7}5tF3JJyfmFdp=*k)-%Z%##Vhn8GpUwgQNLV8lV(jDzE zz*$H~ThYJ5m|TxL!@YD5{8lyN-8LO_-|^-vFbr$(SbsNS7oX+N3*g*vQ|Rw;*;`=$ z7h~(hy&EVXjIpKI+8Hpvaoic)CwJM#%ohJ>#!w&Gpk`f~%uCVS>v2Ea>JiyuMrW@M zW(MfvS-CwRe+UzGn(Eu(oIc*d`oAZNdM1>`J#-Z`fF(TY!xk0vAw}(c{7fxDf4wdn z<6>Ty9w(x$zNZN`f~>x>j~4WIIm}=8I(2p!uy%N`qN(;Qg6|e6r`Ck#_P{T3VtBk@ zWQH(RB(TMWe8^FIT>dOc|2+_HzZN+%y#Qvi{BQpJH)R;~dlB`Oh;>Qq48K5qngWZ> zZ5Z@AUy5)MQXu*K#}*&35Ou}}lu}bsF?8IyLC0B(TQDzEmimG(cUM)D}f{fg_@|QySuo)~-S>U&`ad_973T%<;T8 zN>%=<11gHJ)$R2xht>0tTZ+#ZV+je^r?_jB}~%SxicWA{3$2P z_C0=LuzmaY@87>450K;@jTs{pDSQq+=s7bPm8o+W;lG5y2p$W;K9irUz8T3>Ru4l? zgdQ#iho$S!nPyMeASkwM`3J6otT_j+hNTuo+Ot7}Z1}I+Amo#LrjV!uJG9nnfF>AMMT0u>+e}xJ@Q&f{8|D-h*b^z!QW>WxOx3UEr6B`x9 z@uj1&TN$)E#5yOBt5e$y#+ILX%@BA_BgJd^y+0q&4KQu-rJlg? zs3l|bnY*9()&&qDe>tpRH8Q{MJZZa+6ZTQzB6%@#Gm`HYl<#*29w=o)0D=_G7^8K43c@Ogh(-9iL)6T;%>>?cLgm zzyA(3`&kT&+#4F<=`4%U>(_Ucg7m&c=+2<#Yw0pBDo#M3VUc<{aw#E}z27fc|Fw;N z(kM~ngucXHtlhfY7=d-1<-)H)N60;N4mXwFx@@2I`Lp@&e z@AVM^6akv3hx9M#q93OOIb3SmF80)mz#Iy|cFh?hle}C@DN+|Dux~jTZHsVudZ+y3 z9X0I^gSlS?Y@U5wWbnRZ2Ryg=0fds-T%F~>@gq5V7z+9v<&#GLt4lg2;fzwol@+y{ zGBhckS2)VVkn`EpLRiYjVEvxOP>8VlrG46x5XY9tau7xIRw!yA12mW;3ID{);^HSiR4^8{JI37Nv9# zM(Pfc?hTW@AA_NK{@L5t@)|d<=QNCr%8pgjy(-9e5BeN3w3}4`V0_~Wc&A#eF?75E zhomr$AxC*l>ZzH=0(dErWSvHJL#|DQVK6x#S9?CKDHt)f36ArepICl*(S$}{AxPP;Rvm-IOemxybRX5`-u!1PkhvU%U{C*VrU)zR82uA8@LyQf!wf$f zUU_Rnt<;!oq&NI%OAzQQQ`ApT8A%5xIr0eKj+nzBI#5C3jVtyC@PR+0igf55z-Gcz z0AU8&^T2J}kkHsyK!y|lJ65Q@V?A=qzIpBom9!QY<_15B%smmWjm$P-9j}ngG?-1S z+&?EfR37zu5#j=zp5Kh+Ydt3f<`)FSHgrvekx7dUe!y948fEyxxwqQG4m=hmmXN&% zCulrYA|FP)A(gFeu*~kjmYRMxIe@9rrmHY1^xDAF%xDv(BBg5SB^gRs zE<6b(y%m`mz%W{9 zK*`CC1e+Wmb-W0PqU!uhMo2!~D%=qc7dJN{Taji=J{Xd)8PHXl?K zR0xE$PXqYIA(=DK!s@?O1Thg@k7{>-Xg7e7_-QnN5Hhwf_;AHAFpzCKSi>%05#hIn zCD#PW(xY|njLHpKNXpCLko7sWnULalSI<4bG@`6v*o9Y^TaOj--D*U(qC#_l=%HUi zt}WqM0&Q@H;?;9X8KdbmG#*+4d;qz!0V?Swg^ z4+kTnRwn^TAFjj7S;HE9V-tU`4;u!#@RbXbr>mT2CUA~Upb$ZW2@p3 zbSu{>Uvv+6am);rGKi#h;5B%qy3519ynu8sME^VJIdcFgrLWXX>|08TH-9`;b1EzPvZ55&RJ~)2 zsL`@5+O}5Pw!2r`wr$(CZQHhO+qP}3HgCUo@5$ch@0Txg)EueIq%^8;yQqvJ$4PwU z5In8Qt7_rwaPusbE5%HjApDP zdk{s9i%pl%Hre2)Mrz?qt(b4ZOpG^=lQeJk{*y#mV?osI zGz!;D#GBPw;F;g5`<$xQYvRKY1m7#J)WF%{mkBs`RbR$|o(ml*D6Xp-WyIOAuZ^Cd zd?@Ue6j08YQ2G>GTK9}6m(-|fC}-DQhAS5*X4PF`$znwIX|R`#o51~?RgD`;S6Sk; z6TZ&q?rcr;_KKI|+Ud|r`u$qlYy@wt5@qLX#8dk{l;lO-#MUdBdp?T7UsAybJ9}{HSbnpF zb2Pylx+3gO9EWJVgxrjAtxUEcs!2;9!MJ~bF1w6*pD24m|23f zE9Rn`1~_0LLKE-6o;Cj9wcmmL7$&-}46pxfbz#5M4zJRVY>63JWmj+d5;cbM^mUr3{Q~yJL5Su20!83gfF^B6m;=>`sFp`|uKszzO~Htj4-KV(uiXG7aasp3kI{+-D7d z?dP$4<^71AnIus45x;O3WML=+2n~cEdi3)onpO>}OH~}y0;rKU8q0JN%FWt=bv4Z$ zvW_D25rXBi313Wy53i*=#b9F<0=3(tVT-&oUm-Dy(8Mq@J|6Fe$frEWqD zw#JCigVFl3fXZ(wYjfU3#`?@Fi_ftUV|9AEt?vHgCYz6fCo{BsxF8dWE7MnLk0k|| zWLQ(Zwcsmhizc@!G5Km z!w*j$?1uvc#?82xdSyYz`SD|-elI{Mym0e*2H}b`!P1x5X~TukO14;iP#sEZ`-PZ;CTM3XXk9}O9XDzl?X+K{h|eDTiv6O;8YUQi&-r| zwbYR6ow1cHt(E-w_udV-()ZTCI z%Kb?BmC?$6Ez+>RMM~x!b@XWnmY%1o^hFyt7Xx=Oig+?aBNL7CXux^3_lq&7>_x-sVA;#qi=aT*OMwUJRn3mAsr+JU= zBo9KI`m8^|1*3q4jIwL<0X(2Xo{s9qo)^vpw)FG0{q%MD)kC*ghaEeg-f#oh-H`%> z$5hbg8KA%4>?$!I0_-3<{Dz4wdb{sCU`#5oS5l2}^z4J-Y@;4)0MYnhH2=LaWYZp= z<^+Y8-wqT`30ikN`+95NV}jOgTFZy_vH#?DyVFj-zc;>pB3-~gc%t=^*@aFF%xBXI z;=sAD=B{`BIYyAIHu!@OY@Jmi=)55@3qy9&x?I1 z?UQ}seXAG-R`SS^W%7Vxs6V8q-6+t-8e0Psmmm`^)4!=Sya6?U^Oh9&Bxhy}kQ8!V zi;Z=t7%l2%sCbfr;hW6R9OzN~v+^8h0pdh^k{b}9A2oFiCG|JD2>3|ne-e1BeYqnoPCJvlf1Ow6o@ z>es$@s;RAohQfJ#M?|j%$33FZWGh6Pge;XqjTl*h3JGJlF+0%_v(nvve|@pXDZB%q zBFkW_N2~fF3tp77o2d04PC&A$sY43h!!jB z9q1pac|zBZL=E2TS;#vNh_a;V*oqClF#s80vonV>f#(8bkRz6G2gAMKij{kNp7b8b z{f1o?_leziY8`K=*(1*WG>Uz8<*I-=Fnmt@wN6q(35JM-S^?p0(IsBIlph6>(16uj z6c5Q#15D_BGy4OT+@^fL{zj`;53Q$avC9I!$r5v$J0E9NM{{NP+s`to@Y<~7=1NZL3%CR6M8KbArW3^B+;n(V;Y1VHQV|W9=4c-%zB3G-VeCCiE z2{)>al9nfk<{CnLrx`X%0%&v0Yoz%@@f3Oi6pz`S00s4XLm+p8W^#cKD-q1e8Z#%j z&+umovV6}KTpRT-2TID~r1u*==xRI!0{t$_9(!m|mDUeW252gJ60+c`-|802CRKkc z8zGAbJKr|&|LU>|L%y#9RsoP@aCZ^hyKl^ckA8_hN(IR(V^4dBF4+|%vBtZj`pVxR zjgBUiPXsITZ&BLQXytN+E|V>_L$rZ&<65yZKbYR>TR2f^fVWOjcDO562H7Pnm6I!l zGKL1pY7MZ# z4w7-zf66}R@l_ivS?4A!W*lg}FqM=+y&z}XA^w+VL2*{A!m70!yK zR~zk((yWIk=fh*ter8mIF(N1<&u^#nMzcy6tg<@vmnw&GEa2U`H1 z`s|8%@>G3$l^)ldj32V;JnpV+hmj;cr{zq* zbVds}_H(9zet#aavy-N~wFu5piY=dXFyze!lg-xs;pHbzBp#aBOG6*oJHh$#gMl*7 zMv6Gnap9UzxMI=DRSI1B=`XLB>oxON1a9*ZuABw_CG=m$Z$q&n_=96+kKMzgCj3pU zjQ#&jzhP`#VRvWA_MBPEhTu$cY`LZJU*$@?4tQMb(-B|DbYHtL^-_HPAy!4#4(56oYEjTSsgE6(3aFlr!{{w5Ui`OF;@7`1=%di)*o^1EmO^WagH zm-owlH856MXf~1xIaEd>@6RIDXzG#26%8i^k@)U9v59ouZm??oW;yLXH1 z1gN>wm#?eKABg@o8_3Yk{(QZl(*!YQ?Lg79+a9!cD`6>PbR>o!6a zk+a~qdK6!bTjbenw2;UmtTUN@ydA{1Ls`M*DXnwpyuZIE$-<8*C141(w0Hfvwq2(3 z`kVMCbWeoA9fmd!4texahiV|0yz($FM0bSpmB@um)9-8eGiE`qj&zNme7}9uu&=G@{w`~37GF~78|P_2l?qPb zOB%55WkqHIy`Z2R$l14}$8*pu+5Zd0l}se`MRBS|K!(jV-F6jj6z)e5#JBHzlfm`+ z0?bU%6u6Y0b?u8DW#BvgJU_``kx!OJdFm$(l~a9lAI|3HvvjSprysFc3|GN>5UcH1 zXc#1o_tIHQ1TYFb38wXZJMlmu)3o8HJ$BGR^LY)n|Blq}`1w5O6M-twp>k&NYPl44 zdp9v_ds*~0?`Soz=Tq@3m(@|{a>#?TX+*rX{2r^PKaRR6elHB6W6dlZrpTubo_HnA zU#;jzqyAsdYDA;U*Roq-uH`{^D;%)7p20HUFv&PqXH1uwqwAvdjdC(W4hzi7`?6cA7Hq_peLQr1)2$^)&$Y1Hckbz@tw^RJ3N2P3 z?&?X#&G%=d*A0( zT8ZL#ufDCB$L|W`SK%J(x}}Po2Q2}>Tf!l@N?jH8f(LPk7F@}B*>AOO>@5Wthby7y z4OYRg9N(mFLmRZ{yk?Xp`6E&H*U9C>%9mR}gnUpxzg@>$- zK?Tjd-EWzcaSzCUEP^>c6IeQ(!p8o+D5{T3>nIqxAAOdirdJVN)p5ZsO)L)MXILBe zWTDlld9Llz9cQPvKK8Rztw_?0SU~DWkg3NPEqABPmkn)|J=7E55q;y@J)lC>r>6)} zH-knlx00@vRh4+@WGB?;l1SNav4U*d50PJvIfnCGKk0CWBnAKQmfGO_JNx-wyD^?6 zK$%_B;eC0#EgG8Uk7+hz8E(L=lI~e-h1Vuot{Xq2vpDMCc86BKA=ii-uIJRd`z9H) z#XwXdp3LO68Uh4pn0!-5z|AD6Qb7vZnvsS*kKJRGah^N#c0#8-nk?3OU| zvuoT~#hJoNJRq0(vlm2l)b&Hmlnh{03g>8Wv~=?ycca{bNujU(sLE&57;5o3S_V#I zc^%p}*&n(wi5f6?3zkm3fixe#6y`59n64~TLz@pGS1_yMMrBG#R+NRBhM z+eo_CIb$N&(32m|uQ9B6HhdZ;mde5#mL&uZ>>G)+vSrq1~$bBCh zN@_QLpC%|;=zwUNFZ&V>GS9DKwN6osM-Sw(zmkvax8fc;_PD9=bWe-#zp=XChUQ1c ztOTAkZm9zj`$3q}yP8f6;TIXzCH+^r&b)`L?ZszCMEz^ePf0g)m#&oKh$dv=b*PQR zn*7`6T(0gALTU>(DsEaxYy(=|%0QQ`5d~df;@9NdY|oQU>R|HM+&jpLubfyf4FB#; z|8nT!_iYqabJ;%VhZ?dL3Q4O8O0aup#d(CQE81?a z)7QuSw`XN4{KEC|nDg~3lHr#>j%o)1$}R8O4*2al1<9?DnYI!nHT^Q$&EozAFtGt8 zNX-;0s^l^{V>IG^y1K!zIH37jTD|pp+9I+zR(P2cN>xPJ@A&N|_@5m^$Rc|#ekY}+ zw0MEe-><^=$$*Vo&V1ggL~<1M42bh421RXc?|$d)Q2xxWRB~j?4$D9*o*X<1XlxX$ zZ~0D-kW1(A$iAB{j~*zUt%Z!FnF_6xh5_x$oeuvZT(~tOMODCeW0gDKxN%iYq}4MN zhHmSFaYV{iXflhroV%zp+oQe~u1K^-o`394>YqwGY@Wa_v4gaD)1CvL4d8myyw-v{ z-{GxHJoUoUd|4f_6p_6|+n!$~ukFpoRRLq87^9NvEgcwDYUXq&(l&n!I%C-D5{3Bf z#)!%&7BrGaV%yw*o}4DT&NMhni=jbaCjY-m?5wbO!zaAtmIvJBmPLgR)wYLjGTu!$ zPPS@w0V<>Cb6qP-*R%k5>i1~%4ZBnHTQ!ZkR=UpRG(tLba zmk2N?*I1FaL(EiPIirp*FJeeUq9*u4>NQVH0$uAb z0xB2IFSJnv4{)%|J)L?)sy*0oG*Ixqr)63z+}XYUJjCbKJ*zeb*eKL8ggvjE~u^X|NYk#=fgTegpAK!hDC(4EJWSMoNif0Fr-g;{m}-tRID{ zl!Qp2*J?oNdEkwf9ud8XplDk#HtK^Ehjb*kg!%5SVA5VA+D^@N}YQCwy2Qy2Y&l4m5sAc%8bd&KYUjB9V{RV>u*4d%@z|<@# z@INZ>lMsg0_yN%0lKUrs4n4?@%qlDli&QT-&WlXEEDZJasrb6CcZOH>Q11px{Sp(2 zqPgd*H^AG>X#8DzuurLf@=n=?)=g~! z5UDAjaiw?N^at=oZ8o}4UG$$Jc3w10nQe8{pOa#dgo?zlGQ8-W^xRV7n-0u+*USS8 zaGD#IJmo~%>o zzk_uJL&@7x6z)detmkFm%l8Cw)yB1Kti0{k;v;w&0%Q!bd+ZNO+7hjiIF|2qiTdAm zg$}&Zk1lOdxX$)0ZN8N0J}X#O2)s$>P5<|#dZZCHIP$N5#7G_I9QEJ3s(5lNiu@R; zmtEe16>{xxEO~b0_RYXnvsiM>;y=~ecQZ4PN=hpU5!*?KQ^i|(DqN*%aY{UV6Qh;2 zecvzra!mW!8?h;jwkL-bppuACH5_?D1C_tww!h=##Bu;XrV>~7kEjHL#tGw-FByAh zt}guI!&WGSJZLE{-Gl?+;-}w1{t?(k4xeR58KmPF>}rXF34h`1!{Sj6p$(yRmF-_I~uRYE#ftu^BK^1$(}ReV~H1)|QM+kZCxKi$(?Z>TT^ zwT>5OA+xOyuL3coK5D(qZ~Civ)b`q+^&NBxm`}QD#J9w(7VHG$RYxJES#i|{{PKGb zg5IvgG}J~(EnaaoKoglZVj{ZR#Fldpt~+lAr?cZRx4-ZF>EOnby9|>0 z*907#94{f;1CfuA)oQSj$Y|1% z-D7^@Xj)v^W6-VC@!%BR*U#QZC6}5! zZ0rAAvRx{c;A{K9gekd^@rF`XbcU5u(T*#oD1PM1tVx12b0@YSHl^ldO5*2Xy4$f6 z1QqE@CQ=igoOGxo_J17-o*P9XawA|cWZhx#M+-w{U7^mix2NBsO^+m3*zqJ!xwt>%CaiR6I6j3xomyj;u}Qvfe$HF3mtkjkuY4Rf z!Jv3#+m67s4s5`;$=yg=mT$2k&m)v4mYmp)+ASMiYARcGrTaSmdmX>9=$kxZ3Fa=S{WgZ*hV%<9ugQhJ$*$Z z3m~yELSYb8^i1m4Pcz8&Gz+>H_$b@*=TFarb6`T8F@<$k`RS>IWEPP;;-~;(If0l- zB;(v9Fj6^bWsPOLF${zopp?m08&bKX@&;x=VxvEV0mv?Dnbh-#eHs(t1s@)IW*7)- z!8ED%51@OP|I65I5x@LU@>cPPVsL@KTF5Qh15U)9pMT~;<-+8GQzSXC?lYz#OS>=Z z9M$t9=879`e5FmoRbPqZ5JmVA$?@xk)=h^G0W_kBs>6^B+d04A=UfVTAQaYJHZ~Gs z?cNDgZMn=#LF3SJ&6Tg0V!|dUKpVVp4vWCnZCYTVD zza&3zQj#3(|6=ul&v<{Cn~tYb8ExS>1HU-0kWhjgoED1~hn9dAjTUQr1YpC7l9PMP zvMSaI7MKu(Z#*Psixqzbl5(AEBJ;oR`eNuOZh|h;8b&}-wj9X!8Ms&mivJh(iw%VD ztYgRueKCW7dzK~p{7g%IT#blt;D2$=k_DSsb;aVh^43xz&@q$3v|qQo7{V$^)8>SE z#y%IA*UI0`0ng;iLu&u-S(S!e0F>XRw!5I*$1ELR21$e;j*OsYVAXhF$j6a_BwKueohTXTv0w$9W=OPw{Xg#@nV7_1%cTB1 ztHXlx0GVZPiKhT2#E@IFK{Yq0{4f8IKlw#Fx`+HSfu*3~$wvQ$GaA%SYo;Qu^t1S1 zw8R6mry~iwL=!5V7#Rq$V8lgq{0ENsU^&c6I>ni-54F7wNotwNJ&uuJ9Bj~6rX`N! zKL-&67pB+Ea-!z0*jB!geW{e4S`EZA?APyQ8mw+4R3}bb`)ul6>O<>w>h0)-+NU8| za*`%awiy&>+5ZBjI{g2D+=Cvmn*OkTS}-YQ2Y%|3;Z3hAl_pljlYji{wrH{v{=+48 ziq_Sy^DYgONj*M)i(;B~j0d>P$uh~2uC?_2@_DsMmNLaLB``%h#hOhJHw{_RUYCH8 zAIe`h6--Ds@jowvIDWIiB9d`xTO3?5zBG}=!UJ3}G+Jigm<<|0_$&8LSo&Vm&@H6Te2R^BCme{fV|onqBd zGKsGYt_-0Jx_i|4Q2?MVm@HmB;#!qkSukDBvV>%%#jK#*$65Kj4XzEL4Z02XZ;WdZ z;i6O%4{(p&KYRR_(VjOFE#S0Xt3Ic`pgyfWTklXnZ8(W=DhNm|^)0YLyH0^$mM#M= z11p250xkok?-?5M(kNPd97WTC39%415v1!)Qvb^_^U|Pt$4xoF7O;D<>_5h7pm~4z zgjR@w1o%khGWhVohZ4jKXwR%7J8DpA^hl*Vja!hXo5;Lqw8INZhO(6-T3SBs9TTJ} z&t+e_{YWZwA+@I^+sjf6<#9S0q9SZax)aI-_iX)OZ&zwvzMrjLC8za70Fyn$0p7FQ~vfe^t{sVf@$t?-)ZR)+LFd!d)*L)8!Ls6 zbaQsQbS=;`j+j%|ilHljDfv11oBWK+8)gNt0C}uUy7doxVyl#n)y7o3?Qw&i-I7bt z@JZOh2lVNASh4PZ!?+;+g$^Fn)8UZn(KLpSVwTUGJdu?iimI>1nON#y8u1;?b#*mBSGctsQwHcAFX@CH#^g_&$ZO-14=sQd3Zf66b4$Ic zl&;sM6)JJvyh1f$X)OmEKiajG>qy5>H2P4wf$+D9J(_^;d%~OkbBJb#A%73?v)O(L zdU_U{tEbR6QU(OWlyFI?>egjv&T+5}1ZO+*$6nro@^&q2oHnyjM}y;yB>MQ*Hka47 zCzE@Pd~U~Bm)W_xm_1Yd?udMTii`V{!P$pWbSU4iSNkZRN7M`na;_tjB9z(d&kt_b z#=HCn@epw=z~!Jd-knf93WnLT#PCDMqtR>{$DmjOyAcGLmKLvQSs=@n-uUxeN2um; z5Laom*_@xH0Qld?Qv}ov5VHCq+%~%YM;y3IPa_SB7#tnd0UQ&x2CNHkBv{Pq-+YgZ zP3aCRXnFBTf9&DUQe(h3Mu{Tq<|hvA&M`<1BV?Db6EYK`mqK_+6BV0{wg%`tf{Lzb z?)>YVlWTY72mY7t@`(wCwui3x_w~RN(s%|7>Rw|E*Z4`h@6J>&rxo-hv{h}T&(x}J zFV_PI?8H%y=s2I6{Rhd0e_gvGDZcDCzJo?7 zlMg=EE{D@kpCKx|m6j;)KJPk%TLbq+9V+}kHw~=*YyBo>>EM^#FoASDnpOH_Smi0?uK0;NySgT_J&v?d^8+DOHjXWoZ z(mEm&pK7Elq$&X$(nq?mwk{ZoW0SQk*|VaPz%CLQ%Mf$9P2?~txyul+S7`Y9iWysi~;{Qgc#EQY+FbJWv;f9)vP&G&N3OHYd5gzEqB?Ov14)xI;52 zbFTAehT(EcQweu-gyg~B0fPDCV0bSb2z_fg-HJ`8#l@ruKo;(KJ9V{AVZktY@2{)8 zI!UzvG>RFl9nhX4LCQjJ;$5ty+zd&yfF%RoH%L=mQUYf`cc{ z%}3i@fBtvUl+NZdd*ZIA%Lbe}7W}tpVgrwwXKSfq<(3RR{4JihnJ*qEM7_yC9eCq} zq?p0GghbXW4w71iw`q_cc+arLMX#{3GI!eeqiV$zG;eyJ7Tf>V&6=AwxePrp7%Zgk@kN}9Noi&XWMG0`23I&;0#;wG9@8?sL8LmTt#zPI{DT@})U`+>Xej-Iyt7d@m<{Ii`Zx z0-G_EH)nbW?Oih=+V0t~xzi!=fAjNb!{keBW*ndfY0l;tVg{Gc|HZWZi-JE;C(v5n z49~D)IAxd3cN*8g;~~{HGjuivfw4HV!uL_0TXQ`i|r%S^V;pgA2~U4(_pJ#uc;8NLWFQvxp7R&(?cB`yE!@XkNXzCg16m zx-wih>;@dSY%cydFt0#S7>@6&^4WaOqj@0*{b6?zbF19_c-u3R;K6>c`7W;+$Kd$^KNwhqLXvav0V&dGQi<>JTm2}~?Y*1*CY~xBf`b*^K6qUpu zBsX%zxuBs?sAO-u*H~_S`pTyf+j6imGgfgaiHu?=Rn5|m;6?6Kr+oe9gnZ~r zdB+{ToK1ThC}h*tR!~&Q(hd7A2_mUs;HJkHwn=K~3$Qh!=XjJjnJykoddj;NI@}Q^ z1Uyr-Td0VCHNg@%piCYVxbU=?KXtw;qO^E^ZPG$TJeIusaM%?YinI~=|IQ7NAP?`_ zp?Bhj8%OqZlzHAZLV5wn!kbO$mJzdhZcq-v%B1K+;2lck@L-5NN)Kerq!F3VJ(d1_ z%K%+bI*G2FdV3O0d$LH3CrHBD8p20uON75w6vugU;v)-c$Jf#dal>_7wrQ zR%|^?z|6QX@L7jjPJ+NXKY{=_JvSSqzLNeB9?c|2gKemdrlx&IasQW2h-aCfE}+5w zOo_k_I_`(CJ6Pl!ry+a0T7D#mx=In9CFuryBbO!B3KDR$`1my8)HA4y4;2$YitJoM zQ<$$IV8iE#5pX6{OPG>?jT@h+OfXN!4RW3G&HTopOX%J7=3Ipg)}g4mgmMQ1;W#R! z?XFMBH%6JFSVK+{gu%M!3?r6bi4YqK1kVd+fvVxUM;4tPG%0ZP;c!__{g^-Ne6NoS ziL1h|{=rh&6DHw@$bzat8~;NeakzN3c!T5}@fI;#a!5iWlGjt{szlQR(L29TJq zp)Vm%9YAUfIgGdsO$w3))C;5l=+vJAAg`YVP@*Kd0rLB39JIJEu=@_0A*i-9iu@-@4A;I&c-zURYso(4`Ig8QG!^zLjH@;n20$iDxm~E!^j^Td8H- zi^A*NH!1yhGKS_hOaRx?2!pczNKgauvV)2iUDXQeYdh$uUw@#ZPjgOH209Qb5;Ptv z95fj!2y`l_8&ymju41FbP7QYhvtI98qy1v~o751OCAREG-&`5cRBayYDzH-zw82%~ zi+uKh)`Qjo0ym8(LvI8DOAlKU;Ay$9t~Z|Y$uKf%&8(l6Dwy6RHi(~W2|tM#fOS;$ z{Cg90?39^?E5wYcIwy$O-KDY&+4Q6CzBLqye$ATPcbu)&Vrhv;8J-6ApsWNKK<<;K zC8DHuN(ZVd7)~w!K+d9|eKU@~r>=3!@CgN|s~bXw(ZYmf5Xj80w`?unD9=(cy+L_> zEgAVoa|#d#-UYKtnQ?^Wun+kivSd>wax?T#C1~){JJ36?2Ux_yZc+zE?M7t$VoWZWR?BI@`+fDam-Z1(3r%jDB!uEhWz3N^NpnW8=a>MYKlo>YIR?SyCy*9L#}{V zwzBBZDWlF`Rr)U`6)jZc4wZT3etNnMZTUFe8?hbB%E0K!)UX;W>(hyjKrK;acGl}M zK3w$h@->|5au0D92m9P^)!4rtDT_XO_^&h0L$M{0hA(7Gfd{WcjQ|V1AT8D!eQv%L9 z89?Px&#{6)DPi={?k@-XUsCT>kmBGz1dI|EK`S=XAMF%N{>}Z2tEKU8*o)A$sGl{d zW+vn=VB^v}x09j&&=Psh5-@m9fu&YZ2zN0zUHCFrD}^;`%IGy)sh1Kg5szFjO6xBX z4@VwnpiC$IOOarp&G;+WF3H~I(Fo8n+%ku$&yO8i|5`5pUhrY4!n*SrN^4KCRO;vG zLa%u+{)#G%uy*4mhL+TYNAil}Ah!Or!p~WP)XyY!b%^AvZPcPFrM4Z$6?b$a0x~w} z0|Jd`JHX;r+doWZk1q?OK>ER!gI-C}&|xrg#eWn^=0K07H;igV*#qJWe$Y+luQ3}3 z{R7={DEq3u9{u`UEBGa*tE@6TnE;f)m#wVptFm|%*I2J~W9%a{Ug1>Sm`J?+S2~Wh z9(-+p?4NpWo@g+8AV~N7p8qP2e%oM*WhBan&gLggWJq1`(m6=J5B*gSMA~Zt{M2+d zy3Nr7;ujSV!Ems5jyHZDC5U=DszP6rhujTd1iZH!-pCC>S7vjb$71TE7LwE^$mx$3Z7d0B*+l%Qi0FYgAkVa1t_l<$wXqsj1>HZ#;TU zvvZ!C&4b_58JzUa^Epa9taMky%Nd^y=ONcMRYxVG8sX`#n|20+)`sdhw2Um!H-r6l z^vx9 zWan>0F3@mLsQ4-okNctZzj67}33JT@K!;Ofuz&!!X+EtB7I$$2XxUFLKp}VF`=kK7 z3S|wM93L}8=837C%7MRo$jQ8ur?K(StNlMKd0iddo2lDn1>2PuN%pY*?QNWijOAuX zRHkHji_USxZR0p(%|_h7bf1)Mfi)oDuzjIk=^8RJyp5B*Gi|3)uS&_mdPrtD-Q?%5BP>E|8v5Rz*h*=j9UDa%@r zgM|rv?dRw7&WqMQrYXQ!9Q|^}QH(xMjuZhBBHpsCaH`#Sq?0!4&~H{G7r}AWf$T0e&H-TmY!-K-kSbHe4Y~(Vd)MEop zB_m_OLfQ$`GxuTWi{~30T*rpp1T)jhnM|^GIN{=LQo&M56C7EG9naKVPT+^%8CkNU zZ(}7GpkoFwpwu@-T53?%`#8{UV_b#YB$9FYK9v0};mRgBTeVYwD=w6OLFh9)(;_KSn{peUVE@WW@Dx7FF+ULO@coui$lJ za~aFb3nC%Iq|FaCJtqr=M~gJ~XzlPlA)YCj%;>l)>n4koYc!y9O=(HXd_>@^ zY;YkYHc=7mG8Y?y_3BUNDxR%}8&h|4}@knw#5)LJmJ>5i}p>ywFmGfcMCiB z20JeF3-7|={TIx2>3wk}?(=rmVhb@uPdcB6Ry9XUD{|iHJ!tXl$Y>j+-X2wNQKo1; z(0WMVjTbE=F))==P+*W|FOf=A7U(@Ua%3*4$e6PX8nVsaDKcfN_6-x!Gp7U-yIwZj_)V_x{yQ!s=?`RkV<&sGPPLD4<<{o)O~1KLWAqaKeOzXHP{nO>8#^DtLKm^U#j4| zPAL7^tvAWThficw?;eK^-OW+1=iLuHA&@zxQjb!e7oQY5OotATCUO?Zj72{K9}}b{ z;#TpHB-TNIPaa-3T`;L`6XG{;gJiGdiNxU{kUpP@!kxl%Lfa)sG(&|%Hr+)MZwzEO z;19RMz{PRP}j%X8PQj*(rIVDmSI486- z8#u?@nZM%>3CJmKa{nw}@{sGFTgBsc_APKBtlW(xqTIPurW1a0`G?F_)((dewkHuE zA|qIqKk-ua%#C65N2k2OGy&8BE{f66j~BT%L$vNwU%f1jH;#}(?dJ)d?QJA(6jR{l z4?0@!1oOzJ-JmCuVorc+ad>zcm_*ba44^z^Bclo2GtZNSWsWB#OYQYWZycrEW^{}c zO@4wMDQZluV?%yRF>$h;h|QG`dmOSmn55RP!EaknE1&C0j&sGyc;r$AUfr1)ac9@k z(s{=`T%9?49E>yeTmwXcp&~{tP5AZ4Q|zU1G3zts)Q45WT};n6b?2tq0-Y?W)&S+} zjmqxi3nj8lW-*tCZ87V%r=W%4krt^`j-7 zbncZx8x8Djd*!y2SRGPlv_YS3*2l0BLbQY%{`o5>{{RdK&tNW9h|Z4E>y)}2{;`PV z9GSQsVa#(F+=E|FI4~e(o9oCelJhSnKvV}e<#-xp969R)KkSs1$vV+ImX45*Y@^vw)f6aKy(bSH!~M^-{AxAtmZ#N<9yqj-R&`s_Fyt zi|O#R^E)Pmz$Ovf<1t{t)mSmdFS2CtoN1egP z+o*Zx9hfxUhjFtf*Y5MGL`04sA^*HxbWRl(zpIF7ZlaJOsg}$r2tctZfj0mb5Vc&{ zZWUMCfscA{n%yE5Q5@fABrl z=h5@Jm3N#4Jh9l5dbiF+B^}i}IT6j~K6UowiqK-6u|Fzl|40oSvxav=P-U(aWuUt_ z?+aVn#_`+Gc?nfo9cd9UFpBo_vo@bpS%=khSMGJ@Y2@cV;jq}U1@0I3Ui}!_Rtus~ zXGr`8Xg@EYQUCnS%Uv*zRZsJxXP=45UUgEg3?k0+YMeS zl6*}Y$FhsqQ|u!_&AbfsB@HyOz^p&yJ=c*v&*S&qT3o;Ht=}SOLz})!nYwt*vcru; zC!X)>mgkhK$)@vKn2$s<6xEIF5ol{4hxnCb_}D9RDHywWKZjNCH=p+wIH=%1=6XDtK^)xFrk7HQH6X|z!y{YXRn5%H@7WA8(A|-dvM@G8AhS5^`UBdOImag z=rr1Z72ad-jv!TuQLi9J#6AHdWb;F$q8wXEd-W_TZfpBGaAsclTO%|acBtEQAz>%c zblz1YlkC*fxx^dgF=e>vHe6Ss7c96=f3@YTmP~mONhyc3GN>_X8sV4%Y7zwG^xO=m zZNo-sh~-O%4L)CN_Bz8R+{-U>i_-mC=^3l-66=P43-KHfcN0%#J@ zZ4WL)aHk6OKmu-&|CJvBnQ>Hh#!K&!teke{eIDO((t*zp<1SG-x@4ifMy ziZ)k?1bM#q$N~!)HO_*<0#3XnbGUq|sOl&$Nn8xGrOR4ozqAa& z;-<2$_Wr48E=!_}e;%+3CPR5Bugm7{oOg{;)_89C2{Pq7D=Q*Qno?5V1g z;$QEcodYl9xl_KX1A`kR$8!j@m_~tFxYsQTVmNaUd_$T^WMfy@mc3fvN&_~fu@VG`+)3^%BP*jrHT85i5lo=@Rqj1|l& z569+E4a9n*j(PQ1p?D#)*mCMcHglUg0PCZu|GI}T>pj3mGkLe-Dn-MPeXm=fO$|}Y z*lIuzIL!X?WUQ8`ZiS01rZzy7eg)`MN{%q+z1fmByM-_}WFlOjz_P2KVk=c4m+Nkj zLO1^Q9QzHAh-&5>J^8@mx`!V+lt3L{uEyp%N@g~CkQKL3NP$|P{F|KdzW{$iPkUsQ zL+v5_K{Y>8TF<>G{yJLV8WvPGkNbzA)9SNay~^aEa4!V}r7~l4jAILxZl-5aYwb-S z>=;9{mu^n#-T@eS_Oj775bY>f_We}x^9Jm_tPJ*neh8T}?L!WKl3HN>q_qlRS>DRvy~C_U zggjXYcz&f?{u0^up`Iy}7(%-+p^I6&3Nc`H5p$pfLcfO$(qfSV8B>SkhD??FXp;+= z2wj2Q643oF8;#1VUIUG~V#k%~lmSq3q}o5}#cNbL{MufYD0ob}`RSl>tkT*8n`9r2aS`_L(j6s~Xtf4;ga z1Ooa#qF}tx&g(f}f&XPw7{)i&##Fq;VGr)HOBd^7f*j<(D6{hzhb(7By+nS=b`C4SM5cqeKQQ@_V}t^(`tHPK(KudjpT!WHYtr9en1*ib zxv4z{iA~de%yu}NOp_dQk$^>Xec_YwHjN-S;kwvM-_yeK36jkPpDcsL2M<6T{RndO zLBL;?={#N7+_7GbJ`31;bb-r!4@>BAX~NHzEHA<9`k4m=SbN3?B>lXkP<~bNuygCc zz0+XC;m%7)H+DyKtL3GVXWORD3bzNtN`A4L&@*-kBO#*$N38=T7kK;ZNC{pajmeu( zt5i@k$+LPRzRoMkAux}Y?m*Ldl3R?n7TAG}%@O*2@}4S+ro?kJTX=pY>@a8LAAg9L zogB>Pgo!A*_vk`pij*==@rL`^LgwREGLAp4gP6qYpnBKHcQH5yXvwgtc(@KPl%Sxe>{ zZXcCF=51AVkz!pU7lL(zwQ&%Y=FccLns)6{#fYJK;gF^Xu3lC5tC5mLiXy)%2q64& zX4FQLMD}_`tAoxn7>h$gX>Znnix*~f4azC2IaPsU%1*WRn`r=7p$Y{xwp?tB~%n#0`8F#5(7YDNtP^ay-TVg-$v3hUHg-7md9{ zte{O-ObTzx+6?XBJ&%BH$E#A`bkDoy;j>Ek;Y7UsU0&tKc#bf<6W3w_Lo7cS!FDLG z*0D-Ss;^5$O`kiHKq9;nvpWHu?4JcND#2~#h?lGP19|ZfV;mjfi!m0%)yOh>c!?+_ zR3(TDlzPRHPBkaQ2(aEK(>tYG1PulxWfz=R9(dB=&lDz4)72F%2qSU1EBl*u-d9tK zLS?JZ2%$J^@icx{B4_$n5u;R~yt+z+G^;bc~? zGPoki5`zeOh2IA99q?N6ono-zflx_uQwNrkv+Jxu&*dh;Zx9UMyJ180I16ll!fmqdzqd&rf|mV z*Yq$#t#A_t^v|y1AgIM^?1v3M+o`y!^@GjM(GLOn6KSI)wFPx3>piLK7Y)Yywyqn| zn71#3u?@D0;TC7Nw>4n0tot-l>abp$eWR=qj&H%#!j89Fu$80+-(q@xMns4^7g8ebT-%D@4 zK}A7r_N&RyY}9+#YM-?i&yI_f8}_wWHLFkek4dGJG|tWIr^g?WCD%-PIvFvK z467LgX_B=@mNM<(GUcIN;QyBQWhj^W$3*Zsct(*B40GYZ?z)t*4HA9;IPZdBR@Vkbj(yEL0yJ z%pr-|7uN@G@-5E;nt!jE>vFK<2DO$){VW;1=T+?Tr4H za67=Ou?YHuBnl^G??Y+ZR()PL1~$u(1mHLNwET1sGl8Ub3aSUP5%s$b)_}$J(;HV{ zery#%^I@KRs@SM%%XB9k)nT}eKNTBvVDCd!IH6`i=JG(Iiun3{v_08+bG>SMQ@Dln zBUSW_4DP&=HMO5p=kLG@J4qu`V-1tlH#Okd(eQzdw=2R^utng<4fIw88t@x)UOg8? zs7BioII@NPog*_4b;gAz>TFQQ^$x4K+cze2w9u<$rA@2v8e3iA?^*6{@WS)wBth!l zHlTk?jizd-Ua&cPAZgZ_=pM;{_dUC=SG6!pQjgGO4?@G_5MUN5)ZKbAjhM4#>Nt}x z*pKt2I0||v1vwFnkZs3+nEtWW5!?ccO75#2#o7G=?dv?vs<4`F*RS>oKk{t*dlX<@ zwqlV^QTI3baX9&nyK4vKZgI+cHLF2B{D*&;@;M-CEHu437eI1Lf5c2dC?+?OgIxOF zR1$U{UcI-iGp1TRa|dp(tzLWMS>oci>3quCFsMan{bimkQ2xiNH&fH@#Il+j_|O}P z*9mU+$eFSZGgdn?aNc8v+m6m>EG8GMF(56;c?G=zq6&rerEpdYKj>#AV@4MHdP5=1 zrP|KSIOI-6(5+Zb2~W4QuE)`a3%U?`&Dh5Y3kcm`K6g7)N5OE0h*@u%%dGs zUC_uo;f^@0Dgy14StgP#EDAbu+%giBxiN1{abq6eYZ`g{@(5Ngwpp0{uc(ZxZb{%#It5OY|>-qOaCYzfa6OPY>(7 zF3PANDw@h;H4QllT>$L=g@=ue>Eg06UCwhsF`vxEcDbmmyjO5-sAZI)Ue30|Tzl1H z>=)&H^Z-`X@Ck*!y`x_@zlNMcP~~NcH_IMsB=l8-e;bWcY6U8f|D7 z1T=FXQ%}WU&@zOY1)jOmu+p<8i)}!@0@sW7X$|EFI6FwrlQ3M~J*l}hH32eSB-X^( zK~nJyaZl9t8x!y7VVi#&$2s$489q&xi%v}--2qdkTYzjW!=s*eYM1k74O<;&c#|4! zMTEzA`Vl!Isuw5#;uq1!EsS(E^u=s3%PBe}#t@;s;7d*W?Y3JV!?3+w7}WoRx~g*F>ds78JK!LPIQERv*^A8{6j(`O$_$*~ImfFnAU zecLev+-7R+_*A=@LF+nr@rlb+!8G3IzLwaHj{-!kbG z$EL2~;_P2`earlb0Dljjfq49e=Ch0--@Nrg&H<&D`F);p7Lb3cUQ2)f zssJgfV-JgdaMg6#w-p&yWWZ#NZCU>Vk2F@$QqTkr+{5$XfxBKDO}y5#YN9d z4$XVeRSJv-ph~=MXoGhFnnH)c>P}6&JZ4xCpTPlTp#~<8+##o89=|b;T$f_uPXeic z{^k4Nj|dCZgNX>;@2^2xX3bM*>FA&>S7gI}@SeGWSS_&9#%E;cCaL8E=!I2p|JfcL zu~ZK=^)s-NuIrdpgmA%%$QIJz`RCmte7UMswm7XUl#bsnJn|BtjJSo?<-ZH>`EuNN zKsOE}{!V9Gg6CJl+xM2r+qgmAJX9&8!FJ{FxE^MC9U@;WB9}ODMXQF=YszEUG?`q1 zuY!Qcx<|L_R=O7qA5+n4`}f+_il$7$v#H?`-=nuvvf1)xqNPM3jcChZ?zJ14j2iZN z>h*BmO9brK?!U)nOJJ#Tyup;}Ww+YSVousTdckfeLh#VK;Lem0q{a9=Ac6aE3mgxy zm0@7V8uZcFKr14>CdM+!_U%CWTWKA2*nyVH7bKspwKw(q5Y^U_YQ`tOOW21gNAbl4 z1{JD1s3aRMzd1JMfMVnMR4i#Pr-?i^1mB3}Nw~#7dTN;W<)JcJ%8@yk;_BsRH^Dud z3BRFh{BmF6L>3_Y76ct#l!5Eb&;;jFxR0w#jVLIy;cM}s1pM-I-Z+Q;=EGEse3$Hj z;MU7r3y(0I*o2SXuEW|&{f+wOpTZL?RJRYfBY(%SH7^E3#-U?Ty*#F{YgOg>tld7b zsYfM0ZYjnN&gufAxR{BK94@KCm}h%+5$4tK8c7RR8mnfuHXY{*YE`9zpvCYZ2CC9Y zUi;3#TaYPpH}sWK2BqAdd12Gw3$zYR=v}CCd?9z>#4~C4X5m3yso0Hh6%#9jK#M5pe8-m+js>LGPgdaAlg3NX9Ao(F^Ft^7L$H2(t}-7 zU$So;>f*E;pNPav_D$NLvzW~%=5A6;10M;H&|sH?p7spUCE@3y*d50d) zak)}dSKpngnMav&pI#$lgkt(jNA#nI&)j8cUSi>frP^wGxuV5DymI9&PYbk^CsF;v zb9DXk*C5L&vCElV6R)fQZ;7-sd&85 z1$R`zaotS8rXZ4P>88E;S|`Q%7WFFlJcxxTBk*dO@AM9vr{H28** zOt~kWxIR5;|3-J4OXW!@> zl+Dv~<9QS31nfz^AKc8wkqbGlW~qWC59I>)zzBzQIg;)W=9%E{WcOg75a1yj$W6q6 z?A*3s3+KXf;o}k$*1d*IAQkvLE`ja-nFQRW@6n9~Oe+~ZP_5G-uWggnRDXiz58TSj zUw*OORCU*ObZQ7^a{0)*&M`QM4j=rjh>;zh}3CzERRvCZ)Q<@0$&G<06<%wRVRXqzh+ zius_|L`+!Z7hpM)G9)mFxgAaP(c@B#kJvPq!D|4DB4azdbGY3}T=z zK*tz#Pz3KH>f%3`$+*o;2eMwjJ|gRSsqA<76lujD&?8jkm>ekjyy!wwbz) z#gOV*6nN;PHv-vsMV=5_gc+@R>l5|RF{*c4?@LmvpqdA+$u8|D zj3=u!kqiu`n*j?pIl(U4qNrf0DGL<18c1mX!CCiqWyragqNkC__v&Vx9&{R67yayl zKhrP=q$}^J;wrg=H0qM%o$;JRHVKN9_4|*w%M?DFruIs=uhYnui%%%;3^9KUv4FCHi}+unK8e*4Ob`H7!1d-l!7T86 ziqqIO5hqO%o2T*`jUqH`gCQM-2c5$j`adJ)z)Z^iJr`*P%Sny2Kkf-{xLX%FRNMPA zdav04isr!$@{;aTVhNCk5ty+Fj~p}WO;Y}QUu>`ZdX*m&`%=Aoc2>R>;h<5qxbHLe z&;>ZUdjhPFwSy0HNB?oxC%B|JFIw<7Z$6poT>(^Eb(^>6HL$dBN&E{iQ=a>19lCrI z<@M*ybF_GUj>j-`%CEJ!Cu*_awEy!6&&nFwvgzMq0P9`~o>j(LR*lTcoC6B5iB_!bDaCxqAa)hU%S z!~-+~+|Khuf|&pk-n3UEgJxe(PM@sf5zM zAxps+#1zHXHDtPeQJ&m(|ki-I-_oqzerN; zQl6}s&kH6NWcTr(+hQN|yAk}f*G@@_pJprOZUYxtC+0PI42~tzJJS6hQz0@u++IPC z{t@^KXt+xGA$3aTY45xw+TDOA(spJT1B3Y!aSOOt@42wB;7M1T(6qT$G9%bzt4o$L zhp!4we2~a(vwGkBQ-_(MS55;`XHpqO6;G3;Qs&ainUOuk1k{HX4cQlJ>xX- za%?-CaFIpzpvpZwGkDNdF!j!dvam%%OdimN_^)UV2EZ)>5{tb!=OLxcByvhXj1Od(xs?NQjnfqbmHM!U2HO4bf;zF_;y@61G3T213J1F zuE8eK2V18K9kKC+U;u#Yur< z#0s3#1b7IBQ{w+USQn7agfBT17_{+$QEm_qRdN**UTg0BDh&Q$Ih&ob075Im# zHXplyko?md#XT8xZ(NICDAiPzYZS}-ZY|(nAiO$h&RdaY)?H1M7FB_6nl1~{AH3|g zMt4TzmrA<+MSGsEFbjavgeZZjt?j6N9f|?GD_R%MMfsQ#y;61O^>m<5g;&@=1|5(* z_cpzL5`0}zqQP0V6LNu?z^fR(Q*!-T&jgU;TIKaBRCJ1~X;jbJQhd`l> z9cr_CiN36y3Fg|^awAWqwJ=JiI2(@rOpZ%&ByV$m|2U>--;{yCuZRJ%^3CTfL7zx; zcEeBJqeoo(0*#PKHksgJCJo$>uqqdFw?G{esKNWp;Vl&_{8Dv!njWY%5egB%e?S){ zEH(ek5%P-RgI7RcWW~!jPs)KXSUm%FasiPPiALEFulqBI(1_oAz^r4ES?$J*Iom}% zS?T?G{n-SofFqf2vubEv`Mx!Z}&&0gSLJRs>M*rL<2;F&wz?a zpf&L*z$nnHFf@AM2?FI*CbD4I+Y*#n3$18zr-T5wAmi!t;{_icGp{(?rbQnaVE&v5 zzTIW=WAUZn_NOxUZJf+AxGkCaWwvO+cfXA^|7gHLnr?v@ZoK4*!*`Hb5i~Y8Pb-wb zgEUoA_#SyFgO`34NV!+4_L&gp`Ou+6f~M13X?hslJTV?+`UF2 zIzJ!9m`@pQU~Yv*PNlVlgvL!%+(WSGDfkD5x>budTZs4UizN;4vv`(_nLW_)^=t}@ z)mXDv%imv`VzzyHxbE)6dZk0`)v|A1uv~fCeBLa^Gg92Q+%~U=(hr1~OQjb(9T7vx z*>d4Ls;J>uq>hM)p<#R0#6sfxW;`GR{PbdW7x~Igo5DI&bL_nfb)jBBY1aj5!%n;< z)@|IYU=`MeRKZc9grj}I_`MyL&9CP0{t+Y$o6WTfnDF$Y8+049g4D*>+`_UF(3W&u zs<1K>8>j35=ce%j^73&L#xpSYH)K)NMA4};F2cJM$u`@+Hv8`oqyD+w9_!;TrO8T4 z;2nxFR(H{nR^c1qJ^zPt8?Co5dxYSNtZ#HyjkJC1ptXCoD%K> z+pKqp4wm&@j!bJcimPl0@CH6xr1Ei*iP!Q8z2FUPCRc%~-KD-|O26+U`+AaX(nDFE zF7$sl&GI*5b$k1W$&psh!-isO>v5t;{22T3+t-6fzA>XHPbbiVvmu9qwR4z}ZhMJE zgTKIvG^XnDjzIUQPr2{(t?vzqFdVK{^rgLD;%<~bi-d{=H!P${Vw|$?dH^z&8r!X1 z8<3<)cD%4b*`J>$ndmf0UPaIIFZRU|SuWyOB;QVuJ6 zQuWqjpAt4OYt=~OX@_87Lu?yNwqLGyuaw;2^ts`;+_5n|kXp_D)YU{g*y@#O((Zhp z9TR|lb)a^2b^xDkwc{DbelE_ck#2_H!pdv7n#rl4uE}mP_`{7x^rU8}nfEq)v_s3l z0yeK%7LLzs2kV{zTv@USIjru&aEg~A#7uFfZm5`B%va!D%z{fdWauEXx{~RZekb!4 z33f%PQPIj+0~cJtHGb|$=;vLo;!3!qYj-978H{{tIjxCU@)5^Ha2BiZdmeJd@IXDG z%(<6em`)KPszfi51?W<{0JwvUh)Gu$k}4t+*osqC;bcTx+q7khlb9T992B8$KYxtn zL``H3qI((KuMM~NSz9=ex}VO>6BuoVM*4&s6_#*sL$n_VstV8nN(Kn(iRrt!A&w&i zF5bLqd_;d#Jwyck6Rc4PT#1KNDG%ez;YY{?TN*-JdgoFHFhqee3@;$}5H0si7SwPw zy<(4?8JNmj1X3R;3AgeXM(DB_`h;7HqLQZ$k{xs{_WZQQXZfAj0OctX@QtLnYh!ON zLtv_v7D=i601i1g*tDwSj9(;KFC~=DIB_sKekv;8j^iRdPiqW3&P3epv>r~>%L$KB zc;OG4n7iR^0|ZoymY|7A#pj$?MKzedtX=6d^x6ZiM9?J5>RiywG+4o|6MJy#1FMo{ zmLOB3ywHVLlgUk}P5uQT#^BDr-b&v509M$!QwgU`+ivdlS$k!od|alRvW1(x3Es_P zG@TP|rBiS1afRoCy2f!FSDUS%An*K|}hmhGS5X!^xA$n!mWC20rv_+I<21;0k-NX zP&S|Xbw{byeNl`#>I?;?Ng&MSMEj;nSQ-OQv>v(K99vztQLBIijWmMC>GzDQtSm8z zp!UKE=CTHw0i^`$u~wn!yQJtx6w{ka3k0WIvfUd3u?Xlx`)cRsi$&{zyfeoo*Gi)G z&&cGTP|lFZubX?6l`h43`=&$~v00U7-_=)_?TWfqj{^U%iYGSeye7zf`~lylFY%{f z&Q(wsz5=M@D}>#qD&Z=OQHBSI2HzNpOcc5~XlONPV}z`3&0)dNCs%7o7AHE?Io8(-n`QX<%Ut}<(+!^ahIQ|o}OsC{p)TqGEuzN0`J`Z@2u_- z^#Zo}uWcds)sGh!VXzkTX)M(4Vj0=%Bv8ib>wftXZ5@e8r})O?R_4pU48xn9HlG2F z-?uZWDPJY_V|*p>!1Zc9ceiO&x5q(`oP-pqCqj5vsumrLA=1V%jI@QUbwR4CBTM@k z3srKuz66l}{@7l+I{zAWVD?o2v}iqeHR0}gK9u&srfefxN#!;x8f3g<6OwUEtW`8L z@aa-rlD-+7ovGf*1{TDfR%8d|XaGjO`u&}`kAap8GC zLnf*h)f>oCl`Xz6Argg%tId^8OvTieTXyXC0;vf$HIeN13egKfq2e6tQSKPVawVFt z6YNdxcZ1~dY*+*@J>IpLRWC*cqtSZ~vis`p@|UwZJ4|$Qd)b0`z0`-Pyyy060SQ3U z&bpea*~mN-Lr)r%wiFrN;$8Zj?|L9FYol4{-(1ih0Tm6m;ft%E)CbPq-%l8MJJ>2e z`?vn}N{*&tPtZ^E=1SQy(_%k9lB| zvyLxlJ%aCdpkB;!lt*E2Nzw)fSajz|o~n@biuQw&Z=?%PbU}*{&AU38-Cq{Pp{)|8w@a97Z)AVo=+`$|%1ZX+EO1&hAWvRMR7=r6yQQxB%{1?Asg zcSZa6+7?zN)pQiD($x3ST3-k>b@$-E2tSE{Kz{9S$(INsmi!+^_V5MmUxRv^AeWzj zBXhZoRTkiWh$Wf*G@^nmiJFl?Ro&*}4|nDr26?aG55LRKSuu(X1@MDH?U1X2cwj{L zr>cuZK%Km2&V?lrl*b-nXBe|JP0youT}Z#2T8jN#ssqCcuLvPOsEquj<7`q0WQYH8b1@uhN_9qJC@U_KB3#eagaO z^E9)k*q`@JzSs2)(_B~m6)&d#F}>tGXT`>#m;3zWm9K4QGPVcwTmtV}gKLCgs2^_* zG!xChrTMT)eIPjg=+Ncy#HKUghVs`M{^2>88_pFq4MC%?tY<<8Es0reTb`+)F0{K7--?=2UwP=(O791;D zVyG}IFjlA;?4lYbfu}0aJh5*=mpBHA`9r6qda^cH_;wHpKvtq8{W4)Rd=HRabQgvCF-l_*-#8x2Z$?Kqeq~wJ3X1vC|&v9mz5TA9U?e3-h z(!pUtJD>+RYNyIG7)Is4i~L-CH8m#d;0MeGDsaZ&67&J(1NhQB#5FCO4(4D()Mi_wbp>N z)TOygy2L8P@nsw+yt*!%d9v`er$`Qb^VYX(G&6WE;YX273efq{4An%N-i`u0dZynz ze$V?fMf%p>d}hDe zCh^L`^rfI5-lt~go^AZ$ZeIhyzGCXGPcZzS`lo`=WFwjlTOf!a)v*X@ z8jQEX7X5{ka^+OS%GPpxiwX$$7fn@^XWGvKALoMa5kd}XXRym>QHDE>CQl;VN-WMZ z3&Q(TM8}4rqe%m1pX9(d|3_jWVV=@@oCyeR>)U@`OkdS6eS>rUy@SrS<*L{i+t|)? zR-~@Dm%vYzq<+toeaVY?7W+l-GO%2OSLF7!>Y_dZ17gK8~nvBBvau_6K z*KuqWc0+RLdpBP5&yjTMz0OL+b;N2h39f#g!Cd0%PA6CXw(`1>!^I@c@C1# z!6w%sB_6`D25Uzyzs%>Xa4Yqy8LrDgp#27!n%HQqFhm0(_3Ymg@I``(VjghmA-|BaCDDoKm_0_Pf0OG=Lv~zuNRTWlqJ5 z>Up5b8tUluQYD=ruI_%P>RSh)g^r~}gqe=HdNdF;uG)BCf?uHy>UA8m7}BfC_5;wA zZs6JF!bmydq+q2U&z8~(>06I#<5`C%qbSYB|6fumtaYa!nvqptNKxA{Y8uE6!!+1) z@+jju{HOq9^HrOQydh*Me7D}mNQ3t&C506yXayhkc^GHX1~F~Stu-h)HlI!AWD`!g zxhfZ(NX7A=#AR@{DGd!RAkVNy`{2=6)~Uv15VagjG358lh?{W3#0`De8wmDEok3ta zus`|q9fk59m{ zxe1J##SUapnKeBt>V2WOGQKn6p~Mlxb_O(f>3nl8%u`op#LU*mIDs(Uos6&6BuIQ{ zmq)u8pWb?04JIZ$%dwsT?b79)c$v0N#;6x=msXLYqz3pgf??9{n!zsNI~cAHPM4zB ziIMxXVraOb(*2?7ecUjZB3+D^D;!6r30g5R>fMa+Z(f*D<%G+hb~M6R?7j)AP1xPd zGO?kZ6OP4td7Nt-IY1n~j@F(JEkYah;v%Qju+Gqid~Vu=Di1Yg_1U{5(26fn_6Q!t zTQ&O;%({}mu%9Hy0_;di53;-1q&hb@!LobOAX0+m+k#&A0N}WX70Et0FgLv&v)Di~ zUL^S|CUxCo%We!xJ?Ril!iN+yAS&rP7o{D+o0}_=40=82?XL4-%st%71o3ZCD~}t) zaLFs1ASg+J1C$cs+#J9*YUe>F*qonOg2F9BtjDpqUVpA*XQKhj_XO+cv)0|j{2b_Z zRd<1+PGCf_C$U;>04Cc-Lt>fa-(R2&izyPf3TmVbnc!Xu2}4Ta-f%4lAGLe#6}v(* z1|^R?(cZ7-m|p&f_Gk%`dk1XM*@a~a$299o;_YzScVs@+I9rRJE@8#Z^6ER*7eMBR z4I;66?!DUJ{=^cuA^3hIvB~6y&wc;CbBhg;tg>B*P03mlYY24~AC6=UcP;niT)~d# z0>RBD4d9Cf434m;VbQU|L?zQiuya-}qQbW!pOw3U8Ek|mnp{k$_|IK@V`gd-bmw$K zJDfu9i}*IHr4xUY!%MmDM}gr@|7QIQnYmnLjsRcKSS9`;qOKKde37(Wt_NPPCk3!d zI{+@EHT~dTA(VcV>ghLVh%GY*Q=WB}gh(NexiV3KH~C7%$Z9ZEM}*3$6K)78l+tG$ z6&eb%hNoFzWfJ0Zb!6ZKFKSH23qOhy-PuHG!7jb44A<6Bvgpc81R0mQuya|b0J8ZL zj&YT6lQGkBUCow{y-`g{d?(C5C}ALkRV^MXO1vdVToTBRA-+|T#!E6|Er(_Q%(7_Xp%<+YeL76#38R#AhHEa z6N6NSp(x;ZhE*UgXfZ~p>9C;#SpTx22*LxxvfEh&<6X5A;fS)LtF3CS4~F%3*|gj@ zio+035LQEV8gUd3bmqaWnIX`FLVYz?d-8YB$;>Oj`iiT+T}0X4`Omi5no`H z5u@TRIZS>WYi&tETGuI+QBL|sisc%Ei5{DXTFNLE;B$Y;S-`)_> z6_sBjr8OaKJzK{M;_{>_@a54Q+_3=BXv5nE6#%^2$PRUx_yv}RQa8SJqP#g~C1zjn zxT>T)U}6%Ea$KiezY1UF*h8dLc!z)eI^%32I8u?@ODmN|Zxt_CV}95p+y+}N8g`M5 zerY%6cEwpt_$z()rdiuvoZqqgHbu=(w|vy$o%=fw{9XHx!)$(zY+N#i^K`2bLV2Jg zWuz&^C6%YZix#}Y*X4#>ZP>0gDC&Rx<6s7VGqYJ{f>n#PDu@Eg#jX<7;<^9Av1GxK z_TXADgA>mnm(#a`1%?YwfoJIe=K!J8fy~8GQ7QSO_$TD%*|G*Ix*P=VmU!fw3DP`4 zgs{a`A4UZcNW>qZ36~9}jRkvAb6Zttqers?ze+PLLJu9ecE%0*`m_2}M<)fyjmBrM z$fkqi{?@h@@V`nT)x7qE-m)@3I8F6x@~yhqBj@|r%gSR34QcBBn5`wwi}~hPSmk}O zN3GFHJ!wTuUfoTr<<_o&hT|vqYpgjRr7zYL!3>9Ah~ejSqmBTJA8wFiQ>?)3g+n}b zalzNaY_?R0bhK#8p$9!~@Wp)LZp4zi{JRW#S*-;v!*|CMZvUpZ9E<7e^C{VjE;Y<6 zUhp1KRt-B>sWZJ6;Z_v9rez8y8jJ!>ECC*IjRR@F_@PosI4V)&Bxzlv`M!Cg)KO@VL&Jatv7}Q3t|4hH% z6fcd@+;~%g0xK62 z#A^lbxN$Z0+Jd(*7GB6QegAM*tHmFaw+=afmUT2KB)NFmwU;vWt#^o0G(M*>P)6wU z5a+e}m91tqq+e8WgI{t~=BXUeJ@bACNCbY%oZhrVMIK{kGE_Ye5fp*L9-FWhbM%3t zAIy0(;huzfM2h^P6?hC3C!%^9>QTSz!G_&=os+t6G{c+Jsf{g^5mS>@~41}R>)Rb;kwISN0QLzr32X$~};D~)&hj)yj*9`*n0Tw0+r z6ESFy(dF)rVbSvUL|ue+GwZ2$q(y2kbQ7AN4|C&|z8>dqOQtay+7<+OeJ=QGqHb1&0V z>x*+4KXV{z*@;FYuGoNO#Ra2ZrWF$VyHbb4>9J1LYVu1_jM1+o*KNp#Yq&1mZv`X% z{cOkeTd(k)+pBq60H0{d2Hv+@(&AKJnad(i2@XefG^D)*E7;jyROtW`73>|CZYBRU zwqtd8|8>T0?aI}{x2=)P8gi&) zs=NbLB8*MNTZ6`jpm;=HivLC)6lqb0nlz}x!i))O*iWhx*u5BCYlD4#6$;G*x#oh#PtzjZ(B@gTZwHC1 zEgA62)V)&UHH^%=hm%bs$|E?Gx-I^7j4(mVxi;mf>d29`8G?1q0O-N1S^=Di!$i$D z;X9d62d2VE%sk+EQKF_bzY^ytCZW06RA|FR8dPafrACz+RB2I$OpdrWXq?-h1v|s< z0`#4D9`qBg?-zqACv|kmxx4R4W06a#SdvYJL?6RxvNcQ)LboGg;lg%3A{gW%~(aJ?%%}j&UQ}+l9gbj^(5SCWy1kCh| zCvM39)Z;~v&bW2Xuv1RbE zDl=0xm&Aq}V(m{=T@w1HtA#m#rqRY`oKgXQ7~l2JV;H4W+o4%^37U!L(`K75aci)S zwfse{Yj;tiY(!`u1g$N62LCLAS+8)4ci^vZVsF7Z;}fbd$5xWfB3@>Wim8%dwn40s ze5xsA*F<;01lDB#6mQtppiDr9YgVb~w}lSB1|n_(3&8`|Fm^dqws%^A8p$>#MD6!s9jo57Lf_9?K>Rc|+&ZI>STej>~4&G}Or zIal6aOd6?!z{{>ekg;xaO=EB0?(2ZnkIuerwjK~?;|QVT(ZMvATh0^`k>$Vt_)X)_ z1&-J1x?}${dWm{jl-6wkvp`J08x3MpfiAFT{%0ea$u*m?vd2{;or_}M{q+~VOhksq zQ9@z8y#g`Ykh`+V|Kfzr(Mo(CmmV#!w(6Wgd=oA zpXB94eabsxAD5uX4f^!E9_@iZd zOE#|shw?w)?PG}xURtTtJHbBK&vRU^XhS!scmD%&%%Z#*(3fgSYpTEoyfC*6Gp-9) z23x&&4jk(YzeC{Fvj9=ys%7ewbYWSLDG;pC6rfgY3REP}A|lfk z4h8{g&LK$Du>%3H@(>`Wex9LMQz*3Ezo%fS*}!Hl1k~Bp!u6r)4iabxru96G1kjps zsk>!?ZK#-}5&1;$6N0ml0lzUsIR)BDHg#hI(IKl;TaX=tA>IKxZ(7RcsI0)D9QZSB zTL6?0=T#!`7Ow>G7lVY_tSo<^__XizPSCq)oAxhfu3uBgPgo0Ftk2PBMDgjKl#Q^@ zJXkH`Zn`xvl0Rhn3^co7=52X6_xTdl!=ChOhb)`F9*6D?hTX6$IPK~iQgW4gOC_^7p_}aRAV7yu3eXMLb?LQ6%eM62lF9mS z>2;o*0$o3+0+e5;1e8ywa7qz?wstnqY%>b5(ZS)cHkFas^szo{C08WVYsMK86S4e@ zmKw?7Hjq0eh?o@tCij!FR++*oil)yEw=_k539=4@2mgSk(^W2(R@>_KPa&`CBBbQ@ zT}&*OvWr-BO`=$quB4=a8P|aegDa6=J(K4>f-^XAOVHA(rphgB{RlznGHDv`H4Yg- zYQ^ML*i$A|s$WV?T>f^7w8$^_6X8Zsm4g1JKS?>#HbKo-g5V~hs8w0@4kUDkR-swk z)VIgh0Kw1O;J}>I)@s~NXU?#zSrBTTq(_7S%N7yfm6|fmn^(Vgd9h$)DflQ_gWz(=tA|kc1vS|FB zp%@znLN@5Fe|CeJ%ABhgQjW$7X;K!c3)BH@f(PR&nKP(J?B1_>FTR>VHnX>@##j52s}G%$2gj<2}SA>n5U1E>XUc$JWJwJ2_$H zJQeR}!HWX=0v2l;pg_b(1A=uT8estMfKmYi?^CdR$_D`ROyq|(WxfIMKlx0Lo$o8vTj7DnW4 zyWmAGl2J35?(?vVy9uG+{%?e>z$nf=6DT|mVPeDWl}92tjL%}ANmY3yUxF;!cX<7Yn{9lOJ@Fp!jwdJuH}wth2D$&Df=Z z*(EJwAjXE$8^fUt)YNYTIF+YiMgMBd3{3byr=*^-LF%x@68Z)#UttUNRAqJ&vcz%V zBl?vWDfm-MXTSf&_f>B&W`IbXjk-pc%4h52bZ{ecIFPX3iE4}lw9>%0gY3QAl zvuc7b>v8v*?cdk5bZ8)tWwPCUe4;mXey`C9fr|2cq0^K`&)el26}{NgaSmZ4Unoj{ zbIaEfX!d;k4jTuCS2#?vXs;U@lp3d5n zt3R&W&m%{ZTof4yNxIXQ1C(VcW!bbUi zV5`!Kz3%59ziz92P5h#{RSu|?O{EvVPv_llxAk0` z_uFq>GAwRhO7BNeOUda^>f`SE#tbZy6+(DHwxnbC$m+dL1T(@W_C4DJj{9Y{xRy7Dl&x7KE;JqzyL7)ON@I%NE z>WB7(w!eb2?t7A?Lj8Kxa;fr3E?A|1l1UKLuH&<;>9wMB8^E;NV|(~#oiM3eP5qa2 z5)k;a`&fw;U?AQFa3;9z%{^eA>A1uBBS?ma_K6D$P*yVf@^H3V6N`pmqvw&J`h_AI zyb-^x$fu-3jsE>29DF~Fy0OXyq<=b{qY{zc68wlVrpJIaN$VBQ!Vil<+|4<;7Z zgLYtPs%T$YB&}v4e3&dc8dS4iN|1kI!8L)raA;tRPp^87&PwZJY9n=Vv-4F^ws&P4 z!_mja*Gg}-?4x(ltfVXBWg}{1V7JrpvoX5J+vKm|!5jayF|%TI%SP2l#R=|LDYlc$ z#?o32Pa7w~!)v2cO`cYEF-kd+er8*BISsp?0gjPqR(EQq|>OJSw$nj8>qF%BYB`N{j9ad)8&e zzAd#9t3WP9NC3>v8JV+lcQfRHezRxazV-6)02N*UNidtYB>xBb&E1(9zceEV$rwbc zLT3UW4Zd?!deXtf6l?5rwD0u94R>&|}g1Kjk^oQE8{uS%7 z*|N$hB=9bl0Y+tr7!(8sq|+GjVjD8sRg14!5!PnIKQt@}Sz{k@oMZfV0KsD$J!c*? zuD^-tp{&*XQ}x?k7KH$__O+IvPd|xizW%K;Avw4b(F=AvJ2z1#pTPf7NsnbiJi#cf z0w$Qo(*l?fqK0Tytk+9mOIi@@?D1)URDS#?1o&Bb<$-We)sk=m1lEdV*^>e-AIGwS zguJbNpI*+HDJuq!$}vn#5P>~)Yv7#h4Jd@ayOk7$SRZj#7Kv1U)DUD3A~qC{hTR!9k%)!G$*DxbPxM6kGdvAx5cz z2IT~o;Rp$f&5)rH!dhHGvjT6jM}#3J#bsVZL>O2^6UP)Q>&6;fO^kl6nQz9`r4THV zdL`rRY*$n!Hc>%VOsNP^%5Gkjge#nYAX+vGvAS@DA7acXgk~2LV4}jHwT0o8k;LZ! zD3nVa1@Zn3+FDZGZ{tvGQGPy22TV_Nzp0Zg$>WXxAq4pj10Aw*UBSkIWmFptTT@+I zTjfAG)D96@t-G+*)%)hX_1nIu=_)Kjnvc4D|KPlDlRL7ktI$(KW4CT0H@oM*!*n%t zssl8bJM7GNld6>JjIA%xe(~XIzp{&YO5_UCzcd(T-RpECo&suX0QmveT6ls`rIcJp zFw0)ubr_)ZV_XLI4B$V|Y#6O48i%eM?kMB2{xlkZWUb&A z6c#M{@W9)_{sYPkw`91=<8R0A4!|?W|9@H&RK zaE5Cg6lk#lrw?SW3{niy&l@l)5QH=Ugs4H9M%9h&9q7xf8prix`h_Ph!y*riAMO5Q z*NyTUBq!9^{sHX2l^M3nn<~cGh*1(C0%djF8_YIPQ8}I)(l;{4<5Zv}Ssp0-vMoeX z^Hx%Xdnax~^o1wK0T0N*Ky)MdM&1nSHy}})82@6>I=H;gVXe6F!z>N87`2+CQ4OFc zg=1fJvR^JXkZ$1(Ar8rHE-8upZk#qOa-;l2LsnF$4uT>jUOd>N zU!Z#u)0>R^qG7T<_-@#x4bW>4>qhMh(-=2UPqy)?N%k3;m=lD!@V|-2vmVXAV4PV7 ze-|hb69d(r`3qYEu#Fxz>}$CGfe_uFGeRPoffTWIW}T1wq99G8n6hLpIB0Q3qXHOb z#Ww!-F0BJ}6i4@;!8Re08(uY0u*V=pv`r(CLw@3&tXPD9fp`B@T$}7z5`vnaaQb1o zLrMxIeFXyD3D;)LFov38`_@B`;<5x%bwX?alH{H}nfwu)$BP>*Im1-%Tax<7@(j7D zR?V*e)}Fm_;KXD{z4~q*pZOe{?uq`+0=LjZnKtpWd$qah;|!qxxcP^7#;9C!N1EJM7P2b z#lv>ry!x%%(j#m!17(rypPwhY`$e{^$vVwo-=BbN2hc@aK|XpO*a2E^ls(mPw;K-8%6mkU`6zXy*#%_xtrhIO+M?a($cn3ISz(K&X^) z*Iq(TCtD_Gz+^M7;sA!4qvo=G{XvpPzoFP{;FN-I$?^QFw1RAJZZN3>+YY5sm% zJ;iyr+!rThv#ZJ*JXta%b8vFpE|ej>Kgv+09a?HyvXl8&RD8r4F=+rqJ1EdkrwJ$K zf^C#@a#T4R4s;64dgEeQ{M`@va)2K_2>z}s$NyPIf67ze<_3B)GlEB&^E#ezJp1|^ zInX`EI%$k9c$P^-6aHl{?V74X$ZtluzWp(37}r;X-C{FL&)DPHXR%W~i4 zT=e@)aqVksGYXN~SdXGq-hrLvL-atB$c2dBb+IIG=7Ugs4&Tx{82D6n4H~S_$Yk=c z+u5!gNaQA{l}TPv0RX8~639mRPD=Y!PpBqyeNmK(C=yt@QwB{7aN8fqm$sZ6`>`?P zeUbqzrBDE=LZ(usijW|bK{X2?nGlUZKSoqCT#(IzOB6ZACbJ?TL_!ooA}yi`8Hzj; zXbqO)=>N(P>}3_BS4LbCSi!U&LI5`b5)uK|3E-v*&`0HvDG=ZRXc$4D9YOdKhdXO_ zInrF4(z30i#3unI@IUCGm5qH^)>V&i-Tb?a$1h{o&Rc0f7lm8e5QsWhR^k3!YCR&0 zwEnSR5=kcBkMt0J_HdB1GYi?I?#g={Vq*usBrzr4Uq>zD`W&=^vldVnoiT zOWO%daXz9Z&?QOGcqMtI_{0vVgy>Zof>g2r zFLnZvq?<_?0#}KlaLlk+!cuy`X)^IUH3Ml$XZe{nL?z4chK2!PZCAz_N(WpK!h{D3 zph^U?qzS|-fR-4bO$IPT2GFon-wdiY3=k<25@k#>%^6YxloCR;E&fjG2R!3Xfn8i$Up|*I6)i|fie_f*ANWJmT)LSpel(9^_dG0rGkJ`iHx7E z%Ww0F3Z20!EO!L!^CYvA(QDs3Rcgy?p#5xMezr6}9aNHK`CtG$p9wEn4CqWftYs)=;RwZK`Dn4YZjbz%3}m^v+IAn?x>JKcApq9e0{CtM;$)=vmlJwwld?%6?$! z{jf*p44=YJ01khHLHqT$-cEK@uJmcX5obAYT_7J1)F04i7PN*?PX&b+_G}Blf&fd) z88~vEo@ZisZaVO5#tHAzyGFN7QYnaGy|_6pL%@L4oe_2sFS!35Jm*B zOob>_0zOQEK!s2ifp{5#v>yXx8-R%k0PBR{Qvp^HJsE9c_@TK3a7(b3q!_TzU|sRXgJ zQzk;mXO>}LwZJv{5T1N!N!GSw=H$^+>o23!5L($r)vf)@@wMnj#?pp-ct~f`ApV?9 zO=zscs}go0um}*W513Yka94-W?VCi|!2m<6H0uHUHK%OrCeIPIKb!;mH>4|UGDgoV zlC_=^xRE7T^q6?Y9MGE5E+PJlh-^3=;#U%M%pBr5ic_1846v2O5x@NCI2O3ta3t4w zzH|f!JEZ~?*GWp>5L?j&Hkd(AcCS(o zgbEL)T}YuX#0yP5y31IK}r>% zmkD5*Rsnz-0mL++vIt;|31FHEP^|=g(E_0f${x<#kDfE+<0?5L+` zgrW6_D8yP3)S;2QvGJ4^GyYL+nr3u7){b)9A(1VQV*40nAfX`^M*4{92nj@B$T2)G z{r!ra+Uz=|=FB+W(iPvOaqgyT=t;chCi_$y&az7WS*!` zTnfv{Yh~@LMW3R~6VfRxYfRg-&F8?#=IsO$ZvCZ)7Te=TD$iSR$R0Pox$^YW>GXm} zNhfzOX8S}vgR0w7N;O7a$f=Bs;+Oz(cK|+0P`~QH0r}MH<%8kMj ze3aiowNYMCx6*$Bx_&CLYs1iEX!xGttNL0)C0BerkfVJ!IdQQqP{V2XR3l#3M9wL^ zIqapz_f`KL`MQ3Ff!FwyecQL@?GArwmTUY>Qi(Ws~S z7JKaTrh^{a3R})C5v=E%m`2@6sBq--;K;9kx{TOHi(blX3*YeZjV0LK8t>%FYQ}8S zFB=h5n6v+Px{n%eZ_oC1KOwY_J7KwTy?YH`A1s60!Nv^A%cC<{_id@QbkBRSynZS( zZS~ca=Bp=@cOzd9f6zwKlAZAL`Tb;3Frq*n9pKHYQSPc3zWbkH-xCqhHsoesP4{hV zUq8u+xcsl~#i{rw1g^*RS_XJ9igYaeoF27)oLFNwc+zsu@x+NMm|_W{ z7geGHxNt5)v4|j;A#KEvR*=DBh$(S^{I&_pfWW#GWG|S~1q^UU5V5Zbz{>rPGOv(v z%&XY~4J!bb7k`u|5`zB>!AdE8KF=P@%Ffc?Aq$JFVW?Zn-#!~=~m>^OiSOd&! z#9J8)NtNIqf(Qvgtd}DA=AO7wlHZv!C6M3%)>jC$0*3hY;MW4ay8%GUfDBMDgFrk3 z@NNPm2{nQ3n1Ib>^(Ik}Kfi31OC_nn3@(HLak@A4AcgOgMU@};P*9+W z==&0V!6CvJlX(_1T2Qd0l`KulN7WwBvD0j?Y`=oUme6$vkbDRL*#_VtfRtB@3V^s= z9n07`YeT1sT1O|T!+t3F;0Zhs;Rg&jfe-|cv+^cX`k)0)OOt6wI;otb8MM>pGKbG- zR?IvoR?B=XtIzR6NC!;B{l3FQ6Xj0sFh}_I>@+`fDf%1C=zk{9jFwoNE5jy2Zv{y&qWpI&S&y%0Q$zG{cMBNEBq!?{)+Ql4;M3XS^o1`LQKG)($I>A6q9}*fU|OK?yB^bscSm@KUMGlh zE~!?eEfR{*Ymi2KsS!3*It4w zMFmai|M%g0w%)>W^Jdv02PR|lvmPdBpF0HVpr4o%HqZ7M#7TS&kV6L?B?4q9K)@B+ z5GN4d0caROpdCU0Awnc1f@mp#uGE1@g;*E?pdJDQA%aLKK)@D)AX6b&1~7FEkQWHx zmI=V90_p-2?SR)LHhLGU&}Tq6QdCPJ77-H0s8tPB9s4}rK2I7kZ^)PCPI`eK`(kCL6uk+0hAj-;2;7NIN>A{Ax0HIS{Op3E$}fw#tk6y5Fxk@ z5Jv>CP6a4c0dL%aNQVFmfXWS^@*5!G1aNi2gem}S@PfayAc7<$f?y|tpa$WJ0%gDg;4=egX+i`cgN_nGG8AD{2>e0?G8JH6 z22gPaz}W$Cj0r%R3Q(;A(E=D5Z~=-25NHR0fCx~D2_TpW;5K@X(QS#Y2lhN4AfY$y zoV);`DnUj&v{^PJ^}zcmqx9ReYw>eqJ#Pss?XBoUb3YIty`T}y`}Peh4xwQcpdYc< zpJ7t8uL!f*(N>_Xii#ey#Q^@T`SqGdtoS`>3FoTw)#E#2eP3)tIoLX#@n{+ZN!bJt zZUEQL7ZOwN*vkw++k^ca+2YqJ2$;ZGI|9ke7EOf_m!xIY8Al~QLK@Jj3V@*rKz=zg zfAXPniq#177^>6`o)V=ixVK*Xxft=XVUm1*$8z*rRxXaEPK7RK0ZgSmc=KDk_$qs? z0d|-sK0B;4M+LKP$;o$z&lc;gRTY+4FpV#X`Jwf&-zXLd4J-ombI!*nBd6D7Ij>jB zRSCsPH0i7Vtw+au^js$5Twz(bO}mC(Gp6_Uh;ZFzib~-9={>w>(0-D?xg)iUuGQmX zbURF}o9?N1m7v+>IvR_=l{dYC_T4A$)JdJyUuDn9z-!xO;`96L?)|C{Ey#BL^N78i zMPe6KXX1(2!_}bmFux6kOP{9Juk$pT{Es>BS&xs=-@R8a73z}T;lBEAGq;~Qe}jtW zyl3J!!e(New|TxBcIPqqT=u!tW`|_P)U7xS2XQ^krw&551Zf zU71?V9JSTeRNIA$YzqPPn!vkadH2qmb+zyKY;R(pz5gDr_l8lSNc)|Twl}d)@%^tw zH)x4s8zk(7vA^;C@9k&~+dWh*)3q>inAQF(eV2Ts9ABWq-xV>|ovvrzwt2r3(TJ3C zRP?RLsr9t_Y_$^JbB&>&%tZG{q0fl0h<$6CDcky#4w3faeXf#v*d%kAc6TBhvE5Il zVjJn)e+nnqMo(KZl5;4nNakLR_~-9@D@L3+V8Z@$_A$Geyxg;R4lW0A5#C5}23#Ow z4sW+>29;BpoflJ?op=%)C}M*a3n79GFcVDr-}?lmpJSR!J0!1%MOd@4ER>|5NgP4Z zMi}clMX~6a0gpQ%&tR}ME@wh>L@Z}w1k9b-RAY1!mVbB+BC>IYiZi0N!P z5sfq3|Di~zc5{elysnadU%ODLglo|1>~L=V_VP~@(Hq%+IDu@wG7K3UlOrx;Gn!`2 zv$i(3H@G;tIq05rdPl7*-kJUbS*_PV>-HOMzTI6~&F^$4B!y zvK;PwuTER3)$4Wp9iI1oYr)~0oSpGed3@Ao#uG14o*m!D3X2q1pK&AAg@0^ut26DH z+SGi1`-hipvW${EA)yM(?4k(0^biEu4B>_(Vo*8HuL8Kl5_zzj&U|ki5OaznCCI(3d4wp$TFh}@CPg;h5s#k46 zQf)rPXc-ih+$ zeyoLN5aSqA?)<`CpUV%nXjdBKPG22c(s3We6IzzL#%SkFiT33IE%^exl~W&(h@{uzp>BRd0!cn*CqE$9(45Ql{43A43YkSR zS;r$L2>OKx^+qH5Ci6d$t&)!ZMk&cj_pK+v)UHV zhj+WN9_(KWqZxsw1n2f5(YS2A$oJVqg45kp%tA z?d+N|VI~05WfFH_-XQ(I>>)m(kWj29>`VeX)(}bEkwRnpp``!7|38`TCQ$GBS1Kc1 zO*p|Dr|DjZf4c4dT89Z|HF!zVJg@)!fR`FcvPd$b-EHd&rR5UWh5mAv6kd6J40||qUnog?V-W2F{3yrg3RDb0OzTCxl zs>wT$t|_>TqH`rue@W%sW1rt~-RMpPhHR-pD1d}n9?LSK`h^E3_`RPNdm36&ZMibb zp=Z0-Tc_88-~L}`x~>hec_8}tam;3G1>hh;6gc556M;+vOpqrKo!VU>oxA{9zzm|- zf^8CBK&aU=cA$Dwe_{9nbl?bJs5USAXi&0%>7A5e#j5l3tt%vI3H?7;Z2v;4`lp~(y({SszcH3v*-SZq~ zUOOivFBg{NvBqTM@?6Z1HG)GS&R^%_!^EL2kY*X^X2;3%zo`$O`u;U#4C%yA#)~Q=|E&7_9mhtMn<=O)Px63_l(tZ^LT% zVdfU6IT`QCOM9@B)e3bK=>>hYiXP8K0-LVG>*Y53w~wBkbQLSl3(nagM!h*nbglBF zrTMDW66y?82?hn}O-)DqCW_IjjHekXocy?Ceo}o!%ga@A^)DxUlDGJ7-BTG}u<7Z^ z=o6{438yh8yZ3ZqyjP+VpZv0V%Mbgi*dIt{YP^VpSA>ftwbeYWj+~%q6Ina|qTLSm`4; zZ7d+)13H*TBg9g?GvFzY89j&fZT$$A@ps$XhHv~n2HGd7nmh5K>>KDlRGkBI;M=f# z&uw=t7Y+Y@jl->{=v4n1*>RTDoPD{S##FciF`;SH{p)#HL~vDg?RAZD6CtG1Ed%#> zOg0I};93^Q5S;>pYYil}nnj>~AUN)S*#5tlWf{RTpR6_E|LD)NU$Gv){@3;YQ5GNn zGt_{5(5`)^ss_4>T7OEs%;6XVMy@K#Ywlm%>c{i}-oZwX+z?3L zeE%TrJnMbD>bGC;Ii;P{Sg-%+LTRp?7xw@!-`sJq^^dJ4yrR^y`TRaa>VAfwyNa{N zYYFa3Cx2be-p>+Kj%$9^y4dJ8&U@CVW|(~DnfFzvfYR%<8%I6MV3+3jnSMq>Llx7* z^;UZrDV0wh+J5OpaHUJ9NcW*t{K}X{_9oI?XcXr!eXJa=FPgy^#TA*~HEmuXUbRoQ zL%l$}ZC$p_`@HokcdawpdKjCpw|xD{KIG%xTRL;p){zBKcE5AJBqlNl4gR}x| zh;!->=`LU8^z*2Z_Ndf|#iTGd>Ol2l{y(okBiP(J*nC4ie~*WH*qQbQu=u8ajdK6@ zH=$PHnb?hqHN1hq0*YC`yOn49<;Y5(WJI02$NEvN8`>+>CI-nN$PB)QPw+-NX^ZIw z*JFZ98d8Dm>;iKPPX99bp&ix|Jd^Cp1J`vRnZ427Un9BGN0*#IQIPF-4vVq&xEhJr z%@Wtcao;KVPm6Bi#!G%sYHch(=M} zjD<sgryuB-_&tmBQ|@~O z7}R{uU^YFer&pZVZ&c!{oicHtzD+!hze{~Y%H^ZkDK)S31=>Q!OEuTEuu-oFsObs= z5A+<2SDd3GdSAGaMla1=GWv}Ea4p_|ZfvDccHSxx;XJm>k4*) z<=gxo(VwhVXyF%pcxVLb5qgs-Xn%G(PybK;?co1j+$yS+YJP{$A<$1@P8zQ=s7W948|X{E%%<~j>1umCbjwPgT)Tr)iHqxD;wYpwR|j$w9?2Bhp3m1{ z^PBSecawz>;@I6viucGbuv~&7oO6zb6&s=~m2@*brQ6(^scvp@M<@`Z+AiIlcC5i? zcqAGh*c0dht-_b*t>lr5r(}aV=3@NQ#4o6J&Vp?yHn!5JI`PPYAHDkS%EdN7Z~gKg zpGNMWbyzwrU+zv5Xi*>TXb?@(?`}^0MAiSaDR!&Hr9u+bM1t{xO^xTQjcp*fxt(+i`1erA5-kn!t~(#i7)~rG0UZ zJ`ic2gQ(x=qy8r29+`t8cLq#DN;j^T^~G`YiOCYEW}R>fjkHQ}lF-Fr^jkb>72%Xf zag&hS1*fSrt%-dA$*5`|?ie8Gnn?rNkg)}QkI-z;xP5W$$SH#;{~B6i3JBK_DxQM6 zHOv=2{(v%o6iz|A45SKas5V#JjD@Y}I-z^a;buaDd({QRh@e1*L_#2HA~cW{A|Mbe zkrjv%2#DkzA}~(;05Ln-?44XvD6Eo37^yqkO^Qs3A|>zR5`LR*w5C+f0)&UH(`70Kfyjp_;-th_+u_b@@<~29rK_K;_j$Q7iLG}!On%U$Ie!@iea+s-jam1ztO|A_7d;z7>$szT4)%9N zXb2ZyLnoiJVnw7La(O)VZ|n0Oo@pn;xRC3D{V$`?AI+EZe4B(B)YoY-6MI#d0_(td z`dtgOqS4uYTCyGw&9i=6@2p$yT0o})V6D-(3f-Hi*MVS7;ReKwjv0_&Z?w1ZxFdAN z^9)ek6(!p}69}}>w*qh{g^E~4#@g=B;UtV-v$NL`Tr#dQ=*>fFhUtC$eNekAxj-DK z=tGtr9CWeN2U8tbb-~(C;j_@m=r~LhZx^M&6awNGAW;P%xq{#+xo5;nFD=Su%JFIS zTaH!m_i;S&n{pHFsu$?m{S~$)1V2hY z$+h7=+=kD$QX{*sf+eoai2HE}N44ELf9w8rGiQZJX2NW_*$FHmFc<*igQ!yikV6AN zPX;I?f$%FpplZV!5}|hv05yk{6GLnnaPI~TBSS(S@I?)PWP`F7;NpXrdV=H|z-JE- zVgsHUV5|fn)`IwTLi8L!Zwf%Sgdk=^!V4kH4Iq3$BsPJS4%lEqED60A?K0g1d>PQ6 z3}8uv=zRci)dJ{rg6tdcY6>7s2r$bBbQQyt8UXhjF%u@dhaw$-zJyRY2c#|`yA0S) zh8#J-_7z})8o59st6Gcxc1m2?4VVpmu>&IRNY)z`2L+8Nl)e zEII+G3gEX2B-@8FZN?!ItboWJ@b88YFoDYsSZISp6(Ldxz>FIZ*oI6pVJ;Hke+&3= zgNzP<=pL~3f`}-F^f#gV2kag&@rEQZAtDkXrwurK!{!8>tqjYq4RB-wARS=q1?(?j z5D@_24gu&7KwJXg8=&0=Xfr`J6Jdr7Fmpqi4?y%EAo&7NB?i$FP^Da0#VR#M*HV2sI$vjIoSw@8d5^Bj#GNXc! z6a>&F$h(oc*3B036p*?A;Ft)3aRPl4%&7r$1OT@JFesa>Y{_sT{>Ip)7S~`hmUCf1 zpmz=0ovy;gXy#$~#&dfHo(^S?<<5G58Nb2eHTt0lU!L&PcVXhJbRneZ5#6*l{r-R< z)jx1D!gtped?M&&Clb{)$L-=o#!4=Sz4$Y`9Vggg+;%{vrU>~cXoyItD8*6G5(*@b zVv%Ptl|ey55)i<#7KjL>b4CPmJW>H9kGhlw!rn#P0YHv+-oWdId{jY5 zkGpdN+X_IZ*$--A&EpHhZ1nJVExYU-4~-{kB zb&)anS6EowZ-=oX<6Ntf-shj(O5yY*H_`Rf=pp?X5(Dix>&VV{$vvD z_K^!g;~q&*y$gOz@KfvcoUH}cKbVEXqv*roCZs8N9fUn9#aPK(NR&uL2vnLW6o)-Z zt}WQM>D9Ijc81DB8D~dEwx?Ao#b)hhRA#?_vvP#%r{RvH(lA?BnwCoVb!TH6nEgD| z-&BO2#qtN8TS0U3HRM%%N%b$C{gZPH*Ug!#H!0i8N8%nvlHmDOq-K|RbQvkV%;l6a z-QE|>$A`Y>>2k+b&ga$_;9NNqG7Ua05~)@1Jw){&YPXS8XP)e>)4>+*ruGt@0kBdv29c-r$zkIQz%CeI-zwvzey9l)Hm-_JL*ACqzLYoq{=J_~;!Bvxc^n<+In{M^@_S5lpElv(+D0_e@O(ZO-M@E#Eh{*+m-o;y zdz>VDt{JH=Cy@$0Zzi)E!Q#K9PB5sV@_soa1(uyLRoH2S zRet2me#d<~fVsub{?U@HyW7{jvYH!$=c7g2yA+B-M21^gN%iX-5cD?e(8xNxmq&7) zrjYW*-}zc~r5<8F_i5hSBuV%@{Mvcv%e4oM8f(4Z*5iD$Uh1x2k;gv&;=1;&@_Mh@ z_0IUwJw`jdWI3u7jOCzS9MY@%IFu&#gkjSw_s!c^D7Lz;{d=QUKe+2}()m$K`+La~ zY_H{Vvb?kmJ5}kzBjs;tnaX4wvOYJg{xc-!-HV=Q@XoiRP%czrXE4l>a#3AP^o;(e zxf_u5*T<_Vd-@#>gs(rct+(Z}aX2x`h$}NZ{kjz2YWtd>W$3t0-Y`05{#=Ghs#v0n zj&pH;cfVnz(WAHfM1Go$0t-IQoS?EV(U(=!ZaTKLoF7e*R{mG0>f4Vn^{CdwGv<2G zi>yVq6TN(ljIVcLOHWxZI%CX^#UIDYKE=oF6<_z=#VB2NSvFTBmw26I@4Oh&?U!lV zvlDT66zWL)G~9eDlq3WC4sI1kR-qI&_s3YP8N8QSiq2;qsT7@EYv>l&X1B>K{jLI} z2ItJ553*BVjfiS`ij(3|Qv1CVH8iS^^ZhpH-lvO;7h@k>I{NkUVbR^nx#LL|=&y&T zXTK@n5fIUxmXwofR#)gFQ1hK#11ra|S-H^1%BKAz%#~N*XyDYf>jlu@zH(6a4t~x7 zCGLJI^0iMJim!XA(MhmUx#|>pi@2-w`!Wj?-9q#0U#DEE#VgfPW$}-&Puwm@r0n16 zZyZTk)vk(1P`c9zi5s@oA`ut23A48%4KUEauQ!j_wbp0*ER;`7xyc@Sd#Qd8g>PpA zx=DnCV}+ZaOp2K6cdIC=w(|9#28p)44bGA6(tbUaavlMTHq4rnZ@AtQ(!5U#N}JW& z#x5b!xw?^_k@E71FPd#ynac2D;K%aA>=Z835g10A=_~gpiBpm7nOlxke@%yVjYQV* zl^8o7r1nXh>ih4_#p%1t@q1grb66D?UQ|&ocw6#mUwo4$PnWY`%e+swJ*(5cwEZe+ zJslZZ@1x`#&x00TUShFlVE-bA2fWg<$#Ssm(GfW~SNuvWR4w1JSssZ4FBX=?oTtwu zx|m<>EzY}al4V|T$*lDyFAKh|lf$n``E}}ZAvUwRLZnsNbtA^%z(6R;T(%3k586eY z#uk<99XmSe&var{PtQKAqr)nw-u#L~V-rS&=Q1n5mx61H*!Ni@_SXKPk0xlvJhtK@ zR-eHMJMr|%A;rY()VZ#c>hRa!uWFq>Mb#U|b*olgt4xYM~xg_Zn{anu*yT&3z#_Cp} zIMIrVSPyb~9v23`e!6I$mC)m;o)|t8E}3PQ_5Cx{ZgI0KH(4%~Nk!h6kC?03z)jHP zlVLe1*NvYuuJB*?*RIIGFXt}^2yUxaDP^?vePT*Y^BW4p;DHp%`zcuWnAJsnRu#CmvY3f z(qnAkuKlCk8>fsjzV$H3jGo;h(+A6y7KtHI4x7KiOfBp*HOiZN35Ii(A3rq!ft!LXCXcmDXF>kYqB}`~nAk6a6__U6-cIH&G=x8AQ^U3=}?tH0|0 zmUg!}tKB@(;RvvR5UFwc!dNm&N$c1CZt6n-@^EYUG${BIB{L-Gs)J6<-lSGo+{YJc zdaK^evO{o2;JfJC4fT{N0jQLF041#*=e1w_pZ!bT3f+kh7$SYQ!uIh|F!<;_e{bYX zgv5oQYT4!W;Dg_U?%i1u?HQ8yuiU`nO!JnZC0X>eOaAy7O@6=r(ZROEr8@*(sBCOSPb`VrG(Q#zDDr{p}%9iQwNklg* zn`o~{Rc$Z0SPzN~d@E$z&B(6mCvnF8v$-|zx2NM`yHeZtk+C{G?t=%S>e*!KyTafh zjTXgv*@Exp9xHPmB&12W-x0gg47X><%!GK=M+2o*HM+WkPnh;IlhT=IGKuUb%r*Ax08wOz_y~aWP#crB_=FD3$jj{x6Istr+~Ey^oLeYVTMN;vSxN%1rzA z?A?c&dy@|!Im`9vabcer=Fwqt2;LDrId$o3>=MMyEKH9oa?5@6VR679al?w`B$$)A zQAjD3JQ+P}!y1zy@J|WQ!)6YEUp!b~xajtW3ujgr3+?EvUOSyT%k?yrDq`plc+a$> zRalbquw~vl>%-F$Re~xt%a{IO=zoO!UMVxn@Xi5O8Oh1<@)cohd}3#**5tlvkE5}@ zid)E;#!zvp9?0q>Mo%h%|Q-C-O8w~FSu z1yW1AcD~sIT zaFJak!h5Qj*>|E=U1v6Z&2{gay(tS*>oX^#UoTQMY*uKl8c6)1W z5)I={Q@kzD?8FHcnyY_6h9rdZe}4NXAy3KA2eyyt{FE|l>&Iy9^Z~si;88|&qn%J(WB&Ysxp;F`rq^&dHHZdhG`IV$ zC}NlEw;G%0*R)rIy_G2%DzRIyYbl>h9=N+DXSS0{(b%9kUcVAe-H{+h_Y&^j zJY^0RFn99zQR!b9sq`bB%O=gWdW{l{OH9xgP4|7emuK4}!oX%p2-lO~n(8F?z4XAkXj+YQ@z6C5a|+QitP9@Xul$g^-<%sqX$LI=dKks!u$`c^Mv%te4|E_?)egn+fyOOt|lB`cFD>< z`bHDdNv?XV%qOauR#}~dlfFL5^Rje4QgfZ)AmFwGK0_@yS+%HheFKww8JQvX1!s@H zLv`pD$=Zq44kIae-m}gAsK!QnK{0uaGkf0E z6m_iy-riehtqODQMpvaS<;pIL4PCtLGN)r#4kU*?7djq}Q^l89KZ@UR@UIO-H+tSV zHEMqmNARi=Chsui%ZwMf-QkGMdi8X)^fAaQ)~~Q15nQjBW6E}i;?i9YO`e|#2IN&6 zGMj@Sg`7n*dP*x9o|oSCr}P7jzQ1};Z~w&v%Avq}j+=LDOiZ06yWx)|&jKS&TYqau zZJBxC$f+>?`F;r4c1v&*vi0mQysa5~bYW>5g>)Q;R=OM549GkC`jXVT&?7xIb(Wv+ zG3yJwG8-28ox^~T{;1%(|nYKM87F0KwLxBD~cHS7{Enz`YJz_{n@sIaTk z=~?tN*{Z$EVO^tHS=&Hh>~FmK;?n3~58XD2k2 zeT%FC+OM3e_&M=#w;!NjqXtjAt$LOkDf7l~->s?ciB5j22>(3U-m~&hZeQaZ74Vqn z@jK{)yhp&!X4VY9H|?_pb>Zd2^RuPS$`N9wy<22Tjcw($9pPJLFK`np7a8C99F@s3 zmwA#9Ud|&xKXizhf8AQYaGl4BgQo~V=v1z1PP8krs%E1A(qU}6Y0Fw)R|DiFfrQ6X zX|xCDxL=v>6L7e$Va4qcc1Dk_m8!Qr*s?kkdv`V7NtjnaJ>pnNGj~P|_;a4ePet>= zGC-^ZsAYnYth@4_skhWxsvKtLZhK~bD0|VY>y|6wth0~w&H~w!&nH@g%bZl<-%QVc zc5FHK^#);8!V>Y}vSgegQ~9?%Uq#icM99TXXp@Z9IGL<5sB+(KwA&&uyUYTdHAkW{R>A#NEa?fn33 zst+D_o}~)&mf##0*{X7p3o|aS4IrgjO zuJA9|ub6Tn!x!rMIOret_BIRZ_PQcbbHg}@;plFaJ)@~(($W_sRp)kdOwZ^X9>)!N zf!3HUvy!N}fJ$lL_$`?!wXwsqbz82koS1 zw+IO=RVlUAU>;}vt|l0^qL)w{0HE%gbAD*=HP}3C{4>!(<|C9W!zUjY@G6qNInCbY z&8CX&cL?ualq;wY&Zdd8j#=^&5F$ZldhKlW*U3puGx>A318ZO+Ii*aq?r{)A9PA-z zOwN%4-M7G!+-jgpL`RaL8gVty0OhVS`-3op|bo`Oeq zRp#uLz?(wXbugC4asil}Ox$NmL*ts(fuIk)QR8GnlB)7@&^o#4sq#rjm{r`?er?Io z@8v5;_|Rd14R>77N%h%XN%ypYo^5<`y1M&?@ZODz$ICn<*XKERi=-@tw;jF=WAr-p zK*14tUn_6eXn%}Qo*h=@a?Km$>x)jt1eoVh==61dojV#oM)Wi{bKy+6?nGsc zTnrHK#Srk*JyrF4scf1TDfeVkDQ~xsUhXwW0Ym&Nay{*TM`w>37am}ybN+&Isw!HJt!;q!!8K?R{M;plgj%bB*X545le+JY{2Y zu9lM=8v6nxGdaJdPPl;jT9X^Gp~bzyJ$x^!Rn>J5+WJePnFeRQxwL%bG4W``2(it7pd(QG@<|8IvtAaA~BM zFYM_*SK~r^(W4aWUwWp}n;ujv*oH8U!i=X4XWh#ZYr4ZeD{zdE2UhMrg8VOA1$oxf z)?Vo8Vu+Tr$fJkUmTz&Xhp5g*>g*mI?WfO>nVSw@qGSN2QyrRx>zToR8R^W?feQ?C zj^F-md#lKGXk~;Q3sJq`(s+hOiHpTo9aHs>{M{?RijmzVR?#ojfGM(-^V6ldt$3Du zoU0ZcUQFfq=m)GajBRs8HAU#L7Ct7)u%HoqUJV`U&y&1`2&(ipc8rggR@CdG&l$ST zH)Ctr84VjKxX}(3LuVJcSnZv3t!@?05+Ev2Mg>z&MSAqM`|(~c@_*ai0<(-ca%^3& zk~)5-_<(U37@nk(r{GKs6!5ooqH5B{C&Iix@MSTj+@Uiiw*0EBU*OkYX1h~MI=O3a@&WEHT3v6WJRW}gx`oGz=COK3r zfBHV$2Xyqr8 zK#4)a&k^$4#a-lN{Wxmou5!8#pk6V-$rG~-9zR-6oR_fPXWzS#A*IJ%58nq_L4rN& z?`L19)bu|^L}o3|^*q}ZON$#xBoU5 zC5T1uI8GZMav{3n$#)ccg!SNgYYMP^`ZVWP@RVndj6v;J9&AU(aEjZuV54O{)D2qv;E|gCVH6Z9h=dx}?pz>@r$g{El(p@Wd%-mlJlVVnUKWz!Fot%@NY-Hpz&))mD-~|M9(aPNp7KCL0 zJTpAh?Zy}r{*sQ*d%c!bS1Wpz4>WaM3G-k^_Ld-Q_g%|XNcQyXq*E(}Hr3CMyb1*z z`Bz&T0!`7~5IR0n;Gq~Km;SzYzsq3Y{+MvlwK!~r-%ZMhJWF1~)qTC@ZK+%PK<0P=A?IfGe9`?yo}Iu;@CMb-k?@5FAzX*+TSA(> zY&XfA^M3B>G1YNbfw$Z_qyrbfm-yLmk_pVkb0Hu zFF$lie1FgtAgOVMemYC*%#zoIizt~f<@8W#TYOmCu>2&!R~q!7-@h(>3i5ie#~O9P zhD?s?MI`SY!gTJ}=3`0IQiuC48@|gsXX70A#jLJE^74A}63p)NUH@#PZkOJouYRV( zeTf$G?59DfKW2+1qg-F@7dtvuHGL3Ttu#2|3T*hox*M(mK09A?Z${c>eb=p8+7`wu07Na>WDCr}+gn&%xq*wg7#pO7 zHLu%J^1mp_KTzWneM5L(__L@hCsBcE){lyYU-}DfVptxcVlZddn60$KWH$fM630$) zL~#(icXiWSwuCI5>3ABAU{;GaqSi4$4=Y}Uoi(2muALqx)wG@-w)#H2%A7fLRQz_~ zUwhVj^>{G^fc?2MTjfNPi20N)!~F!$)*c`IuZEAsn!+WQmi+I9Iswh~+kv&VZ+oM! zBTug-OkmaOV<2>ObqjOImrE)6X$7QuBn|ULTwBh1zT#@LZ*`?#y2Cc~{ER!Gbr7(( z{N&dv-+bx6&on)rdWn%LH|@L6aM+SWeDbPcznHp*;?nm52gEG%89NzK z@-!x(Q-(VaBs7XcvI9;t2Bd~7uowGR-s&fUcxJ`Fhp)t2vz@PBBad?#<~q%hd%eJDGi$RD2gG7XX+4DLz)oWWTR4gYu$Ff3G*jZZl!dp?0= zJBl}s%3400$ztEu<}qWB-g{c}lc)Uw@WZSPiN9YDpTH|Uq5HhcCxJe#UZLO+%cxXUhexPyJm(hpjyjqRy6&nRxNgPw;{* zE{Q?jy8X-dxq8oczc2l@yOC%Lcb&6h4e~@ofmo}Ff!sD#Z zcDo@dYhq0IHSdjYzg6mTm-g*bPqz|bGy3VBy_X!3Q{-Q@m(P)& zGv~*4*o3}TueFvweQ2mT&JLEVV7)T*ZQJY#`|c?6;HJEY3HvQK%HU5Uyn)Hc%)|io zEU$+7ZQjQc_HlS^+YlAsbQVY82`R|rElVp zQVn>w_MYn~%WLdF5~-^3mrFi*GMB@y0S7xz{R^?S$#ERnV+>|otXy1IJ3X;mz~JEZ z_(IP-RCj=>W*{SAreae)$F-sD&r8#wqqNtJMSpVkvKKhgKegrw(`zVxud;z#jOJ;^ zgj%?^K?ZWOm!x48xl(<*g^r{_;2TaS>BC-sfN3+psWnCd$(mTnx_C(#c9b&k7pB=+ zI@nWoBUSz<<}q$O`<9gq%oDTR=8gmgo26^LV#e!|kMakH*GN3fFRmOF>v+cUn>ZPP}-##>E; zpl_nV4?!!O(u+2rG?!b@U_sj-Nu;87V*Y*qziH503jmdcJ z)KBWgNwVxW*50j0xE=9iqqJ=bw+n^Y8Y|F?4mn+Z=6E9vuJ~5*&}@xaL4dqriC{Hw z+4cOCtA;W#Lc)xe^3DL)s{k^$4iAuD^RT!V^qpW3sweV^e^9=19PEsk=fuV}ypuk< zZm4)Hx^M)Bt>x)|-SS-FrKu^e0|y&u7DmDZu3dz9u7X5|jrwFuv4s z%NBS-w`J*w1zA_nq+S@^>OsPX#95GhU2MpVS}lagr7E1mZ(0OfA%QfvB18p=BD z=HUa2!Cbd<>jjL&jlKZ}i}PdmdLO3db_d5V%+~+v>Kn9~7owMLGcsm-t+I+MYPr&py9~ zAFcx#Pj+Ga7lFBk6J?SRJSJ-kZ0aWd^vr7X7AoKq=$6}2_}^l9fyWoXw1{Cg+>9ww z+ci)3?z0=n&@k24Wf0J_`?^R!HYv{?^9ud=T<&*vUHhJba^bF@^R2XD706!L*z(X7D8=g4-^_}e>&>A*hd?I9`QeXkf5yreseY+c z%D%QNtdDYZpMSNWDOV&6OGX;Au=gggGY76X))j~7&Qm~hb|M)Pj~GqxTiJSSS0{u_ zke3E03?RwyTfQ;bkXi2;5=VaqZI_a>xO{>$B@5_7@x!<|WjMubS1MCFCb^Rm0&6MO zW|=19dm9pIx}W7piB2~^0tv}5anwr9!IdLk}p z@msQgyQdyPEuMc|`x{B-niBsle|2t5Y{vlwc$J<*x1RXm; zL_RH5-=KxYQX&52OJMv9ocr^D8O75&{)PRIAUsw%vQJ(!5yrIN2awDp%EV*Z$}q_7 z)W0eV&<%)Lg&GYZv((@_mlIrY(1rcA4C~U2+%RK+`=yIWR)EIWEX(;FuOs?rsZ6x8 zTq;g)E*)2IJ{|XmdODJT&+uw{!;u7Hk)!>Ll>$W=tC5K*%|{qhGlcv| z!vVule?mP|i&U{P>{B{|LlTc-C7~GjBlGpW8XLKoW=vZ$POqH|t8SIHwK4{WC`mt- zbx2)0L1LmwBDRP=9p@G$ZD>LUR?vd^yz)n-a<*a~P|RQ@9xF$`4MpF2Ge)q$x2|Lc zNiDK4J*6-8TpUPRV&?@iv1pTD6HBm6>}e@4zmnq#=jmhyhc>?m zq+oUlpEefU1SgKBFwyQN(#a=ZK((0Wjea(-OnrDI7voz=kYXnGrvhV(d{#nAj!Nur z4ymjsDA&QvZj{%*mt-b8}T1igzwE5CDwoX!ugB+h(a3f3LCSv5WZFUS&qPB z!XOo?oQV06jpoyN0amaACt2;+*jGadG@2CdlC7Jsi0GKO-*yITlq^YSZldO-!n``q ziPdKbmW;~?oRx&F=HrpH5lpLJmdX2mj??)Jiy@Mc2$!W2k|mL}W#O23`F>PJpX>VD zXJr8HGgesT>=Uyk74MT1+}h-A?T()4yKC?kyV~mvjR=d_C}2@0!V-TW@4iKh7#8gB zbBzxa9fd7I>ayq6CE>4Lunt_Nll>XSPeBRhm$^toFVrT~SD6m!1zDr=ZoHuMhE*<0 z)>#W5YP?l=?m{1-N6e7Ff#DH151Ek5@q5H?iy!9OLtl() zYJ7Kj_2$1{v|G-Xp~ldr(gh z=6>PcqoG~`)1YpD(^bAPv=}tk#ZJVic`EH~@s*xRyr@HZTm=^?c-W6m*(a-2<bpHEl6CFFWQLCPiXDPMg`_iXz1B{s>N~A3b?XS%tDXH` z0PcC(<-$3Z+G?4bOP;$?=8l!($WxR1hoFgS)wRVXCy+4TF}=0@pg5 z`lYazr=Vyx-0rA7JLDu!n74LYD~BZ;hT=C==c{q$em=r39B1C(VW0IXTvM@GSYzH! zU5-?KLJj=rVI#lzT}XAFnmWNc1Y-A@k{u=nf`=>9X z`N@v=>NCKQ;xxPLa2Fh_(3Xd9tYgu%6Cuv$GX5Sst-FJyAq`4*mv8S`{4jxIBVP~G ztg*`-lhhAhy34Nl%DYTooklc8BerBu?pZloYc<0$jKrczV?7+#Y6BLMzdSs!tF@m4 zXSc098fq}=txPh`rOZ24#MP9tI@Y+eZKEXCj58V-%H2GN3*1AWo}hWGSpaxiCIPG_e(i9TxORJTU^TCYse13bI5yha=~;Bc?`n_XSv z{P|;y2o0LIJ9bRz_!N6+-tC5x9%^+TFmX~}4(}DU6_$7DTnHvArVeExwU-^F5l?a3 zR%TL^bk^eDq!HQdB=1P4X*Tn8v)txAurtc{)921zn`C{I%IySH>HqUOB07%DLDUyB1;J`W(p ztbD?{N6v*orn;W=mPa+{|BgvRTfEW%^VnvW1S2EU?t+R-m%Mb*+l+wt5HC=+_>65M zjFj)aqbl|s<%>RzagKM=^|}7#+j(~B9`Md^N&3-Iph^{}{Pci&>@7V6t((j&&1pnF z@EzPs5NKtXYofDzlGD(K((y9i+TO0tUc%T~K_{)9UURq4DAU1!>dIRuLQ>u7Gd5;- zAK|B8z8=5locK{79V=ZcPZ}>1Jwb0XB}d?C_N|jIv#4vzvy+COm_HDH`6&nP^B#BL z-5GH|h#X z=b5|Ld1Vf|f&WXt|LPLdYWnQ3XBCe6suOPfiruB>+PnNYaBRA@6Ob%;5B?W^g<2}S zg!|NSF|WuZ%=p^PymwO;4olm*8>koLiYHWbxJI!#+J1J1%`d0#HuA!jv*lUl?u3+p zFp@b&;O>S$2vGWJv~kctIDtC}^j>8Xa3n4^o!_Dc@RJ5~1Rs-B)||q|E?^eiQ7gA3 zXU#*a2OckuyElOfKX-&Vj|J9!;~9M;RZE*dOX?!N>ClzSo~tBRmzL@m@POhu>b?J+ zkMJL&XGJm{pBA0 z);4-S2dpLxq|P9Wnlr-mh1dX6+X7=&``cSrbk|;_J?56ran6Np;8#J*^G`~^ZITbr z1v-z>?tv$-&cHBeKUqxc6}o@xhB}Y#1lYJUe2iY7YJwD=x}5*MQyyHTy@k?$wc|Yc z{3~`~d&;x@*M0XyLa!%3(CZZ5L*WNN@T;fYiq`=nOg3GBQfseD-N;KgqT0xg&43 zpJt}llK7^e;k4rCGl9fE#a;Vrjyct{n=|x>f*tMx=EA}YMGsHMe(DCc1ZsVD|69p4tbckJ zK{4?&V&t0X3a#GD>&7=ejG7{S-zBq#n|<0HQ<Gg?%2HIoll;NxiP^X_--)knXol0x=}H3j!& z2z`JF2zA&a*TsYF>hRE!J`b0uMD2R?KI070dc)2$bivCYJapL0fR7~odzJvxA`noL z<&Zqcb*~TLM7`y4_Y6C8+|I;4{nQDAE?(pU3j#fWt($p{-TKD}N6?Ih^qdmY!u>7s z%?kln?>N`fk?`8bZeEkjF7`BNjhH|y(8+cCy(x4 zQ##CMq$B6Cam#qkP4e`N=>ZsCaLCRpx2)p`&Kv}^^Tb&e4sUJ}l3ka0J5Tk;*#kyG zh=1a4w|C~dU+x;1DaIY7J#u-+Szp$u?=tKI^zz6914L;O4*8KR^mj$`T9>b2_4rt+-qWk(xGUf+6B?RRP?4Uu1PmDfAGD#*{a>!fE7j_;a zG(T#R*|FaDOj|dtN@$ZiyYPv_b2HT^!y?T+L;GW?AyW=`m^_WGM z2Yn{i#<)GrzPVZDu0bCUZVY!Vdk5wX4&Q@^4V91cPA`ybGRN1J=ABG1t@;cL!Qi?f zugDEEd?y#%j|Rkf2CKPVntT{lrT{X^VcrE2Zxkcdjc2K=g1Ef!{4}AwEaALtOGsVl zzv}fJMFr*wv$>4dmm9=sOFkl~!o)yH*N(OtR6T3ht(!z=FIUrFKy1x1-=%&;7=;t0 z;p!v4<~`urUD$nv{QT7VGEWEWuQhyF6S<{3%*t2$=RtS;<6mX7>x={cPE+6?rt2MU z+q~jJ?`IGcf7gSb#_*Zw2KcCVV>;1zH5F%edmzh$YX?bEy#Sf|)AYBsA|0YV;B2nw z#=oL?whuYyCXcqeMWo=LGOBpXznet(Swir;oFHEfuQ|Q{$!~btG?H8X3dONvwz;59 zV&(RSd)^*DO~Bx@;hd@)upsP2NHv=2KkG<^FFedOcTnb+wLd&JH`p_0!xqhBQ$05R!+@d$awD5Tc3$i&vwiFVEc@(nMq;M9=xtkz`~Mm_7Vq18e0xo z@bV8it$1;g*Xh6HJP{LLGN9P;*M?-6%=s^o{@piqfajCrunnDib^ql+RY!N)U4uvH z$2@++uN5V|&tZP%u@xuWLZjaYo*Q<2;Yh16>ZD({~=5t_EO<=_9 zcbLpx)bnoh9&8O#`e+Yt`vf{$oIM&GgrrBb^@+Do>PSk}sZEm+@j8E++gzHS7*qB# z!}n@i&_@q0U}9XLmSjqdi9rf++Udj8jj@%Jx7Xt;twJnd3A{v%qkvpckPgk5USA$( z8{%SA7owDJ6*;Kivd%ysI7b?-W)~Ybk5`xn7cN5QwWKYcv;yj`<;^H{(du$H{)&TS zRwWygoA9Col@A`F21JZFC-BaWhaa1g7?%`unT7;BN=rW+^9$wv8L_7Lm@J9LYFDS& zC|@O{#{-Rr7?`XkPb74-0NE}Vshjbt0!%|zX}dYWHj>7=FT@i13OV%NPKXdnN2Y0G zUxQ`V`s zys4Ht8|Q+GjVW8ayd=wY7VDG)7weNXHtW~K`l@u<{%t##HZ!k)8dFm-JEzzH;8vjn zMVKfkJ7Qsy(3vIHmgu&Nu*=T$+Jdv`{Mnn3fWiT1`oh6%#kPc-W*%Xuh9Wsk?xbEf z``E^`!M^#WO_XR(QjZQ4>!6q`VOSnU)|MilhTrR2Tjw=48%vatLi7iMq9zlk<+7E5 zcQG3C3udC_Dw<8SJ{U~;u%p;U1rZWDJwYbe_l25y& zM^Ou&-n#Iu*B{v!7Yet+wVTOL@X?lq$XQAp2$KYE=a~v~z$E`x# z67^Q1Z7GO|QFi&x41;29XuAZ-7H$a%rhL}m$q<|d*N&R8*FFTBBGWMLa})YxtOIYv zMRi+Z)E!Z`Bscls1>R|V*`Awy8{QsbrdOP&EWwIv1O*`zq}t?qEl83VJ*r$kr!Aqk zBw-W$+XQD1eKIj_Tu-WZ9Ar!QlNfKa%GF14d>?GSwBqWcSrtf%cS1puCfLp0YUfR| zV7gK&{pIFp`yx(<*RE5AbLrjRTIGwlJsjvj*@m}G;=hWja>(1wWM zqNa#q8g6{7i--_wl|7QLhh?-xTaXYJ+ZLZ>tz7y5-n?RpX*QB8*+Qv9u|uR8eL3OV zPhWW?_3&PDY--vwwQ1rG8712=bsUi7dXRD& zigXe`6y9L^U7R5Qu%@J=`Zr}*GIsvh@!F{}OT9+2J3DT=2>AV29ZrGDj)5 z*qk22*1rSEslQx)P*5u)#}oUa{FN^5+Pj3Nj&-9bBE$L{S)W!I4*myE;HR9aDe|9a zo31BG&zE0}m()DP_O8@swNuoK;8LWAu>}7yZ{mcag|JAKLGZ?p16d;97o(ftiB!XZ zb1Figf|it#Qi~ui<%)W2b_oMz&EFz)u#_Tx!hOrq?}JdAqSv!H+kgK=H$#r3|G=3^ z5c#%M$4NWH$`UWZ_Eq^0ni%`$=P)+n(7EDdHE?-6i`TY7`Ynl0(cTR~cYdB#5T)2a zBr;iFj#tcxH^pR3kebye zOzDdcq~wYb)RS;b<|)kk13&3#=c>_Szr_&U2Z=o}f0)Y9jItoM)}igUrPMN|KsV?$ zpJ^IS+Cd?zq>Z@0_#qmH+3Su~|7i!UQbH*c4e^nx63-p$gLlyd(*6SLXt+e3I2MnZ zsWO&)sF%VV_NvSP#h$Y3MBZOc?qHED^LG^1^rWPvH9yDP-Dcv|em0 zE}{)A=53s*2(xN6Iq#?x7+Lbmfb4RJ%9qf5@h>50CSQwJLWV-wK(E2$FGyh!h~D2U{x)ddOlV9uO$iWfMgT z@0ZIr;xqe=e7QFLMh5rmC!^3eDKnUfN1a`k*Y?y)H$6>%+0gKe2>N;q(F6adrU#}6 zYyN}iANag+N}xjg&j!U(>vGksd;%10y4Kob*eImGmUvccU1y^9@nCY4S@1+?$YHKJS9r zm{^u;WYh+-%o&A*V|;vpFoJ0#aM>I}PZc3+qfPqd+Gfe0eY1+y{S>^pq<(8G3!Rgw z5;IV5QziayHPKj>8`?Cw!GflmBH9o?y4q73>kqTGb{W>e6*@)f5|rk1Js93< zVwptm^)lJ?@JS}rj3F^p*t zkT}+$wHUDL5CD%Qw@gQ6ix-^^Cn6}1cUvl2e~Lht>$Up#^}>K&oZ+z;Bja_w{C~W% zjxOn{th>Sv&naGv{_}^W9swF79Zrog3L`F)dX3K(!nzhzU8&OQ#c&+5nDk}p?2IfW zx*C$B2n9se!Q~hOTpdV#)}h~R+f0lDY3T-UL<#6ZrADJghS48o5!^Wv+cRx%Z*(577S|CAw}RjKm;+LR*9` z1>Q|1h%qA2ihT=4lV{reBp1*UZRcNP2A27W)Z~wkfDn{VoMcq>SH{*pS*lP%jf49YVsRn1pqLY%) zesS*gQYc7ik?6rMNs+3;LgozmudHbln@J-U)$=3PD9@TNN@a=glU+Zi%>T%P0qPRs z#vUk%9&~ytD1DG>_U~wb=q3`3uaBt=t5<`)<2TV zP`@kgi9yT6OH9XCIbvIC@2`rm)6q^_U8*)?&;TX3Zc7$$Vp^bbMY1iW^tZJ$|5o|- zhQNn6&CrqVf1@T+H?!1IZsPoZ%AQD<)uJQQ_FIJzy#Ew=@nQ0k@&Xy%fSlleVG1+B zGO-|&ATuL;>&16jgOMk?wC-s;#o=FA`@|XiXog+HQ-l+Nv7We;>D0Y7hJD1e8oS+uPY;0n1 zg|*65F?K(Q5vS%kxbc%ueZyNjPDVOq{k~+J8vb`S_bKRy10%N_`{5X0>@n&(QOGGP zjPO~8D~x8PoJ6RH3Z^MAVmcPc73m_gnm8I4IK-3X%Ia~HYqY!>Uen(G~F?Cfz`7_aP1J)-SD z?-v+^eKOMMkJ0AO#VT%YcsVTn-GU|N=k|(hXZxq291zJ#886RuQRw|W_XQ4AmIc34+Ls$sGo!;SwWe}$PlIx+sFQEj4cMk; zQ{~07GAWu)V*Qo%qCx+`Z;D~6G)RQ;KTuI9jNlz2fd|y4{b;k|;0g;E2!G5iDBN8K}0?mChyo-qEmD zQBp7?({v{GXCPe@XJA+3Kf@87Mh#=%|MTKjFzzga)VedP#v&zg$*<(8jVKOr;*03x|{J%HCAfq2ZET zV&pQnkN(MSTO!>=aq?zwpIbIG^tZ8OqV*0`aH?~3q@*G|@^rDQ1*t9bs>P&HdK^|N zyhbPTD)QLN%ME_G+Ay>KviPD4SFR*QzBWo(N1<&J?DMQdBf$8a2c}Di;!*Er0Qa)vH3I=4|c7ljdmab`T8qaZHwS_uDrGHjok$(e~s24_WU3Tv_z2j}DRv zC$??dnb@{%oY0ofLvb9iggtt(-g*X3Al%c1DHVqCBvkEjukP|hY$!6|!0%{Ea zJDMcp2J2j`ix$|57qE=O!0F&|+APf(L^{zJqzDKW64Mo@r5H*V>vaD>$vla%=&J;V zM$VEWxVQdIEmMih^|olby*k%dCm6(#A2K)S*_P^M{YyT-yE3l?WeoUG0v z1;UV*tgz8>+p^jz58;aH;I7ekHz9!_>y>r9Z0MUXHu4zC=#*@B&<6T-AWNZdge@f_ zzF|4SGlnP7i)QaZ%c!-7|bsv+8}$sA+e*u~!(;H*TMdYICC!K%r2 zRHbREz%(yW#X8p(DjdAu?zK87Aw|L4 z37j+WRtQpqg{{VcJ*j`qjd72G$ot`rW-{44*HeY|_WNrKY~Zg#hJZ>gfZal7hbldr z!DvJfUqIM@vHrL%2&_8Jl`PKog+(@P%iefY8Oh8Y;u#|12oGc2?H-uF866NLVns*F z4a7s?VQS*lq4bsLKOVITy|R_MCI+Scd-LGGUej53Zk%L!@~(N)L+rkaf(d zt8AE_bpH$!Kt~>6l4u$iD@iPADT>wEKtM0eMy?%CGfzsPc&@(ORKnQ@#QHzRY4ktF zsYAd#fsg%ZgEaI2>GVDC^Z)4dIb|Q_!6tLNyvuqaK)F7wj&ndBcm8y8wNcdbfBvDk z!#ke#gPz$*GW9T|J@rvGRoq26+;La&OI8Ta|1aiC*pfiJAdK0FukfFk;kFlWhpf{P zI!CD%MEkoEvNlyH0PKmJ6=JEkK}50t9m|SxI)0=0d8kmaa4#42<6g4iJx(nC1RELY zzgX_+B5`M=vsaD6uTWgr;36+%Nh&p^L|R-F1!IGA(e&;R=I&OqVQZ?B#iR#ka zgrr5ub%>~jt=V9UvYuJQrSwPLAZexNl`{{_76;Rb@7&D!(IB{X_z>Gl=R1}i>r8oQ zQJNOvxkWN`%q3Dpl_F@EidcT*4A`+!t4}~D8DjKDqe6+3$>UyFPhOgSuIM}zF<@8m zN0$H5(H_qK($O@|F_p|C7V~Gx27aOt;(R3Ii%}1D%74k$qLqr#=|c57#u2Q((k8w& zGTP-x#n^=ZA?ire;Yd$mMoIa?Y7O6_)eC=BNKF@#DK9nPe-i9ww363^_kz*@8;B@y6LWc#luZPdveufP^#5_VYC204t1Rm7Y;3dI`1 zGMV^4;erenS0PGUeTkXvXV@i;awp0)qf8PBKRQq_W81g#le>@)tejz=YlOht4z)odt6CAw=QJp{%#8)3RH7ad8y4>yL!7>dnv12Zl%{ z&-f4>CbmOU@RYe#%0)cNoVZ*%9eAfYmAId6tniBoGbz`czNMU_TSQ4w#j&Ihu|L!G z?rTKD404gr>ZTU&GQzrkGyz2FaEy@FrA*TS=QQh2ri;*M4-;j`!O|5%w$+Q>s4Q zhe360@Afk>P^EACg?X!B6$x&sCtcvP2g;HcJ(SNqW>l^KX^*$~k0%!?h$_EN->Z*a z6|l*V6l>pxwpP3P-9*R#J|L^)5_j6i+f%k1;fqkza)%+O-YptSr?0v}7zE?qZ>+Ba z&`JZB{D>Uq>Fyoo;rK`2#g7`ivoF6tUOJd=b}mVH@522BZ*2f*#}}r)+<_aH)}|m` zZ|d)+{cZJps(c7_ALeVGu_Mn8j5RfcJ5s-;_s2Fn2jOqtrtHxlfVwz;BHB;g>0hN1 zA_!t)X@jF2p4%@B7r~p28@;a=vN^k4XQ_w29l|4=B55C$v7nhN@aeH;v{dn(pbPMl z81S)_JgHLsW3(uz3UgZzCYpO-6MXxKi>3_rXqAsiDjCnH9vplDOf+Z2w{5@AQ zpl&a>qW^F*X7yr51US8lT;h27?qy%j#cx6}3L51hmWzXn_^92FN%uAZ)A4s@cV$+e zb*X)!S_W~FBx3CjUp+m;1*VVuZUn#VexJ!;L;PGMUNPcR&GYpBVJ&c*r`6jY62ok9 zGV;{Ej7tiXaDKQ`E%}*aRm^z_)Mu_Ah_*K(ZP|rDFaq{lb7@(P6Jr z`RQ0CGxTyt#X_OU`?z*GZldNEzBdG9v!b4^Kdh1_knU(ZUAXDXG-MKsKaInmDCz$Z zE4FwO3)({~aqjiImS3mw)fPP5@aMbkDQkiMN9fS`@_oZtyvM1?|KEXPv~%`z3AMtp z`P^yeqqoJ88)zSKC}x`EvtJ4$?~k0XFb~rnCySRK$5h|J<}JSF8#7^DmEk>M49HyL|_L?R7us$HmtuZ^-OgB zN0?-P5&l|~enN9v`>vwIf|xZION_tQDrVl0mXfY9rEvsecoZ`f#5n7r3+vVM+9KM2 zRk!jE0L)mhG79e91O_;Js1RHO6Sz8y$gXQPC~?kT*6DmF1$l~exM!2Clw_HQ1bx@k zO_A69|Edy_O{8J+vm!i+@nhB~MjL9U@{3|$#y_X>W?wjjZNblL;PoWE zYW&V~3#xrJITxR{$|S31s{8qp$?r5;>2Z)V8GkjM)gw-B6$Z##c&&6TdmGB~SZSYj z|5IP&D36+OZJ{ZF_yX@1mmGAKq><(p`XS-+ z<+)RDh7%D7Ue)niqRTpL zon-olUbNfxH2;~eDSI^kWB5aZLJ1?dQjM9E`^<{m{iXPe*Mb&h4TlUi)2lIoUDoYV z@wNQ0O}(2Op2!FXwQ2SWHP%exQB70S;`4GX*v->e(PHL;yWer5k853;@d5U0`rfJv z*+t)_dW6s~R?^!)Se>~#4FopQNs5TOppu4bl}q6*J*eFfa3B@a?|+6MDw(%}iJ6>! zJH{8YBJZj5&tN6|9 z+k-7K2=|emPgndT%yPZo3TAnoiuc19M4oebv((SBH~7tKxS^&reqSn^G-w;BCU+qBWl6UXY?n+4;_ff(Moz73tnSi*b2a&F z`-p|aUgpbDVU253w4J%%*YQY40G`oAVV3{XTMlR6&E)SiGwuOU_|3-V*&(l61g6`A z`}-)QzwOmOXB#j1bBOse|3aeyf{2m@a5OGPE5gxt>N`>|L8z|+vw?0F&1QJZO$*)5 zvc37Td0B45*rn=Z7wWGU7tA}lx8|s4<9pLuF}i}Oq<+NfyltaXU%q`bVR5>5UB1P^ zz8f6-9Il_-cloTd2~xq~&$88=nA?Fvp3ywY7I=-CY#hkfojc1}PhDyp(0mUBojWPI zg`+oB&o=6dioVA#5AkJ^McJkRNizbRv?qrJP|^OJXPe*(P`dl579t$|5O4GsU{`y7 z)VSeu<$B;s?~0fyrMUPvO3qgHve$_9Ytlt3RX*><0<}?R-RmI41>v&jto}~xggcUnw#!dO8xJ_AN=v0#26CCz}FxF-W>j+@3D&eJlKC-&QFEdQ3b2-kNRR{K)I8Fr!JH?mXD?YG>UxAQVJux z&WKs7)U`U=7fE-QSsTn3olV?()F9r@&$0k*JNpT56-)>xlZ_2E{*kG5^2^HI8%2w> zeCYh5CL!EAUtJ?pV(s~!*a^@b7PN4#}GL*%O~-_(r*VJz%sL zWs3hfX|z2mD>TDjXJt5oGk3%%Jz`(>;O%bsEa`v`cf|O#&)s+S6z}gmM!K1UnW}`< zpE%`!(dZcK1)A_DiLR$$mbJ-p=Ev=vZhPP|>#`YP(3>PqLGSL?Y0Jog9$lDZu1xfarfNp9lNnhqK)z&Vj7t)60V{M zC8r0k$a<=*2HS^!4>c}v*VwGxCkec&3KHEYanGX=Gx9_nYCA^#mJiOKhyIvZo(^h*F<@NBj-@1`UB7t^eX?n@&dSiG1IsGyWg1 zX^@>&Zu6dJM%|XhXZz4@bB)410GH2stBrYyt|!*!T*s+xCC25FhW5MHdd)by+{hdL zL2HEL^8MnfI15m+PLHaQeN*kXuW?@OzQE}g%EPkH7T}?N*Rmq(H92TQYIKQPWig{g zA)j4yS3$pmFk7RhRB_I`120*lvH0fXwOwvQe1=@Bu4MKk8JiRBh3-?XoK`e|O_QCG z?N~T6rmhB+Gf0alS7W>^ZdBk!kBYU(RE4tL#xhyal_lGQNxwy>V3g}-KO?8PxERvz z9_{r$+)#C9Tur`~)X;I*0+aGn888n^zT>W!n_1D&N%2(Z8|&KP-*U}yNN2y(skWhZ zS74)ZVXeinTs2joR_h_<)*L5OlH+tf+SRJxQ>l>cVWGB2-sd(p@Goe$p@M-nrJBW_ z*7h#WgLc>Gyouqh!B@(nCDj+W0B2iEz9w}UlIo}6<(*aDOW|0ii?%=ajUt&N{f^g7 zty+1DY`D-UNtF{j%hATGCrmk@~t$6LD918*4|aV7tZfp zi~Y--fbQCyO@2|r#x~!w76jwCT4?V~8cgnZdmYN{iP}kL*%ZCB z=Jr2^81tPJz5Iv7CYA&wuFD0t31bw*4su=YB`s{@V2A^HIk>oNUs)O3qRv#8AiHdx zIgp8Jjy3kZ=e&<}CD?jVL$1{rQ=M8>sVBu((J?WKM{A|WZ8+Ts3vG~Urnj))uZ$M7 z+SiSHL{$50ttNKh;;J9H_^_p;3@jrsA-G<_ zM9#C>0RQT3nu@}D!IbD3Y(=0+0i%L=Z9BLw&)-tT)(v&%EAAKAWO3gq*HV&!CMeZ& zx=rlzxCf@oheDhDi^Urxi%e4@Q&yV|zUB6W-+Y&9=@JpzDRMIXTI%3vXDsx_Vav%? z=_(l-1ww%aP8&DNOWjA1nH~(^X*wILo|TH!R?JrBw9q+X2FwYx-Mrg%@WieaJmo7y@Ilo#aYMEas33;nNw>!Ct*czhaOI`hBf zpO0ai0b|sV6$*l=NdEU=0gCA@NRpwzKm-X9#rzrsWv7DA?=6PK8D4@%kg@j(F{Viqi0vz8gXp;%sGQfPrAUcjqth)e!HIlL zB~i&O(pygKy!`<+YSnk6{nOQ5@XCKq1hzr!Ac2eZm(rG0{>F^mqk3K)m6pF{5|lT;BVK_eAZId@Cy|CFqhb2J0<&J zSH_jTBqQZdd3mThCpiV%te~7NWyUp1$o(Zyq{BV?cCV$7Cp$^b3h3?yHCK_p-qFKB zSKlTp&Y+%sczCo6leA^97#rcg72KXD{5QuG26R~NaYK#8jxML^c+teqT% z1QB3Z`V{ul)uFKL6?X#Oltm&Rf-{#$Tw)f5b2^YLoe!9UN(SsZ^nf~qBA&wI&YGSG z%jE+Ci9{xV-_!Tgfxra3{ij1G)AUCXZWd>5L<$9_8;f8>0q5YXr$>uK1cxaoZUJFo zDK5g?=`Z`-(^+wpxx|MArdiXh3BpbmX`W%}+!Vriqt4tp7NLIrf&zF))88D91pLgM zbGhV&kpcyG$4Xyw{3%~IvB?soVBTv5vp%oHf|EN5Qe+9j{!!CMFrR||9(?Kl@01Mu zf60Z-R6gPo6a*X+q!8bf@fVQcCnmoT;jz43-2}FnR$?q0!C~+_od^e(M?aVM#kee^J%&>rRd(s2qe8b1Rq%)iIXZxwg*;#V7c0TLQ zV{v)F#Q3-5Ed#k`HSJ;7-y5V4D==;&v`!z_PtVol&`a-c z7}{H|D0Ap<^M@->9}4Gf4j&)ghM7u*IjuDBU9Unf553dv06BI0Le_ewb5!M=9iGM8 zX5Ya{8&^4BiR*JhEzVVQ4Y~VtGnpnF+{_w(>g%eEdwey7ynxee|J^`s5Y1Hgk=_Dp z>D=p)6+P!?Z*zcU*L*hRynZ36=H|>4K;Od(q_gPIjIYAuK5cCDL}kMu?OOp*W?m6^ zkkZUK;P3D@y(sfWubx1iSOL04! z^Z8Az1|IQ&a#VquG4XD0#J+WQVML*4L-CKuWm~S5;8hy%CE|$kO(il{O(4@N*Bo~` zCzrWfp*HyCfU`jA{UPn=0tEZl+&ZH^g+;NM+egG0MauVFFX{&se8HQ|2*mTQJ%Q(w zyUa4&A>S9NTa{zZg2boV9vv^sD$Lx5T=It(%)mJ z2siy!qU`_88TC~HJ=ZjvAB9KTqu^%>ED8a{T+(6}!}QUft>H=?kY=k_ zih{>QtvkjFO^KUe9iUwHHS|SOWr@$-svS*AjOXyh@x$-;@0Ze?x1QocFadAV8o!TT z3Ew$B;;Vgz!LC2fkz?o>)`9VMAh zSg~*8jd;ev({*F+myAJvPC@`MK7D4L5#UoN;JW`-4P)}Ma#ou>dj`{JAv#EU%5o$d zJI$7EV9^%e_riMVd&fD;JfN3HP^)@d@%PHP3MxQqdsm2A3WG38FCSZ^JJ1Jylmzta zaGIo28%sA$PCe08G%J>q{krQP;QMC|R^?RZWNK1(w@fv(C)eEN9~_l;Dsq`|gZ&i? z50@Qid`Co=^K@&GJ}OUPlq@J+d}cpB)Gze&zPd+q_ky)K zkIKB>q_bDxUJQs33J6@#M$^N`mH_W|JKzdpJGkMTvKNACjM^)~UeT%j*+JHDB`TTk zrtbze@w@NlvApc~kG77^^+i~NUu6)rBKS_`kXQrk0qQjSd#^H2SccJG!h+>Zi}OT* zr2EjoAe3WrS+a`nddFG=H1h!~kw|JGd_=RO3H>r2I3}>$zS)?+;m4u04y&7j`BimqSJm-bjtQZk&5GLekX@L@U>hBQ|{6 zV2pz?hH5u0K9L=vs6h+HWPt!EQ&0V@I{8P**7rvs)3&=oC`n2mN~$xc8`>;SdJwtX zbbliy*sC`DwUk07l)D!XmGtVHX@d;JAawiyl}2sHSK9348ohjy0Vhk*0i=n5qhK1| zAOf1-Oc}~*`%+%?4wbgIyO7v{aIx-!E|(23=$W!N2hk;_FnLiZra@u)WbC*zhB&5y za6`1@j-kXXWmRfsR;2wf5Gco7-6U6$t)_D7Au?}fuMfY|g;-~ixDB_8)ViExsEBgl z&{q-D$b1IU`>54SP=HXh0Un1~LKaSnhoPOwB=c}1zsdxcX}Jqb;49dNkya5kzp?5P zs~NZp@FbL&p=ui!>q8$z4)XKvgla&c2anw}kHV{yLlg)yk=4WK+{mCfz#Yx9GavV+7xt*Hi}d7%r~>oYUl=ND0ynOd}TyNLC`=%_x@O2Id$5FZ(O@w&1m@f zp^p}9yO<7K=2$Xgc&DSaj1ZO3!k6$|0}&D2+ISVPM`>c2Vppq73E^*2YP4heT-poh zp`*lC!>Oex^4R2M>fzMg4h7f!V|5Ru8bvVaksT2|+`^sEYJEOo3%$S8^TW9 z>fzI@k{IxaTtxI> zQzxjfeoKBr7)o!T%7_BNUXQ6szANXNAuQFC9>NW;s2f8^<)fu3g1@E?8}ko*jg;3$ zM>tnXIz$OEcbjvDKpCWVIUNEri1lqog)x5RssHLBwu<#=L@w}R*s~o!=Bsz7)znl6 zarDd7hp9Dy)cxBTP#Y^pnrQ)|OUy*{P%=g(mNQuK*+h^9SZ@AfwyPYDR$zNI@&JfM z?nw$kf3+YKl6jyRD8G(2NUfdkyPG6<7m2c6lp-&O5v6EfhEtE)QCq!Zehp%Zzzm#Y z5>K0r>Q(;1>WOmJryAxI{ zN0#7GhHlr_f`t_ypx_j-?nHP-;b?$qqP~%JB5=Ybj-6NAzf>d5zobpTxf+jmqKpOb zD=uCKX+W4zBw-eC8xk@p=Vgte={Zd%p=_zb9wKH;mOdzwrdHbK757on!(dvMK=2YL zucOgkBlqh#&^?60tUB?fV-$R+5;j9&TqyRZ+QgWvpkx#`{?PHy;WAPs51rd#2B-v< zX*5xV&dm*F=pELo4v}vcq3m*uHjs z9ThaZt-iSgb`hMvNVJNn+8IVXytbZnsC{3rmFrOcB25g4Nw1d>vp_!wU5|N=xmFk{ z1mmdFcA(Pyx+iUsRU6VxR+KmCsq!TnWQwiTxy^HeP@pqQ8-~0J(uQq>$afqTGp0@y zlG*W`P@PcDiDMteB%i)M^0kZ`RS)Ja4!0T8?h`)?WC%Fb_`<7f6U2!@w6MFObSLC* zLG-I3SlM{P5=j?*N|CaU<}goPvtXi*CaF(AQ+Yqlv>F-U44p6rA0)kBo+SprmYrujrPAsFi4tH-%K2RD(sT3lPF8Y-^sZ_dn6y(dlvIVD@}=ofc`L1sfevhdMYaz?M_glsa1aEe5zVSh zP=}sJOTiq9vmBK84Q(dyREA!+a^**jkg91&A`E8WY***-@hOd%7LlkrG;Dx%7gIlC za#)ELVYmRnukapdH)64E#H`k4xMIWXE3srR1i%=95_y7A8k$;8#tuXp{HGRw9=na$ z$jNx9fM`P(##F4i)nr9+$`hjh@&eiG@aqz0g1ze)H3^joLi*K;=Ucp&NToWKX;md* zaXz^ZIip$}Djh0p!ZTkWY(FMJR$i@crbziHG9P3Dv?r~ZU~!Hhj?(~SAgOMvE*Y3m z29g0|cc2M~n_}FnsXL?_9JJP~t%|^uZU|A>3Z)`Gh$h)W{^`n*oBucx%Av?TBAk0= zDR2Vy*GT{iT0!nMZfoZO16JnJ`F~|J%2XIchx@1_74h4&yyWFj(F@~u7{m$^UX{te zsSSo0z|NUs)h*t$!lQ(QfA7FWD^PwE&^TyZ*B);kW4?=U!e~>|EQ-8qf^5t4bb_8s zvkk(~z|u8}wDjo;G)_8DQkR{h{|F32S4+EgC5H%FGB-GJYgW^;k?qGzQq~NgVA?aS z#X!0mlo77ifZ4>U`1X59$LxnlN5@+!nweoiF{*l{($_BZ(X{3my|@7-gnwE4)eR$L z3j|qC&5M7GH$;Lnf)>0I2^O3oCK#p4Ls%0~uKsF77DmoND(@@0iYT{{)rzu)s?fs1 z3pZ~?ke`I)5h7V943rFEQ|lm62TQ3k=rjmaNzrWUqdU)1l+afMpFwJBuL=p*%L+ct^qCY6VxlhSmcRvGdSgp<>VR#=%#3TdA43@|`y zTF1d^!`dr4Pf#H`Hc7%}-c1ZZyXB7?xAGy-pg&*?p%YaazImM9LrMi0nPOFcEf|_NHuXYVY7;E==&?LYMzKOH8@E8>7Dy&YZezu2 z5$WRc0G|*$BN;TOPT_phB-$OCzle$IgT`H5RH0_+J?vvLBe$k z4AOTo+(U08CBg^0x&e__A%_|MeFo)rd4yk(HOaMtegl~*2!@XXmjAGrB1nc0s~_Uk zNAA|u=d^K{W9q4-Vyj`}JRD*NXB8(QcZEzOp_?rmk7^LLLqf28*4Ntadod=J=f7F3nWG_kglo-EA3{Iv^#4krsyKZHt_9!cS<{A{$4T>JH2D3tWX8YC=r zs!|*mJOV=_X2q;OkvO~>3*8Ej&-xPexOMdcM0?lu-_lk|1#f0~{c>Ff$fnjZ?=RJc z-$;ykZH^!F)8zDydK%t6a>dH}p)O{C6YgFN%5IPN{WzDr^!$Nm8gH#7m=j)$mt3(1 zyIs58{)xx@tOUJ|qh7XtHj5yEv)Q||H^HvkV}5V=uwsLsXC92S`aPuMP_-3rOC`Xw zkMe`@rH|j^rL{+VTl^jZJ`REtOyI=JQhv5A?vpZ4_3Q+V`k1QG(H99BKDUq4_` zxxU=xL;zRDN|bK)h|SWV%>5hW=N)-R)IaGAQ2#v7C6Kl52qyDSE+;t3_rRX(=RFpz zDQ-v_nVgK7(}(8oR&d-D&l&fK_Xpso^#dq=yr-^dd4M2KV<~O!sa%d{qNnXS5pA*{ zJ|$x^TS|L7w?SAcU;3e$OAUZFsb5hLJTloRD|L71JpI>-YUtG>WJ-&##(*(H6p34_ z!?yuU**Z5=b4bj4P@-;~Q)h5nTyg+UX~Z-Bk1)m0jQb!^5(ML!RU>a{>Sw!uTmCT3 z;Sun9fJs?-1wJaVStfsCL$H)pu{zct@V``IhW5G1JfdXExy77J4^%gN_xq+t74^j; zkGPKq;gMuz-znt})md`V>tTra?1a@^>f)PKCnBl4`&?!UevcN4itf)8RsO=m+ZgS+ zH_L!quTXwEM)jO-?QCCv|1*@sNWwc&#^dzxPjh^TGl9LiYR^?lhfK0|xf=(SpUf)%=|d)RwW@jlOmqlTSHHcp4($1(22#(09RE99iIRmoa-%Ph*rvkw-1RThC-j`z-d>c37d^J)16 zN?yF%8JO96n19~Ke4B#qX}FTG6N=F3x(MsiqhjhkQFQ3VjxL({4tRx%6-F;C6Z`ws z9U}cAHp%0Zxha1sD7?b~oBxY??H|T^&ymn^QO)D^B6!@WMeL&)tYdoKyST}|jbZq0 zqYR5@6+QRN%urkp4_Zq3YoXTk-QVs_7C*XG0`9?|ryx6g;_Euvr@s&B!)SaMA~t}5SJ5HJMNH@)pP45DLh*@RC zwD}8-*3yMStuoTxlHQvAH;mVu&gC60@re2hzn_;*oMRreEvX`zeG^Q})kQ(p#jD=# zf?d-|-BEk=h9&t&>CbI?A|4H#<@HM{$0~tQ4uD$|#qRT*(=0+0X-WD;fmb-8l2Ep} z>m>tWiIAQ8ZIMw7-b&m@+{)Gsr0bCVxi^TA?TJ zSBTDB=Q?G`xvjUNJ5utv^O*n5%&BS*qjJkvBu7t%{{w)^;MC9CA?| z!V7+#el^)`s^C_G8cQTypvU#9&XwsqP63cQa~W0ZM#5z<^4dG;y`7bntOLUh|EvK! zHawIqzuL8<;VDmI?Pq$ScG<|nRm0v(4?lJ=gWT=E*OAj11{oXJfZDUzRwZwL-iIk}%Q} zKjG>>_Hd!Z7e8A~*b&DBS3~~TDP__7X@|><$Zx%;O|i+YG9}m6f1CvyNiohxgNHL* zv*o}#%HFyX>4eJ6rCt>kGHf&?pSVDzg2GD(sN8n2x0iRlNL+@>{>fE#SmNCJ8bP5 z`S->1M;h>S?UG(Vix-C*Tb>14eM=T*HV@t=L8fm=cpEMsdedb&X0T`F9U+1>{(L@` zfNQw{1it5DkS7QF;OnEahe+o{fI;GmyB!p5+g!Ye-id2(*&lFqZl47xtwu4q1?NdG z)6vW#b~oh18LiyCL}K&rh|7|*9SeJR$_@Y4wJhj?6Gs?gHJIi2xg=+%|KEsFCIBb* zgC~~RXcNst(>uIuT;Mumu2|x`(}rHUEo5*E)g=S=pc$zbvc196buc-KqggsCi zwxeZ%0`sGBkUbTCry$GU50j2)hQkNO6~E4*B%2INj=Yk+q0rR$ZSkC?v$W0QG#4js zu9>H<*q^C_B{yix)^sZ;@a>J>lNoGq?{u4YjWV1K3TyQ?C>D-YuEnE9wWNa^soheu zLGS(+TdrT8sTGt=WeF^--YpqudBl7Eb-;{C)^~K-Zn=qWV3h3Yrr1{AT-Wng-O43f zVAod07QwQfsl3mU%=6iFnsw}ZIQ)GO-|Krwf*;OC4T+N*IZgjt+Y^Xw<3++OMbL}u z)?{?-#2ZK{fr~BHJejQ@*f}B+GN}&mD&yC6l^t|(nvT&`%|A|@m(>l0vu1lI_AS0_ z5YWl}^HMGf^iJnNVqDPp;Fd1Sfy`WA>0a&EJMCr0+rPNC-$|D%!}aZC8LaL&Z+YE4 zQSDkc8wNyOdC~7ImhzrbvFK0e#>NhZuEqX!5=3WB%IU=JA;8a+FQD%qCvNi?~*!tJrc4%mvKER{vPKvFgPO(^yp1CbDm4 z7KzEc6eS4e6j+O$gfOryVJEilen5 zd+j175)))fd+&PUcy@mw@p4SOn8bygiJ*QAY<^wbvx=OGNAjJBvfhhFq{F&-0E;#BT24|!BG!~2|V&l5VCQag(H4lOxvzw96u8RtjyKo(0WVD@EuaFmy8Nof7ksl!9 zLC7uA#cV`_U3=$MGyF|1IQMn|iJl^jN;dIRSqIyu1+)f%YY7C**166l`|SAJ&t&|# zIXPOH>kVZttgw_pl?U|O=o{_sQoFWNibIv4M(-4`$Vd^N>itOjN^f63h?iTNNaxXfEumi~~n|@-z(|oXcGtCpb zcJeR$L=&&L!J_vzdw!#MaHOYcuinH>YiWs@soLbo8jhbuqTjrw`=C$y1B_m6YCLV3 zo^Z4Oo;U0 z_%vMz*X_mB2;87d5vae`R~`lQ1z=*oL&4P-Yol8XMT5SA4wtd zI!xOIwYL$gwn1vXp>P&y+D~4{x?UgmVmdB#nff|EIP|XqI5AZtt;aPGL?zW45wnij z32^IAY_pnh1?{x_;W-@ClZ$#M>^SMQ^e@WPB^SRuZr80~BP=8QnIzedz|p<_8J;Kx zM5%5^<${Smawn~TMXZZ8i^kQCyo!3d&n>2g0in@bZPYX3ib%rKf^q8! z(RE)5GvO(LsR+(K4pW0Jf@-@rr!g<6kiEZf! z9euiEfWBbvNT-xtrYuCqDTW(r-2YRhsA@Y#1Kim`HEhTgv#q?D;wQ1lOk!Owg#wp6gtM={rM*wL#oy!Edm(t$)X#Qb3K$Y)J9ir zCs|Kv0}2P?H)cihtV=&%!#HT!~#dPH8dM-V(_|G^>8)JFZUha2(|ddj$~t?$)HF) z{#DI6Ijy%yvSkxrT92%wzP?w|kCY*`(El`DsI%5~tMQ)-7fxhwTaI}Vrd+vT(_7<*9+M#Kcq zJNkjfW)o_gNF1_*`kU`AW9;+hABFF{e93QbWFjF(2+em+vJbp4_>G4a<~ofN5L*qI zv+jcoAMU+~evD7svXffL`74V5{^39=QP$V=U%4TD)ynu??0tf;V*uF_NFHhwJWwT8 zT#WGD6ut5n1Ts>DmtvlBpEQpj$`=wLr@0avXrs{V-vR1SV}doqe3;JoW42sZ%;V)_ zd2gM2`|j!+(p4HDugABJjvfKo={s=T&*DP2U;WiKdM-^;Nb7g=an3umn?H8G2!A6& z4nhpSN4!?>_LE8wCLbeB~%&!{<|?d zM>|7J<%v~5N^--QF-YbU>Y|&xQ9De$!C^&4nK_mAQ9XvXib;RKg`hk1j z$3_oZtc%FqU8-++;!br(H>V)@?KCaJ^wOt;U+X1l2VbsS5@c{GMnBGvbrl?izxi8a z-k@i+^pdbApmAbT{wiGR@erv^Bs@X*9(tqDndB5-%Chl@Y@oC*ZkKUxIa_^(dA%kv z`}p>|@~Aac(VsCDbgYoqc!Cl2%>Gyv)WKg^D2xOP@ z-%-rgxwS_=SK6|HJr{a0V=Ik?EORa{{}nj5`MFUY{*aZ8-`X*)KmA>2%z4Uj+826$ zS0r*Ts4za<@Kix6fGL_38(!8)a7zQ$;4*U@p3*-n-gI{2xwss0Pe@w|} z`JHFUUd};Ua4dC9@ocR?au{hwyrV@o5*psskqnh_8s!OJE!)|Aj57Wax}((!sl?6k zS$DEdwnXd;tRS&s^4v<0^IrLm0Q(zEA@rX&dSLT-D%AV^v&HD6kZ)ZML$;Y!7u0hY zVS$n!K}zPO|M~a(YgVT7IZ#JcGA-azf9$eV&19{-K*kr_uU>$C0b*-o4feP7QLWxJ ztv}%brQkR2_u$$6=i;U+&aO=5``aY%;Dtka!7jRsuMj#n2E89FG;~$jk})pmOPoc* z)K8Q5FFJucGY@KG>aPlWshetnq;Aq!yAO9Tn(xxVHxguSY{5Mg5x?R3q;@Ce?5d#@ zkKobJn^%W$!p~Dg^)aY9^4T`lV<-#$dNtl?1_}(3ZW62B;S2#2)M&-q{DY;6bM)?_ zjwmR293t$PF^hs<9G5%D^{aVEq?u_5OiDbIbzB9ev*>XBRv)7@5x1*F zxwE^9*gN`B=-uHYM{)IQi=Eku9}gSo){wyZLl$!EH}Mae1<)Y%CdHyy!C?7hub@uQx)!7%!BPXEOm@`Nx#H{Y<@)FVmcQa z#K-4^vfZ-T*fgG2Gu?Ma--GArzJ?67fNy%@WpQtLE%%lSBr)&IsY_P^DfnhoOrK(% zlYQ-VfYI8SSHy6~nFr-e^>$W^=aH>vco(<9s`|T6=a~k+Z#%`#1#k)By%FeMpEmQz zoDL}O_*>q+f5EqWHCT4zKBHc=NtJM!DPicX6PZ!=8@S!I4R_INe_kKe4`-%hdV#O! zr>AN8CQV>zu=M;3+zY7Vw4M1pn>%{`9en+U+Rx-3OZ)sv{j6H0xQl3>fbJf6je3|+ z2*$5$s}HD&_ri_9*wF;>Azq~S3e{vNQuR*vmPPP&{(Xi!dt1T8UQee{GAU;~d5~>B zmA<>xt(l3z!{Yfp^vqe<!OsX8ioRv&R< z_Oh+s*;_|OP_{JpPsdW^ynYF_ah55^WTx;6*aB-MI;jjCC-lUUx_PL{T5iie8;y9A zB?oa+7H`#pyEk2^5jWdJ)ts&-Y9HN)xAk-R8_QcXz+@Av^k8W#cs^2lwQLg`PxB_f z^CzTdde2MXTYm9Vb;Wz@` zafC7qphN&%2I2TAaujyrxiP;>!Evz^F|LLzdI(kg;vnG;**=(Q)A>_q62fKJB{CZ6 zmc+4GHUED5$fy zS-(3Ruc)xGVIm2LPH|JoH*%S{z!SllXiSpJT~M2^A@Y5{%W_NZzY9F8!q1d!BjBxq zy-j(wid#J_2q`uKmPVF&FVv>zGE{re=<^|QM`oT0(%E8w=Vhx>{2ch`Ac;kx0~m0A z18FfYzwS)mu{4CmUJ{F)hc-~fa0AnPP6Z`^{C|%NRkb_dqw`hS;z#EzL&z)V<<&9e zD-yga?TYJWl<*u}jc_u+?C)$Z);hE2YgKCnS}m}f*hQMx31v(~DO>!Euwtuq?bu{8QUly#2p8NA|*u@q- z?ds?6D3$v9aznj;SRKf11 zvgWvAQs=e!_^ayed$UiBVvQ@>y9hM}QIW;)RKQ5O)g8ikoD!+@1@e@?6W_THto?Xe z--ViX_jjKN&^><2d))RszVf+as)s%v1N&GlwtR2FvrL>NW5-jgm2pzHlNps z;w9#?`sK1XUDbB=&2txFW{of0_xH3znr4a(%pVr{@4XtgfEb9 zBKPcw_3b9YfBRcueu}y&&ZL^&I@_V;)jrku9S@0zyrbkPtGN%8y2Y90>*Q+qt*s=5gq&n1d7A%&Y(z*5*ik-Q-@Fb?lEche|LP+Bl$kfoKDJ`aw`+ z7?>hyNq<0wPTow-a6t`zP=j0onwj^IEZNGiwi?XBPEsHX0V!FzaK=eQ3#7&cNDfL3 zhym1L@_N0?s~Rz-RfkI|oLt2r*pHeO%2qTe?Kq8ma6A2+q9VVZrTN)%CT9eSjEcT^ z`!t}VG7J>N=C4U!LRkPrOV9es=E}=%jz*i_Kh{OFYqKlsBH(0=@tqM}2AZ~Z9uD(S zQ(tbeZEGTypi7Nww*`HYp6Jw2h4q1t3fMX#iLQ8VsutBiy2UMTzzi_V!Sy#hyoa4N z;?*4a3S3`}kfeu0kS%tm`YJfr5NIMw7XLrYKzsHf5N9!!rwrd$QnJFpg|!v1)lkHNOVnHT=ucW*y}z;`yCI>@L^j%aUy07JhzLqm$bnx z(dNwx2pBiGdeugS*eT{w6KaHR^1J;(Jf^pL*Y_qZOG5FLcijEj3(h0&gj05kZ4T~r z-E(HVNX6s$#O*W=_`GY{nh!h9A)|P+61g{qu~We_*FT3vA?W~a zF`sl|17#ur`IJoygS6GvW5$BG5h$9JGo)tl^DKceJ;*vF;O=CpHrS}wgw{%*Xn0(i zgrzn=w2yR5yg-+-U`j5awuIsHVVpf|OJ0dUNq4J>PAVqn3!zxaT)+5vXHvx^{9> z$^$nqie*cYd$2b1FW(uy#WRAjgtG?S4g3plXQz6R`h~Y| zTr+OV+Z1#7d@6!w`1LhRtQ1qldLFa~^l{0ON#i{X)CL*SD&EN{t2f^z?mmxCQ z?c4&TCG(Mn4-lVCz|{s)HB5nz|2T;Xf7&Ptaz-Rf6cEYB(OE%{&IV<^o}7Vz+pn^b5W5CYA(KCU0MGiZ+8L~@XBTZGx090rn)k|s8AA_PIfh0dwP zhny>c1b~(aCvF1j#!M!F-$9)CN%Ngj z0yI9-fy|`T3+|S$3&1uPzz8BXO7+VdfEq-Dw3>Cu=%Dx`O{jYsU_Ak@w*7dLX3ZMjnP`@v) zX?aSqD2GJSz$Z+hM`l{kiw~KWtjVum<27~VWBz}Y3-Z%mo#{na0YM@jynN5fw!Yr2 zo{DcyGif{j^#0$|uR86Z4W9oJ8-{j#4DXPUab$9g+9Zx=mLsRlAp-4yr)=DBk7Zoa z6VQWhulX7>5eIJ{6Ic2J7gjD`^iR;J=u;FkXS$XbYhkDYG&Xs_6Q3gfl6Y~gl;k+X zznq+%AN3gZGO9v4a(;SaF?R_^jU{^^7MUxd5|H4d7y&Tl*?oKS*N(c)8&3t1w-j*% z1KGsAUNCoLSDctqA#T4@mgc$qG^@LXs@!x}A?yC4yP&m~c znO3|c90WYlE3`IsQewuhw9fZ{kr^SSKw zYKan|qOycL4l30NwE`6INGU4#f!#|?my*ra^fh686y&ZgH>0{3;1RS2ZZ887blYL_ zu?{moG~86>V0|W-LGCzLKIwyUtSVATmu@tMX4o_hx@N!Y8JBFJfdT zYN{Fj>b@m)upMW#14u?9fe-MjAn*wCb`*8d6#PlR2NClu{hy`SfK+VKD0B<#8oU~Q z?MBo*8UkwUVb`77YKt&xh-n$R*->9^bvEVlUwq^2f!Ga{Il?SlWZFsc2_&bHQJ1l; zPD_`^YZ6#-trq8Cv-Or;n))K@!@0r&Tdn}kuYEQd@~)|-;+ZYs8mQP!>*3Ok{u2f0 zuBixQh6ip=2VOsB`tyQrp9_UCB1;>?ZXVr5bQYz~Meejan)i2EZmdP%;7q0CQ6C(e zzD{gk3Cb8jgo!W;{5f&G&yj!~!~)*i9*G+c4kW*TJKC`wD;goM&KOp_rY zL=tG%kbuHSoA+ex$VKf@24@9+xkedo`e`$=-Rs_NHmR~P5CFYs9< zrJEKqdDW{%L--6l2R(c`J2d0jb9pIHpt9=)3nn=S&&%FGrL1ihr&v0v>;?|43M2^C zj+d5v5))KVN&L-_zyq&Mc}#&SI~8~`x&-6TP_mJWf>9$B57#^uKAl>psUsWrN|U1m zqg}ahKa4PB!y$d=k68L#;g`534Jd!INP_NIiCfhMOm%D|5(PX&JQos4&A3*{g}yOj z`!-uu&^-w1a*Jwts=Fr?tbSSfsgv|TD6khOD&>oif?i%#zrk|kvjC9f%c^m(hHC%^ zM4Iw>yTut8O0s(xghN9dGgwuuk&a9)TW8B>3S;SOHe zI6~YSQuQDeuDA=3rP!rj(SAe3xnJYqBQu%a^Kq857WKY%diNQIms>NnYK5tWZD_LX&9-)w!QyX z1GKnhXhqG%*zkr+ZX)H^;@KkYlO+u|>X+0|Pt)wx&a~?aih7hPRdZ#j<+`-`itciI zo142tw)NLYhb6H1=B$|!gGIwntf|#i0;KRF%S{#7&L$ZR_k$4hAp+ft-4g`?0;y)q z-*};&J4u5;hYJxkc!AKxoWrKwk8*>zrs8y*Vd*v7v=yB_YPG40x}3wcXF^ z+?BqROFP43`%V)I1BT*AOYXWM6w%VDrNh0~j2^1{)ZP3m6tOF6b<9Sn#|6 zyfCr>WJ1XWlnN{(A!b653qlr@EkIh3wPAe0YeLtBA{3BYP^7|?3wRW$Trj1AnF?qr z(5M2T3XCdns)DWxz$9TO2~bOdVi3U&5dk&|C_G?z(EFhA!Q;d51MtJh2ayjXADSQW z4>ljB9(X+Xe#m~j{v&@my~(}#zHz#Pb!OI^w>SCDc;_=mJ_C}6C5})W zqd87;sO53X1BlKiIH=;|j7|)2bA%jhawzUF?lkXocN}*fcfdR0oyZ-?oyi@_9Te_d z?quwN-C5mf-Fev)vPX8OWX{SR-W`=YGhM5M>;{)$6})|Gtr~Q|1mxh zHzIHZ;|Ms7gzg3XBKrc>M_) z{A^@zzZ=AjwT(X=R~$5WKK_{l;IKG`Gr{PCq7TM1?isK%E^aUa-f-lB$vi_V-H0$F zV+zr{Hf9WCmM&~C>!CUpg}{<_W-GwZ^C4!5Ec*4VxD2?AsoIUqWxYwe?su)QnYckA z%&(?TsisynEwI-MC+`gomps#DK-|q@`=oDjc5E?ji5R0>>EVE* zLu6agt7&&?Cu?^VC@{ZUMTpzbs_Gp$rqViU%6_orSaeqn7-Y1hCzVQ_Jt9Q3 z3DZ$krLRwA?WJVBIx^?9z%mP~GPk_CBGU$V8xonC#toSzLYlv6cX~h!nRHy4SP-oo z?ddk!?gu4*0<+gQZcCQZc1K-Ef>RJlB0yY6Xy?a3UtU+30X^cO1W(F zAGcxebhj4_b;I=Q-rTR~#~nQar5Ob8G6m0(*sVC*xf{QJQ#%d<(+^q2m=4#+Lg->( z4_sZwaubc5Z`lLEA<7Ic>BH zck6ZSeF+Dmm;yb%PamrCIP?=kE^qA~22rP0fjWn@F>06X7`{`S_$7`!ywon!U2zX$ z6B|D`zkMFL|NZo2yFN?E?&}{Y^djtVSm-z*FfHX$F?`F3=9#^JxBAvSb87$)-{+!V z-|*jU-l^5_BTzyPXBX%pgT!xYmLN) zdSzi|j0vWJe-BBbhq1Gi8NYkwu{XYY7nIg>-4;u|B)hDzYmk>9-HCq?a57)sVbFKq zj0lXLddoJ#GM=$e7)8LaZ4o(}^re6enwWHICHD{!E!vQ^BczK&Sv{mv>qV#@k|vh< zSqa>vPu7-{wJ;KuxGaE_ygk{ft4?jN*1qlh8gW4guT))Sv?@KP2!@*So_$ynY3Sa}0o=noN-w;O`R(?BkR{qpc7F{jF-cAo zkx3O3IuXk2eh60~kdAy3{lo7a>2l&4fSg0jHxmti0Og;wq)H(Qh-A2+0nl=gh#Z(9 z3gOjH%>%DBf<-D&*QduVzd&{ENl=XnzN>%|5+z8phry|#-O3(j&%(w5GnSc%Z^Jq!=4A67kA0^>d|QiEJDm>f6DqQUyt?R?mB*tj%dII{n7 zU?E5pAxe~WPF7i1BuqkNGuM5+sdnR%jR@*5RH_oBADy_GOUC1IC6CQba%ScK8M%}7 zoXS@=bp>(~mQn$Bzz>921=Wbi!FfWkT{H{KV1$2+>deqD!+ATiBICD`c4QS=(T9mG z{;}QBVQvE1)O~bOIUW$Mf42^H;!IL`8cY7}#JBte@Si}J8Oc&|7e1Ip4mSEP*+P-6>YUW235E0EYJP^QIdwFrTUzcI64 zwZnG|N8<1EwuY>OV(po&YuQ+Xl+VopjF?scRl>-75L3-l+~xc`GOfV{U?IU9)Q#-eToGeYUa!>s9VQm z)nG5sqM0{2W7(Pt-(eMZ=S-Aivsw$%UA5DbI;k(?j1AIY5?z_=sBG-dy$$TnIij#M z)I!#O@85@d`{mjV!BYvQ(56X6_YX10YYbdzRWs)%a98l&bqU14h_eazf<=ixkMGMQ~+B%M0ZTmlrZFXk6gFpt1u0A$_5ABI!lb3#b=TF05aeU1+-T zWJQt}YAl$tg6{>D7ltgbvm(t4IxRS;g-j^IkS}{3{*lHbqa(cd?Cf`|9jA`?qqgze zsOk9XAS%aW9gUC2NB_ipWPWBpIUnxF>Z9c2_mTX#`bheS^%3ji`(xe7?3v>Svj@Es z+0)uX(nq-mke*n1vEYAdu)*+R7|6VAUxgR@BJ$CBc)#Ztq>K8Z_Az{DxyZhZT3E7T z`(q#CWA+&FjCp1};~s&H0gvco>@mkNJYvMcgB>FsxE5~Yg3AS>3r-fqFSrXW=mJm@ z@VjvTKxPAs57H0T57-YHx9M)H`tdvp=NFS)9?IP|Sg!bk6h&(tEQ; z4Q9<}&1wxw8l^RKYr;2{H|`tRo1r$W-*9utIh{GHIlVbba?s~`bkW~P@4^Lt-1Dr? z_wjmzM57X%N}(%+VkdG7Ueda>?My?|nO9)-%(A`Bkyw?jM3B6p-JlF}AwUduyQ?!4 zvi3E5Ee9>E_H_v3tCJN)!v5Ok@1t3VUZJf5#`jr} zLHJ~lW^TL8VGCu1JMLG4hdEy`K`h2{gcg7o$bk#0t!}TwL9C+;#s!%!uCAB^m5ptE zv{l}oMLk`Ob%kAf_E=pL#-YRZKNfeXM%N}U>c_H;Er7No7^+UODy3FdTRYXSXp4Nm z0ghdKEd&C-l@*stPz~TKonQvexFD;a`Ea;6R7^}Z7cFoyB zEb7D%QZ7-Z$*ZcMk=VHB(0G+T(UK>pGhKa#5d!9C8c4JP{foV}C=rIWY^_oRwKdeI z*G|jt>8g3FxcsU*I>NVlcPrGdTX)CInof$_#j3CMl3P?$^4TIk)#y4GoV@<3n{lt& z$!0$fXJ?pc`|jxlmqMivsi5`lb(8;^TB3@Vp=P<8A3Z%st4Fzt1aAd)Q~!D1ZGMi^ zW4Iba+M(}Q(t1~VY9C_If7*8Ld&*^fHl^+TTMpQoYR_IW+g2j~?ls?{DnfQ}7ipwm_kh_KW|)V=H2uJ*$S-G&@u|OJ4^? zVWB^h{c^qW-Nxg_{=-qwV4B0j+cfw$+&`5q4yH1VuRklE_BaUbhTrnAMnB?>&7JEd z-O%5Tsis>iOw0b0HU6?%9%65$p1a?sXY_qKzbh0LCCnRrO8!2F7fo!u=WwT_*I}mI zeCfUFIvZbZ{1DW2ZcXb&(5*|no(9fA@O!XE#K{*eZdt3go4C+VPfO79brXz#3Rb7{ zKU*uMSRgI&bQ`K}BTdzvn%gyw@H^ZGhI zj?(J87kEC)X4K!CS$jBFgxdI0ZFe5l+oAT8bkCVp^{3+JGs*rYjIJcmQ;l<1Yidz? z>NAP0iZ7$wI4SkRRr&HwX+^F7Ia@V|X8*lK(h~?Wc|rS{U0(5LxrM&mj=d>zSpC-9 zXR_RQJJGnObj+)f)M=X58ThzgOoft?xja#M`p!Z@!2T0 zKXAV2b;%mD8CzR{t?o#-Xwj|8RTYew^{Y$QBgp6wqlNv^R{ipRWgO?L@+(*9r|*%| zhRU*Oq9&UiGUq-qa*sAYuFIB(mttoN25ePq*Le*#*8jfzWjGBhLAOTJT+{HK(o9dZ zs;5EU(Zw|TH6HB0y2Yox=;C}f6w4luUBT{}jd0f9s;HS7U(l<6_I!6-x#~g?aBHwP z@#|}@IPE^VmOiv?8MWJz6Y{>wn`-+GR&PJB0ve!sdwZ6whI?(&e(WZ0{USHpIf>b+ z)SG@eD#vT++tWZI-p|4o# z+q6@WT7?qCIJj7Lgk_c|z#_N$y=Si;geNuh225H!#Zfzm1u^FC6RvCVX3ALDw-r@( zkH4LT@1o8sS=n|r^TghQx*|yQVy+OX-Pu#CD24tq!o@wRknmUNm;B8JtG|;(JpWG$6NjlEz7J%(VENR#quoA}s=&QVOJIH} z!YYpLqQM8I>-1~Xb4!>0o_sHgTWy1;Izwz+SMJ#I<+1!Ze*0YCVUqAgDv%1wn+=cr zU+)ll=1bFd$Zjqk9)W|l4csBnh|Zr$?gjD6ErS+Itp`)KaFhvx6j?(lkIwYM0w^D( z3BA*E)5EJ%C`G>}#YVYfyOkw(I&_@amZ%qr=oe_tt>!V-WONPydl7l(nTukkmu&41 zGe`HHiF3f|Ur~3CDz!UkFGs%p_K11%M&6sBja-9cwj%4@N`jV`tJ9MAQC!{G)O*Gw zE+*!$nP3lBx+|6iu@{T3A(a@HeB$BV4cied%}sd9XnbLHzCe0pGy|0q*_YfmUZvgsiF;Ud-c8g!S8;xiOl5?V~FC^sS#~Jp5YaDH1v2PJt=sBuo9MUm7L`cGV3C+OO#2Tc_p@6uItfN*HB#^o4};hWcnJGWKok0oeH&y!mT!%)9FB8t9P|$ z_vqhze^$dLnGMgIPUrQ$(e1Ldn{`Rv{|bpV*j8M0Oh15M-orM^vQIV8dbIX@-{(hg zh__8o-aALV$TZA)1rGWVAzm2~3ir7n|7y*4v6Xz`E-tg*A*}XV-^u}AJw!jUOUd=P z-q4|jW%CfjU0!X#TUnczfZ1V(5dpe=op~tO=W}b&d{hXP&ix(PLPWIJR`*-Unue3x zN$qWodvg($kzU4ybt9vI!gylCq6MRRs&DQ6Rtp$s@Vk^>cF1|vqe!x`7xDSo_fp^^SkoUw@FC5(@Kvij8%2t={u z!SiJ~e1pCVkjr~;M@STz2OT&olyL3KWF@Cdh~aPKSt8$yeQYxYqYso1?cp_S?i|Qm zRU!nS{xyn$k8nSPL>hlc^N2DZ8AOkrrKDc@c{Pw7I3lV=l2qQ#{?Bs0k}*TmO}~nC zFEC?jjyU+SYiHzns zV-@7+bnM%yV`KHcedHYy>k%y||D+X@U!_0%Av=jTFvAkymKjR3&H8zm&SOz-Y-{t# z&DeI=DN!{)R1fPT2ZSmm$=zpPCu6A(u|6g%!Pgc~@*~*w)EZZ}*WJnL0u9m7|5ld= zGjbUdaz8h*L|1i8Nnci7X*x1ssHlcAtHbme5*^vKBjHvSzl9IqHZ6yl!s7K9UZp}o zKksEo*yk5(i1lj4nak)X`<(0KzzM~1-}zywRbOB-mydlc{Uvmrt9HzN$bCkiUUcz6 zw#lGwIS9Ycy#8ob;ge>4zs_%ct8!cP#=U(GC`ua}1>)RM`;EG-Eb>zOf$lYr^8Wac zSHin^p0;Z>@E>xlI^RQjk84A?BenejOnEW2@w|Tpn3%s)8kqUNHx%)^q2Q09&6b{* zYb7T18rECaY696~bhaaO6;GhYv+vA?NSnQzLc!y&64?@t4IHKHM$BCzX&uXaFWGvnh?Jqy#&>SU| z7R7H+qLb1c3qAz<+@k_$3fFd(ui zLaqM?{F&mMk+7@qxH{pXCJ0Q_RPaMGJiu`T{1gMgCcE%?22G{Y{?{Y9@VoX`GumXx zfaQV~r@2Fv;f>vZxi{E|64E>`-z1GfL zagaZJQbBwk4n8bb@AgZ$3x6&supn;j2l+%-VzS_@R;gD>5nghEVpJ@>xnO*V`GoKd z$T$q#XX#z8eVnXp%-U@MdftoU>!_yU^t}5y%vIBCu-AxV!n zoOu0xgoJCPN3oCsB{)(Aw= zdu0E7lEZz<4KG$mW?eb_sC5BpkWlCdnuZG@z=r6iK$J>GKuqn&lDjZ&O5HpIiOF18NJ+rbP8JgLvq485OK?skH&MjYV|(=7a9W~{&*c8Vz1n*(52Nxq z#f>#or^h^0iKX2*(S~$E9qEh`TgCoS)rr5AL02p zE-Z5Huky+CyRf4Z90L}Q766N;UcLHZJYXD}<~@@6%{Z=FmW$o*d+$iUSXy2>SLd z1$F3%_Q3+41q;_=*_CP9tbTpUeJ(-iqaYXk@|Yp1bG&x|l3x|p4XQQi z+aFuv|DsLkc6~J0ai)Vax-z~eGqN>(Vw%$0siCtXyDC7{O-d#d06y^*Ckhgnls}9oYStZcqq~^6zCtpg_2oL|Ad&| z8jd#`lOVXG;TZpF2CDsc0T3fwyI?6&vw#6wAT+?5epnLN0ZDwZ>qLud`J@s+s+K1{ z8pvp~MJqe%Bu9GP@&`*vvk5M{yhaTvG#t=TD&dWz4iK*|(mc8ds$K|Yb#nmjK6cOo zzMvzQ4jbT)l`*~DYHmz5c_(=_J!gaiErQ(%SL}=VRfQo6ET|2<;r0*$z>uIH77-kg zN^5vV(;DTr5H%dRHQQ`Ca%R@p5IyWP14pq2LWEh20^* zkC#T9-$xCEG;1Ux_Q2km;kcW#{^y9g|WwRM*xxYREai@k&yzdmcheD}(H9=}xGWjz06HRY{aQ?6#Un>MT( z(JJ0eQ1vU>GKlrE=F&vqh7~`w5Z?8IBLNm+2bTo;j^;CA9g6cFfQ~L2s%U9VwMVB8yMHXd> zau>HVA*f8naX|#-a;eJ|?6mAzFiDG8ueevOwM;Feieo?b1G8tjogUmIS7e?1nnQTeDyrUlW;w26 z#rif?8Ei*0;l57lF`2Bslc%8YYPgRVY_h5IPP94KlO4@F(5PorIz`p2`6T>(pB3b0 zL}gQH7cSi~j5_(jkLLGX9aD~x_BUno*yt5`AEU{A7%zA9^QLMt5UQ*-EOiwb7gm$I zM>NZ1d;)z+zL$DGI56!ueIY@$AUT~pRm=l@=+=8YR`v;xI)AV-WzrHg$s3I{VN5zK zbE8KYVJ^#hJ7kGd9O&148Z)8XrJ)ZkLY)wjMoaR*VJcrNsNXqKU>82ksoK*$U3GXj z4*kTmhNv4w2C*UU#(kfE)aE8}Gvqw13bmtg~ZTH?&=HwRC%iit!na zY4!3vdZslQjl`~wWhrU>a}2kg_9VYMc0AL<+xu%NTQ-qA&H4W}t@4cKSNuFV=z=kR z)%(ESSX56=}LEnuKD?Z4cc}>32>a<2AQU(x(Qsp5S6vP*VCS*awfV zol+2Qs>5a-kY^eAKJ(cn0hUdy*+mf=7?!q?YdcLaZ$SjM2a-Xkq)ww~cr&~29$6=i zC>a0h32Wy7VluSX}i*e1k;0ciKr7s! zAn}+SFaj_9FqVlJ2{#eF`B0VfCB^Pq#;(*yHEi?TB`L@Xq{g9<{q6aR89b2;U+Aos zCv+qbLvlwvLrMl*%7OHw`P-RL{Ff_t4V$&NoLoEx+6(pOe#Wg@HUV*V3m4ifRNb2v zOqP-Vg@3@2X;-q*2G*dtfy$E$sZweSgk^=}jye0Zz||gh-#$_p1G~RCk4pZ*?aDw& z35$c!jPNvRWLs}MwXd5#^e<%>2R%8_i%RmL3hiSlfk!52VEW9KaJ8^V38KOE8dY@) z;p_Y8f(Ka!%|sQz{G>(G4a@g6p1_rLlDZWz88O$m9FM0YBozbJ7w4&ea+IY&9dmUi ze%dcy>jPR0!nbihK#L_SC@NXGeFr7cD2PPn!TS-lg}Opi`qqql{a(oZ!`i)lS&k^z zr*8TxxSA=CN%S}UvyS!NnugK4_wPVlx4jA>U!6c-m1EVS{oEn#DsFakF@n0 z>iTvnU^%+=&o_#vvP-iZcYCwBniqP^JuzE>J9549Gg}wV3)|wyu5v?O+C`xL^o*fe z;65Wu4Q)<}&VN}|XX0+pi>$AHRz-4-mB*2&dVfrnF)Bt`WcIej-C)12Kx{kjwXkXEqkGVQN_t(}6rQcOJ1ELCLHOB+2!C$V?WV8Od>CpnABtj!R= z95zbI30ep)7}RN!L> z$cgheV0VgKDI;R8)-QV;p$yPmDaRfX^9m z;DfH%v&&%5g5ws6Yk|DF!o2y=!RjtG(XS&$G`MZZjSzQk2UhvZ=LFn=z8tRe2{1h! zyShh&IX6EPzg&Oc`uA=%6EN0Wmg0Rl?>=#j5^y8t_U9cO?VZ~+xQInu9sV!BM^_tK z$5`2$_SS9SyXjr8#|t|Pzk6f1xV`zc?t?17ydIZQp$a{dXWi?%>i#Eoy1Q(hv;91J zuU1L4IG&ldRlc9@eCrS(3j`1m-vPLRPh^2j4{&{zanLLZ=9E4UZJz^QSk7S|)CeSJ zX#(iSqVO!x{1|CE0L;dC`+d=WnbBE{*N3R=wmuK-jPqqZ?#;EYPI+z2a&ZF@dysm( z8kp#-2^NZb^NKnlh`91cEPCGZR=7R-`Jb29Dt{xwjHAlSrh5-9rN6~=-cWA`HKaSwBJ<}@=v zG%b~Sjvgyqidfq?2Y)}2nBKfs{Bt~$IJX>dxltu21@SMwFk1tV7zx|?SP9BXLZ-|C z;xlu@zUw({oMjRS?qJz4p%k8;V0g%~2D#g@`U5`^EflWDY^`UvwW5@oP(Y@UC7OY8vNF#`h|6PNSH-Tsju$Zy-i!n|3=qV`E2<&3Wtppk2?F&DwsMdhfA zMKSTrf0ac)i6Hc#5Pk)FdaPGiRBu@MY=nFwA$ae{H*a} zY>@t$H#|M&$3*odk%* zLzd=|6T-)>o*s^9XTA1`qXo~2v~47Cx^=VkCpyRg2KIu5&68oy{y#6CC+f>hlRaR1 z`j(_9rsJjL1K2%}GfMd5-UMjRhNm04b}Z68GE#@Es)Z<(*rvcie3Fss3CTf!(UeE zhgsMaNF75s$o8cC`R#USW!VAA>l|w7q9YS^HT=O&(eTpw$9Z*SN# z&f{`{Ggy3q+Tpt`@Qn?Os8TpmDI*43V@2cDc*tPtye7>skS*lkzwAs;nLz99VWV1O zVQC=An}Fmu%j5kK{$0V5tss2l``XBQOn&DXFENfnooy||$E7`Hwnk!_hVC={>QCF- ze_IlNsm>}YYGcK-e| zyAkRK@p>}NQ{Y!p!WkKD0=KSq3Qy45NUpFd&OncuUDPY{7*ViHLyol{1`4?k6>w_4v2$vozq|?zpyZR^5kcnn z9(wGypEKrXG<%J~gWn2e9AR-r;`1RSezm|X`8o43hQ{7na?R4rg2ce)N5(+r2_KIz zht0q`&Oh!Oydn+v{t99-Q>nQ&XW&--Pj678B=f=L=CoLvR3LdV#E_m zwLN${`7_Pxr*nv8sgmW24+}qtV;+S*AmVa{_5DuZ-5L{J>l|ko;$l( z`4=&3OkJ%j#?0Dz)pe|YV>lihFaBl1$gZP?MR-Oe`K?1f7Ri~O@okjLk{biq@GVI6B7;iEqTCWeQV`_Yy6kWMDjwadp<0OZho6p z$Y*#9ooE~&d@cj`4A3{^Ly_XkDHGd=$gaJw9^C{D8e%iqc^rvMCV`Kx>xPnrd=@Sr z-|scth&TWwgNIk}{;32&+J*m=pru$WvgCyrX+}bb0DX!L(0ObK&fgwe`B&^1{7wt< zygYSD%{d1wxC_Wim?ak-*8XE>cj79pjn9c2=}Q)UjN9`)k1Q4FErtL1RO>zdnLw1N zQXtDdxqIhc3l~<-`l&aGfpcHqB1bJ8^nb^AOnS{7YlOrn!^5D{>UT4PQj_)L=3@5$ zQT+xRv1FpBNwO-&K#fWd;Pq&yC%+LDz6Zsinxv;+sbi@RRJyE>h5M?dLQ?uH^;;bN z8HbVW)}O8Oq?+@p^WF0pcok4AGv2IUYjUc^&QoxHX)xygp9g!NoptBDC&=-*H*f1z zlb>EAETxBVO`kMK37;ZKBaX|oLmpdtU=AhJA5Fq5m2 z#kpPJWfr1y`-+w90NJ&fuvV{SLtywU{w9V4OBIlQD-nD>Q1w`P75YdMN&V$G&+X3k z(@ow÷ZSB~12UW+X?hH&G}otW*Uo4oUUu}b) zf)GNdQ{Ep?UqF0X?BL!|>hRq~hxWzJpLu38q_O*(h01))x1!Fs7o_mo`o!jN+dT3h zb?iFAfdNG56*3Dtx|XwW@wcqjX+=u!;|bStepTjgzIUn?*};8bl+k|{1TJ4OSsJlu zP)LDwL89keYXW!{sDcg9#l&z%m43&jx@z9muwA`2M#`m~g?%gzyoutG)bAX7ScdC< z9^>BhlK>Yl+r}u@E#5EBG*#HmsR1CY{)yn5it#zmj;x8A8=&m{olTdFfnfh5@M^vw zhl_BvL*3}Pgg*iZefP}jDyBlHSnnCPjXnLFi==H!tc|f<_5s)N`l?LpzV@!VZ^cJ! ziMuSmJ~l3`A0CD?x=Eka5O_T$;b&t*a$lmw6%COJ&vmI#-L77V-fYBWAy*H8EwaDz ztQHK6npVFXZkj&qc(ah@Y*zFaMA(v(PDH&_L8U*Q5zbgLv0W%&`OKMBgbTk?%hh}T zDFr4U`>;*K9-iF0liT6?0ft{Cd}=rO=2YAFj02)}!(;;^{_s4$eB{`INZVk)D6h+` zDz-(hNRRI=Uw>2mO#^H57v07WqcLd@9Xm`lo*TmxtKH%B1r0zqG;swV&eM4i)GHnS zYP;-!N3e#>YP>#_aN>4h75>|;jO`&`CAEFSI`z?t?o?;P*6lj(&}Lnf8VU+Ka)Nh( zc-q|)vI6}3tf$`F`^xm+5xyWCe8a!&e>ETGkA{wNcj#7ltmA3fIAzqTf)~Vs7_W#P z3jePqOtz;rj-vjvvoT?!hQ>FTgM+GKkzJT2`1f_G?*oMfnsf$H`}oYd=z+dW|8E<0 z(75;hRepX!{+3~88t8khTYCbmJY6m>r*hIf0Jbp0n9aU~8y10vpSc#Y3cSEg9GZPD z;pQ7n@x`nnDBqewhkAHMT$!L$I3@ZzR5^}pa}F+368akSzsrLq>#j&c zG&H#$Gw9VrCl>?rz|YN14QSsu#GSS$533swJ@5Z9b2GMZ*F}+Ud~{(zfeKd0&|?Y> zVn>G_BxuoYEvcnDNVy7i^ZH^@8i&o;)6~w6QZd$vEYRs)#VCh#aT(Z*Q)<}UT!3QE z2=U{!9uenS6k)yOzo@*S?f{CoNjQU!GD=X(93C7m#9pZOMYf(Tl)KiT9rpb}mFO5q z;I~dt(7!Qq-#NaD6<0zi3~zIgymtf*;-@KMriLH3S|~zQL}gv=pXv3Uudx&9d84($V=gK~$pM=@DsHCL0;K|9wOE zlTMse{WW8dSb2b`s*&NVTc5()VeE01G5}V4Y*)t(O@!nJ=0~u+&WGtIUpm3MnF0kj z^jAFFNO@yG=Jwnksq~d<@aek^yd)aYLxX3E@}n^DAy~nrr52thO^sQxT!j&UN>8w) z1l)fQo3Y?D<1{^S{Y~KzFAf;F?SVU~|4e?9)F_o>I_q>h%}pnTVIF&HGq~A`Ahfvb z%Ir#u!A8dIpl&!pGq!De!Yv5WW+N;3%c_Qk0Avb%~DE4mn)*m(AJV*SCmKWT*??!bY$~LI@P8;N*dT zIDlQckqq1nm!}ocAPJ+RfLd@Pz%mw=v8 z(ZYxYt*_yxO%`(&>Yp^h`_CowM#=IMQ{>tHn`x^T#=JcHV zN=Ny5G}dAI3$k6dWinn_(4PT-6K!Bh1i`_MBP{D;{V(+$zoXneE%_N-Vp2v^l|RH~^1*ya>} zwj4>V!?wP-8oY7`y6Izk&(pN9ZcUHmbFS?-yT*(|fi*StNyUbSybb%=+ECKPI33tac1Le@`tt=6iS3ieMkQEzYLGiN6UiVMw7mh_T0O z4H-l7YVCv(!aEE4jsCDN4QK^BzjC%=Hc8Fl;Yc_&CVZQCFP6%OXg|H&=?5(3A&iB4 zf|4bZH-zHh6C6A@lIxNiTsKN+&Lm&U_lMywEE-BeY-1#FUQm~Etz-B^hy}u2Kw(`z zTxHL$6d)IdToc+JvSKJ*R$3JI!BBD4CD^s?VI%)3D5i382ZvVgJIdsKCOpS=yq(&0F(P!Bee)`(y8qUtWRY5S zP&>gS_^cY%siNN5G@yU$(00%NUXP>ayxX1WA|{0ux!3pDl5&hmL6M6v#nodH`9}Po z*f`(~Df85tfnml!$oWdEoNJv@x8$5CPVVCU@j9U6xN)iP;Zv0KY5fl{) zHKMx>Re%a6!6duFqAI{IJW9bTYXX=o8&!i9g21dIuxY>Js~OvEidGLTV6~ie>sn+# zyOZ`NV;`IQbSjwn-QnMYCEgx>kESt`3jtgcARIK3OeSJ{rM`{s!~y{v6mS`66;(`x z%;#0L=KVT+rjqSMivTLcdd21r#AK{>W<-wysT zqSECaY6^38oKF)5bF1bV&2R75kXO8T7_VQG_CaW){HgrI5*L}hIt31~-J6EWx z*Ye;>TUe`usqW`q`Z&dvw?;7v*!=wq=QJrLC_mye?P31#l<^YS27^LBdWWHP`|-YY=RLyTX?qt2R%PT0t5evix(}0=!u?; zz!M!Ss}wC>Lg4xi_vIorU3~9pbP92nh=I(29Z6R~QqUzo02@k0=uRUnVmRfZAaiMI zQC-AR8$$)LP_$d3z;gMJYCWj40p>ON>@U_c9MgN6%Ak6nTsGdNd!(Ve}SF4P)gQ_|%O_VaXE@vsTG+G-SEXq$(;amF4^Ow)+YL-F#nu?2* z9u^m0>FQeJp5FlT&fttSd+7Vo_&KCK6{jI${+z2qvu z&Bpxry_~_Y5qM56u?{&bSDmJ!nJX0Bc`RgWFaXlyG@NjufSm!!<^nX>%SqJtKQ|&5 zD2BjjgIl#~_y2E-)d0dZ7(m?V>NqA(#9GQQusN!JN9FH4oj_Sm<0&@jL2K%g?!idPC;}O!7^5TQP z@o(K>da!N15B0ZHrpp2SfL6wHRtxwA%XnYv-)f@-suBJFeU-THUH+81oax@otA9@a zLmQP5^|EJRPVbd<5U)Q+zwzoVxr2vLsV=)qJMBecOAsFoUL&iYqpsH~8EiRZk&}8` zNS#V+3QjPt%ritgQfr+lrHyv>dk|SFO{kW7_XjShJpZA-M9I?*nD3?8Hg8#Z!U4D= zVY2TVsRm-`AdFsVI>>WoI}$TYSwFGFu{&vgZl>lxM0!A^^gtY)X#dXSXuzlD1-q;I z)M!S+rF!dYL-XDQEGdOEr%KV4(ov(j)bk+Vv*p5SV~@?{Hc4eFLz1lB_`OL@%f#D=R|O>xa#(g&Kz> z%!y^DyJ`_V(5?~1;S{VJelwa|gP31O0YZ~fwQk6_pgarT4u#*43qFp-&4snwqFJ3D zL)BEqm?W@*R|39Em>Z-&(4s2#VoZ*m5;#bRBvv)l5!S)ja5v$>n(Y;F`h1VYd?efP z6#;40h^<~u?}V#UVRFu1-4yAYazW1(8H-T#1aQQT4(s{etfmt{p{ob|f;D>m{doyoGoHd;ZQ4eJw8tD_6 zp9Ig$zvxCglM<>cBqEiE2;8BAIo~DvLfV(256OH^Iyp8~QeKEd;D0}rUx&8yQxRD+ z@3*F+Dbj+i59!>0L~|}>I}VA=aWpSUUdu4c$!aaz5c0=^iehUvuysJ;RVaHKRPw>o|1<4G4<b zK8~zAD0%~CaQ$h=zLluGC&=RAi&C9}E%)(7|8_U5LSk!&Z`Cqj-_z>PU(1HhR~qU9 z6dU4UH+A!BCTOJMUqvzI7n5r=_NQO@jF#kOj&m8GQo+)IY#H+;TyB|RnF2nihPQHW zSA2Q|c{#1`+wRN3tkJVg_G<+CtZ}unE)w+vFukjS`i$NkS{>L#+6NxkTooDNfgqUR zuyn!t?h5GJz5JPA(b^Qn9OFdNnPrTYIdbMA)lWUOCt}sX6+j1w+E{pW@7Dw6lqj=m zRI3lWL}vsqIza_ivHt9vqEd#sxJixeB-4zA9+t7C1bieMqbf0wP* zhVHt(tshl`Q)h|~4xwAP1(m1mLc%5RUH@5ia4w8n#Txnhi@#=>#Z7(;q25#9wYjM* zRY@5m8_IO_;otiG-bbd^WhO*{=NqLv#%L~;@qKlba%R6AlYzaA14lw_%9f@<+;UW< zJ5M$R`>$_*+~iqC2chF;o}b9NJS^2iq5g-1y$3O|6BB32djOE%6S$0%CeQuMuC6Ra9C~ku;0sYr|H|(!rkf>}cdK*7k2Qnx zc>7=V&Ql+a^}Xkx+QS3IgqZHMZNK=;#KN0P1`XWJ>%wPE*nEC?QR5_atbg9af!iB2 z)(4bgu23EZMr(qx4i5r*)0bZ3^7&3>>xe4mpc^qQo!9p-CHkWg%S$lX6>81li`+xK=Tt2lrE_8tc|`m~i(P8N48+|O0>>T1Bmp<1iUb!dF)z7XaaOB(I`6N)F}&BexR2C-FR|Ql@Q@NI2^))R{EBdj3CsqHQFjP_ zK^7U&tmbSGr3R=gVXWW$JDuAbAcXIClm>1d@AU48yet;q5u$+JJGaSC60lK&#iLXN^-WEmmsNQS6` z{y6YQ^;9ameFfbL80tvoIV>5B^(AyC5qZZ*B$waa$T0L4F3|o~((d2|Lk>AbiQ~tpA*V$mcj^UiB*HEV;n`w);^XJLPH3C^J!HMMSj4o8U>Gi@gs5VFyjz zh1s0m^0KdE?pHJ$;U`W`MF`zvN93o!v~$6;T!%0QgpiEwxFOBPy3eO{aGmO%~}U(%pqgq>VJu z%W8^9u7_gUMIusVBaJdkB_fYXB^~hItPDLG(bw=3uCu;y=<7#&-T^c61#&0OgJmp< z>Ypdhk0<2(iJ0;?Lm)&*i4X+FMnpsbfMwXYz`w*FKP5XDYLqJnUw7Z=EZhyw3hWyfCvNMuq1Eqzl#yQWS_<;H1Kp3Ro#{xIs(>G8EWT zflmcK6%bT`Q-xF!K#GK5D?p8ed?aBf2~bOd3?@M}3AjTB_d{|cd{MdKx$&{Xbi-r@ z$c@+yk{j?1lN<33l^ZNJTyF?$z}b4WAoCHjr&N+N^Ts7)6fG4(btuv%|CF zv?4i&xZ&C{(c`^g+F{y}-q7g*(j&FQwgaSxd=MPOoe=6l)Z?m$6dY7>f!2eKjz00s zO)?$!hvWz3hxg<1!^V$~AF>~}A2L30eQ5g;>&M*>$dK=d4I%o-X$XHJ5=11(afp1x zCrETiSCCdh;Da(BaF5?3-jV%8b7XU*eBwXUj{uKAjcF7_RFPUm!5pk-j~Sqh@}o5o zo2bq7WdvtJF!W+*!GycAU!<07mzYaNN<@~pmcW+ymk^g2mpGLvDw0SETM}|h?UVbY z^2GDx{K9&Id!lpX&J%D?FB_nZ)W-jK-dt^zYbeo@zw#&E?j7`AdM`~E@WszX)5VpG zF&1tt{8~7)@oJ*iMTZv3FS~B*q6|hx8yDfiksC6F&%>3ep9bVWXhiLR$HgMl%GJ?#J_hwB}>Uic) z%)iG>!swsBMRW(SY2g*ADg5j8{LgZG=qEL3qL1|2u_~=T2Hor@mh!yK`&jFI zrj@cg_uS>CmtfH<^=j;z7EX*{3vQL5Px+@>9o1GZEWWFg>}=FtGt#s68h(y9(YWPb z&vz((+a~CB#iUbifBq@eSR`rYU(W9N@>QsIR>nNaRAVxv|nG)E$|MvLOUE z%YM%IOkUwN!wY+SMf2-{xJ7En1EVI!aKJr)GD!kVFjTSN3PR*qa)D4{)qTh$fJo#Uy_OS3g_OC@BOh}&S2}*Mva`mE z+;h-Ku{xs3CPrVOw)!{`MM`T=nZZvd+PTZerlQWlEOuz71&O`608rLVoQ7zoR7?TO2>fOm0((mg#_LZM>pQ z?%RFoLb}G=O-Z$-v@GPCO)Q|6ZSC22hojqaMlnfauJ-qq$C1hCj-j|rhkycIUrv=% zt5H;!-$?8F6m2?9rP7~hwB%)~9D+$LYAKm5Erq>}1)VhGCJa5hr#p{BY`t#AUgMgo zx5=c_!9HS5<1#5V%+%7V^z1rQA+6r}hfsLXKno}^k7;1=xzQD6V%m>e@z!Y6tyFb_ zuA|kMDe9=$S=Sv}!u+c!Qp25S#I<=@W8Sxe2|4zdXF*Wet4B`7g-T{EE;--?Xaz*q zcXyCsCzE}f<1`86Xi!_*7z39KTHEr(F>|{ZHj#j^U8W{Rj}_JOIaf`NLhFgU9yLAz z80nLy&Dxd5LgeZIR-4Ma>9yyRd|^b^Voj!j@;G-0?y79Q8)Sr;f^_$I#UA?+1;568 zW-H04l}mYb!pHP?jjz!q!uy)qCTiHyRv@3+>m=QQ~Qog z{Kam+gH2QH*BeX3p%|NTT1S;Oi%-L;=?2E?>9Z8yHPbdl7xR{SEBOoMI=i4-L!Mu+ z%zqPYHgjeckWO}2i{dwy)i2tb<@{yrK1*$XAG{K%me)4{mfh}=7h_>#wy&X>H81-r zmo45Sr=rzY{GIIn-F&Eh0~0lbT5DM?t@7D(l4dkf)#!YKS(8NT|0T0BsCn{SA9B#D z1gq!N8mLBp>08Ux+L)-eGF)JF^@c!oRu~8(iSyoCiN^C%~ehorBZLzn2^!z z=TOnlbG&mbmP$$VR|msQMqu?bP}(^F{ z#>E8oYjI4*Dz!9pwMmffLm-)8#h(wv+Ob7+y-L_Ed-?`<($%~ky;}?0;ZdII<5wV zgT}b&7f|~NG_X-@_si(_HM7(RW`VZrmGTN$Gis;trLnHBNzpNny4K;|y8E1JGz|ny zvTN-E|8M8FQ4dNxA++L5VX*{wWdAvY^ZK=l>!|F~>~T2lBnNYb^kZ=a=wLjom$w4% zy_cDzqwGpQvZoZT$|aT59qlX2L^r+yognD9dr^K{z>_>86AG0teK)Y0$mR#$4d-ts zRo%(U%Z+}~H_-1EeXYCfM2-s)tG`%`h0y6vIg!KVUAEUa7;wY%R}b-jkxB^<)Q~%q z2vqX#Y3e`RL8KfahvWYjjpW`V!o$Dv`K#IW^*5duY*hO!$r9X|@}ZLqJ+>=xSO8$0 zBZ2K(n0mAjF6xv|rw_36p?J}H4N89ZWiKI4CMVx*z~TwZt*@tOC77so7;?ujo_G5p zstO&{c-aY9Z9s3Qih9rh0xWRi3yKGVd(^=J=;?W%=oKx28tGTid)m~k2#%CA) zAFkBBzw>>3^8H&)?gFeb7YRgx!>i8w#q0a`acdXnQ2*ri31p~I2jDwUMS9?jJ|uAf zuvUl)tmWUVSK%r;700Xv)knSIQ|*O+n6ipSI2$4YzQ~bq)!M*4ZbiujD=!MySSktL zX6oV=?qpe>#S`8f;IkQkJ_cS^bB`v6IEJWl^U%!dvrH7wOcq*!H77TfYFHoIg|=a^ zW8$VJjT;3E=oZ!BVPi`*lWAD;x2@q|xrZ~_xwyCvwrD(+zZoC&O=q#W>qddsTg%tl z^Am9Jb-$FuNvzuJDsAi!Ec2?l{<+nzny+#gJldZI)|qVL)H$ zO@4&y?Hx|XjdA!VI#zw;A5QikrfFr?RAYU+5EL{JZ7|aE<*E3XAGZzl%MGKT)Igo= zO`zg59zK0ezAN3_vj`b;J_hr=p{i5eXbY8IvPAK_&j=b22JZ^gRl*~-?*~jN6dFBv zHLZBv?z{H^ElB~pWg1X%MZ3Zb(_Wp)WkLx5qs`|o+RsZKT z*X#e$q}FYvVjZ`iXWggS^MO}#sVVMP?(l}V$Kgm3tk|_oap@7 zlah8fENB0<#{L5p1LaPO)v(sABmeH-4VJ+xL!BUEI zjX#zL-TqWM$18aSfAi&4twOSWv;78A8LXmcOGWUES8JZYn>LsildbP|RBbb8 zW$E}gZ5Y&0)Fkv;QTaF?(<|(p-~76K;tjE+9SE+sJsJ28CylNRw=JzSi(i4FUD(u^ zKl|-gw&3^}8pAP``&@dD;k~$;QK#qnc6kPrmx2B8;dxWlsk+q#dFryXkgk_604_vxl#bgRkU8wc(9Q0C z6|m?8m{7;Ub$^GuZq_I8UsVM|!g5dprmgH6udq*XIWln&|C6ApOic}k`hP4lH*~RZ z4MJypsZUg6owlQ=z^CQ~C@>&ekvstB|4)g^&Yjzs7o1YJ1SP2c4cdg`Hhk zPMjtWm!(D0_^p|G3)c6yDH)B!4&#>lERrFXx$aeiq&p#vbyxAPa~IL#Q!C#wF`K&w z)~e6F%h+w_6}~{&*(oQPsXQe7>p!hdt~)Mu>DyUOIFfyjr9aSVIoV&T_Cr7G+sx_y z?qA~TPGHHO11;WYV5Lv-kNcN^e22Ea9@<;NR*!zf1hvO1=I!PPuj-?M?RK6ydY1yS z`uo2jFi%?Hco+xv&LHzOFnu|Bm?69Oo?5n*eX6}oay+Z>X{*{X`GRmJ382Hy)4n9q z3#(#qPj0kJ+P4k`+Q4^>7_fKvW*-wkOaVxz*eD-r?-~BBz>kPV#CKZ-2R~9noLsED zhily>;`44fGr0Z^dwVZ;0-)G!8L>Bx~Z2t3tg$zvl0aqDl?LA z%9AlM{`)HW9v?jpufnIIW%;GF*?6h4n;83gh^;f8VodkXq1t`imY#QB!7@sxuLArA zJuM1D$~d<`(7(sBaSD)}!yA~!efT-k8H(wrWnWji=!5cJb;kx^!<)BtuU_t_j61F5 zAM)f@`zm*W1lM(~JMRN8b%p??zUxcZstjJLGY_lLfbKl7-aZQgDSfvlFvCm1nV-d9 zdh{3--{nj@z*}BOf#LXbRxhxhSQ_4fh{1u@su?GycJQm#$j;wYI4W=VO3^)>9nWJmwb)@(wZblB0pU#ibSIMx`Vfcm-y#c=lvL~L_UVmIyyq% zrvrDysy*$eJ!(7wq0h|4ADpW_xGm{sH+0mtS&$>|Qt`7fRTmTinn7+~Mc$&;9GdVD z#dv6cepjQD@9L0`U!#tSJ*pW|>;B&*4%>gI9r^q`p)Wr#&G<5(y-wu})Se8(kzbT8 zdFp=4P2WfQ&VOapHc98X%CePuPkvX8q4llSpgdjbKQCTkRr4~H>kw#5U-5`2;~M!C zb!gZ=;@!RQa71IRH;s9d#a=r=z(#q4j^2!bjtPJ?esJCAaV#cAbYM(^SV)(y2|U9D z1N2?&ae5DOg9ixFe?tn-)zf0Fe;6Z(VkN&_&kzL#%A;Hv1fzJ`q!rJ~US zXo{+hv^4-`a1a3y5C?aIUL1kVDn`KSwtmgL_x@fmOK?`VEndoU@Gf$ z>do$%!l~lQCOcBXnnrN6yq2L9()Oh6K25Vb$HSO4&4{!%0;gz0g>D)}Wp)y+Wl8Be zmwC5tT6w$G85O?HaYWln&LLUj(GhZsu(Tm}6V*mon8Ubjn`Um!2(4`6JX`n~#DY~Dy!EkYBwH%~ zdg+31H|Nh7 zZrJmb@HfPZyY;<*7U&dW>Id`}9gSVVp9{{lxr+JYZQyo{#@y~)KmaQ91y;3bwHq8A zbVCY;*BkUBEKU=NYTU*agdAB3LfZP>ze44}?vCxvrk~9sM+WVEz$NFnH3mKt4dUh3 zEHy&HP_1}jq-D)}4K;>r!ee6xR;f@Wb%=0uH$zTO9oBw-^WClSzFFAz`_`ftR3DL@ zZ=iEFUU9^Zi(?-YaGBh+_rlz?8Kd&($(cat`Ptgag*9x{BT|w>#S25PN+mN<^QyGd zADKq}DaoM~pQ+ZQ^go<~yjf>NszNip-;Q3uM*@>Hf?*@s_p_5fO$1nzo-s z@HVCRlzZ8j4W=)y_RG{t`;)$EQaBp958X4RD_O=jS+(GVS^eMfJCok5@jfU34Ve0=8({r=Ph2$vgYfKfgmL!D6FT!y*Av5l6)5z~b+qqp` zzmRRkMLWZ!{{+is3YU~Sx(PKl;e3TgIf5LP=TAr1o7q%;r7ttDAv)i8uPto%uH$W= ztnl_^Q+e4e*Q@)aj#&S(#OkfT!QJi)Y}?q`olusMG+}boNL;cai_$_Z zfpY;;pH6z0=U+xfl3s?3Mz23Wr2KY${94L_)1U5~BpQA^>}kRn_n!?|h>M~{ubNXY zm#9xrg(m@d>P0$)^eIptU?|(L)jW4(+=rGeTzydR`8hi2CsH$k8>^Q$H?P#;@^_W* z_`dUC@E*Er0^Ri|rvk?a^`=f=vSoemN4z{^tmj_ncqdf{eo1DCYo{007=&&INv?MB zkj2&2Z1(Bw3S3sgJEzY^Mz~L~a?Wiwh>2X>-8*E=_g}Gm{Vwy}(KSD=qgdL&9x1h6 z5cVyI+&XodJnerZXn*5pQjg{2Ox0J|k+IaxJEw2+*W|Pr3El+Fjj-K+V3P{M!T?H@ zADgcgN;GUsYamwj8pZ3%m)zHiwR+-I8|6gquu3j554#bTi*|mDbWv9eXSXP*(J2yn z5~NkfX@O*Ft;8sJKZ9Czl0yic70{3u!;c880fz~gTr}?KX<9NM zL7B?CqCp~oMQEIZmP@ido)RjA^R;uoj&#z1mx#{QC~0nWKK^-3@X5JS&edtQcJjWv z%XjmMtx*(PD{hf!jCaQfRpHjf7dGeLAU|~tY9MKhY3sf|Oyr2Rqq0?ZXkrfd%NqFg z)?f`RE3PQ}=>)pk8gGLmCXQO6RZ-LYxAjrY)gPpt&Uz289ifYQ!s5(J3A#wAu(Uf3Knh7W?upVx@B)u{f1e=GQ8WLU(B=kCK4J(-g zwuywBTotBbSVd}>x)ECHE~RX8f(;8*1r+e()nO8LBkskngy4b+pMXic0X-{*BS*Wk zyFoPIlYz)#*uV1fIq2-ts#)3O)Dh>ZxSJ`?7YkQaOC??JX+9>gp3Mj0-7zA2EVpw( zIywqZKiEd(r0?FSt{7hrrP5{39vj*2tPyX&M4t|?!P;rdpGy5)al#K{{%*=TRquor z@}AkrZ5Fs8$c5s*Cd$gBU3w~p&9@{c#tOVj)+psZWcr%lk88D;#qA{X!hVfk z&0pix>Eh;fhXSz%tRD%Hy3Knmh5;6C@- z6(oNmAzV;=_Wa}fU!Ve18D0^IEWzl+*K?F%_tR`5&VUAlTpm977z-Cf5+=?M)AYw7 zf>ON!zU0DW%5KTPVDLT(g$u&AI4Ww;IBWn&8DLUPScoqBwe%(14 zOL9c-^&W~qvJ1XaOZ9hU@3+!elj@`?75E8N@~)54?EP&gy6LUDdSyT#Um)>NG^8%6 zDcO=LQ)AP(uo8`54xy$z^@1MEG4oQy#V;Fos34Hlro`_R4#5^qJ!z)6F|;KbYmki8 zL{N>IQFZ6F?m}L@69>L%UQOx~j|VdMIPdoKrj}4H-NraNzYmQ8L>lm%>hZUwNkAmJ zy{@R}MTuton~JA5%&A=Pa8L#gLvV5reA-Q$%C^Z(mA)U5bf-8=)?Cw)@UIl=i#8w_ zFskR&Pv&G&a7&Hvslx!2&*SnwTTzD;{}qdx&)-0azpWo5Lr1r5)Baw?E~n39MX9HgsZS``R)THwL1d%ddi=3LN8esoAr^|fOBa!mK)F{tyY=ROBKY_&88e6?>aFtU=(X&l(5 z$#ov`*GwFH^yxQ>yqk3AB9b=D|4z#sZ9C#7*9fM)ubAO)db?p z+!Bdk78x^xiQ!G`012>4!fy~tF-;-1_<~X*vH)Uijn_uKvR9(IR0yAcuzT0O@jut2 zredcUntw%N?DWDGHB78gRHD^+Ooj724C5!nmyJa~Z00R7N|er(G2d$>`(3LKK9Vf5 zcRhm;&N2NxB*(jeDfy-hPiqp@-wSSi$@2ii4;I*W&U9_d_tNMTCLMfpMUF2TJx>DvBY6!<` zDZe6e`kNOmWdnm^O(J85|n^%>_UP#00;Go*xQp)IrD`_2I--+IYetnK}2_l z6*WZka!}k2loEjn=G63qc~xIA3x(H}OMzb4(9(vl2wat_hhs?lmSZgN>K?6Xh&e#~ z;PYxi?rhq>O4BXW*cBU?0TNkJt1?|tRMWeKYy$M&$^aoi-oMFK)PJ^AlLQk*E49$p zxIp%SX;kzw_41lDy;$9|&BF)m~%_L?_p)yrT+>1>97O7h?OT=IF3kiwF3!#^mj7SDK#l8qm@ zO~9j^H|G6Y{*fw_VufH)_2I1j6P-!A9qOGbIlw`awj2C+H$-ZfrCyKOSOGRQTQ^Qngy&h5LB5`ou@}8PbQ0=gy#sf#ku#evZf2 zdCcU$IXKa5dudtVWbuvuy64~Qw?*ki{8)pf)RsS=RL68H?$hBdX>R>T-e9FPeBUo> z9b#;yh;FHvUNN6L#^r^mw!^c4(Cx+`x8JGuW0L`jqy`udYF@d_46-$!4f>LY{Ofhx5?Lm9uF-&sQmpmnZV0aM^dC zFHH&K(Q~KHPalQ*Q>*1}EE*Yoh-R|$e@k>%3Bnu9pt0Lyl8Pl`F>)mEi}io!N*rv&6QI)$NEro(W^ z;Z<@6IBgi$Gny7H<|uuDO}P9agWg61b!3-KaI~Fxn!Te9diStmT!lL8M01s`Q#`7H z&kCb$HMi>;Su<s@3DjT<2|JAi!UYw==SezN0x)$!fcEf=|VF%iO>G6xy0US&~7A zEd1?E+}{qMMEddqtgzqa#Vdi4pg1Q3K>OL1FeDil?OZXY*2$MC#Gx69>Vm^epVlwh zbyKmg*r6zwJNhhZA+tFBLEZ}lyy3=NC}&qt!a* zE^be7dS8U%etTj&ETp4qdKI*lj99$#cRJ)bAvF$nb`4xlN9;E!y6xYsNfXp<+_HHH4DH2n-!rJcHre(+vU} z5fYBwwU~>#33DT8`I)_-lj1_7lV4~MH_b*f_M&=crq13F*gDavli@5nC5o0c<{V)m zrMyw#zK%nGaQ7q~qS}ECD9qGo@I!$Mx}V^~FzI0?0|$T-h#KPnS9mw7!`-m z9gF*|XSf8cGmJbS&Od?vu0;F}f!Kr9YrDX<@uWd>qlKu zj#Yx3ZHty}L<}H#^tMi{sLZmm0_IldeynEvgNkECx(g8#XOeFFN3I2Yz+7JLQa6_Z20z)&H<7!pT-uCErvY)oy5{x-u;P1t>MoUf48Q)J zVU|t7FXJUeSJwRYi6BpphrzLs8)o~#DxK8Ndr>WGM@q&db`3kuF(YYY;;Dk)rJ0TH zGc=Qv>UOR~$sAxue>YO|)$V$Z$%0@|Z0!ekIpJ%*j#bb_P$MA$^qoMxtqT+1 z?}ufQN9360;H}X#THPabeusmujhI55>gu9Bx{YZ2CQK$Xe@AU@+F0aC{T8ZSckV#?iW^`6<@;y1ajd6-PPh z?XqFyzfRb-ls4gK4?h)9z%O=K>7%EyZZ*Mt7o0AE^{Bw&L<+d27u)UWz+E?s<2vmI?w30yEwP|&EPg!<`F}-2@nzo0R zl1;!+u0nkAl9iD4cqvUkhe?hbaJci9>8FMGm2r2pzd58)OV!g-?obxR7r9ZDR;G@v z!kJm>+)5T79B}QVWV6eu4aK}&)cIEHq2C4eHa~uKLQ^nph87{vFYA)g-5dTw$BNsW zauW&U&{GzhNnlvv`y1B0Jh<#Giwz`+%s*~H{h@aK)D;rfFQ&%b0|t^weYl9be`}%& zReyVL>Wks>?an;0j+*j zKEq%;*T!UUJV!`#oIM8&vj7}x6Z#s+r3&H$`0O`vaEYgY1X^W)AaEeVaTgFb!+4G# zG6vvc)d4|%`orscqzgvDuRh1Qvw_Ize*2zcYu)YiPG2|=6~K3Ifb7j|zpP*8>0*x` zI2s(5jZH?DPqx}ocg61xo>i68F=Y9cAsD{J9>+p5Ndl6Yo0mk4?XrC%s}VCwu4NGj zj*C;DErF!u##&SwVGr}l;fw&LUkCt5{H1tKxD8AKV*^@oISP=JDhW!Ts8pcTdP>rp z#2{ocPM#15lK~z>!-2WQVfk;&3y(1Trn&|X*&|F>D9;Ty_$MYD4-)XqE#HO^SJq#; zmIpP;XNK*?{d%^4SF}`(X8x#VPOEg|)uE4i9Sl`Sv?$tR0Lni&@X6JyTtFyc{9ytFD3J}+Fl#ufGg`Cs2v>`ZwG5Bi0n zi!QAsjUJzi{$3+vs99$D&5Fh%eIdqe1rQcj)VzG$gIPfO6Tjj4xg-GHA-WUuaAEN` zmVF@C!Ptx-hmtyp`qTq&b<9e9V3!KehPhUOa)m|`QwT-KVJ7&_2c?nw#8hql+vtox zSkbgP!G+EP(7r~~4@%LL-iP>l<1^xU&2bw%MVd9??IR(TC*Q_NUa&gNEZa(?Tm8B- z@2-?}odA=wl;6+Cbs00nlA>03WN-mhYT>el}`h3kct!aeUG=C zEh2y0;L+6OPj5!}37)o$X47U}PY$$EuyZPuOFw=mAG6IrO;9=hp|9x1@c0ku0DF{V zYFLwFU@C&N$p#LH!ca1O%(I)Z{U;ap=6&J`3`sv<1s6wlQ#}tqelkL~rhuyCiT6V2 zf-oT_ky#Z@y7;%t_OX;ZRx^t7MpoAd2h=wF~nzxNE)s3+ya6-|K($Owk?HS(p_J)DZ{geds&}h66^}u|=v_2r+zX z`PjB@yaaZz3Es{FCjuLBau1Q`v0`V~h!KFMCjrdaiv)pH>IkP>(J|oBZFKXLm2p*9 zO**6qhfbSGrr$u51jI-{Jy`g7KEQtf0AzHKL1Iq{go|u2($Uq({^6rX@-uh7M_^z) zwY_g|neaobaql9G=BIYli@rU!=Pk+1@|Tf01#gP-rRdARSR?KU17GKQX+F;ariNlWH zu{Mvj=4MRJZ#tCToYvg6((}OV9M)JVlg3o#S3WeT;~7mD(Kn{O3-^XLL6LMl*(g1F zaT;$28fE?mP%OEw@Ldh2Q&5LerIXiFw3KIcNedP|emHWf4AJcnxQn1!6rg9~3xu2D zbsvv}*8XqXU4foW=gv}W3sqNvp}l8ha7g=@d!Tu*wNf@)vcH(fGTB)}i-l4KB4OG{ z1%6+5-=Q26IKi4Y7(#4j^1}FAKpo|QA~TKvM9(MD2T|DZdmUr3njK|#@lrqkj|nv=?=eMZ$aENUp>$TyR48 zYOJE_0PMh^%pq>~a|)r>bsc=6EgCBE0)Kl!1LidIfEBZsuM1$e8}RHdG}&Dv3jxij zDXBfe=v zv(>z}9<0=)E`4@5Vzp&0KEbe}E?j1ZL*?N0u-o`Dc522ugtI%{)rBamI9<(4NZdH# zMD*@W2QUGdReN#oY?n08`yE&3M7kKZ^cX zGNeMBnA?tfixpWG_qM_iTt#QeP`37>pc;kV70=78tf}2Qn0q@^TnLrV_E}TPwpD72Y&L(~wOCNyu!kP6 zV=zf<8LSZ-ktxMb6`9j4*@sG6VOfIK??-nSmYa&l?9{ja*yS^<^90r6 ziflu;8t z)Wn9CBuI4#Y(aAx0M#HevQ<>YLi=epzTYuD5^H73(eGy}Mn1)=SJf0?h-4#wVlx*g zr0g$Ho}%%!gXe_eeF^f&kY-rHWcdQn6EZQW?^=1w4L zf7Z?NuHtcBl1ZXJ7xXegvt@pHnzI)F!9pP1--?l-*zRi6Gm|qE=Uj)dr@1 zy91tu#XnE8hgN^agXI4UB<-Y{m zvqjZ^`tG)V;QJeGwD;_0X}CG@{D&Sf@~$x8))m~AsqirRgljjUu#Dp4tLcVC-1%3m zjt9oZ=i}4FROsR(3`neq0uEQ-bk?b3F{#E6TE43A8K2?1=h~v=GN-; zbj3tVd*#JpZ$x$BPe&V8!s2uXxeB;SJ4sMEgb)wOLHt*-U-PO2>gg_s4NxRe-Fn-K z(iB7$r{3ZHGQ4SUt z(575Knuwy!Iv9j<*nkYw3wM&VKvWln$*#Oq)cE{|T5@8iUz($;w>548+qfgpn|q!M zI);9rPPG~2i?}uzU0j1E>xo^|L1$WWSn|~RwUAkrl$W}Ync0=kX|=b-=E8hFOD|F$ zMM1UkSY<&7uaX3a4PNR}cxxD+HyGWs)sLOYND*Sa30E{rcelJ7BXy4!8Z_O^3yBV9 zMC!`^DM=B;vz%mz!2$_U4OyLFy|*u>{xFQ5i>K|S9_^CbxoVc8w7lW6Sg%W8$+IWD z+_&rY-1n|n|Iw3x?Ija!lF6M1*9 zh;3RLl1ijjT409b5%=JDZKF=srJcTZ;_!BY`g}Ij>Zt05zFw$JY@5d3r#!|~5Lovc z*q=}Kya6=!j!ngG2PCuc%$2a(C(X8b~HzU$^%?DK&kD3~F*icOvo5OpFz%i1c> zx|=%SxE_}IX*VwR9*rs+dKA@tJIVg}^xcKvZs9sCxusP#<;KyW%qY)^`wCGjT8KTV z>Ys|BSXP%h5bA7)*Q*>w1t1qXW#txG2FdtXaXEU8Cz0G4*r$s9-;Y#$@}cnXuQ!ul z`+!LmS(QxAA=MNe#z?0_CCvnmLBc?*PC`dIU3}Koz4!ZFU_v-fhYegJkYR3V+ZrXH zNw8;YImDjQY4i^G z(?gpIF^q-sj5ceGWn;|w=b6qiSk5t3imX-PgkGkRr#m@{!^$s3k8@;7p8Q+s2)v!ssr&e5GfcR6~+vFWbL zzqqz#ZiR0hZ-O_HH7Lcdm|e47R=d8C0OpSxbJ9yd8-41M!Ep9}Wyq z2n2{dAbNntf=Ciz#{(b+sGNG0Xz;daXqP);%gPaa@GiqjN)bQGeoF5QgFuZX{ibzs| zmK4HfXk#-AnW3IAk~2S;vKJ5(sPa`RBLHS~?v%-+UPSR5MKd$Y+!N&z#<|@D0 z_MEF5zNdTQq>dus{{8sEsog!NF5or1Yb&pfQb^Qhtt~kGi#HD2v-KeaT-|~@K(~NJ zTQOCaiY#!#Fl2D|og6#u_ouXXo6%4H^|kUks{BKK85+6C+HB|fI^~xaS?1Ye9as7` zK(Vi>ujX!Bn&)d@^rf4KLTRFH_d}{dxKH&;hY?lb>YY3{35xqx&ftp%2E{{DTlRLx zHR&fSSE5-BvfOCNm4e3jOgAN)MyJ%UV8zpR6;&_DjM?)l_u#`>%bSvXLY617;a&xc zaN-mr#1l^ZBZ?ogCHOI`Sfiz!p2^*8Y|rmkoa=s^T@M9_c8}#_V-$x}61n^Hiu$)7 z*Y8bCDxq6&f3)OE$cwQVmTsChy=J5Q%2wPZYOj8`q?3He7iX*BRYr*;dQA`@x1bBl zB}db@rRMV$*y8`=qx)Wso_($LxtsXNeDFVsTn9<0OQloNuo#}R4<}`3Tbox1Iset(O(ITsC!`GjKXJtg` z^%CL@CDB&8SBE$8OYJ}H8@^}GlVrZL$u+lnH-YRk1{2}i(wi&J?fTxbW*?BTZp zB>*3`OE8za9ikXMa!*}#_K_0X!FXKiM`Tw>NCOCYmwK&IN)(v)uGjeH{*P74cdbo4 zjcL+SVcVPl;z{eP8P_*=%*DI=(rxf_@{QxXS(j+txzem7TQU#q?9=UG9acJXOqRx} z=?)zpr8Np^=rpQyoK%%x_C@ZCE-#o{eL9rm5wC*mIQDgXWUPpx9N&l^TJuDN*sIP@ddkKBM@V*&C5OdaS# zFKk`uyQ65$*ram!VQwdmc&L`(hRThu8&nBE=EH^%!u*9mDB=nyCQQ*e;&nqY!dHcLS8^{`~*`G9!{*C5nJNDqW?1}Od#xe%hFaFgh?KJo5d`*`Wx;aKt8~I zsPVw{fm#b-79WT|fOsM03276gP!ZshC{CcA(Ktf9;+hxXnJ#Xu+Ou7ogF6bp$Y1HN zl3z}}qHw&E!d2qijKFUJce1)&cF}PX9VPp~5)9ZjNke#`w@lgTD%uehvPfAmPvU74X#ozRp5A0Wzs=E^L(>?`a((RP}KdjP6g-D_2@ z`tx0N-n#ix=GuJ;0$c(^b9QjmY_18xp}1KPjl5ubC9JoAQQ%bxHy4%xYK$HWMcC}k z=Y-+0V5rVCSZgi7YeB$hRHmYBqW456NB<+NfIC8_6HDv zaFC-%Un?bKefO>#_I7uv-rjw$(?Fi48O=gPjz(6m48@-p3#@KSKf~;Z%FfiR`?sz5 znuT>CQ7>%#3uo{IUl#WOMu~EcJqDWddj70aU6hZL8J$;v=oiYh};KL zI&R{#SX_*zjehQL_C{}(Q`hW&J=c9QRKiYlKbItASA(XZ{Q340+0R=`llyT_eqXmo z!^%00SNX4BPOES2Px?N8+2gR!ILfR4ZwfIj7O)sRoX$h~oYDCliV{3Ij1x+=jb(Hv zYi^zveQ_i!{hD%C*Bi)1Oyl4ObqM zm`wgAev(3^mc1@LX5Lh;TV1dD2HF`>jWo?KVD*wMzj z>tWqkYnj+xKUfWUHRa)aJIOi;P1|lmDM_@`80wVPj5&dd90 zY<2gu;fDR@l@+WBf~*8n*_b}e`xs~qDV1CIUZta!-UykYz$YUvrPJqN>PIBvE7Q1> z04~WTHXLu(g-{1a0OuaQ=W(ok=#Am)julo%UU#&ZS3f$WZskUtY#9u7EBV3`$@Vk5 z1+AR>TqNuQ82TYqUb6G%7r2;mqSy17Xi(o%4)+5RW% z^5;2`l1v#V$CFQf(6ARR>HRcVPq)FHEyg$IPf^|9T>hea+r{Q9@Ley%zXgZyu-fPJ z86xr#?i>)khs%xht2go70t~=py++&2Z8t3^xBetQo*Zke(8{InT4v%9>i4*t!DP!y zw+$b_)^3W68i&##Tt|8I$FTL)%uoA?by{=loVBLRv6o9Ut6LeTrY(r^d5&okSxH>( zxpJOSlR~myxUM;pR&#?JOu>KPkmRI~QWd727SL3nAS@Lnx~^4f-W2#jI|G`ZT(xBa zpP~U(6z7pz9b9}nUA|ST35-}Y&olArTH^f;$=Bv^a!VvbRBf3Gl~N0aQNo*^IOr6U zDV-ZCDq+f`XwbSoh#01n$|;o;cL}Q>$t0lhY3*2)G#Z&OF>dh~Ld3SE!Ebe6y9Bb4 z5wF0GRtT41WdwV)B)}9U>;6jENO4uNk#xNY1|rPdqzb?wUw9dUPrn3$ez&rS*X{ZV zU7`!ZJ>am@FvV5JMzZw&J=2_DkRca)$H%m1fKjpj;infhzN+Jfq^|4b@oIhxDr0NI zfG|V{xc%Ku?dl+F4Oi=HY!LX<+iwGaQzmdSo%1zo1JYiBnGihZNOqcSS|W}2TI5(7 zMGZnb6Q27P0SYlNjqj64V%)+m&%;Y--50boS93WL0Y`Nxom-Uwf%H0c^*-Ai%?G6s+8O3b|c}8fhaCf1Yc&L z)Qq^d2JqmM^cD{W;?=w9tOQ@B8Ikc9k<--0qd>W21la9jB&!}8Z*M?PFG`C8;n(R5gV+sT!1n3Tg0N1B@JWy^IS}cwc%<|Kp}nCs*mUVWAN?Ry zf@hwcXWu+0PH9dGvh=9nemcO4%@Hh5h_J!+6N_0YGnJ( zT}2$`HtF+}VpiN3V+$pObE?d`JH3Qmf@v`yE5(*7OzKI*0pq`CNO6b<3?Q!P0u5q> zGF8@*L&4cNkfL!64?Q-zBt=wsEl(ehtC75edzg@tQeW5zdHOn{Q}1+|h-#avs;lNR z-_FTvYTRk|8wy6{-Zwr*%0hKj1|`hCb68p3TkD)Na`=yYAWLkh`;+4 znoku;p7uE`lQ|D)=TGi3F`E@wLdN;E9cwf^?;_I;qGn=q_ z2Tmivmd%3c<7)eki{<0CxlW}O@By9GcH9x4MvttZyWb~{Vx2>L9!HhBl$~)Nu31v- zGS$0!H&yAw=w>}rS1MjAN@trUo00xo&&}2a{O5K)XMVcHb146Zm&O@ke?;v(oV`5M zk3{GlrHa2$n8y{yp<$!rQm1j2*(<}{KyCT#gNmRwWD2UfkU(lsA5f;!uT_S?6x`JS znmIwB9+dJVhy|D%UY5`yFGz#y^_{JnXUA*A6T??<(E=L0RkpG-Rq^pVk{rp&afbOu6Ss3K9pW<;W@kLV^nEXfQUdx%6o5EXA zFLpt&Yw&10={ZN6y_;^tS()y)*&le`?~5wJ-^-RHYXVSLQSd665rq)aG&F@)>Q%fq z7fU$}#~_^W&y^Vm4-KL8Un>@P>|CPr9S=8-1+bvbjzOx=Ud=AShJ~Knk}VSZgXBUID)=lHQPtvmz1eG?3cb@Y7!$ggGH5{giVU3x~I$UYou$ly(c4W2rXja3-kE~YvtWcgAf6MG_FFn2|Q5BK~vkCTj4hv=rZBAP0FQoY<2>d=Ekn7{5? z$l0(%z=s$3S`)i6!1%Qc!2Cs{t-(AivD4+g0W#&)94RqeRMu&$=OpKUmVd8RTZYu2 zZ2|Z!ChAB!QzpiQh$1^c*fKD*0ki@r1D=3GgZvEB2l$35;4D!-gBa^qoCSY)gVo<8 zL6TFpNJ%n;#i^pp$i?o)9)-GGHhlQnxw~u)4yhw-?J|DFg{zKa+%(3cd2TK8#selt zJ1lF$@=)u3C z7L&qrvfmYtaDFZ%-P%8b_(#1kj6w3Zv6yJm8hezQJUl)4gSa9~29f7>8{CwGR^w1b z{aPXQ3dAbsi1X;-ruOAvj2=JsMUq!-PGv&T143Yc?U0V)JQVIb9IW9Uduw;{C_&+` zwW6sfuOydf=@vZ4svV*REh@7Axa*v=yhSqysh_QD(C9a$D34w(ndcqqy`NL1L05CT zS0#;$<8;O)2!q%o*k5CiHP{GF`PE+3?8K7Dg+)3&v{j1C$O>^!2gKLM591TD<$sdt zuzrk&0@Jb!FWY3zfbvgaZKjEo2aD6kxehP_lLCOU{-uD@h5L%a> zDkG>FA$v>1(J4Y?S+gqBmEL|*82}KYpA^AVq$cVX1J}e@k3p_ zFEzg(G5+~1C!gQ)1{$9MxHC2Xyj~t&XbtmIyiN?%*_oFA*cq_`!LA1SSiW{~N1?Q* z8kYkp;u)9X{F}?{O)77`k-2c+*7BUm8O)5QG-fzUw(#+*Zq^0H_c#4r@FX`Q*B=oJ zR_01jH{*LK9`_cSMw&yu$YuM#(#iuiiEntVU zKfp7MJ3=kcZ9+k_eNoXgb?v`(4(gER5C!&V}LQ5}WOH6lk-)+51h zue2N5B-I2kt!Rk6G zY^%pZM-d9fsu581)s_l;1#fsMgK1-ei1@DH(L`spDv6b=4OJ5f+a=uXd4V2pfu7dY zesEt!FAU7phdqDC6e*_I$mc$*#$GSy$pcsbMOX=b*-ufi-c4w`y%zHQtSq$tvyEoi zD1!GluY1AGb+2%^D4laPQj}P77SJfHKM?eQD9>tqZEzc zBEiI1GZc(}PotY?hdle10@CZ}9L%<-ocE!*nPBC#o00XgL_rWW(Vgyw>^QoRk`ih# z);tLx7bDM%1hVLVDKweb&u9_#uY-z^6a<2fq&D>-h03wp=gcuFVR5zRt%{eKyQl=X z!C62n@j4av{UtQg{O8vAdBF|ob?B>slk>>%7|>=L?ao=tez?973mD-rKjSCEv}eb~ zAU9;g0|B@)sG4Kv$)GEEObPHG>q><39sOd(-3xeB;|u3ZV#DD&rH0bpBS$)67?lQ` zKmOfQ?MXUina+RL4#avQ#Do_t6FM#HGv`O@ziDG<^=xmc&%! zy*Wme<#HNsnr|=eD&k80NI~rdy0w{o ztr|N^j-EeOXRlD6+FYfO54DYUtoa{6X`|83ljN3K1z6{sK&HTXJCSV;k!F#fAB=|D z$2yfIFrXK<^ol7DQTXd(uo7ALA%2FPh@(KoN2x`lhDO;JiwXy~r@6FykKpulO}7co zzhy=6!KtswmLMg|6ik23s_d62h^$%^dimro@+ia$C)b>-iclhj_g!3PkC3cUI5Niq z$84)@!H-+@2S6oNp_hDkzr&pWNW?Cqy6mDSQkeOe_|4MqEo_}sHcY|ddalzSp`DwJ z#m7?%(J@HEvezC6ULwj^Wg~^GLD;31@_os$A6Ga+SA;dpV#nHyu{5)5e^wMMV={1m zqHMTFM8>lH5N5e_Q7uG_8q6NijM{Mjs#zq;Kp2Y0`c-t{{7tD=i3b|iWRJc|8G@r{ z966$+ggn$pQFX5S9Ga8joa+e6D|S%b0zS}Y$4^vkdKp213nALbhTwM7nL{S8H>b$S zt0QML%{&hm#e16A{b3vLUVuav{>#m);|{8)#%r%u?Uxv_z)S61EwEZ|E%q=__$vC9 zyI~2t`Ej;EDnAQhkXA=R5*PA(U{L}*9BS!@O-Aosey~(%XHKZUx5L+a%@cq$IM>6v z8!zfYyPm8)BDxY(km3D@od#IYz2jxstnm%9;tI6k*1;az-bv&kh`g#(Ic&$-H4E}B zQ{lebQaQfkb_ccCmFZfI0j%#RvMuZ{Boa0@ZP^)ihCQd5R%*l>yyzQMhLsoM&cXbX zq@s|!gDm(st7~nNHdjU^#Xw4VA%!g=yTFR=rbf{Z?d1X@&aQA zJ!)o9Xt|Vvi2?9h1|AFEHYxfE6Api(1F!*L<6MOpn>C2RshW16FY9W0{)>VP{{nC_ zs`Ks&ctN$1>%H6cE(j}uzBr`1KR?lFNQenT%_Z^LY!F41_os!F-hYDVU;ZrYt~w^I zN-x5V;g(fv2)}$^+P>tsTt^e4|0M)EAfS#KU-2kaOvv?>>O%>8C3u~2tv8%e46kU1 zHTCk04&@>74W}APPRFO|aZyMEkSm~;iYPQ_b_lllmr=SZHq7ol^YeV@jlxKd5iL4zsNKjgX3?ftx2u2m5*fyiX7mtD_S7IDt15H?f>Yh3~@ z{{rVsl*@QQh`ARJ#bBQVe8jp24z?@B)6OOxSZWeq>$uMcMg5cGDNEK1`>W@wjP4_G zdc=9WxDotey5DL)$tKjcOOwSo@$nP7chA@OZN~EZB`5jmJ>P;ojfG$eI*)>iQsTgr zL=}0$_O<}#$2-DE@%o>Vc`*i2Q2p(#WysKvM3LlEi@dB}2af==5F37PWedm#p42(Y z5E>L^p+NN5G4Li*H2^)^vtAodRs?4){e9Z{qJ-uEOo|VGuoNN{5e&%J#U0%eLJ-jj z0C4d=!1N*G)6alEMo7pq1P2J}xmwdmYrO@mC%lwbX`!oJZHOZ&kazAd%>~SrH0uoX@ zYxaxffWgFfh?4XVzU%%CT_Pjy1L#C#f~(!Y28&hC1WI!yg+NSk%0Ya<7kmtF)?3L( zlQnB14H4?WBMKS-0831s|41q_cE?f3|0Yr>7+ru|dxkYh6oU#mDAf>9;CL05J-`8~ zgrpdJQ~_q^AJ;&JoZ-E9Wl#o)PI96{eTI z%n|yEBk$~?{gU7fe}xT!*9B4IBqxduFm7(GNa+5q@Q?JJl&q0q?BykWIad2!+ug$W znz>hskJvAHm}IKi#S_$NbMUKp=6r#XiJH@Lb1IDT`t9#O=;m+*G7&-UdI@n2gu0{bo4i@O!SumKK~N3(K%@nk(z@ zq+HE06T$y&ZehE3P??k4s4?x?ij+H76Ke&$aK&x)=nUeo*zF1`^z@%N~(kIoIdH#iZvctdy3Ul9lg_YPh%0^vs1H>2-aImswh;P5&MLVuWD zkXV`G=OW}CA>6QO%7|JhGA9{YeIw?yvs%^L4a1=rFk>xVv~an0?5@L`s`g1I-6mv* zjv&OxBH?a)Ft$s>)zlke?Z|zd{9!?V4y>+4XK852MhYx8gd74%&8_l}D{2^Mi9|r` z0-$J#K?1KBVglo$+e=h8%{SxI3@u?}&QmH(uVSUTcje@rJby_2{bT!jx<@Wpwu!Rr zFV(jr7VX-@Z$G6WYm}HgxAg3Uz+K*8m|3+-o}83qB@jtc$u^HOqA@(VO7&ydLT25e z?F9J>nh<(~|5`a8VyOCrU1x8m<1!A7NbXx)fR#Vmqx<;on%-OU~H&JNz`@`LT&T?ww_kk38*6Zwzb)Xll4A!`QCK|oBFODK;H z6MddhOHC0tIJH)wwYc{$1|aq>QCY&pWx*cQjm@EXO#pKwvyHaOTEZzaRE{ zQe&DiL2l6F|5qXK?m-LV*TRUbA2_DY*w|>y3x; zjUFu>w^mJo21&A=QAt|nrnx}FW{caTuT`!_9*w7QJ!!ge zs}jdeQb&jf`EJ4%nZGrjdH z{H4Dgy3-$$N=J1qEkjyyHZbkVfPpHwtM{5fZD*35s=g>^$LNwJf&sckL%`Dj_Qet> zNKnts2Ph~tnMh~6k{^CW*AcWx&;mJ`HVI{L3VbW@O2&h98C;8fCHC-d^}{-{E{q&W zKHI6QSPmcto#K>ffI~gOH9U)%{N<%w7^r zN065uF=5O{A^E1K+CHDC+|sYMnH5@ZX$1F}i}_#r-@WymHmR$XCN+wp;cV5tAp+Z3 zaHeGJ5{q1LJ?zbnWy>3~ch^J8_v*Z7ES39u7Y0Z%=s?A4N-UhCW(Mo1B}p*`U3 z5DcE4dZUC*jWaFqskEvHJz#m>3+PK}8oWxJ;_AB2Vt=K=LX3f{k18>HKO~U7n=2(% znms|I({kXX|IlWd}6O+Z>>)d!1sNq#yw~a59`A0sz zR}4zT!Y;e3JG3V~ZvW9fOA4L0?`C$@chULlw582cd&TnhjOK#3pgmPGU4*(Fo(%k5 zuw&pl$2N=A-)7h+@zwf#L)}=EzDo5H`eH}RJ9aHiX`&}8(DF7~|CZOZvnP;@U7R_1 zqKesRs9ia12OktP|G_=H@pdt0LW3U3_YdWP+4s}km*oCvczcunZq<*uYqMjg+p*Sc z7Vw%{j>f=1n2L6eSplI3>rXQyTns*_Hfcpxp`Rk zWgx>ZsR{Wag zlL|yI-8#`+5aHeUTQwuU(nle;_BWhmE0G`i3nR5#p7p^4K>PF=WzCJ!OOxHHcu3f z_JQQR$=bJoy!IQWD+f{!K_qj}^U8;X!6>C+2x$WA=6w~Zof@xrX9({X8$i1B+RbV;S>X*}}%ati%F z0@k@owR!TKj9#)R%RQiBai9cRq2yXl=flELepT4kxF#sSy+K&V7BeJ27XaLJ5A#SX zkYb(dVaF0?mpO5-`4>Jxa>&M4t zSSZMIDDeEGIx$QfbOXe7DxVv~(z6U5^e1sg;~KelLDb_z+@>81Q=pVf=pc;Kr$n0~ z@^)R*u8S_6JlSId9b1=g$%uOTINkmyk;o(`0gV33TSnodW=ymQ49M>ZmK^EKB$_~z zd(TOxXW@#(Fybs$Y}nkN!c7y=Kbde8fD}k%4eE#pj>-~fG!;_&ZH$V_GgId*7(GCB z>M(6)$?x%_yZf#^>g*i0*KXN(vb3DE7FtJ}{rNre3Iy#ZeR6bf>F6m)_*z%?G~W=> zwS4+?4>Jn#&L()Zhf;BPpR2jb>++dgzF#w^A(2taf+t8Ka-5G)Ps}IAla@tBgRXAV zjM2aLyhzGkQj!y)QTn`!WcvgSb6rfem!RO*teQ-&SN>%+^=+E9F;!Vl0=mmyTRWgZ zSE&5HK3C1p*L&2kISysE_}Xa7DRDjYV_Q2PmjF5~e^YNeSu)|hN2B}9w-al`@t3#a z+8f@Jx%S?wXQQUeSiQ&&{7b;U>Wu&Q-|Ux8G+t!<1jN}S_}wZe=OaTT<$Z$`x{;Ed zCa15g8vN?~tI_NZ%C0I>ioDO?Wy$&16;tG z_#Vrdx-F{P8a2y?uz|C&fxfywTnvp?GCG(SI-mJ_J@sUV7R0{yV5)uWM=fH`hl6Qk9Zx2Sb(_K;(dfz3>rB}+khD)!>Nx(=aB^Eq?tMeN zIwOdV$yetl462r$mzfpp9op7qACR#KllJst?hdD|GwwGb{nKsAtleXYpU&e`J6=c{_h&U+6vGv{|fbaqLxlJEGqJYSxy{#|kZo@w%y@?gn%CEff)e5mT~M>y$Iw!_8$ zp73PMq+RJK?Q7YphGQ&&gZK*IHct~9kThJ9$cR5w1UYPngl%(@islSG88!`*6f|(W zQdWvUzv86{k(`KDK`@Yh^*zf2GOr*g44>ikeQOJw4n_#IG>o$6K_hoD2JSC7SqDhv#HHf;-YU!><_!r82|7*wTFBjP=j!VDZt&MRvWf zwfJe46`>yR@D`{*&GO_Im@$gK0sVNnKOaT)y;j!B=3zbyeH0amUKQx}09P*tc|kz< zRZO4-Mx^PnlRvuwb}VoYcY4J46{(H%!WX8x*kr^Lg^mh5Od5wWy=|oGs#^P z68W>_dOL*%bvqdUVy2t`2DNIXZ-%J*y;;?{@qiYsss{jF3KK@)gD_`BF=sl~PFT$i zaeY^Ktw^0uWO<%#-6zbYXCi$!2iOi}+x4S+(^g6}Yd#qzgnIPBChJc=%u{Cf6?>|$ zN@bEx2&@_VKe$@~SLmNGJ=S+Wmtk1tT=&5M(wOt>d`V-~x{X{gG3kXUt+}jVp*!@t zinRbP0>ndSRDigMqzIt~z%C}BxTSg$uH3>g=2({yEr<|z2~(#4Ln=&_A~Yvdpy_L{ zfJ#>Ye8NCL+=7Y{4Nxn$^iXwF{psbtS6VN$*tMz6X9H+0gSiHpI%f=zi{1X2c^}iB zvnsDBkjEbGI_Ky(6A^h2`1}^HBCdnTywewS1fS&XnWzk55rcn5cgV7PmV4&C74ODv zzV4di4zPbZ228IBQVo*++e^Um3W9jl zXy^XtQM8}a)$BXoEimFeX?(xyl>Bs4zlFH7zy|@*-`(cwu4}=(UlY`Y8Rs29pYPed1D+U&4G zi23t2746j|NnhA1xk>tVRo?uOp^|x*tRN-Bn3R&`M2FtB`sxOS;p+s3eKkNgCISP- zK_Whxi^eB&%G`w zJ_;XeKl>%<7I_EhNvkJ_Pz%%3&#R|bS-sDmm;;{6FL5H(V$DqF(XLi6p)$^MkSKQ3 z+qE@y4YeUs*(O=#)_&MWzsy$Yct>-p)z*uxpa?U(o!Z0m;`N$a>7m&k56;f;Q*~kR zEooF>B10EI^`W#P!RrbXKC7&%Vnsk3Ge+JGO3tPkUufO8806~Gwm4+(@(6Xct5Vrr z@I!?ymnALHhszDgTW{jCUWHdVjKkvwRdZM-V8vC-Cd6XJYgi)%H=W)=_xY2vJAVDk zx%m58S1!C2b#0_M<_?jSz9tuQ9%|5fvlN=PG8X(e`f*`!GOG6FgWOVID-K=mY9Ew# zmtLb>+Dle-HzEIYIO{LuN0KU;<@_kCL9(#l?HSjSOq#^a-L{B+&ZC^8s1WQR6ivz( zlsXi#sYgqdD}E}+>k$Ldvw91|UF`|{1;RXt=Dz=8&5fNvH}DY3E5)*4aBMZZWxHWh^R9B z%HOGq+BZR`u~akRf`phYP^7yB3#<`db}6~EaKDw@$=jc{H+Iy>)SBd)hQ#C&gx5A; z-!``87BzR4_vISp zW|N{f4{Jm9rg%2&8c1>!8*ps0!m5w9uh--OF@ED*N7*b+?@y6*j+g3sEy6N0=8l z)`hV2i*ZjONOU0wP;~MwdK73+uuym-^kt~e9xQ~xbX6&iqe;4!y#>^Tz~CIQO-`Qp zD6Z}Z9ekq*tb(yJT6Dro?*~1toF*^Nu&zQ~EsXTk#i)lMhYzR_Bw{BL@$yk9H+}=F zRB+5vgs(qPcAycpMRB7BXp%|7;J3&Z%L_x&h-f0PPnWc(_zA6Fi8?v=MU)xq;+CTv z%|ET6eK>cNqDJ6vfWCs0$n5B$_cM@#~FMZa$=9_`ZJr9_1lM zSTgH0!7|QN#0~T^;0XNny)YQ?0lE;7c2|~PGIwPh6!eCvM_jJhx>|G-NXzi;wN}%| zk#R2M9MtDP8;KcTr6?GA;CcbB+F&1-cPjZUR9|MkrNLJzu!Q8GA#JLTNjK%x7SI8j zN{!0=AfCgtzBYj}U9r77=IMe&^X3mI5~O?nKl%kO^cIrcO|zu&*6bZ zv>M_7wA?lrjr9>#)PD`KDPv&An`_L-Ys;Yrq4>yJWISKw4~Wyh8O;{^jX*sUFZuQA zpf1z2f09_jBr>BNVt$gAc?|oCfJ*Y-R1U=dmMbY+)dlqb056(FEQh;7eD=T`)L`FS z3mKi|70G%#&-{Q)%^96l)s+zt5hDQ)V*$v(CcwBo{30COI4(vbM%lQP^I>3hVOU8r zEr63Y1XlcJBtJO=N@3F4-}SN{AFtQ!Jw81Nj|2qBNTDK(fG84UT9TZDycj7E0Td)L z>FkPa_mnJ6uT~exzW1*k2j10rx$EKK=55Eo2ioPiDP2!yN-1+fKh;!5ND&2r6Bm6qcD!god))AO#}|M^>%nYkR>z;iRMc} zi^)8*^7m1Xl7ZE{v#O0nQo?n8F07Yr4Z(IX_9J8+g#ty(TxnE^y161CV>VXcxt@<6 zv>AJ&$4F>Gk~X@9Umc6InjvY!@lpaoo6E!KuR1)aDbyHsw6~h9+jGfTh?0NFyOp<} zD1tGj*Ep#>)|`K0EbvhVCyG?8Q)-6ku`8l|8RbU-aU2*&D`Z}P#t}4qwarv6Cb#?$ zqdW2?6BNI7$C{&eK#-W+L6EHRCe}1|K{YuYoumIeYQm8prnzEF=$oYnUHu*xshp=_sq9;6_4MpwW4jz3{&{|Wcqi5X>vbcAAil?|kP)QlMW*!u4f%wz79Yl!xU z3ki(jjH9WLoi=UT?Kzfn2I+>LnhB1G_pyDjPdg_)Ks-0`GU|K17#kIfmPBr;1DV_V zU?b#_w=7E@vi%TxPLwl@)Ej!H5E8J%8@iK~*9#N^<)Ocgek^;k|V zIeO1Rb5j*=NV=m|RAah8+=W6ylL3TUKC9)VkIQk62=O@B-(O8_#_0ibbs6=C)=jnb z*;U~XF9mn~QDeLse0yWx^f=UFKUEa3_4}>w(*Li9_zVZQo!^V^QDocRJVJuIst5I7 z7R=>mZ{v1_AYFIGDCLFw4Co3Dx!$TTL~ufABJOd?Ex3qzVqPVVt9^yx{nWxt1AIxB z;g4`sO_q>A*XjL!va(b3=|->M?^*1YA4Q&x85b^G!34`XomG14m1u<|>hVD`H(IuK z6iNuDPjL+|npB$ecG-F{?{WP@g(;LLLq;G3t6PlB%W~TVAEjAMvPGCwaH?dU=Ze*_ zx^zi~dG0!JV{Yl}Xkp@It|dg@r@{3O>Zpz-{ji0}l&UK_my@8$Dd>tH5gt|RsP=}d zIr4S6(@sqS8b=P& zt;XhBCN-u@;ES7h#RQl|MDo{aNvx{!?~7WhxRxryxw7>(FXsYHJRKKAEqG2;+qa{8dRea2pLff%iS6L0{$BDMdd=ys3mAG1bDCEQt^7M1VN(k zcsyPe<6wd`EJn&iRCuCW#j0L4+OV{0=|Ol#jMNq3M!Z;zm8$WZC9-U8+TXxKWSb`Y za$z^=2yEC8gx|*d-pmX$cRiSW$Jv-?y~E#t*NP2*9ee587x+lW)eizYni@HITjxW~ zh2$i{r7^;bI3%|yBqbP>PL*LgzU?Vp#+316d8XD(b#{ zG0yLncQc95>f7Cp9blU{z*Pg>WKW6-2*NfFN--j5>Po3%k#-dyTNQGd=Vq9f5dQ;n z$`7MfT)eD`AmlmB@pf#Ee=N~p{4PIB7c_B52)dXZ*OwGZ{&9$RV1(n)K2RTRn~^v4 z5kjf(0mKb9F_H+wAD`YWj#Qp6J6a@O_diy_BIzGoioMOaZnlev{O#th8pOgpP%VDM zB#R4Q#1tYG5X_AHmKqh1<+e|Sl5$%~AQnp`yy0&t$tepgvJ-(U0!jpy-V?x<64*#m zNJ7dKVZs#h;7JcD0geL!jPheV909Sh`HiNVX|?I8YTa7AcT&~l(_RfE*0zx?<49}< z*_)}2q?&DsLzm^RcUCOi&gXM8xxPOR_c_B? z4teJ%(T1HTJmOS|!vToe!@;oWa5Yom??d#1(Hcg_H?RjBEWlz1p|oC}>Ppl^kdyT$ z(^rLFmjKW6RWkmTY8gKMld7mT11iyGtQ(u`?rM&g#c-mH30M+tyOv{lN07xck2i0P z8fB@u!v`aa3ac}IC9h;!mFnbCxb`jvA4Eq(hT9rPmv3nq7Bpp1j;it1fj4MY$ttwr z_BkMt$C~1m#Y4A&gV=Yito^MkQPNac(CU~-GT~W)dPM|KRd4#0FH)ymx=2reE>~E1j~L8nove2 zhWEhPEGzd={`pMe>CE1i=PG&RqIH6#d+C@yxB}kA^l~~_VbD|5X<|@HC=y=tV?d6- zkaB6_zr>Lx>Yg|wtEIZX0ZD@H#w88clj!I5gnpy)}cn1tdV+=Sf@O8m=T`s8~Pw(s_LpcN3efKH2$%SS-|yX7HI^) zG%HC*B+|-8l04K%#|0At6zrNBS{ep8dU2At(?-rEt2s-4Bs55a|8b;bW`D=Vk@WIV zB``^b(s?!}EUA0-HQzS6E^zbjaj`)@X36H*8L$hli${xSV!f?xsBk) z+I8{0rw7Bs%FaX4mMq;}AEL*tn{5$zUH~7x&{_IQ;!$QBt&$G*O&;0(;7;xMWnnAT zA=9`sO5gMwJfODW$awlcXwoWeOdq9h&C+AOr%6R(d9x9%{0|NIc$^Y)vM4^gTK>g^F!3GDDyEp!KJB)oSlclT~5 zXy_UQIv{L)qG8b7Bs1^QhSZLYq0#GI^2X6FujyDcG?*L{Z;)?`jAIg>Uwmd$lvKXAwBorWUNPJeZW7xNY~ z+$$t=ed)UOdijN03#ziL*iT#Ls0tjeRX*C&ykA9xOq(#4(WQk{=jy6MG>hv8* z{0l^`jo?badi03?ewI&rbmI&(_Dilv7EpKEwK947n+E>keX>B=$$(ik=bW&eF)D+I zusqABFl~{1^VoANMw2HeIsmp~dw-FiBGoNdZ`ejm$9teHpnL$y;KIGQR5?W9uN5d` zyM>s@%<5S7*@BHD-i@3JoahW-G_hb3#ifiUH6bx@Od7Aoh2`=c>BS-t?omsUs)&d? z?bA||Ig{8dtO}s3u$tyIQfV!-yR@9_x5c#i`n4*B2BGzFjLA$y2PTfd{08_ym66#f zybnamHR7y5g*sJ*xkI#)@m1Zc2N{U|o!Te7v0I_;n==%$LwYX(4|^^3Zdqk%~%w2jGe<`zMG26#|d0Y%HC zXr6E(&z$zTOhih9xOfZaB1xMslAaQj#;Mfpd42%82BwT!S~2j(OO|JaWZ}F+74XJJ zkmm>cZWhP(qk^Wn5HV86N69Ej_a-{xu_fP;eF+(i8GluZfr%Ee8Xh^Bi(8bT;wgCJ z7PojcU>J&*0jcsp1X>PjBB>Ze(v4^@s%w=Zh+@}piM*w^$`c)i5s^}h?niR5a)A_? zH5{-6g@!UaRoX}#j0!k}Cv;_C36VliSt@1GAsnDWWsN;Sdck3!2M>I<3k$SRMXM+m z0}|bmmueT*$|Rhml*`2!;CP}F0)V^tfl|k|!UZXhGENNd@Nxu15~)uIr9>&Bnu#P& z%^}6(O<*)(t(=}ZG&1PSx7HCdE=Z+GxdwhBx7#ca*#biclikW4qgbIl!Yx}ViWlIH z$O&{UhH-*gqQI-+a03g1$`&GDLTGS^s}xm#bwpqUjUm|c&3(WwJcKDFTY*cXLM7wa zzqxH0^a0?-xU94t(Ic2dCFC&}oQ7|yuuTXG9^$!Nzb}UZ$Kx$=ahKJ6DFcYUR1Fan zN7slA3Q6{~X$(oBFoS0cs98{9-1Y4Y z?L8@}7@U-4qmaCH%Oks^q!`{@p+LhKhb6@nX$YC-#x8lF5DKA`$ldn?2x4USAp^)8 z2kO=@wn11ti12|hy6~S6{3F$eS3@#&^OZsihz!_0EeeJEfOunsAcF{{Qk3F|prv5) zvWkq-N_;bbs7fO)U+ zU=?oFzf`*Uu*YROmaKq&grxxX1q?}#gsF3y+RqBoS*4R%>0W)SyX{1ZXWqPU=IOOG zhu=t0AVZGK+1Zf#nl;(?&77dlZ5BGZ7P_EeVP$dSY9Bm#X~uxcZe`();q6q)6cb~` z-`KE6OKgXovVF4s=G=1l>?&2kCX3N^*KS+JlXV!a%K+RZcj`fW?4BA744YPQ%gdMa z)D(t(uZG`4O@ZE~CE7K#FL=r06 z99CqP4Z?ahvm`w8$5XEBnS2hGyILs?4A#g}Q}@gqpjVx6GQo@y?nI}By?W-^tqtkD z)jpbe#|E~OH^Hv%&^pT{HnVj_?ecz#TQ29+s!GYLovQzs%$-M!qESzJIJx3^k2gb6 zn9xlh*Lv~1y^YtjgqQMqqx4sJei^h>v;FzmgPL>={XTD;bxIBQ3$1JN8N=GdpOM?Q zMk|r8YIXVsJ!!54je2C8%2SIgcS*C^v$8GPB>?#yO*|SceYiv!Q6eTtNwU6 z@1Lbbp!$yH13nz~xzP&zUM`qd9(>}eo(6=_EQN2!!Oc8%c@M(3RH)m;nPAJV<0!MD z`u$$!bS&84PSFmMC988WaXxP#Rcm*YnglG5vf2Bp-t-u;r{(;#xhuhGm`$oVtVO#f zee4Qd^6R70{1gA_mB%AVWk*JWlUM9?DxOj7Ty_BQ0_bVM@5*?uxOdd?iMH^Dh*NJ9 z>b3`18E$mwNpC`730MVY;A_jr^_ih{!i>c&pK(hr<*_Oa^7b6Aj`RJr^fer(zn)nJ z=Z?0GFjqma0il6}fFwo)k^^eq!$=IgYC|`~fkO&IVnaIt?+hHJt>9Yg*A9(@#xVpR zF`kwKPp+FDy2o9m=Mr;yM4q)hbk!u&(#3y*W@BZtn3$THnFgIwV{^Hf+wJpC8|5B4 zSq%_QgYq*ejQ|R*9Jlk+IY;1_KI7i5u+8e{7yrtB{uzq$XF}3J=GSy<{r!)tv$cOu zqpbGVvDBY^mCuFItb_ObXA3+%iw}u=JYy5vhya1-F~zgXZt-l`O6nl%@Tj;NYz>0nVD4()Da4EQQ22uypqa01mv=Xf?bwTQB<+P z>a(d}diDd;aY*yDIo{$TCSoErGq~{1(2^U@YN)RU2!bKY5-b(v?WC z!DEmz=zKn-kx6JxzA()5Tl{%`0$TKsXMlOl`FEejmZTMB>8`3ZHriMq%owtQVuZoBXRk~vcX3u`aJmN4fw+beIZ zk0y8;(hV2fUB70xCkI5(de|usRv-&;3za5*hcEr+!>h&SFyReUr!EL!shqcNngc;t{Mc~nsT~R7o*T#9lT`3n@Kl&_ECD=Dw`c0~ z;YYjx4M7V59L0A1*yJ49ax%V*Gk2o{QduW z-{M$d>hqPm^uodq`Gp}Jk>M0oF9iUM1N z4V7YKBR1^-5?dX^!*Z zZQoo!jGm}3!<+joTd|VeEY!EJuVH~W7#D=9!VOw+ek%RuuSC@`lM>Ydg3ExOY@rt- zv$@Zs3t_3vwT%Ge7#>6Zqq#{ar%9D+kHeNUNWQ4<8CYYNt zRUU9d&56-sFtQy(Q`4&{JysXr!pI=qNJ2&f3VdRIT1s|+(8xhi<1tDXJ^~c3!mrnj zk&!~^c-*v%m%lZ@_^$KCyCpefJLM4XqhE(C>w7TS5ye<@)N2u*NY@AP$Ev2nr=f_; zVK|@y6UOS{LNB}_aMix{Hhj^tS3c2iW|*8&r`D+-z>C113>YY{>E#Rnj3q|m9L9Ty zm!mtx=cF60Gar+h*q$4~FS;uTG@SCfZd@}^_i{KySbMA`KbANAj9KU`~O6*>s*iP^Nyc0qzk`H5fdi&brcVA0n7H3Pcm6jfPKg>17hl z`w6s*f}TX>LhfSEKn?*Nn?hh1aU+!Kazltm`%2D!w27KrGhqBHN|Ee%Z}wPZHnT+} zp7>+<19+f{3B`Bxmq#;~j2t1+5X_Am#UY*SlgXsy1k!AiWZC4CVIi_ZVo9~ZrHM07 zCmov)Cjf-t8zCViHW1Pq38XkcBssuv7|w7Q3>Y(m1`m+`!KC^o*9N(^xHQ)mxiphZ zYkq4;U_Kd(mM$-Z3BIdXvo9{|FE1~O%u4REvhu3~@K@=oueVoSet&(d%etz&x~%zr z`!T|zbdfr7_91P*+$B)k1Qn28L6Hlx5Wsf8V}O|ga0&n^ z0H^|}3g9e2nFcsJaHMZ8i5!q&WNoL)J8;3Tux|C#7_80K`2D76OI-CqJ|303i$ks7pxiMjr2zIhOHaj4$+R* zj@yoo9V9zA3;wK$vx)GB`y>Cb`4Q%a*AU47Kn*Yv;CQ5G$h9M&B&3lh?a;k6_p7@R z?TFNgsuTSMXoVdVj90M_W)7&!L~Y_IA~Hh#v2jB@!JrP=j^mD(9dJ7%6IT;$6Z4Oo zAGRS>L%svZ1JeUo2HXiS34;Ktz+M9&F2IH(+Y!eR?#Sc_f!t7jO0h{7R+bDH)=L$ zY%uQ}aY4pMTMqCC=g0blJ<=59F~E7Ce831LvL(GGW=m}1Xjl#HFINabVH(^d#bn|q z;xz*01+N#|3?egfGIU{aouJ?3H{Tny8!$G|Z*V#scfdRA9ZWc=>ri9^_e70}(u91C zMB;o=@dNz<`_b~F&5!WNfB6QaKVTkM8Nfb3D?ly=q7KmiL?nn@5beQ+7#s4y@<`=KpCZtYxDMAACE&#- zz@=Mbg?hWtWUy>PaSQ~0(K%5gMCFA0B6GrZ;K^!OO(>foCq)0?te~wZt$?W!RN{<^ zwiL)#LLcUcu!#O5_Coh!upZ2Qz=Z({@(IWQ2M7-67~zy7=@I$}^a#@t`GW3gVUT|AagHOK)DdVQ zaEx%A$e*}Q>`$I5kXDW!q8}#^rykev@;G`OnUCfEdK&$&bGMf8C8R6NkMp;mho+Y@ zJK5;xj8DbrN|9Mdx~Qd^&`%Z6T{Y&Y=S=UVQtSZ%I`Ehu3wkE z;B=$3S}k0OS;?}z1jZF#o_04bkjEVs{GX|m)9yFizHvJa`g?q%H%8D(_^OOe`F6J@Z|j!uO5(T=YJ>Rnzz3_6x*0p@e1XzDP0542x`~mJ~e{^Q^ouJxC$a^2-jq3QDDN&S`+AA(0 zzk*Lim6g=%v=%wJnvscob?Gbq^gOLJV4pvA_KPRAP>~V3-1j$|y*slRO_9w=&FeJX zx5LTc?cyc%+h2bD<)f>)rs<@SAHO;6XtXJJYIweHcNyVk_m$q|y8AvHr|(5$EHbm5 z>HXfVZ_}gTSUBx6q~)SmLY>D@c>ZAWKuwdCg^W0l^E?m1#^ON_>QD@S!H^J9?bVBz zaI&fAg1DfrB;_?x+;44OIv5%``73Y))%HK4oTiv-S2tB?6AR^H;pZb&azHR}6%^!( zKZUAr$p1jHKn6doeNO9!uw5)RY`xP(;G*vvMsF}slBeUciOaFB<5qmBrK;HUZ$h)R zlaKFY<0e+!{XF%hb)>B`8ebZ{OzK-{%RXnUy2|ewsRT7onceI&SxT9|woQ5S zTl4e=q&a4d6hGE-yhS$r_DBlJoO&!=n~ zL!Yrse}1l3bh6dE`Ti+z{wdBgz)@>`R6?3hC0N!Np}g+K~-q^INDAH0=UZ>?)vYO##g|a=( z4O0Y((pm6~EK+-2t(mnff>jM!X^I7_4{-PgI2CnBwm3c4Z;&YgE}0qw zrhFXXMb$*h7%r;aYNYC*nAX-T!Kkw{s=v(5CU`k=E-GWGtj#LprI{oBxMPnu{>vwN{Hccc z)|-U4Zf8$f2JFjNP>lT04CE>~XW2W-#0C4Re!Z`5wFQmIw6eamg|0&F8nvq|D0b3N zlW=2&pMNqWct~Iad_oen<^40K9}A|}((M`Pb!G3|+_Wn})aecU*3Uq)_}c&HsZ6nY z(rXqc&U~F>v2x{!&5>g@Y{0=ueM*&2CBwM&jk z(XLhX*0Rs6i|H;>yPUd_bzeZ6l}{EieADX_lw+2%1fisYci1uHNbM3s-9shGb6pjP=q806SNDMXypXzzw!z_*v%;bXT*jRGoV!i|yzU zRivjWcF+-pp8E7>(Zzii3ifd7?$nt!bjjnG#@_^?Mg5JRJ$%=fvTfw5^kkCE(X+tm zC(pgMec2N==N zQ`+s(dL)a<|5`J#sD2=3qfOMxPq&4?nAxjgbx|A5SPn(kQby#8czz;QayAu(YIRDm zO(&A_SSDw0B(I~zKxJ9)5YcjXU@32`d$pGcJ4SoL-UCa*XtPr}cV?`3`kF&aDsPJ; z=g>|3vG_id#|TwVM;|LsGnjFWN->+Nc;j%y@|g^Bzuup#p!as$8WPnvdb>QfRiC4g zP13DLMP!?7hK>AV$9})A1E%FcrOh)V#tPTMFF%R{;J2Ds5S_}UStZKWO`-fv(u>f= z$k$DM`fqpIz=f7uy39wA)#t18J04e0i=r{td5-#GDtq@*ax1JamW1Rtc1Nz7I^Wl~ zx;zyH!RT6ZLF6Y3rjOt-1?_>_W=WD(+UjlpLFszuXx}cO*uvV=8jH_D+#J9EVc!-S zwYPE{8Pzh1*da&6CQnJaEj2kPbpgeU>JU+m`&8}{eR6-6+~r*MUpFDn_0>_}TE*rr z4}NT|d0I@QF*P2s(w=+-hMXF@L<0@4GTovIuu}f=NwV64+zIOQ&bAJ*?Bxq=pr`Ax z*^_CKS8x^l!~!fKX3Emd$~cX`jDR5P+%Y`yo6GeBeq#m!5m_a8GQ&9KH^H1Ir5l8* zV|1UQ$4vt4_4F^T;K9Q|)A$9DDf}KWW$jUv$^DdP_f*_YWm?-!^;L@4%nIuCOn(i^ zBfjqMchdBRYWN20(D2ttozQZoFa|?T$Aphn&e~9X_ZpijyX3i5M$h2r%TyHoncrV_j(QM=%|-adoPuJkO5S*$22C#8~>_npTNC!sKa^F(byVMuvOir;s;XcL!;mt}KDeMi@$G?Ls~1K+_92V#HhrlnK5`_dUS4p_QAyPBk} znYX8ypK*?DN@U6vY|G8AV!#&_ru}8{KxKj5=hOJGo;y`99>SNHT?B6lcS@$f<$77^ z%0=faiRr8;?Dy~@_vr8aRFB-;sM8BUtvv9ive|ZHF zIyv3OsI?ef5e~`1co8WFqwxC5(F;5*7_nN>P0L3fwf&bY`*SW|BQ)1#!YrFU%hs5q zfuKe%n*Bl70|Wbn_LoL*;j^ZhITd+h5q0DD4)0~oIToXH%DlOfxVToaI;57$6Ii#59tD!?OevY=eg6i!hXGfkfTM6m9Ye0Te zT;SUt_&pR*k$WYWGQ`6(Xo|fSHWnWP!nUB4aU^8KTm={nM| z$#vhJqvg->^0`iTz}BKWg<0o$zeTlH7Yew@vbh!1xqQ~?dVqeo))0?N;ZOfT?bKv) zn%W&5<3Fpt?o?S+cfRut6zxSv1B<`yd(DpR#-y@}&-+wvlT%jE`aspI+P%~uDrJwG8H;o9)?UMFfNXc+ za-0AY)v%TLm>eN?Cg5#HQgA{BBM^m_znO?<=6;|w8lbI9<0cuVIA+8Uthx!MHGa%= zMqE3SwknV#`o^xYJSpGqs_hSXze~w^zi7~Hw z+V&&e!$99aj+e*Z#|l+l$B1f%Dz94J*g#ez^m4yfotJ&jCR}NGh7) zj8H2Z?fOhR_9L|h)0*L#um~}1))2l7!qhf5+}DJ=qs}|?!ieGJ5Kktu8g1~_6P#3t zMlUe#9G5Px9wd%?9vZ;?2cefY{CC6@{W=gl83CF@=Q;^`YfnMFz~)0g!Bf9E5#APL z&w!8nrf->DxF5JrJn-lCbRDEVoaq*018n`sOR*Yc7mQ`MY*P)Gwj{$xhc8An)0@i= zeNa~4&T71B9QvnRTS2c|VY|T}Xm;ocPu5GQ z@%upZp8r0frWk8WIDQCstuN*TGt_tMWV3nWX+uIDegr?%w+?K@V0eHN*c%Qnn1*Wg z{Jf6)+Ar=`I_%++O_?ifz1aWF+1!!B`bCM4RfA;z`dZKhLsbsgu1#$P?u|e(LH}%wvPRYLgT)k_Km% z^Kqost`0m^!4c~iF(1hXA|x_Gae3<;)^kth2M=ifczViJ&O6*CCx-?Wi#&hq$MC%*UU-0w8zp99HTINSQkIH<#_|Ti!R>l)=4I?&bkS5V(Pw zscisH?DV2c*BFdR_9jKBKJJbqj}IATr^DVJa_fM02u*!A_bus{@Bm{#oWB`1Yufgx zun{+APSM3dSpu653-03k9Dqc;@6%}1qV)PMhj&cDSD`Gi*h-yhJi>ajk(GP_C$Ty_eXnf1hlh`VA-`cEM zdu)8X)_D?be;*sdO9Q|ruJWU7z5dvgS9^23L!F!|ZRdnY&2=^;l0@7#Lco!}KA_2- zC7GJvUxTsbYALxNieUXm()G4F9)r5mJ5hYVmX0kle4~fwKJvH)#X35_o@4CA6mU$+ zZOk68WNLUkX8{WxIWViXhkQbxc&pw5l>JFo5<1)#{iqXwhbSsBe6S!V2tXA*#c?C$ZGBfw%Eh6RL1~5PVA8 zRw71Y7y(1Z-8=&cO1R2nBpqB8&yM3T)4Tg+)yVD&yq%`2vxgIl}C^V|kx_QW%PX~W#B&f@OYMxyPdg{LH zyx+b4v#pI8-hudDFf@4Y*uHak1|D7~dxmPK>u9e14m6-?X8fMRb+7B8%Im*B`rZD% zHxA&$u|2Cs6r`?o`%B@r!c%nSLis4j^d& z+`b&L?X^h&#~-6eQndOpU+^3y{e#LH`(1tVJ){T=*>6cdht59c0vm|!n&sLGZtJZV zlqa+1uzR&}W2)Fx_YONBQPAv>bo?)X(hB`?KfyJ1lUcn=j|H=EC^+?5!#p|8d)WGe z&3n)g1Vj=bm=rE=6KkltD1c$@SYFA0ZS!~91MgcRC3mhX%7h@WVgUey&@(U+_>X-D z>w<}p@94c#%1%W56o-5aP{Rymc$y4ivsj$d@KQuAP6+93jofzM5vJ2PqO_u%dDn$f9-w3d-of_>2<4n-~REtSLgfS z;Pn^(KUsro?SB|BG9o4!4j_~>^D!N_$0hO!cZE%O79Zz}-S401x_17;nWFeO!SSE5 za;O6Eot`e|St0urBIk9K0<&k>_7aGFlka%Z{^)2AhXDMFQXA=67waTP=R8*#j!MDHkIQMFIWs3 z93NS_*v60VDV9%^j-i8hBpzIj>6n_G9U?!3N%6d?I`L2R9fgT<5myq7S&#-*b33BH zfM6P^lmmmW0j3zSQ46E=I3M9xw%?}IKcQSkHV%?~!-ikoumUf6J9r^&x&0{DpVe~XI&k$j-`GJIlBWliw~CZ0 zRYM%2R^>+@6UK|y)<5<)7XGs1NBTd%AGzQW>+(I{SGJqy50Ces@RP6%<}~nQ=l?D1 zUUPr(Aq=S8H0EdNck@Ce=Q(s}-*-l9@Q=H*(V7$xd370*sxxkn0O&;~?{o9dlPv6o z$MG(%*4ME#f35j`NjO6=9n$z~LH8sPUxrj@MGsGo$)=d{;^TZL@jxf!bD7@OvzKJR z{G{Y9Y$4Ie*)osuydu7l;{HWGJH2`+wOa6*d^@WS(sn>AG6{dPbu6`~9Iki37*wM$ zrWD>mY?tEgtHP|i!*$j!89H_;Fka+O-v@&9Vb{mTiE`dReF6LhHLqJi4TWt=CqXwm zirTetfYHh~XhD_ugA~z=f`sCNRNn#g%%zWWoG?$%`t$O5ggj3)**n4h;6@v z0>cw?K|U=%Pqi-*yRX#-hy0>30znfL#f(&WTv$*eL6C^!XEiCkj?sPl6TmzI^qJUHUbwMDO%PCQT2j zjC+f`hKm|4&#m1RT33dGt*V9M`&+*>C+g$X+gZB7>$lZ}?hw0wfyc)!^QP=cP98r~ zp?==ye*l_-mAGx~Dk)OAU$eG7W3Iu*K1S)sd5cqRu+Akuas?88CHy3?6lrG3vjjmD z^)Fv~&aeLT&cN&-F z2+$OjYFs90v*NM@T|=zt{cQ;+mH9qDD7O^hf9DdfW5sX1&HMqG-Xh7cI_SIcFNAdw zk9X|ChzdT$YNb-iBFwH>GshvVoArC$FlcPOpvon#{oQiamS-EaDbNvA@2tsWrQ`Rz zb(|Ls-a6#MG<)P|IV|DnmeQL&00*DRZD-yTtOuC{u_pP8Zk47UiA04Ps7EmdjL}G* zRoo;vpd`);T&cSl{yxU1KhTvyF0>ywf=7H%q6{FJe>ptji5~&^xqg&Wig3Hg5UrtB zQe9H#>;{L^Wk3l=Yq^E7W3B`QXJ{9XFdDY8qYG*R7-dUlcjPV`x&#uvyg>c?OZdou zP*h)XR@_*eNRH(6uo~&e#f%OkI;@$3^F)!*|UMyuW~jK?*3tpTD^Ml+jn_?;Y-m*jub9RKJ<5~ zY##C~w5gJXZG#dPjs59yBKioc%+3aGWn6cAC9IsfaxT*6h%G{XJ}}cLoJ;E0cNB;P zPNlm^Omj!Jb*O6Ty|5DLUH+%QiwQLUOymLpwH1vJVjEYo5`!IqiGErfpn1gY02se% z0Wk8cXbRAau~j3t!qE z{2dmxyw=+(cT4y?44qK%W#m9RgT6R)2{w1)_I%CzOtfNrWB4%z!Vd^H(_AHwLXB06 z_Th~qecoOt`(aolMx4>_)f3>qF9b=eA*6G3jP!*{a9q|mcDeWWL2jtg-^^?0kW1mn zA@B$td?`;!6js4Meju5?V*we|c9$@q!pI!k;7g=JkTq&kTJW~mz8i;;vHJ0LEdOvB z8FU7w->alp$&~IISZn50?@&Z4V2~O)x_b=}swY8O2a?;((_rM0YmQ5Ti zeGeSoB4K9YaNHo7%O9}3K`PtS_*on1C`uTEuAT|Wcs2sZV7XE z6xp@>#@aYh0n+HM-bKWsuP$MReQA$(k=0caDdf~5z4 zknSsH3ZjOf*|bh_XH26m5&N%jEETYaI!AOW)EG3SxUd?K2M+r`rUU!}%8~^Xp)%e1 zzTpcU)70Zyze3rlWi=C&FH8y@Okz__F|NsKCda81(pREs8J4ySqrQ>&Salvgd)SZ6 zaM|G+I`_PTGI7Z%=?{Smz{F?Rir0?au*G5y>~I_Y1_H{91h8+hgAxX;kY^do!-O1k zN?{2W0Yid&wKwpam4yy8W)Dl&*S5S7;AA}7gpv+1RQBrOy z;6rH|m0mNfV^EoshC-ln%N$VM)k=_iQ*8aU z#aA2PS@<0`!~l>dMY#HZB4Iw=KlZVCT7dQ(^0NM~V9m>8>{#d(dz*j`Wt(Mpm}h0eUAgYusV3=<`Lv4MstI_^zoDj zK4su|U5dNwXgh7=HjOK053sPXyUw5n;;av|+uHs1vhI8YX=HYuY?H=e8!hT>xHadm zd;CZH*qQ_l?k{eWSK`X4R`Xo4^@;qPm+@D@0ta#=r=I4M?Yj0F_Aj>h?1FcVyj-q< z=`rdp+s*oyIhYpqe<+`Lo*KtVPLy2wkpl2-U$hykzpK>LdVi-+#WDZ1PLm6H;9X%> zweTB$)t5G*`yN-BpW|Qz!jtuvkDRzRwdbx4V-5;akMbFv+EV>v+~D};9V=m z9HM7ib|7vYVgiueVsLzLoJWr_YsLWd#{xYU3@0(wJG;|gU^m|GRRGeT4f;HUsY3FL zWOFZE=lTwNpKH7>yR&Cg3sZb5ZNP^)RjiF&`zJl+;K4*6;ZU;PTxVlO0P}AFVkLX% zV9X4xaeu9drv0z(f<_5jU`uHrH|I~PZgm52@c?7YB)j0mNM4yP4d3)!OzpXThfa|h zbm*vlsRARxg^?45SL?2Tfp9xSn2mkW4p1;Wb?C}(v1-XuR5L!j6aq`zJNH>i1>%5z z6rikC+7q*0wRo!lc4fc?9`)G0;Vwa_ZX3QS0r9~PRdP`v92z}vPuO=iC-*#$I^~7R zoQ(YRp59nyoy`SauOn}p%Y@2EU%LVmB@UV}8a46~z|s>{FrYpYCZu;Tl}5_-!;0Q5 zcY|CyU^cafO#(f!zRIcy6_cQ@Ar<}ZuOw>H$BSMCGeB1Sunyowvc#qG9X3l&Xy~4M z=Ck$~;6sc3ES>w(+z)>5ru$97#H^X*X7CjYDsV3CyWk75_{_t|iY~Lc5G0#g=o!|f z^`7$pend(X6aAiD=xaITepvy+yJQHceph;WS+~v9rWBi^<2b;T^iQ5LSCtw}9y8ok zT7Fe~m)dXnme{y!>X)r9XOpo2TD1e>105xZOVS;nl)st?=Z|@t!gB*F&h+R2^8y`P zDQJ@NEFqaN1!V5JjKrpUnJz<7d)Dv&8wLw-d?jhowQL&w@?FmAFB?mM?*xo}@OABq3;uW=S0vb!bb5!`Wcb7zMcw4_G=O-Nq(J5*yC71iUZ^rF`?lQ z^FJ$e|B^@@isgb5YVZ6fiXal3xyx_m)a9x`T06l2b!3TVeEs`$E$z{%@BBQ#6Z)+1 z0`l?H;11L&Cd-W^Xcw`qAAoT>PCr&SiUQ z-ypM2(-n9;#oqvNv4thzvWEH32L3ojiWHK=02%IqTpB~;JxuOyCnQQ>rLKR}j_rJz zGiHQJrRk6xyW?&tyQ-IKRxA>|79cfZ6*o!LpaY3eE*2^jM0Na)3?RV;Nx;G6Wz4P_ zR*!-@kPLw==pYrS{(PJPEZVAx<(W@ueh~2{IzL5YnTl0j*j;ia)UD!4+ ziaYBT?L8stmj7;g`p^wR4VU=<3^=(~ zI=?c@7g88FD`pO{iBw-kT}TnUx~AX4eyJ2+?TdckK2u1*kf*QS=0D5)WgS)|MxHuo z8`sI^XgkO9nR7bjVEwZ|3zRp?Z$dnOAn{@7@sr4vdv(&Vzdq2uK6hpYMWaB$Wi^;P z(juYhJ@!c>yKf!QBxxkEZ*PB^_V+hldK_YBbqBYb-zt$BcHYMqi|G5m?7f3}{#xIo`>*1Y7i8S5aw`eQ2km+eP;oe{=HioAsxGB5ReM?e(J?C@}^Ksn)tEl=Ok|P{- z11}?Y@|Z*({f}SMbU0k9&Q(>jCon^Nw(Fzm`W@rHQ;p2fE*RC`k8tQ zcb_<(7b%-Jn}%%<;$0y-Vs>^HB6r=(m4p+y^Vr8Y&wzRMv93Z=goB1Z?p8v+P60O7 z3uZ#+9rZr-&*JEtGt*+5DOZwqKmM){{;l5H=TUvEOYCh{_=uo?R80MXbmKZFphs*^ zseecODYG=PQ71W9B>o7+31t^~3xjHE=b_MSt^kBjw*q0^sJqfEUcGm!adNV(*n&Fm z?taft?Kz0=j5My8rT(haNQlRe;^=}AG6v0@-2M)a-RL->cxfeGb`k!MOFQMMQDOhIpE{4eU`?{J{Tw43qjMY zFWZE;TW|9a)yj`FVwblSMuY@6aQHSgU{Og&v`o+N?ZhbZ=~>sz0Zn(7|C90k6m_k< zE>JBLd{EG?eS54TA3r6O0AU5Ew)E>5`iBQ`-(Id((K5IX+r1uCzDWubQNPvWd3Rli zvsm)>T|}X8dp{JFZWCAlxF%A!3ps69ftlS)&k)tev31xSbaIdo01y$yS1{wa2jT*( zUJZ81fHo)TU+OU~_5J8<@R;&ioNK6pIv^OK#7i$wN8su#u&&g*SoXwofT?wv8s>LF zF0uj9*u+*=+*xeB>~a$%TI@DUf171=Zd>46~<}d*pXHx zqB}rkOUyBD8t#PDm%HKLOaEzMPCP3|A%k04!?ymqPQY{H@37Geki;JX>AS#^kfjRX zurCNU2yD?)Jw5Ml3x;^y7Ui}G3D z^_UZNZmu^Ky5}2#8$5XQMIp*y1Hl>$3&6*BY*W+-7e0XRA>Afxd2sYHic;$n1B|gB z_*0I)VUCA(Sezy}(TX;}2=Sfz#W%%sFBpy~61U4q*D@tpKAI)1h};m&jd?mp8e6CC ziEzDpae~I;Lco^JA!pi0F2B-qX$TN+bMVxgo<9h;Cd!9iqfotABCzI=^jn3))uoS|2gnq-c1hd0runCVB%^@KW2e!QndnDc# zR4qix*7;p}FrTV)!Jv_^;_4mq$qCTy`)G)>f)u`nT+NQ-J2L4AW#yT0?C#8u;bC9h zTnzUC+@&MCsScUA{GF280ElnX-So}^xcB1MBte{t%uza zYQZc~EE^ThdKR1;X@(*yhBJ(V? z3;Ef$1xcIeQc}y3um+EB#HIHwObC@R3a?m|a^Mz^WR2@D6)P6*8Srn~Eo1GaNXrr6 z^CE$juu1H>i3#eXIN*9kc-Cg8wNb#}fchH8!@P5eQ>t#Mb=M^8W2-OO`Jj@YqH=)7 zXcAU}3i}R_-PSF;*Z%>ww(q;hU_gSA3os)A88}SkiW4kEq?*uiT~16WUx2*~$owZv z@)ly@XwvWQ8^VghS>q$m1Y^<_EuS+?|Vb zgoO1m#HzQ8**!yHgtGOrSFc~NW~rk>Mt3Pn4I(%Zqmb1$-2tXsZ-By3m`K-7VS^+bJU7(h49ZP5tz3~r4fP6|FM_T;+2JJy;QA!X@*J0=QKm_Jcs}LKVHPoRR zg`v;K_O9PjfBKgIL1I7(7$Nh}2WSyfJ$aE};6U{&6v4NEz=7UlmEaQOt>(^)*zPZ( zS3fq)wEAK%a%$iAL9$1K(L#j*N&P1jrNv*@|KEZsTyHnBy+aADsfsl~PDH;VIE_|I z{Aakt^cwlsrE(L+P!$)JDm?|Y>k9tqk({s78_TYogYicnw@wlZ7#1$-+c%- zd3;&OZ6Mr=;dT62c|MTHE#kW^+Z(4jTe|O6(41-9v=x1mU8z1 z4$4rkMmXxQJO$I_gCiuYf-*N3A*cDh8P0YeJK?{TW#Mn+>D-AC)^Gb|xRJxJokO*# zP}+q1<}?68`c#M9`ZSRTT(XxlvFa+$G`W7NnuyXtL#f|s00)=N zBTKJjZk-P3$Kb_CnUy=g!hn&9i7usA+_SPe(z=YE5gP&Ro~x#vMWPe%OwV>&Vr%2F z+oq*mT6_^>ww@ZNYw~UNta{#VA;|7hRjOdy2BDu>zXU91!-8|vzW?G-RyMzP`zO#e zw@&P}n~Q_;%Tn%)=j6!Un?rBaCYG|RKI+Wo3!c4nV3q`Y z8G)4Ktg0ogixe%DTfqf^m*)k!7WBud-UZ5(xT5YJH6|gWJG2NO8aZ{ViOacZP&oND zmZ-CKo}J$sp=fL?>6&h^GH1-){P?CV^ysA&)wj7)C&ePY469gzqrchv@YQ!MoV9$l z-7MGMYxK@Wa(GPX^|9w~cZH-e>*68sBp>I~`!~~`fQ!sZ{E!g0=D-;yI+DN}RiBip zzyzxMG$W$D0O-|r76?BGN=p~nh8p<9bQ|>5T@FwcKxwTKXS4rjeN8uMMg{#9$^t)pqI5QA{ z#3M7hjeZLlEz-MN%pnk&qZoX}i7JOJo&`Hn{});Q1=N6pb2?#D7U-{De6lR1JaW}S z@y>GC`Ic2OcU_lJr`{^JrDcIrh{vnPw&)H=J*<)nX+lWL^vRY1-06jaYxLdS0S-36du0(2@hgT9^Xf;nk#&_Fv_o{(^MA28v8-jn;X{G0OOm*-csX~^aH*izf5-=N_rtEuo|7i2vwYxbwj$>qte&XZ`;hA!c8E z?89|X-8=|_o>bG)FitgU*Ov7NwY5ddI93m{@&}{Jx_M@QLXUeLfxAjr5UycHHEZ-c z19|^-bBPY%1{WQSQ483xm=e|?@gR+o@QnIaVA#i){L2DO;oJ0c6Pi{Rt~|-hC-b>xW(4vj@COk1=jPe)FdwzPTW>V5;YCE z(S1-|9S?SWjjz<}SKdy#Ib^IVzb`O0E$~UqDx>B#{eEBaZ)#o1{BtgjJuSI(2WK?L z*^OyPW?dh=`W2I-IL!`D$_7NNJfdjN4rgCqoo~Y~n0y?)G^uj>+s6 z0jjXNMmnOdRmO84ukS%fYe+_1r=u<=0k_o1&aDijmi2TODkhQ+0e41yY}=z1Jd8rS zXyFhkuN#*v8__Knms6V)D<;{Y$jh4N?x1Jx%fH|4eQrk^%z}46D+KQ(A_buVkZA_H?B9U*U^_A} z1YF)vx>uJF`ao=6`IL%jFH%~0>b>a95vF#%GKaq@S(4B8a;A0gbJ&20g84xi*X>UG zpsE2mc5Y3oRFMf1byGZj!E41v%WYgJ0sRB*j?KlrqCZpM#M((MF}*Fi=^~z3EcN8g zR~l5dRY+c%qcuPfhxvdewb*|vvK(VpoGN~Wbb(><^2?lepuK6PyDs0y*ADf9oXIW! z6tgoNRVxBnb-28HySQ%aUpWD7Y#MIwrKh>D{<0D4^4vBSPo6O7bI2N^%VxiIk%&{5 z?q-=n=x8DMZRto04je927TUs0=2w}AfYhO zj8+UH#95}KX~3VkFo8f>K0T1=kBX>b2rM&a zP&~1OYzv@1RxfNa8MfIBV?&br9%vt9(0AEPC}=Mx6R?^LQ0{J3J)3=Bx%8nkN!Ijk)e&M=dfWgU`2Y#PelBrxUNYpq_wMArO<*IJQm=3pjWD8L!u+Win+Km_hwjBDb^JgpOCTW&ObrKHIXbLL#?A;m zf0Q>gx$-Ix`7IFl4VlXou+1Cl`Zx!-*mBBdLz(GRWIbgJNCv;BBcJP+;Bt6yer7ta zV9q28M=u{UV~{hBD&33_N20O_l#|1Q78FQCgYy4zL<2G&OBwVB>Ec8tuL@y(KiuuB zx7-1LD#SSQg*B!H*%H1Wx0%nMn;d~}rG(|a-qP|f?~8oqFKZWQE)2u|=TF4TE%ynG zeHUBvdknYzkotR%OI7wd!)&~xjhMzt+4N*hst0NLFhB&>rRHq{94KBUS#XsZYlI$I zanJ0{Tp{_9jY2Ko8hYUs1)zOVb5e%?r~Ah=w|hEMe`~4ATk!e6fv>^iHQHl`pwQC5 z@jJe$rrW#!fJu_*6!3jwQe`?U6y7yLfB26^Ei;^1<#e1=~h(b`maXvMgdF?^`Rru)H;A$fbDVyT{OgJ~)bx zAw?i(I6uLv3IM9Gv#YteK&0uwLn_AS_t>h$C{Bf*8on4;D{m0nc?=miAOY}Im|j#_ zq4}S|-TG*GBHl=J$_5h|n}d-}yH}lY*iIwpOAgJo^eTs?6%eKvgGpvU#R8jr!p~5h z@qCJ`CZ0r%;X->;fn--J^U^Az4sZhCfSWBrfz^KxE0aCs@<{K|nh)Q2)t`#-%-R8W zSFGAvU~;vSgPcGXG#w)s(c=x8v4b{Y%$gLmpJ?lMT_P9HI*4!)~@XG*l z`4@srN~y)vQ02l7Le1P}0$+EWh6i&ua7IG0d#G8h@94}Ld1+kIc`;e}ez5Z7@H+vs ze-I9DAKwJ>gjq4v@)8EEifSgn!Qg2^Mc0FDlYUt*vm;=H&P+_G20CqLlCRm(OXZV_ z0#^Yc{#z$gNnvBo30*S%06KJ(1gy~uF6M-*;Y+vBRQHc@KuN;72byj&OPQ=q%_l4# zspqgkS_pAKM8d1vRY^%#05F(J41TS9zGd zj_F;|WTvcl>gEYfM$AQJuDPom?3&qmy1Vj)R5rzYFkHhq>p%RQievzKlQjsmvd<_PMbv9`%>=ct&zdB*kv0 zlG}b<6Zu~mC0D+lNSpIOkht9XN>-vrj(ywZ*34hbWU`Jo31e|d9Z8x!zW7fgsW5H} z=v;niHu7jtw%{8pwWL@TmW)4xIvYD-IRC+C{C_2w6nwKIT@BZ!z~Sp;VZ_kpYrD>^ z(}D=T|DBDDZbmZ$V0RKaG?F{C#;m<0>T{j%NYg!r!T2nj`7poml(_n105ddyIZkb~ z+B+wJw^wUGE_s#>thBK#{)Ug1bh*3?7c&7%2A2veIjQ|Q$F}6{FotS2^H1WYTweBs z{xi|6ryQ=Da$!A$^ORovyKA?Y6OK^zJ`auY6ZLr~>V4}h4LKQe^}WwNAE@`H5AE1{ z_vQOIk@+1SUelsPlVh-2;2@inzb0H6e);+w{4*l~NV}V1#eq}?gXzT&aS7)en-Md=u+hz)w-lukI$HN)wH3;oE zNerL8FeL#FpUu3>sBjsX3*D)Li??rG@udz?i&u5tpM<800?QhqM7bzkz;{O?qq(O(>aEprpHUp0XpVzC%Ccko-drHdRl5TrSp0; z-hTq}h^9{FM15%=^RhK#1HNO<0R`hX*&u(Sk@qNdfngkO>DR}B1NKkZxqUPZ{fzvx z+vZH4!6&L9oRu)LoY5~DQCDVXcS8w_$6eP;#yQ^|pmm-m86C;LWO1U1Mduqx22h~;r!qFx>sz}Jdcs5#= z4ZNzams>#3aSnJ*PuVJ2D@{;dx@$RAHeH>*k2I(O#+NUWA8mG%ET{^28q&_NyDvg& zvuq>|8e?G%5))!2e=;X+aMf9NV!vj22P(JOh7|Qw;SOzOZ)T<9FWJVq@(L#H(q&-Qj%oBZMdTt(3)}`5PQ)nFzZIqs8 zlnjjBIzm+Sx13{CvvCgnR93*eBaT>N;Q$Cwh2wLB5Q#x}3%pJP5eV;97%xHBAQaN> zH#~6f>^lyKiM(0{dhkJH+8Me#N*5>Jzy;z74R`U+$&l(N4{ljIG3-1+ik?pB*`->T ztmCbb8IkT*T0OpnhQFUK`e~gsX{`$(nMh)Q?tfp+3EzDj)rOUG+_60>j&G!DX+3E^ z5>IUPS>p9eByw4$s?r!wruM@7SFzs7{!`AHk6^n?g_$~X(|6io{Mlqrys-E_975@y zJ%0)cnW8Ki76fZ1xY5_bz%P+j4Om313X#5Jm}JbQHGEKJt&IPgIH1gok9UqfFz?N_ z_T1V69!I2iz4yE459(2dLL|e$fdG<9D3G2UNZ9_u{x}Q?1WgQ(BmnQ%c#~VxD}YlE zOjDBJJBBZU{&ZZx&1->Y1MIF6tnLM%&+>lJl}_aX)aI?!GL^=tGPJm(#`B)FnG(w4 zUph<@_F*K@rNMX!Zd|B*(DbFnI5^-?VvN=K74bWo3rmpmTccH<*$3+TzR{s~g*r5= z=3m*^#J}Q}CNrd(4KPr1hyOj6CYuYc)%#oox^YFdPu=tTZ~VTO`M;J55!EScC`Q8% zF%`(&!I97->=k!rOgejXm=x|WlL4mg+m{@f`RyXc=?8-soYoF=A*PouFtCJNdY5~~ zTE(=1r|%=hKCD4DGQszxVL-KXPgne>xpKjfbK%7p;(wJn=cFllwxF~SFH4dWXV}JJ z14>+%!X0fA%;V|$Yu>FCBv{PIK+lW4&_y)-5H(_f#(RG@?uUGy-mrMluDQZxq8^bUdEJ7UE!8feGgA()ER~Cbbx#giJ}e@OuxG#PiIrBs2e(PeJPY26O2GXxc;D>dI-k48AT0+SoF{w4?FyCwnMzW3GDYC=~#2-NJ42OXk z?xWTY@N^S`FzH|^)atPHy$TwJ?;9SA@<}z?16~uMg)HjQOeKQP6Ex>pn7SG{#mj@;4zw0YwnkYf6(EV~xt@ndK z*etYG9g^0SYY$lL@%bxFg|w6sYjL!ahRs-~D*{(@6t7|Tx z`rIQ4+9O12L>)4vhZQ5;ZN*=HJp|;A+XKTlTL&mvOK zG^OoQ`qw5u1vNtHs%i@sYJQ(vD#sUXq<&#H^pWF2b}8@dt7sFI3Ln*>pv<1FA17jX zVaB}*9|w>Q*^lm}ODYtfHx>v-Gzi9Nfy18|RcBj>OYb(K4Dg7Y7;YuOQw~Rc_O|NV z#Q*%$6@9S;$vuLv9i}3pH_NCI(#(*gbse&=e6k4XN=pQ*Kj%Kb_)Qscaf!}@|AM*u z_AsyiOOzyK&aoaejKOYRaLalS`%Bd*8W}&&9I)K^Fb5}K+t!gsqY2^mdx)<~Ly9|I z-~3YdD<4@BRGIVk2N-hOs#fAZDK19Ao}#t@SPk(BN!fn`(ba-15%xW?0n_4m3i!F; zD`($+rwsL$Zm}HPY*)E~PMCQSZE=`2`i$I0R;D@2f+LApomxkEl7*GDeY7K1BY2cVeBd(#QqB+vVWw1KM=Lg9!65Vo1ei#COF!clEBiGm!2zw4+pzuLC`8i^>qB(D zuhfuf-~}3U2F=Cx&b;q=Fs8XP)ts+k4O?0>z318kJAC+Ee0N~{$`y=Hg{)zAP~f?y zxV)K%^89-_u}|Ld3@2k6j6RbtFv}{wvqM#%#b`aB2gW4qB=%%ja9VV;tGh4WlPI}wCSJC9kVyUHi39mc*g`TJ!5t%HQ zu>_}r9x9SBs=lWnD$9ycXDL>J?6Q9O-~AoAO-gbFKEGG?`G)_Q=(R_rCp+qJ?j(r$T=1hO)vfAD%qKG zB(ob)zXtTcf2^SQY^iI1Mb47F0WI|M&0EdGKW5dwe+d|aW61BtEA$IQF<1qPJcZ2nYZ-r3&I#4&4WO~>8qEa5_ry8SaPFCJ*knT z-LF~=N!LI4d6eQ+YLfyuGd%(`)EwHt%6qlFpT(qhCwk3S!On@2{e7g?(bxhYcR<0A zbIerY#l`A0!^%idhoKfz?%*zyEKD@K{h2r_Ft5SxCmPm8Oh*VTeHEZkh@Vs>jr6i- zT`q(!y=P*^C>)rAv5yIZ#UR!dSrciB@y#y1vt=b{Np61<{tvcfRcb#WdIV?h zT+=O}6dJ!n2i0I7J>^AN?&p?+HC0Gyv`6w=kE#bhW>|(Qw>XQBcdTk>ejrr_)(p}kBFcpwfOLwK{3l^_Kmo4zD)gak)RZ_jCqXr8@ z9&KD##g@-6p~TS>ObD?$nDg6L8ENKpMpmLYvP-2|xVre^z}eEj^kSlBu5gxIaIw;o zK0p`^%DU1UrD_QSGK=9~#Y|m?i@|`G=4_j^4+p^2>=_Xny$KiKkoPPO zk@XN(1oN;gu|8J=w9~EK+qN)fQA4686$9z+&ROFSBx}a<11Q(@JERJiK`C^T<|oMj z&655(5JU{3Qi;f3{$HfdKC+21s>xUBPihpLvFH(-hs1FIUi*?7)(kL{3;tG^>K z_GhxXM4%T(qjB<|76+!DVTNUMUH8*Y<*LDX5xR7`OVO88u&hz!%ELw)l}D=zUpSTq z`@Fd+ucvzsW4>6g-`N|IT3V=S_GF4n8KvIn90SYtu7EjJM0TX$B4F16Xg5Cq>N_x5 zIh2>J52k{2_uxa}g`4Y&!Nd3wAMN{@oiH^KWf0ivciHM*DepXks?6%qvGK-Ei;$r8 zLT10aFOHg|t5Jg3YJs*2&vn)4OWy5()ZYXPxcK`t-D$9%)Fv`L)t_qjS{19<(qE=W zu%2FxFcK-p467?`%S-W9n3AzT{;AMk@EcAWlf-?|k;{R>Xh5e^We!r)F{x778b;+ zg9SMca`iR6Wu$fG6JO?Cy3O$GI7b1jm?Yfc3ZP`?c3TF!fMjvm2oTp0SL+q){g zo3TO-ES@Z1X>Z7NbF&~iIyYuKq>mKC$rb6JU``Mo@F|pb94f%G5J;p+t~Px#gw6oi z<{&A(-mX5<_yY+K5xO1uGW}KTR?%gVkWmY-efJUZzpjf;Ve@XkoIs(OGOoGh@A?qM zEB4x~A92F@nHj24n5Z4F;Om5lLWoRIjio<1stEQn=$^tb=|=!V3LafaP&Ji?i(BYd zPS`Cfpl4##+=k@^+9M#j(JF}kEUODV#fW-kf;thw_La=sy0gm(yhEZ)bF2RI)y{7S zA~3-=p5nPV9ba)A_BY$LS`j|Wb7OXoD6qY5wC-*W-m8j+MUpXi(u=!^4=nec<+8BW z>iCsmPr**>+9fovG6bKbW?+Fg8RHjp3Q^|_h}~cqSEB@cQP|-?KA!%BVD!HY^&=|) z)QIC5O@-usAhq4npE^vQ=Mk!VjumPG+mumX_m)fie=Rp~cgn}F;>&iC{oA_s$TKf_ z&px-Ow;~Fio?V@G^zh|_HTGmd|yg`fqu`Z<-A#Fw$JW< zTEHTlEDn2h63lgkTR5#Mk{Q-J6`p-(H3QI2Q0%#-D}M*&g%53KAr%nI0Yn$m-S?o= zC zb$mLlT{qgXB+DAf@48c%C5};Az9g|MzQP6Xc09781a{Dy4o+%dS7JupzQk9RwDHj- zAq6o8)}=CzQNX~pPRW9429&~ba30a`6{={2zDQvTQ&^5DlL2*2AAMe+CMTI^0u=_L z-DTXlh0f5i5H*CC>wkhl4WK@mEXNw36!WaDpnnW_`EwfUTyVnl$l_*n!={L+^ADF= z9t8~CGGM*1NoZrbcSL$P>g=a(c2j-j=(ZSLHVxbjv^cXB1d;eNL1WU(F$)bSmF{*` zSt2fPUiAgNzC}v(+Fu>zRUP)xti_pM*oVT!NxqAA%oR0QxHBWutF^-G1V4$Isji_O=oZAWvsQeV6A}&e_vrNBzvOf>d2%58lFO` z)8-a8(wa!fiQ0uxmplRd;^yT%q6X<-FU0-qD%5Nm&sm@|DX%^hLe2qg=S3&i4==WS zN+e=2fnmSqD{#}!3AG!VnY%Ss1-{wO0o{1hY4aQBrZ3g|oS&@26r-hD@-?KwCyc)l z*5wMAR2&o3HN(bd9L@CE@K}q2zxXdfZOd9qVheHKFUn!eI>xg%$H&Y_Lr7PR`Uu%8 z_!FDY6&#fJrykF+nr$!+ahbN?922V`Pff^ii<{Z3Es;}*Z{h2#5TguLa2_*;4trf% zgWL;#u0!75TJp2zOPgZ-d&Sf(ZPiV4<}P>cDY(D|rrY72zo(59=oj}jX563k&Se>T7THDe%lLmh_>QmV! zYD}t3QYHQrV!^g9y?PO$Qq<4C^i3676%fr8Q4#^zN=j78N>!AR?DURVaveNtj8YW-8OI6m@^yyUZ z8PM=1{D%`rN(zMP)AJow8D7+~V9i!fG1<+W*X zZobZCSS59#bHP{II9gB*>d*!xx)2QbP^!SEyev0w&ocI}yD0&;OuWbc)a@!*-Hl)9 zu;t+A232Q|TQEFvBode{UFo?hf^m;kJ!J=hl$($kb64R%*U7LZSg~dE_yNki1Y?Ge zpaaXefyi&ge(_NU>4ntR04aI2oj!@2@*u(ha?mIP_wDk2b_B5I^5RSAb5CCIMkX=9 z`?rMuof^?955X-XCHe{qT6q;VliwsEWhy?P54Zf4w>WUn6&<3t=DD#Q{yoNDZtZzt z#h>7MuDk)qD0wcFl9&=}(vavpSw0j)xx!c3VU>~53bLqh*%AyLrXbmLF+xgDlLpYJ zRY^HI6dQV0@){ZaJxfBG3JpSLSDCd0)wAjv6Y&gCG4?x2Iv4ExqBRUwf(EfNRpBpQ z7(uTS2ne`4)r40KV7Li8uwPOlD!XSWTZ-L4KJ1ejz)JW4ZB^;oZ*0Op1t~!lS2sY! z;#L$RuwKXgkhx_&YR1uzg?-KB!?s;qeVLUdFa%YTQ2^WRv{FcRu~~b3WE=U(p#0f@ z@u&<|S05S}(TGf-rDx&9PRFr|l1M2g0!dFKJaX%Tb}b?#7@%D&)|RKk97>Qwn<{%w zaN>05D^OoYHwYG0LiDBw-6GV!jts^0?BwNRKafp8z|sQ@1|sn<(^$%JcDw|x_ctw* z;GMCxRkq+r*BCSGIkjim(M;JDQ;bTRE_x^?5lhs{Z?@eE3f+>hWG$#vT+o~TMQ31C zdGb>!NU?K;ND2>QFYn+Bii*eWWcYPSFk&mFIJDCZix#- zOY6vxDwQ~RwNfU66MVRuA%R%ippL_;jbs(HI;g2spi}?aH}(B|tsDhW%(-PpQUg=_ zLX}E@YJg1HCGBo-u<@OMTo4C{i&a~ZacyxqjViPW)B34HgsTqzn#Toy&=l*wQi~MT zB-O4etL-EzuOX_lNu-HYJcsW0`Boojs-nxj|9nlotYv?%Lx+W*s@f=msXq7ZRV4T1 zDv&&%`RgB|wY+y>bl!ML71ZYa0NjMCr$Y}RF(fHyfiDXByQ=`>6|d*dsMFKN$tA1} zqy(7kJpf03yeZRUP<~B1luS=GpYMCMKuEVJs{57=Xn+`dfRJOdCa=7sG-{bPv5Y=P>s{j;j;Svn0 z!o8)U=%pH(wP7^*4^$^Ta0M6j zYAZ%8Lt?dJREw9d2qqW8`=FJB1?!^?nQqt-U@@|kldP{os7iW^@jA0yzNK(gNrL)m z!ks&ci5;D6B_&}g8Sg21Kd`Z4nUxi-BPoQb=v@bGHB^0_EDjeHdR|gWWDv-lxPTXm zS&@ZNGSG#(i%@e}2;Kq;l3AFarrTM_5t)?66xAv^iOS+#a51eb?K&Qij$Y4j=H2w3 zyWL&qn7ZO#XPT3WgbZSP_hj-yfc|O_VX$%H1;sg6Z2+j9iZ1~S6-E+( zL?(4^`>_HCxh6|aKq^dwb8MMV&`GgvS%Cx}N|-q8%E_ZBMZDE0AZ;-?C7b=z+Eu$y zA^UT=pn+XD70KZOxYlq4T{~zoDM)g!$A`&+h9lp7o=+5~4$F~S@sasAE=Nq9g@z}* z9HyuGyWE-g1k|FQ*c?JGv1;|G+0zQcX2rEgr&Y7FWk<$4pw;-`o3Y+QSWoI|<&M#x zN0qitm+C`d6D^_3_z=t}n-pZr7BYsO>~lsUvsl&oXux+2lQ!u&BhbiLMjFJVdN08Iaa`qI7zx5ruiAyiZg0_z7A>y;#nu)~jT;4&o9l!MYQ1-6bq7e{v? zeF*E$D#KgMoQ2}$aN|Mq7v~oy=*05PGlKl6s*yZ0*=NwA*c`EJ&mm4NfD@;Jz~|K$ zh`@D+kROe2(jVhk0ry;_CK3#LeYz{n!an>OQSJR9p3hx0b^u~~;Xwt9NYF+zji}}S z9-{CXIbld6l__J1Nmg1%ib&*o^oME+Mv}P;3?LmELKa5o%HpwuU^t_*>hK{!Rb#_h z4TQM>_-u=}E%&~Qe(o9~Bp3k~oi%;glAKjVlNbo!Zn*#~Gcoaof}z8nwbqUUKKu&; z?FG9TFCe`j8P_^+dMWD#0kHN+Y|$K#8105ow5^Z>i(?=y2htxr6Nf3r0VCQ_U+h2> z4{c;^_>tnQ?sQ0Vb$%|g^BEJCAdqP~M?Z&13Ud%XC!U#mnf{b!wMr@IW=zn?q)Ts`M8 zjW2cFZF$zY!(G=z=aces_UTtF8n)M4s+-RPkA1BZuWvN1@{hA`SVBasr&r0OKuO0=yrHAEDcUgMg z&y!dCW#@X<84mWtKSlgAC>|J{$x6#^C9RO5PgTNi!>`)zKVjXIleTu1S-*j3ITK|k zR_T%urdQO^#Lh3^xvAGnaf#zI<(Z>3te!S9zHS+Mh5~&xv!mzG4L4<)sO9%QH7w1*=>)q)&1(OpEsqh_@0Dl9o$RwtIJT+ATB7!GPpzlo z?6BtEX@1J;p}wD9bC=`!lRHpN>%9nyksg_=sSz?CFps*etETx}E#< zyp`KfnK`3#@B7?_C+>bBFrgDgra9#$H)lxxW<0;wYfo7f=N?ORZv1KCME=x_|1rf= zq-TAeEY=H)VR|6IHjaw-lbqijnO&c7ng$RDmMofD*~iO~Oh`pv2b;5f>oZal4sQh* zOy;Mkt_gziR&Wh0*hw(lU?BiQexo)5#%uD-SL3 zwu~)oJ&;RZfSy4CMePfhITA^^IX*s=JhW=cI7Fa!84K|xv>9tw$?|^^MkXg!X~X+z z@oY&$Cu$8J6Gz9dTh{eS2~FHEqbN-p4zR-02DJ*Slc~s9U8Jfv)MupdzR#A@0JVM`TD^b`Lk${4Q6r9*Y=|~kzQ1H;dtt3j zdrLsjg~_hElu4p6QD+YzO>q6UIJ-A@O5s)*LH8bk*p z3KVsg*8JM2l7$SxBU`PGD+5QAuZbv4P{kA_X<-x_3>xk;1_6&YL=i!uWp-Ry>)GOy z_G85Sj}Pt+`Q{S)dWi_~PT#4Ak<^B`Gr0?hBgrjEIqRZ_k-KtgNCD(t{_EYG(VEaV z^zq>*dGni-UKUZzlO9Ke`?w0a`l1Vt$C3>$+(dc5iUad4oxR+ikQc) zVZA#hBAt62aypfFjljcw!lvU2{&tbvQHd~yMHijB=(sUC=#S5X5h}N9k75)MwfX~* zdC$IhqZ0=1L5}YazRxuGsA9nf7o7FVX02viI0oSk6aj*qRJV2w=h}`tSfk*m|KWHt zV4#A1>CeIUo%!A0crZRRLdQ=!KOM2S5GNssO%TktQJT%Fdu)2tW(IEq!tZ8duPvy7 zmt=K?Sseja_-tGbsKP*dtSo*@uB)B8RHlEPl-rH*$#JO$T%g3~=*zRa zSF5R}YHoHa?Cts7XJbBvV!l^cgb_~VUphp5OzC_J zvJ&$90CCO7OQ+tR?T-P&u#3Oe&CCmgH6|fCWFT81b4T(`PXpA^^)B*+t`( z5iMmH2b@>Jw2)aBg5vw=<-gGS;{DbanJwyB@$*<9DnA8~?Lx8QzhPU|)HYS+hDV49ya1C3ID` ziW*h%Mm%`=^~Ozc0zaF-3J$38TDG4r=+H7RTTbS?c^+zbQ~YsHa&`L1YN6Mj|GdE~ z?erh&vrlG|$>#X2gk|0Ywd)0%3srAk=L&0LvkluQZW!YaSoA;R46$f~gO}iruJAMe zIX+^ z`s}USDue$(k_eQ}f~>h>3B}5fe0l@Vi{P5X{Y9*!e4!={SUZXDNf` z%2yJUw_4&_RzcyK#oLjd+E=UOTah~kc%x^ZC}$&@{j3CrqbkenLa0s}j?3P4RHJ{n zaE;xCxid;l(C{-uzW6f$ml(Y~fgd+_H!G8!2GKLtn48PxvSeOrV(*h7mG7;^+1%+D zj@$zJ46XQt$uRG~nr}qhz~ucri{Zh)mQF~G^Yr~G2aDYbNw3>?zmn0)+{8~2iM*^E z@_XKNQF9G`wunq-#z|nL1-2WZ#Un@}a@a2)Y$X@OHEw-F) z&t>nygR1=fW}j?Hf;Yq9j=JjwV08;|{}aB!S8sgRN;>>+$HBhpS;u3p*I@2jbldW0 zCvbl$TrNkqR3=OD4%f84L+w%Jns(I^tnz$(|Np>D%~hBgS(!}K5e0-c3G^w7bE4`1 z=fAT}(HZx%VC8`w_Qiu>&=iFQ46rcRHDZ+ouMs#l4+gB_Ov_}Wb0^C#;0t4aS z7XJP1hvvrhB0e`bC*n!KQAPGLX6w1>T*La6 z0=*hyWymS%Zuh0`&o$%OJp9Hqe-TN$){%FSg;Q;kSvaPd;2X;VNQ0um z2Q~UggNn-X+T~&*ER~!JmRI=W{Uj#Rgm{HE^6I)wFeakDxi`#G_!Oms7*iUbp-y{B z$yI0t2qz|J0x&4=vZc`?V!a=3-Z?`qFP9WQ>8c@88br-a#ZxHzd5-c>VUd{8fnx}2 zv<){uK`$evBz&|-ipxa=dOO(AEv(%EHY}&wvy29;OVE_$)i9uu@ncb&6%_?t8Y>0^ z>_>LDg2|%reL{I!jT)Xt2XVl}15#>A3qx0};rF@iP)z~GP|MOuL0;Yf(&!h}HzOO% z9&bY2yt4+;MGg893aurRSw8@cn4&j1g;5vjDKgQDvwT2>)uMKrT%H^?3;=IrG1j$v zij8%*+A*h6L3*a)0{sxk* zZ&^TMt?IH&u_;=`bM~cJgZ_q0MpDx0u)qSO8k3z-DyIz@Rd{^7i=u<9NEbqh&k=+S zbkTKb7oeG3_5|-{3m#ud`kxG3(iU_G*gr(g9m^bTqR`uDAea2T6KHg9^U2LWV{(xO zV#P~vq3ZlM*LQiP6Vf0u-){;LCZeWjIt#bstO1jXw^guMw53vw7fELmkm8kX4)KDd z&s8cuvR8u>i{m9N&y_F63dguzg6(>%-`M?ye&U=RRJI^inySC>lYZ<$>kv%Heh1}X zPd50JhO$#p5P+>3Qhd2X#cPFMEa2@K1zQKW2=6gi#5hrSU_D22>cvR_yHx_P!t02*F1j~ zAv}dXfIRW^2K(b{>BAvM5KQSWLE-NSf?@Fg^tw#2&L;arvNmyy2*JMdXu4Ck6jDsc z^Mq}Vtt)_%fJV=l31OQUCMLRPzeOaZ+Z{?V#XJkrT#bec|1*~yKWs6yB|67|ePUp+GECJJXK63J=nqjY)FWPk|v*KTCv;rt)*I%6qf^T#(zk?Ho^ zbs!X{VI06i;Ohf(+G@UUu}nreboj6j0)RzGvCqCVn6#5C{e0XH5*pPk&fQu))`HZ6 z(!rI8AhI>m%={WLBV+xHV~`EO;m*lii5XSCn@z*X>x5^ zULJ42yvM;==avmriVcd&2F8wMK&vm=naa_;{S)u#GGc|{l2g&#WX0`p=Y-`=KP$d? z&}xoy6n{O(Eh4ZIOo1TQC921KHU1N_M{WRFl0{n$jDJs8e^Sw$eU93YG^2m=w*EDAtfc@OzTx z?4eY-y=_{M2?jDg-*#Mr8H4-ZCY5M|PYk{x%qcdoBO}rX$i&p+dM|bbfZzvmVXFAa zF_eJS;&x`16xUJrwjbJfv{wo}OQi94v@Y3gDs5A98|Z8!CBF3Q;2nc=bYi$WEUy5B zzzm=(1TIeJodr@GQNNgNrIG>OfxG;EUP6B9j%~<$=Hw6Ths8*5o_+@BOMh-yvBf?X z_7nolvIy_(pBr%u*idoX!5GpsO?BK@}NU;;nPp*X8 zk~Gf3L<*+RtNHy9$+%CkTJp2|*(9K`{TB4I)}%$F(Ch_l(^aon>NqD!VE-5NLNViD zy5xOAVP3SQOI2`#{@xz^zdp~-KQp=htDyM@lrj!mcx)^%`RX_+P*oTGyQkW#pc2mM zBTaF&!`JUTr3Urr@^ced0~cFtjZ=-MPg#CXO~>Qs?=En{oj6HvVVx)VFrba z0p*=CA#PzG#rfaa5vFYa_x4_M^y=_oWa;~Glf)c+J!TD&p656J>-~q0;hm6D8;%xc zo`bS??DmU=Uuh3e?AZ6i=JN?N9RYj6)mEny^Ok9JzxF;W{Kk0wd;LG{;osr!7jZMh zwC;bacmM9^^o9G+@BI6Y|3~nBzwfK=+|Tdt-PiT_b$aG^DmD+ZR46UrqmU}&U23dn>)DiT6Sel!q_2?PF7_(1dj_oC9@9z5Ipd){rM;jNXgn)^Hud zx89raaJ{5_|2M%nCkKK1x3&rTzWr?&|HN)QSNZlg&plt~zxE6Fug}|Gd+Pq{MgKh) z!M}hH1JyAK_P5|~txf_cUc>~fI6LR*;P7Ksdla_8|ZK0T9e?0UfiHPhmCeY9}BRRcnCxe$RqDsyjFoe zKjO_``nR#`edvXEa_YJz_UePD@8SPLrHA}BeJdW9|MTJsg02_oJGq|PSnxhkaI}|~ zBZmKZIV#QofAqKi*$x1IKMA8b{tnOjUAPNr2bL25@!8lb^7$yrSpUo9_I`K7v<2(T z>6ZCN$C-|bL66L)@zx*yz9LE1tu5p-|0x^$L7Z3QKb$|u@e%Xj)gu_>rKgIfHDWt* zhTNKf-dVMVur}1zM)HjxkVG+YCdJc%EDn^}<9)+Y8^<%VaE)4QM{EY@8Ut?)SZ)El z<1LW`iVTUcy09d{%Nk(Q=ASm8)aLu9t2c;kxwodSGsAC9g6+i@5@z`%5Q`*kz|w|x zX|rw(Mr!jqHx$)|=Cy!sLB^ZQHgMJk)tboO0i*J0s|CcHd}(7xeULN2;>}2G!JV5* zYSVWn-58UZF3+Y;Z2CoJ%WcpfctnWp;2Y60-&qtfWKAWl0!$fmOd5RC=5}gxep6MO zcx}13rmi*?pbh9U#&~KoH|hZUfXN&2no!u?mfp9GdVf4?qu;~!GFAxwWI?;P{QsNN z_wfDa&9C0izr)|d`L@~@Un#T)!SCVtd!5oa`H}nzIYZyW>UcQsA$b4Qhrfq(FY0PI zw<~|=On83&AN};o$Nyv&4*osUF0+5T`2Rl}lsV7%d-#5jb1aE(c+9H7-_PA%^E=Dq9`_Xo)9^v>;oSHB2E&cUbN@I+=i3O60pxmr zA)aYy&vOVEvoE_l;QE#-^of4h-x2z@e*7z4S-ioc z*p*}5WNqKiFtd$lfms*b1bcgUv${ubWWS#9l44C=e756~YgqrMWX(;%{f zYOf#YM4IM%fc^3}{yO=?&&R{x!{)l(1Hj-sKYtGAfX8_kZeZUt(ZjK5xt`Ph4}NsF zGui>5?|RPjLbf@h0=GTs_TTr$k*qdjXlGkfc%R~K2Y_rZ`5JHh%~M)!*Me>jglR3Y zr@sIgwx-X*8~>rU=G+_ojp3W|8}XZRZ}%OY|G~U(`7_TD*pJF=_vQn58N~RYZ^JkZ z+&sSf#vQyr9NNm`W;}yoe3Nj0?A|x)Hp~A2+^iVM{=nOU3r>1`)_H0XlKO!$J>L&hnIO`Y)`%ihZ-34c*oh)UtIic zEhgQu_TFF(WguxTc+(hDQgjBa=#5?U&A^j1e@np_%Y;VV#gYU}t&`oHH-_!202u(0YK)fGu_(%}Xd|VtmMQPZ;m{26Q#xZG$U$u=4eywNjZsI0mmguRB;7()r*}27It_L7pHv z;Lc-s2b3AX|Li*a)(fg@I4-0!N9X|8Z9LNd^f}RQMjcoGhPu@br}l=;|8zR1cz5uI za(<81ecpivmf71i;hcDmu-mw^v_p8inmjk(=$XBYgy#|CG?YjE!c#5BC_z0SHHFK}V(=l`G* zLzi43I6<0Eb{%3pd_3|aX_ye_#Xfo z)`?~pj0XLqxfYDkBky+@>dG~9{s%rC@K0zn-bVrSni6=8#A|QSKuZRR8}oux zhIUdQWZGmeFA9NdIm8KA)#vEZQKaUl6obFCk16#)+q5NyG!G4>mda2GbLV;WfUjsi z22m4fM88ynn!DLyD_TdRm_=rk*7cxjM>sj48gd0AIwg}yc>L%Q?IX#3bWpx_+7LWI z&U$}E4TQJr#F9R7I#4w2C*DzLp|eeW9*P?Bw_tKvqO7nF9d1uUza0U!Bi`M}nIhUycu9Z@Kp&GSxy~+=2iP#(g&dcq9 z)#bC;!`pdvU~pPT@jK8O;yLd7MGM#5KU(huGrjM?YlM0=nkZ*qQ?xnY24nWH^RpG> zL-;@b1H@>vTlc`M49acG`AIE~raUkz&zZmuPI; z{@^CVHebFT{XB0_4@CK^_0F`MZ|!KIu<2xo?Os{D_Tku)H{3;N(sMoT!>&wE3P2hbBY3~qmr9s5co$3@&NoBCmj+|Zkrl*zvAPU=)KzOMtG4Dm1e<)s=p z6Bo^i(6nEZe@II9mJr1?n(~0fK zh8z8$KdVbwXZl3@%`VceFJQN%Iit#fl4+i`w%7^yyFkSCh#!7PF=fv?TKv(UBYu#Y zya-{}(*x`@X3h>kPP0H5lLQ~fF!P%{r@&^)H zU8+C)%gF1*qXDiDDfHrN+98&8B2Tngni{bHorD>t96UFR95;za> zTl2Ie-t)pz;TO&@O{nLAj}l`B7?aEav%ZEroY)mqA&KqS6D=GWwyqQVG*X@fZ-9@y z^CPN8$3M-Zov8h|o%2b}zv2`4w6U8n7)FM5YSG`s2M!tD+@<&2mdW>G-2=8x9Q znBxE)CI2_0QWtcM=S-VLTzs>~>t;-G9uh{P1J$ArQi}vs9I7T?zdo~zz(#Hj3L`Hr zn^;y;s$bb7U9*>Bv|p-i5NCM-Ds)`olx9q(DJqLzc`BzUlbJ)AK)e!0v|!F7;qm8E zuP2g8Hquu%nTdo+l}BuH$oRnB(z7sR*;Xw}P6FTq)txGtISnt(hYGQ|&`8!$+KT3a z<`Y$2qfF7AT5Cd~&mXTc68U<&u>+903YT4;i5fGBp%0ol6TGApHr+9D?J1=JYIML1 z#7-CMl!}ci3o@0PgvV#YRfybpWYK+s1gwEnO-dS?p-tu(S-3z+i!;N{Z7lNCu;c-H zwAtnTehHeg$?JZ(g|KK3o=GlkKZcA0Rk&6dMoiiT^L&79^5zmL!L5ASQKektS<_@w zlgTwc+`8DylzeHNn;dSK8-Zoo5;s2bcR)DHl+HB!xi&c0I!{hJ@CmZcsVq!6oj_c|KKubc%z!WNqe06km76A%Qvn?75!y{9`hucf_7EkW1rC&N}jo7*VM!Twk^P5TT0XekUUQ!J=d&dbK4x~fh>r!$0{E%7J zv@<#2_sPkV&_;8C?2s0wUE(fqH)?%m7{BBt2h_0S;mNd_l01|+R4z-HCsK#hxDPzH zK0dk3^fiFHXH9I!IeG>}ZF7)|mqeZse^ja*FDOjrk#m`TN;eA7@<_tQYY0B9?d-6| zW=|3!=;u>joCix*4Cdkz=yGZcU@|H|GC^}_gEIx^ihq^{BqdUK0OvB%X7E>Zi61Wc zTVFi1c<*&VT-PEHR97P!Dl$Mk`ZVCyM!5UHN}kJWLx;gAu{E7x_7~`3sdT2fsAQEk zoD!y3)Y@?kBRO;}NOB2sph6+bB)6Ynvg)8>a^-WbYmf<21Au5X)T=o@ma-bVX;N=v6|?0|#;%gu_sTsLH@Y4YQ-O>!a96TqzvNRAeiZFZIrQETL1$ z!I?C2ZD{+#UoM>FBrgFOm^v7t#Iv@i1$GBjU{w;bqAJO*RYZL&Wu>E?VI*rVN73UN zfUx?IS<4xMU_?$8dh%$tC=W3>}7 zyCB57Iv}DZTOxYI)OmZ#q?=;}YE!b%Nf8iCz}BU!Jmv|08tX&3ppf#VLREm6Uyf;@ z+Lwb{S93#Zy1cs^6H~Bd@8N9dL%Gyesce9}P(1QqSrHL_6r<)4RI652CJ>&etY%cG~SuWmBp0bu`;MT&2@sGVpgl8i~M%j43Fi7i7@(Ii!XLjv=WD&bNr*hV>-X|gfb-My z*2Z*E@*@zrK#b1hWU|hdb^lfz0FFNOy@ae&r@_aIt-YCUzz#m=JxxWD{j0;`bhJad0UfD z>xP;uDn)ybZjb#yAJKPGevf8~IVW@ZEphqU{KQ9>4ejo_w+{ghPt8=hEnyc6<^%2H z$0A$W!|430C*n`I#CT_dIekA^tS(7)2`Rg!1B z9D|g*QH42nae9$UJTyN||27AcAZnQMs45X;B}=t2$T>^g=5Edi!|_To+Rh={QT`<$GG>o6KcS1`fpEr^ zH9~>K3m9g`aAHYFmU>qe@k%qucqKmIB><5_FH(rX{KcZ~veAX;nBP;}Ai|6W<+|`E z@rX3@;7Q<=F9jnBU+283z{A8K)q)Un^?r~w?+x4{?&IvL9?0u0JT6S%OA2f@0M05+ zRb2Y^76N{sT~j4CL@pMOXy4Xyrn~n)_7_qo{XX^`?sa-Bg^}%%R?$fB929&C$Xk&D5&Mp z?5pf_g8|^7vK)kvvY8kn7rd*&5busn-k~S9O_k82j4J`y;gIZ#DV{qF-C&k+%1Fu^ zDpA-H^(Lv;E=Kh?3b&GV8y_DnYg#s~v9_;=sYHwITV91?`NR-G70{uOG)a(>7E>iQ zL?lKAlmdI>=l)`~rk5!-JsJP1MXxuEM zlX>&E6}RXXZySeNJ~t@=Um{&@rw?iCuDe3Vmn;*O6Zk}E0+P}508F5$wiQBu?6##IQ$ewDI*bRuX*ZYynE_2g&i zLvFi=gh1`G5c1f{u2)o8Yu!D4@j@c^_i$}`5`6s_ZaN2I z5lI!51gL4GqL+YL`|%~^tJ5S@dVc?e6DA?T5yrQ19W0FTHOiy91idmoqQA9*=L{PV zFfT%p-cNm_(V}scMUd1@nLV(7iN8>&Q2NJUCk+ZU?=akHalB&>o#kw^so%9 z6Hpk8dK_PVCPqi#MOZ14N0t+!1El{0O=R6cW!6iv{ z^yYgLLGoN(mzVJxveqK7*Py=ABcpj}t2q!OW6glWS0mMRHo(ui1Cqa|GWPeP^Is~g zp^lN!O6si}dBro-X-G&r1#wUG?FWRhp$m6RO=bc?{z14nFFN>98v%IziH`NQ5Z z;=T6DR7Y52YwC@#^^ws4_5H%MpYzmq`?~NfQH^_L&qA4G{_>sV)B{Y%PNobt)^!}P z&n;?$^*o9WL-!ow(hL2~aJ8UH)vGC~CNm-^?0X|>(r*82YKy}PP5`swQG>ZjVxjtzF=BZ!Mw<%J-k!PG#P zcxs`Y=2z_xij@@MPL7qMz4!QWE5QMaUbddiPtYupJM)Qu&N&JNRe zjt=q*afK&KFiWl4S8mj1X ziwYm)Pmf=GC_fLEH5bJ{rW+@J%9cF&ZUWfK6mn=%ZC4ThaD1ma`d(OPXL%ZTXkp>W ziAobRao|b;=vGmk;^7%?Kd5a@CS;~9MJ6NJK-_wn9G(iasC$~tdn6SX(8sRU z?+Z0AKWtgQeI7&bwtiiZX6d~QEo!Q?+J(O$l`RY|m>rHSU^-QsPrtAo$tzV>;eXI++GcA2mR zr3g^$d#tQv`&WCJ;JxnOP+i)FhN;|pku*Iwy}PX-4X%1{oWtf#4qhGTjN2mRzS%s= z4%hFH$9&l$@WcGNRPzp_Y<7{lMZK5C)Ih8#iBh*T)_- zk>bxv&LbUBx$Zvh)V#!CtHu$$1s}4mW74!jr#)P@PnCx$Sxxq=f>|1b;8}SNA-MN@ z*yDf!W_T7q%P22!;&Id4H7S}`(WVbMa)iY{toDP1OgkK?UcXsh=`{v9=Dh0P><=Q= zodT+r`zK}Bz-nT96_f`C zF(+dWLsXE2MuJ2+PnL*ktw`EBK9n_t->$v4I(`VB_sCWU)8seN(A05HfBl&fyY%4_ z91Q<7Blonpz>*en0QcXPF+}WAI_bOgb&N(8m!oH)Xp{nu%~Gx!tU*_3#zq z-UTEf8Gysl9fkj)n|?75cUNq=X&B^!ys=(w3#TK{9ONPZ?piVnUn-8n6ULu2!L=XX z>?ny)LeE{P->DTRasD?VZX(ZE5FCM*GAgJVTS_Z^5`mc^dD~5W=)PD-yF+K|E=Zd9 zZl6BeXx}G!@|#Cj&b9qET{RP~odES4U3ktho;#l#{enHfF0(PjwBn`BsrfAYahPO#IH9D3Q*aD z4G5`EaYiiQ)>XT#gN=-+puvZw@)m$>K?q^i5R?9Qd>|zwQM7E%$R$x-Uh?lj45dMT z)8)|3;aR(oDIuoMn$@&`l{u&z;o>^medKR!r29m3)Cn0Ng4JKyWT6ixCtQ@m*)SJ{uk6Gmj)pT1cx*1nHlWWw-z0*nLqG3$YI4nRT_Gj(9R7rZj3^8Bf zEFy|y=D|}&qbkH&v&tr(AXor}l?`J5Oys}wpjHx2P;R{B0v?wddL?7Q0F z;_Rf8*v}PTtwzB$5vBRD;wIX@3oYU-Mph-oKc_V5kcg}Z@CN=`$b(g4@i7C2f*LZq z%&4T1LR3?Eg9U845m=TDoL?PfBD-EY#)pb7R|3m7KK9MO1oN`BcnoZhA2t;=SRgQK zJ%VIvUCcwIFiZRyehziH)fxDXM~Tb5U$Ns8PzUsaKI-p;-TwLfC5tyBGGfjDF`qr% zXMnlI*Sib;89k#wEGr@k0#7d$iys`^ohX*b*rLQ4{?8nw!s@R*lmy!aV3qvNp~e`i zJ1R9ex+b-S9|##>t4PEQXqd`ol?#U7f=Y0+IpH1LTn@7{L6{`c=Bb|B$@+@N#ZVQ| zf}|s9QAG*8AX-jgoc<-No#}QRv3G9g-`dpS@L87(Q|ii~_@`6z=lB&i5(ULUT{~`@ zUYdIAX=^5%dYGx;@-3|qccwb}K^B^wbB{dezr>g%@farsu^%a8zvehe=XgsD3#K$I zQstuKEJ@-^YUgaS#KU|66o`I92UK6zslz85)vTL11p57zQ}0w6PW77BZO}G@&13N| zSamWBZl|iw1J=>QlSFLDj7dqqoql4ar9d?vZif3ks;`vnNeQ{)&s*@*k`4`<+n(E) z|K(Q!QZR?I;d#ZXQ)JjAcdJ|uys1FR!ijQ5IJ9E;I_ot7S4uP+D=K=sL#U4jH|Hg@ zBi!OmC9q;{Nyr#dm7FL_qRC2cr9F8P5;6>>=`7C?T@;6}8iN4h$da+3RMI95BZ!G0 z%LHL(6q6tW=HJtW01|<25|_?g7N0dKaUyW^NV?D#AxD>pv{=%^+X}^D_J?%-1tzivEC!Z3Xdm@79z*;E1LM`Sc)4}LSSgh| z0}i;btZne&3WC{ef|UpGRB=IEazn*qf-pxi?^D9PXaUu%GZ5k@fbRxfE2wSsx2S~ z*dGJO7|l^WRC`#_RgYc{7z4czV&F-)173z@;{7r=UvZdy?OGHZ8&den5b6xmAuGu% zFmtmA8&DeLxhbpedO_K|Hw@E7#@7r)^s#5Odv63LUiF6I>#A3W{aGf+z`Lq$a;ND|YvB0Qyq z354JZ0SE&nNi+)TvlO}{RcvlKUMJc!|NJwH*UUT7c|AE@Dgh{K7x zW05v|GSlH)MbPl@&5PBvslO#ZDxf%gD9^A%K6U&U<~LXq_AoTiqidr{AVpwE{iF|N z!Un{=G!++KQ4ygPYrj)OMi}py!(E;(cs%y*-~w!zf7Ymw$6zV!TIE(+`&gCmM4*+q zS`9&JMFp=J%hT{s@Der5ahNPIDUQ{{Ev9{;?UA@K`A~8BUoRP9_}#Ao-=DsPM4U;P z=t1w$NIi{ur~wyrQz`}==h0FX$9HM!s_ah`hm7LIw@r^TXA`Cit_chBRTR!r9tyFxx^z98+r;w5g$%uIzOS~jDH?K;m7eJ); zNL)kn4V80{Ta7qEaKQw@Iu`YWC-);Od(q24BoFl(31#h?&{A=gTC|wkZYKU4GZkS`m45cpNN8hvcG=j3OALx)eI(hT)K*-r!HjVX;}q zUX1;zoh-?A#4PKKRK{+F1R+5+4OKD>RHVS_olGQ}ZSGGd!khc9^CbvE`L_;dBqEe7 zbZF9qg=Q)xZoc@0Z8#PT6l$sg7dq_S0;dkr=2oRovCyHuvqT~2l`%zMmp__?ZUX*= z`du0=pH$q`jr3MKs1jU?UU`bXx^@^32bcj=4}>=-<@ePH%Dbv-)E+^6h2C(Sgmf^6 zKL>xs>YXGsQ*nlk=9T~s#xa4v^8TkyE1Yg- zLBzorpo_ZqpC+1>Ku?YVM>BY&j8sDnF$7mLOUJ29wZV&{)cNudnF_-YnG8;+-T7jK zOm?T!{$jBS`UuAvTwDZdW_eF3jFuJxe<-4!um6zZzTug7}faYgKJn}(%hVF=>$|#&6LkV{&xrKMw2a70=z@>moR3?aukO!t{-@IPzIdp z+|ox*us+}oF8(7&e_V-(SNE&`2zT#{dx+3hS^6TOeVS-)F>?3P>p@<3cda!w$K0xX zxM|T|_n8ZUb7#6zPIPVOrJn7M-qw*6$W?d)o0VRE8T7-mNd6o8n-*{Ci;9419qN(5HA3MF6G2vEl*5S zRIh#ePqYn}FGxHpR_c&{;o*D2?+jn-yAgn{n=g`Z9uZSjkL-_A8Y3+`_vwJ$r5SzTK7-uygL;{-v!JW{-Ie)1=DEfL0$DNH<+I67S7u%2dP&BCw)IA+WL;?)%L|j z4VwKn$P&ZnN5oD|tgZg67n*&n3Y=$_E#ie}^T^rzxq%mYR{E_2vt6B8gV@2}w1*wgWym4Ce^V5TVT|?CG z6Q=wAtBrgKC&yizXKO);M0D=cG=NeAdh1tb&NW zcUUjI$=d&^#!rV8W*ur}wm(+^63lfgh65KTN4fz2YAA+VtOgSD%B>%nfI=3K^0KK3u1yd&E7bU}tL2P^=obGM1K#ymxfBT&aqFQHXwUF@t3GT73b zp%M;bfQ@?yv19q2H_WtNy9?>~;+-rmNmTrflf}ZP{63mE!VIpJ1g^GtBFx=T5=-qn zXPWt?_;?WQJ99ak(R`)~a55;13v)6RsbMj%lGd=?akihg zg4MGGQN!X_0k3BX3y#0wxs|7ja`sBCct!6+SSwLICoqbMdQe-*R4ju_^*IhpW4vle z_kR)N{~h7~10(;xjWifdAt?9X)QYl$=3cX)`K7hbnlfs?CI1_={)0mowS|#1=7zZc z8*%9DW z@6Ptf$N$}<{PnxX+CI+zhROfB@?XezG6nd5tp3j%0=PUjBxApQ()7#yqpk;VWrJSn zlq|VgGx$oT9>p;L@MRs0u+zz>1o0zBQiE9!u~?aBcIXW0VyEY^oxt3W+zSAPkT+VZ zx;j?Ts%s~csv@ef9ce4BYybz0r`Cp-EOTOvjn1jFNndh$5&Z6yA;ez&Z5KOdFp-V? zk{<^qQxkR!CNT_<$r7fgUcY9ZZvs{gST=0w$*Nla)3x_@e6{t$*jSVvlTJ5eS2bp z1C%DBl5f<{n=c>m(Qu-HKdjs^`P#aD86t10o`Ta|{aqm>Vk zf?*gyU$~EbD0%?njpHWsO%AtkcMnAB@(z;eAzF4p*5zjqpLqNUXXs_}QldTcSeIV| z!EB8~cz)_qF~f|3&Yw&qnT>55)l}of{~(&2f9`UcoS5b^2VOjcGT_!bOgdiOJo4~s z1H}+hjC_2RE{nq!Fv7>%^Xd2MS5lA??DEtlg%tC`%IP3!#J`uB(DusW=gTKg ziJr2~l|=6uRcGIg%WW3D@snn#$2UvtHXNF*TEBE5PT@GR@3`~uZB;KKS)-wvS@Fkgjz$B_lr06qgp8T8c49%85zN9lJ$hh8x8cf>%qcsF$5=^L8*5cY9`nt7%szXrtO@&}M>J zSh`#*Dd5nH3?0t7{**n8T=P}M-yNTsT(P^)U2m}hQ z2RA+S>W-cP-MMHsC6KHyg=+WJNt<;f`?;O}nVKfaYWy8Ks1 zh>wKM$w=%^4a(~Ry4{Z49RYW{>qNk4PhtA)34F2U!3-Y8A^b(J@s(AJCuHP1IKd`O z?mi+syEw!w-BIXERyXNF-}saiOf4ikvz^9Wo*C67TrMSxl}(a@qx}y+-qg8e%LcCr z9G|tLEfPz4lwJi2az8fMMbud$Jm*e`*o^|iEp2V#{rRM0%MP;ID*F*Q1nKisu^)Rh-n@7Oe)@DR%+!7MD9YK<^3-KOob&1$OK7APAAPQ^$Z8W*c=P^%z3a@0W&(>ULFibo;?*vVp(>TbVG z4$akTd3Sow2tV`}3zS!kfZ&$;uK09DFR!bH-MHu^Pz0nzD}nKVn;BVXa~}(f@RK`O z0uMV}#XWH_Y$U0!Kl8|@y;)5+3{It{4++$<4UHNU9F~?0!6d4@KK*$V5^}YNh$xth z^ez&+V|>vuv#7WtpvM=LY{d0+(Cpco)8OVKR8A&ZWa04g6+7Q1GNV7IYq1V~LEkQ2 zsENqw+=~3ZK^5=v?iuV(ke>dy*FaH2&{ax(ex5v^OTC)DqK8D#D|xF&oh~HBhkW21 z5ONfx)d9-u#lL6nQ*><#qWW@%g73X(SkP~kJ{ie^{2rQJ0+(U~?#A{p;*^BvqhCIR z{o`J%0a9>bgF7^wdzI)fP`_5i#RrWKd~aCL{OG4PT%?TF_kU!CQhR5G8cmq!$~H4r zjb#oOlF)AmA3W zF|0+&-g0|v%0TZe^7o{FZv|fA*>SLfhBZJJyjS$FJZieo&62x7H6l4V+A^mxJuoi{ zu5j&rLH?r&y~}-EV>IKMMpiQLCom?7LR}EiIq?$2$}(H7e=Sl3w>2w-3t4E)(p=@? z^fh+3vLD4M}cn%x>* zrm`k!TClk;MQai@cn7rbRX+5Q#2HG#Cmv-y9ckzoaR-*txgtHic!*B?8earb`AcP4 ziD-(%lWyAbN-{R=Hg38SMT<`)a#+4JEk2zkIRhTUeHl}k^{|)kJdJ%gjG`HC)JtDofxN}ZUEYe8ciRC~S`4J&L&2*`S;?kwu5_cm z8Rn+1SWDc+Q|aeGYX%d+{R8;kZEQ$%RJ6_2Tb4E-y7rFhpojX>Ce4`q&l9$6#3Kt#BP*{5`$e-c0$@+KHSNuv;DA!d}s4LZn#aMcf!l+@wGz#~~yVJ?|&9$ll+UQ}WjIuF?ZQB8&5Gz9yo?On%0Ig z3t;(grUo81c9ZDs1l!F>XV_6+Yp88OnsW$hoW8tQbe`H>JMj=A-`l%|yh2`mK?Xv) zuYeF2{Fmh*@{xYHK_p_UTkB0cjp^KdlvI>L3g@*y_K6o^aL>Di3a<+Bnt4#QD@2oX zhq#%kk8Ran;&sSWqX$e!7PLb8OOGe{*@E1v5nPjtqgj04ZG}7dd=Yi~5r^&rDvs@u z@kbEvhjpcW5St4(;G+Y;u6_KB-o32UII-KV8F^6gn{JynWv4eFUclXVqp#Xzi)!BT z-$u`;)LHM2r@@~2zdZj-RCTf&Bh|~z5JW3;t#76oqjvO;;E__1sr(TqJ}La#=pAAF z*n4-$6VeOuYnN#YB7HD^s-L+Ak8y|lBILfu}cJD2;mYM3{7oo{CGV-rR|5hBg z(alAo-lY{b;6YCjv>e3toi)kru(Kpy4Cnhd`3PCR{d(7diI=T%`zBoEybTa^;k7t- zFO-a{cJo3ov7(nKtV}R768X^$EtI_WQW^)xNA7t2k*h>Mvjg5U{;Dlo`Ikx7y3IQL zAgFZhdpnLh?h2Ibpreg1b07fr>(E%f;78$*=wB{UGEWYIf8z?D#pSB_%5}L+%g7(8toI!Oebd73kaJ491)tGAd$VHioa2Z8P!Zv&Jp0wa z*{cv~{~3c~!(tji>Y7;6af4lKwE^~%V}fG`IxOn4Yxz0YD|$4z^W8Zk{x!Tlw6l~d zLImMmn^GjVwCXK-OrPgR(qD2*gx-MAn@U&atjO)%FAW3DfGGnS%WGY0b zCPgK7o1VKxm+u;qs$FX?jj=Jbvqz@1u2*Libv(`aD;Fl&i1Gp-9(YebnoC)-W{ga% z$BRXQkf-zO$0GZpKk;bBAFhk)e)IYJM{a;ySaNrrub!9I%h2ieM7L>i@Na*5L+;N0 zEmjn;ROxamQEII|-AXuB_~ad~FKJ?GK!-&l>??@mU5m_AeEm?4*xT~G zomRXc9H^HgA>XPC^@UP0dg^qBZlVS{oK~O}%bp0+!l& z-yI|kX=l~PIGx75g#?FkcKx#4*Ll+qu&@r`_s@V4f{=CL_SAE)TrS*iGl0Mo( zN-z7(OID7>fQe;OIS{VMU7|c8v%93}nK{j7k*nb{`}`qr!%o!huOP0p)2<+c+pd^XA4w10f*^{;nEXvIqMJGu*U zdydupsTny}V>lVR2v8~y-yiKFOicv5PZP20MKqqjr){io9VhV8)I{E3&c8ZLr;s4} z4d^^Tw!Ax4qPvi~=UNDXH>j!Y;v(Rl%67P@;@Q^7f91qqAvB@{?fGGJu~@z%my#U9 z!tu(I^A~OH88t1^3DM(&4b9ZE@!gRxL`XG|f0RK9S#^NQ*hC}pePpR>1u0TvDrH~X()@>=)dUlnVKlgiWkp)444g+ zHy0DyX_NY4^HV2nm5?*3W+`k@`pl>dz^ur$<9zHg-q{!6objfFyPk23k*u9-U=flZ z94iPs;X7}DU3FtJ04GsM-XWKy6tjCRW!Ehknv{%TIlx^W6X2^ZA(72IN%i|O&N<%7;tSkdFeFNPG=_UmR#N#LnoO~X@jaygvr-`Fz*1&VMy3Iuta zgd%GH@R!d9u}mDuKn9P0ge0wSVY;xnTPG9K$U$9g?D)Az;xFC`RHnGps&m1@N$=4l zi{A3vt%XyA!vxlxN+1vV>y%NEB{drCY3;atU7#)&Xr#1I zg#ilL-dt{Yhl#FiTsGBkPwqb{2b=k>HD@erTGetTwK(F%2coWmX>9g=(U8k`%)W|s zoRTvNv7Gq%NH}hvXkOILwf^y_K#T20%$U^Rl}C=ta^~Nng-r5#KrxA$F_P99!i1&N z$mzQVoKK%cpe26u!sV#<6UA^Qq_1Mxlc{2O*tRCu(!^csJLpzYL|ztU3-+0r5=XE{ z1!=uQo?eUczJ|qXGU2_LWVBfcb2!9!N$!SO%h#cwf8N-0_Ho8+-Imi!k$B{BqXu;f z7Y}5w1L_a8swc}Fl06nS7)2%bmr{6WGW${|ctZMTx&acZ0ghF z7)Lz+T-(N%);T*uOxh?_X0;;6k6xaC@ryS+7Ma^v?wtad4mN;foYmF8IrK#;*|=K9Kn;*rSw4GJaIGp|G}?_YY!; zVtN*kckZZ^qzx2OmM)?oGll9{ldFrrV@_82#T3ZN4l$lI>Bs#beStnh*(*rNryu1b z&?V12Hq{f6!cc4sqQ0lG-;TKpnN!Kz!Z)p&nKUxhtQg13kiTveRuis#zISRH)Wm+D z{**)M)w(~#YA=U6q4zrBf(bNw>Y4wXOs9SR;`Z9N;JRQ6Pqdp79k4=2p6N36`pB>t zlz4Sa{*gaPOH~smj-t9cOd>=L8lP?oJ2XyB)bw2{?VJvM@?;ULC~q!;R-t8Np`WT1 zC$5{i>m$BU;$KE1_>)u)g#&``$Ytt)a3irKvlPgd)2J+O!Sv?bU*=+~d3ylPE;2Cl z5p&+Ew%(9yPKimoKbM_krA{8)FD>fnI(Idpq-U`>H=U}Ys;5T6Cip>G`kkj9Sdm${ zgq)^gh>6Q!94MI>`%TDjf5&2M8tP=u;WB!UU5w09 z-Eo#ceaoh$QG;>H-h>h!EnMKehI%Sml086O@^&N6%!q1k{mLbGq*_faSA~r@-lNC} zSovzifqEH&es|bLmOEESQb;gzkU@tyF-48qaykrUzE~_SpxCY(w)K>Gy{oK^kdh$y zN8;6viOKs(CPS#Kg^I+(dMT?cK%6n!!(1hj3O(%4`K=2FW~NTnYM;nh4_YXcoaWyv zK^r_1^W>)L2~nCaPLlSqgc;(s6VBGS6yrz^(NM3!hbt5 zy~Wj2&+|P^nIQNJ;4i<#VR}gzZ8gGr+=^w^ZO7WllTm|&_mYgW7ch7l?1i?ev8DF} z6H}y_w(jqZZpWt2#}X@APTy@-_XiI2rnC2AWE+L$lEsLMc0CXOyj1ILymbN8TP9Fc|oz_^hI_Xp*I8>!3FV2 zR57>$c8RH?4a~o-2<0Ddi=d6mie&QQywJ!S->^b~vTKvX#IUJe!j!xw32`z~g@$@g z`3bVDt7Z7XfvT0uy3pNg8#;bS<)tNfeiaZ_s5%v0`(1c!jjA zO_2gvRZ1F;N+GjYk8LO3XhTjqOnGvdyCOi9xb3WU`Nub8&fIIp?-fx-?4SKV>kacN zqku4}iMrigZd0OKxrnL{##Kb4?(m8*x#u;DM|oAF#}TKgqfk*nb?mccrL)&0sMeF8 z#xZph?4b=a$?96jIf)xxiK0Za998?=Wxi%fsniBpWB;%d{=gK8!KATSD^>*ka%PbL zwU0VBaLk@QV;Mw!IL?7op6+bC+x3M-`TlTwBma}flt$-E#_S{*1J{?9b(4w-q z`cb9?#}Y|5>AA_ou{3i~DjtE=-&oVrUm{R$fXE|(=(B5T01;l# zh%m>Xbmm3kusvk5nk_v~Bw?Rq%@n`PFIu;D5pzd}R=&HE=rR=y(Y6?yOXYT)Dp)L# zdlFwuPHONG9_NpnD9z!JR6?#u0%>F4rem1T}9(QNcgXkuaxoK8&Xf$%j)=W z25Ay5;5)cQyZ`Fw@59+;QQ@~9;gdQ_pk3^n+9K+%{8ZNIUNz@cAg=AMUSzNyT{k0t z6nhBd5)o&)MDaJ6&)?M$Q7#RV3a14p2D4lt>P%qOp(ZDoF=v7{;)KU^UYQy!1_6;U z>&QCU6x#L^uvne?Qul(66T=udij$$+MB| zct)5oKfDLIf>Nb4Lw_)ETQR2Uxa1}ykSX%#O>AU|ixurpA?Mg1k=D`8m7i&gmN=9P z7A{IJC{07ORBE}6M%0gHc561Yh$x*a$9f3U=AalpcoEGQqsr@-f66Np-%F=sOUKVP zxZ#f{bSGW7E#w_XqOad70Fog=$r>qiU^dL8MLA^<7vgb71&KCvT)ZQIgcs+;pdk`y zJ+^ffyGA*NI~O;c7o)#>k+P581y=70g})VIefaV@j!a)xx5+hRjTFa)tE_gNHx&4l z2y%zud)Stiy58ZY+qqsn^HiwT4*rhaV-rij*A5h4uQj27RFk^vHiRhZY zv$ljnn{Qyy_glKpk#6VB@8x)FI5##){~qr)via@c{AVwF-akuz4sDvnNJzCJMR4VS zyy70|_s#vJixBgtk4Z)CIf+=q4s~+~r{$|*x#Z<};VNQbtCvg$tCK@V8Pw^ZAi&^Q zSe)v&hGeXHZW1W1T44^Xc`Qiq!ma3&$lQKjO(n0zD3?1O;#e_*YIcFUlIjoTS~Wa0 zK4T)amywzsoiVq(b?$IB6x4QCA3;8>6T#Pb5{fj^V+IkfdXiJKo*Xm<~I&AGri6__`uTwVF^F-WR0 z`;X=4q@%M3UsI(**i$OLAccC0lbHJ!^_X%(0aKYb^AwkHOk@RVjTu(1mirej zU+Ir&%Vjw2K*1_0orJhzU4*Ycd*MHgjIirMGZ28}0W51HZTQO!YUN2npd(Dv)JgI2 zFtKKGPNc&qNq?g<_;nasU5W~sgb|ULrffro5~~wBCV?r4g#9|baFTqH&X6jAmOR$H zuZ)%^#MYv5q4ce9aNX$0L#1oh;K4`mC@-!GM)fBTNL`wo*6(Rh+3BZW#JIWwNB6({ z>K0W8HcFxyrHnnJ#6ufPEFRoL?3!T`odT!Am!7JY-5SD|X(-qR0{ox_6$r+IB?2pf zFw1`xETSYLs|Mup<$$bGC<7}yB@sfGm`{~LPMe4%Z>hbR zbK!=qJ-9q?KMORGV!5flgcP~D$(WV_Sq6>0RX=-~t&)PPbLY@6Q-w%I3ev=WX6oBj zhlAVPzG2dlI?&-OK8RR(@mrCu>xyKS&|A39@R0zNKLtQpNLz#MqDNl^3SRy zFXNJcj6LqLM$WpJy6twGG<$w~MLEoz*|N#M%ndaev~8h>U`Z_`FKI(~`Q(fbSQj96 ze`S)iR3A|isgNyYQ>${x?PvZb{=}p!g%$SGoN~#d%6?Wx8{Z;tzk76JsSQPr?q${? z4423o%)@HrOhxQmi`lS{1}l!7ze+Dd#q^R&wUkDKc>f&Q^}I|e71o(OlAM>f5ENo$ zp{SKi5Lv4%d_V^P(H6-mQ70yL&GsT?q6G9t+?CB92-by5>|k)&VadVqt%f<@A$s{Ov!7dH!fNam@Vr8Ccc{knZ^!19lm#~Cf$h6hUDXE`3M_^KA8R;!^BB{M1;R(!8qA_N;B zZfREoYxeM;OlnBl)!`WnX6-pP$z{lU55{$5mk6)G| zd7&XRbF|dKyX}{8TOUzQx$*z3C?sH&SB7bj7Z=aIsy!+_Xs)`b<&G^V*+U9ifA-4$ z#7eTmFeat+-=!Qcrei$r$;{+kH>jj(DQwfAmd(pz!fBc|HMDX+Jyn6oq3`^nR#wtw z4K#{}mrwv{Rm!tbovVx#wdT}cV|T8J>5Cn^zlgmm-aFi8jAka`!~MaN=jw4|C6=vr zZ8)d&dOu?xh+9gXCKkzPHj;^m6K}}3ZFIUyDsQ2{F%NNF9DO`pxk!NhaEb=htDd`w zh8^b55pT$37aq&VWTfuXeZU69lnfarp>prn{YsrEO+%#%((u^JP?6bDZyHK#=s6TGfj5)$UrZ3%3A zfF_^3n6kETs)Spsm(?((o!Pwv9fge{X50pKD0`a99iLog*1%996X1BP6_OBHVJWC8 zmCibGj)UhSNxAk5Uz^?i2B0S45~6?Ox+v(kPU((Ac;$BJbwB)Qf6A-aK%lG5?!|3j zl4^`sNh{^Ewf3M%PS}&0u>UKCAv1YO)T6^wc>GnInaRGq$$cKe!%_1tU6mI_A#(uJ z=oBYUl7%S{&Uq|Dd8=mJcs>wslnFfyd@(LO{e(_2rlzgah-A@gABHWAo)rbw1a~W! zH*V7aRw;}&sXYy)-YiEU=b=Ety-+_kQsXo|kyTZ*EK1Li$*4|-J7jl9;`LghAXgq|)#VH@*d5PS zB14K)6#l2gBgmZ^=!#C|GgkptIJ2RGrYt;gWV7Mn#OBW#7Pn`PKO_1=+n_+Ast6CC zOf_bLTyxsDHfcoTb1ILAPy(8PBv?(UFH&;9eviDVv)GB!nh0HD4^9~Fy$Tc zci?=yakiBV%NAM3?m1I>QM&+%P52I=N^1q1l#*o_ABZ9FYMIwF+|Yv^e{)ZeZdbiq zF{_R6$8ET`*65nsQZ#Fb05QfqSQwYcxeVyB5pzEMH#*ZKErR(u?0orp$8j4HeBNatZj=4($5st;tlCX&PTLC zw)-PxLJ7N4mOlG%0w0qKcqn8gtdLhMs3SaS77`?k2j^7qA_Cpwg(XK)$2iBX*R}Gu zv7jOYz*9$h9K@)iWF!VBUhUmpob={%-p0vc^IB=*Y~0uK;HY%1qNB^w;~SldZAU>J zVF_@Y%u2Pfj69f?x*{1nv8YT%=3HbtH5gTiWD>{=#Z;lsbx86QD{us~m9|XaDU}v` zn9ZI?Dp%7M3sD=#cy4k+SN`bRWvQ1o;A%?DQU`1%O=)sRMQ@0tsaiz-W%2;Cc}rb9 zdv4(5NHnWe$=fxr7iAl0OhfCzAFUj8!HYKh-JHp|%9V!S{bg#mS!(V)M6PSsU^8xx zX}(X3-%ZWD&YNZIXI}N~)R~hpk;#oqmueVWIidhgd4ESZTxvYf-12!S5#+5^sD#hT zRM)(hBQL)96r+dUIbD@Ys?2VQV#Y@YW5SP(`22Qk8{VLu=AL=8I$u>Ojw{&Sj>Kw; zp8^>q>X{*wP(Wu@K%{a35B8)ReVijLNrRf74AVt!BuSO>QMSm*{&K^y z2nSbpDTqnH#DrR3x=Q!I?clrG)h?Y9>w} z$g3vlP2IQc%1_Ed{+kS+S3gvr7?2g zteZ6J`qeC>dyW?H!OA;v#r2n8ev~C?-uQ+{ag&C;13_TzRhAyJGjn}P>x3L>gPdq? zW~A=&*AC*tTegN@=0M&W*kXdDw~)e|+4lPo`LDo4YBqt-nRWBazll`?QGLw$Nx}Kp z`x%ltVY9BccS{F}bNgtRmHt!en6d0SW8G4^PX}E?f@7P6zeGYAr9fLGZRS3#EnEmn z-b9(^WNKI++XGB)+=wa+nc_Hwx2u(z$hay(NVB8NSwd$5bnX(8%qR~`j?$~`;?=Wh z$^S$g1c&5!J?GJd_2S_-Ge;ifKWm?fB2y>hy6|15z#00vs1s!nS0J^7D4}s$1YAZZ z%zKo4QDI|uQ_~Xy-gccP{a1*g$t+PGPkgaGqe5Kl+CH;`CT}^+Q!00zLC4}vSIXWi zc{c=ul&@J?Mwaotb|>HrFrh(}^=2k!Dw<8KE6}rQt!R=u%Hr>CA$K5E_47V{+=E2+ zS8~ya|5aUj>(<$cU}{FM?6>F7$(gB8d4o^tYExy^l~0~bz>&q(*#?7C;Ty=rI4Q>FL-Z92%DXByH5;>@Ca=z?7IjLnlOjR*Lq0Iz$ z#T5BeI5EBur%BR+j^cp(Y(ddyyp$plOXAW5ukR*TX>QMX>_)G?qM^|%SCb766;~E1 z&GC%>JX@6o_wMPyMm2s=y#dmRcQ{ZS{|8K7rSw zIFcb^aA(ZeBPmXlEYs;nxHyzlq;aJd*C{%$O*Ypf)7hz###fPqSyLz~*FVz-cWy22rF6QeMcMZ zwxw+phLvL$$im0*!l7&b9hr!U{ep*SLkl#zx~pnODClP*S@{8N+tG1~=it6gU)`mn zqigpKoM&C@oztqoQkw5muD_E zDic#%>aK-&z;0yU0BOe{dK+LU-V|mQoH0K|2fwC2f#I51jZp8-9lX*+9V%t^4{b3a z&6J{YLF_E5@UYj&of{y?0SJY({}lB5A6?(ezK4%w<(hM1|E2>ruU#pBG&yy?;h#9D zmU0VpI!du%<8QwN`6yy=x)x^Xg@ezMN(phdO!MAeNLR%FRFXuY$0#W2P6LAkO=<*- zo;)kN7&8f((MYz`BXb?~tn+;Sk zpN35!cL;$s{z+W2&3Hx7v()amv#!-YJCFw<$Q*rUa-T0V*dv})xZ$NpEaM9YjtI{= zPj4u^(_xZb<}hSaxx$#QVg-cq)@HV{X{&jwX>chH4X*|&GnX53@TJNyP|RxK=3$Y@ zzs#`>mKJ%oW5(?V5kt(`(-Hb*Ns2CRE3Eb>Z+P)LP-{zqES>162cy9tOb$+5DXF0D zHtq&nf5g>_k>?~NmB1JOyMxbfzy@n>=$rB_)NB#GFkhC0&AfT5SvpM#x;aoARv|T@ zhQ75~IX-u)nxM$wlp`y>D}}+x70bw@nk>df3Y!@D76M4jXIBh?LRxB6HZM`10OB4{ z_aNcP$k=EcCmF8Laf8dNjzVf;6#cG=up-Z9d$FRK&Ykck3x>>*cK1_Jb9Z^pORY8q z`norwyA6Re|E?)_iD55g8e zoUri%c6vhLrXve-)zoSD{0Q%Oj2wjq$e`JlPX~mm?ZJI_d{4$zLt>$ zqZ_pB_@g*7R&^=4M}KlP@qs!W{LpNn`gF+oMTVUfP!m@K-V&$iDrVZVMpJvwEHBQy ze~&EI&6>3B<9QS^FbN}A$3%;OWkL8m(J4|etj=)7^n=}KZ;f7TnfhRdKOLW0P=%yW zUFH}nx_%hbK(yJ%`u3X;C^RWi9+e6kR&{F8uJvTHf3HU2?H|mtl8JS}7C9J#blftg z8_k=emo(ZcW0~X{`Alue+tu5jGup%`sEVw!eKp}GZ^jMw<0xX-jeNxHH}rAYXF!V? zE}2$XnQ>niSM|1wCz?^v`ZSvUWT}ri{S!R#JIMDo3;lUaC$63rIfi@AY|_e5|1u!4 z$fa6j10&Jf^05qV%$b$dg32dt(8BI!31dd&v&ySHL6J8&1)XlN&bqOENK+GD4f7~k zVVq?#5Mg0C@e$*Q1k(xTQ1~5YQ^PVGN(MNxt3I-e?9q=Ol`#Zhuc3jn3f=^IOgG}2M zAWxL9rr*q2xi&HAwHi%bGYV~k2G<9NnmmffE~AanOV*+mqst;H*QsP-TgFV=^5N)@ z462(o^~cpfh85!G+^fu?Ut12cdMj8YhHP9fvZwHNQWqgmxiA^-%vPCk{ZlGyDwy0W zf_JK5(=BBP#z+==-nz8Ld}(CJfT+{q6)>e5EXuNDO)1|8GuY8BWGMk2=cv`#@L-sj zYqWlZdv%LH0x5sSxUwz@nmA~C8@#}JDmQ#N>cqli0=>CeBVG}}>A;{-@v z)#l1j`rOKx;T7A0ih5_EU!zIf&n;|Wp#cx9DtHaoREU&lrDjd@&KoNjI5M5zGJc70 zGsG2A)AYu9h_fkysBASs5)@)G4G$)Z2GqjiS`|m=%4Fd(U3r?+=3vWO{Qh`JLiE&Q z7^=>MQ4;_eX=B{d^AnPDjEkXGJ`*mSESD8;RQ)q4hlT!RKfdiBt<3SAKVLwZKx}5Z z{o?7gS}&s~fS~zwM|~y%i&95cnb;&u3I;U!beCzP@Xvk7cW+DtH>i<$3Oyna#NdbQ zHWk&>elxX?=o6`tfdEVv3GF+}7 zE7*6LBBH__*o495E(=OA^@v7elB-#!_2nimG8FIHyFWTvA*X{SO+Vt44t*ElZ-pGHGaIaX zbH~0+slI|%M}7?A$&-Di3?=D<7BFjPMs96w+=mRnOkB|-?19Ai{*zl7gAfc^1-xty z!;`kN)0m9mD5V*gE(HqVgv5>0-?(w5#}V6vLAMlVKwB__ItqxO@q$iCm`)t}gx9t+ z=q#4=&ah^p3{)ED4`t!_1k0dW_rAYd>U?x>3MDn>xjq##i(o3A}SivgGl2=FpiV5y4hz z95!UyY_rRwo@_${$%*6!@W)gOt9kNckR(`VhjEI zhSK6#DsWOwuTLm@R1s|M8fliNHj6~;jv2^L?j6e_Q)6()kuZVK8YBKlg{@389+b02 zi^Cv~XW8fYW3>>rSFI{M^S*k45Dpk*!nIS0RqBO~CK$jUFdoaYo6SqZ#?d&0?Ai(6= zpypRlIB+?J>Ky~Nae+KJkd9oJBtkA;8MWn*cXBb6*fbg2mvIf=SUsaQXfAxu)3|s2 z-AZ9@s6g+ou9AtD1skJ8!U8sJiOF2O3rZ5<&VtzPgZGlThr*|NXHLXE{`K8c@ zW4Py#*PLQKqhfngB9$oAfQN&iaQVA$^QEjj?&`Ldh~O7y36pneOa?&FJZB;6(K>*Y zN+_~~1*-*5vySAvW{}o%yfelSgJ8uZ-*uIwz)tmWMf4#VFk85-3@e!5s8bA} zfU*jc0G=5=pC_54DN-K9jkOA02|X$@&0t~4mH@J3V>X4*8J6l+&;L#+W_LM?atnRx zyUBx(K}WWjXr-5fc=9I_Vo5m+fsT7w_$?G#1`NxvK%>4U#9z4Ah-36ObifxB**GTh1>Pwr7rcgtxIC73PCJ4-|$(*L{p+tCCGnC^fp}7aX^Q)A_-}LD9%zTUsh=it*(M(15(r;x~9ip9LIyh zQ^x4j8pSiu(SNfhcyLCLN3C+Vmg$j7Nrq2YL&?)*KF7NjOfzS1?qM7#p?1fYdXV}x z1;d(5)$mP2vgmha6qBsLHunVD&LCS^ixOO6cqAP)owjI1i!#u;tf9T4$!v2Lc?>*z zyh*`b!Se=^M;#zjBzurWas*}sVvkI6DqkGL zAgu!d$(7TgFaS7bE5or0UT6gpQbtTLO~i$Cl7zuwR5}AbVesVFbqbFw;`g;G3apqU zN)&|Vyj4!L5xKmY4iJZdVgy1Brr~+bff@4ys$)*!6zqegw<&x%Dd|+d%*0H~$`o5P zEH;I!5L#6Gsib9EEU4n-%<|8ghF#saBO5_JfQp&G?qkIZ0|~g|q0JNs?K!s<6I^9eFwHlJfDbP4LX;(4H)6G=m`U3 zO`;)et+y@Q@7>#6`GGKq?Q?K3EXpcIgz%YhDxgATMfgzf zIdhwk_F374*uO5U*5BYl7y`jJAK*7|tVP%oxj%;`Z_97LtgowMP>M`e+i>xB<>t%F zgm#7weQYdgvf-6FtO9Y2S zPwH0WHHpCeIRrN&q>N;19L4LyXIS*oavLP4Oq%Y(w*$(Tjm^s!SlZ4^dt-vC5I5}0 zrQ#@_*pv}+VS*YpI*8@UJwV18&@n!Tf1Wj~wVdXLw_~G0nks~rY@nz>C=htbrPwz} z88%?KsM|Nem{E>q=G`-5LsThMwB4JeRUK8h*M75199N-1u;YYtBO_45%5c_irr36G zTO>eklHsw#hnXx~BHU783it>uX4hs|$EGls5Gn2zU}|G=&y~MJjlG1uQpaIlR) z$W*3O*kO|6mAN-v8=T&Swcm?1*@#i;;k2hhrHGAeMP}f{#6k~5_LfDfY+!>-Fhw_5 zHeANw(y&_dt=dNQemI%k$%JAJo?*f>`7(8rACqMIogFn#9Lu&olE%PdNWePS%QD#X zR$SvL(a*XTcA2I7q>4=8qp`TusbmieLT}fvq{%9W#P%V!PA5vk+0FA7Y{hJyBK|n> z72)7bGZ_ml%_&g|y5!hQC{K*ecRrXwsP5>IVWkCJ-^>S341ei)-W?*#p_(SqW|aa{ zfjWd{UFP?g?(nB(G{khD{o}6qvUQNc^=}@W%<2?V0oAijfT{^ShD_*KjBZe>-c&FlPVyRI#E6BtSv!2cTH*VtUN_B5rArAcYK+pI zcEyqeh!sfGXjChP1==B=R|Umbv6o__a;&h4#*XiUpNTA)@Xd+* z$pB$u>cTXnvxYQP#+brj-|;m8PWEJzZjd(`iJUQWTO*Gr&Prm<`z!G=3LT)C0f|MK z(`R3M8Uj0`7J_#qtp^5i8LaN|n_JD8V&Wo62AdZZ8}o!qw1%e2&Y$j_RrrcK+JMg1Z4rcIrIdUGg_ZZ-lC zuyT69xfzp?*v|I@=df_4jud?xBD1{i3R^(Pah`2323HNK%$hl%L6ga~THfswsu*jq zaLwm`D|T@kE-P(zXH8G(gI%C;fNV9zZVKp8W)r=^2Y8|$O(p1v?Idg6+2tMyyE7)^ zg3Z{-#2t2Xoa2tAzN9pIG-)8yk1!|^7bKi9r-Le$FBye!BU5&&xA9CG4qm9XRUuy` zQgY&fp&FpktBl%tE0AnZl-B&@W!A?Be>;?!)wbw?{Y(Vb&Zt-|VG7c1)-E&T0^;pc z^IPp!3hTIaaeP4MTzYog8}ovZFDdqjrJA`ZYZ zh9rBSc8Kk0a0|^$+;VV5iG#5k-DFnl=-NVDorVb0NvpWxAlCBw)|Ekr?GB(}0c~yE-I`ip*BKT%eFkzaTk7krThWdwRBoAL zae}<5q6}eLh{y|~oup_~5IA988k|Z8=UJk{ci4Nkf52Q?gYfx^0G2f?3p!!73zSfz zHXpcM>oSbVaKc$^t8Yy#yRs_*HKtYaMD`K7X@E+T$c%<@GlZ)7SfkvJcJWJZwcBEzFokII6@<*C~-ToIYpg zAj9nR;$#K}O2-UHE=&-TIG=x;U`FmJZ)cF}ae=)~qw%b*Rq0wU)PzuuwW7x)kumU# zqK3+*Q#iT)JbLJfqb{7#8ei7i4B>Z!(H*QU30vJS{Zbt@^&>bfa0=O_F#4X$#3xbA zm?~KvtukX44ENf~rEX@Mk2R;z18+ynDzSRRu@V?#&-0kj=1FGLn@gT;K#I*`sVZ;# z)r=8V6)#l-r>ZhV>4cET!DL9VH9IjbGrX%kkH?PbiJWX;Q(NdzNx2gV4renAGGl|hG%-T7!ATCDi3CPY z_%w9yN#;aZ3GS0T^d^yc)Lc6lrX{2ot?Z(f-@w>se{s^h0FRxATT$$UlJ=bs+2>#;!X+etTXCqmgwK@TTVz8aZb5)gE=s;F3#iH7Y|NSjP!*{IwL048 zg*z8=9G6t9zzQpPrbnFDVOSh+O=xy(OyzZGZb~YKa7mLWh7>|49J~iiM&;_w+0l2d z4war4LnAmY+UDLI54A%FF${>aLM7<)X;sCBiPPEaMm$5CH5H^XR4alii~)fS7*wGD z9&5SV^8@j89R@HVbN&=JYFKh^3?&kvWtsnPs=Sawi04|7{sQKG;)+CILHGWwAfQZ_5Gay~V) zghhoY$gJp^UbSS-)GGu+Z!+GFtlrKVayJ4`;THi@E-y?OBwt1l@) zOD^iGB6iG@-10^lBh*b9O2diGr3dAt!Uq^R>IV}x?C3lRBKp9N>x7L~29{iEf~C=0 zPt7XEoc?6GG8tAAjI|>7sE(X2k-m^)nldn}A~lR|y;`}?!jRdzaPwY{kLvVSr3dA@ zWmXHL`1CM@ki<~D z6gja7HPmf@>TAu66+daiuC-=QoSi~`c5KzGcR4A9eu)gV3}0JK0wj$LCcuPaqcwmq z&4%@&s0Km0jk$#l#;!CaEJ6iysQn=`EklUzv~cE;=uAj?6s^RESr|N5cr^&z**1xh zWMt9g*S7d$#Sa1*U2sN{oeo|9fmgU(PYN8=(&rxzhj3NG@pM5ez^)^PhAUrlq1YQ$3N|t-M9o;6| ze^6j2w{{&&uWb+ya0BMZfS{4u)Z$E76%s3G-x)5{kn!;;^(@q>J zIoX{A))LDkzzH(Z8!%ms#|743rI1GS`iDDV8c0T&jrFC`narOxX*P^b7EEgqG)HL_ z8BR@T@z*tkD>W&3dgALGeM16%i3RmBXcd5Rk_b$Y341S zB_tJRM0Ss2eI&bj63^uGON^er7PfLt0Tw+%aT`t>%d`hF0GD)NsG*s23pml^!L09v z2oTx}SaBy&(-S=NZo#fS&@zjF_s7b+#n3>PY?3TciX8~jnY2@tFp5|#UPvY34}qZ; zPzRVgD6=8MraB4=CLuzupk`53apWWc2n^{=)MYp^hR)WzMVdUTYGSbC%q^MbCX!{F zBPOhjXL~qjl_O2tGZ@%vqabroIN(-zGG8$+BMoSsA}(*DkuA@R6RAw#R#!e^a7Kz&@RV#yDG~n!TVC8* zUS!vUl)TYy6lomcOU=xwx)`{d)@4EgCtj_jN}Lhd z)vt$DR#7H1Sd~i>?%QH-muNYMhc|e5HSx)~VPhF0Rb0O#mh^j_B$&v(n<(wKvco!q zJl#yiiS1~IUaFu(>YzbW2B_Bbs^+M(Xx?T!B}!&S+?ova;mXz;VOn|Di&FtE^(=ZPF0p#5O5SN znY}G4$v%P1V*y&p4rXSvRz{JWE@0Z7qS@wgOU{eER%k?I>dSI8FzJbYR=4aEfhtXP zl@fDBNAr7*t<8^r@<+W9+GWa{OCkW)JUg+Ih>sr(He~a+<1$}NHH{ZCXg}^eY|zWm zK!d9rD9y_>6Bb?!i^D~P;+UxmQ?2d{C;kDNgOmsonD(DGKitagN<=CE%703^8 z`#8k-sA%jx*(T#XF$fz}!au#KWa_#Zm64@+(6LyF?JTOt#7w=1924D=&R7O(dzBi8 zd#cTAh|y3OslbK0d6oSK2rLsuTkwjmRgL?$2s-9|b~K+=1}cM}&lgd@Z26Mv*6VJ5 z;^3pIWW9zoLZ}-hB2|F(7YvSaN{4nksb2}2sl41V(1v5Q96=h>$?2ftC75vv%(@5* zn0)Ap?iMVt(nuFMOkD$_Y_zCdH#E6$>7)^{Ob8aWcp7S$hNo^!OodB!{EE3WUYvGn zIjQ3=Ika1{b!S8}L$>zBEKRS8k5g=oLC|X+iOrKsqS?V1;Z1m9MXkoRc{IwmMBU{S z%o(MYZy{hJ4{iI2VlQ?DZ6^YGb_`i}uipH=EsCyf~vK6|_7ZuuzU?{|FNuO+zTi>XH!FOew0BYFJtNlC=8SeYc~)$i-1u6eqWJaSW| zNy6qOc{1qeIgFWfkRJb|E@4JWs9oO9mj^)wacI6|vOLyzu10awFnuB>>PP6}@#FL7 zaJrG&Sab+rl>+B&MiWmTIaY*IjiZrQt~c}}kTW>mj-GjYlLPIhJ z_d(OaRJ}@8T`d=DHs^YGA!6Q4xwa$m?C61J57fnMX&&WZ%>j%(T(c9e$k-M*DB60m zM7EWO=TJ?lFQbJ6DReA?<}XW`Gm$prs21b;j>C}OBAxtcID*C{%zF*&3>kEtnZ3?N ze=_?jT+ttgKwVn*h#gIUxxKRM1(-6tV1t0k7gx%XC&fG7WQJ39-F5RMEn2N5bVm0C zS(s6p8W%}WRF^!;U0@*X5$(6*yDqQi8ahb(*6Av8XA3bI69j%ebvS%NLm-kl-pMEf zY$XO10y6CA|47#$TiZ^yLKqKd`i(-*IKVlxI^%j{Sbr&ym3L*EMd3B>w77zKcN><- z5aQYDLv&j`NM!hNz1KC6?@^-QMpdI|cSBb=*a=$;BwAmPgH6o%;FmaR3y4NU>2_o_ z(XF(io7F~Q;b2rW-jhAaS!TDbo^~&rHf=m1dmGW(s<+dKXIpcx=S!q*U8swjHoY3z zq0)5cNy(%;hLsJ}`eQ`o?@gR?yv-@pgz30{Qks`dibiiNX-lx=4XPqVA@^k>UFAeP zei}25hv>;Mb(=10xZy20WP65%aBw7u?D(T02OB);bEj#5@kF4n=siisJd!;Q2L4WLG*t!WBnUfHNF-tF0q@Hd6{~sK=TAU&j=*&Z1aUo1 zlGBnleU!ReA#;yq&%vB1#h`bWgujCvwk*y+zx zq!LxKaAcC3-A(X+vgS;mTsq%(??Afe|wSZ>){rdB=# zM(`19E{s+zLqXpMGs)2>cLjTG7eUG4Ch2lIttJ4adX#O`lIF&lnSiid)r&056fe(L zljk}`Vi{6QBHl-WSw*lmI+CKQ-@Y_r{F^!4%qRB>rT1M}}&@ zWdx!z32*HR*~_0N%8WH;7I^8J5K)kdAV-5HH9^oafMo0hZ5s9#>25uf%r+d>Jp+PN z-;$!hnj(g~#?9B5UzZ_AjNwXx5KX($IF#$85cv%Wa3-aVXf~lngqbBuhnqCPSnCHYOag07$CHo0|rZg@mVX}nQ231rcm3yy7JCJ&LqGD5-&4#$t%0B|D)-S<2##q~hpES3X)eqKVW~VJSp_ z-Ty{i2O2ROo81VFq?`km8-K2ZyO>>4D;La{%cN(Ac3T*TvYV;0hTCzp`qJnjhD{7R z`oqGMu_n~_i_}^)GhELtR&2U@O(M`Gdmb&pI)f}mOeTs^{g5GRC)_%zg8%D>bpi28 zr_X`jZVA|Pp`xDu-9{70d7Sc-$4zP565mm)g}|+DNITR57B#AoiLJs_F)C(kHB*y2 zU22r9^5Wa-D?hoTG2){S$nfiWiqAHAGf|c_u%>HmEL*G2f+HbHNh!U-=YHv#&VFmqbV&YBlVmYuBgT zvDOA~O*=TclKA}5Fzt4U!amH^*D5x7d^CmAdB^GRS(+7^QDqc5tcJ3H{IGFeI%TFj zHCZ*Isz*%m!3`g}V|=mUTyjLVj4`0(nk^V=hnVWrH8gKJ{p$#y0J#>j(P)p)9qmp} zQ;=HA!yQ~XIJa&*oW_vdO!bX*>e;L!+Z#k9OzRkiB^&7L(M8g=pyx6@VSFa#Kxvi? z^E&X{IIWChY+|OVr6=5!z6g@m9N6XRo z+@6}CY_eC5T@ymai*$}@Yun_(jVv4ecxv%_yd4BrCSI%7FI8ov#B=28%Ei&Z7|LnH z_Bde9a#hv4QBYA~CiPh{2!qeK&1NSLy^pW9Y(fmqPR(3Ro@7HO7TMBwDmDd-Cwl8P@x^oL&R<~t;KV0Skar7*ZyW2leIzI}6J z$m%qo=4_$*in!zQ*4ph`CymE-$gJn(t@xeQ>g@9~x6GD9kPsu7$@g>E43_n>4vPLi zJWkHvV>6T+gR?AK+jSnMN{vpBKz9{+xV~6qrE|xWy-GMTSbkIV?uL~R8U$^#+(tZE z!^%*&eNVVeFc3_yOz z4jaP^s*&wPrfGfOck1c}X>E;wl%j^YlL%WRCt3|m&5`m5#5P5o0iY!qIZOFAMz?M zmUWQ#5qEH>Rz)@v(0~SuS7=#{g^}UW15tBp4%kwTGotJ{))mTPBt-U&L=1$+*0^2_ z0qM2bCgu&=o6Sl%E^Py_ktzh$uX$2!UQtX;o8Dh_=u_YwsPafi>aBE>RcCm853;)J z4Z>G5OSI64wbk)$Z;Bpn=7oFjC=4i7l z&rxSh4#m5M;7O%Xqnhzl!Nw3&Wm<#W%400XGUjEqwiFP7CsQ`3lffuo{~>A+*c*lF z0Y_d7QgkGW((uM+niQ1tVM@BX5ZWgaxX>t?V^x(yF6j@%IBAG(7MrTw*@d=3jV0rM zoDSpozhe0a5}0|FDJ{)`mf;FU{>Ws*FsqrZOdoibxYH%i?eAMNrBWdo;WICzokF=Z z#X(^JtVe51B2OmN+G1v%1iHh^oV+T?!HD5WS1p_H@oqjghK;bL0=8wfr1)2gva5WY znSNHGSIY%x`IkZCrZmG?oJQLKOD@pT6=7NzND|WLLFQ`IkzX>?XmpTg2Mw^&lF?;l zE8IMTw)Z%7$pvXYIwgcxdsQ7IO!(>;WYJSPh=iXq?CQj9+$MLL%}m?7L#ocGaN$!k z42-GS>5*6E^Zx#!=GF|ixIBEQT~P!p815`3>P^77j?)|TPt`GOQcs&4CsDXm@@H`M zLhRVcVRwU9qTvpthj3~#t-XckHu$q;tUNB^%gaR)F|NY7*P|GWb6cC$p^=Xz?zt+w zRYYhOp>NlyTYY1`Fyn~8%@pWtJRM=)4HPL?>~O1f;o2?*g?nHj#v;R8FAa&JcnLN@ zv{PD6_W;W5XZ?4&eQMwrcWN+H)a6dzX`dK|z_$eq|2ks%x111?981Ck<cdq@-nXd~nf5fX9ZMmhQS?9wo|*q+VdmH0}-hbk4F~oeykO zSCTMJGIcD9w;GEBqB}?`xIn`Av6nQMS|m4A4NtD|$l|cIrrB?k3b#iPMXcFxYH?|` zyXSBZU890E$=6D5b!%y#xJzJ!wzg8jv%49%4sN-{&sYZ&yat7v0Xxz3qq8In zO1WKMVOd>Pe-U1fS)xo0-s%%gXING}PCG3uF8eQ%2IcJeAG2}fM{nOP_pAcx)+CEj zg|U#Ggv`lEYWtikAnTMO*ho7{w&8COhICJBI;gqF6J~6OT$mpQ^Sq-Z;4$O(uJyr*9OPqb}mm=<#6 zuuHk1v%Eh z@-b;fmB*yRVF_LTdz#{IRP{P8x}L^c(hTSsq^XTA6;;hz-Os-_d#`E^Q#Q~$+F&%y zkq-?xv_jr#li5t)M-D+fR>of~F1lEZsvdyq9x1; zeKbatQ8u-_Jj(K=^M7Nb!&z*n%xIAfNu&Dd0C*XpN+R|V2-=uliaMg~wSp=OCU(Sj ziXDBsG%GCbHLiymRZC1#2PJmGCotMQ9FimXZZ_+}IzKXn2w* z>kCBhQqB@Q=0_arDHUEBtX#>gS-r||M(X8eI-?}>ux8vxW?-8eVVs{LG&Nkhl;1>wsewB;z(?(NkW8KEv|Cr4luzXby~C< zN4MpoSxW{i9b($EB$sKS?D_*bSp8R{d1x~YkpZ$a*0+3)%5E;^-Szqip4OIxLQz8! z7gBVy1Y)pk)@KBSg|gXP5MrGA+6^OXWZa!R%nL4HC^IR&=17d-w|?zs`0^DpDZCj9 zLu)u=5aH>4V^FA2k_h?s{g*F`mIW!cD-!XvVg zIj)Na)LDp#2fTkh&7h8`1;ixp# zidevo{w6bL+YHXPtZji>q{34o_$JRJ5j7-RWE+S> zXJ%~Ehj75goYQh(`N9~C)Bd=XLtNJYj{#8wVBvRT5ICjrX>0u zq}i%97ZT92Xl^8nWz!isCjB_U=R-P;E?&Shnr9$zP^i4+u=60fOlX@b5m2Swzi}O^ z7m@ck#IsDaY`f6Z*k%+ZQ%U(6Fl2Kz3T}K+#>s6anM^!OVDPnqZ$SqYxgele8T+~yMG=yPCX53cwS(%4r6?$yy3ue-> zX^={WGV({6EQf64N`#GH+6L-B2NmOWr}>h`qb-2d!((N3mKH$^X)uoZvRwNOP|Ynm zUmh)y3AUIYQ32B-_r2YgUYls^%+d~z-K$BqLBLt=qs~0)A zdg^cFCB1iO@y((l-`9D|U8WUzoePb>etjI2f45Q#s!h7jPjG^v9a*a*u> zCfiflpp6)T)SWF^nWPlJ>bjb=sD+1*gyh>BwH@7hHFV9Wj=E@Tnbx_U;^LS&s>!k2 zb50xzVtbw6+tyvLQ8$#)dZrxeQmo2yYTjv^OE|rks2|RmwG|ZQZ*Y`T&1@t_lfg{a zTYxeKI9>VZq*5$WDFpOkn>8}io0Rl%6tu*4xkPX(T#fQ*!3s!MR7u;yx|c*V13b%j z2D8L4D=&Y*b~mrvWFmsicK!potn1FHaWeeqV?_0WdDJwz>klrM27oi1^ikdY+^o80sW9a`x5?5cikQ5cRBY{|wu&pww7*!5@CP)_n@|lYo4&fZieYTF z6v=hBe;qXlix7``^D*e-d~^Gy{f+IPW9<6>@9}OF7YC zXOURSB`g*=y=PP|>`!ZV@$t}Rf9~Ue+AK4m=ij&Gp$HYN+x+oiE5i#6w?tW7KP`uT zn*dxjy5Oud1Yhn3ZY`?E<+j50E;BI20(zgXep{K4EAW$sAI&6JZS1^u%N>$>JfG|9(j09goiA_3J+o?g$A%T>Z095PUSrLB9pLPD)%_*y=(m~LQi%P0Y4pld%l$!p9kYeFQK&zrfOniP zFumdD_5Gf^dCbQ4?2EWF6>YsothB$S_|x}_2gm$y`iROO&6(d~#{SZtb@s9OX!Psf z%lrxa{Mr9jTk=zw)W7$V!yDEBpK|x~dZ3FR;f>xOh`j5F9rXVqSE%+}7sm08o2SiI^XTt^j!=s~E zei2vvJqG!Ek=J{Gl z$}-db)*||9vk@0h;xW^hS>l5D@*FskHRmP#_pxXXPmD{FEk2jNYRN>8-_ppzK1<=K zeh1f>>OKgE*yQ?&JD=PN_mcYutK_CcbVjIRB>Yxrra#Yw^#7}E;GjNV_sIWFURFK2 z(lh_KCEWpAGS8$6UZ4Ifcv=_A%l(@8vd6DKjx#i{w~%;_izj?yz8u_%ePg*X^uK0Q>Ok8z2wAF9C_)&u8=u3%^^Z&&^D) zs-n619phAA=#j-gzZPl#Nn6Z+G_?L!Zl<^={x6f_vTIs#P53n5rDv^CV11z9A3$oq z_Yxu>CK;K2q+)$2xA8uPJ4`En+Q*2_(_e3eqvwBqv_8Mm#C`iW@c(Mx-_!?Mp0-Vp ziSrknd9O6W&y+?Rd+{pFhEUw!sPcYC)?Y4vYCqrv{fr7(ABA`Ed5LrH&VPRUc{`6? zVVd*K9PIpn>CvB~HdtRwMB6f3S2D$u)OnKb_(6wvwDQb%{CcC#OCB`w|E_Ax!w8(;pGyeSe%T{NIFR{C&p3 zU}}iO5H9;aLjIV)P!CY-dfR+*1KDBmzBpDzr+N_IBl;ij(dz4oKjl|Oc~9fsDvAI2 zEAoPuG-xFJW4`Cj@b(|q_a;6y;t%!ZchS5LcfsK^{B~T%W6AsvTk%Fd+I(EgU-M0V z8LayMZr9>+VE)@Ye~I3I7!TpT7u?2s+I(isR&I1dL3yTQ{z`ua*ZTfJr|?J!|013^ z&^<1FXPWa24-&CIg(Lqz?~cUdf8!h_)(4F}{yz`qTl@DB#)r%Xd9e(BFL|&0Jm=k+ z>38F=D;@V(c#!RQtG%56&OxYE#@AZn4zw^8M*qmX8oY z3UX2y$?-bPVr>-SpMX`Wbo_otO~;8~Brj+D%CKDR4|3!&+buQuh277unaBwX?A%r! zzJ)E0v3wT#9NBBTd{`(f0xFohYSLFm=2<8Lzw<4?Oc!|d?*`ScR_YD5@~OmJD30Ru zTozT=f5S69)aJ{5L4Q1tg5$$9;VMC|kZFl#Bu;OD8m|kcKV;FV9+u2#$+b7W#}VjT zA$>dDuySp^+$M5?&EcfFl!|;9#A!M>Y26oJuP!?*aFYzAt3_e^ZSJ*aG3y2aKyZ?ox?`6K)^nWlCCeCm_G~uaC6fivyQTp_YHi%yMTUf+iVW8>0`j22yzbQpR+SP@c(1w)xmjp$8!rhP5%Akb}L zI;^^LJ$dE0IPNGP9v~dCT8kGq8s=Zt*7SO$;iS&&bzh0>qDlSDB&ZfxSiPUc}YoKpo@VohxcLuIy zSC(S{%-&%?RjACxWGyb>K>a#%kF z&fpN<_PzJl5c@kbG|Q(mKfsG2Zw-&VU|{Y1i+${<$HvclD<=UOvPW3y9hh@E+I6%J zgL^)SS#Df?i=mFYIY24K6J?QqW_&izdvW|n`#DC%MN4ti zJIr&Q323F+Ochv3+f$IPdaEI{KrR^1%)RH~efKYKUJt-cfdXyS-_>E7gv_-v_~M}H zL}VwtE8V-nqCYBTaEJq>hnH_zVkQoS@oLO?YIVz4i~^@D`aA4UGQv>S z5U-q-my9L75>SNp&UA!lSyPR%lfg;tPRW;DL%$_EV1${3D;6e16p#4A9*t8LHs%p6%i>Ef~zRp1&AJ`t1`t8S@!Prf- zX7r*7r8I^6-v?DFqD_L!(7y(63o){Fl|ZQ_r&ymx##%7qy1qJ#5H4(&4v z_o=7OVKaghxh{Wr+fd7o2%kJ*2MrLOJ9oE=OIfW2X}%0Nr^7aCRB@rcn^j&+R{6u- zmsmtS`xJ4vW6Z_gp=QX-3uvCW$kB`5BiGc#n|zrG zekK3>kby?_3jtg}SIOJ`=uBv#9{qBfY8+OLblO&V2xQy8tykSoe# zI^b7~GNAgk@+s>WU(Vty(7Z1?gg2Qi9OD>{5b}{Q?A3nnu?4n`+RI|=LxBPU73QuN zLTcMrOI8)6Za zHe%g4ra_2zQqv8I*&hfMMVR}dci^X`-H>o8E0ouP(X3&5%dofMpT@LdjT&UjcLs0S zpED*vKELAetE?)9$OH5X8!*%9Zh8H0Mre5u>=oakUE38^49X8Sw>vd%6j6SCe>ky1 z7{tiJ@ot5p&`(Qyu}u430PeGeD_E7=*o6Fle1DBrBHZKUSD=#e5m}FC_a)ED*EC*U zJJaXFbra-dZlt!>h3>cNl`({O){K26$h;j=pBxl7oZ;(Hif_f=2P-S5r3(h%EU%hv z?i$8f=C3qbyJllrvz5qM_HIXIe*w=#^=kqtAHO`0@olgO;8@z23(9jH$GYe(Q`VD4 zvoHw#m=zW?N`C7yIIh3s7oSFvO&xLkyuM6D%FK9RoYsQxAN$69z2t~k?XRB#^n(j~er24GZiK5I*8V7eGJ&zN+!A!&S?9-zVdAxUk^-@O zX!U{BVqTtGf4}j;*2Q(BZE3fcTk)rA6XvY_H+9UKh7=AxbX~1M3dVQ7Oy;MR44z?V z?jgQwNf5!!nBonfa(IU*P9AA1;%BXAoa0^X2ukhW&&Doet_(jQS0DVZp%H_XI$DPm_ zglYP-=5AvisqKOjT_tPgE712w1@~`rcR&kL)G6CIo!}N(s%n)!ZH+GtEw&CGq#Q2k!D+{k+=n5I^(hFi@WzhV`&lKDFt9 zuCLdQm04WyXr{gc^GorUv(Fksl&{1g?4mRFkuykmq?pvCsfwvdD@DZIryYWy6J#%7 zSGbUkfCUR#y%*sRn3n4Am3%sq&-4|e;>joNOV_F%vu&?^XSceLMWTPOC& z+IF}9?wnk1iy^!80h>JcK$5WL5UF!S8yi6WH0jTQ)P!ed8|ALwKk-dy_D=|eAal?T zb5L;$K2|&rgmMbrVEeLxpH*GSHc=R6TY>pG&PlDLw5_`PKPk{=_BzwQqRtf!JJ;D) ziUaCg9cnB0{8oE){`@|`QFrye3Nyg)`779pkL6K-R9|L<$xKq+VJoRm=Csp35bm1o zUHe&Wy-gYvyQ&7OJyBE~zR`O^x9YdlkOglzQmnj#G6yVVDjl!;X3 zwrm#I>-3Hj!owR(bCx94$I+yQ&<-iah*h@W#e4ZIcpZeHFnnQIfarBH^{s0;#97Y2 zW-#G4rTdLkM2^0&wK`Gz@vy{yAgr`ye5hC4_gqV0M%i()Efj{|R}vej!1v}O-za<0 z-i=%)B-jrVbi#hk4I4TK3^CrhkWV?p=bfh^N~hb;o1G*H0Hb7RN=K~wcziKlh#nUV z(-xY#-6l++VZ{rPURTRUZd#DqUQWL?tY-BOip@&X(a!#lGSpX zB8{(!B)yE_(IedXwNPFmKnVKYELXEV=}er=+-;{ zgKaa{`OzAb-adUbT|s@70sDxoUgqn?;MT3D5G0$RO^pAe7PNmRr<8l6T^l2A!}FW( z+;3aG)7#UZv#;Xb1jXlMj~2|6(Wu|hwH*Aqo0%7{-kAQ+ez9HGGWx?|r|jkXA6;4z z0YB)yb-w~gPcX@y9wtHHI0OUeOYQ0|R4yGw;VOYJQaakXUa>3UgPjI`Iu?iQX6-Z{ zB_WIj>SRYJFTkX}E9~FRp~Uo9wS5v#;42c||9Vyd(sSDXF2ULoa(=P2KU%$k@#gmE zNWM>%UFO7YrJ$-wC&iH~Ky|a@v;SBbcCWxiw(9zm7qN1=Z@RP-D(4a}lTC%}7)W*&X#s0+x}2@tr5c1CoH7*85i83lIat`R9=nw14R;7J>R- z7peaX{M-MDrV;U3GS6$=xi{bCl$qC?6ZoASQQ zswsjDCw4)Ww4b6i@N~0#;E6z^Aj98@> z;apqC45kaiW|yt@C&?Jd&pTm$Y*-L!J%25-m~A6(NAt>VG$0!NgH=-Aa0DM$3Zr!G!LYLe90F61MdD1TZ=09<@ZfdO+mm4FrTqx zEnC8Fz_haoOoF@rq2JrK(Y)q%|AaZ%0)j|n`k2y7Y^xlO+8xrD#CcZjjl5ad9I9!(64}#ZkjP+1NHzdiZ{)XFC!)nWEQwh^k?grcyhDkROFKKuR|w->P^wn&l{X;59;Qz z+<;4$O@dJf=|Rj~ual#?y}r{_N|&A2fw)!N70ljHbE6ZRYKBnvL|da@x9KhAZ`bk@A=y!8%<-H$$kHmff>!W*j5NGa&1v5~b$jO^4 zIX^}B?j*^^sCsB(NrO#>J~woUB2 zmsDeCF9Pm6?UcmJ?rhuNF=a2*reAjZ^xVeL5gCJNJVX1i!VNDE%{QqI^(q&0gs_c# zx$)Fl>c~pxa*RWQ{LVkbzJ0b-M$x_mG1${WKGmbuj{-JX(IiE;*MT;pIEc9^0~^V= z8CNs9>{Wu;IjYXR8jF7=wqi{*8_#`=0=8zdTNvwiFeUTAOfHzRp^+%Fb8XL7gyYd& zy!?*Sai`JxtPC%E)j?TBon+T?NxitsT=F|jb=FFL3KLfUK1kBEJL<4<1gi=D)Eju_ zt(4yA2uDF&Fl1JdHw8g`o!_y3N@)Tf-;{TCZA%=WDV--wSGIGqCD z1PsL5{7N(ZmC}NMCMGl+-msJSW}f>5ln<_tox?`W^BLq7+$2z1cXY`s0JY{wN$6#3 z@ijoABLA=U*Kouc#LW&1__$R~0V2T)lQZFvF&Z$rwB5XIa{ahh_auQhM<7H}dp0 zzLj{qA)uFi+FW0f)o5o%imsXg#9ksH=!JglF@r>h0~_wx{FxTQc2BrOtBE;+Ryh6UZpbQk!1jD{W;1IdV@ovR{0R#a`b)B zH-GCQ>r|YC;44I(cOt3aKw`po<$F^aJ;+?`nM31it@I(bji{~uEq`b;>Op|J!4VQn zVueboJ{8J8x`1;^FtTW=M{nH>*f~-oQ|gu%z-FuJptW)-cso*Y1|tOJuWsP9@bDi_vlrZ3EEV+pzC}I`x_DX0B3{! zLGVbc-wOOtO(5Yka`2MjltW;_`ZbC8)XiGVrdW-s-VG3*WUn#`D0yupj0cpj2ct(F z<^?ebX!(I~wlRZQ@+SG@v1it3>jfEi`lZSMuMmO#GlwlUc1Z+j#NW9jx&cg#PeAtZ zxw#pM8o^VjID{cP7i;69Iq+&?;VOF)&A)=x#Yv}jn z;& z=?iAyUtiztr^1b=l_!D6%Z-&T^>2a%#hTfI+Q7$i$ZO^-ka~a-{K?vK*vL(QsG@4o z8WU%9lb_xSr|p1MjRUt%xt&GoMvsPHEfF2G^1GuO;5y6aY))6Q8cA*X&OXrj=8gWt z!sE7=kdkBjjt_~J%&XjzOq5NTrq%1cokBO0`wH;DEM&rrbMDryW8pjhK-0q%2~(km z7(uP8IEnzfAa0W=bMy032bM^`(VNrm+bW2Ru^RSNeCd0s7mdeBjdNfvK5`8uE`R;Z zY~}L>aEOuM(fd9Tv-B=Z%RrCh#(SqKu2#%o5_iki!btNex5tuiO=a1PU0|g1B;!$O zR!v~6Dd+%W>KeyOP=TypBtP5TUD2G}g@HV>oeGDpRMiU{?qpT~ts2<}jR1F+RLR%d zAjGm%SbeN1OAFxbI!Nji#Ef%_&3j_YWA_+;B9=z3(r8uKwyfPbUzcLIa1OadfT6x zP&`)e6DTa*dfWRBb&@4J``5Ag?x(P>iPlP!O44haFTJC--{?U;4-8Z?B|X>y*+C)CG~r zu}Ky$-sV+ltL`I7ZrR1|W(1>bPoEsZ4$41B+W=5L-jq?6&8=SNvaCme|`vHe(yJLN{QMqBo!Ol3ZPp#cj zTgvgtaZagMu{1Q{|=Z(=A82+E~C1!i;*m^X0MTd5y*(<4AJ-ESCJ}&$ho_D%yBq zgl#MhD`t1Me3UsViqZ{%BEto`$2DtkmwKQx2IX|X2_dtA5G;U#_ZvX@VJ4u1p9()i zkJR^Q9HI~3HPsI-1?^op0u!aAU`+H_#HFfPh1HR|xIW|JR)6H;CF81Rsd~=2jdthd z(mQ9fP2I)X^;PJglLKz5(b4A<6ZO6Fc#}M4BtL(;IiRj@@A5V%(xP}8K}17&UU;@r zFH}n$bRKAc>4jm-uSJ$4{n#Y((3Fkv%%&x1D+&o%biBMgzjZxk7*o(AhNNp-u7fHM z%9a%5TwZQ5=|a3U?{vP$v$A*Y@qQ3CK2eb* z&oibgzP@jI@XOC1wc_kGW6W7eK8A2&oj7`|;nCt-w6r%H&sBYD5_;*hA)gf50VJJB z?}S^_1VK$pLk24)j>EOINXX+S986MUlE=$z6l?8{xr8ePW~$5JSx@j@rZ!#~<`=wX z)HOjen%4A))w!8j=@>f#bM@WAf_)T^45K}ukcD!`)GM?2_@iN-6~@Qw4Dg5YhliH= z4cLsBlxOoh#x{=?Ui{*2nZlBSkr=>K%ID%c5xH!Kn(L+OCUCO$ygJL%gU^Vr?&!pJ z)Iw1C@vuvyg@OWQsTO=VP!#CBW?{wTWp{z!Ja1R+f3$c2NJ#M5`e9Q6RZ%qM54LE! zbz1r8QUTMcN2~kvCNJ}CY?%O%U2l?x5`gCQhD1+%b+s+oOtUN|{d_T{U-OTVbjd&Z zAfl6V)kyKun$Ih9*F87C8qP#LCR}DQdy{*rt%WGaZN83fBft9HqNf%fL~W_19}|oo zmefcHgTZ|5&}Oc1?Jj*N@tF?H`LDiz6@3J*bpR(>G}d(gB31#teiOk}2^ue# zq$r%^Be&6hhV^Tik@J?UH+9)Nc8=E6iu1HSk6T_c(z;566K@6`dVbw^Jj%B{-tdqt z{ls#;Aitt{;b`pW6eT7NV`8*GLE-%MD-R)bji>W$%X{QsHU?478fW5z@3a3MwZLjU zY!2f)CZc9VtGPbC=n=G!F1w|yI_}#E#V_9SeW;aWg1S%g~_)*H|m3t4j) zVF=KF#!}wsY@RJut~&Y^22ww3^8C@+4FcoX4(6XJ9_sD1 z^BUcJsGp5@UJT!}5*j~s$rnr~k!6O1@2|?71Nkj~yg58gfWfm2#lnmFqL(F7 zPetx8&ruh}vjtYp)ri}ly3a@KT6mXoU>AM<1WT$o`c%*Gkn68MDyVTlPnR5E$YxmT zCn}|wgg-T+B)GcvxY@HoOQf8K`P3`7DQ)UPNIQm`H_`%MslNhD>Yh6;-Jq2=HwJP? z4jr?)EbC2dx{{a6vXI4W;mUQ|JEH3GsvdxI_$WE(KRkNk7eIoh@>a9kR2Nx@LDV z89F|0y+7c+p4~wld~-*BjDx`6;fOup;(R9jxY;nk#3Wnk^XxYKDFfrI3ZaRKQ|r*C0k`u;eLFIQm^h=#U?a5uvnB%)shNH*8qooVjsQv^+>`bBFOAUp?pRv_hn3Y1Jo`>UGZ-I<{ zc1VTkDU>i?_U^?ib>Sn$7@-U3#Tb@kKtHUE1(67}UU*6}?p8g+Nk}9$>NqWaf2?bi z3MzPPgZzVZ$aKGSV)I#C1eH2afs7#F9n{+VS+B?Ttn4GVJ2Nh2hK1sNlZkQoX-Pcb zBIsqc&GbHHCh5jte5DO_P=!?aKXdMgiRy~3om1JO^&Vu~WzFYL2Jjhsr%`b{bTOsN z$hf^>1*p582MemH+X41*EDKVa|7O&u(}$Vg0%(tP(?`#`+);{3i7AX`k|noQphe?4 zcWB`xIJhX|l$Qvwp3smVDl-Vlh2fTwT}+({vKxbH{1|(tYGm9HIoIHDMO+^ z`Gy^A=PI>QYpDR^rDFA|W>uUIuzX9R5UGZFVfC!QR_ey|bZA(!#bT79!rY!#MnNkY z+NA~1yp}!d|2f-`h*P)ZcIVAJF*Bn7Q(LajlO5 zc8=32ah2I$D@4>RxldepbvZ zpo==Lt}<8l^VQiW4b(TIxZys+@o&mqQDDq)%d2n z?rL=ZOmBT;3BBBSmE_L0vCh8Ov@StJBW^}_#U5OA+h24E)$)!9sTVg&@`mq~U}&1AbHHPO2$9VpkuThglo`l_wn| zfA9HZSzvb+#y>w??pTgV$e^jAwSMBO_$F0WNB4tmkKn{~#njkdA^bRy@KHYme7XPEc+B$~9a9R>5stN(=`7rY%!NQEbG69ir%7 z`C{EzBbdb@QC>P8HutCh&)Mv^1U-p(^Dc@)9?S6_d`1~kYRBu`dY?ZS91;8IW{cpp z3;doob(CGbgh1X|z;kn-`ckulXV|O{BIu;QXSa#3?ba?qjBX>hw{H}CFEgZv-(YM2 zEq}5+91Y?eMIm{i7_`}oUUacY6ea^&C|dzBr)Cgr|iNyCbri*D^Y`)VVFS*KKM)7wA+Ne3MG^ zB8gV`-TPs5rTEls$X{YB9PM4(BYe3FZ3I5USI_vq%#YvSVMlKJX1aGWG|5a^!+EAo zHu@VahK{c!+z9w4Ze)-jEU4TElq6><384!Vr^U4ubQp_%kxeqL#E(Z_K6JrfxOuiZ%q^;+c@_&S<8_tm;WqQ zzGJcPi@}1%e6U1+L67dQNt3)=qNPojF=z)013}D7mWJ;NrxN-GLRn+NmdQgkh8y43 z+6?@j`xPph$K<72K%Bvu`L1MF>EpkIk`xo3FIIwPZ@<{)9slcA!t1jIvlA?X37iJ( zF?@V9y%qMB;PKG$`Z1nM%Gd%Sf{vG1?2X||g z$x5Cabd?MhGlASbIHk{y+6*kkz#tR&A?CoOUtd~J3` zT$La+ZHg@+Qp)1sLB2NBVZM1QoKflb69{!r^-W37vK6A6eLmxS*8zliOGB#rag~K1 z470#($5BJG(L3ld2GT*RMNwf>vUs)cr{Cryl%et-DJyS{Tw6CVO!ggj!FGQhWZ*D$ z1&l>Kd%>484-LUDPu~@2ki>bWJ$`>C5kr1r^0TT;D5RGzjVc3A@Y+!IowWqJQOBwE zY@1!z!=ECw2pP!Zl(@HVEW{@>@1*+Dw*z5afuoGB6scbKUuHER4!Kj!HoHdS?u$pK zVJjgaMG{;}#v1_^kLJKLuP-+qw&~S-SCy6DhCpg(pEAhV1y&4+xV4;q9Y)CE`>4W* zku+_>#+7M&b^fo};HH4POWpO8HF9}un%_j=Mf`tKOY z4p^bb|GLXTJ!OXc>)V}}xVRWAyO!FkC+G-B@w+PW}~{lL02`+C)_jzEpJ@_2lAz9dEpy%FoDvQ z)tLVf%ODR>W7_rWP{-dQ3p$x+;&KR~)5#?gWD5$)3 z-ZqOu@X?L=bSqRJ-d=MS6vG93JR-RuWIuyf%?P8C9#22K4vhI2k{22AnjKt~`@zds zVrOrE^3%u9!@N7hy+z~u2#$)aTNXHerk`v_;;Z{9DOeuk;PF(>Z6S`z%u`gRn|vW? zzJB3-+@}`x!Z?3$)W>*zH}u3XE#8a za`T}{!CmS%0dc;6+!p34_aZTzFOL|aqGgmmh(>VAdAW(;>2*)-csDVv;I3wcN!bQ9AGGa-YlE%u+x7ebF?ooK zQQgL?*X#t0>g#dZ%G+=Zw&dXb7*t)2!{APPfy8QxQE9WGOBq$}Kb&J)SV{|jlK`%632s5-qEVirpmdd1; zgXuT(wiEX05vuLBxc05`_q{a$peCFme}ei*LNr%F1pSFA+49}xZvtParMUL^k>IMB zS->MTlI1ryuMYeX zvR9<~XA~vtg36A{E)@k=1mk0}iJGWfxP8^>Y~{O6k=qzZQo8yz!fSSmheomgsB(26 zAk%z^b7^a$qgDvb9#2XU>G8mh*5O$F>_fOkk2zuzj^V>EW%r1IH$jycsg2DSZ!C{d+{ zz2cc1my*Ft3W`_RE#!3>b=_cZH?n|<&tzn3!*rJsCAy?PH@Ch@)&JpM^_9ew8X- zTrv?vh2`BA1Y`a;k~3W^KMu>47{MPCiK!_F*2ustb1vhA(|Q-6QsErJNv&DO@-xqM z5`T8jRYJ#iQm^WBQa)TaR_KiD7(Ve+y)Cn;0;Ex)Rf1hOGIOyHAk)7;z7jtB^O$3v z=J3<`G;OL2=Vs80qs#%3G|x_wx`y4L#Gu|FboOjHE&^HoBQ3>%OZoT3py=^ueO6PA zKfA|I{oe_`z&^>|lUf>O8#+1zDVgmfD?u%x<#IkVudn^5|IR~Y@3N>pR2=dG7h$RN zS=MkHNR7eC;&~26#k`3*+18Hb zzjEPB!#pPWP9`V+eREOb4*Ex(i+4MUd%3@LS@ppxAmfYFX&LP^-9n=`6&i%fgfxmQ z67P1@n<;;>pRNPM6sSV$#`jx)WzqGkt{U6wjJFOio@}W{^^s zYd1NIqzH|irJjW((&sh~=$h6uz3{pmLEGRAJ?j0EzbK~rR}mXYi?mud%qk9Snc>;i zKcDT5c4|YDWvly^xEZ@FOxTpIhS4-E>XtU1lR1g2m zl_ayWK#F-Q<^AtDqwk+5=Zea_{X2XZc5t~+*t%q~>AUP#9ZZI;1ob?}e_F+LRZ0YX z)6ea8iePPK({(OC?Tr?#k?XCiH_oUR=nlSt1%u_V#Ov z3qCOg{!AJfl_k8ZXp_K-D3N01*HM3kEUD424SArh%j;#BT7Y(d=q-s&N`teHs_}D{ zRi)(NLi0YLMWx-1y};cR2{Y6aS4og6=(i z?7xd0Vacb&9egq+(u_}adW*2hydU_slU9>Hp=|_=O&%u`Un{5%rK-#y?8N2WF#nM% zJ#;4-=({6}R?{WilX#CvkWF6O^&RTwOK%=vX#7;sy0j&b);X^)f;3Tq+iD3NH4%SC zSdl!T4~@@N4d!DebX)xyMOyP|!r)le;y@=P1jp7TG}k#4+E)ZD)$FjGHN8sdXMb)AZj1$Qexs_R!Y|4P-5)G^XewBEh8JR?UM z4rjhE@TeN~GrElU(ajQ%8dS<9cYD3`68&aq-FgH;s#W7&Yo5ze$jUnXe52M1tOfb> z0_#bdi#Zyd`ModasEcd<$8-nGIgK9w-t+qOh!diq{D{;l?gjE>k?TG2@!uT>U8%n& zYy?!ok(SDu92gFkem#?c0M^SmM3i4+Zk$x^s&zx||LC(k%TcW;DA)>t zo?j*_-WZW&ywV!eA#p_PG@OebpG1w_jp(wnR{?S;ADOynXo#Qv;rVnq*lpybeSIaC zEm6(D(_oSz3cQnFG%@D#%T5}ODM|{eMQ%KS{aGHO)s_lfP=_W*i2d6}D>Mik3t5Ss zoEs@{vF7k)h>3U6sFCs@+q6|~tluq$u47X{xC*7u>WWmY5Hl}^)l`K#dNMNCBc8^; ze16v|Aj7^p8#o5&oPEJIxpmp2O^ZPqe0G_E!WsZ)~yosAHi@#|>!$BxMRznjHDXy#C89KF$oG_lp*Z zMajPg8jpRM?Rer^Jb&*3dS1rLGVg@s3h0VRx@i4+=*`KkT(xb-YZ643iPi3xMZT1| z-uAg0@9^nz3niak6W>*EZ`amoe13tlhKd!(wjkT)_!G> zhKNr&-R@OZdq{7Ic-t@X>2Oi$Z`i81xiOHvQUbOg3qz>4nPtyACK3y`X;q7IU(< z@*62x6)zC=qmZR9V5vX2k#|7IhB#BQW4eoEL)fd1?>1i_Q4bUR6OYBp2v1Hu=Eoz_ zF*#-$xW}o+S ztXY8FALt^2vQs+HK`z?m9FOPS+_+BQ#jbvJCX17FC=MX(RU|{DHFL*Z(uX?*TXO5F z>9y%tePWJ&%@F<OASIQ>~f(-35r_AA*;)QS-9Mct&Gs_%;{6{mfC0uN&?o=si zb7sGNCS}^yU-Qz~dBCWNJdR=%vac9Xrya-!=q2 zZ6Ro{t^#sa%~fIrA~tpljh;T!Y-7qT2%CN*py5*WiDEnnH?oK(f9P~CH020*18*tmXDzcvPUrYK-cXrF#H* z@0^<*`N9tOTjHvFmJE^2TKwpBq)P4AwK{zIDXR=o|F=c!Z!AhXcZL8bUtT=Xi+n0% z(#M=3WczEecQ9^fB>82!E}TJ5_4S#nXX^xn zM0^KHCO?vJ@kKMIC++MvLk~>(x23{7?h7jZ>+cWk-^xYcOPWi8J4Ca?WU4-C!IWBIh9)+>|)zRiW`V~sO*#wwO+caI|(c{d?Bok-3- zLfV(29#6?nM5|6t|NTg2jjBTfKqfm?(`n0-s?dthm69PJu8U*;4#||fPgNDeP0!;> z=cR8p6VRI6mT@3Ga!^^_VgYj&6WZAoU*jAF1oU@OTM0FshHi>-=w~1R-5n76U_I0jN7%_ z7d`%L#S=7K*YdmFNuZIoHpT2qvsAv3O{o0A2NGX0_*1FR*0 zEQKG-zQ(uji~*W>{`yNIc{XPto!aQX`6%Pz!b_{ZPI&@Gx!N2?D*LLpeO6-RHDRjv zk~!(I#y9^G!{uh~k!{agc|LBKrcvP+lJ%(Z-eNl;Wlj7C2bKdj7uIuiA&l_xw$eqn zjZy;d+PMwWi$exFr3RfhR7tb}cG8kVh{gfR9%BvTl#ATNfwv*LM>q?wacyw#4T`j3 z#m63cn9h9n&|9|vbK+;J|Kr(j&Z#LDNaKpW&7&U%a!WUS84>An0QFrxm_^m4yZ9P9 z`+aa+@>5w>p7BH~;PswoKc!S}qnr*rvA7@yIwkn|bsl#Fu&fsFkQGq*qmLhr{!ys_!uY5q z$DBpq;>ojAU#6?t=vaUa4`!Z(x26TdPNom9dbaI-%71*OyggU8K2Q4Y)kI0{{jCHF zd8>aKC_oQ0vxay}UxqLLev}cCd$meK3ugMPf297zzBI7^wh5Acnw;kQsxdrWt-W>{ z*GT_uhvRa9B86wWi~qjjk!%C#`* z_!xr4eKRNZ_Dc=DYr7SFB&ip1m-W%6#x3!&O@p?6sYz>2yvt#_6;aW*O~)*AbIpmn zmR2`SZ9N3eGvTPGiN3}wuzF-X^`&74td!Vk;yl$0h6pY zIVYd&_mcdi;T0WPpaaO5K<=J6S|>hyxMXJ6M_lkO*7-wCkKk?cxwVx_W!=kVshw3^ zBOh;HBjF+z9h1W0O%~C{nlHuLOk`a;Ehy>bkc%AArIVvI-wx+c@K$cjMnSFxj+NO} zc-ONVZwa5Z)|6BMr1R=S7m7I|X9oHX^D)`9ZHMxp9@j3C zwAb&9G1cj}l-@#OGk##MEg&PBW_8a;6U{z?ZQI-^ey8KA;LYcFV&#Szr?pMI zD&rp@E^K~)R%G^?=U&C~iN>OAw{L|34q@_)3(iUiP@7lTsV;k9(4wX?Br>|_V5gwS z)$0rfW8w<=7@8PISAogXekARLkchW0QM+?H7x2S1!Ubyi^a|qXUmD&a%I{d7m|yb{ z0h-uSq>eo9>`-2C{NTuGUjch6Xk2G|E1w^w_?at3>3rC1%b;a7Ge^5*B1K2giUAAe z9a!TMMwMLN!{ijyH5=#<#*(>>8pwe#dc@Z^z9p;9OgSj*hk)r3BAS9JQ5;c7Y#_)d z;zb{XG^jD?>7qfaW%3L5KeA>Wna!j*l>1FbL%N#2TT<#_B>XTrHt^GLV9dtn2b_H; zf5J>QpQ~au?H`PDV$XlRXK5T7=Ga3Z9t-|U#0;6Y1592l&au?YN*MHH#oIilCs;5tR?bidApK;0?0iq9~OqI8szA7F)n& zQju0JhMow*==Y@=(oLKWRmjRBehk`gfNHpLVx_=wy~4G_9d9oNcYMSVnB_&>hYk+q z8Wq3g9p|xnFthlKr_s|!hYS3SGZ|dg&LIL-HNbUvR-YMUsv=*q>t~+4p+)! z=)k09VQ$s1_J{f5JAYrvBq~{)B1lpyf{hXm+#)7v4fs4HRd~Qc(kWo4p_tbE!;RQ6 zR)~nvoc_(=8MNUgdX5ez~ z0%X*N#F1Da>7zrL+>I4g-9ZW(&4Ow382T_U6s-`;Hks%cS`8Tu2bgjzJ3cG`Y`GCa zskDlNgH$KRP7Ml+-`N41y(Z&}^vOpAdHwT7FFod?OvyFc!Zf)O$bKf9Pr)<|fV65J zjGEug(aNVe9e7hFK=0iC+KN%s9bSuQ@MGw}WX}6T_Cbp=>N%eQ>^Xh25uteflNF6d zcMpxa)6mjxJ>cN&CMS_LEx#aV)PGmgQiN61!jgn%_P-%k2qHB~G#UANKZ$OqckdN7 z16Evif6g0jRRKQWxsI=O&4@AdU^Z{y!}mdpGwKZHzt(wN&}t|}d(0b8?=Al1bY76} zdCnK<_sRxUv(^16{bg%-pP$G!GI&Nn7dkW;$>x`~;}|N*r(=mFMLhwb+kU*=2x+uj z$5usfQGFO6#RhFd*(?S)H=P*~R~j}8gv);a8_B)S$IR`0L(WP2NW=y8h|kPv*Ta(b zNPyCBNno5Psj>PIfxhVd{og)hUB%(N**4FKFhF<{?ndO%v{9_l9*2HF$1&CU9i)tX z{%8@L*^<%vLxa+YGUd+&`)V6c3%?)_3?Z>FNQe-TedqCd`1r-tVwIBv8jE2R za((N2sl-c8_+cSBDS}VSc`iMlBT7$apRT=x{grPv3aW^vfR%MdQ7T+}KHC`hs3qfQ zs{P>Ja_lOlBZWZOB$QNJW*rqKeP2uT@3>{=J4AyX*7+YKxm@A~8*}A^?P2=b;;G<- zZ^ZSrB_{zbBD!3lY>>ZP8Bpcxp4_e0{bNQb)V`}&1CeC^;wB{#TO19(iKNWla!gZAER3x&n=Nl=VXodOdmE8&yUKR^jaVM z9PU@|a`Lt6rQm!!^(DqmdNhF>@UU^Nn7`C8@JHnu$o4|M8&UV;rl0gyt7YkN-Ysb5YL2#Y|S->?hx! z`Q1N;+4Zb!jZ-b>xl8@HMI%3(?L2}W(4#Uw*bfPDtrE40ybLtS`Z*?p+c8&+u*Ahx zkDBb|rWPI{RDYD2w^g=Q;3~xbmo4|E;!4a^zm_AbQ3B;Pt;pyRNirX7qqlHj!~0+ z;kQ89x|pnq2-dDo@zGPg%F4wpUrOcEVr_?e+BHDQXqQGchW!?oT0iM6S1Zy0V!D&n9)9Z>D*3bdqM%zYRXv`y|P$0 zs!0jb3$6LE9X-^!b}vW48XBGaAf2@HyMMeyL^wl2!iSB;;4@l&z-D#7m+2AZFk%KR zG4ulGjDrN#ccZD@=`pCR6btRs8%y~9-SCaGhTOTE&M$)W-j+*A?F^2h1TENC$*}QX zDXZiDfU%DGg1$HK@Y&bUWzhZlvbQiTxEEqtH_{eW-!NA14Z&5qcELE30_i-}81r=5 zf*Z-?@&TtSl^n404hjfzxCF`VDZ^py_Z!+24qDpu7_hr35h1%mWaO8Yc!KrTu^iCC zH9rMX^Y5GOWZnVSi{QPaKy3QSnC^n6DCu{mh)`b3{X+ei`jbpCgOb#gGwS~@TUhD^ z&6VsFu>SKZn`U0~g@J9rmelYLT$1j?u%=W1wbJPHV%UUjZQ+DmR8V)jow3TTboyFr z?PGF7HV9`Bh=MKHicD>ocyq{vX=o7g1}3;5uP*#TzPxV$>&5V1(jl_rLI#g$>T-q@2@$YKaWK#G#~?l&@ZUCQxP56!;2whmf_f`i!7T>eF~DF?hoI$-)NB z?JhRCyWMVsakko-KM2N&uGZ^A!{GcrUnhq0u+bEy6$uW3wXqn8 zTT4RujOzm)h7>IrC-Ai3=&>Dmz6;t!GP<|G+VQ?dY)meE#1}?A9OjZBr4}-cp`yWh z?uF@|052H_(@=Ns2Iizj<@0%bqTOI> z^w6gsKK;T_tt-BU6D{OCa}b9D_WZPXklmorAsIHK<@E5I#e&K=irS#vH*wB4fQN5I z@Ltj&LuG`@2$5c?4lE&w!R?HFA*Z8L(Z)+`zqc7P2#R%Nmu$r7p#iUN_w`&DFwkwj zVW{2v!tsNn{NZ;yoxtTJkI&DuVeM$&fH4TgT!{OFmByE)h0C~uCW;iu(tL0hg%RDO zxU%VDfmaz0X_ne3?nY(|k|@qpTW?(1Y2}LvVkLu6Szc=J;LA2T2B&-Q4zG?hPBXwatLj`$i~x2y2;{ovK^ z{UOTgy@lrsMRMl{3!YyqkPnZON8oR_w2wR|1AjC)(p3}X^7w~;?g3e_nP(#|I5!L; zQ7H`I8eE}AQ^PRhpxkI_QdGQvl&R+hwrV?`K!)%T=-|$R8*4;}>&5d4Nt(LFn)L<= zrN~U04Y3DFIX1g48{l=DvW&;rq#&qnG9sQll zNGPvx2b%iBN1X*CFzDAXZkj{TpXZ8#BJM+nMpYNTvID>%V^SUEwJ>=>mpkV%%)XZ& zirOBxXHeg7cY#bmXjhTOq`BS+o4_HP!g5>1j%2lea_3Zt)Th?nW1=Bk3ebvoP5Ux1HC;v_dtR0b*qNl zs&e6yBV?s!5Rp<-q-wMByq?-`?sMk#Bn`@d+ZK5thywrBVoOE@>rLX^iW0IfTe&GB zUVr{HYq_qEf>jEwT&V<9d`u-yHDtV&(i7f3uUeaOX{7pC*3@}L_)%r zClecg)0Ee}f7Y)#>&CnHzoTn=WmblF;9H_^2nqYkI+2e2fjV`_&{67=-U5F~30XPhBr@=pP>muQx2J zY@ku&s4Si=_KloOj4gIqw(z39oQbs)U3Y8M> zYop3SlTfTCglvRlZBiQ!UPjvF35p}c=jsX{k!sKeQiY{RN|z7vh=VxN@8#1a0MBuO z)zPvgDs@L0_`)XaPkGm)cl9bzDu@kx;r0HyvSa@1Uo42Spv*IOPbyJ2bng&1;C@6> zDkDA>tqFwhM3we}jgD@%PmX)LKhnJ(gXB%*rZ>nP?dhkhpeT5ldxtKHuLdf=!Zc^) zs(gF7; zx}ERTo<@{O#-emj-Zom`H2f!I`t{3dbYMD?Zll=$+?(5YcPX?mFjYdLPBP`ULEzlC zthNIFD})!8PRO!3X-KFla}0Vgq-45J!sUC{0`@bS7JKJjbIq{9T~cgF);<(w^*2g#GT<2MDxZ(t1#eL`Vl+6wLGwrsKNW^4LM%_JW` zmB@1lq{(x89d4+9oi2g~yxPv8s_C~hGN$!=#TH(1Gha!!bZN^WfWnhKcqE4JQKe_e z?xpQqR`r0jjB=bZQ>Y3!7U1~5M+b+`3KuLFd{H|F3eGFSZM55uY2-hx-dH*B5cHK= zWk6CrQod}%SHFBF7FO`7D|f`hs%^J;36_mvnnZqN;#7QkdK|?S+tlbeK*Rlbh{Be- zt@Q?z?=Q0s3k*9Ts$Ba9Nd~hv^uCk_F@?V4+l(ZprDzfC>$$BZE9Sr!vA%i3B?~?; z@$2#Nz)!JEFZcW*Fl_$jZb zT(|*Kw(JbjX<>>>WVMD!6QpMu*TL@(Ihftzh2BTJ*S@cK`* z4PCDP<1mt%m7qtnuI99r7j~evj&uZTfe`z9)Dl}yD9Bx}8{%!TnbzYd2+){_xg#9@ zFVSa>#9754@u9h}Z$n+fehUTf&S0tG{Xtn);ssviwJIZ{V@$=GOz$w6(g)|?p^oDC zcuzqRQ}7{^3>fZd$=LlS%e#dnDe62K?b=4AVg9bFu51!PC=|e~{wzP$n#@F8OWQZ& zs4LC4Rao-{;~VS`oCJV3xx$5N?a&0J9>`<#e)Jgz-bpKO@0A-qAGGnTi&)efnbO7+ zj4fA}95ca!xXf_7lMhfWtKAay#p&ofPC@_PNK5WJuud!<8KL2chC=V6k{adLjDZz- z-N<8cVZIazAe0JVR(~GP_2#i%ur0rjllUE7aoE{?`}Oc+`33(k^DBJx5^~RH z$r6l>M{`lbdjj2p^_Vuc2O~CNdfhJsL6DZx&`AWP8dTo`_)xD4=DXo}0e)%u1(AQ; zOeTiQRsrBGB_R=dSl6bPZ^Apz7DUEL1zPS(6ubHip(mZ|H*Sd}7XU|5Zw0J-wEd7< zyXVCk8K1v|B1&${%NHaux)+dCWP1g&O4DksgX$Tx3)KA&=6=X6;S+=%F=!%;796|Co18Cr^d1jU0X2OsG4q2Xrud1K%m!)r+g@2H zHi%wfgka1JvGg#YQH5vYLXwww)#5U7a5>0OSI5Bu{$dh_*}8q#ycKaCkh^0_6`6iO z-RO=n-@4;8`$G4CEx1pBS=e4eyL@;H=1lh<(FmJf--7=59H%S8_2*_!IAt00rFsO-o-$*G#9+%8JR|lSm1-zUw zCagJpdwx&Lt>m6U`IUkuCD;;ImU&iU`#+Qw82zDh#eBr~8zued7jmdKg(Dy^h$2XY zR78x$+M~9`qLpj1f26p z@)X=YVZ1bZ$gwiXrr*)ylFGt7Lr2mof*R5y zx1i$+ML(oeRL@Qs49$L;=|-bSr&xHmt>J_W7G2a#Rx!>tnFwlf>yCypK{sHP=y*QH zV^tB(?4HBj@ice5u?6j(fkEB+DLnCQPQW}jI`a@}hy6N~osU(P~q-?c6E#LFLfXkjbdp@ol z@wKB0G(l;iBu;b*@lqg0PN90~Hzz-QegAhCSgK?vppG-z6ft@KaBg|g=5N8UjxS^F zLk`P_@1Qx65tDJvn%;9pJ5e;ctPWmN`VQHIis!QTe8Migu7MuiervE-V+6Qc5FlUu|! z8VNM6UIQu;8Y&tZA|f@0w;0M<(B7p2 zhfOG{+=558Rd`QOQqu^*_t7gh1MZ7CLObfKQ4*2=X<~id(}Z8Vj*OI@B9n?VbGLHm zAMK5qqPWCvV>LMj> zt0SW+IQ0Nf@1HQSZ2|T@i8oOD2Q4s)1dZmiT|&_pDiPhLvkfOBCoX0b_(G_tsVQ=4 z+2W0_8}fBl^X39Ou>v9F9B)@I3kWgMHm}@2Th=H?eT1Bpq`dTcP0XVr$F>%2J22Ae zE{Dbg<(Uqz+5K*9Y?-~j`#_-M@02sXR>Xq+NXEJ`!2Jc`L^;sUy`YR-#LL}HE zyt})3{|dDNe86|I$GzOw7I^|)dQVrkDwTNC?gV*4JJ#zz89B~*dqSMekECl0nPt#} zS%N<3$MQ(ROxxP(5s;)OH3Z~W)AaQ5LOa}0-jCIsp(fTMiFfyN^&CAiDEzPCq5iLL z2`UxBZAjR(9BuN3cdge@U#VCj))V@&fIx@Uun*}YSAzZg%*k6+L9UfAPhqwI0KTFd8gjWt$3ytq)3Yb3GMYot?m9(%$ z=)w#dBq;+qPqUPx+o4}SV9(Ka62tdDd<*Hpfg>iNF zMVRmWLq9}~7-#a5D#%h}sUt;bLrV+ejw|5wtr;3JQl5#o5+&J08Ovr~@`tVFkHVB* ze!-u!{{nL8XT8Wi=ksqVIs*1@|I$dY#R<6BPUu_(lkl2@~+54CVH{ zPI2L*L|$9)Zj|KD(S)D)6hWWLa#V(s56ftSOAY2<#*({m?qHvFZ!$=yqc!ryHYYO( zpM?x(FR0C_N=4!FJk~lO&(VaVODID@DTz~Ar%f!R4HaQ$@D`4NU0d^+Bva8CHrxxL zgipi!hH}r!-m+is*zv;BQ7sGN8|Tp#E3+SrI?d0eTCT|6CYn#(`%W>GmfMES`$Evd z?h06ca9r7a^TJ+{`_Y49UiOP)!T5i0&RO|e-aW`K*&gLKk4xG zj@xk=-*{Xw-vC(0K2J$ShF>i%nTLd6+VDpQ!{X1Yd{ih?J`fF9NV1g#P|4JWWoFmLoh&^JSOnKRDfXj2EB`|R4UsaUondpAyyPDA2?P z6Fv9yTS`|f7r8d_WD z_I}{=I>DYa$TBe1>@HizOnqWM-#%g%%`EJzOhjfei$F?wriU<%G&A;p9+%|^>o=aH z4*fkVu;ZAAql45i(%M=iGSr4sP2M6CmOR&x%8((tgk``XuEJ$`X%XC%n(j1!o5PdV z!<-*8G9+oCoVxw%l<@yR&(iTz61tu5%uy?MeFF9fg$OZIVB7RH&x_Bz20ujVD=r3% z40}ptVQMtEChTbaW)e}M|4`4~-|-6JvffbIaf%6-W*4M-R_{6y<>$c?MziZoJivz? z2yauN;GyL~cM{SX?VZc$V5o^(LV)=()$hrUZy=nOa`96EEl#N=(MeAj0G+f0OHd16{}SGtU8gGKxKnUh}rWGt$gfLLGCix{wqHGi@MWHt!)Je2uw zM;ogO7WIRH-Pjuf^@iP@-xI_)1K<3?-$?|18yfOBP=4jv;jF#Xn zD*BoEkWq7?UFoP<)pF#-18f$Hu6zsWUU2-NQ@u@XZI`4L_3m(2mH6O^X5P;T_r=_G z;`lFr`k|)Xz6Gl7paonfbQT!<;j7*|0^=KLgKAjR8iFClp-)2Ldes8X zFUS?;p5R`w9D|RpY=u;?)^F??`d|C71jPY&A2NI_k35N7V#$wQ(dE(DSxhE~O2AyUXI{p=l3;FBZ5G=j;wok|I=I)h&H5BQG=XQ8BautW~5M^B8QdSe|*$`aL>{p{@JiF zA!@?Ge(>6Gg%&0R47Mo6T?WO>G1`x)EMyK(dS{tiXqjBen1%#LbCJm~5Co?BrM9M0TXV`rrHbwg&`@-&e~+J5eT zg;O=MhBFC)p(H>lPDF8x8nwu232aP?0;C`A8T&efIzNv;nZ*nH(cnEK;z_gGdWT?l?Ff~Ai?~srUrhSu)XG87v=LCAJ6A@$6L?tezf>n z_VZuPZ6@AF3y`fTd)`o}Z&J<1tSqZ)0wh9MoI z8z6_-<>~f$crp}-HVBDpd&Ty`o`BM5+mLa9BNr1btN05fl8FjXXX*TUUs%`H-E)4T z-E|{-ux7~GX%OHLz=9(7a(i=_;d-tA?)LrpcgOirLebT4oW{m?KG1rAkC0(A{mOa- zLXtxa2xlQ1H?&OtQv*L*_1;4VNw#(`wqMd~*}RfAN{er^z~?=l3JpvQgc#aG33&Zz zS+)4jLX3Fx^p!JT-kqu_$RssTYP4)CfM}=6iwMUuHbuy39;qn$Y5(FG`~48dXWWTr zKVu`&p4T5-n4<(Vqdo@yJg(8#@tM~EVP^0Pe2`=hnJ8iWdNtTI$~N`LX+7X?t%b{- zJ&!%`CYoe|U4O_k^uH)(#sQ(c%lk;*tr*%d!5hYe$bJ*615fQmkeD!Wy1$e3JV^_D zFk~Sc;Ra0CHpCK2f7U_AwD8Z-gfI0OAY|N*r@i=x1EUg2^B5ZT*dwp&U4sJ9gME@S zeMazHuAkByUR2!tKBQP~Ig?Y$YFi>!WOTm@C7cLkgl2A@7FM@#;q>A||AGVLfQs&n z#Gc%qrSuxMu;yR1bmcWqraO+jUqAPPW@ct)W@ct&uW|pp1%D?sJ&=NOQi$5mFh*`RsPuWNbtPvp*ymcd73C@ zcDZzlQA|MVby;}lMUvZ3(|%m7rV}C$OS?HMadq?dnB-jRo^JhNVap%KWBk*O_!P2`~lar5?Oi)sqL?T)b z&I^2%8;2?FxKDMO?C(}f^mquX8gb^T=-N=PM0 zN=V7dMj_U&B&qu4MtUVrlY`WSny8w3J-n*C%0E``)-?qB>Jzk{m$p)M82cEt269NnVIl?~&+Iiyi8c^9iNcJ6*LV zkesyiij#zJ;}tG>(|*0opOUv=PO>MZxIx&F>)frIy=O^-k~r!q$(3xFfV;F|jjmhu4K5T6rTNv=`uN1e z`zG=2_qb}iI+s4He(}$}>ae$F_Eaipve9wKSefsFq`7%Ywy?z2cux&w;b&)yUl*!7JtvcAtbPOtUnR$GD48-Sr&om?dh^OWCP{0i;yAV>K%gP#rY8kqo z`JHRqAyL5hJftHb%FEenpVaAHYjabZ23jljOY!?Vy=M=uTdx2s&(iBkiO*1|Fr{>J zh2C@MRf@4)ND9y0seOIrMWU#t097tFG?K13^^dwq+Ko)Q1tcC+NJomPb%wQ7`I`VW zRcha0u0B5D_f!waiCRDT5f|>%RFEdVd5uD?jx-V&fT~*+66RIfPhEa{y{0htJEPvG zE1gA4Er(?n)Jv~-(oXNwz} zP4LPVqvaQJ74WTNN;Q>iX;pAVDkW~yPlKOHWhDw>!x{$bQLT(tuDcf-CH$)I9+VN1 zVC{|fD-lf#hUZ76`?~Xg=T`QeV(HuF-T=yHz=di!|3(JLfA6@sNCY>GpX%kd#uW~d zloBmpI#cVBAS?N0JX56Pw@&s)i;UhfjKQd@&slukEXnt|Nm)r5ih_dBb06x)_`+sD z3Wl`0zjnz0^VONoTK5iN$L`+>XK6%hct}X)1A_fr`(+BRP1!=JD<>l?m0i7uBj-?` zl}M0l04^+6uXRN)+U$bFbF_1uq37)=l!y`a3}AG-s;Q6-CaKl%& zihe8MK|Z6ZDohqQTGeK?U3x@4Iq9u7Hl>}iv%1b+TzhNYZ<~i59a8G z2Kx?nDEUGasN66?x_p7FpZ(kG-aU@9t}YasI~7!$WxWx;trt0Q_*uVu60JK`ogo9O+c3|kN;^o2~%XXPUOTJkEg=C1zX~@*tK)T{hit+6(0Lj zONjSZFh#bS6(&h3JulN*sLY}7vp%}N(ZT4W9+`WUkoch?%gIS36YR~O$05~JiND6e zG7eb+<+TL_+}TyRD7{L;Rc_VFjYhbL^p&b{DL0-wM5I(IZC-N1%$13o@*(opmbgG$ zCD$c~Z^>ChkB7ZN>`&Dre(TdcS60+SNzB^*s(CFkv%iB_SiFo#enjtGlqXf9h0t&u)VVtgltkfov65_~I$ zO>v@lyJ-bU8z)YGO%4gC(pC72jX7N{% z;toYBiTCa`)}XmEW(}@w=Iy2%mXq#gzGd7f8Cm|zRXfY6N!G4o|Ix_RT9f+KHOCqM zFG8)4-j1A!FB>9-ftS&h8Hrl9sJfhkGYdiJWOIkNc~$EUFso;;j9|9<q9J);UquPYiMIv=RDt0ML^E@_T^&dEiLK#Z}-a5 zP}CBoqm9xUu3Mv9l95;R{YUz!pV>8Ct$i+4Q;t!Lh&@fttMw&`9QbA&5N?mbT}k^p zdJAiA6Q@$H3|6W-KVnwss;t9C%G^FGjnxF=n%Tl)^rJ^aM*{+u+8C;6TvAF2_REzD z^wb#dB2orapX;ddk0-BJ_S9$lV+wwKN%a{J@ylC{QV}i5GVKL}xA zZIisIX*$&-TPKw_DhQW7Kr%Sb`m~*)NuE%mNUb%?eLK}jFQg%HW3l-o!G*$e%G&!T z#+|la!sHnDRN0RSb;^7HDKRZAE{d{8l93So>gph zXq0baN~@&hZKQiQ&N$=tM?k6F-V-J)58o(oP`JZMAq{El!ZODMF7A@}6aPe8)@2b6 zG^k6t`3@0NPfJBndF+~G>xZoh;N@0M`J1JZVIkn6rutcdcT1C#v?k0UOhdgB=3#8a zxuc8Vbi;Qy04a<5->4&P^CDtF#j!p^qgpXKDmb&mG3rowH%jM1h zXWY?qFr?fUbU&E0tGcwZK>zkjPgWM2?$6>GpJRpd&wD_$DI`ZVBEYW!nZ}(g8 zTJX1B^Z{zR=Z)>DuTf1>EDY_!sBoN-NC-&-dt(c1SE27vuZHN0S^`Ch2?`6!!vomc&x(s^* z3nNT~VQu${8>JIg7`i~Yi|vI)M~)RET~ynFIzhL#VJW-Jna@yQvYs$w&ig@&H|rde zMf(@T1vTBceS|5UQ#0%?exsw*~^Suv(G`OFsf1d4Xr`f|Dcp$nQ^6 zVX1n;%YO9&=121ESzg64Y4k4?;8VWr#f%b`HWdlc`KpW5T)|;! z^^S2$Wc`NwQy~~tRq7YthFi-YP#4-f;by*^ZpO9G51-58Z){*#mplW~L!wH47`*$i zGija2pA|y&1_<{z;6_z^GC(6>HlU~G1}2`#*4K6**}tdRQbHkJw_iA5lXCI`ZPC;- zyI5i9?1HJAO7n>f8E28sn<$WAX?PSTLnrR@lS+mL8c3!XS|qh)ld4gbJDs}&I8&@vi`Fx2p(Lh8f87Cl0Ac8XFg8Gn#nuvAk%5_c;EGS^{bjqQvo zz6yrxn^mk&STGr9abxD(7<+=qdr8N#CO!y^3w{jh_)OQh!c*{F#`XhK!84+tNtDPv zAPoR5%Tm`7mhDX}*HnyFN)~z?jpUve=}LuzH40%Nu4Ww60b--f?EU4N(}9MRDTWni z5kn%r6D%QxYMb3_B=`#Wmmz5l?sy%E_y8Zc$}mOnwHOy{W6&|@{)Q5tfjL{co%{&% ze@7?roScw@AW*eM#AW+obYI$r>y=EhBwOAuvT*yM#L_OXl;}nj>v1L$Q6YfM!j5{D za=&GN{Y2O#CSWJUi5dZMc3g^1^MyH@hL-1VfgcOb*k{3K!1LjAi85{x!N*N?&xX|i zVT`yKjLor2Z$~DW*^#Dj{=eHj_Wpaky?%wi=-3D&Dx)^w^KU%&&&%=oKsMW|Y`E6y zEhZO93^8QeoEsnrHC4xU3R%(q3mB;I>T!{7t+B3^;LY6zeVDz#DaKNG=S>MV5 zwusoOnPuA@;0!9^N7OssZ_s2q-5&J}0ZPReW4$Ql;7HGp$VN!svR*K(Ut@-9 z1+U=0JSz9XkEsUarC1^qp!LK=Lm!d@ZM~+@_rb%06G4wcM+zkT6Gy7$2tRTZl$^O1 z;O6ui4No95`ho!Sgpsrrc0pH4Qo9?v=0%4OrwlsNBCL3siYSPUqD7Mj&mfV(z24_+ zHk&<=c4@=}955t8sEx3ej9iE30NY0J4arKdMRzBN-_aheetvCR~ZphQFh zu8WNQUjjlxJg4Cs^hcf?|2;dI;oT$(MK_i5)Ur_yza0y3%c4@N6po;*AiypWgC+C2RB|iaRh=f*%sdzW_ z5%CQ@0k)+I7Ey@$1S6TM;!6g5YWx!u65*NAa04-+7;nNxN?42byM4bcp5GH2(zAq- zv=E$8!L;DC1W5I78?6pj;T>L&0TvM^{-8}y6#x%#gMf)~MeiSj{K6ud2&?E(UC-x$ zg|KERvswY{NQ%V<{_($lr8)@-Lxdr=(yr6tysgC*dG42V{8Pk6{AENQ--Gf;_c^2B zhEw!y44!b1JmDm55hNThc}jGHx3MPgzXzzHL9+z{H~}8vDDg!RUbIEpUXRp2z9B5Z z?eu%ZAAL_HiP9dar=rzCLsI{fwr3g<{~(H2)Ix}ajlfOrH;)CMY=clo6O|~XEmJ(S%Z}7{B5+W zw0s5+Q4&Wx!sx&RH`M%~8$k-y9?5VSpUyBy@OV4pQqo6L5k(S;uu4LnM<0(-O=W4w zQwFpGMEExI%Ctu-leA2B{~(HPV!Uol2+w1{D^TXvgp3_@x@6sZJf( zYNU5bJ}B8MdFd=-vZY?4e2wFJfr_C0X{Ve7b=hzFq@M)V>OL7O@JU%LrmVY0rU#eR zGr>=sN64Ofs6Z^oMv)l3z(va)SwE#_ziN_v6HL$aT0A9-*L@`U$0(^0@}B+t2hoKRS;nWCjqFdre&A1ny@NB#2%|1Iky-3zW0XdE7IyX*5kp{(4u3Vsjg zz3VTtnVe+*iyUv9DSPjYX%alQj6P z9g!esii~dVypg?E^JJDS!kU1F_Uukh!T zxLzIYT><%>_`c_@|H*{;`2;he5!FvFvbWl|!z#)ewtA-*V(nxza~3KkVfoE5D!HVM zx8v(p6p&{a&eBTD;zCmFMm#G-Ty@lm@AfS5(2PlFM{_$SmrWmd^=XzC)R36eFS#xk z3hi)h-c_5egfj(Gg%oP&3Ws!Sgf{yo%m9enb~>~we6TcLjeiyHJ)V?Wll8Z|zash4 zZRS-itG99^tI%Yw8BXUmUI-b&pzh&86t<*|(|Fu7mauj+5^ZyzPP|Dc7kI zS|O#w=hFs#auQZ1n%EI#>UWZ3!OOL&nl!w-IB=Uo>;Q2#8o-|w{`JWOUl}PV%oQ&DjluBBzJch00LuaknSji#p;Pe&(0-O zVt$VYB&v{)C$9i$#0;&A*=4RT+M=vr%tgy?NY3~OHkY(~#hB)gX(sQv#P`#}X|K2y zGA=5F2_kWdemY+1;)j9-e76A(I>OLd$h$!I$3NCtG+fM`=utkiJdzE;*bmgxCzykc z-r(DW>vlov;WrpR=gmSwlG6pUujzq1boy1guZr1dYOexJ{Nh}UG;#=xL%gDKg47aj z2^n%1&*pI1vXilYUa%6k?QP}2<5PGe{)kD$_zMp`Tx$=8lcHMs%(0MalC_GYNbM65 zS|@M0MAZibqRWv`(g>{yZ^6xaXk>k%FcgmB=<30C&Gb5TY_^^2K zAB%4I&bVN6ZZvyDpyr7k(cz@U=F@XXB^F%YbI~Dt{UL#?44O4&-Ep1JY|Qq9iPfJ! z1Ecl!yqWd2<({YyzkhV0xIN$Jr>BVgcNbM9qbEyM?BqW7sZ6x4t9UPuOeRmRY(Vp9G*QqLlk;)W;WDxD$^rvdL3ks&`k?O7Huc zDYC}4n=^ysPGfv{<_pITRK4hdasFIw@wNBYW;HQOZ`@RNt>^2%A{8dN?;L4$yNMX` zJW*lUH4yzhs(rM1P8{(B`173FYVE~_oIs}-Uz1X zvg@}(G1*iwA!EsUB7Qt}bw>6iMwYaAz?hU9zjq!Yi4r&{i8t$;-F-@WUMjJ**(ShoFDn;GArX%l!zB)05=6WlUTmw3D?~ZYs3| zx^_Vi|MIW?)I8eKtD}o~SN}rn7qk6cZ30hC(dlC|P^3o=MZ$E_t7HXAMafQ1$!2zW zRhYKt37*U>L!!l@eMRxptaw2etKUiL>Sw1{h`56@u;iWzi8(n-dxRzX;_$^{;^uwt z7DPzvCte0bv10Pk@dngc7UEN@*Yn+7EadJC;SZ`nj6aTtVC1d!x^uP-Ib>*DKI=fn zo`S$)YB~yGk!6PfM^{HTI@vHk=TZGEW2{I@wZ~guS%@o4vRy$p)sgraGF*Pbd1n8U zWWfFxUWROchQRd+QtaYfxp*>u`r^CY7Irs|xTi|R%1InGKC}}Vv(YA-c=JY7sKVta z%5Q(73wzAey-rSyW=AYn3vBGm{M4`@H9FOV59za)=~1NDL%Ty;9K7Sqx7Bi&Zi{2TW?Q|!O)U=rSHt}GE%RDtpMRdOiZ$I!iB758=CDwr@_$$45Lg_nc5 zIhQ6k>*N@64z}pSXTmx1J0E zYTi@uy6<);5~6g(+*uL(OL|S2Q@=hg$hxRYSZptUB`K>;%!%MY#=WbtuBbk|d4HDt zTDg`z)x6i6O6ZPE8!91xWa&vcD{rDQ>iP0vuk>+mPi!_sQER?^l`IA3B;!q}*_NS9 zu;vf-HtT0@X(D&ZWZG8t?tBL3u5J^afVAO}ib3AK$dBpu{F{=9nz1X`vppBQhT{U}Jf(EH0n*k%&OVb<~~@LLyReDqw=nX?91vtNbRaji-JPhYbIjip=d z?xJPhs;L7+s`l@!>C(|slBZ0I*ib)N=##~~h@y6lNz74{=>J4Bpuf`YU| zHzbF0A2WMyANfN!!~LdL?5MgE`1JegE-syX&+9O4I;RR~fjMbLn%KH}!r9>>uruao z=#z_V0HPhxgK0^pmO`BnKBh!VDUeVKT$6J41oNSDY3q=pfoE+#$#N>^_NGr6HG3C= z_0QpnSwzW|0}^yfo9(KEMI+HJT?m`GB;0+1+;}?7=yg8D?+}&$I=xhMMWYuNK(+Z# z)yjYdS|>xTZbrb@>L?XbxG1<`I7q6?inRzf5} zsnjf{A0(yGU!bq>y0m&y=oP^#zMT3*GW%F$VM`oeszk&VI>7uy+&!lbDKIJ;f02|w z31VLla9h17QLKE4XvoSFk#_FA4i-=xbd1H!)UaESCn|WWJdCdA#*cF~a(dRwX z&+AF-5Z-3ey*Vzd|1*j8$O(y{Qm`XKk@G??!ll7Te+-wi`acV;uuz?ob47^Q3~%Pm znFO-}w{CVTJQhDzcN6_guCzz=owd~%6QzyM1xmD`GY>3n4vq_1Qs_Orn4)%!alRPn zsR2qQ7_hW{V^f2MMUfWqQMl_v|l$AKjFJTuV&;F7o1rD zc(LT_D;SzIz@o*?3~r6YG+Rehm;3&A%6n z2S$B&DtvTmd%w?5Pft%zPZ6bd)5$a{1B{}&U#BJ0y?api)YN)>dXIZ|oU>6Fy6(tx zdJhR0t%XPv)5t7%Zga#W0T^(UQ55XzRn}p(EJcsD!^MBt^u1e-m%nb{6iLqc=)v@E zi}Sf!)wOi@lj+z*nue^UB+a6nj#$;uN?a!r)vkK!W75BL^*;XIrN7qTcIJ4wrhcNo za*X6tyWyMgdSa8HCYY#>WIU{NEw~nH8g{$|9!mmT&ao$TRY`kdo`bdFeeu>+;C)@E%A2Wwc zt)z+RS1i2s1sExYG?bv%a!90&Ue(p7_?}9XSGkj3TSw>{q(2^`tz|iwG{s&q=g8W~ zO_(dHm!5LL(X#B)Ywx!ps%~Wj2Toc)gWot{upG3$% z7^M0`K6-ddX(yCx1TP=)v7TvT3)M^l9XXd=o1?dbDbb2ov&*=;f$@(|gTCupp;)IC zW82)!1-OW^>!k33I{O9eyr)aZuOXmkJ(dWfthr9Q zu&rN6K8n>R(y#r#y$^q#Nt>CP4?Yg?4Rxdw%K;ldNOBlvUg#hySlz zi$e08bYNb;kX#csRLzymq=@6&jJf)s+SYp1L9vZlWeed0wByBO~Sa+77(Qo|Z2 zc0G61QmhpFhV;j$b^ln@D8F3!mw0Qm&jmMAy>>e@fmdXrdDO1Dc1Yuhb>C8zZwE`d z>uv-MaetEqi)TtZ_@+lZ$Ivz%tDpsYK zsl5rtfgB#yNRE>W67Vv^nrP4z()fX z^}s*IV@_I$K`pT@e#)V~fguWFIhCCV06qSDW|B#bNIkQP^j)(aWtP|d+i$;;+wtQ% znZusLKG26Pt8*hCem>Rky%<6^b>vJk5GCGC@Tijzcvm`~Oz(Z)N8kBqoed?c-_MxI z3U-gPZ#Q-4^Ff#OhnkYCV+hYwfmK!yVyH|}9Phrnx`fU9e~n{5&XR4<6smGsa(bF%JdduI$L1>p50& zv2W6A?};d2+~A}(4cI?{?BKQ@&e$Nsn2GD2Oxv<9KAEs9WQaXz>Aud!_lf(%uE8SX>&0DjC_(8aKMU!e?eKB#tNKW$pSOJw zKLaHhY+lWft#~MlO94)R8&!$%MP`q2z}z6r%z_pW+l=h8gnH4ljSsV;NPS>le`Kl&6ad9w&(Xs8ux1K50G$v)Bo|F({JrgHv zOdq`x+)ZvCCXJp&)YPj}+$9i9vSaXl{maWu(li*kU*n;r;?ssp``@P6ma|I1!Hyw+ zoyXN|bcmx{6uDBOSmD;K>EcS<@fy_eAk!MB+DgxVq30dTlK?-t6?^Sf2-%vCi>eSO zBbR$;vPjZALQAm2$XMaz>@mwpW2VlDP?al2qbCeFejF$&;UL~umeTqOoXI2ToDpn6 z7?v(aJn;K3Wqy;iKS$dn7dxkp8F&*ci06}EtORNW@vxscTD4M(Dl?aZG!d+HRUIAX zo=CYB?(ru%&`ibYj3Ou5Ucfq7cgmKR(~DJy31iKy(4T(FK%jm-kA*#d@yZc-2Z&jU z@ct!OWh)*6PE){{;4I22$orZ0sRHx+^veV!u@`xYvT{in*Yh+H*++R4x7U>>v2NsC zwQabqJb2IVOW%=mmhX`Uq!pj0*ec!=_jnJbnDP0T2~w{es%vQ9KWui13Zfs0iuq0F z7?~GiDSQ3MOI33dkyC)U!Rbk_ySd0?Wo*2cE`jv|35kX8VlM_SY(CUneVv42Dha~+ z(=Y6$(5;8Xi^sZZW^nA{^2&$8Jp8r3n4@};p#=-7o%A_Yzj^wG`PsaL922T#)=uTr zAlj4RMH3>B+#OP^mO~|rugJ|MxGhsvLiXISKJ;9Dg?6-+!u!A`QJk_j0rPJv7ms|h z0}ao>S_={rVFf!BDU*eZAxk5X-cN+I?VT3OtA;7%7aw4~c7mVte@vHT$6LDRqUQ5D zE`k3$I&#Kp0x*`Q%^M0=JA&{hSxGLe3uyNrnsNUV^#J2&E0k^dHN!C)%sDN)Br%!; z4bCjDCD~=tnilo_T z$`Dv);OK;ZMJm$hxrer*okw_a(p>wuXP;4V_vPQSIFN6Nlu;5U)Gh0VPn7AZ^n@yG zRG4Y@9Rn7sH!!x{90D#rz4nS!L7UoT2c3ws_Q8E#C2?8ely~uS?`1lKuegnj`iJyf zefafC6h^N}lxPwj%iN&*=~aiNP>K4-5^_-k<eb*-cu!I z5R6pX=-yPU(XfXA%~f)UDLxr=%4oSuPg;8)tfy4b??rr`ln_~6kPyDQ?L?z`$oP+a z(RCWJUL4z%!7|A&!hs*fCHR12cK;nBw@Ow7zf?blC95LXa_Yn{^SJtZ%fRI%70YI@ zX#IhOmf@!khlBdar{O*Pj-M;6s5D_ZK+lEohTD}G8x8ZR3cr4TD;7MN|AS{_iH{8#d#@gogA0WHqsxnhj<%;f%qVW-h zrr(-S;wXoY2c;26E$2B9448+ovS0ndTDrJ`otX>zBlK1qWf!2H(c*(&t=1I)4{(Ek zg#I>HP2dmHT<1XkZ^!+R4a;1#xtKm2CO$|J6?H`wyT`i z)L&Ao&C?m*Mo-w8e@`7}5Ke7BR7z&3y%T%(IaS>x=IOJ4WCb44-5-+_!;_+VHxOp;1^X8)rww z{Rj1*@cg)k!`u(=Vu~v^6BX9bwcom6z|-2O!DzquN^l#N!p%gh*MciKzvY|8RSC`S z%Z8z~;56HJL6sbezy-5BSFPR$F}+V=0z@a}-;SF}!xIg8?8S zEZ5G^SZ`D%ty??itzna{3f5jZ2zX@d9&~L6)cdnsQ%hX+fy_80fHxd*3TpU6gU^5~ za1R_tgVju=bfohLq4S&IP4RZ!al(trel1sAAv|I)(Ld>bYZP0SI)HOlPQa#%J(7Uc zkEj-F?|2q1jl^2Lo`OAp2jogtwDwYC>-UNr?6=AFnXz=wiyvT%rV>+w+$Ik-=o&w&8-IO^W8)3(UN4fow4dG~$R1H>u_Jj>u@+VS@FVej1JdNR};9+d+Ms z0OLX1Q+TDMpSuOc2ro3C9ciEJcFWf9@S+A=Gydc2CHs8Fp`!5mP>CXoi_y9b0F2A) zzCfzVfp#0ONOq~T%QL%3ItKZ1;k@WbjI-o-TY2aU-1A8SNYOSth~cBInw{(jeyy*8 zq}#lPdtvJj(^}+sYkZ-7$Yr5l?89D$XZP5hPJ@nnzIEab1I3#EJ#Wli*#kowBz( zOt4jwHdFKs?(=q4)S|x39&N-g`F|i@as6Ps;`!m4&gug*n9Lxr9h#uN@%paU@K9UG ziv{Dx8~%JCx$eb=M_CLtBQW#U@jl1C7EDQ_mV8wG*|8`>(S`U0diC};j0fi;L%GeI z2w(F~v>o+fQbiXts&XBjCi9m5GS%h-^q{W)O{#B1sM?8Dbf*fqCD-Z|bf3cXd!)l# zt=Nrq)pd0C6#)kTS1!~anzcNJ4>R5t;Wr_0qNzBTJq#59`Dz#21-9H*>joGc`~?ko zY5(wgf>EJkX#kX2$;azN6&g$Car~{ui6s)tiF_K5OZlwCXkEiGv4;#kd(<4ByfDhn zpSJPrX!fX*B2g;tMP>nu(|qZYyI|iDBU!ZN{k?rce;iiuxqUy7J^t@SSd$_%c@IwrXtVgl~j zm|>{&wFQ`AZS;JoX?MsM&+Pswl!M0)rSuvtl9Whx4e=FfAePtKVOPWwt@j)C4{?+4 zZhv?n;R{&TY&T(e%e{`$@K&wc&*>gig_LEz(-WzWDoor4et!MO5%O9iR`1+8elk2d zL}#Poo^C)r-!TF-MmGDE^3+iV-zTW>5YnKOeYkA>7n2d;?D)_D+4D(J%Z`Vh>*@}> zz?EZJj+pcx+_GRu3{KcsE{j| z?_CN;=|>K^9w>__gr1*}qS>z}wHyri=vsqia7)E#J%HowkQr)}U4&{SXrb~uqr>9% zC4-IBgA}GyNkJg3i8-HAfpS4l(J-sxZchTUG(>~lWcECCft8C=)Vl0>oFOBpivFtJ)#H2pZK2T7;CH4Gr3-BYeE5-}6p zgvYj!x}yuLEi-dfIHdfpFo&x4yT_VNt5>V(o&~$~iG^DVw9>?)u)2@#$D^b&`b8__OU8*i11>m)Ku0uaVUYcO$&{54p8q{OM{EC~*x981_(r)F24DA|N~`f7tfe~~1f5pBv;8yk z^d26x)g)xKozj!_i8#c&kxu_Y?O{wYCu4;Trlc3JwjYJ!lS_O<9-FSdUbORg1N?SA z1j^&<%f)SrW%3E%iyvh9T_eJj>~Ry?w%v>sHBua&w9$afmD9YK5DpR8jo+3UcN`SM z5_UMz@^v)o&E&%-9@wHKn^PFT|4WnA?RRZ5sQvT#FWC5SK=&5XR9*FEopw11I;#2@ znlSEoJ;Iu*AJAKUB`3*~PC7TYQ}mCfMPa0!j#SAexms1T`fbVm)LT_n$GWK-rO|tO zrIePEhKh+hV0skNabncg&z7N0a@sV0){X?0d;jhlhk~w?y+_HV;oP!c5}dTF8SngHzva9GHN-P!^bFS`_m@6DFxOV&hU$OC>}=JB zS_|zcQYshS1b`Z6ibw;)xZ-<5RYc#j#aR6+;fM!9o99mfsT|BKk!wmbj8Eyz?V zgPjn4WTG|+9ns;4kc44MzoW^B&$+ebN1s~mF##x$!sm+YjF5KmoQn@jw4Doh*D$-~ zXcJ_@H;Q2`4eu|)>&5;4&)D)rihhSw3+NCw!-9uM2=Lf15W<*ZET<}48u9)U!$$5W zSmC4|ztA<%8(RJbC{T}g{x4%@h}GF|LaeTeg_7r(NNNQYza`%s+)z@l?fWh1Ntk($ z7JZ3jr=s7Jh!mnNZz+?|}6GHXJUrzuWUgD(*)!Gj=KPm|Zl9SZKhPT)&{s z`Ja#}%STIlKUp!OgFmQipfA*p2=UJqLz8N-!R*P`5@C zXU#mMoEzDm-4#lylGsX8z$$vVKiSk4wyZ2{wHH*i4Xa9LZJF0B&F7IN~5eE7>OW80wP69v>6^9Ibe-+qkAwK zGL4x>xxvD;qK5U$+=08UQ{oMIm=MWoJ;B{@pns3ngBn9bRSuMQ^i&GB+^?K7I}e!X z(M3@kQ4Ms0A|w?$p!LuAosG&OQf1>H+(H}t9?WbxC~l7oM35r^5wrDqvI%uUZc914{O}eaJnzysol`$?)gp*lE{>TESPt4p~1OREF1*QY#$2OqBOzu zd*-C0wS-2aeL_h1Ju;3MJmaZX zN4}z|^bsM!^O)LGs#ZY}aEA9 z=;!G~Z$bH>BS;{sCW%NOB^bf(A?^UFWixvx(VBO6eHn46m1-+02V-W$L_?I=dsuPw z`~+o#d}=mZo5~&T_jIl@j#SaMQ`QexDqzvQjd{d`tkJ%Rkw!FS9T0Fg zANNv94p;--!NH@FZ9RWSK9RFK>lYa+F;K-k>}=8Thm*+T704)(7E!iS)(VQ33H@}> zf$siCCr8>|O;I1Gq2r>Ms|U2YRID|7YPMI{gKCTQC`e|Mu88{CerzIo53$op>so-Q zjK_SQtd%u1>B)bLU4buPm;5VYRi{EM1OCo6_4Qazvk_KG>QYmy&^L$!+Iz2QX>}0g zo_mzRQ&^@rH&+){3oGn7wMweQBr8f*U+a8u&CXng^r1XXEjVkyjV~&qf^f#o>A`dE zWI-UV^yIXy4=kp>tnFSBSoUK`IoyfD;x-WYZBq}J@5Ne&iTvc79nqYX-Si$|AK zu%DGfn;%Na{FW#_s0kPYdIE#ht2?Zq6{TGPbukb@q7} zizkAd&RM43r!bP9j}#$0EI?{N1xlvBNUi>BQdUnn2B$c$VW$c~Zd;UQutJ17MUB-> znl()1^Rryq$v!UDkSW&bk2oU`f6r7zHAjfnJFOs3sTV3qz!4RixdalY_YcUj3 zmoT_))8am=Mwt@l{##{_u`OSJBpNUrG_|F*_7Z4Q?UftT{VwET&DvOt za`+K1a1^}um)xs>`xfiI=tTw3ALFf)xACfZV=Ypa3ESForeHgOb=E{&R3_nX?SSw*H1#IoR|!+eJ+9Q z1T^3~K241+?7wJfA@CMVm+$$Jk9W#@+V((oA|D{<0+nJR4@~yS=rS5-Ai88dL2bky z4A+f-S?)T3=62%7r05csF^#I78A@YxUU1*_3KzA#WPGD65+5VFJU%y4069ImL9X}( zMC45{X(nqE(b64TL&OnIbVJ9y2@G8m>xxh_D-!*nb`qHj=j} zix5P103<6?m7Vb^S77k{IYH^9Y@#VjH-?gCieqL1f^jS>H!Q2Bg!p3 znRh|8`G&`h5*NHz056#?l9qo3awrwBAW50BX{Rng() zbnaoL+@YWNIf+>B&LbxDr?3!5SA&@v(SP2CLst+C*S67?*#-%l{RX$TO37pbDkl zF#>n`AMSXXbRwfoy^ktsZttHSGT>1vu}5~5zY!{Peb9?4eG}UUmmFkm`G^Z_&bZO& zPQk<*Dst*%5i09R@}nyUgMflOK2z2Twni^G)fmoV&Bh3H-4h{IYlELYi`W-TS89X) zSLY6l99~}Xeqx{j?g1vvfO02K_20*p92cBU{4bcj;A%JVMO~$D@cC{SVRC#CLCBJJ z-?6*k&h3u@7{DbJ{RKk16C6^oBy*OgKuXQ&BtpG}@d)#@a1eW?r>twpc*8HTi5YPs zFckm4w+y4;DDcnh5m|0qTA3fiPoO92+We9zwtNqyF4(@w9RIHJAT@kalN%_Iw^0o- z=y-njQt$dcB7`uH4H57HBrYhAmj^sCD1%6eSS^T+r^>qo$PK9Af#1{C4};w9-Y{y# zL4eW?I(Hz$=UfW9JTc?ZfQsNVyKm_z6PMhz4gap~`6N+n_%BT|opuf~8rvIaE5m(! zwx`q?t!KQCZ!$z?HJ;=F>WK+SGK5OOXx~xAZAAeVGL9^Ra#Pj_NEb=Fh#ex}!MB$R z9B#yUD0fGOk0v?(1wq#_t^Sf2QbAq>3%01?n0}u%2yht5P4}u@bOaJ-`uW z)}nykX!iOyA@4|3dqjO@9||zp+9eI9D?>outA`|3_6VB>lt1vOEE|(iynjg)TTTzw z7mR;!P!TmkINQ10hU;&&{yoOnH+!A9Z#P?j-u;j_+r7|mH@mRl@3(=%-|s_-!QY1$ zg}@Fs4}u(iCkQzlULV-_U(4k3IOC(lqY#)PRtrY}3W#CiDpyfaR&IIp*lp0##v(re z98`~VzmmZxJ$QXcvYbWP5(l;@ZKzpWLuic)FeJ0!X6Tu%5uYN#K!m@dDE1d=GWtS_>b+z>&(XR~273{6sh-svPj}(9FyBYMzUI<>~nP0v%D6>tF zJre{|tzo19|2GTKNcql@l`{jXCn)u2jG@%B^-(ou{kBTTC`6g8tyFbeUny9f%LSR? zHz@IEk&m)MN3X7bLYus;8Jk_$j(s8z-vQ5SYTikx^G2Aq_N;!P>Xn2{5x2;uP+fhA;41 zo=KyOI|=P$)o+qSVqgfU)}2TJ?roEcK_$1J2so{}OJAWw`4`nF^S$ZGr{`{3RtMkHnbFu}6y@O#d~@8|W#+{=y$ODVWoT zBbC|)7HuK#HhYdhEw>y={qjiLPw6p=9Khzi321qNSi44uU9WHkni3CPDKtdr6`f_h z@F~h2m}QT|cvrW z6WHzFsMGfX5J7jOr_ZRCEkVxmD*wUejkcVyOVlO{^!Ai%%(3+-d#vh;2F%AyI=$zl zICYIk>{ADrJm`d|AL4Jehi)D4;D;YDs=Pc#{di zxKso_YElq1pNl`E*oRB5BY38qb-oiX^(+NoSUkbzjkcVyMbl9sga-ReR`#D>wXq`= z&AL_|yl8AF^S0~{;xN85Uua)WwECy!!^jTrbF>cb-thRnPwn&O_Es-PNs$8Xe?F%RHE^qynQ8)@w(Yu^MLG(RGf zX0_efKqS*~5xWQT_n&-w7j&%czX|w^4C3E|<^^4>kiBi{4zUznsA=KwcY(pb$W|`1 zctev>soa59uGk7o&1oP$f7~+5Tc5G@Y7#T@HQ!53nrFTA`}iEx8(O1wlAC zogQf0PiZuZ#0tgbE;11-aY_pZBkz;4`3lb5e;W6sMUzo>0=B-_;tK84w?qNr*szJb znmoPpI|`XBssAw#noiADyL=ud|9Dz1IA`Va5M7kR@NrZD(WBHx@vTb{rH8a^z9R;NTnE6j=D1P zFN!w?hoZlWqTck@kn>u&(Q8j!N~HNVtMPQSX~Uysl|!e-bU&Rz*`=3EDfOXq-7K6U zlb}@kTT}157>EBIU9=K*S1%`(o)+DHf2s>c6;BA^X_HYZKF1u->>TS9nL_X6TAp}G zN$XDNdC1RtcT33mzbVh@{S=aKeaM@sV%+cNI?#Y;xV?HlwOxp8((CP5kn84F&`F8i z*8GlDQ*QyxuSg;1oL~U2R{`RUQRu4B{hV{&RnCz{Uk!8HNPW0#f*)u7WkI^DdnQ<~ zoHk}ZqQY~8w61mqoC%~;_MzYoQ3Br>3N}bT7V<6!8qK(j6<)xeX228DJ>6^l}Ptn zPM9{;*@P~l&(GYMR{3YhS=T*m!aoEx4_WV|mK^b68Vwd97n^Xamn^MdvnlY8I{CNy0heL0bzL@N)y| zn=$As_r#x?&b%&ZIpuWlfOS{HM~U6o9h_JvUISxQMY6gAzDKnL^|&NF$*jYc#V0mH z5R2W-@h^t~Xcy?y8V3%i`m1P2rPCGngwDnAR5bf7D~W=fUs8C1zIH_p?2Mr+C$;od z*703JVGFKD)3jATZ|i-2DG!4CUq_Epc3LGCH=B(~rNOyao`k0HQTcl8Fjl_E9-8B& z5QDs%W`8CwGAKwrz`92*NL>1MrR61MT<^&?eo#M`i%EffbFi2TWY|u-gltM0Z1%X* zW!%wrRhHiEY0`y}5n5b)(EA&AWsDYhC1afa>Q4Ke$HOG#PcELd627tzgHY3Kz9JQ) z>2EjY94GaKkar!^nkRogb50B=3iZ?af{BK`PxuK8(q9jc*PsvO6c*do&}T9V*4k_p8Hfzn zznNL1ZKo^{p{RuiX~C;t=jMu(Ej(5h?RI-0dU<(5`0Y0VsoM7jh@x)!R1xd9u4M;9 z!z?sBlV!j35Idc+v!iLS*K2AjA2vEj*$8(@__*J{Xg)8op>DnHMz?8EWTwD*jJTJg zvqsxaSRq4E3bm4gbo@ar7Wgq}PslY?9@q&+s5jUlZARAJ;QJX^A!H*B?;*?Vd#&kN zF)4sYo!&O?LwCB|)KordT)#>9xqSZsKEX)?P4fgC-r=tkJg9mI{stgwD!B zI({G<`aJ4YDH?kK2vt;*;P3Z?jm~l!uG%o(?>FUQ$CDMDZwrCG8LUuYN(t_M1U_n8 z`cK8q>3Bi^={~lb{^FjUhFaS_rDlz`o>9Rb@=}yQsbC{wm z2pf3LN7HwMz*a1IF~LqxABsN6whRY;dy1Gt=E40UMk$1MPkdb-uaIKxMc9fqw$Eig z0p^XioUlf#Q3`F9g%;ZW0GAftk2_Hng9CkdoGuAZ$c7aL53jFJHu_KlyFD9p2t^UboQU<`M$uFoouM;wSf&nKfgYe01P^mNGQ^7))l z$UC0?kz_DKXh$#F;Pm z8UE0Cg&Zx*k zxa~8b)Wh61fzb^A#xxbES_L}}Iq0s&p={=d{)+^u?%A$dv7{|k?OkdN*r-dq<9UH) zYSk5!J?SD-fjj<)@lC6!3)VZDG_#WPmiGfrKjIe*htKQeUj;r8TTIJ)!uywV26nwb z(coT_bYW8I6||O_mvO5Dyr14n$_#hr^lB#>t51A2d*6tG=&3;3a6VKs;tF|cg`>@MYlnEKrlM?4<$2;DqEfxi$;IBHc#6s#QR_o*$*K*r_ffJMA zwaCNCVsN!3$@NXkNo3(_Rz+TA@3u&Dhpb$CANXV{`g0+>Sxm9g(u%*xJupgk;tOj5iqTZ;4Z1ID z(ernHJY1yhy_u>Q4l6Bq_tHvNtd+b^@9SEVQkgdZ{$7LTCUqqx6bH_H4&#H)x?T>k z2Uhx3i<~O(CE)_Dr2?iscRJ4+IpXN89DFBNQBG9SH13<#>sAWuF@o~$udZ@3oF%u{ zoImyuz#gE`NJ!oXeAph$YLWCQp zlT#{U`l1Oa&&Q5N{;XJ`q*zXxshTY-D?2F)u*ByQLC8NyiO*yU7c88?LE?GI$fYI@ zSZyBDrPQU&&Y4b|F)FTy*!|j*Wziok3|{3TleFyWomZBQROeO0l$~iv@#M9iK*8u>0h<&hRI8}$ z;DsqKs4v&>UeH#ClTbu!Mn=jF*zU9e>v%88F57WF$>HM3bbP^uhT*mu%n2lS%nNHYNuTP;?Yx?!e-1UnB{6pCBqFd7x8Zseb+79^ z^K>+yv7;91Giplp-^vWP{*Y(&pN?jhi`J|y7q9!=|KI!O5&hV2a;%S2m<_WKzEKQA zMU0qFRjya6rhFSHDJ4cvJSaRdJXPT;;^AoT3U4LW*Dd{Ng~gePvHeyrqWb{Kf{WU% zUG?|i9E z(S=iHldqpST&s$exs$}VHgbz!9!~=ka~DoxeP#_AUG!arKS|X^XbuB-dg7O5Ywx{{ z;S}RG#pqg&>vIE(1qAGJQe;il2nq^7s+^#-xm`}iwP=@BWfCjE;Cynar^&?aoA`=n zAkCuJ)a2--|7I$cH0cZ|a_Wa=YYMwWXymJH1pC6%Fvi9GKh~Em8iDlr`7bXnOJ4&Wjg^~Kbn#YH z2csEznM+GSXvJOsP&;q1ZPMpU9G6m2nKktk)Dzdihe$4I?>9F!DwRXOOfDTxzyB8J z=w>kj$`m%M7@7JT`w@id%~q#6f$(*PR_H!VDjKfP2bJ#4#4Y*VXfX58f1{U*bt_{` z7fw>ERqAG3v(XaEmyWCQbJdOMdLejF+>Y?_p^mSC-b|@0O-_@P}^Q_GJd4a5ghPEzn58)w+h zakGN)@UEtEV8N9X*qu`GlnK8l%JI&hW~mA^hajm#Vx7fKyXPQd|a#A+S0*{ zs9*8%5_KpaU1n5zFxaUnUa-!}uk(6=!hMDHOpBK~m{CugF+ShnHB$=kq*qp)e8jB6 zRbf)=29$Fj#h`~VBlcwS<`m1IqJ{%S%`c#VK?C98`UjRGWlcJy>=<_`xP`0pn&ov? zgZi|oxs-1l7*9@7GbqDAt1j0buezR7RrL3-i4EB~xP-weIzPv=_*{CpF0DV-31s`O z>k63sl=cqVIyR@&2cg=3Lhi@8`eH&@Hf~U|mE|9LK9%oW>|@HYR;ml7y}-`S6?%F@LKR-{A1BJ4 zo^1p6_i4fS@GjIo6#4mc;LS=xBpRe52=Op=dG>;J*@C|a%h^R;QGKFsHdg?vWSkyX z>vENb;poL)?I>~@Eo$ZS>H|ykjL_VNP(Fe=_KSS+K)qMr{PinDeHTVP*uJphcrJ+h zPfG2*vWG{ac}v;6$A+!(;W=7uOv~DkS7#?-)(~e3Jp+a-b`s-5?*f@#rp?u9Yk= z$3*xT&)O_9`xY!wlpg?Nh38kk!HSuVQ4+9X88#0>XDR%N_ihrlcM z9!Okq9Z#=^>5#2=?toV<{6S>>!7VC-d6}93;eL>TsMhcW)i|20vBm30h9f@aR-_Wq zLJ}m{#MUH#B9OpQ--ujjg~=ab5Wk~&J05Bc`u<4Z!)Ciw)WA``6%iw-Jrb1cl~Hr@ zJ4BxktqbfM=pk;q{-nWE-sZNH4dXOr68sM_)$VX)d85t>(O^R0b^L;?(t;J`%Ihft z>^hz(;n`zFY*HiRj|-pk?l|#w3h%Hg*ACcKExk~wv-JYEbZ!eS09=W2ezBiW2~P|a zCudWq(V$Pe6HKi!yZ)S!TIlsrzf^Dl-^e(Ey8tLq#wr*0*7G!1EmBT{UqaqHP4Ex- ztik?{qe%z~f@rAq1W=%fM^ZP_NF)hHpV~4-ZkKrp_C72~=v{p;6NNxg5+_8XMhI7^ z-`r-VAuf)<=CYF9+`R$n^tp{#b8*PL4F$>d&>wNhe9D;$csz`kt9{Qy1_wpw)yDy{lC8FLmw-$g1k<9 z${+SvJ;sQaJDb@*4Skp{$q3Et;fL4}%0EYD=b08YWD_l__lBQ;7&2m@l4-c@L*VI! za~kSQ3*7P^!KH4Ecx}L==SovV zaF_5|%S5bc6`k|--$a9NLR556N4%mXHuJm#jik`ju0bt!bz8TA_TrBdt5K~YKfqe_ z3emB%LG2Uef2CFkqE;jiIE*qnpPeeU4kMbnPR4eS% zxBXXWJP)REDO$7@J}vtt)fU`o0>sIU5MzSheb|+Y9!&ciN^q@ZKi}tw@0@NY5On;T z4Su|K;MA%aR78A&p^__Q0TJ~7V#_tpXas*55g|vgkWkeG{9Qw8sW z?A2?vnI+;O*C}G}KlDD=lFb79)kgMw6c<~2Td$I!y~rAykh6ors&tISqOy_I=DJ{D*pCL=#N0g4jYp#Pq4&{V^!0^)ckFvY&5Oi0_BsS%y0J$x=Oz@Uth49od=$>J zs{}W^4z1Pdp(f^LPR(CEpc@RU?5)U*cPg^Pd8vh*JEo@ z)ztQm^4VwTuV-C|e8t*0_&zSIu*yL48)Z6M%U>7vbjP@DJT0*AgPl96krRCds>aIcy zcZ*g9qmNN>Z&GXtH@s=ptHj5eWWs@KZUBYMV;yHHHK>>b!Fve43@FB zk47*#&pOoPU5z;o!`>O{yIwuRwjX8<+$E_X?EKj=QT?A?@J8MPaa)5eE)z?2?h*(& zbvPMG&`waQ-%-YG6J3>GNb>Xg3~9u{n^H}s{fZopreIR{&h2-gW8Hkt#g~#aY~p|0 z1vz4g%H-94;*Hk71h7QC#zuVRR<$HwO?_B^ZcQKP!e&HKQTirYK;f+s50vF9Dp7kfskkBOECd(=>~xz~ z{O`WLO&gsUkg}m#v7@yYAGfMytl?#H#+6Jez)KshNlYZx|MfcRwtShq;YqCVQ)QG)`nH*!g|G9|DZ(C zLEYRO9l+6CBSfw7wrH+~wH9f*RnWDnw8u=w=th|62(nAclH@_d0 z{UTB#qECAY*ToHGxkRs`qF07=?MI-blS79{Rs9NXjT<>FUPV0ksw4vwYY`znQLV9T zmQt|wQY*sF=E`YG+LO6!mYr+0WaFtuR?#i;j<6;8rT@_{Y%8o=?Q%W}g|gM-=yOWT zXwxY=*y_^Lzufy@GVG;ccs@@X(-TucBs|M<6^imc0%I;vCa%S0uVyQ21(hc2k?Yh} zSx-;SnsDqiO8b1+G7xMRbX+-#jX$SG%{~n)6e%+{9|pkAABm z?lw!jqT$QZYMxmmn4+F(f} z?oOCD_?$*g1xE z74mOoLmBf4xM<~9Yo zlL`mOsJJu=EQ9{@Q(Kr@IEg={|M!48!LZ1D=HpVO2j^Gur;{FYW;C&qgce(UY zN7gGAc9`2w&@iv^+l7>l%$|aauTPZ%FaQjXj8`gM|}McmwuAzb4=ogZQ*-*q-!S5 zoVj0-nyHA1gNrpE=zOs6`*s*6BI?Ojx!vQ_OaRXnt<;7Lu* zdrd-{kT`(~!bweklF|xPwL0>iRdeFLRX)YWKgzLe3VME9BI!a28j_8-!2go+^DPXz zrC&Tk7~Wo;kHWvlBNh%Jmr2>hs#_}WQ*xeFo&j!-#!$H<0TU%0fni2w=)AGvV*ANu z-Pum{NGc%~=YO*``q{ufOPImYG@>6#B$ze{+99t)k!Rab4&Diprty|8z zfeEwA^oZ?gRj(?0Y9-z!pGu`%hHGli?6tQmvomR}*ST+GEj|p5{dT5iwH8#fdib*! z;d+-?Q*SHXrg!?V{vA@|<52Y#T#fdy5bHA+aiXn_Q6_yA3GP+BWygx8)I7FMf8LZ+ zMypA859}CWo2GBJI6@jr~98I^uO+6SR|Zj4;ourB)n^6y<0Y40V*^} zI!_F&n~jyWyR0Rei|9JIvVt`9&<7x&<*0;}KP6S#BjIk5TSHIdsMffr8=X~Q>8k*2 zLfF*ygwq8-Zxb@heCe4s#mgJjdJHHP4?(KGI*OE${iNj=-f+_yp1+*v-+CPMM(p_C-mY9)S zIUg-6Au!bXQ)ft831G9C^=G=9A;RgTGoMBcBz|cMgo&eQW&S0**I(;?g`Z-I`ZA?@GcKKh2e)3L$KMp? z?n-H1Y^k-=%QQvQ1u3uBB1&|hk;5s$*|r9>xi6{1#ox(9DH`NCQrJ1g6*doQL|u}A zJ{VV|rueDHdWrcZYA_=v>0wNrnf|rk3&`P#R*QT&^U5o0{wbO*H>^HbVRPymL^#KI zN|&ESH={7qw)5YtiPofqcj~a%P1TN?H-xfNd;by?}05X)_Mu`nyZej z#T4tta&$t!OHskmbm?-1Q+YXY>5*yM+_e8NqvERFoNGf%=1%2g%7qy1W%wz<>J&8B zq*z5LP&Tv`oX1@l(N&j|dzVa>btBaiYu<=-Z=Wh@ZDgTn{A8T8k_D9#wK$=5o0Kcx zBHH39n4~k#(kJtjYw~Je(o&fdqA%RTX~7apJ_D>}%x`z>x0K8+1ObaY zzCRGXZ$gn~S0|Du{g?$5Ojdu)EwS$(uQk6Tu#|_t#_JS+eE_00h8o#l{%ium3Z`~l zah;K0MaAi&1^uXr;j|CNVQ4Hin=O$w+TCF^+E4hu3)%3$pP4J?69zN2`(~^QP*?Km z%#xzeD|$dL%&1o|U+{|MgW!uIhJwPd@B5Rf;E*9+^+La!7vBIg=eF!GPz$U}ejBz+ zE$4VjwUTl%TORlg2n4Sg z4=8~4mmF7$Z9E5k6uI8Jq;R_S=2q)GE!qN8n1dyu zFsL}<#0FWI*L+E6dE1b`TBhZpoP##BYVOd(sxP{!V$>OhoW(D5jkj!!Z}k4LSg=p# zNfofExsGW$==HAM`^9n2Vhomq!lz%z3(9+)*%{KP-Djao$hBu_(qyeB&EghE28U%m zGvu8f_sowNerULJlbEX5INLU4Jm2FY&21?U7t;8X;MlM}(}5wY*y^1jLhQ<#G#p)jr4w4~c{ z)lZ{yFPYZu#wC8^z!WCbP(7|T-MJd9ezOU>?d>Is>$nsw-k4tR`Ciz0PkD1%w(^md zov}50-;#*YlB-|1^*pt_w;gKNY+&mepn)t6L=taefBjM96G3)TnIu5s5 z#my;G?0f>a)8K>9a(J^2w+5L2Ghn7b`q?jva}Z>-CKelx)^vRvnlI+CTzABEdFm3U za`%fwn~eSD|HS9~W_ZMg_pRSV(1{=DHWTS1h2IeYsTXq2>dTqrDOMG;A+=ym*Z^nC!AP5i_#5h}aEVAvA z_ZcKszya>YI}ec`^u|h$h!lQsnZFq{TYs3@9)RL%Wi_!xyyajCe9lGvJfDm5*?3Fx z6ZXmiv8KP;FXxnPBXNl{+CmcJgrPvD2V17_mkekeGJgNkC!Dkal04H@W};}Qim8?Gy+O-|~8Da_ce z`|@9NP)Q5W{1MFs)ac1NnyQsMJ6pF*NjFcpS8*P{_p*8#1 z6zhsimYwv&^&7QdI%ZtP_7x!;P9)KHoOe{n(UJ_6TMHx41emZm0;kr7kR-lfbI@i< z6|k}1H{$kfQ!D;*46ZrML6Xlf2B{X~kogPPvni_g2INSAR?dQ|6APjEnX;pW*SJcB zqn<{)1l4D0nvyS7w#H;6@DJt!wWyo~49w!er*Uj&_8#(DZ~aw6^tLChw*}QR07w+> zHG7|Wh}CQXm6XkFCa=a+KTfhDjB$v|l)4R$4X zM6Fx-q;tG;gPo6lZ#~Q?f&f9-8H&=w8M0eeAJjILtsT;8b}G)@P4l`r33|!B3-v&~ zEjRv&lg0@G7UF*RD&VV6(%9rClWPF3jaI_XeB*tuYw{IOZ2>ICqrO%$+H#A&JG5kx zTMJeCZu;HjLsRg3`Te9#0x8TvlFpCZpP-JIII>sn-BMfe9uaaBf)b6_E=PX*9c-(>rrJ53j}P{?CQc{X719bo&s!!D^D|w$oMrTxjBNIfa2@mMcqr&P#vM>^x!%`du-7p|#};^15OJ zf^H}A!2tKdh?anq<{-&Y=q9iH(w-VJANFBy8T~N5G=8sGLN^Hh;CH0lu-!pdB>zba zkxAaYMf3ABGbMkgqR$L*D{oJYBc^zZ6!w7wI_=kvaw?xqLO1%?=6>U}hBMC{c zql5>_-jBzE(EyoK<+dK?Rd&7X^o1#Y5`l=kA~*C?=h6KQ96BP_H>9s>q3eb2?8Zh` zR!XT~D;ph!Ez$b6t1sx6g7m4?pu0^b`jEI)7O68*Ho4GOWyRsY#(gXKPfQdsmRfgr zZ9Vj`Pp8(5#9zoOB3US!1pBJET6_#@ujLdC_`-`}$;ZQmC)^F$dHDMCSM8=$nXmcN zXxPoY{MZwUDg7^UJ$xoJ>oLS6QSh+64?+Bzt>+S-Vk>2C%OCczn<|h;Q_koLoYz5= z(WNYKlNpZ6k;>hrB|XRWov+7to*^A>TJQ9_|3)atBIp!GRG+z{ z#w`s#oTls1cigd_l2|WqM6=;N1hnB^r{b{QKKog!Zp+r4WaE<|ruLU911v~ioQ?K{ zbq8IR$6_z!ASP;SHF~mWG{7^5IE zDD-Z#>qVhR%H(7BHI~EPB@)5(*Q*=yE>-u$TdPc-sqX&H;lM6bDcyGJYOOQF_csBY zfg4+P{hI$g4s~8vJZF_7b-l=enh|#e0uCx_CyE51-p0VJ_D@Xz;OE>z5~L<@f{iiu0I- zGoDi)sfS0sp}$@)Yy#n$y~``BEq9Je)w`5UF5BQt9)TeC3!L{dQx%Za6IZSNiHXw$ z>6$o`CwZjUxhgUd(&45hO1@X2XnEcgUOZy;X3zyf&PkJpezEZ^pn9oo#zo zzjJ9ehoX8PR61UPM#zb<*So}EuJ=g1;oU30A*+lg4@DMdFpTESUQD%pF<5JJ=oQwZ zXXP1tty*TQ)9!#EoZ?T^8<)O$lcs}Q!w>t!nV>}Z2wXZ`H072G1!2GYeiNoIR%Is4 zsO$0mxE^G9O!aY6dcOw#p9}xJ0>63gHx~tOEbT$kWI$DchkPwmcI-jJT`c&mB8$Q< zV5`U#7>YSkj=AuVlty;C)VH3AkxN3nZmR=R$LF;nqe301eNVMcwCLN5%#QG=r|GT1C-+pb0yA$6s_rd!6&o68$|k%(g!gNRPVp%Krg z0#Vh0X^ol5C!B5V>86h^J%^;YvP(+Kp(A*Hw6p+^1npfeU-Dtu#Zh%+j(`-&*SFepPIiz+g$3v(!`zX=Nr zxX)Q?nD(>f68U35n~fFl#L1PW0(7--uf!LZ?( zuMRNEADPwIT(tIvK@-@)d>UEA)><;tIkJGydF8zk-qXwJ608~*3jz2KdE5HdVui#G zgK#mZ`je>!JiqeH&q!nxLbgNnK+Ub&s(3jv8z1>sj9Q}vU!fxUsDQ!5sO}poORF3! z`r8c>w0a`4m~5j{GO2#r;ypp%XZVfC;R{zjs=@%`o??tiA1gFas&YyOh5GTO2n-C- z`sbW3Qo(k+3j(ymQfoZ0%#>_)>Ick~B^R_&V1pr2Xfca#T5>;3j|Za?&`5=& zN&W&=oEcHCI9TP)Ev~rth_^{;YmIAX$`v%pbh!^>2aQ%VQf%O37LLftDCdp&3LDX% zS@4@WVj_D$V2QdzK`t0;HEkhLQU{euBqd2rXNa2FWq5IGKdhq9+DpelsRD}2=yB&D zWtfYekQge?l^N7=8UrlfOh%G-x+RL`rzNW4i5IsadS9}g;d-+$dML@|*Zja{y$Rl~ z)Osr(vC)y7Q2oT|)G1;qKXY>FMLWXuy=45U!VE(63n(S085%F?sx1ac3*%4uB&BDS zps*Z-1RM=KHo_iw@B-9hpc@Hz<(Xl_0ZCL5`5^V42`wy z$|&EyRmk8I!MgeKiuIcFHoDYvKLV1hoS-k%g;<+}IM?h>h0B{VJH8xEQU0h2rpy@zu*AG}*vsSLQEL(3ukBz*DN zYF<8cjsX{Ld%f~!K83i>1mj--_bDh6QXN=YUZ^%DNhY;&a3&v3mKKA{D{S&KAFpq; z&*+x?s?i+mgZB-RVIZ~{jG`xsRb;88KGQQkSSO@H2-@XhCMl_>%GBb`qA05!dsCbI zO;=7p^ocw8<)#wO50u~WeKNB|=x$fbhHiUBXP;30>g8PbsFdnqDTBXUSbS=dq%b|? zqc(db)b645u~6>NR6-bs$aVj}&-jXp{CoNIz*0lhmE_zPdX zW@;vJ0&P-DOx)$BM7*w_(y8R2u)y zdmStH9!t1X*YVQCqvR*$Xv%f*SB?7D&T-Yr#{1fiIM&>@9Ll=_?bdQM^y-&dr}i~7 zTuvtM_AI*Eqo9$7@c?PZOqC+#@(7L}fz_F=T6QGN>wSdGYZ8`UR#sVURLDLlGKJnx zP*r5K$rPjNGP@AJ)n1=eJ&eV=Q@gfdA!!m(n{lLMImPglZ6oX^UE z7K?2fJrt<@p)ggQvxP2X&gmT59(JUvxn&IWG!*>>&07`J4h{S?^b8!Y9U?nCe?vhP z7K7(1j=9kVI55_?$|r%E51JV{u$fmd-7D7p$uyf-5`O>EQqh#OTSBWtvnwqI%4a{Z zncVUrjFL~Vtyy$}iur26_lBHJ0W9v)G->ou*a?EL?Vw3r?r*jh?f|igqC=iRxz*ih z6^4fcljV`x`!#z_honX-=QP4$t@8-ES>+2DwbJ$4PV~wmhkLR}+}?Wv4*DhoYf;Th zf+~|hdZ<vkf0f3~%xU`Q&1>+naavru zqQ%;^Ihd;T0a+je?tl-NZ?tPZou5`mJJ)c`lriS@F6`HT1oGC z-ArMcTS8CQ3s3MUlp%$w>0xZ@C&htya`8i!v*)sZGp_tKF z$I#$(WRc4=ub{6_b)*{_&r9Ts`_rzuvyK2?`R5LSO?o8pkRJc77rEc?z7v);x=MNv# zr&|1ks@y!H4l$$IJS3vK_z2eQ6hfh(TK8;?4t>&Q^*yn-%uft-P`7IV;h-f57a2Vgq&=BKrR>09-g+N~t_yXJB<%`W~}38(?H%RUqs?7m`DEuKI$ zf17Qa#s(i0=!W-AwRsG}jAe%5v?uR7Q?*i5EzfIG7ogfglCbeK+lA%qSnyii-_{;K zQ7YFjN;2W-B|h2b2}Fs~?In#)$tR=PJc20R*RC6R^^L>_7N<+_@sqsHES4BEO~xFpZ(yu{G|Q%l#c ze}B2({mD1KKL>sELB?9$;qaB4q}KIopRAQjiIhT_zvd8`-DijLvCnL`&T!jgKq;!- zb@ouA9GnFd!IDp~8N9eaosO4V`eFun6VZ9jAzVrCU@_@CR{YC9+fDn5AaSahJmnt6 zP(rTo_+GUef3!pEvz!nSFMliyx8U;0f6q-faL7Xv+l_@u-YeoZ{Oyws1|V&tt_R>9 zutGh8yIwfc?UNNs-td@WRCT|-(4qwnsEDaA)A^tS9#C2u4tVUizvoJJ;(a?G-fIpp zW%V7;QN_0%@)}o^HUV$M1S-c1+#tPks$@4Yz5a{^1BLgXG;5b^v`K|?$^3*3w6`Vd zRI}nr0?SNz#rQ-tTR;%p0~gcG_@G7g6N+;3J(ZV?to&ZWvJn*^Nk1S!RKx94lr8|^ zC}Iz4vB^~nF=}TebM#NPTjwlT^H(eZKn%x z!P^)kEnqGfT(VI_xMV@;dmqI!i0;%Ww?kOw~#1FHgvL2#cz2h`p3 z1|r5?@;UOc$OWFm<>qeC$ z-&4KYaZlf*eH^s~Zs1W)&K}ZHx#RUT2`4v8wtyNUgQ)?}l)(X1%mTo-I;IT_32Fl& zM7Pr<~Pgn438y!Z6rV)WPTc{H*V|$)( zMO$&B;h&eDitTjJd|&Gt<(~GIn(msg6t4al5(j^ zN>HxE`4`Oe_MrXd_93VX9?%s3qrNmOXj%+05iyDBLts9K9jS>kPj_6!0W9F{G;Uxn zNTIL=Kjxot@Gz(ksi8POb@x;sWhJNb93$7I?2-~de)eIgE7&S0(b*u_=qMpM-8Z7> zW>DAHl0fGHiGc;dk^C_t>H|8tJX_ z`d*1LS`Jw;*~FdWGkk(&be&RXHGPvJ|E3->&#LD&?zSO|K8! zO#ZTJ`pdqBC|^UAXMa2%h&R0GcB1Yb4kohQDt3M$UwGjQf06q|27YrFq<=A+E57@$ zVZ-`*ZO_P=t$YzMIj=BmL%1A~dPH!y?-DNWHal&1OiDA3u$5a!2$uXmc*wu$g{_vfaAVY^E&eS^ixy^^bm^|N{mz;-mmh2};jv#%iSoS4N9=ok2YT3j{{qMA7 zR9^Lx>#rB}C{Y-(Ub+FU5BFBnTy1*)%v6A%>b&9HGr##@7FushtKTN~gEancPs}4L zj}!h#99FRHohCC%|N2MQd+%t-v&;Yk+^^gBA)ieFnSoXkbn(SXriKanfN#{gEzy~&-__62ieBrMAFeO%C@)DJ zuf739#RM`>tM1IECMx1kIi*jGO6AX}D1MeJ;vgCT*K60;*so}ScBgGO&G{?#ss&dY zddt8H51S3cZjZg=7vK>WkbCp&EO&{x_dE%r_~3m`S})_Q6M1?hX0LNo(MEot990wm zW;zK$xqWmwHJkb$uhEKL;pU-HwxSoDX6s*Z?-{2eOKtOEtv7ZHUvE8Gn{8sR(@Ke# zpk}#>NU}vSqFOjwU6OA)-KAGiE*8z1Dvo)Y1Ve>K4%co7iO`@IYFY1vcmNysPq3O# z!Q}RnuiNx07f-S0C-b}V5}#`AiWn#80mV^2JLH(N!wdJPfejMVhDlp1p_M1rs~43V zw7Yo)4AGU#z(z|Cd`6J04l`k|xJ<6r`vhAIj0N-4)sC2CPLLNx9u})1w3{NLGp%aL zrX{-(^ z4l0S>vR{AeH*f_0H}NFe@&01y1qzYw!~2FNqi+09-(~71gI-aW({@Rc(R7K8&hrJz z$(7T0$)Wyz2<2M~J{|;(RynBYHkYwP1g6^xDR!iV(rq4r4L@l1U#8gaCAgW8-M8WU9L~HdL-ERha_8g&exr7e+n^g=fGgXvUwcMHFLl2o7DnfkgV?aB%QhiGCerP>znFqdwIz?b92oGKGdGPN9;e9F0@Rm*TGURL2yI4DoC@ z2$2muDZnhZqZ`QUMH4--f-tbzer(Er9t$bT8%l6+srSSNo#-I#z2s-BB52M`!{;XR zj*yt4MHwDZ#TCQF2zGIrna~^c8wD7Upt_6Ro))+VJqJL8Hgh-l1FdLj4n!7K&K`6u z9*p%+p;ON7#fKYMGHUmKPa&Y^l_TF9o+mTQGe`#tnyl-!;lGIVlk!<}ZrKkxJRW$Z zXsG)>kT5VqpoC|zp8(>ez%C;{jqDutyzY}{>kZ~S#qIEuN3nY{Dz+EYte;@!#=J2M z*0JcBja1qBeOLMAbrT|4EipzzN#-dQV{~PLW)>nbItiRUd&(>S%(wEFLT(u;(60J3 zbw@;lqfzpyg8P`H+A5eJdKRW)XI#)2{?0#LEb2G>x8_nJ02{DpDN~>6KuB;xj`wZI zpMc_{KF{j%-5q|6S>*aAXi)+t5oUrP?$eG{CPczHluQ{cQU~b)N^mHK1sve$kSK^w z9fm=iONY`$6F0IjLYbr6Mv5X7z>dUUUC0_z5Aog&;dFppX>j<37MIazjCx( zn>1@bt^5dyV^DZA`?{$Z52HF^}mObhm>AlNc!x`>BzUqgCmXHvG}PpA9jQX6XS^= zUpjx~l`8IW>+2;#2&Q^+mtOwvVmo~zl^&gMQDzU#cdAxSVCmJrq`0tflG4UE4)gh2 zK`}65QuLL6?aQp5POTo3r$3GvE;nDu2c1<;j@2-K?LwGs*~PJN4RIy${v@S8(ih+R zMb5lzh$Fp9jP^gkTfIKdiow-}x@ALkKiB=ub!LdFqX%%>$hePLSLh3DzZM=^YvE@R zDoOLz$vF55OF@Vn{FaGUoJCJP6 zKCZtAm1nALUkcOaSu@zM{rgD5Q|q!Q zq}l=+D0s4c=r!Mi)Y3p~igtxvf{N&}9&a~dvPWQS|)OIpD(tQ9R^X`|f z+#a?^rEC8m3d)l}-@0y9^Hk6>KaQk+hrdv~I+ArEY8+ldoh^R8<-Kvv+FmUdE>Qff zD#mg&+16Gx8mDG8|C3}qzBMb8Oa?bu)UIBQR5VO#1=ZG-(bZ`_UoW06XEcIE?pz+s z@FwzzIBj8(l;ajGt8`*>D!7Z5Y++evxE}JZmttkiOzI)zqNP$e(7d|PzPf5B+&>mI z)|cjfI#m=ADWu`m!-S637jE(^%LU9;5w%LBU-VJFLErzH=`P9v6S;4Eq@n=TYQTLK zr5X&+JIpRi{g?5)-v^fn7MAiwy+qG2mW*%Y1WwK;gDRLm_MuEST5fA$MjMa#@ITqA z+WoQ6;U*$IYLpVyzS#Kv@j8rZr8fU_`&wLAR!<}P!0cs;$687}cn6iG#-0witZq7; zW~Kv+e|#NYVd9^z$nX(i+WNv&Z4~Q-$5LTW;f39FYYDSygt&Xz=)yA_<`!?9DbF%& z#}}u+a|;s6>q64n0z*bgz<)g5k~?w8oB)JG2SH5`o^;w46wzDnHlmwsPG7x+mG{NY zC11|lP`fg{vJddK?=AM+I{M8KeDd&Xb#v1p6h_Qu`7fi2?m9xQI<1O*RM;Q$nylu_ zk`-9Gb(pEZ)M)gLpMnsox7VtDnpZ3_yw`U*lUpsZFD_9QR*!pRVh*!2LAjZq?ZftD zq#G`L{iP%@d&H!E$#q}JcK;s?T_WI$IDZQVgFdIK-b2)QX)2}SI6l{H&&y}zNm5vGu;y^^r+OkQMLThbxV2n#;?ky-PT%F zqrvW(X<7~A)Yoe#4k4RnMFIQ|CIqWszCi_C_>c7|)#<#ip`A91&%VlpvU@b1BbuF*UD7+7nWqI-Ge3Dq-tXx zG<8&xzs2{;{FcR?Gwm$Y=e9);Fw#-)zkbLOHmgY8AkH3)S$n6=odvr29Yy?6qwDKO z*bPPnL72AtQvRMlE7B@_t@i8X_$fKK{QE70cpu6wgUqu0r&#Y51F|v@WTpH=aJ~cj zI?pyVTp|gtP_nGZQo?(`x3^nmLyM!EZ$n{C7 z#W3WxPl-y0NP*d|Pf-uc8aA}Ju=>(+Vno|y3T;csHS#ffSXsL6{_<5`KAwyE`n(QP zs31~YSMTv9X6%;k0OtUEU2Qk&6x=YgUwOjNG)#g=d%@{}bqbx|1E({(DQLC zPIqP)ogUmFJN|Eoh|U7lmCI`1ey=IWCFc*mCF2deCMP-DC+(N=lFxwblTrPDo^x5^ z`yPA3Og4YiOkeK!OfG}m7k@~z{UAYiMx`jdZ?TP3T{g(8XASU4fR8qNmNxO~n z;$-X>Og#z#{Q(LzPpU{gQy}pKE6)e0uq;AQLZtv35KFb^GT3Ymw`iYLh*fVnH?mZo zA`2_COTv7Q&?5Cdeb=b@D_n z{yE+MDxYR0WQn-~y_$#p=$4|E%Dl&JGkU}}20oFT3)LBqZOfvb@Vsb@Pg_PVe!yg}~ z^?tafB#*ycpw=)mI(4ZgP0bZyena7qQgV;Zt_q%dL8jze zEmc{CHD7-`?u({<$7Y!?=xUaiSc#{wLd&h8fLLhUpI==e<5v|m1inwpyQiF2~@le;q%QsK3Z8LOH>lLG6LRoPU=-btGDb6U-9K zl;!nKR=3*+R;3`vkVSk?o;f&n6gxh7I(@+s+I%U0)Qmx#5B<3>2yUy1k(S;Yr#eYV zccc82d>aAzd1+36m1yemwVUSEQ4aaU)E?KR)^p`o4jV3Eoh9;wkjM|Tpm?5B%Ue{u zE?H9V|4^N>fKdzhjjWF(w~#H=zwmd?vo=P3c>_wg_`RE%Qd{|D2lBT0r( z`$>G{@kTo&?}y=AqU#KO{p3P8q}(DGbcl{WOUTUuEX-<-k@+Zj2@i~vvjnxCbe7*U z?7bG&X45mSf4?TVa`3QS`F&A%dfUP%b-i|)DEd}s_94TX&|~|qcpeRdFU~l-dF#TWE``n~P1wg8`oAP$=@@X+HbDL2m4scgVP}7vH2Ki_8dvRZz@%J88IfarAa(e zboXt~3C@L=4l4B01QdF$6-J-MUo{=cqA}5>Bw-=qSgh=H0htH()@bgc*%zv;>Z;TC zzxcwxhdp{>V{h%LrswBdGiu5dC?z1MGg!=DQq@79{sbw8*)BC;swtI+%>T2LDlPS` zWQn#0)1*Hk6B@#PefVw@mbcE5H_(pE`*_hJg^AF(*s`5Mq|LTjH1OqC#cqYwI019f8%b3qhd-L@~~{&$}txtU~l)5ve)>M zZ5Q|xuZ@!?DJuj%1K~d1Md8};DAr=6!In$0+Z7PSI=-V(G2Q0XpA>rRl*hu?3fYM* zYarQqZ6=qbAn-S$vUan^F3YfTx{5tLuH+LaA?WI^BXEN3-sI`)$y?&?n78OInDl-+ zV%MfMfg|u%h-Ki^HzLCr#mQ(nHT*sePn>wkLDCM)GvbST1DSI@rauF%xbhl~!BTK& zmO_%epAIkydJY;gzKU$Wt(f`+h}uH*LDix^k&~4$xUz*{?TJmHm-@c4>ha2kAsy@E z|8h8|*zbhYh4^3UOtgg~I9=X%WmXZMDn#r(Z6hdO;Vx$W67vTVMY&%(xh%s@I;YWg zt*#x)Jd$tx=F2+hjapkgADQ=&z0`+NV?*zv^d#ZT*zM6T8A_wXYR?GWGPfry=aBU^ z-B(YamzC~4o=G94hlNp^U0tdkwYi0)-oF2cFXY2IP30t>MckKv$Dq?b{KYwWwk4Tu z;|UHIoqtYZK<~a`fRsW?$sm{cA6Qv7exo@`FBuOq+g&`yHaA!4-u^Z_BlDHIR*XO9 zv(9ptxqvDfOxfMG*W%a1Q)Bt>`Plw4%x0R>KPMF>Hw>h@w2WpK+3(uxEWuvDTYkaOHe3Y1uv8TyYu@R%Q{A5>ip$IZ29L z^;tJMy0>*0+O*|Hr^Uo&kw))bIAlUx!|SwS78ai3B}omb)&Ys`G1=>UTz=j-rrBz$ z+0*io5+6Cc1X^ohsENBX=wPVHcS!!)5M@B!KXjo4t zdv33Or&o{ppOgAXAEfJq{EnXc)D(I7a){+?Ah1ZS0ZqE`*oHnUsVEyNEeZ^CPQ}Rc z*ccimWa1*DSe(~r0~cN`tucL6YN*nyQ3iC;P~QU60}V|d(Y?-!wv$8>P@2L}SYM{7 z+JEu(I_p&m6*4~^S$~C5&q|+NYzfySqa|4+C+}yA)&}1?O~*3eXfYKJv zL3vpGv8n$$Wb6?F^>B3u?Gp)^6n{)%kaG5!&wNo0)mQuI4;(it%Pmz6SIW)9&bth^ zDoJ^33YMM4ehne$DXJV{HZLrAIK%?e-7-~nx6>*m%`rd~H!3Fd&0*VZ6W(^Lzu-a> z3*?(LwNQEa&CwYSdR&sn>Xj2;r^MqS zrA18=XKIJw7LF{fOihO+M?8i4L24#%L-Pn2Sya_D&3XQ78YLUJRk``36CXg=9dMNw z_7b56o&GOIJOk|M`scB#MQTZmH8!MU>4)P`AVRRQ26Y6)xw=eJpG8_@r@qReZA`Ck z4nZoUYXySsS+4p`QRSijYFkaI8-S_#&9pGh3mGpIxlAO)!K5*gVc3#-*M(6N`(>p1 zjU8KtDy$xKyQ#u&D1~fYs4g&ZmR|vj$VE!!=b90zKcf;6EU=Am$|IoV%kVVHU;QRC1p*3GV! zGBR&cZE1i2ZI+b>6tPAHH?tKF?=;6Qo=)C9uZy2reIw`45=`4%PvlZVZUq#sgt40) zJywz@%idF5sKF?oF{JX1%F5GZa*6o z8V^g0Y_JNGMDaHSAVgyJ}j@_|K9-E>B^{A)yy;pl)u7TxvWBm^7(8_ z%C%8n=jy1xZMM#t|6nWmq^`F@uSyxcKGtZbmz4Pl!v-EV-ne+jm)ngsN!^*A+e48c zwfI#4Cw29jGQiw@VSS17e!ylaK}z$DohCXsTQ;P4#(4<3+kz#E_xAT!ji9LM5%jKF zwd7)_VpL#Hl^0Z7gRlE)zVC?W^VCi==2EPD(qD4EB4D##GGVix6FcC8dN*;uwmI_* z!5H3z?b!Up<@iM5b03GI%9;Gl9^K$i{oV2)6c+1_R$HDk`AHOhBR2ux+wp$SyyLzS z-Gcm15jUUmVpSz)z5fV?OF4s;*N94ex7I^+TwxiUyQHza{d)yhWRIVV98N#!e^fXcAiL2oS(XAql6N0xpPTDU=?$Y*FAYC zuEC7e`e@~e$E-(N>Pqc*?eey$*~;ujlHq^clMS8$NzZV|+dc=nWP+Rn*y@0k7m3nU z*_Vyfh!G1EOGo`d6*?`UQSb~#2)TH{DC=;#;U8-QX{H-qAuXgC+lL9Ns3kYObRM=#Pj7gtpudEKtuGoV$Y0bRPIsN`lac zF3u}*5#t%!CCdZ8CI2((6*L;%*U32==>a(K7FsynSi)X0>2o?gyk4YW`!JA8QdWA6 z(MFqb3RL5>odpq?{P#qk-$E##zT52e>v!Xa5Nwr0t_sUzhg2rZL0~y0nmw=mp>u*i zpDTkVTrA=ydXt9qo#<_E_QLOYy1dWar9wI_`6OCGiTzpejf}p}P8^QyWQ9U)u`ez< z`Z3=$ENle2I}?=)TAbGQc`zU0(1SLGDvn6{X%qod(f0_VH12(v+?z5r@6I7TX^;v zSeCdHHG)8!+>aMcYU5l~l22Rch_Xz7^hM6}O^Jq7e@Fo0{BRzsOC_bbpPbL7e-u@3 z{tYmz9&0n&2Ki`4jW}_Cce<@ML?&pgF%cDztge^he=luCFL6zHeOy9^0ClqVQ!Jeq zPOGXV(6V&wTE_d?Rk?m_g=zkL?f8#PMD!uHf3nr??1s+GPf}h=dxCBf;pXUkxxL^f z-g;j?ej@UbZ^ej~R&&ApQ(YhWMO|^H+OaU--CQ>-N@E^xj5g0P$+>)?Vjww3yyt?^M%T+w}=x7zB2phSf$3C^3`kLPS zKQ?<)t^W1NChmdw#ay5>^MXA?E^uW-6t<+^)z+`}>)?IsI(6LnjmfuH7S9ygb)LM6 z>z{<_xr$R4FpI0dc~Z3-WQu&zoDt4)q=Jt_z`JF4+v}lveEZ5#>s(Sz+ z{k>+UthwR(N@_Vks-|N!USSnlx?sLUbHIghWJxdCUkZA!!NI%b{@-A~%)5di3-9A~ z=u!eE2Hz)!Q2<*gqCssECafw?m4#I#E?b&bz_d=#QQ!`~ofvOyUv!C3NxI`i@t6Dq z+m{?v+WI}8yigqmG-Q*8!6qL)=oB4Kx5y1irXxiHsoJJfo8DJl8X(N<;2E?pKt(OZ zX+gEZ6<=8KV>NY3qdq{Z24nQkq{ixjxDb&0CL%CvD+cZhB%^{csNfL@0zd?B&ibN~ z%fnsX&_J{kvoZWZDt4)q=J%8c z&_R{haHqaocmUI7;~(25TVEVzB^-f+&U$CIfivDHa;d$V^~h@@#qNM7z(n22Yf@Lu z?S3^{`vjq-M4ktI)niO5^qVIWmznWJGeu=g0P28r6<82c$igaK0OB3JMH@zl45^&5w`k; zPW8#Jwlcw;pH4qkf2YxF&}Ed{pD^VE@@@#Y1) zFV($}DQ$ zM&gP&7NXD+Kqgb~sA=)*QB79ZMwwY-Y@xt-lZ$>l!m#0REj1f7hw#7?vpSdKLqHHC z9O#uLu=4R`avuJh6W62cXk}2GB(%h=k<;$G5!{0N&O)MYB7ZK;Wav01J~hsL;x1jv znyxq58#L(w{ZDMvwbzn=!-oIxf(gKohlZ9ww7S1b?f=pI{vR*3Q0o_&h-_(i)J*sc z%4yU9^5v>;DC7i@mX<<+W{c+E7c|#dc1d}2tmBhneg{{UgZ9xc%%$d^jd?YXpbmCF zZeXS@5v+@6qH`##Q|yyqLLSsZa`O`MhY(mshTYryD7ui}?Lol#@s_JTmL>IWn|^(a z4~1+=gbdBAIWm94hNJP9r8mki?^|iWq;DtU6jZI-flUv(D5zf} z0Yew~OBP5Vllms9iEiXsX^9R~>1Zha{Nkhy8fBvn;wuxoINg!HfK;#g;lShi!jgmW z>9+#7{9@B_@1gLloYh2m3rJQrm$YgQ#kcxYoZcqV@7D`82*k}YR%UrW_>6tM1DHae zdwOm)^N0G=ON;B!5kyD$OhNf+jGTA-hbZkI&&-wn5VuKc&Us1_Gl8o)WR%~lKd8rA zqWScHtoFT;W>q)P{(IXg`%h~w{a{_ks)g954f0v_|J6X-Wd;PaYWlOkWLu-X*==Z~MU+v=z|T>Exq`SyJ-t58hn z=haj~XWqhzUR4rN^OR#o)Vl5aRa-RUw@;s2HF2!#8)J+jU#E58$YBH@5`M>NO0N=i z*nBU~L(-zQ`qvT6TfdOczEu~Nm%gg(_fgIn0)C7t&Y6*~3<~bRXUAyHd~z%YeC;bn zN;{!cp6)mUgGO}Zko8l7Sxf!NNOt8I2IZaEKR4Um;ES?>W~ia0F`?}$=Qo+mpIJYF z?Cxkff-YaSw3mDqu);Y|-6-*oX?ushTNtAuIfoym2umf??l$*aNgJH-f9fHUS+6sy zFi-<`0l%bJrfGZg0Z-*10d`Z1sZ_KresHyd)h!BX%joaZ%NffY)LE!DV6JbCSBWNMqZyx%yv z9@8)Bu%*Do841h+i0CYHLa1A4zHld^v)=c@86|dj*cXBEjom&FWRCYeP;yc#QDgu& z#lI8f6}Y1nU+;RYySOTJR!Y{ym3x9-{SvZKQ?|_9FMmt z)SbhCrvPvId`ks@gi|bLmJjoI#x^o8EX;%kOH>>UUDo4ptyEkELnq{_HO_0_6cpz6 zF-Agj2P>~ETsFmr2m(Dx(NZ)yi`h?ILDckA3X!q2{aUvP~T$(qH=WN-%ty?XVEmld_o zevWQ<_tIDG^QA)o7*dJ059lfuLsJd;ynQZ@K**@NBk5bSYK4Zyx!@9icfxGZ$WbyU z@sDY7oY(u&;J6#wd-%l}3Ct^ZKA{$?zT*$0t{_qvQUm`7MJ;xlP`YKG#9+=VBMHhwB7nG ze4ss{y&M6-biaj63*jl&J|Ug^rb+~kZxg0W)0`Ua$9(~1=W=?=7Flg{Sy&k%a56KP z1zsoyJ(Wj4pf8!xSD?D$HBm+I`8La0v;Wg);E5K^pjz{3%`;m{hNAp2E$dz~sGfUy`1 zMv!lB6v!$LC{K+P41mbaVPLs#2Q*2XcX$(=2{HNNuaFt+j?ifqqv)dJx=uAc% z4fp%CoQ>7DLRD(^0#s_1@>8l#B&^pg#Hv;-CSS(@a9b>0@>*|dl{l`~f9ycnwTr9y zDprn3EclOrh6yURudB7<%2%(m)a@LCSn#k$U=9t>DH<*%?RxFi6(is&=vn7#SfTCm z(Do;EP2ASTJwXGBieEvym)tQ%KxAhybGq-w(2DVd|2xJXcwq&hIG@Ij3*0^O*u@zS z%6+UlCB{rhsN>FGB-^T$QQ>}h) ztG{mNDr!(v7SydA(pBxeRd1 z8my`McKbb%0v!Y3FdnH8dp`$b#E~xp<5R!qHgXfF!H^jl%mdlo(03<6v@x97MVL#K z?|P3IG6{w59{FryjEChu)}6BAx{4)CvvsDowc87u9gfgT)Fkrovye@!Z_UkQllI`;NIA89bt8yN55Z9p8-?4 zI5-^qF@SDn53nwsOV({%20nuG6*WmwNwOSPEs71^c_i{dk(|Hd6pq@ zirX_>@f8_-|KN)o`~@yy^-)B+Xgz36E9ZbHLDsMQA8GXF7=FW{v@!RYo>Zemysy;~P)Kg@?YsONw7vxs_(PWn3$xOBV&H#W-RyPax0@U5@%1jlpEANnMwidT>6{)YiA*jDTfa=;JPGgi?ePO>8xHNJzzk7(Z z!4lWbT3d5nnDw&!Wr{UA%hN2`>=&sWP4j| zdtakKtu**gQlQv{ttU1=LM@e1+^;r2DaGPEKbF4zqWQ0}5$ca46-RCO!W1?&z%eY6 z8!I#X!kuOHt{E!4(cfLCd{+UxSA@9E>Xq`F!$lDEwM@E#3W{84VV&6gUQ*K1^%<&3 zau?wsfhF+!qRo7Y{It2GC(fH#lw9YmHc2$HV#;6C?N(of=~wf2*%Yd^lCUr|j2TNy z@~@osc*Ff57pnna>nGERk;(CXAiF>yyDe-)ZzzS#sG&QbzT>Ok*uu%#Gk^>r)V|0?_K){TWdO_?qU6n_SA7b;2sNi!z zxRoeez}V;g5LtvG!YO5e zMRW-7S#BS}*1NuLVhq-ghIi$R*d3P7Z_c}5bZTAyT$a>RJ((~!=v#K=_|SMeOCQ4( z(M7S(3oZSE$@mV>Yrp5r`_D1j@Bwczs`8J4I$!cKYyO$GnTFfNGZb&y$iuN2hEbyQ z1dlQLA0VRjrQfD7f;T}$R4|or&D6%4uv}2M?ND#;_IN~kL*p)-1qR*zcRkH1gzEh|MKPaivyb*jKOy$0e>q+Ns&G z%;IprJg$N+f91V2Dp-DTIGojMb1IYh(5fElT>k=WEj*j9J>x(ZO)*i@ z-keFiz`tghaoUd_Op4SLG?e0tNNtk?>EkedYtC|1?Dy$%Q~AWtLHEu&e|K|4e~-(U zT6ld{uEFBzbY9vN%Sd(mC(g&$Ii9oosm=5{+$8yjCaHT1;ZybxeohWvomPk4*2Ue= z;Hq9-rq+f$q#}VF3)FHDVU9`UOJ@_ z>-SD5G$&)EzMo>R?7HKstWI2Asr(e8|Cxu=lvy-K_}OWXr~VqX{RGETf`u_dqo=|8 z{j)e7TxdGH(7Ru2oPFM7V#xC@uoCxB9w{vCs~nFm*Jf#FSzbN#2m(>y7by`dve-Xr zw=cb-;BGN{vpUDCdi6M+)#h7B&0C(GJPI5*TwIVkKk4?vb5EVXD~_alCVU&_t*7G8 zlSF^N`^+yOcg;cu=9ym4{`q_wrHdMM>khWH)GxUH+Ash8<`?~5qgv#)JNvo9?HxUy zpC>tatCj=?hYJ##`&{^!7ME|^;Ri8Wdg|Vm3*jQ4{|T?+?B;a`Ue2eKI&WsBwq>=| zi3+7;xO1niK3?Xz{aezsyOD=Y_~7Gd@NOqs;2n;ud>y{{WyeaVBc54pXr5I+UE@`< zKDJysEkEb2IyMff*yTJs>e;&v6UwCOT8raSM6yEqN)&C294F|FftWk7NH+ z%f0+0q>#1A%JfZxSnOHycq+{Lti^H`!D%i$ll7?QYAvU$FZ(J5YcjXrA?uJ0M_r#A z&aV60{|FPCe(r*Pdi&z>&%W%Q#h$}E`^}F!*8As2`|Q2;zpMJXzc&YkZi`Emf_F_? z{m^!$_{hCmWw=v|>}t~ar&XNhD#P9eHkKWF^w zTZy{Kqy4F6;m;nJtZsOBUb)$JzTwwzcW*A^CET-mQ!8iwmxV(6_E|3TAK#rn8g;Em zOWkD6=X*;r{;yd7I*`F-Wyts7JGl&2ZJ=x#n;p|mb;AqFQE+V6t+|D4@yj)+dovG^ zK#2Ms-4I+pIGp>@)LTz%>-JU5>wWuXb{jV8bq2}`oVp0V%~n<|Iq|8of1(041{YuU z3ohb!bH^zgTbyc;X>p7$tnLwKG%9C|1ba-w4bH#b;O>D35A8%s%RjAq;nPO?<2X*uCc&UmxEK3XzzmTOS>gJ1THSoX9R#z?> z*{fI^AKnqCyG{3k9aqn1czn+%I6O!k-0dEmJ}tG@Jk(*a(pk2%^J;T0L3RF!m6l&I z(s$wWZf7u5|D&iCty$C>?$~h&SVDhK#w%xzS*=6aor4Pah=CI_veA3pkAgb~eDbvc zf10eZejCZ7U`DE5kD_>*Is!EI3bnC1C}X^ShqIjC{iuVJ(RMhzmx00HvffYOX&ZawtDqHLR<^ku90tPL_mp|S!=%U#?cv= zF3#zx-mfUIZ7h!;NIa~l+Wp=h`Zfc^(a=v|+}yDpamQtED>LBSX{rIxxw*ZUCnuzi zFD2L&op6a+W!DkYI}M(MM%!|tV37f;S$*8q7Tdy{@qaZc!lK&zXowLrD+9j8#OPqg zw0gA(vEOFeFWj@2tk2?yDB%RjC)3odVI1iT_uS!ulOC3C)PPGG8LPF<$wzr+F}O#NxviI2yJ z0b_16Q4Vzu-tM*mf10ceB@!0d?Z+0>iS%aWT7#pLiOtQ8V~vT|&*7qChQj9`&a+_r zXHhOtXpK+aBLzpPow4+6>N3;k;WR#d;Wk6Xd=_r6_HSqxoFm+*c+|by_(^xjq`YLG z3)>wFradr##8(SX1-MYa_y-0)ji%k-7Qu7GO>X?XZNhYi9?ycdn{-W%^%kKO>nRft z4n9@gXu~tiP{Jbxor^l5bMhiJ1`38mn9|((HM-RRso~cTrm2BKvV$y4WW2mQca!-3 zmQP-$<8)NVNLU=BNO6YRha9@)XLU=C10tIS;e<@fJQdsY?46R=MIBbZK&^mZ&AR!I zTYP=3*j}19pVne#$9p$F*`W-683$jb3h|8cA~aYC`Ux?qz4aR18B`%lKSa(@W%aEK z%8GMl5DRj;_m%Yxc`|5JgeFe|fC`r=D*akv2MbOvB^U6t!iG8pQWO-QuS_8$jfxtt_TUKKpBNim_*IiTd!QBVhOT!d`x=^%M06Xv(@#CR-%KnH+?-I3D zbgA1%A;oIKvZKn)qXXKPJ&T!~!=r%7w5;1FL(yva{VB(Rm^|;(0pUboj({hOA_Pp` zU{y=L%3if z@O@4av!&%+4^HGyElU=!=PS2BEL4ADNpn}#E{hI@cr1RqIeM)%e{tK-A|&OD?1y^P zji!gnein-R<6l%&YtD(mjLLtJ-_2^$em{#s%}hRjii>jhxQnaAvfVupP->MiyWPc( zJHyPAB+XhE{|38VE$iDok}Blo>CEj@<9}NZb#+}adOKs_pPv<67rWcpovK|CdE3+A zeZ^CnJ=E!{&3rM-GYn|lWRQx5`HlP2IaSo}YYTKoR_RS{(61OP8qG+)a8(BR&%BGN zOBJ)z69u$3dKm~ow@}ncnF0OYB2>#BERLTAd-%>Iz+6;WcNS+A<({7wR}Xp-_g7-1 z9vGE*Q}wzMidcl2*3-T$P$w)?#3m45-Mx)pKO&Co6EJ5 zlAEu7r}dhfQv1@Pr}(O`dWToF+GqZ+72WP=^5*?>|NiVSM*rlpV8sFBe|*3BTW34J zJqGtzqa8Scb?iY{KW}oj0Jpsd;^|fA%`Xju^-_Mqbwe>YIwP3SbX<~&Progd@-i`j zj6A{X*Zu4i-#wuGvzMqydW9YZ=03sFRah@>5=pm@UKX`$sQ&BxR{8Zj?!`W>STng30Z2ozi@g+w0y32kM{MkZ?`Z$}O0<&|h7sO$j_}+m}V_omQPI`|GcM zKB0_~R#VN6zdTfVyK{BuS*6K4d9Mb~p;-0%Am^+B@Sn_NeHM1c<9s$>wdN)ImqUep z_t$!A({0C#+M9no#+pxRUsS zN+I4^?RzX-zWWmU$GLJ%vl4OqCp8~yH;CAv-X48y1#&amg6{mdso$R}9W||RYRz=d zNuPNN;M-6>6jL`@dd2n5r`a@zWi(&k#Olj(jtnzBmCrr(J>8Anwx*h!MUJl6U|Kd7hd#rbT$VNKXoqxu21KXuPz~nju+Vmf~yK>hf04sdL z*yv5x2ZwxD?)+1)San_`{Evr!3z)slRyDcE0YhYUM(7=>*M3od+r&43I53!kd?w}$ zC!`@Hlu_U>>&7uOA=6r~dqhR1R$sBbBek3uBxX#)e;re<7*0_3RqU3N&URm83Gw*X z)2#T1!K~0+Fx@m?#v3iEYCD0^Fgje$ahvvJ+9&b_;1?ag_ws8?{WrF8QvrTGu%mz!yb;t6Ru7PJ|I_HaK zJEhg`B32Uej3=cng!L2{yB)s}-+aTS9U&H4v+(`A1A01aI1Z;^voB*~*6+F!(*#{H z9b>e6s2`K(p^m)dUIVM|RSXO@^Bw;V({Er7+3_8R6u$_mleFN+=etTQjvGkLb%&Oc z56AcCoo&RlqV^s3`zNCBBcV1~CVxn4l3#V#n6q4$4tRww(=@HNK&~Uc`|k8@Ov?5F zsO}#x%sxpA5f2V3zyk1VMx_%NKqM6mL3lTEdQzd+Z|!L52(r?+whq=k#p=PMVb#B{ zBF}cgiq5zln%Fy!$6EcAa7R4aUVncoI$_cbQbjU$v|;tG7%lkru;A>z7;Msu-9Ih} z--97*G+=VAhf!^e$i3w?PDsHEAku8I&3M})77O1|7SGbnednU*Ottf7uZ78e7{tAo z4)AvOjprON1qTHLAIW6m6!iG^_KAcQCk7Og4C*mSu(x) z4P$F10=A&M@JB2>6!X568&1W+y}WNd5ivv{9qTm*W0DpiZTl?fregBNjuzN)erv<$ zpT@$s1=sqj#@BCP-E@O={(*UEW%gk5eiOC4C}H_v-F}@>m+}cX#%bi|Vf*D5r(R_D z!e(A%&c*kQghiEg|Q`SR*6WrEDNwBUhFpUiW#o6ZPlZ$lUqis{wtF3a z_wToemWD_~!2+LR!Ej-QLEp~CA!~*kfej4axnGZEtPS5jDrLhV$G^uR=s#c2K`1}z zq5#p9{d9%P_tL@*5RdDn|L);0%TM5h z^-h1J-O6sMENVU+^TKVXbUcIL8}X*k2dBT9?ALco1hq%M+}ObOhbh3?`Qut-q?G@2 zOM_1ftE))P}?rk39Y$+Y+tfTQ)*S7qVq<5am8ve6ZUxo1d(R-q&4_>hOfzB&`Ci^Gc#Zvb% z`&Cx=$3unrto&d7$a!C@IQ%Ove#LM9M`=5+YQr5`vt6VxXkF%wY4gTHw?cc4t2v!H zqE_gvHXlpUrPWv5jkBkD@T^du=YH>1kMsO59@i+vXP$xF`gV}+4}0;7#2W4NipRsn zKzsI17co2!fhUz1dsOYt0Sxgzs%2@N-uSQ5Q%@01U2M1<*Gc#LWK}6gd8a=7IcHIA zw73k3uJ2N0ph$O)kc^QrJ7Jz3Zk+q!9QsP0@1A>ZpEuTiRz;5a4b%x513Xmftv!9Q zYSkul$1v;uChT{!4a|7Vmhd#{PpV3{zF%CNoVz9P_Trg|SBP&^-hX*;8|LcQ=gwB+ zKl_MM9R3Bm%SBS*St+=sNPSIyBgZYBOiP=^1;x^ZQ?$oY=tUx(*c=?5sa2`(0Tl<) z?SBQ-V+AkuH1CdqqyC@WrK8W3^)TADQF#x68ud7%>a$RRT64uV?dlss?>jlpIJ2|w z+msUhv-piIgWc~rTVsP^AF*bg+0WFk*rtAzzNFo#bD{Z}z2Og2jXrQI4*FiN*dOaE zhQDm&13>A@o|{@a=eyi;w#Nq3LH@;^(UMhZk|Po8T{&9X>y(&W|Dl7R_AMMcWRX<9-Gl~h*P!eg(j~B=U{;M zuPiu|R9%jk=>DiW^#e+(w>>NQEWPAnD9evllbYy%1=$5%PIiYru62%NvC`kQ zN8RG4$aGhbk|Axu^?rRiT(huG;M~i5we?I5 z$8vS#Z&vf8^E)?nKEAM2>Qm>goy%QZT{&~#@b_RHC$)H%`D*uFY@s=B)jRKDR>9x? zdMns;Et4{KA|{IyM58K6o;FDTXN~!?YT%ad6ekBpN}ZY|8H1u39NeC%b*bk8H`)*s z)UkW5r{Z7NGoC6T${uP}7#7ms-rMe=KqIl*yvj;L+~T|9DzUG5OExz;x1{9xUl78y z`EOT~@h{7G4h}%-ol$^tE!N?qC~wH@cB3|uj{85MwwEgs`Ny9pQ^x+!7HmTOe73ru zk$+o`cd2*EQz}o+rn>C=u>~?QXk&*Rwwomw6tTXePEDC>{CFToqCle+x^x;_R+oL=xYI;h+5qf>0^wrbyg_G=Q#OLbh3fL-^T zmZGcjSO2``%EY5{spWIj^lQFP9-7HNohaDp80p1wsSv1!|7cZ)n){5pettO0c)S=s zA8YE*HnW|WT_ni$)ZY|*WdCub)%dR;4}9{3$BE#2;iMN=DmbS{^+C*j)=CsCHBnha zJ<`2$wNELhIIbN|iB+G!Hj|&I4!)Q+kvujhO!4hK`b0cVc|H@!Bqf$B%xtYV{qbJp+Pj^Xs?wmpA!Qj(SOxdOfX+Su54Z?)PR z)`&bMaYGe6Bj{lb@T1Y_jri0(IyzkrdK%4Ea5{doo1NrN>G&Yd&TJdb=l5kdXma*_ zPltaFyQ14V2TtgrNzKIS!<~fwW!88gx$wGB!+*C18q;Pqvv1K3)sw)@7xUjr0Vc7z zRR+!vLG?#U+%97F7E?%k55A+r#(#YKN!%Wb@ZK|?miXl$ z7TdsH0iWu4ei;w%q)1*?m8~EEcR+~0{L`pZ!;ARUCCUQf)1#?bMc7M`YNgoBx7m1|p6MHFCv3tjS~LqVF|XORQlIsaUdM9L%D*25yCq1?M}j z+$mVKt6CzgS3Qv^R{im!hj8DQ!?o(%$R}~%{_nvvgSO9G@jg|rYcekLRg~J-=5<=l zm;#&7H9+*;3lB~>l815N7`bpu6ic57zdbJh(Eky8?EiviST1_g z7_UUSK!S<@UFNGP)!)$S#iKYr2cQ>ULSXY3qM8kp3fyxqoy6+($y%#-mMf;rlv}S5 zlxx2nlzYb@l#ACW|9vK9d%klCaM!y1aeM85f@dS(z^zI#pxHoBtt_a!%~n(E->Khq zt3GwB^K3ba(9m-orKIW&t*HNa!+hR(YQ(u6{~4WSQ@SfGe=%J)grr`1D3il2>ShO} z{$RW8-N`<N85FgF{h5P+_ z$hZz7y$lL^vKP{;u0iDH8%ue0pjygZzlWq?8;CouOI`nnTnBJlUASsS&nm26P%C&J zp6mESP75;sCV$~?euD`^ZcFY$oR@0aYv#?+NYX%gh zm-9(!#U>BO8PPitpn@Ac_{?(DJ&ZMcAz#0!5xRNSkHuLiN(I+!iF%cN=MtBI=#ra* z>P?^-EVW?sB*juoJiDL9Q6-l4ftf!+V6ERUh;oLm%p$wU>#-i7w~m~uRUSjwbz|X2 zfn0GqcRYa8@a_n3Gt$?OOVy0$LbD|m@`c&N(d&N9do$5RAoi6?n_fR#luF1dYs+gX!E4fb@EIF@1EScty zuMFu+E`6kx97kzSAJbC({bun&=0C*ec1pwBBchy67g)7j*Zuh{+pW#!OyVPgRofyhosBJA(R5 zpB@C256`rTI79q7bNh;7^wht9g3}KNgvoRVi@{d6Du7&Iz^H<1 zvc+=I9c{qy$GKk&i0Y-T&jkhr0IBAJ0$vkP`X{xE1UixU?#ZC*MUugvY9)t6*h?mz z!~DP^m3nVYzri!P+~2c#^1A!{c~RZ#Gm5o@E()($NYho8JD^ynTjR01SJX<$@KlEV zHa!$o4f$wa$6&X;7{jxh2LwyY3mnWBEn+;R{iFoDIAEn&Pr0}FCU@Fc6n$V-spf7* z!f+DkRj9#X$p>zoHCb@M@(#6Lwn5UDmGwB;Xg*DXURbm_S7}y^u$U#`tuD)&eDigF zzwk`&w6G}}2Z7+Z9s;kdG5j6D(C>*4XXG22?*oT0mOCH$k1d*D~6G zZ~x(b|0nOjjrS2T%7`2KgGx6=WBy=K_&HD5R~DpG_JRHkSC94C$Z}+aD)PsedI{f2 zo?A*^#JfA6Py@;3{=6Nny?aKtr+?w_aXJ6 z&Ui|iOTud*PZVW8YIVo)*Z4V7PT<l+?)R3K zUD47#h?){m&1#7MS0{_?MRkqtT#TI^8WBb7>IqZaWg?en^T95EiIxJFUm8zyf<#N; z<$+iPy@u;-iQsZ*M?6d+(5Qn8NR*ni4E0^%<%vM>>`1`Pwj}@4wFdU32Q1g=GcYCL zf^SLIgs05rCh%H}8=jJ3ZN>jYzOT4&2}0><2*%aFL2rpc@ob4+ZvOg@2QwbQU#b6x z&!G9ON_d)*5(yzP9v%rSy*()`-5EOV02Y3JjG3Pg6qdejhvWIWDM|U71I}J}jgL-b z4q8YY=*?digUxG=Dm??oDZKroa7F+L`##*X8Q|IT@pgbOR`}n^eRYJV%w{DgF);<4 z!Mb8`ubvW`k!5eZE>vk1pSiPoN)Qnl04R;TDNx$Lz)qZH1=-q><@NBEo@RubKTlAaUneYt_B{#9F_Z|KQ1aN{9 z^ikn19j$mr?J+IAIX2p!oe2PVh+w+=B5|7gaoGhl9JcHB`vprMj?+a{6b-%d>=RSbwsdnGx2x#ey7R7>}5)j&Km)_%0#YDCroF3 zLp>!v4yh5BbKDE@Er4f(K1_y8xMJM{J za`QxE^8~+}H;97@*}d5;pk5dz^&Y}CVrwZ#9AZLZQWE}ANK4X0 zO8`}u1@Qo%!a`t@65f;9N=c>>3Zp9=OwlP094SiM((FZ8SWgiy?p-K~&o4lyqkxz% zfv^_`?#Y+Tbg&AK3o{!(u2g>mkM6dm5#Y%O2zY3Bfb|mB+18Up&CnzI3hCI_lF87~ zlR@R>qsQr(nFPJbN=+K_yj1zw!cYQIm_vZ`00;N)%8Vw@KAX=hU|tv|=_fExLyZfi zF)6PN=|gdL6liBE7y8|Z%5=XDO2e2i?{k}$aNKsX88HwAzsdZE$JeQFSK zI7%;9k}}_t5eq>`)ekr#_cTOQ_y5!Wq7;9?X(%s)sfHSNPXh-ZHx*-h>PoiZ!y_PU zRQ|V7TOG?*0X=MSFi7NthDfYl&a?ChVe9HqFj+tveNLp?wf0YgSm=)6KP0Av*G}o^ z2~R^cT=p>COAD6_^c!kq!dB*;vsHKt%DQA4jJd0;s>w~(4IvZ-z{F^A?KOTH_?)rN z=+$l(Y5uLl&HWYab33R}>-SfFkt`2kuxB12Dtq7N7&&a3JsI|Jb6v1(N+Zho;K3cz zDF;VqQddKX^>iftSmb92>KWlbScAToM4})%A@$rjDsON>BrX?`9am6b2B$@%D&aF*Jzdcc*n4 zMTV=$&&6DxIz(dw1yhxujGxx(7ZZ)`$`pCxq$brNHfbfnvM^}am^U8~!8M5q{UlbN z52!jzW=L2e^bhpCc{?c=pw%7u7M~)#bsB8n3$()h8*q_mrv;i+I^q|VfqO&k=fFb ziQkTf7+v`VTy=*u?YtIG&~&EBbT`7j9D}{Xz7N?cE(>XeWf}ASfr8*00ah}l_jU6M zS#%_-N26`_ph2wqV?0N%%tj}GFOW<{q;lR>bNMCTgoyG@qUo4%=B^JD1IQ*dDJ}rw zgZgv1+#=-deP_$}M3X`B>(K^J9=M|_Y_mvbpMxe+(<%9* zrZk?%NornDV50Z61j$A;5sB}XQR|kSzEK$7iqmEMjWA=P*@^Rhrf(Ndbp)m8H)$tX z;WB9u-W*fE=-M0gJ*v{|pLaJy6;$zUeUzN81BSLQc{U`Vc{TvrV4xQ|3PrAc0hV8; zm`lnG6h8i>jBjbnubjnZ*vj7%XN)o*NY0j&`^S4ZQv}N-mjH8->p1_#69t{yoKL%_ zrj4IgY3kf_2_}K%*!`#`Qu2caay_)e=QTNNnrZcO6SwjCnC8!}E}5_;DI?HbmoPj6 zOM?J;|7WqEsqJ2wW~}ryv336r(OaiQ5H{M21=agd2+6|y=4Ggr>`JVjJz+Hd#}YBW zbBM(Hf_~?dOCaDKbv2*jE}Fxv?!0B^I+RixBLw}@d#LF@?tbV0iS=HaXRP$J(X5tg z&){2Oves?N3>AHjER}7a>`I>tD2IN3-_;W31J*P!*((!6>Vtfl&{=h$Ugx2T0B8M# zx}Ssz&~$!q*d+<8NKH~fm*0SL!RZ&Xko_6=-A=UEIr>xOTj%K&sXpjB ztkFY`MmEjI)ddhb_Ay!OR{<6}ZZJ!XUR{6Ni>LpiE%pa|zNhR20&lP*$|v_G`r*>P zt@f@5{_8*3K=|LJo9l*j={Z`0RZ2{PtyaOn$&nwb>@{+#dUG0jr|X8o8>xb^=k4Tb zs&TZ+@Ow)C2Pi>qy}`+qWf9LynV&8j3~~J9?(;*$cSvKrSfUjjG#T)5=aATP=$2gi zMIAb+9eU-Le$im#c&W8<;}wRbHK+Sj>Qw?&DwQJ@I*Ax`@n!hr!>Jk%(Sy;mBPVNG zZZ;5mu5hx5me9Ox@gFzYqxDc;qGEgGon&AQ3)z@MXq)X>g$XsQhl)J`DPEx@uY4Q% zWKs?s(xEW)3OV%6D45-X5!(e zj;khQx+t)Ec8EZ>m^P+`4t35RRTA153*N2%X$VW_QOiKbmT_JZFJ|Fnw#So1f;>%9}qhAptZyg{QNafHl8wMk%Si{G3usuH%XoT|G)PF^T z2-&pC?-MLWKL)&(V49pcb4Nm|5%#ZEswL{_KgwRLRqCjTHmuuXGIsUCh>HU`Wd?g; z2J3t|N!(A2`5$-rvYc|H5aqaRPns|4%0=wyR;eI1syIo5*Hu&j3XdlPIAepKNy5-1 z;%O3bwFx--l$?!XPENfiD`bQ* z;r{ybe-RjIl)?7_db?Y!fL4>0#*_xbLatnqaMpb)z(7P=xM5Ut3s&fq9}dKy-?=?* zi;53}U}zmh$77HrKPNy)9v*a%#z(QsQeMV05_6*}*To=dA`QLCD69iF$(SSlHL970 zcQN)e>KWO%ztKF69+Y-DK-$M6Fev;X+C;pL+@3LbrDLtP@X`RZ!d|S_D&T&tlD}TA zN&eX>-;u3U9Md+~X69;7mezeXOG8*IwZlTOd9QXTxQl3MK=Ev)A3at$@{PF(dzGOi z7Z*HyD9ds_sW|3>PIU1kUD!pQjleU20tA&!<~WsAA&n`!NmeXl3zq1-jL=TvfsmV! zy0`^P2eH&zUse!CRcA2)KwE1VI6z*xF#_2O-05sHpM&OlBZgO2D zBO#W1EsYTJHoBK%bF9;IH7FKU9YhKI7}{k6VsGD=a7(cjFosyq?L{i8a`Ql2342JF z=7Ds~GR3iX5ft2$dNMk@w2ML&M{tsm0~^u4*#cbsJK|J$|H>g!;^j-%7*$>7JWKx+ zRg?{>bF-+%)*nvY6lhyYn|Fn++LUR9-9!3hX;i(Z1|T<4*@_6o8|p#VtCg}^trk*R zZ1!M|P6iP&kwAgV^BIt1}%(2s#0ScDu>2EsOPNlA3$ zlBdnhk<)4X5+k3b0`Ql}WaxcUvW`VIk%qyvnJ( z@Y8=G%~GM?L)WY%@Wi180@Dd|me1cOZeV{;7tBGhRSu4UPQk2J3h^!W%ULbJ9!BSK zjpfnWUgq3tHmRY6K#5f&R315kf|-dp8XY))77f(ixuNWHKbzSt4T$e!p|G~lzAZ5+$85Yi&YwNf=z z@17_r9wLHM6RDZ#8>@reKqA1F(LG&iU!kWYM?ee4kBfEMA1Vw8S^98Njs|ZM5heKP zoXp90(|VdDV^AV)zT=d4<0fq!w82|_`CU9ci>Sx$#=#QgPexciPm=mv$Y&CqkV^_b-R&pk1KuS^ z!>%MZdv2HS?hDtcceRA0^#l0uAp9%HT_>@m6pDrDAbL zBE1|EMlN9Z3a_Q@S6ksg(k0AGn6jO!OAG4)RDM{jbS-vuaIFurU5m|*7vs$ED z0KGzZ2}liPM1LQ4n>Cb|yT{;C@{{<-!Xq4X8oC|E3BK$jqOWv_A^u@hN{WD!bDPN)_8j>EPn>mD$4x1jp1kLn| z64`1q%t$zN2}Gk&Y9pe?k7s(Nly26UF-1BYWevNkWz3o9=|=6#%cf%+ueYnhUiOg( zcDYwtug=jr9mndUoeW=g4TWyHwCM8Mj@N+!8!*~fx@9PNfx5<(^MnIAeowZ;WbH1UHxpGPEcjs9vQ6i9k8i0 zaLDJLLlr154qwUsS8_cl5recY>|e(|>KYPZm@$J#ehQ<%IG-e;`B$Gib*e1DLt>AL&w6P%P?U!dS^7iVkghX`!}sX@#~4N1R_Dd zqaVh*jk?-RcDGoGJfOTea#B&#STFb6>N)}~CVjD6QvE%CP%d=V!HWmFSDR<{`1}Rr zI~-$p;$JaMg6ZzhWU=oAz$EeZIqa;xX`~UckHoRqECf&@n@gpt*IoOJ_4%eE@V(Of z`%`)5{bnB~!~Y$q(pk3=wC_q@p3S)~w9t2>GVFi#y^OzC5|s(;_INx4zK{epq+v}o zEf)`|@?-#O135p|fmSN2B%~%pd;g@(e#1sX{mhJ%8gLiBhsaGim!jiSux+RS{Da8J^g&J||MhVt`p3$ehwIcw#s=&Kjc8;`sv zjhCu!aeq7f46tx=XwGD`L%c5a{shzI6`xa!Bu6VZGXo|i=(@35`ZF{k7=`%unNml2 zH>8a3ZBX#UOJ3tHMajhCWc*nEgt6=O!y(Qu=YN5f?iNs%XD&G>{%wK##ooSxnB1kt%_X-_nW4!zXzngwuyf1g>H$FH|IoXwN zEH(mam$X_u!6pzm-z{s4{F1KS!XpQ#W^Ll{TjI?mU7B@&vI{sz&D@#r+>HW+J&{6f z{qK93G1u@fDZ%Kl!*1*o)w)p#*@lDQJBY;tqrBiy0FCo+h~37~li2Cq`2SA`-LcS$ z@9pHn1DOV(yfMsw-5=@%L)8}E0T>y!hwrGie4exlm(xLwTEE;2+0s7mf1*S3v_yvG zXjOsdZ#0cz=8xicx32PgjuUu`^$^M5uRP?9l6?)NWFPU7vcSK4`z4G#J;c#sPagNA3n^`}uk#zcWTCOhcbTFVoB;;t@MOm@Ylz)=VJiivy+@ zLfDHcm!sM^q)-ve{6gRm&V%f1P3wm6ZWBpKqFCltFF!uJ9}n;kMe+RJZpok#7CqH@ zd7y0D1h!S-T<+6wk$f7P;0e6{n!fjASZUXctBRohhHhfW5SqAMl z>P8$?0cR5anY-IR$@KWJf6;vR%F!!AlO9aDH08Q{NH=oGpd;IPMUcy~Y059@yoO#< zE^eTbLnH)rA59moD|j0@B^r3fl}(c>m!LSg@bxqZd47*iaQLZn^P;Ehf2a`@Hx$dD zCvt)_e#0C`VBp2qW06I*kZI6k zq?7$$Y>WH15>9#%WL@Y-80N>3bCy-fNyI5Q;m9Q5m2Zj+D7P-T6;5Sh_Y*u{J)NVz zSQQX18~?WjL!q8O4m&J_o%!4`{{gY3Cu}$gdQA8K*flikByGHgk z#E$HkjVtUHyCukF(uIwMG*L0-88M|;cY;Oq^-E|`!YjM9BbLcAfk84Mx1%LK-g-$r z<2aIe(0(HSYB?|2NWIr86C0*l=9FCKC)h4Aa*lEit}Z=abiBQvBp)0k`~ab~8E4!Q zPC@x1_G{zlm7m&LyeOBcon09i-1ths#9kH>_dyu(_Z`~U5+|dmKZBr|vD`X^kA^-e z*=T}L@xhmhdkw~DQGY{1e4}i(?s{gQhDJ?JMW~O zcVnfDN;VM6$IEgjCw;LaFAr2l&bH8kEQ5OJ>}8~Q39y{KDd#C9FDpn|4E|n_&}NHf zjV!a8F8Wl5!lV0RYbqt`M_|Pf+m5UhGUq}r)@iZkZ=AvMytv3}$^A)VuQ&Hw;@&_T1m)M7>7rnApg=Er1Xrro3{AM|b2K z6k^pZ9mW1((G$5rd)Uv%Bw$Ene{?znDg=37c%&d|)Le{2oB1=$ZzfGTE=&99nD|Lu z_<7XOd&-czyEGt1I;Kh$*ODAkdU?MH9_HkZT>XhUoQHmn z{h|EuA;YyBB@#-mZYY_)tcp2wU@;54!=dehb5%%||821TqGLjMcZihF;9=guMiPM0 z7Dg{g;|HEG6B7@jG@dR-!{@%X*pOZg=^?y(KAuXPrdu7N~6y(l{G-A6zblCH@D&4s68R?{2H#>;xRivE1`*8_*4L>ISz}zCwRd#cdgVtmJ#u(j;^E27 zpXnEwJNmL*pZdhC6;;*(;tupK{;2+)7NdI3u-GMErs0}M!E){reR*ai_Tl~W`nJTB zt0vr-Tn3bj^}YJAZF0F%epo+~u~`x@ef;m5?*2kB-8VxEak{Ts=N!e#&B)92*x z%hZxN+r{vQ0-(o6j~^VK2(M`n4J1Qx`nWT+d9Gf$SK-1Qb)H7JJu{el#Pxw^FdGWUa6OS}hQm9nGVXt?H+ z@I4Fp$aH7*?FU|oee#map@&DCbpP{xBO1*JBh|9JWi3 zPvv$#B4`LE3ujp!8!mDg5n&lH`a)AYbEO;g`hI_kX5ykAv2C2BTR#}XL1rqlLND}U(zp7JbKb! zV7o-IJaY+QHJKTUywpTmeO}OZDfnMWFPm>+C-_%{A%_rwRLZ~-v5-8V-kFS9_>r_< zzl{??w)4o7ne1V>_5JJ@bP9Gs_>~Nt3NVL8_p*;fSVl~~rV`_1$4EVY&xC`|jEcbY zR?1i&S3O;Qu`t&;ixczGCE%8*(BkShyS7ph-QaA`x@t0xT4$o>e!Ej64$l8fyu{0{ zCHfDxOCeFW3%DV2avd4vTN}Hl;Jn1Z?>*$DWFS6&(L)mFtA!&4)6Nmy+4wM6crj!3 zq5lWk;_Ce->5yWz@uJu+zcJLmS2SS`jstVhR>v4VP)5oH4b@acjgkzeutrVVh8h&=&#bQ*(y!%zDyqX z-c7?Vw3KWcc^EE!VwOHEgzlY++Z?+-pd7Sh;&On+Y~@HW+`FJ@^CP3Y^ZU^j5r==! zV9q1{$bAGvP3}0|S><2!%}_1i|N}VMkYVWL}(1L zIB|(U@1sUk$=uf?o-XrKVAN#$L?Kg5lOev9Sx{MN_6Q!tn}OXzp^UF!ic8cxrv#KE zM*>v4cHsOBG8!M+M2*DD3Zj~8PVQ=|Dnq1**8U=jIIyWAX4|6LhcSPe8wO+VX>n0d zT&)12Vg3+s4vCZ|8THuXrXTIHUV%$5fheRmrV%XB??Kf4c|!Qexr^F}W>ld%i6+r> z5p_7ilUQ5&{T3Dy16-+Mu?gZe_(ttv+fF!qby-FXxsz7yj0&!1xVd&_7)_1 z-o5WK#BkYTh~u-zk&_2z1~!^8ZUd_M5N4=8Vr#vEX(yC`O8vX7-0d>L#I1lo{qE#im~{100^onvN-XDQEIBA6fmf$ z?UzpWnYEGsOgH59hVB^AO)#`>QvfP_2Ggp29J&XK<@JXC5+c(ngRh_bqCN3Gp;1c* z#Ldj%#VzLxz3>ao+gy~9(<1>Rtw|0>~(5CpKK~zk)v@%Q7FbKxTxZe+rSh{$_M;L)p?n* zQIeMk@Y%gKd(V-JZKk195PMGc&A3NQp;9u#I~p83EN74AHhqRPkDLGLF=07TFlY%4 z$}Zksgu26(^E5#`7tQY5-|Attjo=jyjC2;#&dN*5l>lmH6Q*n?hD)=h5cQ6(6+^yl zpsFDiM2VFZFty8N%Qg;wF{`RJ-HN0EFH@X&WCcj7qiKU20upsj%q_Cbu`Ic#1|)Ok zM`LN-Bc&!hyusMeVc_E#cLee2@g#!gXvqJ?&8rm^gPWr+1x|-J*QG2&hFlnFmZXLB zr1{<1*pC0$M_~gBOVtcVZ2e7c&dH&MNIA(uR#GTl9#)WdJ31VV0-9>0uRCc@P-;e%|e)Q_Tq%G77v<>w<#Dn0MJk% zMJkv(8XQCnUy@U{eU3Ph0Nf}Q(BM%Nc{*BzLMx@IEcD8{g?ggTRU}_mR#mJlMs13j{?^8x} zvZ59VdZMzTqX~&o!KT9X(M>~RpHV|;PL`pzqlEV6CoUSQm&PX%Z-!b-?^OwmK|{qq zqn}h1n=K3M=&=v+erZqJHrWzC^z{UZ@a;(r(9YRibux~OYQ0)}a?v#%~aJ3N#^ z)V;z=B47o9Pj62|dV6~Y()EpoAXEPy-qX35O#TZ4M8j^&yAfo(3WgO`4yU7Wa9C7O zsR6@*EdJraR#a@9O{dk>RYKuqgFT=sc9sqps(nSX(+Xu!YRlg}8SYM*8QIa|U!uJG z!Z?Q#XC$7#M6GdsZDMkwp^=!`c|m{`4g#Usa-#PbRTQi$ zD=ifqs=&O#%C-uTW)fh|iV9y9!;V;EQYd1FNf|v3M2( zI5;??AIb~0E1#sWzQbWpSx-xh0H}3^S~4Q2v57LH1{Y&wj(T!ZzJcv8eTDG^ylG}4 zdV}HCn0Vx$3~Ado9!o)&Y6yrhPMH}eH|X;d>6NYsH@Oqm)qraYAuq88sD7rXxP}ez zLv)Pw1ceRsLK*Z5JArzN$39xr0~K}w9-MF0)X<>7JRK+j;+aH_UiOhBsa=_okE`r9 z36_t*Oc*G3RVs-kl@yH|%f}&XsO+?Rz(e@a-gypTofVBTp_U{-6+ewAspaM(-NqNa z^rusH^!T@UhJFB|{{ILJm#9oL+Ckqzljzu?V${h9@kr+6=1wOUkc*xN zcN9%Vw~m@Wm@AV;hDb~RsDu>~BSt1nLZ`m;g;8wWRCO@=VVxC46JXIeb4y8_)6qIz zp}apzbu^{lySzWpFMD1)KS&!lIcU}8*`-5iKA~6bNwy5^Ob{42JT56=M2-oZzf0Pa zn3N*){*Q#VnEHmcbAUw zYca3YT2&6bclwN;&}(*4F^7DEFc5_v!kE4ugP&SnP+$Z^0Z~ovBgje*i&}@6|IwI% zh^_dg|JH7Szj}Ea4*$?GdU-~sE-%qP)vhu3|4Kt2 z{f3yeti|_TJMcT7coxF-{*xv$ zb2`Us@0yUht!_09`C{sZ{<&5G92MuJ?{QOw)%Er6IwPN`XxgNEOb0(wtTQ<|WeGX0 z_6)EJ404NJ|6jUJ`cEwn$Y^6P3=M#*Zn57-;>C_Pvlz0C-}dDhvp)qEc-$F8d#4NY z$?lO6&NS5*qrS)f+^YwOVw*|Q_=k#p40o_`g8DzkB#@%bv6Vkdc%$*74vLJ z_kikP@zwz9mRohiwMh2_X62M?^#{`utR)zkQSrm>KN#cL^Bd(l^)k zJ@(1!?Cw>ETJ2VklfQWni3jFV%kPY;SNA_RD4N|CQ75awW#24yc)HSM@)%-evEPv+ zo_lAHeZxn(Ik=wr2Wc_kTFGIs*d^M4lV}(1(IeiwNG{1op21~Q!fn3C^yA+cj*8U0 z2u+OMw=$E$@bgH7A$Wb>elnc3tO3&cMd!}>Vma1RKZ}%a*c$m3)q}dHE=0M;xpd19 zy{+1?>t(Xi8r#f-zj;-RZpSZbN}^E{42P@2gi_B5N=Qm=HkeFK67wiq&=-T#2uVcB zckPO8Lz2ahB?AAvBzSwtV+Ull*O%-#)gblq`6#Av(UjaoERO{k(3l=~0AAu|(k0;m zxIPwSrwcTToFP&Zn@Pk$Cx%g=gGc#|zRlh5o4 zRvmM>+rCc%&YT&GFdmdlUCxH=mDHl4kpUA4s-S>R>m!L&*lz*wwJ$H(GDKv-@Kqs` zNtAovc{zzVJts06(b$6@J@AOXW0x<|3OAssaB9?qB0Fo;NtVX3|?0McqU6FtW} z_Dc`_{sOS;wbtSCcqWv=0?@2ucX~VEsOgmKEPL;im=DJ8PWMA}Pe*HnjFR&>8pUnK z2rWy~t0qj0m`)D?yq;|)AdMRQ zksZ6d(m#5i2;aZaN>8Q4%ICn$l1t6SBrhL4NC1)NkSvbFLUFUoDKdn-o|5?Ea*SS& zdF{&<&%PBQA}#uqXZRGkj98HkT0P^mjD$bvD<5CJ>6>&ezdxCa(;L3cP(wY<6!r(=>MuGudg;NK!zblU#}W(|q->CYgBN0Tek zd)|L4DHKjWmPPzF`Rlx-s+aLA7nB$U-bMK~swNTDqn-~>efdWGJVjyG%jMVRxJJ~$ z2H09_CCcM)8mv%NW6BJOI}%Wv{jQjvrtZ;(-pM09UPXPznON+08F_lo{St?VYfi2FCh}2Wu&Hu`TX}g0ShC^=_y|~xpG4*tGR~d=*b4_Du1U= z5=E}ZfqnXs`NCAVH}Ew0Ipk~CV@<_oTOBYmL^ZU7;7H^5jX%Bdr^`&* zI+!2hoB6@XiqNBk~6)$ zM@c;>$-xQXN%!RLN$wHWRy-S`Uj-_h?*8IQ)%n1S_tx?+UmHwb+X*?n zBwf5U6*Q4@?vwCnFCCuGWtVCb-@aD5H|x_*X!N0ylM$@cGDPeWLhaNEPj`byq(Km} zJf5h~`M}JmN-VVj;QRaZ%Fb~vQg_2TH6mbj+~rhN9!{7UBLot`0p=u(2b}~S2c>@AoeT6f2 zF@pme0(!tX5_Du{zxcNrCpV_Dmy^RY`K>maG`ziS(Grh~4l`ht_9YA~@<0GQQAawD zLU&x0V9}o2CCJ7ns%5=g9MrWU^s{O*#z4AvL7)y{o za=?K5&yVyPBY?dK)hRpomzOAihm1#V&h-#<>+cG75I{;IV9&HB$JVv>om3! z!eQ+e0s`o^+e>pZE@o$)@1Hv}-e(BJbJ5&j280it%y;;ZGYqNwiXZk-xJ-gyEK8&|6#2k%#D8fXy$Z#vCr%j z`fD~XcHVD(M|oY--*;!<6}~$R{j#Hf!~fsJtfiH=vZTHq`#7|CexEUsdveTsXXA0p z);;6&p6lE8qyD{|(pD<4^%5L}MB{Vb)7$Sm?>)U}KhXovBzPIdA@5Lrg zA7{i@LuXx{)c*glP|L&Id%H)!IZ^+0x%#Xt`u;b+ZEyNJaprlS@_G!!61?VbD5^j3 zRUh&10Y%z9$LN1M+-`$+-7lK=w+x@D2++R$mH#hy`|kAkZg0yH;Q21y3`dz@@52v= zd_;voR+qxr{JpV#h{U;fXMF8Y1)!bAHngZq^p{96b8 zFAeS@|2)elAJ6CcXSpuMwRapY68!fMhNF8sma$J0(R!z?zMX!epH|0PU*$PWBqhPz zu^l?u2mjUe{Lg*QdwhST>i-rlKkM4rz0GEEk8e3%fm=+*92u@r%(Bv&zjO6!TDbgQ zyQha(W-;FjDixjF*->5mJ^?+){qu_3-qG!EujC!z`XE#MSGepg6f@*A^F^WM-rzL- z``#+6-B*c`T!VDO@4K4Od26{gTO5zQ={v``%v>MV*X?hi=5}{3PpW%z%&>lAJ<7e$XL7H5&hw*t;&{Dt*~$7hxcXdU z+|52o>6@oF9$%NGdzQ;m3%OwQ{Xf=wACQ~Ay)(pj!;;A2-s&{^7SZ-W&}Zx$&1P}L zk3*oQZ(Hwd!-FZ-X4B4&Yq*(T`%=P9m52ZJ+(~OY zoThr&vB_HrgrMwnyw@!C^hT|vA{-2g@9lG0x@PCenI|QRzlvYrvv4(VB~^m8uTD)O zean`mSn3Dy>w%%V71s<-g;k=u$&rO>Q$biOs!F6DiktyLl3dLVvl_&mRx7Qe6)xc? z$UXo700000000000008SPb>J!r+ed4cAZ}Ct06eul~pO%-wha8GT?(WCg?_FD#XrX zm-zS$j--8Q9a@yj;Q6;_+`Xc|`vrS(p*8J_sP;=M?uAJZD~5BiU5`HHbz)A4w_;O52GD5ysD}63ttu*?EJ0$` zz5)T2_gPr@3T_(cN|Y+c9Ti?0wJPh~l?-5TV$=3WsxYuBjP(;Qoi(~S#EQSXp1udk zu^amFw%~5xxRrj5kGMxv)z-QoZN&H8l^9<;WF+iDwCF!qx|$?Cx1y(_;)c(atundE z0t57_nniv4oIR{E#owh}gr_mz6&e)AK{{8E_eV@}J=nszH1~8stx3SGA%$7%=UnrO zquKA`C?rCe70nF&VU$i&W@+&mA}feRRdOyYyei#5ySmT3>qz?D!|Cm^Hr{e_fnoEMIx~!M_`8W)rnPz>gxcfDFdLbBa8%@P@3B3 zs9}5VW{X!|BQsok4|piw0akWfZnpIJN|6=`?CW&qN|(+m6k)4t%U3i6bG^Rkf>uWe z`Y{U)U6#Wr230B=uTCzk608?qj>~Syf?%Gwh+d(aq<6lX3cJ1X5@Caz{K?iR?5mHh zsVbvptB%9^%DSEC$hs~xOw6!dY=3-Jq7v@KNlc68O=A$N4!iO|_e?=DrwI~5t<=3p zU1-LAc~bbwDttB7BBLh}AGdq36D`q^-gu_T@6h+=t`ph6LJIUNDqk1){K}tCf~@tF zG}d*27Ob~+?ChaBMV|cX&-^69Ilz%L%TBeRdeEKxNV#$uQjc_WG<*j6d;vpnuUR-& zC~+!-=l)cX&Y%i18{(Q)jpCh`p!Lx!s%&OL%b&C**P@JH8wQqr2mqPrJ{Co)c zgPJc<1vcjbu7OJqk>p^Xa%3g~3cD~^grtE)R86~|>E7Z+NwNp+BQ zZIlOn6R}*#z^A$s-1T%~x|9LrC#VVPuBPQsAJx!56kNGjIz7U(Ao*EQs&@jfpf^!0 zgPB_w%9*SenJKU3Xs0vTzB(Zc7iU=DM(QDf*a;Nz@~mFiR=yIkYwi)++Tll{?tn{s z`ZCycS$D)`f4D`1uFy!w4xC}GAga;#a=KghlG?-6>*#Eexo?SgWz>TsbQGGnoY@) zNM^2#=x&`|hBGHsS>9V+W}lgz1rfz;+=sfk&3zibJW#7v)$EA(r%*8lyzepyWpONe z%j2UMR*Y|Il(x#|CuE_fRR!2TvlA-06#(kqy;K|7EUQ-H$Ztk1TErCDy;|)$v11c8 zRAvHt1XY>y^vW%Mgo61t4#Y~QQr#Z4@e~^%YXqx8tO~301z?qXu@gVpBez0T$9*AV zC!TaGnSM1#UpDuKN;uMejvU1uF%~3+qI?I8*xLUKnRxO{}B`S)uhmxv4 zZbS1VKa#QLiCVq$x}qVj)#(zbX}B2mO1eOBb4^dSZR4U(gTZl8Fx52A=;rUUITA@e9s&qwB2{<{AbrVeYeG0InGI}O;)V?PlK?Ugv z@R^0m{gocw>o)`>Sy-p4)ev^6JTd^St9l}5DE$I;_rt3fQ7K`NCA?7Ri5E@P%7xrZI;h1#j0tUL^oGTRl8IJFT|*3bY4!wHCy+Q^DmHtG$wWz zj_9qQf(#vr-bbda1H7k2Sy_ zG8>^)V6M4Ex*fIT!14uqgu-)N`I|{m0D1)AS%^C(C$HtU3kueF9k;?(Z!0xU(9BU& zeyr&(YP6G3*#Qc@A)VN%5e%!S&NR{(6Rl00$7)rXK9#Sk&$1ZzR<5*Gt+sYPmVj&k zd>viXRISCB)72rHbDeKW2h9-Bqx#gCT!q&AiM7gA!d98pNs#N?HCgUNkai+yfQhAG zH{S(Vl~Bgwt;!I@nw6(rVHSX#op(oo-y{eMhG=Vb^iUebNjO(@E2yX&UU-=lCq;5~ zXJ1JP4jHQ)Jym(tZ-})7i0xPq&BC_;N6U+<#qyF%bgf~nrENE|Y{5ZJy`fYqchn%=hpMOC;8!Ch#H&`xCW z6fcnwN)O51VvrFAhJ047?!{%%`+KFZ@a%HDI;DsvhAYtMl+I%cv7 zNhzV2ReX~53UVRtsGf?DqS8`3{+L+8R5Ij+t`H2kol+b^8W!5Ri+k&-s><&gw1Gfm zZ8RAb)W_5CtJv!6h1K*2T(0bX58zX{kM_nJFK|KVpP%j)HXXqq|Aqx}-bxinqa<74byrhZ z{7n#vt*juK0`+8dZ5W}15UUe^cu;a>3_P9&^$%GlO;+_cH{>m8*Cd9c4A1$*KOZ~W zsz+Xr@;h$)9=JtaaF0NUG5Y$$t|e*?7pYAQ$}~D9z?q%Bx*lcVUjd<3Qk7D!r4{n~ zQn}H-Qd1(gVCZP1HS;36ktYJTLVoF!9oY=R5mO|BkRjwVg#UK={p*hDY3xZyogAgSQK%F<&NXLwIAYf1)pl;-%-fpBQ?H&sI}2{72k8g_(n z4;F;y&f@5jC=bT~I$0j4z9otQ#|`3%>SjP=;v721*r?o1$x(4^$oLPZ;&AqZ2^dy* z-Uj83_75CINxrdWNtnw5<(?-QXq+;*U~zPqh}MaW0kg3Z`nH+X4b|~E9mb?+mwfv$ z4Ayv@x1&&N8j-Z91b~TPbdM99G-y!@7dvG_#2Bjrl>APFOso*_qJW&QSZVNn5o(W$y+zsOu_bHrx!dwg&AfO8!v&AZyHPBuQ{v%#5 z>P?^bGyQc7WyF6q(Tl08RB!4IT$H~}^6VbhZvpg4=wSHseCUh4A#_BWE3!YW-n(0_ zd>>epy;X3y);ga3?hBzwev><{&6)Rfw!>Y}nz5a(*9P-FFTGr1iB-frO84lv5y7fg z>g0pB8&F$cO`fRdW)#mF4(7kp+M16(opZG{VX2h!Tu?i=tNj}cmGfLlySOJ`Kf>3Z zHCc1dx|q^fSZzV$)2q43-O;+bBRmlcx{B>{#v4-Oz1+G#I?AhYbH<^@bA?vZxoUFj z`!p$@4nz#_y}tY})7Nx^epzOC;hCX-2Pj|kY~jP2$kdzJrMpqT(Z?or1zWTVRHE%t!#&2@C9dI!k!6Xw%YmmUYgZ=1X>)}Jw1sHk1xPwTyXZ-7l z8j>lWAX$DReLpyd*ZvMc!EeW6saa;TxJex-e)S253U8krxy3(cVnRX4si?BN&k96YJ5HZ4TvdW=usl*1njh=P7#Nki#+eTMC z()$7Q(`xEpTswiWz{&Vi&w8B-5z^id>OUbj)A@xj!Y%&%G$(S}ZBq`r0iadQ-e9a_ z>-o6e6L5H3_y$w0mp#Ahl3a5oqHOmPS6OZm2h}U3&z8J@@5=V=O=$%5n)!M0=@5J= zacqGae)HU^ZYu1*V6p=6gXKMdIO%>Be!(U7^gF|#N5e0_r^*>Ble_7QqT1S@pPg*E zzrJEFl&ZAyA#u3moSq7=QuJM+#e&0*3?{SYjq5Vs?AwCrnBiE>Nbj=B}MM|c6XffTrMv|eB_LVNQaKu=f znKpnPeiH90dd}x8G+jmD9%Z2*3DC#>LX#DYB^PJbphImW31_rhg(|u7eXZ7&yidqh z$n4EMB&)>J>J&XKYk47&&N()>Wlj0rFdgC%ce>|nMW@pj>LUKlEqJdmE-%yrr}wJY z6D$sF51xX>+%RJMn&c%jhZ>A`xk#gtIZ9%zDHi^uOYtTccS#HGs~dh?`_R_W9?0hv z)bbsu@r;@1?;Uk!QTofCWpj-LaVF`f^pfvOj`=#q7pe<2w5*F`!G3uHuv)W&5{CGl zsN*e7S)~N?(2ez+h`KHZ%2$7hfwc9eSQY;g`j;esiA!ZI>fu$rUrIqD*Ad9`@^m{? z&_%U%bTCsr6!n_3ldv<0-scD%FfNgW{9td*kWZ z2Y5=v8pnrq%+3>WP3L$W)-PjA?qb=1a%8lFv0{e*ZPsBKT<@P&fi^4vnqBEmjC`g$ z&guzUl*$j5hB`b|W&k<%^Tu+teTybDFbv;#@Ll#!{FBRvBYF4p%wU-OPad1^B{>XL>dKaJuD`~CN7KXmxT05_3zXuXVoylm~d58@;5 zc%8`o)B_nHO|3UXSfP3I=l64nO{+eR1EM&<)MPb|RlwsbsXS2JrlP&DzJ?4!l;{47 zPuOK)&ZQQglPU5K>88;hNx?c%4Fc$K*$;JN2qH?FQs_fmI}@R+F-na7t&`M1YF}|Y zfSa7e7JVWoa0Bq_`@DbKuk~pY&!zTMzfkruT$NL&S%3q|Du~Oq4~7>aMBv2hrAk6k zCRA#yxF>@j?H#UJsX>Z6;6AWEde?k>IKv-;#Avj-L|2*~Amz~YFQ-Zj*rm|v2e93E zdYRj_5L@RqZgsqqkiLQNIfx#C>4$25hx<#t1JO44xAZ@ngZ&TTSNaEirPulgcV+(! z7oc|%@dMCIH7&+Ae_$?)s&@#fhL6zq$=ny{f?dL}*-ARV;UKw1KSSR88eq93SFyGW zKyL31y>6kN#yo`fSl+7#6n=olF4WyVv|H#M>~{mvAN;$}JHIal=pDwGg7gm7%b`Tq zp?UoS&F1A%iF`GmpbAU?8Ao}O3cvVUt8T7?Uh2ZG#r8##T4F+eB9FJ$ei510^_6I| zy+kne(83F>-5kL_;l*SB-bdxe5B_C@BfAP@Mi_zfLCQ_wGU%(P^nMZ$@H6iiMt$Y9 zaFB+w%30BLklwb)yDe5EsR~r?(p(qe#$vXGq6P|hBzF)P-P{a#;h6%_v{1=CWKfbH zpf?YoPk69yC)K`;Pgp_uh8@2m={)^}W)pT`neF&(==hOychzo5Lpp8|Xl3+uQp`sd zBM<$K8y)csP?>Nu^5&E`vSDU^+lx@1;IH**_0qu4(loHjN^0AvtE+UHy%8WG+UJrz zl{P0_uE7bboZ_z2Ahm8K5@k9b3DJ#vwmf=g#&f~3Iwz_c|LYk|l^C>RI&^F&1J(S~ zL$${JB|egnVz>g+lUZjMrDW2Q`cwG^w$u^}$cjy+WrUsJ8Et&M?Ybm?#V*)e+`M75bhPF{qbaTq`}~Hq3fXTxO|p^aIq) zGkRIgV<4KG!heLiixtOkbg()J6u_`|^?}+sa;xPs8?3?zsI=$(HTJW`fEQbJia&yw zio{GQS}ywbJzWS;(h=T!AeJ1a9-A9T%$Y`T22QP%pqv`BV>O^3l@}C6f--~X3g^xcng1p&7A`K<|cVJ*Su#Ze&Jh5;uGXfWKx$v}ga0MK^Q*rn-vG&_X?Gi7q9a zVx^q&nZ%;Sc5-7@eSsdGSzgW8J`cMSw6 zQnObW;b5Ufi_4&8<^}U{v_lgvq^v!F?wlO@PDZQCAS3_cD{%|N(bsQ10yGJx)wmM% zhUy5`L4jBmk%&-kfd*<$AfWow)Xcv4qYFTU?aP7nv0v!ju>JR3qgcw1GAKt6yhZM3p`Z51kp`hDR#^jZSNo8R18xC z1=_ibi_S!9>2@|Cv9@~;cSJE?Mi4b~Mwgq(>ghN(V6Ut4yPR;v$_y6j=A$n-k*lWo zz6#y-7+5S788d`64zhwBc-Uuxwppv3jM6%@#6m1%kh2JrRw34_sFlD{^u#eS?`J>e zywCuQLj@h$ON=>TmRZLl#3*IyBH7I|AEp%P_rEs10{2ixEeM{a4p#I8OQ_1Ei1~S!uZ7U_l-YW_*b!*k{fh5;MW??>rLTA<}c3N-# zrz@8=gCr$T>;~nT(yf64SJDaA=HUPWlm)GlTvxz}om$^|>}gL?#0&ohPQINyAiSXg z-DL7vHK8TQPZH38lC7j*S6f?6fZxpxSz)_QQf9Q=$fo=}iH#Yq#_epRA!)<$jl{U! zs~-xq-M2a$a|3pLZE?k>-$vwZ+lK7g+UaXeuC^WeKZ~_>wY6cfeYYZq3hL{(yI-rX0V49=bma=m5oBFUZZ1(D>K5HpqfK^QGELcH`i^J` zNZPhHkx&fgiJ%3bT;_d{{ZWr*)IQExvn|ws=|Pb5LpZTr*keYlZ6JEGfSM@&OtobK z|08x^*JX$vY@i+$vn~7}^R$ez?deWT(VliEme1VFD`x zu#J)fd5|aA&-vX%UO;Jx5G`YDOMn`-f)nAC8#@;OQE>ot3WU4;bK4*Qk=m zq3|Hv*S|TPST}!6#R7hFu^QRU$g_~|eKOUD7T`EF&}V9Dg>k#Mto5Gm!j?|gDeqs4 z`tg5GzU7;<36}mS8ZTTq{CGzcLrJFu7jYAGDRh>@zeU=jd{XH2O8}g^v8js$+{T{ubPhr~B+Uz>n=8%Qm;k)D~<4XfqnU!v@R&v-6JW$Bzfn3(|AtW50 zF&z<53mb5ixE85oBT1d}@%hSv$5Fp8pOyn$26r8{>C%A%Ho>k;G^f~C zqf8OS32rZxVEcfuX3~gx*LdwXFqqz8Y*W= zVTNYl_i?Yd^Vcd@H=}>idvHj9x9MOH2O#p43O*?I6Iq1<4-%%rH)QG?9Gw-TiZF-zfOBIyg_Q6PRZZ zlSr5xW0l7140(frveYCgiX3+%WiyM292ZS7{@&{0Cp`%!$_?3xIV=Xx5H(vuA+VxZ zNvPY18nVRmCZkKR)pkrS*?GQCEV%iO>!r6Vulq(E$oMT%U5R(4H`M|)Wn<{!OSN(z zG^yK4J?_mWo-Rywu2x42#54n&Y(~$}jCN4G9+}~NZ$}7OBJb%ba;?(*8$_Y;4L!E5 z!j3$bn^QeA@#ws^%&huH{=+Z_kZ(u9Hp|cPdIiK$&vwc!%tzwp#hpT!LuE!WsucN- z6#o&T8OW}Xob!*1s7O;dFu6GyO%gsv_}0lbr1@O9x4>F0G6l`}&@6zu zxv`3z!N6D^JVz&u%G1)FO8E*-YgxVn%hw;^+-OA7X@`;ST#v5-mby}U{NUtw@x|ar zAwW1^@N$3fIl$k?7pWf046LiEZ74{jla@JI+m+Iqc2o!Hd@&z;Vd1gL&(kruwzVyx zndne1b#iRcHK=}Gmh4xZB#m^a-%R0gj7n?m#MHYi`LD)>IjUy)_8(QNQQm zZUTXFCQ(BYPsZwmec$KOjESmqtA?i2;=Jbg%34Z!T1a$HmvTKagW+q5l)^>{S}81H z2OY@P;9=-Q=v23Q{fTVEXrCgbVVWkdfnO4y!gxwP^LH@wZd9IY(DY!Ga7z;l_Kr>5 zVU{~76LSDCUm51%atT68eBtp)3$?@<)}2r{po$iqzqEQ`2Gqc+4|)6vNm(g(sRS0B z(~r6^#mU=-;fiDkb9OnmKq(6{1Ds|)W2b<2Tj7%*N;i}L{3b{an)2a%)no{cCRsVQ&k z6`Ed(Wy?`<@)EZI-eu_9*y0E_HjCHSj*8iH;6-ZhV!aYYSy({p`J7;&c2w0+*z%5Y z4e(2?DJ4^3-C^Ci{2)-OCo!sCEpHP;6RS4gd@WBeFlLXAo*Z_$c^vdMz@M}^^%B}q z_G_hl6CFRnPBdjH3JfyK%2aL)idt6jSY42q;8t=tyB9PFVN&6uusb25%${q}ZAM;Q zK;aB zAJ#ixZ;;rzk@LK?!Xq{Lx-92WWhjbE>QU@j$&?19X;5tqqLO7`G*5bMlA-L>|D0Ta zes*h>##2&_7}!gTfC4;(igaWEph3k**&FfD(s?K?@CTp(EQ=;Tir6Ab`09@}M?w96 zjnI~)bgi4U?F9O`o`$#J1pEmMAL+F`)H5fuP(bT6gHkG+AN^%!(B+<1cIBGK5Uc*v zbxDQ(R&zHl7I|65+~$^fS-|ENd0D!qApES_F3sjpOM&+xM>$88ngKi>-qk&$MQ0`} zS>56$B5vfV8q>Ks~zzyF~0}mDx};TaAgXStu6mx|LQFt;-m3 zJ&lJ&&+UxM5v#_H#dC|BgA+Pcv!rVpN-wl02dl1JR;z6Gr=Xtle8bAS-D`Ga!``{b z-Yfy(tUlvVX-l}W6OfhJ1|`@+5mnCxzB_f9Drq*cYRPI_9wSW(sc0MB$8V0QS;UZ? zRNn4}X;i9hBx77Lx&1NLO4@d7d1zG9VD-aH``zNrHs^>m)!y$$X)rHCO>Xylvq^_o zCn(5>L=sk%bgjI(K#O;~^&wOiydXiBFy1ZzTYT& z%cLjOWvQ~IoZ;m5S9mqPi9INNfDHHx7@#Mt=ZkDfqFSXb8P@}b>gL&!y!+45l8wsF z3ErJHr7moyH1gCIvQn3{%uGF!l)ZY(r8o?Tx=~a{DNCYu{lK1N({z{>%ghLD=|5h* zNyPD2uRMu(x^va-8#1Dziem=H$^_IqER3K~i)EA! zriQZPRn$^Zv2%|(v4a%Q#)&{D(z-=cjV5U`Zd{sebA~|dp9?JL_r$r3bDH5Orf;;S z1Tu48Ym{6jjKsgU4OJwT+Ch`Xb7f~X_L(4#P7TG2s;e+5oij-JZJRlJS;Jq!YQw1D~vjzfM5Pnv~c;HoJwRi-oX zDBc-JU$3qr8bpyo(MVzm5x27`ka6?SMQ(XS&^g|BRnM^%pB3K9U}=m8^PCT_!pg_u ztB%EdQ8Y&w5Snmxa*LtXtejp)fP*tGOk1Gju91MMhp|XAYvQ(|XuRt2@Ggz)&5wb6 zV0C+lu&V}|hB|iCT+FN?RN>&8oEh!=`&By=M^Fv2eCy*QlepkCE<5~E*D-g7 zD+W0=nzcf+2KW&04Z|JU+za`ltjjo@f?0pwGi9!B=YcwtQCH8sa}Hpd;t2aeNK@X~ zPFn>E<=ST6Xklk4l*pnBmAG7uPtFH$TiX8&l=^qsV=SZaO!WG4WN0)9vV7@7O9nSG zVRMjggPm;cx>a_Os$pwwN!81N6fvK8I(0;XM!XW*`hT7dti`m1lP4`~RnKXU5+gC1 zG5Nk#;fx|hkx4lH2B{Sfqe8Q`epIi%$dORC&II7$0Eq$k~guKrqgFbvPCWq6MK{$Ux6q-_N51p z0#9P#LzE{vi`35T8p;d$=L!a7^jnwGQ;;RLuWlkS zI&;7bB=+~7fNF5Z7F?!;D|;eR=EwGVe_a^s$2DBLIjPJh{7W{VuZ+W`UFpj}yneYo zl)8;U1sHCCx7w>?vyc zBRn2MWoLi-J5dVQ4E|$D#oULT|D%)tqqNydP=C>{x8lpo-ss%6Q)hC=L<-Yo$BA`h zXrYRr{hmV|5&)rGiPTnDu)6ELv&taR zh#x}`=yi8d_pYOVy%Csm~NyKoi z^24k_L@*OMuEQ&Mu z;Ux!Iy10dKY>(~@^X$FQxc z6+TUGCnvI-q2DbIhLp&y45!?W(K`|k{7 z@?s=fi?c8gVJzN=>9o-$S@!MtJDYvyhARN6hP9(nZ5vro^Z0%2}Z1>~F+Uw?)DKDX(><yiJ2m<2!OhR4SsL4Tp`8u5@Lc8xyS*sy&Gns7A5Xc%mxNG#Yb* zEa2Bs6z}A!@MU;4-ZlbwRoqUEbrC*%YQnBkY-}is6k}F?5Y(I-4U|#6l2?OaL{h$u zS^`TtHWWoW;MJjoVZ4;cjR>f(hKmvq)|?wEBDMIHrp8x;W#eQmoEc|E%tfqE{9t>F-+aOdmcPF%+NCKz; z0u8iD#kdeJ=@e}j|0yru&oj$bmBD**%p_?p@xU{&U#?MXkaZ0vUsre#lwWc+MYi)h zzgZzKS+c|f!HwX}MI)!vxQb~}a%(HOxQsNM4nS!&^fUEs_mkR9l?G4cO_7^8!E)}n zX2X^HIx)_S-Kd|t7%3?oXr9(9q_x)vO54niB&QmW?m^JfZ&GI*Oal(el=@g4x>dRo z!dWt;aw(S%0mOlo2PFA}8%m{LmsvqB1;ET*_VlK%`#D#Y^s4Gh!MdTBU-tBmCg-~j zgR_f^DM&}Uh6xkPTfn7CHXVO_ZUu(8vKvj;=TZKa=}J-v=1*`r7(P#wTi^pe0>&_8 z;#|>1B@@XBz~p^+Ak%k*vnK3-{mtE03Xu#7Q%$|O&dOx?yJ#(UXb?OI-FgX~E z4vF36Nxs=~gUz)tITv|cR5BxcbPiV*4T+&l;o`}p@1f!OFHNuwSg@dz-$TQf{%sSO zaBNHj&CV>CQhR`_m=2^`C`k208>0tY?4ICuSOIAkc$=%7oPZOnu;Vcs0hcZEB5~~Y z%$Q3k(RP$E#FgmMMoNt2OZJjUAdCTMv*kX`@)1fJf&d{`*kUMDXdhq0~_jR%P|e(COx zQ2Bb(+TR1AFoIzC@tuztpzkm@)f&|jdL|GzKh#^`J8LBEp&%k--_(7li*XBY6<%Q_ zrU|i6F1R}&Dgec=7)+M6V6MLVbPN&?0)%i*2SV@zC=BLB=c&ARjM3|U`R{) zj5)ZX^CgJi0sfT(u-X8S3ows@r<`k+519BN(I130+b4{2oOY`B92SnIgeXet4PVNLZtXax zU0fSrE+fY1@=mhdw!e|-O9h`xkmc$z#Ms$1ZwRvyMe1il{v3O=7);i3p$~WEstfCw zBRyp|io`h<6mf}#84s@!^tllmcc)cyfZl4l@LNpcW-e&s7@38+Ph83hy74pXZV!ip zP(!V{OrmEgzAa#UfN#;LK3)gt&$79{c403&lpJ6T6%_K{CQ{VD;CpCgpH?9<{x!nj z^8_;RHxUna$m~iaNB?@?7v}N%2?Gz_3GpsQ>)`zrL$^+he2ZF-JA7Xo(wZkkn>6Cp zd_x1hS3lcp$7-J>ZGiIilJRtdvrq}~;gg4`)SFf8kz$5UEMdP0b~wlGyY#+)QE{+9 z{Zujh%0pGvQ{Hoq^S{>}Ah#xgdaJXR&B}Tk4y$3})J*c@B@X(oa;BflrzXI(U*!o> z>!L}mOvR)h+P;gD&`2@vFiUZbwGi-AC? z&ImEeF7;`OnqkuPs+3|8|EbzKv#Dc|8eiu|( z0G$Klo)L7J1!N&3k`{Pf`I%$mljVtFc&g{&8R}CW=a(1tRs`NM(2mFT~V(b07`Y-4D{XWfFH?wY2TaBRO⁡bK%^Fn%hTxe zjA^{o&n3wUGeN~qOhHUPBOG?~Yy2X?G2SIa@E5gPzsXfU(Ekh4`FG;9DS zKnY!}XrXvqe+$}r)PAyoWCPY+RL3Oz{Nm+CMq}DwQ}?o6W5HXm%#kwI;ZG1~&aF_4 zXg%%l#M_=BqGp->q|4j|Fb+n3eHY9nqB-s74qoCZ`otQs8$jyhn3%+$Lv4*$EmX$# zFk&{DM%$XP93J~3N3>Au2Vag6Law-opr#)sSd4y_Hoh{<9E2)uD=~Ic_(c@NVS%UG zBjPZ$sR=O<;xR#l#KCGaHXlRr806k|=K%yD@mxyIJbtf;q8iSz4bslx1*=|i{vvoj z(;<9K-HvI5aX|X>=;V+3bW~a0eo2^ijN17Zt+B7O?BChT#V<5m=NLxo6CZ?K5>fAd zZGXY7>2CSU&$-ifymKhz#!zj>Fya>%Z>ZPFR9h^<_&+~)?|8qO@0rlE23V{p`nb`d zyvyjZUP6;`i)9NBX2$p1EEF2SUkpOh;CaSd&ShVu!g}P^asLt6%;{&{6#T+A zWH*rPN0XM|=Hqi0FtjKN2Zku+a(^@flBL(o#fX91E{Btm4kMoIVJ7bsCB6Zn1=mPg zXj$ZR22zr+r4hIzyfR0Kx7S*&dt14aZdau8UfYqFEt z>J4oSJY{7~dcHNZa9d9aIPpNTT1G=)TkzS*i2DM=a9GOoUV%lhBXT<;nEFbwPg*8C zNmV(Z>dE3lX@nL+TYg1G3fVj{G~62{eFjJMKt+^I@eLTmM7UtT!PR*>uG1gya>CiX zi+muI5bN0^eXuQFL%b7=P8kvE8l?YeNbtvNUH+Qg+_qGQA%gEu2_373Z0FXl{_$%O zgOt>9$CH`CkLyh&Fl7ENbk?#MI8BNCZLS6l`vLwQK>knQJ@&wuis2rzdhQyAHB3$v z#R<`gI`z`FAjaaO4;Fqg%II6*EoOmtCt0)%aVoY*>@XD#8GUd&JgD9HDKLyACe{Dr z58o4vBc_zRVK}T!nuU!18V)FwVf8dwf2?BIDMN%9v+aiE&oyUgu<&fC!B_8c(lOAQ z?_cW}whF+Z21k4myX#W3u(o(?+yx#s22}iOI|~@L3kG2ZVt+{7eUg0;YDW0Yx(n|k z39)a0<=z~;60}g*(YB1Zv|nER>Ow_l8oV_gv9w3aoNShzr1Wcqf7BSutfFf_lhK!v zV#(;n=8$>WJs3C{rx#|FKQ?>F(lB=}!Y=qLJ2jJWi4

    vBf@ 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

    O21HT{o2}n>)qPgvUIw~TNNlK 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%0A%Rhq1zHqecM=%QBpLbf?*Ul2w;e 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 literal 0 HcmV?d00001 diff --git a/艾登贸易管理/U.dfm b/艾登贸易管理/U.dfm new file mode 100644 index 0000000..d5244f9 --- /dev/null +++ b/艾登贸易管理/U.dfm @@ -0,0 +1,202 @@ +object Form1: TForm1 + Left = 204 + Top = 180 + Width = 870 + Height = 500 + Caption = 'Form1' + Color = clBtnFace + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + OldCreateOrder = False + PixelsPerInch = 96 + TextHeight = 13 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 862 + Height = 30 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_RCInspection.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object ToolButton2: TToolButton + Left = 0 + Top = 0 + Caption = #20445#23384 + ImageIndex = 58 + end + object TBClose: TToolButton + Left = 59 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + end + end + object Panel1: TPanel + Left = 0 + Top = 30 + Width = 862 + Height = 41 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 25 + Top = 16 + Width = 52 + Height = 12 + Caption = #24067#21305#26465#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object APID: TEdit + Left = 80 + Top = 10 + Width = 138 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 71 + Width = 862 + Height = 392 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column1 + end + item + Kind = skSum + Column = Tv2CDQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_RCInspection.TextSHuangSe + object tv2CDType: TcxGridDBColumn + Caption = #30133#28857#21517#31216 + DataBinding.FieldName = 'CDName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = DataLink_RCInspection.Default + Width = 144 + end + object tv2CDWZ: TcxGridDBColumn + Caption = #20301#32622#36215 + DataBinding.FieldName = 'CDBeg' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = DataLink_RCInspection.Default + Width = 96 + end + object v2Column2: TcxGridDBColumn + Caption = #20301#32622#27490 + DataBinding.FieldName = 'CDend' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Styles.Content = DataLink_RCInspection.Default + Width = 93 + end + object Tv2CDQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'CDQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = DataLink_RCInspection.Default + Width = 93 + end + object Tv2CDReason: TcxGridDBColumn + Caption = #21407#22240 + DataBinding.FieldName = 'CDReason' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 131 + end + object v2Column1: TcxGridDBColumn + DataBinding.FieldName = 'CDQty' + Visible = False + Width = 55 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOTmp: TADOQuery + Connection = DataLink_RCInspection.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 336 + Top = 40 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_RCInspection.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 200 + end + object ADOCmd: TADOQuery + Connection = DataLink_RCInspection.ADOLink + Parameters = <> + Left = 288 + Top = 40 + end + object DataSource1: TDataSource + DataSet = Order_MJ + Left = 528 + Top = 200 + end + object Order_MJ: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 200 + end +end diff --git a/艾登贸易管理/U.pas b/艾登贸易管理/U.pas new file mode 100644 index 0000000..8a7ec6b --- /dev/null +++ b/艾登贸易管理/U.pas @@ -0,0 +1,48 @@ +unit U; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxTextEdit, DBClient, ADODB, + cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, + cxClasses, cxControls, cxGridCustomView, cxGrid, StdCtrls, ExtCtrls, + ComCtrls, ToolWin; + +type + TForm1 = class(TForm) + ToolBar1: TToolBar; + ToolButton2: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + APID: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + tv2CDType: TcxGridDBColumn; + tv2CDWZ: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + Tv2CDQty: TcxGridDBColumn; + Tv2CDReason: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ADOTmp: TADOQuery; + ADOQueryMain: TADOQuery; + ADOCmd: TADOQuery; + DataSource1: TDataSource; + Order_MJ: TClientDataSet; + private + { Private declarations } + public + { Public declarations } + end; + +var + Form1: TForm1; + +implementation + +{$R *.dfm} + +end. diff --git a/艾登贸易管理/U_BanCpCkSaoM.dfm b/艾登贸易管理/U_BanCpCkSaoM.dfm new file mode 100644 index 0000000..8ad197f --- /dev/null +++ b/艾登贸易管理/U_BanCpCkSaoM.dfm @@ -0,0 +1,201 @@ +object frmBanCpCkSaoM: TfrmBanCpCkSaoM + Left = 241 + Top = 177 + Width = 870 + Height = 500 + Caption = #21322#25104#21697#20986#24211#25195#25551 + Color = clBtnFace + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 16 + object cxGrid2: TcxGrid + Left = 0 + Top = 81 + Width = 862 + Height = 382 + Align = alClient + TabOrder = 0 + object Tv1: TcxGridDBTableView + OnDblClick = Tv1DblClick + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + Column = v2Column6 + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_TradeManage.Default + object v1Column1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Width = 97 + end + object v2Column1: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 101 + end + object v2Column3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 78 + end + object v1Column3: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'GangNo' + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v1Column5: TcxGridDBColumn + Caption = #26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Width = 112 + end + object v1Column2: TcxGridDBColumn + Caption = #20986#24211#26102#38388 + DataBinding.FieldName = 'CRTime' + HeaderAlignmentHorz = taCenter + Width = 88 + end + object v2Column5: TcxGridDBColumn + Caption = #20986#24211#20844#26020#25968 + DataBinding.FieldName = 'KGQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 89 + end + object v2Column6: TcxGridDBColumn + Caption = #20986#24211#38271#24230 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 99 + end + object v1Column6: TcxGridDBColumn + Caption = #38271#24230#21333#20301 + DataBinding.FieldName = 'QtyUnit' + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel1: TPanel + Left = 0 + Top = 0 + Width = 862 + Height = 81 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 1 + object Label1: TLabel + Left = 56 + Top = 40 + Width = 68 + Height = 16 + Caption = #25195#25551#20837#21475 + end + object XJID: TEdit + Left = 124 + Top = 37 + Width = 167 + Height = 24 + TabOrder = 0 + OnKeyPress = XJIDKeyPress + end + object Button1: TButton + Left = 309 + Top = 38 + Width = 75 + Height = 23 + Caption = #20986#24211 + TabOrder = 1 + OnClick = Button1Click + end + object Button2: TButton + Left = 413 + Top = 38 + Width = 75 + Height = 23 + Caption = #20851#38381 + TabOrder = 2 + OnClick = Button2Click + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 728 + Top = 136 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 760 + Top = 136 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 792 + Top = 136 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 944 + Top = 32 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 968 + Top = 40 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 984 + Top = 40 + end +end diff --git a/艾登贸易管理/U_BanCpCkSaoM.pas b/艾登贸易管理/U_BanCpCkSaoM.pas new file mode 100644 index 0000000..5605058 --- /dev/null +++ b/艾登贸易管理/U_BanCpCkSaoM.pas @@ -0,0 +1,253 @@ +unit U_BanCpCkSaoM; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, ExtCtrls, ADODB, DBClient, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid; + +type + TfrmBanCpCkSaoM = class(TForm) + cxGrid2: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column1: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + cxGrid2Level1: TcxGridLevel; + cxGridPopupMenu1: TcxGridPopupMenu; + CDS_Main: TClientDataSet; + DataSource1: TDataSource; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + Panel1: TPanel; + XJID: TEdit; + Label1: TLabel; + Button1: TButton; + v1Column5: TcxGridDBColumn; + Button2: TButton; + v1Column6: TcxGridDBColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure XJIDKeyPress(Sender: TObject; var Key: Char); + procedure Button1Click(Sender: TObject); + procedure Tv1DblClick(Sender: TObject); + procedure Button2Click(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + public + { Public declarations } + end; + +var + frmBanCpCkSaoM: TfrmBanCpCkSaoM; + +implementation +uses +U_DataLink,U_Fun ; + +{$R *.dfm} + +procedure TfrmBanCpCkSaoM.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmBanCpCkSaoM.FormDestroy(Sender: TObject); +begin + frmBanCpCkSaoM:=nil; +end; +procedure TfrmBanCpCkSaoM.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + SQL.Add('select A.*,B.OrderNo,B.MPRTCodeName,C.PRTColor,F.KCQty,F.KCKgQty,F.KCQtyUnit,KK.GangNo '); + sql.add('from CK_BanCP_CR A '); + Sql.add(' inner join JYOrder_Main B on A.MainId=B.MainId'); + Sql.add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); + Sql.add(' inner join WFB_MJJY D on A.MJId=D.MJId'); + sql.Add(' inner join JYOrder_Sub_AnPai KK on D.APID=KK.APID'); + sql.Add(' inner join CK_BanCP_KC F on A.CRID=F.CRID'); + sql.add('where 1<>1'); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmBanCpCkSaoM.FormShow(Sender: TObject); +begin + ReadCxGrid('Ʒ',Tv1,'Ʒֿ'); + InitGrid(); +end; + +procedure TfrmBanCpCkSaoM.XJIDKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.* '); + sql.add('from CK_BanCP_CR A '); + sql.add('where A.MJID='''+Trim(XJID.Text)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + Application.MessageBox('','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,B.OrderNo,B.MPRTCodeName,C.PRTColor,F.KCQty,F.KCKgQty,F.KCQtyUnit,KK.GangNo '); + sql.add('from CK_BanCP_CR A '); + Sql.add(' inner join JYOrder_Main B on A.MainId=B.MainId'); + Sql.add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); + Sql.add(' inner join WFB_MJJY D on A.MJId=D.MJId'); + sql.Add(' inner join JYOrder_Sub_AnPai KK on D.APID=KK.APID'); + sql.Add(' inner join CK_BanCP_KC F on A.CRID=F.CRID'); + sql.add('where A.MJID='''+Trim(XJID.Text)+''''); + sql.Add(' and KCQty>0 and A.CRType='''' '); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + if CDS_Main.Locate('MJID',Trim(ADOQueryTemp.fieldbyname('MJID').AsString),[])=True then + begin + Application.MessageBox('Ѿɨٴɨ裡','ʾ',0); + Exit; + end; + with CDS_Main do + begin + Append; + FieldByName('OrderNo').Value:=ADOQueryTemp.fieldbyname('OrderNo').Value; + FieldByName('MPRTCodeName').Value:=ADOQueryTemp.fieldbyname('MPRTCodeName').Value; + FieldByName('PRTColor').Value:=ADOQueryTemp.fieldbyname('PRTColor').Value; + FieldByName('GangNo').Value:=ADOQueryTemp.fieldbyname('GangNo').Value; + FieldByName('CRID').Value:=ADOQueryTemp.fieldbyname('CRID').Value; + FieldByName('CRTime').Value:=SGetServerDateTime(ADOQueryCmd); + FieldByName('KGQty').Value:=ADOQueryTemp.fieldbyname('kCKGQty').Value; + FieldByName('Qty').Value:=ADOQueryTemp.fieldbyname('KCQty').Value; + FieldByName('QtyUnit').Value:=ADOQueryTemp.fieldbyname('KCQtyUnit').Value; + FieldByName('MJID').Value:=ADOQueryTemp.fieldbyname('MJID').Value; + FieldByName('APID').Value:=ADOQueryTemp.fieldbyname('APID').Value; + Post; + end; + end else + begin + Application.MessageBox('˾Ѿ⣬ٴγ⣡','ʾ',0); + Exit; + end; + XJID.Text:=''; + end; +end; + +procedure TfrmBanCpCkSaoM.Button1Click(Sender: TObject); +var + maxno:string; +begin + if CDS_Main.IsEmpty then Exit; + XJID.SetFocus; + if Application.MessageBox('ȷҪִд˲','ʾ',32+4)<>IDYES then Exit; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_Main do + begin + First; + while not Eof do + begin + if GetLSNo(ADOQueryCmd,maxno,'ZC','CK_BanCp_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update CK_BanCp_CR Set NowOutFlag=1 where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+''''); + SQL.Add(' and CRType='''' '); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCp_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('BCID').Value:=Trim(maxno); + FieldByName('CRID').Value:=CDS_Main.fieldbyname('CRID').Value; + FieldByName('CRTime').Value:=CDS_Main.fieldbyname('CRTime').Value; + FieldByName('KGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('MJID').Value:=CDS_Main.fieldbyname('MJID').Value; + FieldByName('APID').Value:=CDS_Main.fieldbyname('APID').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update CK_BanCp_KC set KCKgQty=0,KCQty=0 where CRID='+CDS_Main.fieldbyname('CRID').AsString); + ExecSQL; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + InitGrid(); + Application.MessageBox('ɹ','ʾ',0); + Exit; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +procedure TfrmBanCpCkSaoM.Tv1DblClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + CDS_Main.Delete; +end; + +procedure TfrmBanCpCkSaoM.Button2Click(Sender: TObject); +begin + Close; + WriteCxGrid('Ʒ',Tv1,'Ʒֿ'); +end; + +end. diff --git a/艾登贸易管理/U_BanCpHCSaoM.dfm b/艾登贸易管理/U_BanCpHCSaoM.dfm new file mode 100644 index 0000000..2f75146 --- /dev/null +++ b/艾登贸易管理/U_BanCpHCSaoM.dfm @@ -0,0 +1,212 @@ +object frmBanCpHCSaoM: TfrmBanCpHCSaoM + Left = 241 + Top = 177 + Width = 905 + Height = 504 + Caption = #21322#25104#21697#22238#20179#25195#25551 + Color = clBtnFace + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 16 + object cxGrid2: TcxGrid + Left = 0 + Top = 81 + Width = 897 + Height = 386 + Align = alClient + TabOrder = 0 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + Column = v2Column6 + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = cxStyle1 + object v1Column1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 77 + end + object v2Column1: TcxGridDBColumn + Caption = #20135#21697#20195#21495 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 112 + end + object v2Column3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 77 + end + object v1Column3: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 58 + end + object v1Column4: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 57 + end + object v1Column5: TcxGridDBColumn + Caption = #26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 123 + end + object v1Column2: TcxGridDBColumn + Caption = #22238#20179#26102#38388 + DataBinding.FieldName = 'CRTime' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 88 + end + object v2Column5: TcxGridDBColumn + Caption = #22238#20179#20844#26020#25968 + DataBinding.FieldName = 'KGQty' + HeaderAlignmentHorz = taCenter + Width = 100 + end + object v2Column6: TcxGridDBColumn + Caption = #22238#20179#38271#24230 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Width = 85 + end + object v1Column6: TcxGridDBColumn + Caption = #38271#24230#21333#20301 + DataBinding.FieldName = 'QtyUnit' + Options.Focusing = False + Width = 74 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel1: TPanel + Left = 0 + Top = 0 + Width = 897 + Height = 81 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 1 + object Label1: TLabel + Left = 56 + Top = 40 + Width = 68 + Height = 16 + Caption = #25195#25551#20837#21475 + end + object XJID: TEdit + Left = 124 + Top = 37 + Width = 167 + Height = 24 + TabOrder = 0 + OnKeyPress = XJIDKeyPress + end + object Button1: TButton + Left = 309 + Top = 38 + Width = 75 + Height = 23 + Caption = #22238#20179 + TabOrder = 1 + OnClick = Button1Click + end + object Button2: TButton + Left = 421 + Top = 38 + Width = 75 + Height = 23 + Caption = #20851#38381 + TabOrder = 2 + OnClick = Button2Click + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 728 + Top = 136 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 760 + Top = 136 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 792 + Top = 136 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 944 + Top = 32 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 968 + Top = 40 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 984 + Top = 40 + end + object cxStyleRepository1: TcxStyleRepository + object cxStyle1: TcxStyle + end + end +end diff --git a/艾登贸易管理/U_BanCpHCSaoM.pas b/艾登贸易管理/U_BanCpHCSaoM.pas new file mode 100644 index 0000000..a45dcc6 --- /dev/null +++ b/艾登贸易管理/U_BanCpHCSaoM.pas @@ -0,0 +1,264 @@ +unit U_BanCpHCSaoM; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, ExtCtrls, ADODB, DBClient, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid; + +type + TfrmBanCpHCSaoM = class(TForm) + cxGrid2: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column1: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + cxGrid2Level1: TcxGridLevel; + cxGridPopupMenu1: TcxGridPopupMenu; + CDS_Main: TClientDataSet; + DataSource1: TDataSource; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + Panel1: TPanel; + XJID: TEdit; + Label1: TLabel; + Button1: TButton; + v1Column5: TcxGridDBColumn; + Button2: TButton; + v1Column6: TcxGridDBColumn; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure XJIDKeyPress(Sender: TObject; var Key: Char); + procedure Button1Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + public + { Public declarations } + end; + +var + frmBanCpHCSaoM: TfrmBanCpHCSaoM; + +implementation +uses +U_DataLink,U_Fun ; + +{$R *.dfm} + +procedure TfrmBanCpHCSaoM.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmBanCpHCSaoM.FormDestroy(Sender: TObject); +begin + frmBanCpHCSaoM:=nil; +end; +procedure TfrmBanCpHCSaoM.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + SQL.Add('select A.*,B.OrderNo,B.MPRTCodeName,C.PRTColor,B.MPRTMF,B.MPRTKZ '); + sql.add('from CK_BanCP_CR A '); + Sql.add(' inner join JYOrder_Main B on A.MainId=B.MainId'); + Sql.add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); + sql.add('where 1<>1'); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmBanCpHCSaoM.FormShow(Sender: TObject); +begin + ReadCxGrid('Ʒز',Tv1,'Ʒֿ'); + InitGrid(); +end; + +procedure TfrmBanCpHCSaoM.XJIDKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.* '); + sql.add('from CK_BanCP_CR A '); + sql.add('where A.MJID='''+Trim(XJID.Text)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + Application.MessageBox('','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,B.OrderNo,B.MPRTCodeName,C.PRTColor,B.MPRTMF,B.MPRTKZ,F.KCQty,F.KCKgQty '); + sql.add('from CK_BanCP_CR A '); + Sql.add(' inner join JYOrder_Main B on A.MainId=B.MainId'); + Sql.add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); + sql.Add(' inner join CK_BanCP_KC F on A.CRID=F.CRID'); + sql.add('where A.MJID='''+Trim(XJID.Text)+''''); + sql.Add(' and KCQty=0 and A.CRType='''' '); + Open; + end; + if ADOQueryTemp.IsEmpty=false then + begin + if CDS_Main.Locate('MJID',Trim(ADOQueryTemp.fieldbyname('MJID').AsString),[])=True then + begin + Application.MessageBox('Ѿɨٴɨ裡','ʾ',0); + Exit; + end; + with CDS_Main do + begin + Append; + FieldByName('OrderNo').Value:=ADOQueryTemp.fieldbyname('OrderNo').Value; + FieldByName('MPRTCodeName').Value:=ADOQueryTemp.fieldbyname('MPRTCodeName').Value; + FieldByName('PRTColor').Value:=ADOQueryTemp.fieldbyname('PRTColor').Value; + FieldByName('MPRTMF').Value:=ADOQueryTemp.fieldbyname('MPRTMF').Value; + FieldByName('MPRTKZ').Value:=ADOQueryTemp.fieldbyname('MPRTKZ').Value; + FieldByName('CRID').Value:=ADOQueryTemp.fieldbyname('CRID').Value; + FieldByName('CRTime').Value:=SGetServerDateTime(ADOQueryCmd); + FieldByName('KGQty').Value:=ADOQueryTemp.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=ADOQueryTemp.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=ADOQueryTemp.fieldbyname('QtyUnit').Value; + FieldByName('MainID').Value:=ADOQueryTemp.fieldbyname('MainID').Value; + FieldByName('SubID').Value:=ADOQueryTemp.fieldbyname('SubID').Value; + FieldByName('APID').Value:=ADOQueryTemp.fieldbyname('APID').Value; + FieldByName('CPType').Value:=ADOQueryTemp.fieldbyname('CPType').Value; + FieldByName('MJID').Value:=ADOQueryTemp.fieldbyname('MJID').Value; + Post; + end; + end else + begin + Application.MessageBox('˾ڲֿУز֣','ʾ',0); + Exit; + end; + XJID.Text:=''; + end; +end; + +procedure TfrmBanCpHCSaoM.Button1Click(Sender: TObject); +var + maxno:string; +begin + if CDS_Main.IsEmpty then Exit; + if CDS_Main.Locate('KgQty',0,[]) then + begin + Application.MessageBox('زֹΪ0','ʾ',0); + Exit; + end; + if CDS_Main.Locate('Qty',0,[]) then + begin + Application.MessageBox('زֳȲΪ0','ʾ',0); + Exit; + end; + if CDS_Main.Locate('KgQty',null,[]) then + begin + Application.MessageBox('زֹΪգ','ʾ',0); + Exit; + end; + if CDS_Main.Locate('Qty',null,[]) then + begin + Application.MessageBox('زֳȲΪգ','ʾ',0); + Exit; + end; + XJID.SetFocus; + if Application.MessageBox('ȷҪִд˲','ʾ',32+4)<>IDYES then Exit; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_Main do + begin + First; + while not Eof do + begin + if GetLSNo(ADOQueryCmd,maxno,'HC','CK_BanCp_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCp_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('BCID').Value:=Trim(maxno); + FieldByName('CRID').Value:=CDS_Main.fieldbyname('CRID').Value; + FieldByName('CRTime').Value:=CDS_Main.fieldbyname('CRTime').Value; + FieldByName('KGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('MainID').Value:=CDS_Main.fieldbyname('MainID').Value; + FieldByName('SubID').Value:=CDS_Main.fieldbyname('SubID').Value; + FieldByName('APID').Value:=CDS_Main.fieldbyname('APID').Value; + FieldByName('MJID').Value:=CDS_Main.fieldbyname('MJID').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:='ز'; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update CK_BanCp_KC set KCKgQty='+cds_main.fieldbyname('KgQty').AsString); + SQL.Add(',KCQty='+cds_main.fieldbyname('Qty').AsString); + sql.Add(' where CRID='+CDS_Main.fieldbyname('CRID').AsString); + ExecSQL; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + InitGrid(); + Application.MessageBox('زֳɹ','ʾ',0); + Exit; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ز쳣','ʾ',0); + end; +end; + +procedure TfrmBanCpHCSaoM.Button2Click(Sender: TObject); +begin + Close; + WriteCxGrid('Ʒز',Tv1,'Ʒֿ'); +end; + +end. diff --git a/艾登贸易管理/U_BangAdd.dfm b/艾登贸易管理/U_BangAdd.dfm new file mode 100644 index 0000000..02e9c95 --- /dev/null +++ b/艾登贸易管理/U_BangAdd.dfm @@ -0,0 +1,255 @@ +object frmBangAdd: TfrmBangAdd + Left = 232 + Top = 185 + Width = 703 + Height = 396 + Caption = #26816#39564#31216#37325 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Label1: TLabel + Left = 193 + Top = 79 + Width = 52 + Height = 12 + Caption = #25195#25551#20837#21475 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 392 + Top = 77 + Width = 9 + Height = 16 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label3: TLabel + Left = 193 + Top = 115 + Width = 54 + Height = 12 + Caption = #31216' '#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 387 + Top = 115 + Width = 15 + Height = 14 + Caption = #30917 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 193 + Top = 147 + Width = 54 + Height = 12 + Caption = #32440' '#31649 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 387 + Top = 147 + Width = 15 + Height = 14 + Caption = #30917 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 193 + Top = 179 + Width = 54 + Height = 12 + Caption = #33014' '#24102 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 387 + Top = 179 + Width = 15 + Height = 14 + Caption = #30917 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object MJID: TEdit + Left = 248 + Top = 73 + Width = 138 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + OnKeyPress = MJIDKeyPress + end + object Button1: TButton + Left = 193 + Top = 232 + Width = 57 + Height = 25 + Caption = #30830#23450 + TabOrder = 1 + OnClick = Button1Click + OnKeyPress = Button1KeyPress + end + object Button2: TButton + Left = 343 + Top = 232 + Width = 60 + Height = 25 + Caption = #36864#20986 + TabOrder = 2 + OnClick = Button2Click + end + object Edit1: TEdit + Left = 248 + Top = 109 + Width = 136 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 3 + OnKeyPress = MJIDKeyPress + end + object CheckBox1: TCheckBox + Left = 248 + Top = 44 + Width = 97 + Height = 17 + Caption = #33258#21160#35835#21462 + Checked = True + State = cbChecked + TabOrder = 4 + OnClick = CheckBox1Click + end + object Edit2: TEdit + Left = 248 + Top = 141 + Width = 136 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 5 + OnKeyPress = MJIDKeyPress + end + object Edit3: TEdit + Left = 248 + Top = 173 + Width = 136 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 6 + OnKeyPress = MJIDKeyPress + end + object ADOCmd: TADOQuery + Connection = DataLink_RCInspection.ADOLink + Parameters = <> + Left = 608 + Top = 144 + end + object ADOTmp: TADOQuery + Connection = DataLink_RCInspection.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 608 + Top = 200 + end + object RM2: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 560 + Top = 200 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 536 + Top = 144 + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_RCInspection.ADOLink + Parameters = <> + Left = 512 + Top = 184 + end +end diff --git a/艾登贸易管理/U_BangAdd.pas b/艾登贸易管理/U_BangAdd.pas new file mode 100644 index 0000000..d6c043b --- /dev/null +++ b/艾登贸易管理/U_BangAdd.pas @@ -0,0 +1,308 @@ +unit U_BangAdd; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, DB, ADODB,OleCtrls, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport; + function CommOpen(fhandle:hwnd;sCommName:PAnsiChar; + IntTime:integer;IsMessage:integer):integer;stdcall;external 'ELERS323C.DLL'; + function CommClose(sCommName:PAnsiChar):integer;stdcall;external 'ELERS323C.DLL'; + +type + TfrmBangAdd = class(TForm) + Label1: TLabel; + MJID: TEdit; + Label2: TLabel; + Button1: TButton; + Button2: TButton; + Edit1: TEdit; + ADOCmd: TADOQuery; + ADOTmp: TADOQuery; + Label3: TLabel; + Label4: TLabel; + CheckBox1: TCheckBox; + RM2: TRMGridReport; + RMDB_Main: TRMDBDataSet; + ADOQueryPrint: TADOQuery; + Label5: TLabel; + Label6: TLabel; + Edit2: TEdit; + Label7: TLabel; + Label8: TLabel; + Edit3: TEdit; + procedure MJIDKeyPress(Sender: TObject; var Key: Char); + procedure FormDestroy(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormShow(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure Button1KeyPress(Sender: TObject; var Key: Char); + private + { Private declarations } + procedure On1201(Var Message:Tmessage);Message 1201; + procedure PrintData(); + public + { Public declarations } + end; + +var + frmBangAdd: TfrmBangAdd; + +implementation + +{$R *.dfm} +procedure TfrmBangAdd.On1201(Var Message:Tmessage); +var + i1,i2:integer; + unitname:string; + fdata:double; +begin + i1:=message.WParam; + i2:=message.LParam; + + Edit1.Text:= floattostr(i1 *i2 /100000 ); +end; + +procedure TfrmBangAdd.MJIDKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_MJJY where MJID='''+Trim(MJID.Text)+''''); + Open; + end; + if ADOTmp.IsEmpty=False then + begin + Label2.Visible:=True; + Label2.Caption:=Trim(ADOTmp.fieldbyname('MJID').AsString); + end else + begin + MJID.Text:=''; + Label2.Visible:=False; + Label2.Caption:=''; + Application.MessageBox('!','ʾ',0); + Exit; + end; + MJID.Text:=''; + Button1.SetFocus; + end; +end; + +procedure TfrmBangAdd.FormDestroy(Sender: TObject); +begin + frmBangAdd:=nil; +end; + +procedure TfrmBangAdd.Button1Click(Sender: TObject); +var + FZG,FJD:string; + FFreal,FMJMaoZ:Double; +begin + if Label2.Caption='' then + begin + Application.MessageBox('δɨ!','ʾ',0); + Exit; + end; + if Trim(Edit1.Text)='' then + begin + Application.MessageBox('Ϊ!','ʾ',0); + Exit; + end; + with ADOTmp do + begin + Close; + sql.Clear; + SQL.Add('select * from WFB_MJJY where MJID='''+Trim(Label2.Caption)+''''); + Open; + end; + if ADOTmp.FieldByName('MJMaoZ').AsFloat>0 then + begin + if Application.MessageBox('ѳأȷҪ³','ʾ',32+4)<>IDYES then Exit; + end; + if Trim(Edit2.Text)<>'' then + begin + if TryStrToFloat(Edit2.Text,FFreal)=False then + begin + Application.MessageBox('Ƿ!','ʾ',0); + Exit; + end else + begin + FZG:=Edit2.Text; + end; + end else + begin + FZG:='0'; + end; + if Trim(Edit3.Text)<>'' then + begin + if TryStrToFloat(Edit3.Text,FFreal)=False then + begin + Application.MessageBox('Ƿ!','ʾ',0); + Exit; + end else + begin + FJD:=Edit3.Text; + end; + end else + begin + FJD:='0'; + end; + FMJMaoZ:=StrToFloat(Edit1.Text)-StrToFloat(FZG); + try + ADOCmd.Connection.BeginTrans; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set MJMaoZ='+Trim(Floattostr(FMJMaoZ))); + sql.add(',MJQty1='+Trim(Edit1.Text)); + sql.add(',MJQty2='+Trim(FZG)); + sql.add(',MJQty3='+Trim(FJD)); + SQL.Add(' where MJID='''+Trim(Label2.Caption)+''''); + ExecSQL; + end; + ADOCmd.Connection.CommitTrans; + PrintData(); + Label2.Caption:=''; + Label2.Visible:=False; + MJID.SetFocus; + //Application.MessageBox('ɹ!','ʾ',0); + except + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; +procedure TfrmBangAdd.PrintData(); +var + fPrintFile,LabInt,LabName:String; +begin + with ADOTmp do + begin + Close; + SQL.Clear; + sql.Add(' select C.SLbInt,C.SLbName from WFB_MJJY A'); + sql.Add(' inner join JYOrder_Sub_AnPai B on A.APID=B.APID'); + sql.Add(' inner join JYOrder_Sub C on B.SubId=C.SubId'); + sql.Add(' where A.MJID='''+Trim(Label2.Caption)+''''); + Open; + end; + if ADOTmp.IsEmpty=False then + begin + LabInt:=ADOTmp.fieldbyname('SLbInt').AsString; + LabName:=ADOTmp.fieldbyname('SLbName').AsString; + end ; + if Trim(LabName)='' then + begin + Application.MessageBox('ǩδã','ʾ',0); + Exit; + end; + { try + frmLabelPrint:=TfrmLabelPrint.Create(Application); + with frmLabelPrint do + begin + fLabelId:=LabInt; + FFCDFlag:=Trim(CDFlag); + fKeyNo:=Trim(FXJID); + fIsPreviewPrint:=True; + frmLabelPrint.Button1.Click; + // if ShowModal=1 then + //begin + + // end; + end; + finally + frmLabelPrint.Free; + end; } + with ADOQueryPrint do + begin + Close; + sql.Clear; + SQL.Add('select D.OrderNo,C.PRTColor,C.PRTKZ,C.PRTType,D.OrdDefStr2,D.OrdDefStr3,D.OrdDefStr7,B.AOrdDefNote30,A.MJXH,B.GangNo'); + SQL.Add(',C.PRTMF,C.SOrddefstr3,C.SOrddefstr5,D.DlyDate,D.DLyPlace,A.MJMaoZ,B.AOrdDefNote31,C.SOrddefstr4,'); + SQL.Add('ColorEngName=(select top 1 Note from KH_Zdy E where E.ZdyName=C.PRTColor and E.Type=''OrdColor'' ),'); + {SQL.Add('MJBang=Cast((A.MJMaoZ*2.2046) as decimal(18,2)),'); + SQL.Add('MJMaoZBang=Cast(((A.MJQty1+A.MJQty3)*2.2046) as decimal(18,2)),'); + SQL.Add('MAQty=Cast((A.MJMaoZ*100*1000/(A.MJSJKZ*(A.MJFK*2.54))*0.9144) as decimal(18,2) ),'); + SQL.Add('MQty=Cast((A.MJMaoZ*100*1000/(A.MJSJKZ*(A.MJFK*2.54))) as decimal(18,2) ),'); + SQL.Add('MaoZ=A.MJQty1+A.MJQty3,'); + SQL.Add('JingZ=A.MJQty1-A.MJQty2'); } + SQL.Add('MJBang=A.MJMaoZ,'); + SQL.Add('MJMaoZBang=A.MJQty1+A.MJQty3,'); + SQL.Add('MAQty=Cast((A.MJMaoZ*0.4536*100*1000/(A.MJSJKZ*(A.MJFK*2.54))*0.9144) as decimal(18,2) ),'); + SQL.Add('MQty=Cast((A.MJMaoZ*0.4536*100*1000/(A.MJSJKZ*(A.MJFK*2.54))) as decimal(18,2) ),'); + SQL.Add('MaoZ=Cast((A.MJQty1+A.MJQty3)*0.4536 as decimal(18,2)),'); + SQL.Add('JingZ=Cast((A.MJQty1-A.MJQty2)*0.4536 as decimal(18,2))'); + SQL.Add('from WFB_MJJY A inner join JYOrder_Sub_AnPai B on A.APID=B.APID'); + SQL.Add('inner join JYOrder_Sub C on B.SubId=C.SubId'); + SQL.Add('inner join JYOrder_Main D on C.MainId=D.Mainid'); + SQL.Add('where A.MJID='''+Trim(Label2.Caption)+''''); + Open; + end; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\'+Trim(LabName)+'.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + //RM2.ShowReport; + Rm2.PrintReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\'+Trim(LabName)+'.rmf'),'ʾ',0); + end; + +end; + +procedure TfrmBangAdd.Button2Click(Sender: TObject); +begin + Close; +end; + +procedure TfrmBangAdd.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; + if CheckBox1.Checked=False then + CommClose(pchar('com1')); +end; + +procedure TfrmBangAdd.FormShow(Sender: TObject); +begin + if CommOpen(frmBangAdd.Handle,pchar('com1'),500,1)<1 then + begin + showmessage('ڴʧ!'); + end + else + begin + end; +end; + +procedure TfrmBangAdd.CheckBox1Click(Sender: TObject); +begin + if CheckBox1.Checked=True then + begin + if CommOpen(frmBangAdd.Handle,pchar('com1'),500,1)<1 then + begin + showmessage('ڴʧ!'); + end + else + begin + end; + end else + begin + CommClose(pchar('com1')); + end; +end; + +procedure TfrmBangAdd.Button1KeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + Button1.Click; + end; +end; + +end. diff --git a/艾登贸易管理/U_BefChkHX.dfm b/艾登贸易管理/U_BefChkHX.dfm new file mode 100644 index 0000000..5c8dd00 --- /dev/null +++ b/艾登贸易管理/U_BefChkHX.dfm @@ -0,0 +1,335 @@ +object frmBefChkHX: TfrmBefChkHX + Left = 213 + Top = 134 + Width = 870 + Height = 534 + Caption = #26816#21069#22238#20462 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 854 + Height = 73 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 0 + object orderno: TLabel + Left = 48 + Top = 24 + Width = 63 + Height = 16 + Caption = 'orderno' + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object PRTColor: TLabel + Left = 168 + Top = 24 + Width = 72 + Height = 16 + Caption = 'PRTColor' + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object FirstName: TLabel + Left = 296 + Top = 24 + Width = 81 + Height = 16 + Caption = 'FirstName' + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object PBFactory: TLabel + Left = 464 + Top = 24 + Width = 81 + Height = 16 + Caption = 'PBFactory' + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 0 + Width = 854 + AutoSize = True + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 1 + object ToolButton2: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 111 + OnClick = ToolButton4Click + end + object ToolButton5: TToolButton + Left = 189 + Top = 0 + Caption = #25171#21360 + ImageIndex = 12 + OnClick = ToolButton5Click + end + object ToolButton1: TToolButton + Left = 248 + Top = 0 + Caption = #20851#38381 + ImageIndex = 55 + OnClick = ToolButton1Click + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 105 + Width = 854 + Height = 390 + Align = alClient + TabOrder = 2 + object TV2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + Column = V2Column1 + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = V2Column1 + end + item + Kind = skSum + Column = V2Column7 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object V2Column2: TcxGridDBColumn + Tag = 2 + Caption = #22238#20462#26102#38388 + DataBinding.FieldName = 'HXDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 96 + end + object V2Column8: TcxGridDBColumn + Tag = 2 + Caption = #26579#21378 + DataBinding.FieldName = 'HXFactory' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 84 + end + object V2Column7: TcxGridDBColumn + Tag = 2 + Caption = #21305#25968#37327 + DataBinding.FieldName = 'HXPS' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object V2Column1: TcxGridDBColumn + Tag = 2 + Caption = #25968#37327 + DataBinding.FieldName = 'HXQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FonePurple + Width = 69 + end + object V2Column9: TcxGridDBColumn + Tag = 2 + Caption = #32568#21495 + DataBinding.FieldName = 'GangNo' + HeaderAlignmentHorz = taCenter + Width = 71 + end + object V2Column5: TcxGridDBColumn + Tag = 2 + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'HXUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 74 + end + object V2Column6: TcxGridDBColumn + Tag = 2 + Caption = #22791#27880 + DataBinding.FieldName = 'HXNote' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 123 + end + object V2Column4: TcxGridDBColumn + Tag = 2 + Caption = #31867#22411 + DataBinding.FieldName = 'HXType' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 71 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 352 + Top = 8 + end + object ADOQuery2: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 512 + Top = 8 + end + object ADOQuery3: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 440 + Top = 8 + end + object ClientDataSet1: TClientDataSet + Aggregates = <> + Params = <> + Left = 448 + Top = 216 + end + object DataSource1: TDataSource + DataSet = ClientDataSet1 + Left = 480 + Top = 224 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 312 + Top = 256 + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_PRT + Left = 416 + Top = 160 + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = 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 = 464 + Top = 168 + ReportData = {} + end + object CDS_PRT: TClientDataSet + Aggregates = <> + Params = <> + Left = 392 + Top = 288 + end +end diff --git a/艾登贸易管理/U_BefChkHX.pas b/艾登贸易管理/U_BefChkHX.pas new file mode 100644 index 0000000..9c10c5b --- /dev/null +++ b/艾登贸易管理/U_BefChkHX.pas @@ -0,0 +1,256 @@ +unit U_BefChkHX; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxCalendar, cxButtonEdit, + cxTextEdit, StdCtrls, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, ComCtrls, ToolWin, ExtCtrls, cxDropDownEdit, + DBClient, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, RM_Common, + RM_Class, RM_GridReport, RM_System, RM_Dataset; + +type + TfrmBefChkHX = class(TForm) + Panel1: TPanel; + ToolBar2: TToolBar; + ToolButton2: TToolButton; + ToolButton3: TToolButton; + ToolButton4: TToolButton; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + V2Column2: TcxGridDBColumn; + V2Column8: TcxGridDBColumn; + V2Column7: TcxGridDBColumn; + V2Column1: TcxGridDBColumn; + V2Column5: TcxGridDBColumn; + V2Column6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + orderno: TLabel; + PRTColor: TLabel; + FirstName: TLabel; + PBFactory: TLabel; + ADOQuery1: TADOQuery; + ADOQuery2: TADOQuery; + ADOQuery3: TADOQuery; + ClientDataSet1: TClientDataSet; + DataSource1: TDataSource; + ToolButton1: TToolButton; + cxGridPopupMenu1: TcxGridPopupMenu; + V2Column4: TcxGridDBColumn; + V2Column9: TcxGridDBColumn; + ToolButton5: TToolButton; + RMDBMain: TRMDBDataSet; + RM1: TRMGridReport; + CDS_PRT: TClientDataSet; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + private + { Private declarations } + public + { Public declarations } + FLLID,HXUnit:String; + end; + +var + frmBefChkHX: TfrmBefChkHX; + +implementation +uses +U_DataLink,U_Fun; + +{$R *.dfm} + +procedure TfrmBefChkHX.FormDestroy(Sender: TObject); +begin + frmBefChkHX:=nil; +end; + +procedure TfrmBefChkHX.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmBefChkHX.ToolButton2Click(Sender: TObject); +begin + with ClientDataSet1 do + begin + Append; + FieldByName('HXFactory').Value:=Trim(FirstName.Caption); + FieldByName('HXDate').Value:=SGetServerDate(ADOQuery2); + FieldByName('HXType').Value:='ǰ'; + FieldByName('HXUnit').Value:=Trim(HXUnit); + Post; + end; +end; + +procedure TfrmBefChkHX.ToolButton3Click(Sender: TObject); +begin + if ClientDataSet1.IsEmpty then Exit; + if Trim(ClientDataSet1.fieldbyname('HXType').AsString)<>'ǰ' then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOQuery3 do + begin + Close; + SQL.Clear; + SQL.Add('delete Contract_Cloth_BefChkHX where HXID='''+Trim(ClientDataSet1.fieldbyname('HXID').AsString)+''''); + sql.Add('Update Contract_Cloth_LL Set HXPS=(select isnull(sum(HXPS),0) from Contract_Cloth_BefChkHX A where A.LLID='''+Trim(FLLID)+''')'); + sql.Add(',HXQty=(select isnull(sum(HXQty),0) from Contract_Cloth_BefChkHX A where A.LLID='''+Trim(FLLID)+''')'); + sql.Add(',HXMQty=(select isnull(sum(HXMQty),0) from Contract_Cloth_BefChkHX A where A.LLID='''+Trim(FLLID)+''')'); + sql.Add(',HXUnit=(select Top 1 HXUnit from Contract_Cloth_BefChkHX A where A.LLID='''+Trim(FLLID)+''')'); + sql.Add(' where LLID='''+Trim(FLLID)+''''); + ExecSQL; + end; + ClientDataSet1.Delete; + +end; + +procedure TfrmBefChkHX.ToolButton4Click(Sender: TObject); +var + maxno:string; + FSubId:String; +begin + try + ADOQuery3.Connection.BeginTrans; + with ClientDataSet1 do + begin + First; + while not Eof do + begin + if Trim(ClientDataSet1.fieldbyname('HXType').AsString)='ǰ' then + begin + if Trim(ClientDataSet1.fieldbyname('HXID').AsString)='' then + begin + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL where LLID='''+Trim(FLLID)+''''); + Open; + end; + FSubId:=Trim(ADOQuery1.fieldbyname('OrdSubId').AsString); + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub_AnPai where Subid='''+Trim(FSubId)+''''); + // sql.Add(' and GangNo='''+Trim(ClientDataSet1.fieldbyname('GangNo').AsString)+''''); + Open; + end; + if ADOQuery1.IsEmpty then + begin + ADOQuery3.Connection.RollbackTrans; + Application.MessageBox('δزֲܱ!','ʾ',0); + Exit; + end; + end; + + if Trim(ClientDataSet1.fieldbyname('HXID').AsString)='' then + begin + if GetLSNo(ADOQuery3,maxno,'HX','Contract_Cloth_BefChkHX',2,1)=False then + begin + ADOQuery3.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(ClientDataSet1.fieldbyname('HXID').AsString); + end; + with ADOQuery3 do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_BefChkHX where HXID='''+Trim(ClientDataSet1.fieldbyname('HXID').AsString)+''''); + Open; + end; + with ADOQuery3 do + begin + if Trim(ClientDataSet1.fieldbyname('HXID').AsString)='' then + Append + else + Edit; + FieldByName('LLID').Value:=Trim(FLLID); + FieldByName('HXID').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOQuery3,TV2,ClientDataSet1,'Contract_Cloth_BefChkHX',2); + Post; + end; + end; + Next; + end; + end; + with ADOQuery3 do + begin + Close; + SQL.Clear; + SQL.Add('Update Contract_Cloth_BefChkHX Set HXMQty=HXQty*ZSXS where LLID='''+Trim(FLLID)+''''); + sql.Add('Update Contract_Cloth_LL Set HXPS=(select sum(HXPS) from Contract_Cloth_BefChkHX A where A.LLID=Contract_Cloth_LL.LLID)'); + sql.Add(',HXQty=(select sum(HXQty) from Contract_Cloth_BefChkHX A where A.LLID=Contract_Cloth_LL.LLID)'); + sql.Add(',HXMQty=(select sum(HXMQty) from Contract_Cloth_BefChkHX A where A.LLID=Contract_Cloth_LL.LLID)'); + sql.Add(',HXUnit=(select Top 1 HXUnit from Contract_Cloth_BefChkHX A where A.LLID=Contract_Cloth_LL.LLID)'); + sql.Add(' where LLID='''+Trim(FLLID)+''''); + ExecSQL; + end; + ADOQuery3.Connection.CommitTrans; + Application.MessageBox('ɹ!','ʾ',0); + Exit; + except + ADOQuery3.Connection.RollbackTrans; + Application.MessageBox('쳣!','ʾ',0); + end; +end; + +procedure TfrmBefChkHX.ToolButton1Click(Sender: TObject); +begin + Close; + WriteCxGrid('ǰ',TV2,'زֹ'); +end; + +procedure TfrmBefChkHX.FormShow(Sender: TObject); +begin + ReadCxGrid('ǰ',TV2,'زֹ'); +end; + +procedure TfrmBefChkHX.ToolButton5Click(Sender: TObject); +var + fPrintFile:string; +begin + if ClientDataSet1.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\޵.rmf' ; + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select A.*,C.PRTColor,D.MPRTCodeName,D.MPRTSpec,D.OrderNo from Contract_Cloth_BefChkHX A'); + sql.Add(' inner join Contract_Cloth_LL B on A.LLID=B.LLID'); + sql.Add(' inner join JYOrder_Sub C on B.OrdSubId=C.SubID'); + sql.Add(' inner join JYOrder_Main D on C.MainId=D.MainId'); + sql.Add(' where A.HXID='''+Trim(ClientDataSet1.fieldbyname('HXID').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQuery1,CDS_PRT); + SInitCDSData20(ADOQuery1,CDS_PRT); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + RMVariables['DYFiller']:=Trim(DName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\޵.rmf'),'ʾ',0); + end; +end; + +end. diff --git a/艾登贸易管理/U_CKJYList.dfm b/艾登贸易管理/U_CKJYList.dfm new file mode 100644 index 0000000..1c2ba26 --- /dev/null +++ b/艾登贸易管理/U_CKJYList.dfm @@ -0,0 +1,612 @@ +object frmCKJYList: TfrmCKJYList + Left = 128 + Top = 152 + Width = 1199 + Height = 547 + Caption = #25104#21697#20986#24211#27719#24635#20449#24687 + 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 = 1183 + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBExport: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + end + object TBClose: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1183 + Height = 44 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 24 + Top = 12 + Width = 48 + Height = 12 + Caption = #26597#35810#26102#38388 + end + object Label2: TLabel + Left = 168 + Top = 12 + Width = 6 + Height = 12 + Caption = '-' + end + object Label8: TLabel + Left = 211 + Top = 100 + Width = 48 + Height = 12 + Caption = #20811' '#37325 + end + object Label9: TLabel + Left = 380 + Top = 108 + Width = 24 + Height = 12 + Caption = #38376#24133 + end + object Label7: TLabel + Left = 624 + Top = 84 + Width = 48 + Height = 12 + Caption = #31867' '#22411 + end + object Label10: TLabel + Left = 496 + Top = 40 + Width = 6 + Height = 12 + end + object Label11: TLabel + Left = 488 + Top = 80 + Width = 36 + Height = 12 + Caption = #19994#21153#21592 + end + object Label12: TLabel + Left = 488 + Top = 104 + Width = 36 + Height = 12 + Caption = #36319#21333#21592 + end + object Label5: TLabel + Left = 292 + Top = 12 + Width = 48 + Height = 12 + Caption = #35746' '#21333' '#21495 + end + object Label3: TLabel + Left = 439 + Top = 12 + Width = 48 + Height = 12 + Caption = #20013#25991#21517#31216 + end + object Label6: TLabel + Left = 752 + Top = 12 + Width = 24 + Height = 12 + Caption = #39068#33394 + end + object Label13: TLabel + Left = 600 + Top = 12 + Width = 48 + Height = 12 + Caption = #21592#24037#21517#31216 + end + object Label4: TLabel + Left = 876 + Top = 12 + Width = 36 + Height = 12 + Caption = #21512#21516#21495 + end + object Label15: TLabel + Left = 1028 + Top = 12 + Width = 18 + Height = 12 + Caption = 'PO#' + end + object BegDate: TDateTimePicker + Left = 73 + Top = 9 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 181 + Top = 9 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 1 + end + object MPRTKZ: TEdit + Tag = 2 + Left = 260 + Top = 96 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = MPRTCodeNameChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 404 + Top = 104 + Width = 65 + Height = 20 + TabOrder = 3 + OnChange = MPRTCodeNameChange + end + object CPType: TComboBox + Tag = 2 + Left = 675 + Top = 80 + Width = 68 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 4 + OnChange = TBFindClick + Items.Strings = ( + #27491#21697 + #27425#21697 + #22810#25340 + '') + end + object YWY: TEdit + Tag = 2 + Left = 526 + Top = 76 + Width = 65 + Height = 20 + TabOrder = 5 + OnChange = MPRTCodeNameChange + end + object OrdPerson1: TEdit + Tag = 2 + Left = 526 + Top = 100 + Width = 65 + Height = 20 + TabOrder = 6 + OnChange = MPRTCodeNameChange + end + object orderNo: TEdit + Tag = 2 + Left = 342 + Top = 8 + Width = 80 + Height = 20 + TabOrder = 7 + OnChange = MPRTCodeNameChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 492 + Top = 8 + Width = 80 + Height = 20 + TabOrder = 8 + OnChange = MPRTCodeNameChange + end + object PRTColor: TEdit + Tag = 2 + Left = 778 + Top = 8 + Width = 80 + Height = 20 + TabOrder = 9 + OnChange = MPRTCodeNameChange + end + object filler: TEdit + Tag = 2 + Left = 650 + Top = 8 + Width = 80 + Height = 20 + TabOrder = 10 + OnChange = MPRTCodeNameChange + end + object conNo: TEdit + Tag = 2 + Left = 918 + Top = 8 + Width = 80 + Height = 20 + TabOrder = 11 + OnChange = MPRTCodeNameChange + end + object KHCONNO: TEdit + Tag = 2 + Left = 1050 + Top = 8 + Width = 80 + Height = 20 + TabOrder = 12 + OnChange = MPRTCodeNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 97 + Width = 1183 + Height = 412 + Align = alClient + TabOrder = 3 + object Tv1: TcxGridDBTableView + OnMouseUp = Tv1MouseUp + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Column6 + end + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column11 + end + item + Kind = skSum + Column = v1Column12 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1Column3: TcxGridDBColumn + Caption = #26816#39564#26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 142 + end + object v1Column2: TcxGridDBColumn + Caption = #21592#24037#21517#31216 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column8: TcxGridDBColumn + Caption = 'PO#' + DataBinding.FieldName = 'KHCONNO' + HeaderAlignmentHorz = taCenter + Width = 94 + end + object v1Column5: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'conNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 110 + end + object v2Column1: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 125 + end + object v1Column4: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column6: TcxGridDBColumn + Caption = #21367#25968 + DataBinding.FieldName = 'JQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column12: TcxGridDBColumn + Caption = #38271#24230 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column7: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'MjTypeOther' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 69 + end + object v2Column5: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'KGQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column11: TcxGridDBColumn + Caption = #20928#37325 + DataBinding.FieldName = 'MJQty4' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel4: TPanel + Left = 62 + Top = 139 + Width = 294 + Height = 213 + TabOrder = 4 + Visible = False + object Label14: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 292 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #20107#20214#35828#26126 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + object Image2: TImage + Left = 269 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object RichEdit1: TRichEdit + Left = 1 + Top = 24 + Width = 292 + Height = 188 + Align = alClient + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 77 + Width = 1183 + Height = 20 + Align = alTop + Style = 9 + TabIndex = 0 + TabOrder = 5 + Tabs.Strings = ( + #26410#20837#24211 + #24050#20837#24211 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectBottom = 20 + ClientRectRight = 1183 + ClientRectTop = 19 + end + object MovePanel2: TMovePanel + Left = 408 + Top = 192 + Width = 289 + Height = 49 + BevelInner = bvLowered + Caption = #27491#22312#26597#35810#25968#25454#65292#35831#31245#21518#12290#12290#12290 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 968 + Top = 40 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + CommandTimeout = 60 + Parameters = <> + Left = 984 + Top = 40 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 980 + Top = 4 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 920 + Top = 152 + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 888 + Top = 144 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 896 + Top = 128 + end +end diff --git a/艾登贸易管理/U_CKJYList.pas b/艾登贸易管理/U_CKJYList.pas new file mode 100644 index 0000000..91fadda --- /dev/null +++ b/艾登贸易管理/U_CKJYList.pas @@ -0,0 +1,289 @@ +unit U_CKJYList; + +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, MovePanel, cxButtonEdit, + cxCalendar, cxPC; + +type + TfrmCKJYList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + cxGridPopupMenu1: TcxGridPopupMenu; + Label1: TLabel; + Label2: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + CDS_Main: TClientDataSet; + Label8: TLabel; + MPRTKZ: TEdit; + Label9: TLabel; + MPRTMF: TEdit; + Label7: TLabel; + CPType: TComboBox; + MovePanel2: TMovePanel; + Label10: TLabel; + Label11: TLabel; + Label12: TLabel; + YWY: TEdit; + OrdPerson1: TEdit; + cxGrid2: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column3: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + cxGrid2Level1: TcxGridLevel; + orderNo: TEdit; + Label5: TLabel; + Label3: TLabel; + MPRTCodeName: TEdit; + Label6: TLabel; + PRTColor: TEdit; + Label13: TLabel; + filler: TEdit; + v1Column2: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + conNo: TEdit; + Label4: TLabel; + Panel4: TPanel; + Label14: TLabel; + Panel10: TPanel; + Image2: TImage; + RichEdit1: TRichEdit; + v1Column8: TcxGridDBColumn; + KHCONNO: TEdit; + Label15: TLabel; + cxTabControl1: TcxTabControl; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure MPRTCodeNameChange(Sender: TObject); + procedure v1Column5PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure PRTColorChange(Sender: TObject); + procedure Tv1MouseUp(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Image2Click(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + private + FLeft,FTop:Integer; + procedure InitGrid(); + { Private declarations } + public + { Public declarations } + end; + +var + frmCKJYList: TfrmCKJYList; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmCKJYList.FormDestroy(Sender: TObject); +begin + frmCKJYList:=nil; +end; + +procedure TfrmCKJYList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmCKJYList.FormCreate(Sender: TObject); +begin + //cxGrid1.Align:=alClient; + BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp) +end; + +procedure TfrmCKJYList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + Filtered:=False; + sql.Add('select convert(char(10),A.FillTime,120) as CRTime,A.Filler,A.mainID,A.MjTypeOther,C.OrderNo,C.MPRTCodeName,C.conNo,D.PrtColor,'); + sql.Add('count(A.MainId) as JQty,SUM(A.MJlen) as Qty,SUM(A.MJmaoZ) as KGQty,SUM(A.MJQty4) as MJQty4,'); + sql.Add('khconNO=(select top 1 khconNo from JYOrderCon_Main X where X.conNO=C.conNO)'); + sql.Add('from WFB_MJJY A '); + sql.Add('inner join JYOrder_Main C on C.MainId=A.MainId '); + sql.Add('inner join JYOrder_sub D on D.subID=A.subID '); + Sql.add('where A.FillTime>='''+formatdateTime('yyyy-MM-dd',begdate.Date)+''' '); + Sql.add('and A.FillTime<'''+formatdateTime('yyyy-MM-dd',enddate.Date+1)+''' '); + IF cxTabControl1.TabIndex=0 then + Sql.add('and not exists(select MJID from CK_BanCP_KC X where X.MJID=A.MJID) ') + else + IF cxTabControl1.TabIndex=1 then + Sql.add('and exists(select MJID from CK_BanCP_KC X where X.MJID=A.MJID) '); + Sql.add('group by convert(char(10),A.FillTime,120),A.Filler,A.mainID,A.MjTypeOther,C.OrderNo,C.MPRTCodeName,C.conNo,D.PrtColor'); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmCKJYList.TBRafreshClick(Sender: TObject); +begin + //BegDate.SetFocus; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + InitGrid(); + MovePanel2.Visible:=False; +end; + +procedure TfrmCKJYList.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + end; +end; + +procedure TfrmCKJYList.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption+tv1.Name,Tv1,'Ʒֿ'); + Close; +end; + +procedure TfrmCKJYList.FormShow(Sender: TObject); +begin + + ReadCxGrid(self.Caption+tv1.Name,Tv1,'Ʒֿ'); + if Trim(DParameters2)='' then + begin + //v1Column5.Options.Focusing:=True; + end else + begin + //v1Column5.Options.Focusing:=False; + end; + //InitGrid(); +end; + +procedure TfrmCKJYList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then exit; + TcxGridToExcel('б',cxGrid2); +end; + +procedure TfrmCKJYList.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 TfrmCKJYList.MPRTCodeNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCKJYList.v1Column5PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='SOrdDefStr10'; + flagname:='ŵص'; + if ShowModal=1 then + begin + with CDS_Main do + begin + Edit; + FieldByName('SOrdDefStr10').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrder_Sub Set SOrdDefStr10='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + sql.Add(' where SubId='''+Trim(Self.CDS_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmCKJYList.PRTColorChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCKJYList.Tv1MouseUp(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); +begin + FLeft:=X; + FTop:=Y; +end; + +procedure TfrmCKJYList.Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + Panel4.Left:=FLeft; + Panel4.Top:=FTop+110; + Panel4.Visible:=True; + Panel10.Caption:=Trim(TV1.Controller.FocusedColumn.Caption); + RichEdit1.Text:=CDS_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString; + application.ProcessMessages; +end; + +procedure TfrmCKJYList.Image2Click(Sender: TObject); +begin + Panel4.Visible:=False; +end; + +procedure TfrmCKJYList.cxTabControl1Change(Sender: TObject); +begin + TBRafresh.Click; +end; + +end. diff --git a/艾登贸易管理/U_CKProductBCPHCList.dfm b/艾登贸易管理/U_CKProductBCPHCList.dfm new file mode 100644 index 0000000..94ffdf8 --- /dev/null +++ b/艾登贸易管理/U_CKProductBCPHCList.dfm @@ -0,0 +1,390 @@ +object frmCKProductBCPHCList: TfrmCKProductBCPHCList + Left = 128 + Top = 152 + Width = 1027 + Height = 511 + Caption = #25104#21697#22238#20179#21015#34920 + 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 = 1019 + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBExport: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + end + object TBClose: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1019 + Height = 72 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 357 + Top = 12 + Width = 48 + Height = 12 + Caption = #20013#25991#21517#31216 + end + object Label4: TLabel + Left = 526 + Top = 12 + Width = 24 + Height = 12 + Caption = #39068#33394 + end + object Label1: TLabel + Left = 28 + Top = 12 + Width = 48 + Height = 12 + Caption = #26597#35810#26102#38388 + end + object Label2: TLabel + Left = 64 + Top = 36 + Width = 12 + Height = 12 + Caption = #33267 + end + object Label5: TLabel + Left = 178 + Top = 12 + Width = 48 + Height = 12 + Caption = #35746' '#21333' '#21495 + end + object Label6: TLabel + Left = 178 + Top = 36 + Width = 48 + Height = 12 + Caption = #26465' '#30721 + end + object Label8: TLabel + Left = 357 + Top = 36 + Width = 48 + Height = 12 + Caption = #20811' '#37325 + end + object Label9: TLabel + Left = 526 + Top = 36 + Width = 24 + Height = 12 + Caption = #38376#24133 + end + object Label7: TLabel + Left = 648 + Top = 36 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 406 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 0 + OnChange = MPRTCodeNameChange + end + object PRTColor: TEdit + Tag = 2 + Left = 550 + Top = 9 + Width = 65 + Height = 20 + TabOrder = 1 + OnChange = MPRTCodeNameChange + end + object BegDate: TDateTimePicker + Left = 77 + Top = 9 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 2 + end + object EndDate: TDateTimePicker + Left = 77 + Top = 33 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 3 + end + object orderNo: TEdit + Tag = 2 + Left = 228 + Top = 9 + Width = 109 + Height = 20 + TabOrder = 4 + OnChange = MPRTCodeNameChange + end + object MJID: TEdit + Tag = 2 + Left = 228 + Top = 33 + Width = 109 + Height = 20 + TabOrder = 5 + OnChange = MPRTCodeNameChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 406 + Top = 33 + Width = 100 + Height = 20 + TabOrder = 6 + OnChange = MPRTCodeNameChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 550 + Top = 32 + Width = 65 + Height = 20 + TabOrder = 7 + OnChange = MPRTCodeNameChange + end + object CPType: TComboBox + Tag = 2 + Left = 674 + Top = 32 + Width = 68 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 8 + OnChange = TBFindClick + Items.Strings = ( + #27491#21697 + #27425#21697 + '') + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 105 + Width = 1019 + Height = 369 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skCount + Column = v1Column6 + end + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + Column = v2Column6 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1Column1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v2Column1: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 92 + end + object v2Column3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 77 + end + object v1Column8: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column9: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + HeaderAlignmentHorz = taCenter + Width = 59 + end + object v1Column6: TcxGridDBColumn + Caption = #26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 92 + end + object v1Column3: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'CPType' + HeaderAlignmentHorz = taCenter + Width = 63 + end + object v1Column2: TcxGridDBColumn + Caption = #22238#20179#26102#38388 + DataBinding.FieldName = 'CRTime' + HeaderAlignmentHorz = taCenter + Width = 107 + end + object v2Column5: TcxGridDBColumn + Caption = #22238#20179#20844#26020#25968 + DataBinding.FieldName = 'KGQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 83 + end + object v2Column6: TcxGridDBColumn + Caption = #22238#20179#38271#24230 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 85 + end + object v1Column7: TcxGridDBColumn + Caption = #38271#24230#21333#20301 + DataBinding.FieldName = 'QtyUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 83 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 968 + Top = 40 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 984 + Top = 40 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 944 + Top = 32 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 920 + Top = 152 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 144 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 896 + Top = 128 + end +end diff --git a/艾登贸易管理/U_CKProductBCPHCList.pas b/艾登贸易管理/U_CKProductBCPHCList.pas new file mode 100644 index 0000000..35db25e --- /dev/null +++ b/艾登贸易管理/U_CKProductBCPHCList.pas @@ -0,0 +1,182 @@ +unit U_CKProductBCPHCList; + +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; + +type + TfrmCKProductBCPHCList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + cxGridPopupMenu1: TcxGridPopupMenu; + Label3: TLabel; + Label4: TLabel; + MPRTCodeName: TEdit; + PRTColor: TEdit; + Label1: TLabel; + Label2: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + CDS_Main: TClientDataSet; + Tv1: TcxGridDBTableView; + cxGrid2Level1: TcxGridLevel; + cxGrid2: TcxGrid; + v2Column1: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + Label5: TLabel; + orderNo: TEdit; + Label6: TLabel; + MJID: TEdit; + v1Column7: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + Label8: TLabel; + MPRTKZ: TEdit; + Label9: TLabel; + MPRTMF: TEdit; + Label7: TLabel; + CPType: TComboBox; + v1Column3: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure MPRTCodeNameChange(Sender: TObject); + private + procedure InitGrid(); + { Private declarations } + public + { Public declarations } + end; + +var + frmCKProductBCPHCList: TfrmCKProductBCPHCList; + +implementation +uses + U_DataLink,U_Fun; + +{$R *.dfm} + +procedure TfrmCKProductBCPHCList.FormDestroy(Sender: TObject); +begin + frmCKProductBCPHCList:=nil; +end; + +procedure TfrmCKProductBCPHCList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmCKProductBCPHCList.FormCreate(Sender: TObject); +begin + //cxGrid1.Align:=alClient; + BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp) +end; + +procedure TfrmCKProductBCPHCList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + SQL.Add('select A.*,B.OrderNo,B.MPRTCodeName,C.PRTColor,B.MPRTMF,B.MPRTKZ'); + sql.add('from CK_BanCP_CR A '); + Sql.add(' inner join JYOrder_Main B on A.MainId=B.MainId'); + Sql.add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); + Sql.add(' inner join WFB_MJJY D on A.MJId=D.MJId'); + sql.add('where A.CRTime>=:begdate and A.CRTime<:enddate'); + SQL.Add(' and CRType=''ز'' '); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime)); + Parameters.ParamByName('enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',enddate.DateTime+1)); + Open; + //ShowMessage(SQL.Text); + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmCKProductBCPHCList.TBRafreshClick(Sender: TObject); +begin + BegDate.SetFocus; + InitGrid(); +end; + +procedure TfrmCKProductBCPHCList.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + end; +end; + +procedure TfrmCKProductBCPHCList.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ֿزб',Tv1,'Ʒֿ'); + Close; +end; + +procedure TfrmCKProductBCPHCList.FormShow(Sender: TObject); +begin + + ReadCxGrid('ֿزб',Tv1,'Ʒֿ'); + + InitGrid(); +end; + +procedure TfrmCKProductBCPHCList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then exit; + TcxGridToExcel('زб',cxGrid2); +end; + +procedure TfrmCKProductBCPHCList.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 TfrmCKProductBCPHCList.MPRTCodeNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +end. diff --git a/艾登贸易管理/U_CKProductBCPInList.dfm b/艾登贸易管理/U_CKProductBCPInList.dfm new file mode 100644 index 0000000..3f4b865 --- /dev/null +++ b/艾登贸易管理/U_CKProductBCPInList.dfm @@ -0,0 +1,1062 @@ +object frmCKProductBCPInList: TfrmCKProductBCPInList + Left = 117 + Top = 145 + Width = 1127 + Height = 526 + Caption = #25104#21697#20837#24211#21015#34920 + 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 = 1111 + Height = 33 + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBExport: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBRKCX: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25764#38144#20837#24211 + ImageIndex = 105 + Visible = False + OnClick = TBRKCXClick + end + object TBBao: TToolButton + Left = 276 + Top = 0 + AutoSize = True + Caption = #21253#26465#30721#37325#25171 + ImageIndex = 60 + Visible = False + OnClick = TBBaoClick + end + object TBRKD: TToolButton + Left = 375 + Top = 0 + Caption = #20837#24211#21333#37325#25171 + ImageIndex = 29 + Visible = False + OnClick = TBRKDClick + end + object TBPrint: TToolButton + Left = 470 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object ComboBox1: TComboBox + Left = 533 + Top = 3 + Width = 145 + Height = 24 + Style = csDropDownList + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 16 + ParentFont = False + TabOrder = 0 + Items.Strings = ( + #24120#21457#23545#20844#30721#21333 + #24120#21457#23545#20844#30721#21333'_'#21547#37325#37327#29255#25968 + #35895#29956#23545#20844#30721#21333 + #29616#37329#30721#21333 + #24120#21457#23545#20844#30721#21333'_'#23567 + #35895#29956#23545#20844#30721#21333'_'#23567 + #29616#37329#30721#21333'_'#23567 + '') + end + object TBClose: TToolButton + Left = 678 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1111 + Height = 84 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 373 + Top = 12 + Width = 48 + Height = 12 + Caption = #20013#25991#21517#31216 + end + object Label4: TLabel + Left = 530 + Top = 12 + Width = 24 + Height = 12 + Caption = #39068#33394 + end + object Label1: TLabel + Left = 20 + Top = 12 + Width = 48 + Height = 12 + Caption = #26597#35810#26102#38388 + end + object Label2: TLabel + Left = 56 + Top = 36 + Width = 12 + Height = 12 + Caption = #33267 + end + object Label5: TLabel + Left = 226 + Top = 12 + Width = 48 + Height = 12 + Caption = #35746' '#21333' '#21495 + end + object Label6: TLabel + Left = 226 + Top = 36 + Width = 48 + Height = 12 + Caption = #26465' '#30721 + end + object Label8: TLabel + Left = 373 + Top = 36 + Width = 48 + Height = 12 + Caption = #20811' '#37325 + end + object Label9: TLabel + Left = 530 + Top = 36 + Width = 24 + Height = 12 + Caption = #38376#24133 + end + object Label7: TLabel + Left = 658 + Top = 36 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object Label10: TLabel + Left = 658 + Top = 12 + Width = 24 + Height = 12 + Caption = #32568#21495 + end + object Label11: TLabel + Left = 770 + Top = 12 + Width = 48 + Height = 12 + Caption = #21367' '#21495 + end + object Label12: TLabel + Left = 770 + Top = 36 + Width = 48 + Height = 12 + Caption = #20837#24211#21333#21495 + end + object Label14: TLabel + Left = 226 + Top = 60 + Width = 48 + Height = 12 + Caption = #21512' '#21516' '#21495 + end + object Label15: TLabel + Left = 374 + Top = 60 + Width = 48 + Height = 12 + Caption = #23458' '#25143 + end + object Label16: TLabel + Left = 518 + Top = 60 + Width = 36 + Height = 12 + Caption = #32568#26465#30721 + end + object Label17: TLabel + Left = 658 + Top = 60 + Width = 24 + Height = 12 + Caption = #27454#21495 + end + object Label18: TLabel + Left = 770 + Top = 60 + Width = 48 + Height = 12 + Caption = #24211' '#20301 + end + object Label19: TLabel + Left = 916 + Top = 12 + Width = 48 + Height = 12 + Caption = #26159#21542#25171#21253 + end + object Label20: TLabel + Left = 916 + Top = 34 + Width = 48 + Height = 12 + Caption = #19994' '#21153' '#21592 + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 422 + Top = 9 + Width = 90 + Height = 20 + TabOrder = 0 + OnChange = MPRTCodeNameChange + end + object BegDate: TDateTimePicker + Left = 69 + Top = 9 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 1 + end + object EndDate: TDateTimePicker + Left = 69 + Top = 33 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 2 + end + object orderNo: TEdit + Tag = 2 + Left = 276 + Top = 9 + Width = 90 + Height = 20 + TabOrder = 3 + OnChange = orderNoChange + OnKeyPress = orderNoKeyPress + end + object MJID: TEdit + Tag = 2 + Left = 276 + Top = 33 + Width = 90 + Height = 20 + TabOrder = 4 + OnChange = MPRTCodeNameChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 422 + Top = 33 + Width = 90 + Height = 20 + TabOrder = 5 + OnChange = MPRTCodeNameChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 560 + Top = 32 + Width = 80 + Height = 20 + TabOrder = 6 + OnChange = MPRTCodeNameChange + end + object CPType: TComboBox + Tag = 2 + Left = 685 + Top = 32 + Width = 70 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 7 + OnChange = TBFindClick + Items.Strings = ( + #27491#21697 + #27425#21697 + #22810#25340 + '' + '') + end + object PRTColor: TComboBox + Tag = 1 + Left = 560 + Top = 8 + Width = 80 + Height = 20 + ItemHeight = 12 + TabOrder = 8 + OnChange = PRTColorChange + end + object AOrdDefStr1: TComboBox + Tag = 1 + Left = 685 + Top = 8 + Width = 70 + Height = 20 + ItemHeight = 12 + TabOrder = 9 + OnChange = AOrdDefStr1Change + end + object MJXHM: TEdit + Tag = 1 + Left = 818 + Top = 8 + Width = 70 + Height = 20 + TabOrder = 10 + OnChange = MPRTCodeNameChange + end + object CheckBox1: TCheckBox + Left = 32 + Top = 56 + Width = 97 + Height = 17 + Caption = #20840#36873 + TabOrder = 11 + OnClick = CheckBox1Click + end + object RKOrdID: TEdit + Tag = 1 + Left = 818 + Top = 32 + Width = 70 + Height = 20 + TabOrder = 12 + OnChange = MPRTCodeNameChange + end + object conNo: TEdit + Tag = 2 + Left = 276 + Top = 57 + Width = 90 + Height = 20 + TabOrder = 13 + OnChange = MPRTCodeNameChange + end + object customerNoName: TEdit + Tag = 2 + Left = 422 + Top = 57 + Width = 90 + Height = 20 + TabOrder = 14 + OnChange = MPRTCodeNameChange + end + object APID: TEdit + Tag = 2 + Left = 560 + Top = 57 + Width = 80 + Height = 20 + TabOrder = 15 + OnChange = MPRTCodeNameChange + end + object PRTKuanNO: TEdit + Tag = 2 + Left = 685 + Top = 56 + Width = 70 + Height = 20 + TabOrder = 16 + OnChange = MPRTCodeNameChange + end + object begtime: TDateTimePicker + Left = 153 + Top = 8 + Width = 55 + Height = 20 + Date = 39780.000000000000000000 + Format = 'HH:mm' + Time = 39780.000000000000000000 + Kind = dtkTime + TabOrder = 17 + end + object endTime: TDateTimePicker + Left = 153 + Top = 32 + Width = 55 + Height = 20 + Date = 39780.999317129630000000 + Format = 'HH:mm' + Time = 39780.999317129630000000 + Kind = dtkTime + TabOrder = 18 + end + object RKPlace: TEdit + Tag = 2 + Left = 818 + Top = 56 + Width = 70 + Height = 20 + TabOrder = 19 + OnChange = MPRTCodeNameChange + end + object ISbao: TComboBox + Left = 968 + Top = 8 + Width = 75 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 20 + OnChange = ISbaoChange + Items.Strings = ( + '' + '' + #24050#25171#21253 + #26410#25171#21253) + end + object OrdPerson2: TEdit + Tag = 2 + Left = 968 + Top = 30 + Width = 75 + Height = 20 + TabOrder = 21 + OnChange = MPRTCodeNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 117 + Width = 1111 + Height = 370 + Align = alClient + PopupMenu = PopupMenu1 + TabOrder = 2 + object Tv1: TcxGridDBTableView + OnMouseUp = Tv1MouseUp + Navigator.Buttons.CustomButtons = <> + OnCellClick = Tv1CellClick + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skCount + Column = v1Column5 + end + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + Column = v2Column6 + end + item + Kind = skSum + Column = v1Column15 + end + item + Kind = skSum + Column = v1Column16 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 40 + end + object v1Column24: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'customerNoName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object v1Column1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 74 + end + object v2Column1: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 92 + end + object v1Column10: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'AOrdDefStr1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 55 + end + object v2Column3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object v1Column18: TcxGridDBColumn + Caption = #39068#33394'('#33521#25991')' + DataBinding.FieldName = 'SOrddefstr4' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 87 + end + object v1Column11: TcxGridDBColumn + Caption = #33457#22411#33457#21495 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column17: TcxGridDBColumn + Caption = #21253#26465#30721 + DataBinding.FieldName = 'baoID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column8: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column9: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 59 + end + object v1Column6: TcxGridDBColumn + Caption = #26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 92 + end + object v1Column13: TcxGridDBColumn + Caption = #20837#24211#21333#21495 + DataBinding.FieldName = 'RKOrdID' + Options.Editing = False + Width = 57 + end + object v1Column21: TcxGridDBColumn + Caption = #32568#26465#30721 + DataBinding.FieldName = 'APID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column14: TcxGridDBColumn + Caption = #24211#20301 + DataBinding.FieldName = 'RKPlace' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 54 + end + object v1Column5: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column12: TcxGridDBColumn + Caption = #21253#21495 + DataBinding.FieldName = 'BaoNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 52 + end + object v1Column3: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'CPType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 63 + end + object v1Column2: TcxGridDBColumn + Caption = #20837#24211#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 107 + end + object v1Column15: TcxGridDBColumn + Caption = #30382#37325 + DataBinding.FieldName = 'MJqty3' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 59 + end + object v1Column16: TcxGridDBColumn + Caption = #20928#37325 + DataBinding.FieldName = 'MJqty4' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 51 + end + object v2Column5: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'KGQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 61 + end + object v2Column6: TcxGridDBColumn + Caption = #20837#24211#38271#24230 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 85 + end + object v1Column7: TcxGridDBColumn + Caption = #38271#24230#21333#20301 + DataBinding.FieldName = 'QtyUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 83 + end + object v1Column19: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'conNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column20: TcxGridDBColumn + Caption = 'PO#' + DataBinding.FieldName = 'KHconNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column22: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column23: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'PRTKuanNO' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column25: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson2' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel4: TPanel + Left = 62 + Top = 139 + Width = 294 + Height = 213 + TabOrder = 3 + Visible = False + object Label13: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 292 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #20107#20214#35828#26126 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + object Image2: TImage + Left = 269 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object RichEdit1: TRichEdit + Left = 1 + Top = 24 + Width = 292 + Height = 188 + Align = alClient + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + end + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + CommandTimeout = 60 + Parameters = <> + Left = 956 + Top = 144 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1004 + Top = 124 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + CommandTimeout = 60 + Parameters = <> + Left = 928 + Top = 148 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 832 + Top = 176 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 144 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 896 + Top = 128 + 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 = 368 + Top = 168 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_PRT + Left = 472 + Top = 224 + 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 = 432 + Top = 224 + end + object RMDBHZ: TRMDBDataSet + Visible = True + DataSet = CDS_HZ + Left = 600 + Top = 224 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 568 + Top = 224 + end + object CDS_PRT: TClientDataSet + Aggregates = <> + Params = <> + Left = 512 + Top = 224 + 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 + object RM2: 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 = RMDBMain10 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 648 + Top = 168 + ReportData = {} + end + object RMDBMain10: TRMDBDataSet + Visible = True + DataSet = CDS_PRT + Left = 592 + Top = 264 + end + object ClientDataSet1: TClientDataSet + Aggregates = <> + Params = <> + Left = 544 + Top = 288 + end + object RM3: 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 472 + Top = 192 + ReportData = {} + end + object RMDBMX: TRMDBDataSet + Visible = True + DataSet = CDS_JuanPRT + Left = 384 + Top = 288 + end + object CDS_BaoNo: TClientDataSet + Aggregates = <> + Params = <> + Left = 600 + Top = 336 + end + object CDS_Juan: TClientDataSet + Aggregates = <> + Params = <> + Left = 632 + Top = 336 + end + object CDS_JuanPRT: TClientDataSet + Aggregates = <> + Params = <> + Left = 664 + Top = 336 + end + object CDS_CX: TClientDataSet + Aggregates = <> + Params = <> + Left = 696 + Top = 336 + end + object CDS_BaoPRT: TClientDataSet + Aggregates = <> + Params = <> + Left = 560 + Top = 336 + end + object CDS_WXPTPrint: TClientDataSet + Aggregates = <> + Params = <> + Left = 736 + Top = 260 + end + object CDS_WXPT: TClientDataSet + Aggregates = <> + Params = <> + Left = 772 + Top = 260 + end + object RMDBWXPTPrint: TRMDBDataSet + Visible = True + DataSet = CDS_WXPTPrint + Left = 700 + Top = 260 + end + object RMDBPRT: TRMDBDataSet + Visible = True + DataSet = CDS_PRT + Left = 472 + Top = 340 + end +end diff --git a/艾登贸易管理/U_CKProductBCPInList.pas b/艾登贸易管理/U_CKProductBCPInList.pas new file mode 100644 index 0000000..1981ad4 --- /dev/null +++ b/艾登贸易管理/U_CKProductBCPInList.pas @@ -0,0 +1,1557 @@ +unit U_CKProductBCPInList; + +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, + cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; + +type + TfrmCKProductBCPInList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + cxGridPopupMenu1: TcxGridPopupMenu; + Label3: TLabel; + Label4: TLabel; + MPRTCodeName: TEdit; + Label1: TLabel; + Label2: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + CDS_Main: TClientDataSet; + Label5: TLabel; + orderNo: TEdit; + Label6: TLabel; + MJID: TEdit; + Label8: TLabel; + MPRTKZ: TEdit; + Label9: TLabel; + MPRTMF: TEdit; + Label7: TLabel; + CPType: TComboBox; + cxGrid2: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column1: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + cxGrid2Level1: TcxGridLevel; + Label10: TLabel; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + RMDBHZ: TRMDBDataSet; + CDS_HZ: TClientDataSet; + CDS_PRT: TClientDataSet; + TBRKCX: TToolButton; + v1Column4: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + v1Column11: TcxGridDBColumn; + PRTColor: TComboBox; + v1Column12: TcxGridDBColumn; + v1Column13: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + AOrdDefStr1: TComboBox; + v1Column15: TcxGridDBColumn; + v1Column16: TcxGridDBColumn; + TBBao: TToolButton; + TBRKD: TToolButton; + ComboBox1: TComboBox; + RM2: TRMGridReport; + RMDBMain10: TRMDBDataSet; + ClientDataSet1: TClientDataSet; + RM3: TRMGridReport; + RMDBMX: TRMDBDataSet; + CDS_BaoNo: TClientDataSet; + CDS_Juan: TClientDataSet; + CDS_JuanPRT: TClientDataSet; + CDS_CX: TClientDataSet; + CDS_BaoPRT: TClientDataSet; + CDS_WXPTPrint: TClientDataSet; + CDS_WXPT: TClientDataSet; + RMDBWXPTPrint: TRMDBDataSet; + MJXHM: TEdit; + Label11: TLabel; + CheckBox1: TCheckBox; + Label12: TLabel; + RKOrdID: TEdit; + Panel4: TPanel; + Label13: TLabel; + Panel10: TPanel; + Image2: TImage; + RichEdit1: TRichEdit; + v1Column17: TcxGridDBColumn; + v1Column18: TcxGridDBColumn; + v1Column19: TcxGridDBColumn; + v1Column20: TcxGridDBColumn; + conNo: TEdit; + Label14: TLabel; + customerNoName: TEdit; + Label15: TLabel; + APID: TEdit; + Label16: TLabel; + v1Column21: TcxGridDBColumn; + v1Column22: TcxGridDBColumn; + v1Column23: TcxGridDBColumn; + Label17: TLabel; + PRTKuanNO: TEdit; + begtime: TDateTimePicker; + endTime: TDateTimePicker; + Label18: TLabel; + RKPlace: TEdit; + Label19: TLabel; + ISbao: TComboBox; + RMDBPRT: TRMDBDataSet; + v1Column24: TcxGridDBColumn; + v1Column25: TcxGridDBColumn; + OrdPerson2: TEdit; + Label20: TLabel; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure MPRTCodeNameChange(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure orderNoChange(Sender: TObject); + procedure orderNoKeyPress(Sender: TObject; var Key: Char); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure TBRKCXClick(Sender: TObject); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure PRTColorChange(Sender: TObject); + procedure AOrdDefStr1Change(Sender: TObject); + procedure TBBaoClick(Sender: TObject); + procedure TBRKDClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure Image2Click(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Tv1MouseUp(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure ISbaoChange(Sender: TObject); + + private + procedure InitGrid(); + procedure GetBaleData(); + procedure GetBaoData(); + procedure GetJuanData(); + procedure GetLotData(); + procedure Print_WXPT(); + { Private declarations } + public + FLeft,FTop:Integer; + { Public declarations } + end; + +var + frmCKProductBCPInList: TfrmCKProductBCPInList; + +implementation +uses + U_DataLink,U_Fun; + +{$R *.dfm} + +procedure TfrmCKProductBCPInList.FormDestroy(Sender: TObject); +begin + frmCKProductBCPInList:=nil; +end; + + +procedure TfrmCKProductBCPInList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmCKProductBCPInList.FormCreate(Sender: TObject); +begin + //cxGrid1.Align:=alClient; + BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp) +end; + +procedure TfrmCKProductBCPInList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + SQL.Add('select A.*,B.customerNoName,B.OrdPerson2,B.OrderNo,B.conNo,B.MPRTCodeName,B.MPRTSpec,B.MprtkuanNo,C.prtkuanNo,C.PRTColor,C.SOrddefstr4,B.MPRTMF,B.MPRTKZ,D.MJXH,C.PRTHX,D.MJQty3,D.MJQty4'); + sql.Add(',isnull(customerNoName,B.OrderNo) KHName'); + sql.Add(',KHConNo=(select Top 1 KHConNo from JYOrderCon_Main JCM where JCM.ConNo=B.OrderNo)'); + sql.Add(',MPRTECodeName=(select Top 1 MPRTCodeName from JYOrderCon_Main JCM where JCM.ConNo=B.OrderNo)'); + sql.Add(',D.mjstr4 as AOrdDefStr1,cast(D.MJXH as varchar) as MJXHM'); + sql.add('from CK_BanCP_CR A '); + Sql.add(' inner join JYOrder_Main B on A.MainId=B.MainId'); + Sql.add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); + Sql.add(' inner join WFB_MJJY D on A.MJId=D.MJId'); + // sql.Add(' inner join JYOrder_Sub_AnPai E on A.APID=E.APID'); + sql.add('where A.FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime)+' '+FormatDateTime('HH:mm',BegTime.Time))+''''); + sql.Add(' and A.FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',enddate.DateTime)+' '+FormatDateTime('HH:mm',endTime.Time))+''''); + SQL.Add(' and CRType='''' '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmCKProductBCPInList.TBRafreshClick(Sender: TObject); +begin + BegDate.SetFocus; + InitGrid(); +end; + +procedure TfrmCKProductBCPInList.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + end; +end; + +procedure TfrmCKProductBCPInList.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ʒֿ',Tv1,'Ʒֿ'); + Close; +end; + +procedure TfrmCKProductBCPInList.FormShow(Sender: TObject); +begin + + ReadCxGrid('Ʒֿ',Tv1,'Ʒֿ'); + if Trim(DParameters2)='' then + begin + TBRKCX.Visible:=True; + TBBao.Visible:=True; + TBRKD.Visible:=True; + end else + begin + // v1Column4.Visible:=False; + TBBao.Visible:=False; + TBRKD.Visible:=False; + end; + + if Trim(DParameters2)='ҵԱ' then + begin + OrdPerson2.Text:=Dname; + OrdPerson2.Enabled:=false; + end; + //InitGrid(); +end; + +procedure TfrmCKProductBCPInList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then exit; + TcxGridToExcel('б',cxGrid2); +end; + +procedure TfrmCKProductBCPInList.TBFindClick(Sender: TObject); +var + fsj,fwhere:String; +begin + if ADOQueryMain.Active=False then Exit; + + fwhere:=SGetFilters(Panel1,1,2); + fsj:=''; + if trim(ISbao.Text)='Ѵ' then + begin + fsj:=fsj+' baoNo>''0'' '; + end else + if trim(ISbao.Text)='δ' then + begin + fsj:=fsj+' baoNo='''' '; + end; + + IF trim(fsj)<>'' then + begin + IF fwhere='' then fwhere:=fsj + else fwhere:=fwhere+' and '+fsj; + end; + + SDofilter(ADOQueryMain,fwhere); + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); +end; + +procedure TfrmCKProductBCPinList.Print_WXPT(); +var + j,z:Integer; + FGangNo,FHZ:String; +begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.add('exec P_Print_CKMD1 '); + sql.add('@mainID='+quotedstr(Trim(CDS_Main.FieldByName('RKOrdID').AsString))); + sql.add(',@DName='+quotedstr(Trim(DCode))); + Open; + end; + SCreateCDS20(ADOQueryCmd,CDS_WXPT); + SInitCDSData20(ADOQueryCmd,CDS_WXPT); + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select MainId=Cast('''' as varchar(20)),SubId=Cast('''' as varchar(20)),PONO=Cast('''' as varchar(20)),InvNo=Cast('''' as varchar(20)),'); + sql.Add(' PRTColor=Cast('''' as varchar(20)),GangNo=Cast('''' as varchar(20)),BaoNo=Cast('''' as varchar(20)),MZQty=Cast(0 as decimal(18,2)),'); + sql.Add(' RollNo0=Cast('''' as varchar(20)),RollNo1=Cast('''' as varchar(20)),RollNo2=Cast('''' as varchar(20)),ITEM=Cast('''' as varchar(20)),'); + sql.Add(' LenQty0=Cast(0 as decimal(18,2)),LenQty1=Cast(0 as decimal(18,2)),LenQty2=Cast(0 as decimal(18,2)),'); + sql.Add(' KGQty0=Cast(0 as decimal(18,2)),KGQty1=Cast(0 as decimal(18,2)),KGQty2=Cast(0 as decimal(18,2)),'); + sql.Add(' MKGQty0=Cast(0 as decimal(18,2)),MKGQty1=Cast(0 as decimal(18,2)),MKGQty2=Cast(0 as decimal(18,2)),'); + sql.Add(' ZS0=Cast(0 as decimal(18,2)),Zs1=Cast(0 as decimal(18,2)),Zs2=Cast(0 as decimal(18,2)),'); + sql.add(' CRTime=cast(null as datetime),JQty=Cast(0 as decimal(18,2)),XH=Cast(0 as int),SumlenQty=Cast(0 as decimal(18,2)),SumRoll=Cast(0 as decimal(18,2)),'); + sql.Add(' SumRollGanNo=Cast(0 as decimal(18,2)),SumRollColor=Cast(0 as decimal(18,2)),SumZJ=Cast(0 as decimal(18,2)),'); + sql.add(' QtyUnit=cast('''' as varchar(20))'); + Open; + end; + SCreateCDS20(ADOQueryCmd,CDS_WXPTPrint); + SInitCDSData20(ADOQueryCmd,CDS_WXPTPrint); + if CDS_WXPTPrint.IsEmpty=False then + begin + CDS_WXPTPrint.Delete; + end; + j:=0;z:=0;FGangNo:=''; + CDS_WXPT.DisableControls; + CDS_WXPTPrint.DisableControls; + with CDS_WXPT do + begin + First; + while not Eof do + begin + with CDS_WXPTPrint do + begin + if CDS_WXPTPrint.IsEmpty then + begin + CDS_WXPTPrint.Append; + CDS_WXPTPrint.FieldByName('MZQty').Value:=CDS_WXPT.fieldbyname('KGQty').Value; + CDS_WXPTPrint.FieldByName('INVNO').Value:=CDS_WXPT.fieldbyname('orderno').Value; + CDS_WXPTPrint.FieldByName('GangNo').Value:=CDS_WXPT.fieldbyname('GangNo').Value; + CDS_WXPTPrint.FieldByName('BaoNo').Value:=CDS_WXPT.fieldbyname('BaoNo').Value; + CDS_WXPTPrint.FieldByName('PONO').Value:=CDS_WXPT.fieldbyname('PONO').Value; + CDS_WXPTPrint.FieldByName('QtyUnit').Value:=trim(CDS_WXPT.fieldbyname('QtyUnit').Asstring); + CDS_WXPTPrint.FieldByName('CRTime').Value:=CDS_WXPT.fieldbyname('CRTime').asdatetime; + CDS_WXPTPrint.FieldByName('PRTColor').Value:=CDS_WXPT.fieldbyname('PRTColor').Value; + CDS_WXPTPrint.FieldByName('XH').Value:=0; + CDS_WXPTPrint.FieldByName('LenQty0').Value:=CDS_WXPT.fieldbyname('qty').AsFloat; + CDS_WXPTPrint.FieldByName('Zs0').Value:=CDS_WXPT.fieldbyname('MjQty2').AsFloat; + CDS_WXPTPrint.FieldByName('RollNo0').Value:=CDS_WXPT.fieldbyname('RollNo').Value; + CDS_WXPTPrint.FieldByName('MKGQty0').Value:=CDS_WXPT.fieldbyname('KGQty').AsFloat; + CDS_WXPTPrint.FieldByName('KGQty0').Value:=CDS_WXPT.fieldbyname('MJqty4').AsFloat; + CDS_WXPTPrint.FieldByName('Sumlenqty').Value:=CDS_WXPT.fieldbyname('Sumlenqty').AsFloat; + CDS_WXPTPrint.FieldByName('sumroll').Value:=CDS_WXPT.fieldbyname('sumroll').AsFloat; + CDS_WXPTPrint.FieldByName('SumRollGanNo').Value:=CDS_WXPT.fieldbyname('SumRollGanNo').AsFloat; + CDS_WXPTPrint.FieldByName('SumRollColor').Value:=CDS_WXPT.fieldbyname('SumRollColor').AsFloat; + CDS_WXPTPrint.FieldByName('SumZJ').Value:=CDS_WXPT.fieldbyname('SumZJ').AsFloat; + CDS_WXPTPrint.FieldByName('SubId').Value:=CDS_WXPT.fieldbyname('SubId').Value; + CDS_WXPTPrint.FieldByName('MainId').Value:=CDS_WXPT.fieldbyname('MainId').Value; + CDS_WXPTPrint.Post; + FHZ:=Trim(CDS_WXPT.fieldbyname('PRTColor').AsString)+Trim(CDS_WXPT.fieldbyname('Baono').AsString)+Trim(CDS_WXPT.fieldbyname('GangNo').AsString); + Z:=0; + j:=0; + end + else + begin + if (Trim(CDS_WXPT.fieldbyname('PRTColor').AsString)+Trim(CDS_WXPT.fieldbyname('Baono').AsString)+Trim(CDS_WXPT.fieldbyname('GangNo').AsString))<>FHZ then + begin + CDS_WXPTPrint.Append; + CDS_WXPTPrint.FieldByName('MZQty').Value:=trim(CDS_WXPT.fieldbyname('KGQty').Asstring); + CDS_WXPTPrint.FieldByName('INVNO').Value:=trim(CDS_WXPT.fieldbyname('orderno').Asstring); + CDS_WXPTPrint.FieldByName('GangNo').Value:=trim(CDS_WXPT.fieldbyname('GangNo').Asstring); + CDS_WXPTPrint.FieldByName('BaoNo').Value:=Trim(CDS_WXPT.fieldbyname('BaoNo').Asstring); + CDS_WXPTPrint.FieldByName('PONO').Value:=trim(CDS_WXPT.fieldbyname('PONO').Asstring); + CDS_WXPTPrint.FieldByName('QtyUnit').Value:=Trim(CDS_WXPT.fieldbyname('QtyUnit').Asstring); + CDS_WXPTPrint.FieldByName('CRTime').Value:=CDS_WXPT.fieldbyname('CRTime').asdatetime; + CDS_WXPTPrint.FieldByName('PRTColor').Value:=trim(CDS_WXPT.fieldbyname('PRTColor').Asstring); + CDS_WXPTPrint.FieldByName('XH').Value:=J+1; + CDS_WXPTPrint.FieldByName('LenQty0').Value:=CDS_WXPT.fieldbyname('qty').AsFloat; + CDS_WXPTPrint.FieldByName('Zs0').Value:=CDS_WXPT.fieldbyname('MjQty2').AsFloat; + CDS_WXPTPrint.FieldByName('RollNo0').Value:=trim(CDS_WXPT.fieldbyname('RollNo').Asstring); + CDS_WXPTPrint.FieldByName('MKGQty0').Value:=CDS_WXPT.fieldbyname('KGQty').AsFloat; + CDS_WXPTPrint.FieldByName('KGQty0').Value:=CDS_WXPT.fieldbyname('MJqty4').AsFloat; + CDS_WXPTPrint.FieldByName('Sumlenqty').Value:=CDS_WXPT.fieldbyname('Sumlenqty').AsFloat; + CDS_WXPTPrint.FieldByName('sumroll').Value:=CDS_WXPT.fieldbyname('sumroll').AsFloat; + CDS_WXPTPrint.FieldByName('SumRollGanNo').Value:=CDS_WXPT.fieldbyname('SumRollGanNo').AsFloat; + CDS_WXPTPrint.FieldByName('SumRollColor').Value:=CDS_WXPT.fieldbyname('SumRollColor').AsFloat; + CDS_WXPTPrint.FieldByName('SumZJ').Value:=CDS_WXPT.fieldbyname('SumZJ').AsFloat; + CDS_WXPTPrint.FieldByName('SubId').Value:=CDS_WXPT.fieldbyname('SubId').Asstring; + CDS_WXPTPrint.FieldByName('MainId').Value:=CDS_WXPT.fieldbyname('MainId').Asstring; + CDS_WXPTPrint.Post; + Z:=0; + j:=j+1; + FHZ:=Trim(CDS_WXPT.fieldbyname('PRTColor').AsString)+Trim(CDS_WXPT.fieldbyname('Baono').AsString)+Trim(CDS_WXPT.fieldbyname('GangNo').AsString); + end + else + begin + if Z<3 then + begin + CDS_WXPTPrint.Locate('XH',j,[]); + with CDS_WXPTPrint do + begin + Edit; + FieldByName('MZQty').Value:=CDS_WXPT.fieldbyname('KGQty').Value; + FieldByName('INVNO').Value:=CDS_WXPT.fieldbyname('orderno').Value; + FieldByName('GangNo').Value:=CDS_WXPT.fieldbyname('GangNo').Value; + CDS_WXPTPrint.FieldByName('PONO').Value:=CDS_WXPT.fieldbyname('PONO').Value; + CDS_WXPTPrint.FieldByName('QtyUnit').Value:=trim(CDS_WXPT.fieldbyname('QtyUnit').Asstring); + CDS_WXPTPrint.FieldByName('CRTime').Value:=CDS_WXPT.fieldbyname('CRTime').asdatetime; + FieldByName('BaoNO').Value:=CDS_WXPT.fieldbyname('BaoNO').Value; + CDS_WXPTPrint.FieldByName('PRTColor').Value:=CDS_WXPT.fieldbyname('PRTColor').Value; + FieldByName('LenQty'+Trim(IntToStr(Z))).Value:=CDS_WXPT.fieldbyname('qty').AsFloat; + FieldByName('Zs'+Trim(IntToStr(Z))).Value:=CDS_WXPT.fieldbyname('MJQty2').AsFloat; + CDS_WXPTPrint.FieldByName('RollNo'+Trim(IntToStr(Z))).Value:=CDS_WXPT.fieldbyname('RollNo').Value; + CDS_WXPTPrint.FieldByName('MKGQty'+Trim(IntToStr(Z))).Value:=CDS_WXPT.fieldbyname('KGQty').AsFloat; + CDS_WXPTPrint.FieldByName('KGQty'+Trim(IntToStr(Z))).Value:=CDS_WXPT.fieldbyname('MJqty4').AsFloat; + CDS_WXPTPrint.FieldByName('Sumlenqty').Value:=CDS_WXPT.fieldbyname('Sumlenqty').AsFloat; + CDS_WXPTPrint.FieldByName('sumroll').Value:=CDS_WXPT.fieldbyname('sumroll').AsFloat; + CDS_WXPTPrint.FieldByName('SumRollGanNo').Value:=CDS_WXPT.fieldbyname('SumRollGanNo').AsFloat; + CDS_WXPTPrint.FieldByName('SumRollColor').Value:=CDS_WXPT.fieldbyname('SumRollColor').AsFloat; + CDS_WXPTPrint.FieldByName('SumZJ').Value:=CDS_WXPT.fieldbyname('SumZJ').AsFloat; + FieldByName('SubId').Value:=CDS_WXPT.fieldbyname('SubId').Value; + FieldByName('MainId').Value:=CDS_WXPT.fieldbyname('MainId').Value; + Post; + end; + end + else + begin + CDS_WXPTPrint.Append; + CDS_WXPTPrint.FieldByName('MZQty').Value:=CDS_WXPT.fieldbyname('KGQty').Value; + CDS_WXPTPrint.FieldByName('INVNO').Value:=CDS_WXPT.fieldbyname('orderno').Value; + CDS_WXPTPrint.FieldByName('GangNo').Value:=CDS_WXPT.fieldbyname('GangNo').Value; + CDS_WXPTPrint.FieldByName('BaoNO').Value:=CDS_WXPT.fieldbyname('BaoNO').Value; + CDS_WXPTPrint.FieldByName('PONO').Value:=CDS_WXPT.fieldbyname('PONO').Value; + CDS_WXPTPrint.FieldByName('QtyUnit').Value:=trim(CDS_WXPT.fieldbyname('QtyUnit').Asstring); + CDS_WXPTPrint.FieldByName('CRTime').Value:=CDS_WXPT.fieldbyname('CRTime').asdatetime; + CDS_WXPTPrint.FieldByName('PRTColor').Value:=CDS_WXPT.fieldbyname('PRTColor').Value; + CDS_WXPTPrint.FieldByName('XH').Value:=J+1; + CDS_WXPTPrint.FieldByName('LenQty0').Value:=CDS_WXPT.fieldbyname('qty').AsFloat; + CDS_WXPTPrint.FieldByName('ZS0').Value:=CDS_WXPT.fieldbyname('MJQty2').AsFloat; + CDS_WXPTPrint.FieldByName('RollNo0').Value:=CDS_WXPT.fieldbyname('RollNo').Value; + CDS_WXPTPrint.FieldByName('MKGQty0').Value:=CDS_WXPT.fieldbyname('kgQty').AsFloat; + CDS_WXPTPrint.FieldByName('KGQty0').Value:=CDS_WXPT.fieldbyname('MJqty4').AsFloat; + CDS_WXPTPrint.FieldByName('Sumlenqty').Value:=CDS_WXPT.fieldbyname('Sumlenqty').AsFloat; + CDS_WXPTPrint.FieldByName('sumroll').Value:=CDS_WXPT.fieldbyname('sumroll').AsFloat; + CDS_WXPTPrint.FieldByName('SumRollGanNo').Value:=CDS_WXPT.fieldbyname('SumRollGanNo').AsFloat; + CDS_WXPTPrint.FieldByName('SumRollColor').Value:=CDS_WXPT.fieldbyname('SumRollColor').AsFloat; + CDS_WXPTPrint.FieldByName('SumZJ').Value:=CDS_WXPT.fieldbyname('SumZJ').AsFloat; + CDS_WXPTPrint.FieldByName('SubId').Value:=CDS_WXPT.fieldbyname('SubId').Value; + CDS_WXPTPrint.FieldByName('MainId').Value:=CDS_WXPT.fieldbyname('MainId').Value; + CDS_WXPTPrint.Post; + Z:=0; + j:=j+1; + end; + end; + end + end; + Z:=Z+1; + Next; + end; + end; + CDS_WXPT.EnableControls; + CDS_WXPTPrint.EnableControls; +end; + +procedure TfrmCKProductBCPInList.MPRTCodeNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCKProductBCPInList.TBPrintClick(Sender: TObject); +var + fPrintFile,fPrintFile10,FMainID:String; +begin + if CDS_Main.IsEmpty then Exit; +{ if CDS_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete TBSubID where DName='''+Trim(DCode)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('SELECT * FROM TBSubID where 1=2 '); + open; + end; + FMainID:=''; + CDS_Main.DisableControls; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_Main do + begin + First; + while not Eof do + begin + If Fieldbyname('Ssel').AsBoolean then + begin + IF FMainID='' then + begin + FMainID:=Trim(CDS_Main.fieldbyname('mainID').AsString); + end + else + begin + IF Trim(CDS_Main.fieldbyname('mainID').AsString)<>FMainID then + begin + application.MessageBox('ѡIJͬһָʾһӡ','ʾϢ',0); + ADOQueryCmd.Connection.RollbackTrans; + EnableControls; + exit; + end; + end; + ADOQueryCmd.append; + ADOQueryCmd.fieldbyname('SubId').Value:=Trim(CDS_Main.fieldbyname('MJID').AsString); + ADOQueryCmd.fieldbyname('Dname').Value:=Trim(DCode); + ADOQueryCmd.post; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + end; + CDS_Main.EnableControls; + } + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.add('exec P_Do_PrintMd10 '); + sql.add('@mainID='+quotedstr(Trim(CDS_Main.fieldbyname('BCID').AsString))); + sql.add(',@DName='+quotedstr(Trim(DCode))); + sql.add(',@flag=''0'' '); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_HZ); + SInitCDSData20(ADOQueryTemp,CDS_HZ); + + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\'+Trim(ComboBox1.Text)+'.rmf' ; + if FileExists(fPrintFile) then + begin + RM3.LoadFromFile(fPrintFile); + RM3.ShowReport; + end + else + begin + Application.MessageBox(PChar('û'+fPrintFile),'ʾ',0); + end; +end; + +procedure TfrmCKProductBCPInList.GetLotData(); +var + i,j,z,h,q:Integer; + FGangNo,FHZ:String; +begin + if CDS_Main.IsEmpty then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select GangNo=AP.AOrdDefStr1,A.BaoNo,MJ.MJXH,MJ.MJMaoZ,MJ.MJLen,A.SubId,A.MainId,MJ.MJQty4,'); + sql.Add('DD.OrderNo,JS.PRTColor,PRTEColor=JS.SOrddefstr4,PRTColorNo=JS.SOrddefstr1,JS.PRTHX'); + sql.Add(' from CK_BanCP_CR A'); + sql.Add(' inner join WFB_MJJY MJ on A.MJID=MJ.MJID'); + sql.Add(' inner join JYOrder_Main DD on A.MainId=DD.MainId'); + sql.Add(' inner join JYOrder_Sub JS on A.SubId=JS.SubId'); + sql.Add(' inner join JYOrder_Sub_AnPai AP on A.APID=AP.APID'); + sql.Add(' where A.MainId='''+Trim(CDS_Main.fieldbyname('MainId').AsString)+''''); + //sql.Add(' and A.SubId='''+Trim(CDS_Main.fieldbyname('SubId').AsString)+''''); + {if Trim(CDS_Main.FieldByName('CKOrdNo').AsString)<>'' then + begin + sql.Add(' and A.CKOrdNo='''+Trim(CDS_Main.FieldByName('CKOrdNo').AsString)+''''); + end; } + if Trim(CPType.Text)<>'' then + begin + sql.Add(' and A.CPType='''+Trim(CPType.Text)+''''); + end; + sql.Add(' and A.CRType='''' '); + sql.Add(' order by A.SubId,Cast(AP.AOrdDefStr1 as int),MJ.MJXH'); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_Juan); + SInitCDSData20(ADOQueryTemp,CDS_Juan); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select MainId=Cast('''' as varchar(20)),SubId=Cast('''' as varchar(20)),'); + sql.Add(' PRTEColor=Cast('''' as varchar(20)),PRTHX=Cast('''' as varchar(20)),PRTColorNo=Cast('''' as varchar(20)),'); + sql.Add(' GangNo=Cast('''' as varchar(20)),BaoNo=Cast('''' as varchar(20)),XH=Cast(0 as int),'); + sql.Add(' LenQty0=Cast(1.00 as decimal(18,2)),LenQty1=Cast(1.00 as decimal(18,2)),'); + sql.Add(' LenQty2=Cast(1.00 as decimal(18,2)),LenQty3=Cast(1.00 as decimal(18,2)),'); + sql.Add(' LenQty4=Cast(1.00 as decimal(18,2)),LenQty5=Cast(1.00 as decimal(18,2)),'); + sql.Add(' LenQty6=Cast(1.00 as decimal(18,2)),LenQty7=Cast(1.00 as decimal(18,2)),'); + sql.Add(' LenQty8=Cast(1.00 as decimal(18,2)),LenQty9=Cast(1.00 as decimal(18,2)),'); + sql.Add(' MZ0=Cast(1.00 as decimal(18,2)),MZ1=Cast(1.00 as decimal(18,2)),'); + sql.Add(' MZ2=Cast(1.00 as decimal(18,2)),MZ3=Cast(1.00 as decimal(18,2)),'); + sql.Add(' MZ4=Cast(1.00 as decimal(18,2)),MZ5=Cast(1.00 as decimal(18,2)),'); + sql.Add(' MZ6=Cast(1.00 as decimal(18,2)),MZ7=Cast(1.00 as decimal(18,2)),'); + sql.Add(' MZ8=Cast(1.00 as decimal(18,2)),MZ9=Cast(1.00 as decimal(18,2)),'); + sql.Add(' JZ0=Cast(1.00 as decimal(18,2)),JZ1=Cast(1.00 as decimal(18,2)),'); + sql.Add(' JZ2=Cast(1.00 as decimal(18,2)),JZ3=Cast(1.00 as decimal(18,2)),'); + sql.Add(' JZ4=Cast(1.00 as decimal(18,2)),JZ5=Cast(1.00 as decimal(18,2)),'); + sql.Add(' JZ6=Cast(1.00 as decimal(18,2)),JZ7=Cast(1.00 as decimal(18,2)),'); + sql.Add(' JZ8=Cast(1.00 as decimal(18,2)),JZ9=Cast(1.00 as decimal(18,2)),'); + sql.Add(' MJPS0=Cast(1 as int),MJPS1=Cast(1 as int),'); + sql.Add(' MJPS2=Cast(1 as int),MJPS3=Cast(1 as int),'); + sql.Add(' MJPS4=Cast(1 as int),MJPS5=Cast(1 as int),'); + sql.Add(' MJPS6=Cast(1 as int),MJPS7=Cast(1 as int),'); + sql.Add(' MJPS8=Cast(1 as int),MJPS9=Cast(1 as int),'); + sql.Add(' XH=Cast(0 as int)'); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_JuanPRT); + SInitCDSData20(ADOQueryTemp,CDS_JuanPRT); + if CDS_JuanPRT.IsEmpty=False then + begin + CDS_JuanPRT.Delete; + end; + i:=0;j:=0;z:=0;FGangNo:='';h:=0; + CDS_Juan.DisableControls; + with CDS_Juan do + begin + First; + while not Eof do + begin + //FHZ:=Trim(CDS_Juan.fieldbyname('SubId').AsString)+Trim(CDS_Juan.fieldbyname('BaoNO').AsString) + //+Trim(CDS_Juan.fieldbyname('GangNo').AsString); + with CDS_JuanPRT do + begin + if CDS_JuanPRT.IsEmpty then + begin + CDS_JuanPRT.Append; + CDS_JuanPRT.FieldByName('GangNo').Value:=CDS_Juan.fieldbyname('GangNo').Value; + // CDS_JuanPRT.FieldByName('BaoNO').Value:=CDS_Juan.fieldbyname('BaoNO').Value; + CDS_JuanPRT.FieldByName('PRTEColor').Value:=CDS_Juan.fieldbyname('PRTEColor').Value; + CDS_JuanPRT.FieldByName('PRTColorNo').Value:=CDS_Juan.fieldbyname('PRTColorNo').Value; + CDS_JuanPRT.FieldByName('PRTHX').Value:=CDS_Juan.fieldbyname('PRTHX').Value; + CDS_JuanPRT.FieldByName('MJPS0').Value:=1; + CDS_JuanPRT.FieldByName('XH').Value:=0; + CDS_JuanPRT.FieldByName('LenQty0').Value:=CDS_Juan.fieldbyname('MJLen').Value; + CDS_JuanPRT.FieldByName('MZ0').Value:=CDS_Juan.fieldbyname('MJMaoZ').Value; + CDS_JuanPRT.FieldByName('JZ0').Value:=CDS_Juan.fieldbyname('MJQty4').Value; + CDS_JuanPRT.FieldByName('SubId').Value:=CDS_Juan.fieldbyname('SubId').Value; + CDS_JuanPRT.FieldByName('MainId').Value:=CDS_Juan.fieldbyname('MainId').Value; + CDS_JuanPRT.Post; + FHZ:=Trim(CDS_Juan.fieldbyname('SubId').AsString) + +Trim(CDS_Juan.fieldbyname('GangNo').AsString); + //FGangNo:=Trim(CDS_Juan.fieldbyname('GangNo').AsString); + Z:=0;//gang ׺ + j:=0;//к + for i:=1 to 9 do + begin + CDS_JuanPRT.Edit; + CDS_JuanPRT.FieldByName('MJPS'+Trim(IntToStr(i))).Value:=0; + CDS_JuanPRT.Post; + end; + end else + begin + if (Trim(CDS_Juan.fieldbyname('SubId').AsString) + +Trim(CDS_Juan.fieldbyname('GangNo').AsString))<>FHZ then + begin + CDS_JuanPRT.Append; + CDS_JuanPRT.FieldByName('GangNo').Value:=CDS_Juan.fieldbyname('GangNo').Value; + //CDS_JuanPRT.FieldByName('BaoNO').Value:=CDS_Juan.fieldbyname('BaoNO').Value; + CDS_JuanPRT.FieldByName('PRTEColor').Value:=CDS_Juan.fieldbyname('PRTEColor').Value; + CDS_JuanPRT.FieldByName('PRTColorNo').Value:=CDS_Juan.fieldbyname('PRTColorNo').Value; + CDS_JuanPRT.FieldByName('PRTHX').Value:=CDS_Juan.fieldbyname('PRTHX').Value; + CDS_JuanPRT.FieldByName('MJPS0').Value:=1; + CDS_JuanPRT.FieldByName('XH').Value:=J+1; + CDS_JuanPRT.FieldByName('LenQty0').Value:=CDS_Juan.fieldbyname('MJLen').Value; + CDS_JuanPRT.FieldByName('MZ0').Value:=CDS_Juan.fieldbyname('MJMaoZ').Value; + CDS_JuanPRT.FieldByName('JZ0').Value:=CDS_Juan.fieldbyname('MJQty4').Value; + CDS_JuanPRT.FieldByName('SubId').Value:=CDS_Juan.fieldbyname('SubId').Value; + CDS_JuanPRT.FieldByName('MainId').Value:=CDS_Juan.fieldbyname('MainId').Value; + CDS_JuanPRT.Post; + FHZ:=Trim(CDS_Juan.fieldbyname('SubId').AsString) + +Trim(CDS_Juan.fieldbyname('GangNo').AsString); + Z:=0;//gang ׺ + j:=j+1;//к + for i:=1 to 9 do + begin + CDS_JuanPRT.Edit; + CDS_JuanPRT.FieldByName('MJPS'+Trim(IntToStr(i))).Value:=0; + CDS_JuanPRT.Post; + end; + end else + begin + if Z<10 then + begin + CDS_JuanPRT.Locate('XH',j,[]); + with CDS_JuanPRT do + begin + Edit; + FieldByName('GangNo').Value:=CDS_Juan.fieldbyname('GangNo').Value; + //FieldByName('BaoNO').Value:=CDS_Juan.fieldbyname('BaoNO').Value; + CDS_JuanPRT.FieldByName('PRTEColor').Value:=CDS_Juan.fieldbyname('PRTEColor').Value; + CDS_JuanPRT.FieldByName('PRTColorNo').Value:=CDS_Juan.fieldbyname('PRTColorNo').Value; + CDS_JuanPRT.FieldByName('PRTHX').Value:=CDS_Juan.fieldbyname('PRTHX').Value; + FieldByName('MJPS'+Trim(IntToStr(Z))).Value:=1; + FieldByName('LenQty'+Trim(IntToStr(Z))).Value:=CDS_Juan.fieldbyname('MJLen').Value; + CDS_JuanPRT.FieldByName('MZ'+Trim(IntToStr(Z))).Value:=CDS_Juan.fieldbyname('MJMaoZ').Value; + CDS_JuanPRT.FieldByName('JZ'+Trim(IntToStr(Z))).Value:=CDS_Juan.fieldbyname('MJQty4').Value; + FieldByName('SubId').Value:=CDS_Juan.fieldbyname('SubId').Value; + FieldByName('MainId').Value:=CDS_Juan.fieldbyname('MainId').Value; + Post; + end; + end else + begin + CDS_JuanPRT.Append; + CDS_JuanPRT.FieldByName('GangNo').Value:=CDS_Juan.fieldbyname('GangNo').Value; + CDS_JuanPRT.FieldByName('BaoNO').Value:=CDS_Juan.fieldbyname('BaoNO').Value; + CDS_JuanPRT.FieldByName('PRTEColor').Value:=CDS_Juan.fieldbyname('PRTEColor').Value; + CDS_JuanPRT.FieldByName('PRTColorNo').Value:=CDS_Juan.fieldbyname('PRTColorNo').Value; + CDS_JuanPRT.FieldByName('PRTHX').Value:=CDS_Juan.fieldbyname('PRTHX').Value; + CDS_JuanPRT.FieldByName('MJPS0').Value:=1; + CDS_JuanPRT.FieldByName('XH').Value:=J+1; + CDS_JuanPRT.FieldByName('LenQty0').Value:=CDS_Juan.fieldbyname('MJLen').Value; + CDS_JuanPRT.FieldByName('MZ0').Value:=CDS_Juan.fieldbyname('MJMaoZ').Value; + CDS_JuanPRT.FieldByName('JZ0').Value:=CDS_Juan.fieldbyname('MJQty4').Value; + CDS_JuanPRT.FieldByName('SubId').Value:=CDS_Juan.fieldbyname('SubId').Value; + CDS_JuanPRT.FieldByName('MainId').Value:=CDS_Juan.fieldbyname('MainId').Value; + CDS_JuanPRT.Post; + Z:=0;//gang ׺ + j:=j+1;//к + for i:=1 to 9 do + begin + CDS_JuanPRT.Edit; + CDS_JuanPRT.FieldByName('MJPS'+Trim(IntToStr(i))).Value:=0; + CDS_JuanPRT.Post; + end; + end; + end; + end + end; + Z:=Z+1; + Next; + end; + end; + CDS_Juan.EnableControls; +end; +procedure TfrmCKProductBCPInList.GetJuanData(); +var + i,j,z,h,q:Integer; + FGangNo:String; +begin + if CDS_Main.IsEmpty then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select GangNo=AP.AOrdDefStr1,A.BaoNo,MJ.MJXH,MJ.MJMaoZ,MJ.MJLen,A.SubId,A.MainId'); + sql.Add(' from CK_BanCP_CR A'); + sql.Add(' inner join WFB_MJJY MJ on A.MJID=MJ.MJID'); + sql.Add(' inner join JYOrder_Main DD on A.MainId=DD.MainId'); + sql.Add(' inner join JYOrder_Sub JS on A.SubId=JS.SubId'); + sql.Add(' inner join JYOrder_Sub_AnPai AP on A.APID=AP.APID'); + sql.Add(' where A.MainId='''+Trim(CDS_Main.fieldbyname('MainId').AsString)+''''); + sql.Add(' and A.SubId='''+Trim(CDS_Main.fieldbyname('SubId').AsString)+''''); + {if Trim(CDS_Main.FieldByName('CKOrdNo').AsString)<>'' then + begin + sql.Add(' and A.CKOrdNo='''+Trim(CDS_Main.FieldByName('CKOrdNo').AsString)+''''); + end; } + if Trim(CPType.Text)<>'' then + begin + sql.Add(' and A.CPType='''+Trim(CPType.Text)+''''); + end; + sql.Add(' and A.CRType='''' '); + sql.Add(' order by Cast(AP.AOrdDefStr1 as int),Cast(A.BaoNo as int),MJ.MJXH'); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_Juan); + SInitCDSData20(ADOQueryTemp,CDS_Juan); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select BaoNo0=Cast('''' as varchar(20)),MJXH0=Cast(0 as int),MJPS0=Cast(1 as int),'); + sql.Add('MJPS1=Cast(1 as int),MJPS2=Cast(1 as int),MJPS3=Cast(1 as int),MJPS4=Cast(1 as int),'); + sql.Add(' KGQty0=Cast(1.00 as decimal(18,2)),LenQty0=Cast(1.00 as decimal(18,2)),'); + sql.Add(' BaoNo1=Cast('''' as varchar(20)),MJXH1=Cast(0 as int),'); + sql.Add(' KGQty1=Cast(1.00 as decimal(18,2)),LenQty1=Cast(1.00 as decimal(18,2)),'); + sql.Add(' BaoNo2=Cast('''' as varchar(20)),MJXH2=Cast(0 as int),'); + sql.Add(' KGQty2=Cast(1.00 as decimal(18,2)),LenQty2=Cast(1.00 as decimal(18,2)),'); + sql.Add(' BaoNo3=Cast('''' as varchar(20)),MJXH3=Cast(0 as int),'); + sql.Add(' KGQty3=Cast(1.00 as decimal(18,2)),LenQty3=Cast(1.00 as decimal(18,2)),'); + sql.Add(' BaoNo4=Cast('''' as varchar(20)),MJXH4=Cast(0 as int),'); + sql.Add(' KGQty4=Cast(1.00 as decimal(18,2)),LenQty4=Cast(1.00 as decimal(18,2)),'); + sql.Add(' BaoNo5=Cast('''' as varchar(20)),MJXH5=Cast(0 as int),'); + sql.Add(' KGQty5=Cast(1.00 as decimal(18,2)),LenQty5=Cast(1.00 as decimal(18,2)),'); + sql.Add(' GangNo0=Cast('''' as varchar(20)),XH=Cast('''' as varchar(20)),'); + sql.Add(' GangNo1=Cast('''' as varchar(20)),GangNo2=Cast('''' as varchar(20)),'); + sql.Add(' GangNo3=Cast('''' as varchar(20)),GangNo4=Cast('''' as varchar(20))'); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_JuanPRT); + SInitCDSData20(ADOQueryTemp,CDS_JuanPRT); + if CDS_JuanPRT.IsEmpty=False then + begin + CDS_JuanPRT.Delete; + end; + i:=0;j:=0;z:=0;FGangNo:='';h:=0; + CDS_Juan.DisableControls; + with CDS_Juan do + begin + First; + while not Eof do + begin + with CDS_JuanPRT do + begin + if CDS_JuanPRT.IsEmpty then + begin + begin + CDS_JuanPRT.Append; + CDS_JuanPRT.FieldByName('GangNo0').Value:=CDS_Juan.fieldbyname('GangNo').Value; + CDS_JuanPRT.FieldByName('BaoNO0').Value:=CDS_Juan.fieldbyname('BaoNO').Value; + CDS_JuanPRT.FieldByName('MJXH0').Value:=CDS_Juan.fieldbyname('MJXH').Value; + CDS_JuanPRT.FieldByName('MJPS0').Value:=1; + CDS_JuanPRT.FieldByName('KGQty0').Value:=CDS_Juan.fieldbyname('MJMaoZ').Value; + CDS_JuanPRT.FieldByName('LenQty0').Value:=CDS_Juan.fieldbyname('MJLen').Value; + CDS_JuanPRT.FieldByName('XH').Value:='0'; + CDS_JuanPRT.Post; + FGangNo:=Trim(CDS_Juan.fieldbyname('GangNo').AsString); + for h:=1 to 9 do + begin + CDS_JuanPRT.Append; + CDS_JuanPRT.FieldByName('XH').Value:=Trim(IntToStr(h)); + CDS_JuanPRT.Post; + end; + J:=0;//XH к + Z:=0;//gang ׺ + //h:=9;// + q:=0; //ҳ + end; + end else + begin + if i>9 then + begin + Z:=Z+1; + + if Z>4 then + begin + Z:=0; + q:=q+1; + J:=q*10; + CDS_JuanPRT.Append; + CDS_JuanPRT.FieldByName('GangNo0').Value:=CDS_Juan.fieldbyname('GangNo').Value; + CDS_JuanPRT.FieldByName('BaoNO0').Value:=CDS_Juan.fieldbyname('BaoNO').Value; + CDS_JuanPRT.FieldByName('MJXH0').Value:=CDS_Juan.fieldbyname('MJXH').Value; + CDS_JuanPRT.FieldByName('KGQty0').Value:=CDS_Juan.fieldbyname('MJMaoZ').Value; + CDS_JuanPRT.FieldByName('LenQty0').Value:=CDS_Juan.fieldbyname('MJLen').Value; + CDS_JuanPRT.FieldByName('MJPS0').Value:=1; + CDS_JuanPRT.FieldByName('XH').Value:=Trim(IntToStr(J)); + CDS_JuanPRT.Post; + for h:=J+1 to J+9 do + begin + CDS_JuanPRT.Append; + CDS_JuanPRT.FieldByName('XH').Value:=Trim(IntToStr(h)); + CDS_JuanPRT.Post; + end; + FGangNo:=Trim(CDS_Juan.fieldbyname('GangNo').AsString); + end else + begin + J:=q*10; + CDS_JuanPRT.Locate('XH',Trim(IntToStr(10*q)),[]); + CDS_JuanPRT.Edit; + CDS_JuanPRT.FieldByName('GangNo'+Trim(IntToStr(Z))).Value:=CDS_Juan.fieldbyname('GangNo').Value; + CDS_JuanPRT.FieldByName('BaoNO'+Trim(IntToStr(Z))).Value:=CDS_Juan.fieldbyname('BaoNO').Value; + CDS_JuanPRT.FieldByName('MJXH'+Trim(IntToStr(Z))).Value:=CDS_Juan.fieldbyname('MJXH').Value; + CDS_JuanPRT.FieldByName('MJPS'+Trim(IntToStr(Z))).Value:=1; + CDS_JuanPRT.FieldByName('KGQty'+Trim(IntToStr(Z))).Value:=CDS_Juan.fieldbyname('MJMaoZ').Value; + CDS_JuanPRT.FieldByName('LenQty'+Trim(IntToStr(Z))).Value:=CDS_Juan.fieldbyname('MJLen').Value; + CDS_JuanPRT.Post; + FGangNo:=Trim(CDS_Juan.fieldbyname('GangNo').AsString); + end; + i:=0; + end else + begin + if FGangNo<>Trim(CDS_Juan.fieldbyname('GangNo').AsString) then + begin + Z:=Z+1; + + if Z>4 then + begin + Z:=0; + q:=q+1; + J:=q*10; + CDS_JuanPRT.Append; + CDS_JuanPRT.FieldByName('GangNo0').Value:=CDS_Juan.fieldbyname('GangNo').Value; + CDS_JuanPRT.FieldByName('BaoNO0').Value:=CDS_Juan.fieldbyname('BaoNO').Value; + CDS_JuanPRT.FieldByName('MJXH0').Value:=CDS_Juan.fieldbyname('MJXH').Value; + CDS_JuanPRT.FieldByName('KGQty0').Value:=CDS_Juan.fieldbyname('MJMaoZ').Value; + CDS_JuanPRT.FieldByName('LenQty0').Value:=CDS_Juan.fieldbyname('MJLen').Value; + CDS_JuanPRT.FieldByName('MJPS0').Value:=1; + CDS_JuanPRT.FieldByName('XH').Value:=Trim(IntToStr(J)); + CDS_JuanPRT.Post; + FGangNo:=Trim(CDS_Juan.fieldbyname('GangNo').AsString); + for h:=J+1 to J+9 do + begin + CDS_JuanPRT.Append; + CDS_JuanPRT.FieldByName('XH').Value:=Trim(IntToStr(h)); + CDS_JuanPRT.Post; + end; + end else + begin + J:=q*10; + CDS_JuanPRT.Locate('XH',Trim(IntToStr(10*q)),[]); + CDS_JuanPRT.Edit; + CDS_JuanPRT.FieldByName('GangNo'+Trim(IntToStr(Z))).Value:=CDS_Juan.fieldbyname('GangNo').Value; + CDS_JuanPRT.FieldByName('BaoNO'+Trim(IntToStr(Z))).Value:=CDS_Juan.fieldbyname('BaoNO').Value; + CDS_JuanPRT.FieldByName('MJXH'+Trim(IntToStr(Z))).Value:=CDS_Juan.fieldbyname('MJXH').Value; + CDS_JuanPRT.FieldByName('KGQty'+Trim(IntToStr(Z))).Value:=CDS_Juan.fieldbyname('MJMaoZ').Value; + CDS_JuanPRT.FieldByName('LenQty'+Trim(IntToStr(Z))).Value:=CDS_Juan.fieldbyname('MJLen').Value; + CDS_JuanPRT.FieldByName('MJPS'+Trim(IntToStr(Z))).Value:=1; + CDS_JuanPRT.Post; + FGangNo:=Trim(CDS_Juan.fieldbyname('GangNo').AsString); + end; + i:=0; + end else + begin + j:=j+1; + CDS_JuanPRT.Locate('XH',Trim(IntToStr(J)),[]); + CDS_JuanPRT.Edit; + CDS_JuanPRT.FieldByName('GangNo'+Trim(IntToStr(Z))).Value:=CDS_Juan.fieldbyname('GangNo').Value; + CDS_JuanPRT.FieldByName('BaoNO'+Trim(IntToStr(Z))).Value:=CDS_Juan.fieldbyname('BaoNO').Value; + CDS_JuanPRT.FieldByName('MJXH'+Trim(IntToStr(Z))).Value:=CDS_Juan.fieldbyname('MJXH').Value; + CDS_JuanPRT.FieldByName('KGQty'+Trim(IntToStr(Z))).Value:=CDS_Juan.fieldbyname('MJMaoZ').Value; + CDS_JuanPRT.FieldByName('LenQty'+Trim(IntToStr(Z))).Value:=CDS_Juan.fieldbyname('MJLen').Value; + CDS_JuanPRT.FieldByName('MJPS'+Trim(IntToStr(Z))).Value:=1; + CDS_JuanPRT.Post; + FGangNo:=Trim(CDS_Juan.fieldbyname('GangNo').AsString); + end; + end; + end; + end; + i:=i+1; + Next; + end; + end; + CDS_Juan.EnableControls; +end; +procedure TfrmCKProductBCPInList.GetBaoData(); +var + i,j,z,h:Integer; + FGangNo:String; +begin + if CDS_Main.IsEmpty then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select GangNo=AP.AOrdDefStr1,A.BaoNo,MJ.MJXH,MJ.MJMaoZ,MJ.MJLen'); + sql.Add(' from CK_BanCP_CR A'); + sql.Add(' inner join WFB_MJJY MJ on A.MJID=MJ.MJID'); + sql.Add(' inner join JYOrder_Main DD on A.MainId=DD.MainId'); + sql.Add(' inner join JYOrder_Sub_AnPai AP on A.APID=AP.APID'); + sql.Add(' where A.MainId='''+Trim(CDS_Main.fieldbyname('MainId').AsString)+''''); + sql.Add(' and A.SubId='''+Trim(CDS_Main.fieldbyname('SubId').AsString)+''''); + {if Trim(CDS_Main.FieldByName('CKOrdNo').AsString)<>'' then + begin + sql.Add(' and A.CKOrdNo='''+Trim(CDS_Main.FieldByName('CKOrdNo').AsString)+''''); + end; } + if Trim(CPType.Text)<>'' then + begin + sql.Add(' and A.CPType='''+Trim(CPType.Text)+''''); + end; + sql.Add(' and A.CRType='''' '); + sql.Add(' order by Cast(AP.AOrdDefStr1 as int),Cast(A.BaoNo as int),MJ.MJXH'); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_BaoNo); + SInitCDSData20(ADOQueryTemp,CDS_BaoNo); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select GangNo0=Cast('''' as varchar(20)),GangNo1=Cast('''' as varchar(20)),GangNo2=Cast('''' as varchar(20)),'); + sql.Add(' GangNo3=Cast('''' as varchar(20)),GangNo4=Cast('''' as varchar(20)),XH=Cast('''' as varchar(20))'); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_BaoPRT); + SInitCDSData20(ADOQueryTemp,CDS_BaoPRT); + if CDS_BaoPRT.IsEmpty=False then + begin + CDS_BaoPRT.Delete; + end; + i:=0;j:=0;z:=0;FGangNo:='';h:=0; + CDS_BaoNo.DisableControls; + with CDS_BaoNo do + begin + First; + while not Eof do + begin + with CDS_BaoPRT do + begin + if CDS_BaoPRT.IsEmpty then + begin + if J=0 then + begin + CDS_BaoPRT.Append; + CDS_BaoPRT.FieldByName('GangNo0').Value:=CDS_BaoNo.fieldbyname('GangNo').Value; + CDS_BaoPRT.FieldByName('XH').Value:='0'; + CDS_BaoPRT.Post; + FGangNo:=Trim(CDS_BaoNo.fieldbyname('GangNo').AsString); + J:=0;//XH к + Z:=0;//gang ׺ + h:=0;//ÿеļ¼ + end; + end else + begin + if i>9 then + begin + Z:=Z+1; + if Z>4 then + begin + Z:=0; + J:=J+1; + CDS_BaoPRT.Append; + CDS_BaoPRT.FieldByName('GangNo0').Value:=CDS_BaoNo.fieldbyname('GangNo').Value; + CDS_BaoPRT.FieldByName('XH').Value:=Trim(IntToStr(J)); + CDS_BaoPRT.Post; + FGangNo:=Trim(CDS_BaoNo.fieldbyname('GangNo').AsString); + end else + begin + CDS_BaoPRT.Locate('XH',Trim(IntToStr(J)),[]); + CDS_BaoPRT.Edit; + CDS_BaoPRT.FieldByName('GangNo'+Trim(IntToStr(Z))).Value:=CDS_BaoNo.fieldbyname('GangNo').Value; + CDS_BaoPRT.Post; + FGangNo:=Trim(CDS_BaoNo.fieldbyname('GangNo').AsString); + end; + i:=0; + end else + begin + if FGangNo<>Trim(CDS_BaoNo.fieldbyname('GangNo').AsString) then + begin + Z:=Z+1; + if Z>4 then + begin + Z:=0; + J:=J+1; + CDS_BaoPRT.Append; + CDS_BaoPRT.FieldByName('GangNo0').Value:=CDS_BaoNo.fieldbyname('GangNo').Value; + CDS_BaoPRT.FieldByName('XH').Value:=Trim(IntToStr(J)); + CDS_BaoPRT.Post; + FGangNo:=Trim(CDS_BaoNo.fieldbyname('GangNo').AsString); + end else + begin + CDS_BaoPRT.Locate('XH',Trim(IntToStr(J)),[]); + CDS_BaoPRT.Edit; + CDS_BaoPRT.FieldByName('GangNo'+Trim(IntToStr(Z))).Value:=CDS_BaoNo.fieldbyname('GangNo').Value; + CDS_BaoPRT.Post; + FGangNo:=Trim(CDS_BaoNo.fieldbyname('GangNo').AsString); + end; + i:=0; + end; + end; + end; + end; + i:=i+1; + Next; + end; + end; + CDS_BaoNo.EnableControls; + +end; +procedure TfrmCKProductBCPInList.GetBaleData(); +var + i,j,z,h,q:Integer; + FGangNo,FHZ:String; +begin + if CDS_Main.IsEmpty then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select GangNo=AP.AOrdDefStr1,A.BaoNo,MJ.MJXH,MJ.MJMaoZ,MJ.MJLen,A.SubId,A.MainId,'); + sql.Add('DD.OrderNo,JS.PRTColor,PRTEColor=JS.SOrddefstr4,JS.PRTHX'); + sql.Add(' from CK_BanCP_CR A'); + sql.Add(' inner join WFB_MJJY MJ on A.MJID=MJ.MJID'); + sql.Add(' inner join JYOrder_Main DD on A.MainId=DD.MainId'); + sql.Add(' inner join JYOrder_Sub JS on A.SubId=JS.SubId'); + sql.Add(' inner join JYOrder_Sub_AnPai AP on A.APID=AP.APID'); + sql.Add(' where A.MainId='''+Trim(CDS_Main.fieldbyname('MainId').AsString)+''''); + //sql.Add(' and A.SubId='''+Trim(CDS_Main.fieldbyname('SubId').AsString)+''''); + if Trim(CDS_Main.FieldByName('CKOrdNo').AsString)<>'' then + begin + sql.Add(' and A.CKOrdNo='''+Trim(CDS_Main.FieldByName('CKOrdNo').AsString)+''''); + end; + if Trim(CPType.Text)<>'' then + begin + sql.Add(' and A.CPType='''+Trim(CPType.Text)+''''); + end; + sql.Add(' and A.CRType='''' '); + sql.Add(' order by Cast(AP.AOrdDefStr1 as int),Cast(A.BaoNo as int),MJ.MJXH'); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_Juan); + SInitCDSData20(ADOQueryTemp,CDS_Juan); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select MainId=Cast('''' as varchar(20)),SubId=Cast('''' as varchar(20)),'); + sql.Add(' PRTEColor=Cast('''' as varchar(20)),PRTHX=Cast('''' as varchar(20)),'); + sql.Add(' GangNo=Cast('''' as varchar(20)),BaoNo=Cast('''' as varchar(20)),MJPS=Cast(0 as int),XH=Cast(0 as int),'); + sql.Add(' LenQty0=Cast(1.00 as decimal(18,2)),LenQty1=Cast(1.00 as decimal(18,2)),'); + sql.Add(' LenQty2=Cast(1.00 as decimal(18,2)),LenQty3=Cast(1.00 as decimal(18,2)),'); + sql.Add(' LenQty4=Cast(1.00 as decimal(18,2)),LenQty5=Cast(1.00 as decimal(18,2)),'); + sql.Add(' LenQty6=Cast(1.00 as decimal(18,2)),LenQty7=Cast(1.00 as decimal(18,2)),'); + sql.Add(' LenQty8=Cast(1.00 as decimal(18,2)),LenQty9=Cast(1.00 as decimal(18,2)),'); + sql.Add(' LenQty10=Cast(1.00 as decimal(18,2)),LenQty11=Cast(1.00 as decimal(18,2)),'); + sql.Add(' MJPS0=Cast(0 as int),MJPS1=Cast(0 as int),'); + sql.Add(' MJPS2=Cast(0 as int),MJPS3=Cast(0 as int),'); + sql.Add(' MJPS4=Cast(0 as int),MJPS5=Cast(0 as int),'); + sql.Add(' MJPS6=Cast(0 as int),MJPS7=Cast(0 as int),'); + sql.Add(' MJPS8=Cast(0 as int),MJPS9=Cast(0 as int),'); + sql.Add(' MJPS10=Cast(0 as int),MJPS11=Cast(1 as int),XH=Cast(0 as int)'); + {sql.Add(' KgQty0=Cast(1.00 as decimal(18,2)),KgQty1=Cast(1.00 as decimal(18,2)),'); + sql.Add(' LenQty2=Cast(1.00 as decimal(18,2)),LenQty3=Cast(1.00 as decimal(18,2)),'); + sql.Add(' LenQty4=Cast(1.00 as decimal(18,2)),LenQty5=Cast(1.00 as decimal(18,2)),'); + sql.Add(' LenQty5=Cast(1.00 as decimal(18,2)),LenQty7=Cast(1.00 as decimal(18,2)),'); + sql.Add(' LenQty6=Cast(1.00 as decimal(18,2)),LenQty9=Cast(1.00 as decimal(18,2)),'); + sql.Add(' LenQty10=Cast(1.00 as decimal(18,2)),LenQty11=Cast(1.00 as decimal(18,2)),');} + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_JuanPRT); + SInitCDSData20(ADOQueryTemp,CDS_JuanPRT); + if CDS_JuanPRT.IsEmpty=False then + begin + CDS_JuanPRT.Delete; + end; + i:=0;j:=0;z:=0;FGangNo:='';h:=0; + CDS_Juan.DisableControls; + with CDS_Juan do + begin + First; + while not Eof do + begin + //FHZ:=Trim(CDS_Juan.fieldbyname('SubId').AsString)+Trim(CDS_Juan.fieldbyname('BaoNO').AsString) + //+Trim(CDS_Juan.fieldbyname('GangNo').AsString); + with CDS_JuanPRT do + begin + if CDS_JuanPRT.IsEmpty then + begin + CDS_JuanPRT.Append; + CDS_JuanPRT.FieldByName('GangNo').Value:=CDS_Juan.fieldbyname('GangNo').Value; + CDS_JuanPRT.FieldByName('BaoNO').Value:=CDS_Juan.fieldbyname('BaoNO').Value; + CDS_JuanPRT.FieldByName('PRTEColor').Value:=CDS_Juan.fieldbyname('PRTEColor').Value; + CDS_JuanPRT.FieldByName('PRTHX').Value:=CDS_Juan.fieldbyname('PRTHX').Value; + CDS_JuanPRT.FieldByName('MJPS0').Value:=1; + CDS_JuanPRT.FieldByName('XH').Value:=0; + CDS_JuanPRT.FieldByName('LenQty0').Value:=CDS_Juan.fieldbyname('MJLen').Value; + CDS_JuanPRT.FieldByName('SubId').Value:=CDS_Juan.fieldbyname('SubId').Value; + CDS_JuanPRT.FieldByName('MainId').Value:=CDS_Juan.fieldbyname('MainId').Value; + CDS_JuanPRT.Post; + FHZ:=Trim(CDS_Juan.fieldbyname('SubId').AsString)+Trim(CDS_Juan.fieldbyname('BaoNO').AsString) + +Trim(CDS_Juan.fieldbyname('GangNo').AsString); + //FGangNo:=Trim(CDS_Juan.fieldbyname('GangNo').AsString); + Z:=0;//gang ׺ + j:=0;//к + end else + begin + if (Trim(CDS_Juan.fieldbyname('SubId').AsString)+Trim(CDS_Juan.fieldbyname('BaoNO').AsString) + +Trim(CDS_Juan.fieldbyname('GangNo').AsString))<>FHZ then + begin + CDS_JuanPRT.Append; + CDS_JuanPRT.FieldByName('GangNo').Value:=CDS_Juan.fieldbyname('GangNo').Value; + CDS_JuanPRT.FieldByName('BaoNO').Value:=CDS_Juan.fieldbyname('BaoNO').Value; + CDS_JuanPRT.FieldByName('PRTEColor').Value:=CDS_Juan.fieldbyname('PRTEColor').Value; + CDS_JuanPRT.FieldByName('PRTHX').Value:=CDS_Juan.fieldbyname('PRTHX').Value; + CDS_JuanPRT.FieldByName('MJPS0').Value:=1; + CDS_JuanPRT.FieldByName('XH').Value:=J+1; + CDS_JuanPRT.FieldByName('LenQty0').Value:=CDS_Juan.fieldbyname('MJLen').Value; + CDS_JuanPRT.FieldByName('SubId').Value:=CDS_Juan.fieldbyname('SubId').Value; + CDS_JuanPRT.FieldByName('MainId').Value:=CDS_Juan.fieldbyname('MainId').Value; + CDS_JuanPRT.Post; + FHZ:=Trim(CDS_Juan.fieldbyname('SubId').AsString)+Trim(CDS_Juan.fieldbyname('BaoNO').AsString) + +Trim(CDS_Juan.fieldbyname('GangNo').AsString); + Z:=0;//gang ׺ + j:=j+1;//к + end else + begin + if Z<12 then + begin + CDS_JuanPRT.Locate('XH',j,[]); + with CDS_JuanPRT do + begin + Edit; + FieldByName('GangNo').Value:=CDS_Juan.fieldbyname('GangNo').Value; + FieldByName('BaoNO').Value:=CDS_Juan.fieldbyname('BaoNO').Value; + CDS_JuanPRT.FieldByName('PRTEColor').Value:=CDS_Juan.fieldbyname('PRTEColor').Value; + CDS_JuanPRT.FieldByName('PRTHX').Value:=CDS_Juan.fieldbyname('PRTHX').Value; + FieldByName('MJPS'+Trim(IntToStr(Z))).Value:=1; + FieldByName('LenQty'+Trim(IntToStr(Z))).Value:=CDS_Juan.fieldbyname('MJLen').Value; + FieldByName('SubId').Value:=CDS_Juan.fieldbyname('SubId').Value; + FieldByName('MainId').Value:=CDS_Juan.fieldbyname('MainId').Value; + Post; + end; + end else + begin + CDS_JuanPRT.Append; + CDS_JuanPRT.FieldByName('GangNo').Value:=CDS_Juan.fieldbyname('GangNo').Value; + CDS_JuanPRT.FieldByName('BaoNO').Value:=CDS_Juan.fieldbyname('BaoNO').Value; + CDS_JuanPRT.FieldByName('PRTEColor').Value:=CDS_Juan.fieldbyname('PRTEColor').Value; + CDS_JuanPRT.FieldByName('PRTHX').Value:=CDS_Juan.fieldbyname('PRTHX').Value; + CDS_JuanPRT.FieldByName('MJPS0').Value:=1; + CDS_JuanPRT.FieldByName('XH').Value:=J+1; + CDS_JuanPRT.FieldByName('LenQty0').Value:=CDS_Juan.fieldbyname('MJLen').Value; + CDS_JuanPRT.FieldByName('SubId').Value:=CDS_Juan.fieldbyname('SubId').Value; + CDS_JuanPRT.FieldByName('MainId').Value:=CDS_Juan.fieldbyname('MainId').Value; + CDS_JuanPRT.Post; + Z:=0;//gang ׺ + j:=j+1;//к + end; + end; + end + end; + Z:=Z+1; + Next; + end; + end; + CDS_Juan.EnableControls; +end; + +procedure TfrmCKProductBCPInList.orderNoChange(Sender: TObject); +begin + if Length(Trim(orderNo.Text))<4 then Exit; + TBFind.Click; +end; + +procedure TfrmCKProductBCPInList.orderNoKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(orderNo.Text))<4 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + SQL.Add('select A.*,B.customerNoName,B.OrdPerson2,B.OrderNo,B.conNo,B.MPRTCodeName,B.MPRTSpec,B.MprtkuanNo,C.prtkuanNo,C.PRTColor,C.SOrddefstr4,B.MPRTMF,B.MPRTKZ,D.MJXH,C.PRTHX,D.MJQty3,D.MJQty4'); + sql.Add(',isnull(customerNoName,B.OrderNo) KHName'); + sql.Add(',KHConNo=(select Top 1 KHConNo from JYOrderCon_Main JCM where JCM.ConNo=B.OrderNo)'); + sql.Add(',MPRTECodeName=(select Top 1 MPRTCodeName from JYOrderCon_Main JCM where JCM.ConNo=B.OrderNo)'); + sql.Add(',D.mjstr4 as AOrdDefStr1,cast(D.MJXH as varchar) as MJXHM'); + sql.add('from CK_BanCP_CR A '); + Sql.add(' inner join JYOrder_Main B on A.MainId=B.MainId'); + Sql.add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); + Sql.add(' inner join WFB_MJJY D on A.MJId=D.MJId'); + sql.add(' where B.OrderNo like '+quotedstr('%'+trim(orderNo.Text)+'%')); + SQL.Add(' and A.CRType='''' '); + Open; + //ShowMessage(SQL.Text); + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmCKProductBCPInList.N1Click(Sender: TObject); +begin + SelOKNo(CDS_Main,True); +end; + +procedure TfrmCKProductBCPInList.N2Click(Sender: TObject); +begin + SelOKNo(CDS_Main,False); +end; + +procedure TfrmCKProductBCPInList.TBRKCXClick(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + if CDS_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪִв','ʾ',32+4)<>IDYES then Exit; + BegDate.SetFocus; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_Main do + begin + while Locate('SSel',True,[]) do + begin + IF trim(Fieldbyname('Filler').AsString)<>trim(DName) then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ܳ˵ݣ','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where CRID='+Trim(CDS_Main.fieldbyname('CRID').AsString)); + Open; + end; + if ADOQueryTemp.RecordCount>1 then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ѳⲻܳ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete CK_BanCP_CR where BCID='''+Trim(CDS_Main.fieldbyname('BCID').AsString)+''''); + sql.Add('delete CK_BanCP_KC where CRID='+Trim(CDS_Main.fieldbyname('CRID').AsString)); + sql.Add('Update WFB_MJJY Set MJStr2=''δ'' where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + CDS_Main.Delete; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + end; +end; + +procedure TfrmCKProductBCPInList.Tv1CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if CDS_Main.IsEmpty=False then + begin + InitOrderColor(Trim(CDS_Main.fieldbyname('MainId').AsString),PRTColor,ADOQueryTemp); + InitBCGangNo(Trim(CDS_Main.fieldbyname('SubId').AsString),AOrdDefStr1,ADOQueryTemp); + end; +end; + +procedure TfrmCKProductBCPInList.PRTColorChange(Sender: TObject); +begin + TBFind.Click; + if CDS_Main.IsEmpty=False then + begin + //InitOrderColor(Trim(CDS_Main.fieldbyname('MainId').AsString),PRTColor,ADOQueryTemp); + InitBCGangNo(Trim(CDS_Main.fieldbyname('SubId').AsString),AOrdDefStr1,ADOQueryTemp); + end; +end; + +procedure TfrmCKProductBCPInList.AOrdDefStr1Change(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCKProductBCPInList.TBBaoClick(Sender: TObject); +var + fPrintFile:String; + Txt,fImagePath:string; + Moudle: THandle; + Makebar:TMakebar; + Mixtext:TMixtext; +begin + if CDS_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ǩ.rmf'; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select A.Baoid,A.BaoNo,A.MJTypeOther as QtyUnit,D.OrderNo,D.conNo,D.customerNoName,D.MprtCodeName,D.OrdPerson1,D.MPRTKuanNO,'); + sql.Add('PRTColor=DBO.F_Get_Order_SubStr(BaoID,''BNColor''),SOrddefstr1=DBO.F_Get_Order_SubStr(BaoID,''BNSOrddefstr1''),'); + sql.Add('SOrddefstr4=DBO.F_Get_Order_SubStr(BaoID,''BNSOrddefstr4''),PRtHX=DBO.F_Get_Order_SubStr(BaoID,''BNPRtHX''), '); + sql.Add('PRTkuanNo=DBO.F_Get_Order_SubStr(BaoID,''BNPrtkuanno''),'); + sql.Add('khConNo=(select top 1 khConNo from JYOrderCon_Main X where X.ConNO=D.conNO), '); + SQL.ADD('count(A.MJID) as JSl,sum(A.MJMaoZ) MJMAOZ,sum(MJQty3) as MJQty3,sum(MJQty4) as MJQty4,SUM(A.MJLen)as MJLen'); + sql.Add('from WFB_MJJY A'); + sql.Add(' inner join JYOrder_Sub C on C.SubID=A.SubID'); + sql.Add(' inner join JYOrder_Main D on D.MainID=A.MainID'); + sql.Add(' where BaoId='''+Trim(CDS_Main.fieldbyname('BaoId').AsString)+''' '); + SQL.ADD('group by A.Baoid,A.BaoNo,A.MJTypeOther,D.OrderNo,D.conNo,D.customerNoName,D.MprtCodeName,D.OrdPerson1,D.MPRTKuanNO'); + Open; + end; + if ADOQueryTemp.RecordCount>1 then + begin + Application.MessageBox('볷!','ʾ',0); + Exit; + end; + try + Moudle:=LoadLibrary('MakeQRBarcode.dll'); + @Makebar:=GetProcAddress(Moudle,'Make'); + @Mixtext:=GetProcAddress(Moudle,'MixText'); + Txt:=Trim(CDS_Main.fieldbyname('BaoId').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); + exit; + end; + SCreateCDS20(ADOQueryTemp,CDS_PRT); + SInitCDSData20(ADOQueryTemp,CDS_PRT); + if FileExists(fPrintFile) then + begin + //RMVariables['RKOrdID']:=Trim(CDS_MainSel.fieldbyname('RKOrdID').AsString); + //RMVariables['OrderNo']:=Trim(CDS_MainSel.fieldbyname('OrderNo').AsString); + //RMVariables['PS']:=Trim(RKOrdPS.Text); + //RMVariables['QtyUnit']:=Trim(CDS_MainSel.fieldbyname('QtyUnit').AsString); + RMVariables['QRBARCODE']:=fImagePath; + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ǩ.rmf'),'ʾ',0); + end; +end; + +procedure TfrmCKProductBCPInList.TBRKDClick(Sender: TObject); +var + fPrintFile:String; + Txt,fImagePath:string; + Moudle: THandle; + Makebar:TMakebar; + Mixtext:TMixtext; +begin + if CDS_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ⵥǩ.rmf' ; + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select A1.CRTime,A1.RKOrdID,A.MJTypeOther as QtyUnit,D.OrderNo,D.conNo,D.customerNoName,D.MprtCodeName,D.Mprtspec,D.OrdPerson1,D.MPRTKuanNO,'); + sql.Add('PRTColor=DBO.F_Get_Order_SubStr(RKOrdID,''RKColor''),SOrddefstr1=DBO.F_Get_Order_SubStr(RKOrdID,''RKSOrddefstr1''),'); + sql.Add('SOrddefstr4=DBO.F_Get_Order_SubStr(RKOrdID,''RkSOrddefstr4''),PRtHX=DBO.F_Get_Order_SubStr(RKOrdID,''RKPRtHX''), '); + sql.Add('PRTkuanNo=DBO.F_Get_Order_SubStr(RKOrdID,''RkPrtkuanno''),'); + sql.Add('MJStr4=DBO.F_Get_Order_SubStr(RKOrdID,''RKGangNO''), '); + sql.Add('khConNo=(select top 1 khConNo from JYOrderCon_Main X where X.ConNO=D.conNO), '); + sql.Add('Bsl=(select count(distinct baoNo) from CK_BanCP_CR X where X.RKOrdID=A1.RKOrdID), '); + SQL.ADD('count(A.MJID) as JSl,sum(A.MJMaoZ) MJMAOZ,sum(MJQty2) as MJQty2,sum(MJQty3) as MJQty3,sum(MJQty4) as MJQty4,SUM(A.MJLen)as MJLen'); + sql.Add('from CK_BanCP_CR A1 inner join WFB_MJJY A on A.MJID=A1.MJID '); + sql.Add(' inner join JYOrder_Sub C on C.SubID=A.SubID'); + sql.Add(' inner join JYOrder_Main D on D.MainID=A.MainID'); + sql.Add(' where A1.RKOrdID='''+Trim(CDS_Main.fieldbyname('RKOrdID').AsString)+''' '); + SQL.ADD('group by A1.CRTime,A1.RKOrdID,A.MJTypeOther,D.OrderNo,D.conNo,D.customerNoName,D.MprtCodeName,D.Mprtspec,D.OrdPerson1,D.MPRTKuanNO'); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_PRT); + SInitCDSData20(ADOQueryTemp,CDS_PRT); + + try + Moudle:=LoadLibrary('MakeQRBarcode.dll'); + @Makebar:=GetProcAddress(Moudle,'Make'); + @Mixtext:=GetProcAddress(Moudle,'MixText'); + Txt:=Trim(CDS_Main.fieldbyname('RKOrdID').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); + exit; + end; + if FileExists(fPrintFile) then + begin + //CDS_MainSel.Locate('RKOrdID',Trim(RKOrdID.Text),[]); + //RMVariables['RKOrdID']:=Trim(CDS_MainSel.fieldbyname('RKOrdID').AsString); + //RMVariables['OrderNo']:=Trim(CDS_MainSel.fieldbyname('OrderNo').AsString); + //RMVariables['PS']:=Trim(RKOrdPS.Text); + //RMVariables['QtyUnit']:=Trim(CDS_MainSel.fieldbyname('QtyUnit').AsString); + RMVariables['QRBARCODE']:=fImagePath; + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ⵥǩ.rmf'),'ʾ',0); + end; +end; + +procedure TfrmCKProductBCPInList.CheckBox1Click(Sender: TObject); +begin + SelOKNo(CDS_Main,CheckBox1.Checked); +end; + +procedure TfrmCKProductBCPInList.Image2Click(Sender: TObject); +begin + Panel4.Visible:=False; +end; + +procedure TfrmCKProductBCPInList.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + Panel4.Left:=FLeft; + Panel4.Top:=FTop+110; + Panel4.Visible:=True; + Panel10.Caption:=Trim(TV1.Controller.FocusedColumn.Caption); + RichEdit1.Text:=CDS_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString; + application.ProcessMessages; +end; + +procedure TfrmCKProductBCPInList.Tv1MouseUp(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FLeft:=X; + FTop:=Y; +end; + +procedure TfrmCKProductBCPInList.ISbaoChange(Sender: TObject); +begin + Tbfind.Click; +end; + +end. diff --git a/艾登贸易管理/U_CKProductBCPKC.dfm b/艾登贸易管理/U_CKProductBCPKC.dfm new file mode 100644 index 0000000..15b89ba --- /dev/null +++ b/艾登贸易管理/U_CKProductBCPKC.dfm @@ -0,0 +1,330 @@ +object frmCKProductBCPKC: TfrmCKProductBCPKC + Left = 128 + Top = 152 + Width = 1027 + Height = 511 + Caption = #21322#25104#21697#20986#20837#23384 + 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 = 1019 + 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_WFBProducttion.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBExport: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + end + object TBClose: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1019 + Height = 42 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 302 + Top = 12 + Width = 48 + Height = 12 + Caption = #20135#21697#20195#21495 + end + object Label4: TLabel + Left = 478 + Top = 12 + Width = 24 + Height = 12 + Caption = #39068#33394 + end + object Label7: TLabel + Left = 638 + Top = 12 + Width = 24 + Height = 12 + Caption = #33457#22411 + end + object Label1: TLabel + Left = 28 + Top = 12 + Width = 48 + Height = 12 + Caption = #26597#35810#26102#38388 + end + object Label2: TLabel + Left = 168 + Top = 12 + Width = 12 + Height = 12 + Caption = #33267 + end + object YCLName: TEdit + Tag = 2 + Left = 351 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 0 + OnChange = YCLNameChange + end + object SWFBColor: TEdit + Tag = 2 + Left = 502 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 1 + OnChange = YCLNameChange + end + object SWFBHW: TEdit + Tag = 2 + Left = 663 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = YCLNameChange + end + object BegDate: TDateTimePicker + Left = 77 + Top = 9 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 3 + end + object EndDate: TDateTimePicker + Left = 181 + Top = 9 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 4 + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 75 + Width = 1019 + Height = 399 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + Column = v2Column6 + end + item + Kind = skSum + Column = v1Column1 + end + item + Kind = skSum + end + item + Kind = skSum + Column = v2Column7 + end + item + Kind = skSum + Column = v2Column8 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_WFBProducttion.Default + object v2Column1: TcxGridDBColumn + Caption = #20135#21697#20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 92 + end + object v2Column2: TcxGridDBColumn + Caption = #24133#23485 + DataBinding.FieldName = 'XJFK' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 77 + end + object v2Column3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 77 + end + object v2Column4: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'SWFBKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 82 + end + object v1Column3: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v1Column4: TcxGridDBColumn + Caption = #32593#23380#30446#25968 + DataBinding.FieldName = 'WKMS' + Width = 57 + end + object v2Column5: TcxGridDBColumn + Caption = #19978#26399#25968#37327 + DataBinding.FieldName = 'SQJCS' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 73 + end + object v2Column6: TcxGridDBColumn + Caption = #26412#26399#20837#24211#25968#37327 + DataBinding.FieldName = 'RKS' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 101 + end + object v1Column1: TcxGridDBColumn + Caption = #26412#26399#22238#20179#25968#37327 + DataBinding.FieldName = 'HCS' + Options.Focusing = False + Width = 87 + end + object v2Column7: TcxGridDBColumn + Caption = #26412#26399#20986#24211#25968#37327 + DataBinding.FieldName = 'CKS' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 93 + end + object v2Column8: TcxGridDBColumn + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'KCQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 56 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 904 + Top = 40 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 840 + Top = 40 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 872 + Top = 40 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 624 + Top = 184 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 544 + Top = 176 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 416 + Top = 192 + end +end diff --git a/艾登贸易管理/U_CKProductBCPKC.pas b/艾登贸易管理/U_CKProductBCPKC.pas new file mode 100644 index 0000000..b141d79 --- /dev/null +++ b/艾登贸易管理/U_CKProductBCPKC.pas @@ -0,0 +1,207 @@ +unit U_CKProductBCPKC; + +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; + +type + TfrmCKProductBCPKC = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + cxGridPopupMenu1: TcxGridPopupMenu; + Label3: TLabel; + Label4: TLabel; + Label7: TLabel; + YCLName: TEdit; + SWFBColor: TEdit; + SWFBHW: TEdit; + Label1: TLabel; + Label2: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + CDS_Main: TClientDataSet; + Tv1: TcxGridDBTableView; + cxGrid2Level1: TcxGridLevel; + cxGrid2: TcxGrid; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure YCLNameChange(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 + frmCKProductBCPKC: TfrmCKProductBCPKC; + +implementation +uses + U_DataLink,U_Fun,U_CRMX; + +{$R *.dfm} + +procedure TfrmCKProductBCPKC.FormDestroy(Sender: TObject); +begin + frmCKProductBCPKC:=nil; +end; + +procedure TfrmCKProductBCPKC.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmCKProductBCPKC.FormCreate(Sender: TObject); +begin + //cxGrid1.Align:=alClient; + BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-30; + EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp) +end; + +procedure TfrmCKProductBCPKC.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + SQL.Add('exec CK_YCL_CRCHZ :begdate,:enddate,:CKName'); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime)); + Parameters.ParamByName('enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',enddate.DateTime+1)); + Parameters.ParamByName('CKName').Value:=Trim(DParameters1); + Open; + //ShowMessage(SQL.Text); + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmCKProductBCPKC.TBRafreshClick(Sender: TObject); +begin + BegDate.SetFocus; + InitGrid(); +end; + +procedure TfrmCKProductBCPKC.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + end; +end; + +procedure TfrmCKProductBCPKC.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ԭϿ2',Tv1,'ԭϲֿ'); + Close; +end; + +procedure TfrmCKProductBCPKC.FormShow(Sender: TObject); +begin + + ReadCxGrid('ԭϿ2',Tv1,'ԭϲֿ'); + if Trim(DParameters2)='ԭ' then + begin + ToolButton1.Visible:=True; + v2Column9.Options.Focusing:=True; + v2Column9.Visible:=True; + end else + begin + ToolButton1.Visible:=False; + v2Column9.Options.Focusing:=False; + v2Column9.Visible:=False; + end; + InitGrid(); +end; + +procedure TfrmCKProductBCPKC.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then exit; + TcxGridToExcel(Trim(DParameters1)+'',cxGrid2); +end; + +procedure TfrmCKProductBCPKC.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 TfrmCKProductBCPKC.YCLNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCKProductBCPKC.Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + try + frmCRMX:=TfrmCRMX.Create(Application); + with frmCRMX do + begin + Fbegdate:=FormatDateTime('yyyy-MM-dd',Self.BegDate.DateTime); + Fenddate:=FormatDateTime('yyyy-MM-dd',Self.enddate.DateTime+1); + {FGYS:=Trim(Self.CDS_Main.fieldbyname('GYS').AsString); + FYCLCode:=Trim(Self.CDS_Main.fieldbyname('YCLCode').AsString); + FYCLSpec:=Trim(Self.CDS_Main.fieldbyname('YCLSpec').AsString); + FCRUnit:=Trim(Self.CDS_Main.fieldbyname('KCUint').AsString); } + CRID:=Trim(Self.CDS_Main.fieldbyname('CRID').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmCRMX.Free; + end; +end; + +end. diff --git a/艾登贸易管理/U_CKProductBCPKCHZList.dfm b/艾登贸易管理/U_CKProductBCPKCHZList.dfm new file mode 100644 index 0000000..fa7d5f9 --- /dev/null +++ b/艾登贸易管理/U_CKProductBCPKCHZList.dfm @@ -0,0 +1,499 @@ +object frmCKProductBCPKCHZList: TfrmCKProductBCPKCHZList + Left = 128 + Top = 152 + Width = 1027 + Height = 511 + Caption = #25104#21697#24211#23384#27719#24635#21015#34920 + 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 = 1011 + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBExport: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + end + object TBClose: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1011 + Height = 56 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 36 + Top = 36 + Width = 48 + Height = 12 + Caption = #20013#25991#21517#31216 + end + object Label4: TLabel + Left = 360 + Top = 12 + Width = 24 + Height = 12 + Caption = #39068#33394 + end + object Label1: TLabel + Left = 784 + Top = 12 + Width = 48 + Height = 12 + Caption = #26597#35810#26102#38388 + Visible = False + end + object Label2: TLabel + Left = 816 + Top = 36 + Width = 12 + Height = 12 + Caption = #33267 + Visible = False + end + object Label5: TLabel + Left = 36 + Top = 12 + Width = 48 + Height = 12 + Caption = #35746' '#21333' '#21495 + end + object Label6: TLabel + Left = 36 + Top = 72 + Width = 48 + Height = 12 + Caption = #26465' '#30721 + end + object Label8: TLabel + Left = 216 + Top = 36 + Width = 24 + Height = 12 + Caption = #20811#37325 + end + object Label9: TLabel + Left = 216 + Top = 12 + Width = 24 + Height = 12 + Caption = #38376#24133 + end + object Label7: TLabel + Left = 360 + Top = 36 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object Label10: TLabel + Left = 504 + Top = 36 + Width = 6 + Height = 12 + end + object Label11: TLabel + Left = 508 + Top = 12 + Width = 36 + Height = 12 + Caption = #19994#21153#21592 + end + object Label12: TLabel + Left = 508 + Top = 36 + Width = 36 + Height = 12 + Caption = #36319#21333#21592 + end + object Label13: TLabel + Left = 672 + Top = 12 + Width = 24 + Height = 12 + Caption = #24211#20301 + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 86 + Top = 32 + Width = 100 + Height = 20 + TabOrder = 0 + OnChange = MPRTCodeNameChange + end + object BegDate: TDateTimePicker + Left = 829 + Top = 9 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 1 + Visible = False + end + object EndDate: TDateTimePicker + Left = 829 + Top = 33 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 2 + Visible = False + end + object orderNo: TEdit + Tag = 2 + Left = 86 + Top = 8 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = MPRTCodeNameChange + end + object MJID: TEdit + Tag = 2 + Left = 82 + Top = 68 + Width = 109 + Height = 20 + TabOrder = 4 + OnChange = MPRTCodeNameChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 244 + Top = 32 + Width = 80 + Height = 20 + TabOrder = 5 + OnChange = MPRTCodeNameChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 244 + Top = 8 + Width = 80 + Height = 20 + TabOrder = 6 + OnChange = MPRTCodeNameChange + end + object CPType: TComboBox + Tag = 2 + Left = 392 + Top = 32 + Width = 80 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 7 + OnChange = TBFindClick + Items.Strings = ( + #27491#21697 + #27425#21697 + #22810#25340 + '') + end + object YWY: TEdit + Tag = 2 + Left = 546 + Top = 8 + Width = 80 + Height = 20 + TabOrder = 8 + OnChange = MPRTCodeNameChange + end + object OrdPerson1: TEdit + Tag = 2 + Left = 546 + Top = 32 + Width = 80 + Height = 20 + TabOrder = 9 + OnChange = MPRTCodeNameChange + end + object PRTColor: TComboBox + Tag = 1 + Left = 392 + Top = 8 + Width = 80 + Height = 20 + ItemHeight = 12 + TabOrder = 10 + OnChange = PRTColorChange + end + object RKplace: TEdit + Tag = 2 + Left = 698 + Top = 8 + Width = 80 + Height = 20 + TabOrder = 11 + OnChange = MPRTCodeNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 89 + Width = 1011 + Height = 384 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv1CellClick + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Column6 + end + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + Column = v2Column6 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1Column11: TcxGridDBColumn + Caption = #24211#20301 + DataBinding.FieldName = 'RKPlace' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 91 + end + object v1Column1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 74 + end + object v2Column1: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 92 + end + object v2Column3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 77 + end + object v1Column5: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'SOrddefstr1' + HeaderAlignmentHorz = taCenter + Width = 71 + end + object v1Column10: TcxGridDBColumn + Caption = #33457#22411#33457#21495 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v1Column2: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'YWY' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 52 + end + object v1Column4: TcxGridDBColumn + Caption = #36319#21333#21592 + DataBinding.FieldName = 'OrdPerson1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 53 + end + object v1Column8: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 70 + end + object v1Column9: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 59 + end + object v1Column3: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'CPType' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 63 + end + object v1Column6: TcxGridDBColumn + Caption = #21367#25968#37327 + DataBinding.FieldName = 'JQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 74 + end + object v2Column5: TcxGridDBColumn + Caption = #24211#23384#20844#26020#25968 + DataBinding.FieldName = 'KCKGQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 83 + end + object v2Column6: TcxGridDBColumn + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'KCQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 85 + end + object v1Column7: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'KCQtyUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 83 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object MovePanel2: TMovePanel + Left = 408 + Top = 192 + Width = 289 + Height = 49 + BevelInner = bvLowered + Caption = #27491#22312#26597#35810#25968#25454#65292#35831#31245#21518#12290#12290#12290 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 968 + Top = 40 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 984 + Top = 40 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 944 + Top = 32 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 920 + Top = 152 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 144 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 896 + Top = 128 + end +end diff --git a/艾登贸易管理/U_CKProductBCPKCHZList.pas b/艾登贸易管理/U_CKProductBCPKCHZList.pas new file mode 100644 index 0000000..b43a0d7 --- /dev/null +++ b/艾登贸易管理/U_CKProductBCPKCHZList.pas @@ -0,0 +1,261 @@ +unit U_CKProductBCPKCHZList; + +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, MovePanel, cxButtonEdit; + +type + TfrmCKProductBCPKCHZList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + cxGridPopupMenu1: TcxGridPopupMenu; + Label3: TLabel; + Label4: TLabel; + MPRTCodeName: TEdit; + Label1: TLabel; + Label2: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + CDS_Main: TClientDataSet; + Tv1: TcxGridDBTableView; + cxGrid2Level1: TcxGridLevel; + cxGrid2: TcxGrid; + v2Column1: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + Label5: TLabel; + orderNo: TEdit; + Label6: TLabel; + MJID: TEdit; + v1Column7: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + Label8: TLabel; + MPRTKZ: TEdit; + Label9: TLabel; + MPRTMF: TEdit; + Label7: TLabel; + CPType: TComboBox; + v1Column3: TcxGridDBColumn; + MovePanel2: TMovePanel; + v1Column2: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + Label10: TLabel; + Label11: TLabel; + Label12: TLabel; + YWY: TEdit; + OrdPerson1: TEdit; + v1Column5: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + PRTColor: TComboBox; + v1Column11: TcxGridDBColumn; + RKplace: TEdit; + Label13: TLabel; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure MPRTCodeNameChange(Sender: TObject); + procedure v1Column5PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure PRTColorChange(Sender: TObject); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + procedure InitGrid(); + { Private declarations } + public + { Public declarations } + end; + +var + frmCKProductBCPKCHZList: TfrmCKProductBCPKCHZList; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmCKProductBCPKCHZList.FormDestroy(Sender: TObject); +begin + frmCKProductBCPKCHZList:=nil; +end; + +procedure TfrmCKProductBCPKCHZList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmCKProductBCPKCHZList.FormCreate(Sender: TObject); +begin + //cxGrid1.Align:=alClient; + BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp) +end; + +procedure TfrmCKProductBCPKCHZList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select YWY=B.OrdPerson2,B.OrdPerson1,C.SOrdDefStr10,C.SubId,A.* ,B.OrdDefStr1,B.OrderNo,B.MPRTCodeName,C.PRTColor,B.MPRTMF,B.MPRTKZ '); + sql.Add(',C.SOrddefstr1,C.PRTHX'); + sql.Add(' from(select sum(KCQty) KCQty,Sum(KCKgQty) KCKgQty,count(*) JQty,AA.MainId,AA.SubId,AA.CPType,AA.RKPlace,KC.KCQtyUnit '); + sql.Add(' from CK_BanCP_KC KC inner join CK_BanCP_CR AA on KC.CRID=AA.CRID and AA.CRType='''''); + sql.Add(' where (KC.KCQty>0 or KC.KCKgQty>0) group by AA.MainId,AA.SubId,AA.CPType,AA.RKPlace,KC.KCQtyUnit ) A'); + Sql.add(' inner join JYOrder_Main B on A.MainId=B.MainId'); + Sql.add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); + if Trim(DParameters1)<>'Ȩ' then + begin + // sql.Add(' where B.Filler='''+Trim(DName)+''''); + end else + begin + end; + Open; + //ShowMessage(SQL.Text); + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmCKProductBCPKCHZList.TBRafreshClick(Sender: TObject); +begin + //BegDate.SetFocus; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + InitGrid(); + MovePanel2.Visible:=False; +end; + +procedure TfrmCKProductBCPKCHZList.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + end; +end; + +procedure TfrmCKProductBCPKCHZList.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption+tv1.Name,Tv1,'Ʒֿ'); + Close; +end; + +procedure TfrmCKProductBCPKCHZList.FormShow(Sender: TObject); +begin + + ReadCxGrid(self.Caption+tv1.Name,Tv1,'Ʒֿ'); + if Trim(DParameters2)='' then + begin + //v1Column5.Options.Focusing:=True; + end else + begin + //v1Column5.Options.Focusing:=False; + end; + //InitGrid(); +end; + +procedure TfrmCKProductBCPKCHZList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then exit; + TcxGridToExcel('б',cxGrid2); +end; + +procedure TfrmCKProductBCPKCHZList.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 TfrmCKProductBCPKCHZList.MPRTCodeNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCKProductBCPKCHZList.v1Column5PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='SOrdDefStr10'; + flagname:='ŵص'; + if ShowModal=1 then + begin + with CDS_Main do + begin + Edit; + FieldByName('SOrdDefStr10').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrder_Sub Set SOrdDefStr10='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + sql.Add(' where SubId='''+Trim(Self.CDS_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmCKProductBCPKCHZList.PRTColorChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCKProductBCPKCHZList.Tv1CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if CDS_Main.IsEmpty=False then + begin + InitOrderColor(Trim(CDS_Main.fieldbyname('MainId').AsString),PRTColor,ADOQueryTemp); + //InitBCGangNo(Trim(CDS_Main.fieldbyname('SubId').AsString),AOrdDefStr1,ADOQueryTemp); + end; +end; + +end. diff --git a/艾登贸易管理/U_CKProductBCPKCList.dfm b/艾登贸易管理/U_CKProductBCPKCList.dfm new file mode 100644 index 0000000..f83776c --- /dev/null +++ b/艾登贸易管理/U_CKProductBCPKCList.dfm @@ -0,0 +1,956 @@ +object frmCKProductBCPKCList: TfrmCKProductBCPKCList + Left = 5 + Top = 121 + Width = 1323 + Height = 610 + Caption = #25104#21697#24211#23384#21015#34920 + 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 = 1307 + Height = 33 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBExport: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + end + object TBZD: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #36716#21333 + ImageIndex = 102 + OnClick = TBZDClick + end + object ToolButton1: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 57 + OnClick = ToolButton1Click + end + object print: TToolButton + Left = 378 + Top = 0 + Caption = #25171#21360#26631#31614 + ImageIndex = 12 + OnClick = printClick + end + object TBClose: TToolButton + Left = 461 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1307 + Height = 84 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 193 + Top = 12 + Width = 48 + Height = 12 + Caption = #20013#25991#21517#31216 + end + object Label1: TLabel + Left = 1172 + Top = 68 + Width = 48 + Height = 12 + Caption = #26597#35810#26102#38388 + Visible = False + end + object Label2: TLabel + Left = 1200 + Top = 96 + Width = 12 + Height = 12 + Caption = #33267 + Visible = False + end + object Label5: TLabel + Left = 22 + Top = 12 + Width = 48 + Height = 12 + Caption = #35746' '#21333' '#21495 + end + object Label6: TLabel + Left = 22 + Top = 36 + Width = 48 + Height = 12 + Caption = #26465' '#30721 + end + object Label8: TLabel + Left = 357 + Top = 36 + Width = 24 + Height = 12 + Caption = #20811#37325 + end + object Label9: TLabel + Left = 358 + Top = 60 + Width = 24 + Height = 12 + Caption = #38376#24133 + end + object Label7: TLabel + Left = 508 + Top = 36 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object Label4: TLabel + Left = 358 + Top = 12 + Width = 24 + Height = 12 + Caption = #39068#33394 + end + object Label10: TLabel + Left = 508 + Top = 12 + Width = 24 + Height = 12 + Caption = #32568#21495 + end + object Label12: TLabel + Left = 656 + Top = 12 + Width = 24 + Height = 12 + Caption = #21253#21495 + end + object Label34: TLabel + Left = 68 + Top = 62 + Width = 52 + Height = 12 + Caption = #25171#21360#20221#25968 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 656 + Top = 36 + Width = 24 + Height = 12 + Caption = #27454#21495 + end + object Label14: TLabel + Left = 861 + Top = 12 + Width = 26 + Height = 12 + Caption = #24211#20301 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label15: TLabel + Left = 193 + Top = 60 + Width = 48 + Height = 12 + Caption = #24211' '#20301 + end + object Label16: TLabel + Left = 193 + Top = 36 + Width = 48 + Height = 12 + Caption = #23458' '#25143 + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 242 + Top = 8 + Width = 90 + Height = 20 + TabOrder = 0 + OnChange = MPRTCodeNameChange + end + object BegDate: TDateTimePicker + Left = 1221 + Top = 65 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 1 + Visible = False + end + object EndDate: TDateTimePicker + Left = 1221 + Top = 89 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 2 + Visible = False + end + object orderNo: TEdit + Tag = 2 + Left = 72 + Top = 8 + Width = 90 + Height = 20 + TabOrder = 3 + OnChange = MPRTCodeNameChange + end + object MJID: TEdit + Tag = 2 + Left = 72 + Top = 33 + Width = 90 + Height = 20 + TabOrder = 4 + OnChange = MPRTCodeNameChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 384 + Top = 33 + Width = 90 + Height = 20 + TabOrder = 5 + OnChange = MPRTCodeNameChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 384 + Top = 56 + Width = 90 + Height = 20 + TabOrder = 6 + OnChange = MPRTCodeNameChange + end + object CPType: TComboBox + Tag = 2 + Left = 535 + Top = 32 + Width = 90 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 7 + OnChange = TBFindClick + Items.Strings = ( + #27491#21697 + #27425#21697 + #22810#25340 + '' + '' + '') + end + object PRTColor: TComboBox + Tag = 1 + Left = 384 + Top = 8 + Width = 90 + Height = 20 + ItemHeight = 12 + TabOrder = 8 + OnChange = PRTColorChange + end + object AOrdDefStr1: TComboBox + Tag = 1 + Left = 535 + Top = 8 + Width = 90 + Height = 20 + ItemHeight = 12 + TabOrder = 9 + OnChange = AOrdDefStr1Change + end + object baoNo: TEdit + Tag = 1 + Left = 682 + Top = 8 + Width = 90 + Height = 20 + TabOrder = 10 + OnChange = MPRTCodeNameChange + end + object CheckBox1: TCheckBox + Left = 16 + Top = 60 + Width = 49 + Height = 17 + Caption = #20840#36873 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + OnClick = CheckBox1Click + end + object ComboBox1: TComboBox + Left = 122 + Top = 60 + Width = 40 + Height = 20 + Style = csDropDownList + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ItemHeight = 12 + ItemIndex = 1 + ParentFont = False + TabOrder = 12 + Text = '2' + Items.Strings = ( + '1' + '2' + '3' + '4') + end + object PRTKuanNO: TEdit + Tag = 2 + Left = 682 + Top = 32 + Width = 90 + Height = 20 + TabOrder = 13 + OnChange = MPRTCodeNameChange + end + object RKPlace1: TBtnEditA + Left = 888 + Top = 7 + Width = 100 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 14 + OnBtnClick = RKPlace1BtnClick + end + object Button1: TButton + Left = 988 + Top = 8 + Width = 65 + Height = 21 + Caption = #30830#23450 + TabOrder = 15 + OnClick = Button1Click + end + object RKplace: TEdit + Tag = 2 + Left = 242 + Top = 57 + Width = 90 + Height = 20 + TabOrder = 16 + OnChange = MPRTCodeNameChange + end + object customerNoName: TEdit + Tag = 2 + Left = 242 + Top = 32 + Width = 90 + Height = 20 + TabOrder = 17 + OnChange = MPRTCodeNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 117 + Width = 1307 + Height = 455 + Align = alClient + PopupMenu = PopupMenu1 + TabOrder = 2 + object Tv1: TcxGridDBTableView + OnMouseUp = Tv1MouseUp + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv1CellClick + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skCount + Column = v1Column6 + end + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + Column = v2Column6 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1Column12: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 53 + end + object v1Column1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 74 + end + object v1Column17: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'customerNoName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v2Column1: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 92 + end + object v1Column10: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'SOrddefstr1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 59 + end + object v1Column13: TcxGridDBColumn + Caption = #33457#22411#33457#21495 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 58 + end + object v2Column3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 77 + end + object v1Column8: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column9: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 59 + end + object v1Column6: TcxGridDBColumn + Caption = #26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 92 + end + object v1Column2: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'AOrdDefStr1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 62 + end + object v1Column14: TcxGridDBColumn + Caption = #21253#21495 + DataBinding.FieldName = 'baoNO' + HeaderAlignmentHorz = taCenter + Styles.Content = FontBlue + Styles.Footer = FontBlue + Styles.Header = FontBlue + Width = 60 + end + object v1Column4: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 59 + end + object v1Column3: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'CPType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 63 + end + object v2Column5: TcxGridDBColumn + Caption = #24211#23384#20844#26020#25968 + DataBinding.FieldName = 'KCKGQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 83 + end + object v2Column6: TcxGridDBColumn + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'KCQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 85 + end + object v1Column7: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 83 + end + object v1Column5: TcxGridDBColumn + Caption = #30133#28857#24773#20917 + DataBinding.FieldName = 'CDQK' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 96 + end + object v1Column11: TcxGridDBColumn + Caption = #20837#24211#26102#38388 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Options.Editing = False + Width = 61 + end + object v1Column15: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'PRTKuanNO' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column16: TcxGridDBColumn + Caption = #24211#20301 + DataBinding.FieldName = 'RKplace' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel4: TPanel + Left = 62 + Top = 139 + Width = 294 + Height = 213 + TabOrder = 3 + Visible = False + object Label11: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 292 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #20107#20214#35828#26126 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 269 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object RichEdit1: TRichEdit + Left = 1 + Top = 24 + Width = 292 + Height = 188 + Align = alClient + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ParentFont = False + TabOrder = 1 + end + end + object MovePanel2: TMovePanel + Left = 408 + Top = 192 + Width = 289 + Height = 49 + BevelInner = bvLowered + Caption = #27491#22312#25805#20316#25968#25454#65292#35831#31245#21518#12290#12290#12290 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 1200 + Top = 40 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1148 + Top = 20 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1036 + Top = 4 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 920 + Top = 152 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 144 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 608 + Top = 160 + end + object PopupMenu1: TPopupMenu + Left = 392 + Top = 152 + object N1: TMenuItem + Caption = #20840#36873 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #20840#24323 + OnClick = N2Click + end + end + object ThreeColorBase: TcxStyleRepository + Left = 539 + Top = 316 + object SHuangSe: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = 4707838 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + TextColor = clBtnText + end + object SkyBlue: TcxStyle + AssignedValues = [svColor, svFont] + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object Default: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object QHuangSe: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object FontBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object TextSHuangSe: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlack + end + object FonePurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindow + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlack + end + object FoneClMaroon: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clMaroon + end + object FoneRed: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clRed + end + object RowColor: TcxStyle + AssignedValues = [svColor] + Color = 16311512 + end + object handBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxBlue: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16711731 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 1172 + Top = 68 + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1088 + Top = 4 + end + object RM2: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 796 + Top = 88 + ReportData = {} + end +end diff --git a/艾登贸易管理/U_CKProductBCPKCList.pas b/艾登贸易管理/U_CKProductBCPKCList.pas new file mode 100644 index 0000000..c1b48a6 --- /dev/null +++ b/艾登贸易管理/U_CKProductBCPKCList.pas @@ -0,0 +1,655 @@ +unit U_CKProductBCPKCList; + +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, MovePanel, cxCheckBox, + Menus, cxCalendar, RM_Common, RM_Class, RM_GridReport, RM_System, + RM_Dataset, BtnEdit; + +type + TfrmCKProductBCPKCList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + cxGridPopupMenu1: TcxGridPopupMenu; + Label3: TLabel; + MPRTCodeName: TEdit; + Label1: TLabel; + Label2: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + CDS_Main: TClientDataSet; + Tv1: TcxGridDBTableView; + cxGrid2Level1: TcxGridLevel; + cxGrid2: TcxGrid; + v2Column1: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + Label5: TLabel; + orderNo: TEdit; + Label6: TLabel; + MJID: TEdit; + v1Column7: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + Label8: TLabel; + MPRTKZ: TEdit; + Label9: TLabel; + MPRTMF: TEdit; + Label7: TLabel; + CPType: TComboBox; + v1Column3: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + Panel4: TPanel; + Label11: TLabel; + Panel10: TPanel; + Image2: TImage; + RichEdit1: TRichEdit; + MovePanel2: TMovePanel; + v1Column11: TcxGridDBColumn; + TBZD: TToolButton; + v1Column12: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + v1Column10: TcxGridDBColumn; + v1Column13: TcxGridDBColumn; + Label4: TLabel; + Label10: TLabel; + PRTColor: TComboBox; + AOrdDefStr1: TComboBox; + v1Column14: TcxGridDBColumn; + ThreeColorBase: TcxStyleRepository; + SHuangSe: TcxStyle; + SkyBlue: TcxStyle; + Default: TcxStyle; + QHuangSe: TcxStyle; + Red: TcxStyle; + FontBlue: TcxStyle; + TextSHuangSe: TcxStyle; + FonePurple: TcxStyle; + FoneClMaroon: TcxStyle; + FoneRed: TcxStyle; + RowColor: TcxStyle; + handBlack: TcxStyle; + cxBlue: TcxStyle; + ToolButton1: TToolButton; + Label12: TLabel; + baoNo: TEdit; + CheckBox1: TCheckBox; + print: TToolButton; + RMDB_Main: TRMDBDataSet; + ADOQueryPrint: TADOQuery; + RM2: TRMGridReport; + ComboBox1: TComboBox; + Label34: TLabel; + v1Column15: TcxGridDBColumn; + PRTKuanNO: TEdit; + Label13: TLabel; + v1Column16: TcxGridDBColumn; + RKPlace1: TBtnEditA; + Label14: TLabel; + Button1: TButton; + RKplace: TEdit; + Label15: TLabel; + v1Column17: TcxGridDBColumn; + customerNoName: TEdit; + Label16: TLabel; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure MPRTCodeNameChange(Sender: TObject); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, + Y: Integer); + procedure Image2Click(Sender: TObject); + procedure Tv1MouseUp(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBZDClick(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure PRTColorChange(Sender: TObject); + procedure AOrdDefStr1Change(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure printClick(Sender: TObject); + procedure RKPlace1BtnClick(Sender: TObject); + procedure Button1Click(Sender: TObject); + private + FLeft,FTop:Integer; + procedure InitGrid(); + function PrtData(FMJID:String):boolean; + { Private declarations } + public + { Public declarations } + end; + +var + frmCKProductBCPKCList: TfrmCKProductBCPKCList; + +implementation +uses + U_DataLink,U_Fun,U_ProductOrderListSel, U_ZDYHelp; + +{$R *.dfm} +function TfrmCKProductBCPKCList.PrtData(FMJID:String):boolean; +var + fPrintFile:String; + Txt,fImagePath:string; + Moudle: THandle; + Makebar:TMakebar; + Mixtext:TMixtext; +begin + result:=false; + try + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add('select QtyUnit=A.MJTypeOther,B.orderNo,B.conNo,GangNo=D.AOrddefStr1,PRTColorEng=E.Note,B.LBName '); + sql.Add(',khConNo=(select top 1 khConNo from JYOrderCon_Main X where X.ConNO=B.conNO) '); + sql.Add(',MPRTCodeNameEng=ISNULL((select Top 1 F.note from KH_Zdy F where F.zdyname=B.MPRTCodeName and F.Type=''PRTCodeName''),B.MPRTCodeName)'); + sql.Add(',B.MPRTCF,B.MPRTMF,B.MPRTKZ,C.SOrddefstr4,B.MPRTCodeName,B.MPRTSpec,B.MPRTKuanNO,C.*,A.* '); + sql.Add(',Case when A.MJSJKZ*A.MJFK<>0 then Cast(A.MJQty4*1000/A.MJSJKZ/(A.MJFK/100) as int) else 0 end as MQty'); + sql.Add(' from WFB_MJJY A') ; + sql.Add(' inner join JYOrder_Main B On A.Mainid=B.Mainid'); + sql.Add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); + sql.Add(' left join KH_Zdy E on C.PRTColor=E.ZdyName and E.Type=''OrdColor'' '); + sql.Add(' inner join JYOrder_Sub_AnPai D on A.APId=D.APId '); + SQL.Add(' where A.MJID='''+Trim(FMJID)+''''); + Open; + end; + + try + Moudle:=LoadLibrary('MakeQRBarcode.dll'); + @Makebar:=GetProcAddress(Moudle,'Make'); + @Mixtext:=GetProcAddress(Moudle,'MixText'); + Txt:=Trim(ADOQueryPrint.fieldbyname('MJID').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); + exit; + end; + + if Trim(ADOQueryPrint.fieldbyname('LBName').AsString)<>'' then + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\'+Trim(ADOQueryPrint.fieldbyname('LBName').AsString)+'.rmf' + else + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ͨӢıǩ.rmf' ; + if FileExists(fPrintFile) then + begin + RMVariables['QRBARCODE']:=fImagePath; + Rm2.DefaultCopies:=strtointdef(trim(ComboBox1.Text),1); + RM2.LoadFromFile(fPrintFile); + //RM2.ShowReport; + RM2.PrintReport; + end + else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\'+Trim(ADOQueryPrint.fieldbyname('LBName').AsString)),'ʾ',0); + exit; + end; + result:=true; + except + end; +end; + +procedure TfrmCKProductBCPKCList.FormDestroy(Sender: TObject); +begin + frmCKProductBCPKCList:=nil; +end; + +procedure TfrmCKProductBCPKCList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmCKProductBCPKCList.FormCreate(Sender: TObject); +begin + BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp) +end; + +procedure TfrmCKProductBCPKCList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + SQL.Add('exec P_View_CPKCMX :WSQl'); + if Trim(DParameters2)<>'' then + begin + // Parameters.ParamByName('WSQl').Value:=' and B.Filler='''+Trim(DName)+''''; + end else + begin + // Parameters.ParamByName('WSQl').Value:=''; + end; + Parameters.ParamByName('WSQl').Value:=''; + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmCKProductBCPKCList.TBRafreshClick(Sender: TObject); +begin + // BegDate.SetFocus; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + InitGrid(); + MovePanel2.Visible:=False; +end; + +procedure TfrmCKProductBCPKCList.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + end; +end; + +procedure TfrmCKProductBCPKCList.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ֿб',Tv1,'Ʒֿ'); + Close; +end; + +procedure TfrmCKProductBCPKCList.FormShow(Sender: TObject); +begin + + ReadCxGrid('ֿб',Tv1,'Ʒֿ'); + if Trim(DParameters2)='' then + begin + TBZD.Visible:=True; + // ToolButton1.Visible:=true; + end else + begin + TBZD.Visible:=False; + // ToolButton1.Visible:=false; + end; + //InitGrid(); +end; + +procedure TfrmCKProductBCPKCList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then exit; + TcxGridToExcel('б',cxGrid2); +end; + +procedure TfrmCKProductBCPKCList.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 TfrmCKProductBCPKCList.MPRTCodeNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCKProductBCPKCList.Panel10MouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel4).Perform(WM_SYSCOMMAND,$F012,0); +end; + +procedure TfrmCKProductBCPKCList.Image2Click(Sender: TObject); +begin + Panel4.Visible:=False; +end; + +procedure TfrmCKProductBCPKCList.Tv1MouseUp(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FLeft:=X; + FTop:=Y; +end; + +procedure TfrmCKProductBCPKCList.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + {if Trim(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName)<>'CDQK' then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select CDQK=dbo.F_Get_Order_SubStr(:MJID,''MJCDHZSL'')'); + Parameters.ParamByName('MJID').Value:=Trim(CDS_Main.fieldbyname('MJID').AsString); + Open; + end; + with CDS_Main do + begin + Edit; + FieldByName('CDQK').Value:=Trim(ADOQueryTemp.fieldbyname('CDQK').AsString); + Post; + end; } + Panel4.Left:=FLeft; + Panel4.Top:=FTop+110; + Panel4.Visible:=True; + Panel4.Refresh; + Panel10.Caption:=Trim(TV1.Controller.FocusedColumn.Caption); + + RichEdit1.Text:=CDS_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString; +end; + +procedure TfrmCKProductBCPKCList.TBZDClick(Sender: TObject); +var + FMainid,FSubId,FOrderNo,FColor,FSH,FHX,FCodeName,FMPRTMF,FMPRTKZ:String; +begin + if CDS_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + FMainid:=''; + try + frmProductOrderListSel:=TfrmProductOrderListSel.Create(Application); + with frmProductOrderListSel do + begin + FFInt:=1; + if ShowModal=1 then + begin + FMainid:=frmProductOrderListSel.Order_Main.fieldbyname('Mainid').AsString; + FSubId:=frmProductOrderListSel.Order_Main.fieldbyname('SubId').AsString; + FOrderNo:=frmProductOrderListSel.Order_Main.fieldbyname('OrderNo').Value; + FCodeName:=frmProductOrderListSel.Order_Main.fieldbyname('MPRTCodeName').Value; + FColor:=frmProductOrderListSel.Order_Main.fieldbyname('PRTColor').Value; + if Trim(frmProductOrderListSel.Order_Main.fieldbyname('SOrddefstr1').AsString)<>'' then + FSH:=frmProductOrderListSel.Order_Main.fieldbyname('SOrddefstr1').AsString; + if Trim(frmProductOrderListSel.Order_Main.fieldbyname('PRTHX').AsString)<>'' then + FHX:=frmProductOrderListSel.Order_Main.fieldbyname('PRTHX').Value; + FMPRTMF:=frmProductOrderListSel.Order_Main.fieldbyname('MPRTMF').AsString; + FMPRTKZ:=frmProductOrderListSel.Order_Main.fieldbyname('MPRTKZ').AsString; + end; + end; + finally + frmProductOrderListSel.Free; + end; + if Trim(FMainid)<>'' then + begin + if Application.MessageBox('ȷҪִд˲','ʾ',32+4)<>IDYES then Exit; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + try + Self.ADOQueryCmd.Connection.BeginTrans; + Self.CDS_Main.DisableControls; + with Self.CDS_Main do + begin + while not Eof do + begin + if Self.CDS_Main.FieldByName('SSEl').AsBoolean=True then + begin + with Self.ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate CK_BanCP_CR Set MainId='''+Trim(FMainid)+''''); + sql.Add(',SubId='''+Trim(FSubId)+''''); + sql.Add(',ZDPerson='''+Trim(DName)+''',ZDTime=getdate() '); + sql.Add(' where CRID='+self.CDS_Main.fieldbyname('CRID').AsString); + SQL.Add(' and CRType='''' '); + sql.Add('UPdate WFB_MJJY Set MainId='''+Trim(FMainid)+''''); + sql.Add(',SubId='''+Trim(FSubId)+''''); + //sql.Add(',ZDPerson='''+Trim(DName)+''',ZDTime=getdate() '); + sql.Add(' where MJID='+self.CDS_Main.fieldbyname('MJID').AsString); + ExecSQL; + end; + Edit; + FieldByName('OrderNo').Value:=FOrderNo; + FieldByName('MPRTCodeName').Value:=FCodeName; + FieldByName('PRTColor').Value:=FColor; + FieldByName('SOrddefstr1').Value:=FSH; + FieldByName('PRTHX').Value:=FHX; + FieldByName('MPRTMF').Value:=FMPRTMF; + FieldByName('MPRTKZ').Value:=FMPRTKZ; + Post; + end; + Next; + end; + end; + Self.CDS_Main.EnableControls; + Self.ADOQueryCmd.Connection.CommitTrans; + MovePanel2.Visible:=False; + except + Self.ADOQueryCmd.Connection.RollbackTrans; + MovePanel2.Visible:=False; + Application.MessageBox('תʧ!','ʾ',0) ; + end; + end; +end; + +procedure TfrmCKProductBCPKCList.N1Click(Sender: TObject); +begin + SelOKNo(CDS_Main,True); +end; + +procedure TfrmCKProductBCPKCList.N2Click(Sender: TObject); +begin + SelOKNo(CDS_Main,False); +end; + +procedure TfrmCKProductBCPKCList.Tv1CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if CDS_Main.IsEmpty=False then + begin + InitOrderColor(Trim(CDS_Main.fieldbyname('MainId').AsString),PRTColor,ADOQueryTemp); + InitBCGangNo(Trim(CDS_Main.fieldbyname('SubId').AsString),AOrdDefStr1,ADOQueryTemp); + end; +end; + +procedure TfrmCKProductBCPKCList.PRTColorChange(Sender: TObject); +begin + TBFind.Click; + if CDS_Main.IsEmpty=False then + begin + //InitOrderColor(Trim(CDS_Main.fieldbyname('MainId').AsString),PRTColor,ADOQueryTemp); + InitBCGangNo(Trim(CDS_Main.fieldbyname('SubId').AsString),AOrdDefStr1,ADOQueryTemp); + end; +end; + +procedure TfrmCKProductBCPKCList.AOrdDefStr1Change(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCKProductBCPKCList.ToolButton1Click(Sender: TObject); +begin + IF CDS_main.IsEmpty then exit; + orderNo.SetFocus; + if CDS_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + + ADOQueryCmd.Connection.BeginTrans; + try + with CDS_Main do + begin + DisableControls; + first; + while not eof do + begin + IF fieldbyname('ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update CK_BanCP_CR '); + sql.Add('SET baoNO='+quotedstr(CDS_Main.fieldbyname('baoNO').AsString)); + sql.Add('where BCID='+quotedstr(CDS_Main.fieldbyname('BCID').AsString)); + sql.Add('and MJID='+quotedstr(CDS_Main.fieldbyname('MJID').AsString)); + execsql; + end; + end; + next; + end; + first; + EnableControls; + end; + ADOQueryCmd.Connection.CommitTrans; + application.MessageBox('ݱɹ','ʾϢ'); + exit; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ݱʧܣ','ʾϢ',MB_ICONERROR); + exit; + end; +end; + +procedure TfrmCKProductBCPKCList.CheckBox1Click(Sender: TObject); +begin + with CDS_Main do + begin + DisableControls; + first; + while not eof do + begin + edit; + fieldbyname('ssel').Value:=checkbox1.Checked; + post; + next; + end; + first; + EnableControls; + end; +end; + +procedure TfrmCKProductBCPKCList.printClick(Sender: TObject); +begin + if CDS_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + + with CDS_Main do + begin + DisableControls; + first; + while not Eof do + begin + if Self.CDS_Main.FieldByName('SSEl').AsBoolean=True then + begin + iF not PrtData(CDS_Main.fieldbyname('MJID').AsString) then + begin + EnableControls; + exit; + end; + end; + Next; + end; + EnableControls; + end; +end; + +procedure TfrmCKProductBCPKCList.RKPlace1BtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='KuWei'; + flagname:='λ'; + if ShowModal=1 then + begin + RKPlace1.Text:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmCKProductBCPKCList.Button1Click(Sender: TObject); +begin + // IF trim(RKPlace1.Text)='' then exit; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + try + Self.ADOQueryCmd.Connection.BeginTrans; + Self.CDS_Main.DisableControls; + with Self.CDS_Main do + begin + while not Eof do + begin + if Self.CDS_Main.FieldByName('SSEl').AsBoolean=True then + begin + with Self.ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate CK_BanCP_CR Set RKPlace='+quotedstr(trim(RKPlace1.Text))); + sql.Add(' where BCID='+quotedstr(trim(self.CDS_Main.fieldbyname('BCID').AsString))); + ExecSQL; + end; + Edit; + FieldByName('RKPlace').Value:=trim(rkplace1.Text); + Post; + end; + Next; + end; + end; + Self.CDS_Main.EnableControls; + Self.ADOQueryCmd.Connection.CommitTrans; + MovePanel2.Visible:=False; + except + Self.ADOQueryCmd.Connection.RollbackTrans; + MovePanel2.Visible:=False; + Application.MessageBox('תƿλʧ!','ʾ',0) ; + end; +end; + +end. diff --git a/艾登贸易管理/U_CKProductBCPOutList.dfm b/艾登贸易管理/U_CKProductBCPOutList.dfm new file mode 100644 index 0000000..bb176b6 --- /dev/null +++ b/艾登贸易管理/U_CKProductBCPOutList.dfm @@ -0,0 +1,1463 @@ +object frmCKProductBCPOutList: TfrmCKProductBCPOutList + Left = -61 + Top = 55 + Width = 1382 + Height = 777 + Caption = #25104#21697#20986#24211#21015#34920 + 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 = 1366 + Height = 33 + ButtonHeight = 30 + ButtonWidth = 107 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBCKCX: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #25764#38144#20986#24211 + ImageIndex = 129 + Visible = False + OnClick = TBCKCXClick + end + object ToolButton1: TToolButton + Left = 213 + Top = 0 + AutoSize = True + Caption = #36864#24211#25195#25551 + ImageIndex = 129 + Visible = False + OnClick = ToolButton1Click + end + object TBExport: TToolButton + Left = 300 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 363 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object ComboBox1: TComboBox + Left = 426 + Top = 3 + Width = 145 + Height = 24 + Style = csDropDownList + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 16 + ParentFont = False + TabOrder = 0 + Items.Strings = ( + #24120#21457#23545#20844#30721#21333 + #24120#21457#23545#20844#30721#21333'_'#21547#37325#37327#29255#25968 + #35895#29956#23545#20844#30721#21333 + #29616#37329#30721#21333 + #24120#21457#23545#20844#30721#21333'_'#23567 + #35895#29956#23545#20844#30721#21333'_'#23567 + #29616#37329#30721#21333'_'#23567 + #20986#24211#30721#21333#22823 + #20986#24211#30721#21333#23567 + '' + '') + end + object ToolButton2: TToolButton + Left = 571 + Top = 0 + AutoSize = True + Caption = #26816#39564#25253#21578 + ImageIndex = 12 + Visible = False + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 658 + Top = 0 + Caption = #26816#39564#27719#24635#25253#21578 + ImageIndex = 12 + Visible = False + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 765 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1366 + Height = 84 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 381 + Top = 12 + Width = 48 + Height = 12 + Caption = #20135#21697#21517#31216 + end + object Label4: TLabel + Left = 534 + Top = 60 + Width = 24 + Height = 12 + Caption = #39068#33394 + end + object Label1: TLabel + Left = 20 + Top = 12 + Width = 48 + Height = 12 + Caption = #26597#35810#26102#38388 + end + object Label2: TLabel + Left = 56 + Top = 36 + Width = 12 + Height = 12 + Caption = #33267 + end + object Label5: TLabel + Left = 230 + Top = 12 + Width = 48 + Height = 12 + Caption = #25351#31034#21333#21495 + end + object Label6: TLabel + Left = 230 + Top = 36 + Width = 48 + Height = 12 + Caption = #26465' '#30721 + end + object Label8: TLabel + Left = 381 + Top = 36 + Width = 48 + Height = 12 + Caption = #20811' '#37325 + end + object Label9: TLabel + Left = 534 + Top = 36 + Width = 24 + Height = 12 + Caption = #38376#24133 + end + object Label7: TLabel + Left = 674 + Top = 36 + Width = 48 + Height = 12 + Caption = #31867' '#22411 + end + object Label10: TLabel + Left = 822 + Top = 12 + Width = 48 + Height = 12 + Caption = #20986#24211#21333#21495 + end + object Label11: TLabel + Left = 382 + Top = 60 + Width = 48 + Height = 12 + Caption = #32568' '#21495 + end + object Label12: TLabel + Left = 850 + Top = 36 + Width = 24 + Height = 12 + Caption = #21367#21495 + end + object Label15: TLabel + Left = 230 + Top = 60 + Width = 48 + Height = 12 + Caption = #21512' '#21516' '#21495 + end + object Label16: TLabel + Left = 534 + Top = 12 + Width = 24 + Height = 12 + Caption = #23458#25143 + end + object Label17: TLabel + Left = 738 + Top = 144 + Width = 36 + Height = 12 + Caption = #32568#26465#30721 + end + object Label18: TLabel + Left = 674 + Top = 60 + Width = 48 + Height = 12 + Caption = #27454' '#21495 + end + object Label19: TLabel + Left = 850 + Top = 60 + Width = 24 + Height = 12 + Caption = #24211#20301 + end + object Label20: TLabel + Left = 674 + Top = 12 + Width = 48 + Height = 12 + Caption = #33457#22411#33457#21495 + end + object Label21: TLabel + Left = 978 + Top = 12 + Width = 48 + Height = 12 + Caption = #19994' '#21153' '#21592 + end + object Label22: TLabel + Left = 978 + Top = 36 + Width = 48 + Height = 12 + Caption = #20837#24211#21333#21495 + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 434 + Top = 9 + Width = 80 + Height = 20 + TabOrder = 0 + OnChange = MPRTCodeNameChange + end + object BegDate: TDateTimePicker + Left = 73 + Top = 9 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 1 + end + object EndDate: TDateTimePicker + Left = 73 + Top = 33 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 2 + end + object orderNo: TEdit + Tag = 2 + Left = 280 + Top = 9 + Width = 80 + Height = 20 + TabOrder = 3 + OnChange = orderNoChange + OnKeyPress = orderNoKeyPress + end + object MJID: TEdit + Tag = 2 + Left = 280 + Top = 33 + Width = 80 + Height = 20 + TabOrder = 4 + OnChange = MPRTCodeNameChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 434 + Top = 33 + Width = 80 + Height = 20 + TabOrder = 5 + OnChange = MPRTCodeNameChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 562 + Top = 32 + Width = 80 + Height = 20 + TabOrder = 6 + OnChange = MPRTCodeNameChange + end + object CPType: TComboBox + Tag = 2 + Left = 727 + Top = 32 + Width = 80 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 7 + OnChange = TBFindClick + Items.Strings = ( + #27491#21697 + #27425#21697 + #22810#25340 + '') + end + object CkOrdNo: TEdit + Tag = 2 + Left = 875 + Top = 9 + Width = 80 + Height = 20 + TabOrder = 8 + OnChange = MPRTCodeNameChange + end + object PRTColor: TComboBox + Tag = 1 + Left = 562 + Top = 56 + Width = 80 + Height = 20 + ItemHeight = 12 + TabOrder = 9 + OnChange = PRTColorChange + end + object AOrdDefStr1: TComboBox + Tag = 1 + Left = 434 + Top = 56 + Width = 80 + Height = 20 + ItemHeight = 12 + TabOrder = 10 + OnChange = AOrdDefStr1Change + end + object MJXHM: TEdit + Tag = 1 + Left = 875 + Top = 32 + Width = 80 + Height = 20 + TabOrder = 11 + OnChange = MPRTCodeNameChange + end + object CheckBox1: TCheckBox + Left = 28 + Top = 56 + Width = 97 + Height = 17 + Caption = #20840#36873 + TabOrder = 12 + OnClick = CheckBox1Click + end + object conNo: TEdit + Tag = 2 + Left = 280 + Top = 57 + Width = 80 + Height = 20 + TabOrder = 13 + OnChange = MPRTCodeNameChange + end + object customerNoName: TEdit + Tag = 2 + Left = 562 + Top = 9 + Width = 80 + Height = 20 + TabOrder = 14 + OnChange = MPRTCodeNameChange + end + object apid: TEdit + Tag = 2 + Left = 772 + Top = 140 + Width = 80 + Height = 20 + TabOrder = 15 + OnChange = MPRTCodeNameChange + end + object PRTKuanNO: TEdit + Tag = 2 + Left = 727 + Top = 56 + Width = 80 + Height = 20 + TabOrder = 16 + OnChange = MPRTCodeNameChange + end + object begtime: TDateTimePicker + Left = 153 + Top = 8 + Width = 55 + Height = 20 + Date = 39780.000000000000000000 + Format = 'HH:mm' + Time = 39780.000000000000000000 + Kind = dtkTime + TabOrder = 17 + end + object endTime: TDateTimePicker + Left = 153 + Top = 32 + Width = 55 + Height = 20 + Date = 39780.999317129630000000 + Format = 'HH:mm' + Time = 39780.999317129630000000 + Kind = dtkTime + TabOrder = 18 + end + object RKplace: TEdit + Tag = 2 + Left = 875 + Top = 56 + Width = 80 + Height = 20 + TabOrder = 19 + OnChange = MPRTCodeNameChange + end + object PRTHX: TEdit + Tag = 2 + Left = 727 + Top = 8 + Width = 80 + Height = 20 + TabOrder = 20 + OnChange = MPRTCodeNameChange + end + object OrdPerson2: TEdit + Tag = 2 + Left = 1031 + Top = 9 + Width = 80 + Height = 20 + TabOrder = 21 + OnChange = MPRTCodeNameChange + end + object RKNO: TEdit + Tag = 2 + Left = 1031 + Top = 33 + Width = 80 + Height = 20 + TabOrder = 22 + OnChange = MPRTCodeNameChange + end + end + object cxGrid2: TcxGrid + Left = 361 + Top = 117 + Width = 1005 + Height = 621 + Align = alClient + PopupMenu = PopupMenu1 + TabOrder = 2 + object Tv1: TcxGridDBTableView + OnMouseUp = Tv1MouseUp + Navigator.Buttons.CustomButtons = <> + OnCellClick = Tv1CellClick + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skCount + Column = v1Column5 + end + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + Column = v2Column6 + end + item + Kind = skSum + Column = v1Column14 + end + item + Kind = skSum + Column = v1Column15 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1Column11: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 44 + end + object v1Column24: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'customerNoName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object v1Column1: TcxGridDBColumn + Caption = #25351#31034#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 74 + end + object v2Column1: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 92 + end + object v2Column3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object v1Column18: TcxGridDBColumn + Caption = #39068#33394'('#33521#25991')' + DataBinding.FieldName = 'SOrddefstr4' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column12: TcxGridDBColumn + Caption = #33457#22411#33457#21495 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 74 + end + object v1Column8: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column9: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 59 + end + object v1Column6: TcxGridDBColumn + Caption = #26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 92 + end + object v1Column5: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column3: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'CPType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 63 + end + object v1Column2: TcxGridDBColumn + Caption = #20986#24211#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 107 + end + object v1Column14: TcxGridDBColumn + Caption = #30382#37325 + DataBinding.FieldName = 'MJQty3' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 59 + end + object v1Column15: TcxGridDBColumn + Caption = #20928#37325 + DataBinding.FieldName = 'MJQty4' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 55 + end + object v2Column5: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'KGQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 65 + end + object v2Column6: TcxGridDBColumn + Caption = #20986#24211#38271#24230 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 85 + end + object v1Column7: TcxGridDBColumn + Caption = #38271#24230#21333#20301 + DataBinding.FieldName = 'QtyUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 83 + end + object v1Column4: TcxGridDBColumn + Caption = #20986#24211#21333#21495 + DataBinding.FieldName = 'CKOrdNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 73 + end + object v1Column10: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'AOrdDefStr1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 55 + end + object v1Column13: TcxGridDBColumn + Caption = #21253#21495 + DataBinding.FieldName = 'BaoNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column16: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'CRNote' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 88 + end + object v1Column17: TcxGridDBColumn + Caption = #21253#26465#30721 + DataBinding.FieldName = 'baoID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column19: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'conNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column20: TcxGridDBColumn + Caption = 'PO#' + DataBinding.FieldName = 'KHCONNO' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column21: TcxGridDBColumn + Caption = #32568#26465#30721 + DataBinding.FieldName = 'APID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column22: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'filler' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column23: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'PRTKuanNO' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1rkplace: TcxGridDBColumn + Caption = #24211#20301 + DataBinding.FieldName = 'rkplace' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column25: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson2' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column26: TcxGridDBColumn + Caption = #20837#24211#21333#21495 + DataBinding.FieldName = 'RKNO' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object MovePanel2: TMovePanel + Left = 344 + Top = 192 + Width = 289 + Height = 49 + BevelInner = bvLowered + Caption = #27491#22312#25191#34892#25968#25454#25805#20316#65292#35831#31245#21518#12290#12290#12290 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + end + object cxGrid1: TcxGrid + Left = 0 + Top = 117 + Width = 361 + Height = 621 + Align = alLeft + PopupMenu = PopupMenu1 + TabOrder = 4 + Visible = False + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DS_BaoPRT + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skCount + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object cxGridDBColumn2: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'XH' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 74 + end + object v2Column2: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'GangNo0' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object v2Column4: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'GangNo1' + HeaderAlignmentHorz = taCenter + Width = 63 + end + object v2Column7: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'GangNo2' + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v2Column8: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'GangNo3' + HeaderAlignmentHorz = taCenter + Width = 59 + end + object v2Column9: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'GangNo4' + HeaderAlignmentHorz = taCenter + Width = 53 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGrid3: TcxGrid + Left = 0 + Top = 430 + Width = 613 + Height = 130 + PopupMenu = PopupMenu1 + TabOrder = 5 + Visible = False + object Tv3: TcxGridDBTableView + PopupMenu = PopupMenu1 + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DS_JuanPRT + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skCount + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object cxGridDBColumn1: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'XH' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 44 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #21253#21495'0' + DataBinding.FieldName = 'BaoNo0' + HeaderAlignmentHorz = taCenter + Width = 40 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #21305#21495'0' + DataBinding.FieldName = 'MJXH0' + HeaderAlignmentHorz = taCenter + Width = 42 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #20844#26020'0' + DataBinding.FieldName = 'KGQty0' + HeaderAlignmentHorz = taCenter + Width = 41 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #38271#24230'0' + DataBinding.FieldName = 'LenQty0' + HeaderAlignmentHorz = taCenter + Width = 43 + end + object Tv3Column1: TcxGridDBColumn + Caption = #21253#21495'1' + DataBinding.FieldName = 'BaoNo1' + Width = 41 + end + object Tv3Column2: TcxGridDBColumn + Caption = #21253#21495'2' + DataBinding.FieldName = 'BaoNo2' + Width = 50 + end + object Tv3Column3: TcxGridDBColumn + Caption = #21253#21495'3' + DataBinding.FieldName = 'BaoNo3' + Width = 41 + end + object Tv3Column4: TcxGridDBColumn + Caption = #21253#21495'4' + DataBinding.FieldName = 'BaoNo4' + Width = 40 + end + object v3Column1: TcxGridDBColumn + Caption = #21305#21495'1' + DataBinding.FieldName = 'MJXH1' + Width = 60 + end + object v3Column2: TcxGridDBColumn + Caption = #21305#21495'2' + DataBinding.FieldName = 'MJXH2' + Width = 62 + end + object v3Column3: TcxGridDBColumn + Caption = #21305#21495'3' + DataBinding.FieldName = 'MJXH3' + Width = 60 + end + object v3Column4: TcxGridDBColumn + Caption = #21305#21495'4' + DataBinding.FieldName = 'MJXH4' + Width = 54 + end + object v3Column5: TcxGridDBColumn + Caption = #20844#26020'1' + DataBinding.FieldName = 'KGQty1' + Width = 63 + end + object v3Column6: TcxGridDBColumn + Caption = #20844#26020'2' + DataBinding.FieldName = 'KGQty2' + Width = 62 + end + object v3Column7: TcxGridDBColumn + Caption = #20844#26020'3' + DataBinding.FieldName = 'KGQty3' + Width = 59 + end + object v3Column8: TcxGridDBColumn + Caption = #20844#26020'4' + DataBinding.FieldName = 'KGQty4' + Width = 58 + end + object v3Column9: TcxGridDBColumn + Caption = #38271#24230'1' + DataBinding.FieldName = 'LenQty1' + Width = 63 + end + object v3Column10: TcxGridDBColumn + Caption = #38271#24230'2' + DataBinding.FieldName = 'LenQty2' + Width = 61 + end + object v3Column11: TcxGridDBColumn + Caption = #38271#24230'3' + DataBinding.FieldName = 'LenQty3' + Width = 63 + end + object v3Column12: TcxGridDBColumn + Caption = #38271#24230'4' + DataBinding.FieldName = 'LenQty4' + Width = 60 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + object cxGrid4: TcxGrid + Left = 612 + Top = 414 + Width = 617 + Height = 130 + PopupMenu = PopupMenu1 + TabOrder = 6 + Visible = False + object TV4: TcxGridDBTableView + PopupMenu = PopupMenu1 + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource2 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skCount + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object cxGridDBColumn7: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'XH' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 44 + end + object cxGridDBColumn12: TcxGridDBColumn + Caption = #21253#21495'1' + DataBinding.FieldName = 'BaoNo1' + Width = 41 + end + object cxGridDBColumn13: TcxGridDBColumn + Caption = #21253#21495'2' + DataBinding.FieldName = 'BaoNo2' + Width = 50 + end + object cxGridDBColumn16: TcxGridDBColumn + Caption = #21305#21495'1' + DataBinding.FieldName = 'MJXH1' + Width = 60 + end + object cxGridDBColumn17: TcxGridDBColumn + Caption = #21305#21495'2' + DataBinding.FieldName = 'MJXH2' + Width = 62 + end + object cxGridDBColumn20: TcxGridDBColumn + Caption = #20844#26020'1' + DataBinding.FieldName = 'KGQty1' + Width = 63 + end + object cxGridDBColumn21: TcxGridDBColumn + Caption = #20844#26020'2' + DataBinding.FieldName = 'KGQty2' + Width = 62 + end + object cxGridDBColumn24: TcxGridDBColumn + Caption = #38271#24230'1' + DataBinding.FieldName = 'LenQty1' + Width = 63 + end + object cxGridDBColumn25: TcxGridDBColumn + Caption = #38271#24230'2' + DataBinding.FieldName = 'LenQty2' + Width = 61 + end + end + object cxGridLevel3: TcxGridLevel + GridView = TV4 + end + end + object Panel4: TPanel + Left = 62 + Top = 139 + Width = 294 + Height = 213 + TabOrder = 7 + Visible = False + object Label13: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 292 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #20107#20214#35828#26126 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + object Image2: TImage + Left = 269 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object RichEdit1: TRichEdit + Left = 1 + Top = 24 + Width = 292 + Height = 188 + Align = alClient + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + end + end + object Panel2: TPanel + Left = 448 + Top = 140 + Width = 253 + Height = 105 + Color = clSkyBlue + TabOrder = 8 + Visible = False + OnDblClick = Panel2DblClick + object Label14: TLabel + Left = 28 + Top = 40 + Width = 52 + Height = 12 + Caption = #26465#30721#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object THMJID: TEdit + Left = 84 + Top = 36 + Width = 125 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnKeyPress = THMJIDKeyPress + end + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 1220 + Top = 40 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1200 + Top = 40 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1172 + Top = 40 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 920 + Top = 152 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 784 + Top = 248 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 840 + Top = 192 + end + object CDS_PRT: TClientDataSet + Aggregates = <> + Params = <> + Left = 544 + Top = 288 + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_BaoPRT + Left = 360 + Top = 248 + 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 = 416 + Top = 248 + end + object RMDBMX: TRMDBDataSet + Visible = True + Left = 464 + Top = 248 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 568 + Top = 288 + end + object PopupMenu1: TPopupMenu + Left = 256 + Top = 152 + object N1: TMenuItem + Caption = #20840#36873 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #20840#24323 + OnClick = N2Click + end + end + object CDS_CX: TClientDataSet + Aggregates = <> + Params = <> + Left = 776 + Top = 296 + end + object CDS_BaoNo: TClientDataSet + Aggregates = <> + Params = <> + Left = 680 + Top = 296 + end + object CDS_Juan: TClientDataSet + Aggregates = <> + Params = <> + Left = 712 + Top = 296 + end + object CDS_BaoPRT: TClientDataSet + Aggregates = <> + Params = <> + Left = 104 + Top = 208 + end + object DS_BaoPRT: TDataSource + DataSet = CDS_BaoPRT + Left = 96 + Top = 264 + end + object DS_JuanPRT: TDataSource + Left = 360 + Top = 384 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 216 + Top = 216 + end + object cxGridPopupMenu3: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 600 + Top = 376 + end + object RMDBHZ: TRMDBDataSet + Visible = True + DataSet = CDS_HZ + Left = 416 + Top = 272 + end + object RMDBMain10: TRMDBDataSet + Visible = True + DataSet = CDS_PRT + Left = 592 + Top = 264 + end + object RM3: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 = RMDBMX + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 560 + Top = 136 + ReportData = {} + end + object cxGridPopupMenu4: TcxGridPopupMenu + Grid = cxGrid4 + PopupMenus = <> + Left = 716 + Top = 484 + end + object RMDBWXPTPrint: TRMDBDataSet + Visible = True + DataSet = CDS_WXPTPrint + Left = 752 + Top = 460 + end + object CDS_WXPT: TClientDataSet + Aggregates = <> + Params = <> + Left = 780 + Top = 460 + end + object DataSource2: TDataSource + DataSet = CDS_WXPTPrint + Left = 812 + Top = 460 + end + object CDS_WXPTPrint: TClientDataSet + Aggregates = <> + Params = <> + Left = 844 + Top = 460 + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 964 + Top = 105 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 928 + Top = 320 + end + object RM2: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 1048 + Top = 276 + ReportData = {} + end + object RMDBPRT: TRMDBDataSet + Visible = True + DataSet = CDS_PRT + Left = 740 + Top = 216 + end +end diff --git a/艾登贸易管理/U_CKProductBCPOutList.pas b/艾登贸易管理/U_CKProductBCPOutList.pas new file mode 100644 index 0000000..68791b1 --- /dev/null +++ b/艾登贸易管理/U_CKProductBCPOutList.pas @@ -0,0 +1,1244 @@ +unit U_CKProductBCPOutList; + +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, RM_Common, RM_Class, + RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, cxCheckBox, Menus, + MovePanel, RM_E_llPDF, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; + +type + TfrmCKProductBCPOutList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + cxGridPopupMenu1: TcxGridPopupMenu; + Label3: TLabel; + Label4: TLabel; + MPRTCodeName: TEdit; + Label1: TLabel; + Label2: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + CDS_Main: TClientDataSet; + Tv1: TcxGridDBTableView; + cxGrid2Level1: TcxGridLevel; + cxGrid2: TcxGrid; + v2Column1: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + Label5: TLabel; + orderNo: TEdit; + Label6: TLabel; + MJID: TEdit; + v1Column7: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + Label8: TLabel; + MPRTKZ: TEdit; + Label9: TLabel; + MPRTMF: TEdit; + Label7: TLabel; + CPType: TComboBox; + v1Column3: TcxGridDBColumn; + CDS_PRT: TClientDataSet; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1Column4: TcxGridDBColumn; + Label10: TLabel; + CkOrdNo: TEdit; + v1Column5: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + RMDBMX: TRMDBDataSet; + CDS_HZ: TClientDataSet; + TBCKCX: TToolButton; + v1Column11: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + MovePanel2: TMovePanel; + CDS_CX: TClientDataSet; + v1Column12: TcxGridDBColumn; + CDS_BaoNo: TClientDataSet; + CDS_Juan: TClientDataSet; + CDS_BaoPRT: TClientDataSet; + DS_BaoPRT: TDataSource; + cxGrid1: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn2: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + v2Column2: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + Tv3Column1: TcxGridDBColumn; + Tv3Column2: TcxGridDBColumn; + Tv3Column3: TcxGridDBColumn; + Tv3Column4: TcxGridDBColumn; + v3Column1: TcxGridDBColumn; + v3Column2: TcxGridDBColumn; + v3Column3: TcxGridDBColumn; + v3Column4: TcxGridDBColumn; + v3Column5: TcxGridDBColumn; + v3Column6: TcxGridDBColumn; + v3Column7: TcxGridDBColumn; + v3Column8: TcxGridDBColumn; + v3Column9: TcxGridDBColumn; + v3Column10: TcxGridDBColumn; + v3Column11: TcxGridDBColumn; + v3Column12: TcxGridDBColumn; + DS_JuanPRT: TDataSource; + cxGridPopupMenu2: TcxGridPopupMenu; + cxGridPopupMenu3: TcxGridPopupMenu; + PRTColor: TComboBox; + Label11: TLabel; + AOrdDefStr1: TComboBox; + RMDBHZ: TRMDBDataSet; + RMDBMain10: TRMDBDataSet; + ComboBox1: TComboBox; + RM3: TRMGridReport; + v1Column13: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + v1Column15: TcxGridDBColumn; + v1Column16: TcxGridDBColumn; + cxGrid4: TcxGrid; + TV4: TcxGridDBTableView; + cxGridDBColumn7: TcxGridDBColumn; + cxGridDBColumn12: TcxGridDBColumn; + cxGridDBColumn13: TcxGridDBColumn; + cxGridDBColumn16: TcxGridDBColumn; + cxGridDBColumn17: TcxGridDBColumn; + cxGridDBColumn20: TcxGridDBColumn; + cxGridDBColumn21: TcxGridDBColumn; + cxGridDBColumn24: TcxGridDBColumn; + cxGridDBColumn25: TcxGridDBColumn; + cxGridLevel3: TcxGridLevel; + cxGridPopupMenu4: TcxGridPopupMenu; + RMDBWXPTPrint: TRMDBDataSet; + CDS_WXPT: TClientDataSet; + DataSource2: TDataSource; + CDS_WXPTPrint: TClientDataSet; + MJXHM: TEdit; + Label12: TLabel; + CheckBox1: TCheckBox; + Panel4: TPanel; + Label13: TLabel; + Panel10: TPanel; + Image2: TImage; + RichEdit1: TRichEdit; + v1Column17: TcxGridDBColumn; + ToolButton1: TToolButton; + Panel2: TPanel; + Label14: TLabel; + THMJID: TEdit; + v1Column18: TcxGridDBColumn; + v1Column19: TcxGridDBColumn; + v1Column20: TcxGridDBColumn; + conNo: TEdit; + Label15: TLabel; + Label16: TLabel; + customerNoName: TEdit; + Label17: TLabel; + apid: TEdit; + v1Column21: TcxGridDBColumn; + v1Column22: TcxGridDBColumn; + v1Column23: TcxGridDBColumn; + PRTKuanNO: TEdit; + Label18: TLabel; + begtime: TDateTimePicker; + endTime: TDateTimePicker; + ToolButton2: TToolButton; + ToolButton3: TToolButton; + ADOQueryPrint: TADOQuery; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; +// RMllPDFExport1: TRMllPDFExport; + v1rkplace: TcxGridDBColumn; + RKplace: TEdit; + Label19: TLabel; + RMDBPRT: TRMDBDataSet; + v1Column24: TcxGridDBColumn; + Label20: TLabel; + PRTHX: TEdit; + OrdPerson2: TEdit; + Label21: TLabel; + v1Column25: TcxGridDBColumn; + v1Column26: TcxGridDBColumn; + RKNO: TEdit; + Label22: TLabel; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure MPRTCodeNameChange(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure orderNoChange(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure TBCKCXClick(Sender: TObject); + procedure orderNoKeyPress(Sender: TObject; var Key: Char); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure PRTColorChange(Sender: TObject); + procedure AOrdDefStr1Change(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Tv1MouseUp(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Image2Click(Sender: TObject); + procedure Panel2DblClick(Sender: TObject); + procedure THMJIDKeyPress(Sender: TObject; var Key: Char); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + private + FLeft,FTop:Integer; + procedure InitGrid(); + function YSData(Order_Main10:TClientDataSet):Boolean; + + procedure Print_WXPT(); + { Private declarations } + public + { Public declarations } + end; + +var + frmCKProductBCPOutList: TfrmCKProductBCPOutList; + +implementation +uses + U_DataLink,U_Fun, U_JYMJIDPRINT; + +{$R *.dfm} +procedure TfrmckproductBCPOutList.Print_WXPT(); +var + j,z:Integer; + FGangNo,FHZ:String; +begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.add('exec P_Print_CKMD1 '); + sql.add('@mainID='+quotedstr(Trim(CDS_Main.FieldByName('CKOrdNo').AsString))); + sql.add(',@DName='+quotedstr(Trim(DCode))); + Open; + end; + SCreateCDS20(ADOQueryCmd,CDS_WXPT); + SInitCDSData20(ADOQueryCmd,CDS_WXPT); + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select MainId=Cast('''' as varchar(20)),SubId=Cast('''' as varchar(20)),PONO=Cast('''' as varchar(20)),InvNo=Cast('''' as varchar(20)),'); + sql.Add(' PRTColor=Cast('''' as varchar(20)),GangNo=Cast('''' as varchar(20)),BaoNo=Cast('''' as varchar(20)),MZQty=Cast(0 as decimal(18,2)),'); + sql.Add(' RollNo0=Cast('''' as varchar(20)),RollNo1=Cast('''' as varchar(20)),RollNo2=Cast('''' as varchar(20)),ITEM=Cast('''' as varchar(20)),'); + sql.Add(' LenQty0=Cast(0 as decimal(18,2)),LenQty1=Cast(0 as decimal(18,2)),LenQty2=Cast(0 as decimal(18,2)),'); + sql.Add(' KGQty0=Cast(0 as decimal(18,2)),KGQty1=Cast(0 as decimal(18,2)),KGQty2=Cast(0 as decimal(18,2)),'); + sql.Add(' MKGQty0=Cast(0 as decimal(18,2)),MKGQty1=Cast(0 as decimal(18,2)),MKGQty2=Cast(0 as decimal(18,2)),'); + sql.Add(' ZS0=Cast(0 as decimal(18,2)),Zs1=Cast(0 as decimal(18,2)),Zs2=Cast(0 as decimal(18,2)),'); + sql.add(' CRTime=cast(null as datetime),JQty=Cast(0 as decimal(18,2)),XH=Cast(0 as int),SumlenQty=Cast(0 as decimal(18,2)),SumRoll=Cast(0 as decimal(18,2)),'); + sql.Add(' SumRollGanNo=Cast(0 as decimal(18,2)),SumRollColor=Cast(0 as decimal(18,2)),SumZJ=Cast(0 as decimal(18,2)),'); + sql.add(' QtyUnit=cast('''' as varchar(20))'); + Open; + end; + SCreateCDS20(ADOQueryCmd,CDS_WXPTPrint); + SInitCDSData20(ADOQueryCmd,CDS_WXPTPrint); + if CDS_WXPTPrint.IsEmpty=False then + begin + CDS_WXPTPrint.Delete; + end; + j:=0;z:=0;FGangNo:=''; + CDS_WXPT.DisableControls; + CDS_WXPTPrint.DisableControls; + with CDS_WXPT do + begin + First; + while not Eof do + begin + with CDS_WXPTPrint do + begin + if CDS_WXPTPrint.IsEmpty then + begin + CDS_WXPTPrint.Append; + CDS_WXPTPrint.FieldByName('MZQty').Value:=CDS_WXPT.fieldbyname('KGQty').Value; + CDS_WXPTPrint.FieldByName('INVNO').Value:=CDS_WXPT.fieldbyname('orderno').Value; + CDS_WXPTPrint.FieldByName('GangNo').Value:=CDS_WXPT.fieldbyname('GangNo').Value; + CDS_WXPTPrint.FieldByName('BaoNo').Value:=CDS_WXPT.fieldbyname('BaoNo').Value; + CDS_WXPTPrint.FieldByName('PONO').Value:=CDS_WXPT.fieldbyname('PONO').Value; + CDS_WXPTPrint.FieldByName('QtyUnit').Value:=trim(CDS_WXPT.fieldbyname('QtyUnit').Asstring); + CDS_WXPTPrint.FieldByName('CRTime').Value:=CDS_WXPT.fieldbyname('CRTime').asdatetime; + CDS_WXPTPrint.FieldByName('PRTColor').Value:=CDS_WXPT.fieldbyname('PRTColor').Value; + CDS_WXPTPrint.FieldByName('XH').Value:=0; + CDS_WXPTPrint.FieldByName('LenQty0').Value:=CDS_WXPT.fieldbyname('qty').AsFloat; + CDS_WXPTPrint.FieldByName('Zs0').Value:=CDS_WXPT.fieldbyname('MjQty2').AsFloat; + CDS_WXPTPrint.FieldByName('RollNo0').Value:=CDS_WXPT.fieldbyname('RollNo').Value; + CDS_WXPTPrint.FieldByName('MKGQty0').Value:=CDS_WXPT.fieldbyname('KGQty').AsFloat; + CDS_WXPTPrint.FieldByName('KGQty0').Value:=CDS_WXPT.fieldbyname('MJqty4').AsFloat; + CDS_WXPTPrint.FieldByName('Sumlenqty').Value:=CDS_WXPT.fieldbyname('Sumlenqty').AsFloat; + CDS_WXPTPrint.FieldByName('sumroll').Value:=CDS_WXPT.fieldbyname('sumroll').AsFloat; + CDS_WXPTPrint.FieldByName('SumRollGanNo').Value:=CDS_WXPT.fieldbyname('SumRollGanNo').AsFloat; + CDS_WXPTPrint.FieldByName('SumRollColor').Value:=CDS_WXPT.fieldbyname('SumRollColor').AsFloat; + CDS_WXPTPrint.FieldByName('SumZJ').Value:=CDS_WXPT.fieldbyname('SumZJ').AsFloat; + CDS_WXPTPrint.FieldByName('SubId').Value:=CDS_WXPT.fieldbyname('SubId').Value; + CDS_WXPTPrint.FieldByName('MainId').Value:=CDS_WXPT.fieldbyname('MainId').Value; + CDS_WXPTPrint.Post; + FHZ:=Trim(CDS_WXPT.fieldbyname('PRTColor').AsString)+Trim(CDS_WXPT.fieldbyname('Baono').AsString)+Trim(CDS_WXPT.fieldbyname('GangNo').AsString); + Z:=0; + j:=0; + end + else + begin + if (Trim(CDS_WXPT.fieldbyname('PRTColor').AsString)+Trim(CDS_WXPT.fieldbyname('Baono').AsString)+Trim(CDS_WXPT.fieldbyname('GangNo').AsString))<>FHZ then + begin + CDS_WXPTPrint.Append; + CDS_WXPTPrint.FieldByName('MZQty').Value:=trim(CDS_WXPT.fieldbyname('KGQty').Asstring); + CDS_WXPTPrint.FieldByName('INVNO').Value:=trim(CDS_WXPT.fieldbyname('orderno').Asstring); + CDS_WXPTPrint.FieldByName('GangNo').Value:=trim(CDS_WXPT.fieldbyname('GangNo').Asstring); + CDS_WXPTPrint.FieldByName('BaoNo').Value:=Trim(CDS_WXPT.fieldbyname('BaoNo').Asstring); + CDS_WXPTPrint.FieldByName('PONO').Value:=trim(CDS_WXPT.fieldbyname('PONO').Asstring); + CDS_WXPTPrint.FieldByName('QtyUnit').Value:=Trim(CDS_WXPT.fieldbyname('QtyUnit').Asstring); + CDS_WXPTPrint.FieldByName('CRTime').Value:=CDS_WXPT.fieldbyname('CRTime').asdatetime; + CDS_WXPTPrint.FieldByName('PRTColor').Value:=trim(CDS_WXPT.fieldbyname('PRTColor').Asstring); + CDS_WXPTPrint.FieldByName('XH').Value:=J+1; + CDS_WXPTPrint.FieldByName('LenQty0').Value:=CDS_WXPT.fieldbyname('qty').AsFloat; + CDS_WXPTPrint.FieldByName('Zs0').Value:=CDS_WXPT.fieldbyname('MjQty2').AsFloat; + CDS_WXPTPrint.FieldByName('RollNo0').Value:=trim(CDS_WXPT.fieldbyname('RollNo').Asstring); + CDS_WXPTPrint.FieldByName('MKGQty0').Value:=CDS_WXPT.fieldbyname('KGQty').AsFloat; + CDS_WXPTPrint.FieldByName('KGQty0').Value:=CDS_WXPT.fieldbyname('MJqty4').AsFloat; + CDS_WXPTPrint.FieldByName('Sumlenqty').Value:=CDS_WXPT.fieldbyname('Sumlenqty').AsFloat; + CDS_WXPTPrint.FieldByName('sumroll').Value:=CDS_WXPT.fieldbyname('sumroll').AsFloat; + CDS_WXPTPrint.FieldByName('SumRollGanNo').Value:=CDS_WXPT.fieldbyname('SumRollGanNo').AsFloat; + CDS_WXPTPrint.FieldByName('SumRollColor').Value:=CDS_WXPT.fieldbyname('SumRollColor').AsFloat; + CDS_WXPTPrint.FieldByName('SumZJ').Value:=CDS_WXPT.fieldbyname('SumZJ').AsFloat; + CDS_WXPTPrint.FieldByName('SubId').Value:=CDS_WXPT.fieldbyname('SubId').Asstring; + CDS_WXPTPrint.FieldByName('MainId').Value:=CDS_WXPT.fieldbyname('MainId').Asstring; + CDS_WXPTPrint.Post; + Z:=0; + j:=j+1; + FHZ:=Trim(CDS_WXPT.fieldbyname('PRTColor').AsString)+Trim(CDS_WXPT.fieldbyname('Baono').AsString)+Trim(CDS_WXPT.fieldbyname('GangNo').AsString); + end + else + begin + if Z<3 then + begin + CDS_WXPTPrint.Locate('XH',j,[]); + with CDS_WXPTPrint do + begin + Edit; + FieldByName('MZQty').Value:=CDS_WXPT.fieldbyname('KGQty').Value; + FieldByName('INVNO').Value:=CDS_WXPT.fieldbyname('orderno').Value; + FieldByName('GangNo').Value:=CDS_WXPT.fieldbyname('GangNo').Value; + CDS_WXPTPrint.FieldByName('PONO').Value:=CDS_WXPT.fieldbyname('PONO').Value; + CDS_WXPTPrint.FieldByName('QtyUnit').Value:=trim(CDS_WXPT.fieldbyname('QtyUnit').Asstring); + CDS_WXPTPrint.FieldByName('CRTime').Value:=CDS_WXPT.fieldbyname('CRTime').asdatetime; + FieldByName('BaoNO').Value:=CDS_WXPT.fieldbyname('BaoNO').Value; + CDS_WXPTPrint.FieldByName('PRTColor').Value:=CDS_WXPT.fieldbyname('PRTColor').Value; + FieldByName('LenQty'+Trim(IntToStr(Z))).Value:=CDS_WXPT.fieldbyname('qty').AsFloat; + FieldByName('Zs'+Trim(IntToStr(Z))).Value:=CDS_WXPT.fieldbyname('MJQty2').AsFloat; + CDS_WXPTPrint.FieldByName('RollNo'+Trim(IntToStr(Z))).Value:=CDS_WXPT.fieldbyname('RollNo').Value; + CDS_WXPTPrint.FieldByName('MKGQty'+Trim(IntToStr(Z))).Value:=CDS_WXPT.fieldbyname('KGQty').AsFloat; + CDS_WXPTPrint.FieldByName('KGQty'+Trim(IntToStr(Z))).Value:=CDS_WXPT.fieldbyname('MJqty4').AsFloat; + CDS_WXPTPrint.FieldByName('Sumlenqty').Value:=CDS_WXPT.fieldbyname('Sumlenqty').AsFloat; + CDS_WXPTPrint.FieldByName('sumroll').Value:=CDS_WXPT.fieldbyname('sumroll').AsFloat; + CDS_WXPTPrint.FieldByName('SumRollGanNo').Value:=CDS_WXPT.fieldbyname('SumRollGanNo').AsFloat; + CDS_WXPTPrint.FieldByName('SumRollColor').Value:=CDS_WXPT.fieldbyname('SumRollColor').AsFloat; + CDS_WXPTPrint.FieldByName('SumZJ').Value:=CDS_WXPT.fieldbyname('SumZJ').AsFloat; + FieldByName('SubId').Value:=CDS_WXPT.fieldbyname('SubId').Value; + FieldByName('MainId').Value:=CDS_WXPT.fieldbyname('MainId').Value; + Post; + end; + end + else + begin + CDS_WXPTPrint.Append; + CDS_WXPTPrint.FieldByName('MZQty').Value:=CDS_WXPT.fieldbyname('KGQty').Value; + CDS_WXPTPrint.FieldByName('INVNO').Value:=CDS_WXPT.fieldbyname('orderno').Value; + CDS_WXPTPrint.FieldByName('GangNo').Value:=CDS_WXPT.fieldbyname('GangNo').Value; + CDS_WXPTPrint.FieldByName('BaoNO').Value:=CDS_WXPT.fieldbyname('BaoNO').Value; + CDS_WXPTPrint.FieldByName('PONO').Value:=CDS_WXPT.fieldbyname('PONO').Value; + CDS_WXPTPrint.FieldByName('QtyUnit').Value:=trim(CDS_WXPT.fieldbyname('QtyUnit').Asstring); + CDS_WXPTPrint.FieldByName('CRTime').Value:=CDS_WXPT.fieldbyname('CRTime').asdatetime; + CDS_WXPTPrint.FieldByName('PRTColor').Value:=CDS_WXPT.fieldbyname('PRTColor').Value; + CDS_WXPTPrint.FieldByName('XH').Value:=J+1; + CDS_WXPTPrint.FieldByName('LenQty0').Value:=CDS_WXPT.fieldbyname('qty').AsFloat; + CDS_WXPTPrint.FieldByName('ZS0').Value:=CDS_WXPT.fieldbyname('MJQty2').AsFloat; + CDS_WXPTPrint.FieldByName('RollNo0').Value:=CDS_WXPT.fieldbyname('RollNo').Value; + CDS_WXPTPrint.FieldByName('MKGQty0').Value:=CDS_WXPT.fieldbyname('kgQty').AsFloat; + CDS_WXPTPrint.FieldByName('KGQty0').Value:=CDS_WXPT.fieldbyname('MJqty4').AsFloat; + CDS_WXPTPrint.FieldByName('Sumlenqty').Value:=CDS_WXPT.fieldbyname('Sumlenqty').AsFloat; + CDS_WXPTPrint.FieldByName('sumroll').Value:=CDS_WXPT.fieldbyname('sumroll').AsFloat; + CDS_WXPTPrint.FieldByName('SumRollGanNo').Value:=CDS_WXPT.fieldbyname('SumRollGanNo').AsFloat; + CDS_WXPTPrint.FieldByName('SumRollColor').Value:=CDS_WXPT.fieldbyname('SumRollColor').AsFloat; + CDS_WXPTPrint.FieldByName('SumZJ').Value:=CDS_WXPT.fieldbyname('SumZJ').AsFloat; + CDS_WXPTPrint.FieldByName('SubId').Value:=CDS_WXPT.fieldbyname('SubId').Value; + CDS_WXPTPrint.FieldByName('MainId').Value:=CDS_WXPT.fieldbyname('MainId').Value; + CDS_WXPTPrint.Post; + Z:=0; + j:=j+1; + end; + end; + end + end; + Z:=Z+1; + Next; + end; + end; + CDS_WXPT.EnableControls; + CDS_WXPTPrint.EnableControls; +end; + + +procedure TfrmCKProductBCPOutList.FormDestroy(Sender: TObject); +begin + frmCKProductBCPOutList:=nil; +end; + + +procedure TfrmCKProductBCPOutList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmCKProductBCPOutList.FormCreate(Sender: TObject); +begin + BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp) +end; + +procedure TfrmCKProductBCPOutList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + SQL.Add('select A.*,B.customerNoName,B.OrdPerson2,B.OrderNo,B.conNO,B.MPRTCodeName,B.MPRTSpec,B.MprtkuanNo,C.PrtkuanNo,C.PRTColor,C.SOrddefstr4,B.MPRTMF,B.MPRTKZ,D.MJXH,C.PRTPrice,C.PRTHX '); + sql.Add(',C.SOrddefstr4,D.MJQty3,D.MJQty4'); + sql.Add(',khconNo=(select Top 1 KHConNo from JYOrderCon_Main JCM where JCM.ConNo=B.OrderNo)'); + sql.Add(',MPRTECodeName=(select Top 1 MPRTCodeName from JYOrderCon_Main JCM where JCM.ConNo=B.OrderNo)'); + sql.Add(',isnull(customerNoName,B.OrderNo) KHName'); + sql.Add(',D.mjstr4 as AOrdDefStr1,cast(D.MJXH as varchar) as MJXHM '); + sql.Add(',RKNO=(select Top 1 rkOrdID from CK_BanCP_CR X where X.MJID=A.MJID and X.CRflag='''')'); + sql.add('from CK_BanCP_CR A '); + Sql.add(' inner join JYOrder_Main B on A.MainId=B.MainId'); + Sql.add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); + Sql.add(' inner join WFB_MJJY D on A.MJId=D.MJId'); + // sql.Add(' inner join JYOrder_Sub_AnPai E on A.APID=E.APID'); + sql.add('where A.FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime)+' '+FormatDateTime('HH:mm',BegTime.Time))+''''); + sql.Add(' and A.FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',enddate.DateTime)+' '+FormatDateTime('HH:mm',endTime.Time))+''''); + SQL.Add(' and A.CRType='''' '); + Open; + //ShowMessage(SQL.Text); + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + TBFind.Click; + end; +end; + +procedure TfrmCKProductBCPOutList.TBRafreshClick(Sender: TObject); +begin + BegDate.SetFocus; + InitGrid(); +end; + +procedure TfrmCKProductBCPOutList.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + end; +end; + +procedure TfrmCKProductBCPOutList.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ֿб',Tv1,'Ʒֿ'); + WriteCxGrid('ֿб2',Tv3,'Ʒֿ'); + Close; +end; + +procedure TfrmCKProductBCPOutList.FormShow(Sender: TObject); +begin + ReadCxGrid('ֿб',Tv1,'Ʒֿ'); + ReadCxGrid('ֿб2',Tv3,'Ʒֿ'); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Cast('''' as varchar(20)) MainId,Cast('''' as varchar(80)) KHName,Cast(0 as decimal(18,4)) PRTPrice '); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_CX); + SInitCDSData20(ADOQueryTemp,CDS_CX); + CDS_CX.Delete; + //InitGrid(); + if Trim(DParameters2)='' then + begin + TBCKCX.Visible:=True; + ToolButton1.Visible:=true; + end; + if Trim(DParameters2)='ҵԱ' then + begin + OrdPerson2.Text:=Dname; + OrdPerson2.Enabled:=false; + end; +end; + +procedure TfrmCKProductBCPOutList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then exit; + SelExportData(Tv1,ADOQueryMain,''); +end; + +procedure TfrmCKProductBCPOutList.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 TfrmCKProductBCPOutList.MPRTCodeNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCKProductBCPOutList.TBPrintClick(Sender: TObject); +var + fPrintFile,fPrintFile10,FMainID:String; +begin + if CDS_Main.IsEmpty then Exit; + { + if CDS_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ','ʾ',0); + Exit; + end; + + CDS_Main.Locate('SSel',True,[]); } + IF pos('뵥',trim(ComboBox1.Text))>0 then + begin + if CDS_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete TBSubID where DName='''+Trim(DCode)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('SELECT * FROM TBSubID where 1=2 '); + open; + end; + FMainID:=''; + CDS_Main.DisableControls; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_Main do + begin + First; + while not Eof do + begin + If Fieldbyname('Ssel').AsBoolean then + begin + IF FMainID='' then + begin + FMainID:=Trim(CDS_Main.fieldbyname('customerNoName').AsString); + end + else + begin + IF Trim(CDS_Main.fieldbyname('customerNoName').AsString)<>FMainID then + begin + application.MessageBox('ѡIJͬһͻָʾһӡ','ʾϢ',0); + ADOQueryCmd.Connection.RollbackTrans; + EnableControls; + exit; + end; + end; + ADOQueryCmd.append; + ADOQueryCmd.fieldbyname('SubId').Value:=Trim(CDS_Main.fieldbyname('MJID').AsString); + ADOQueryCmd.fieldbyname('Dname').Value:=Trim(DCode); + ADOQueryCmd.post; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + end; + CDS_Main.EnableControls; + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.add('exec P_Do_PrintMd20 '); + sql.add('@mainID='+quotedstr(Trim(CDS_Main.fieldbyname('BCID').AsString))); + sql.add(',@DName='+quotedstr(Trim(DCode))); + sql.add(',@flag=''0'' '); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_HZ); + SInitCDSData20(ADOQueryTemp,CDS_HZ); + + + end + else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add(' select MPRTTYpe,istax from JYOrdercon_Main A '); + sql.Add(' inner join JYOrder_Main B on B.conNO=A.conNO '); + sql.Add(' where B.MainId='+quotedstr(trim(CDS_Main.fieldbyname('MainID').AsString))); + open; + IF not IsEmpty then + begin + IF trim(fieldbyname('MPRTTYpe').AsString)='' then + begin + IF pos('',trim(ComboBox1.Text))<1 then + begin + Application.MessageBox('˺ͬͬѡ뵥','ʾ',0); + exit; + end; + end; + IF trim(fieldbyname('MPRTTYpe').AsString)='' then + begin + IF fieldbyname('istax').AsBoolean then + begin + IF pos('',trim(ComboBox1.Text))<1 then + begin + Application.MessageBox('˺ͬ˰ͬѡ뵥','ʾ',0); + exit; + end; + end + else + begin + IF pos('ֽ',trim(ComboBox1.Text))<1 then + begin + Application.MessageBox('˺ͬ˰ͬѡֽ뵥','ʾ',0); + exit; + end; + end; + end; + IF trim(fieldbyname('MPRTTYpe').AsString)='ӹ' then + begin + IF fieldbyname('istax').AsBoolean then + begin + IF pos('',trim(ComboBox1.Text))<1 then + begin + Application.MessageBox('˺ͬڼӹ˰ͬѡ񳣷뵥','ʾ',0); + exit; + end; + end + else + begin + IF pos('ֽ',trim(ComboBox1.Text))<1 then + begin + Application.MessageBox('˺ͬڼӹ˰ͬѡֽ뵥','ʾ',0); + exit; + end; + end; + end; + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.add('exec P_Do_PrintMd10 '); + sql.add('@mainID='+quotedstr(Trim(CDS_Main.fieldbyname('BCID').AsString))); + sql.add(',@DName='+quotedstr(Trim(DCode))); + sql.add(',@flag=''0'' '); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_HZ); + SInitCDSData20(ADOQueryTemp,CDS_HZ); + end; + + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\'+Trim(ComboBox1.Text)+'.rmf' ; + if FileExists(fPrintFile) then + begin + RM3.LoadFromFile(fPrintFile); + RM3.ShowReport; + end + else + begin + Application.MessageBox(PChar('û'+fPrintFile),'ʾ',0); + end; +end; + + + +procedure TfrmCKProductBCPOutList.orderNoChange(Sender: TObject); +begin + if Length(orderNo.Text)<4 then Exit; + TBFind.Click; +end; + +procedure TfrmCKProductBCPOutList.N1Click(Sender: TObject); +begin + SelOKNo(CDS_Main,True); +end; + +procedure TfrmCKProductBCPOutList.N2Click(Sender: TObject); +begin + SelOKNo(CDS_Main,False); +end; + +procedure TfrmCKProductBCPOutList.TBCKCXClick(Sender: TObject); +var + FFMainId,FPrice:String; +begin + if CDS_Main.IsEmpty then Exit; + if CDS_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪ','ʾ',32+4)<>IDYES then Exit; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + try + ADOQueryCmd.Connection.BeginTrans; + CDS_Main.DisableControls; + with CDS_Main do + begin + //First; + while CDS_Main.Locate('SSel',True,[])=True do + begin + IF trim(CDS_Main.Fieldbyname('Filler').AsString)<>trim(DName) then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ܳ˵ݣ','ʾ',0); + Exit; + end; + //if CDS_Main.FieldByName('SSel').AsBoolean=True then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete CK_BanCP_CR where BCID='''+Trim(CDS_Main.fieldbyname('BCID').AsString)+''''); + sql.Add('UPdate CK_BanCP_KC Set KCKgQty=(select KgQty from CK_BanCP_CR A where A.CRID=CK_BanCP_KC.CRID and A.CRType='''') '); + sql.Add(',KCQty=(select Qty from CK_BanCP_CR A where A.CRID=CK_BanCP_KC.CRID and A.CRType='''') '); + SQL.Add(' where CRID='+CDS_Main.fieldbyname('CRID').AsString); + sql.Add('Update WFB_MJJY Set MJStr2='''' where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + if YSData(CDS_Main)=False then + begin + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + Exit; + end; + if Trim(FFMainId)='' then + begin + with CDS_CX do + begin + Append; + FieldByName('Mainid').Value:=Trim(CDS_Main.fieldbyname('Mainid').AsString); + //FieldByName('PRTPrice').Value:=CDS_Main.fieldbyname('PRTPrice').Value; + FieldByName('KHName').Value:=Trim(CDS_Main.fieldbyname('KHName').AsString); + Post; + end; + FFMainId:=Trim(CDS_Main.fieldbyname('Mainid').AsString); + //FPrice:=Trim(CDS_Main.fieldbyname('PRTPrice').AsString); + end else + if Trim(FFMainId)<>Trim(CDS_Main.fieldbyname('Mainid').AsString) then + begin + with CDS_CX do + begin + Append; + FieldByName('Mainid').Value:=Trim(CDS_Main.fieldbyname('Mainid').AsString); + FieldByName('KHName').Value:=Trim(CDS_Main.fieldbyname('KHName').AsString); + //FieldByName('PRTPrice').Value:=CDS_Main.fieldbyname('PRTPrice').Value; + Post; + end; + FFMainId:=Trim(CDS_Main.fieldbyname('Mainid').AsString); + //FPrice:=Trim(CDS_Main.fieldbyname('PRTPrice').AsString); + end else + begin + {if Trim(FPrice)<>Trim(CDS_Main.fieldbyname('PRTPrice').AsString) then + begin + with CDS_CX do + begin + Append; + FieldByName('Mainid').Value:=Trim(CDS_Main.fieldbyname('Mainid').AsString); + FieldByName('KHName').Value:=Trim(CDS_Main.fieldbyname('KHName').AsString); + FieldByName('PRTPrice').Value:=CDS_Main.fieldbyname('PRTPrice').Value; + Post; + end; + FPrice:=Trim(CDS_Main.fieldbyname('PRTPrice').AsString); + end; } + end; + CDS_Main.Delete; + end; + end; + end; + CDS_Main.EnableControls; +{ with CDS_CX do + begin + First; + while not Eof do + begin + if YSData(CDS_CX)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + Exit; + end; + Next; + end; + end; } + + ADOQueryCmd.Connection.CommitTrans; + MovePanel2.Visible:=False; + Exit; + except + MovePanel2.Visible:=False; + CDS_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; + +end; +function TfrmCKProductBCPOutList.YSData(Order_Main10:TClientDataSet):Boolean; +var + CRID,YFID,PriceUnit,OrderUnit,FComTaiTou:String; + fprice:double; +begin + Result:=False; + with Order_Main10 do + begin + + begin + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1 * from JYOrder_Sub Where mainID='''+Trim(Order_Main10.fieldbyname('mainID').AsString)+''''); + Open; + end; + PriceUnit:=Trim(ADOQueryTemp.fieldbyname('PriceUnit').AsString); + OrderUnit:=Trim(ADOQueryTemp.fieldbyname('OrderUnit').AsString); + fprice:=ADOQueryTemp.fieldbyname('prtPrice').AsFloat; + + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main10.fieldbyname('KHName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(Order_Main10.fieldbyname('KHName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where FactoryName='''+Trim(Order_Main10.fieldbyname('KHName').AsString)+''''); + sql.Add(' and maiNID='''+Trim(Order_Main10.fieldbyname('maiNID').AsString)+''''); + sql.Add(' and CRTime='''+FormatDateTime('yyyy-MM-dd',Order_Main10.fieldbyname('CRTime').AsDateTime)+'''') ; + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd,YFID,'CS','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡƷӦʧ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(Order_Main10.fieldbyname('mainID').AsString); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦտǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(Order_Main10.fieldbyname('KHName').AsString); + FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',data.Date)); + FieldByName('YFType').Value:='Զ'; + FieldByName('Price').Value:=fprice; + FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=Trim(PriceUnit); + FieldByName('QtyUnit').Value:=Trim(Order_Main10.fieldbyname('QtyUnit').AsString); + FieldByName('ComTaiTou').Value:=Trim(FComTaiTou); + FieldByName('YFName').Value:='۽'; + FieldByName('MainId').Value:=Trim(Order_Main10.fieldbyname('Mainid').AsString); + // FieldByName('subID').Value:=Trim(Order_Main10.fieldbyname('subID').AsString); + Post; + end; + end else + begin + YFID:=Trim(ADOQueryTemp.fieldbyname('YFID').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update YF_Money_CR Set Qty=(select isnull(Sum(A.Qty),0) from CK_BanCP_CR A where A.MainID=YF_Money_CR.MainID and A.CRtime=YF_Money_CR.CRTime and A.CRType='''') '); + sql.Add(',PS=(select isnull(count(A.mainID),0) from CK_BanCP_CR A where A.maiNID=YF_Money_CR.maiNID and A.CRtime=YF_Money_CR.CRTime and A.CRType='''') '); + sql.Add(' where mainID='''+Trim(Order_Main10.fieldbyname('mainID').AsString)+''''); + sql.Add(' and CRTime='''+FormatDateTime('yyyy-MM-dd',Order_Main10.fieldbyname('CRTime').AsDateTime)+'''') ; + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty*HuiLv'); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where YFId='''+Trim(YFID)+''''); + Open; + end; + if ADOQueryTemp.FieldByName('Qty').Value=0 then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + end; + //Next; + end; + end; + Result:=True; +end; + +procedure TfrmCKProductBCPOutList.orderNoKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(orderNo.Text))<4 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + SQL.Add('select A.*,B.customerNoName,B.OrdPerson2,B.OrderNo,B.conNO,B.MPRTCodeName,B.MPRTSpec,B.MprtkuanNo,C.PrtkuanNo,C.PRTColor,C.SOrddefstr4,B.MPRTMF,B.MPRTKZ,D.MJXH,C.PRTPrice,C.PRTHX '); + sql.Add(',C.SOrddefstr4,D.MJQty3,D.MJQty4'); + sql.Add(',khconNo=(select Top 1 KHConNo from JYOrderCon_Main JCM where JCM.ConNo=B.OrderNo)'); + sql.Add(',MPRTECodeName=(select Top 1 MPRTCodeName from JYOrderCon_Main JCM where JCM.ConNo=B.OrderNo)'); + sql.Add(',isnull(customerNoName,B.OrderNo) KHName'); + sql.Add(',D.mjstr4 as AOrdDefStr1,cast(D.MJXH as varchar) as MJXHM '); + sql.add('from CK_BanCP_CR A '); + Sql.add(' inner join JYOrder_Main B on A.MainId=B.MainId'); + Sql.add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); + Sql.add(' inner join WFB_MJJY D on A.MJId=D.MJId'); + sql.add('where B.OrderNo like '''+'%'+Trim(orderNo.Text)+'%'+''''); + SQL.Add(' and CRType='''' '); + Open; + //ShowMessage(SQL.Text); + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmCKProductBCPOutList.Tv1CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if CDS_Main.IsEmpty=False then + begin + InitOrderColor(Trim(CDS_Main.fieldbyname('MainId').AsString),PRTColor,ADOQueryTemp); + InitBCGangNo(Trim(CDS_Main.fieldbyname('SubId').AsString),AOrdDefStr1,ADOQueryTemp); + end; +end; + +procedure TfrmCKProductBCPOutList.PRTColorChange(Sender: TObject); +begin + TBFind.Click; + if CDS_Main.IsEmpty=False then + begin + //InitOrderColor(Trim(CDS_Main.fieldbyname('MainId').AsString),PRTColor,ADOQueryTemp); + InitBCGangNo(Trim(CDS_Main.fieldbyname('SubId').AsString),AOrdDefStr1,ADOQueryTemp); + end; +end; + +procedure TfrmCKProductBCPOutList.AOrdDefStr1Change(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCKProductBCPOutList.CheckBox1Click(Sender: TObject); +begin + SelOKNo(CDS_Main,CheckBox1.Checked); +end; + +procedure TfrmCKProductBCPOutList.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + Panel4.Visible:=true; + Panel4.Left:=FLeft; + Panel4.Top:=FTop+110; + Panel10.Caption:=Trim(TV1.Controller.FocusedColumn.Caption); + RichEdit1.Text:=CDS_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString; + application.ProcessMessages; +end; + +procedure TfrmCKProductBCPOutList.Tv1MouseUp(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FLeft:=X; + FTop:=Y; +end; + +procedure TfrmCKProductBCPOutList.Image2Click(Sender: TObject); +begin + Panel4.Visible:=False; +end; + +procedure TfrmCKProductBCPOutList.Panel2DblClick(Sender: TObject); +begin + Panel2.Visible:=false; +end; + +procedure TfrmCKProductBCPOutList.THMJIDKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Trim(THMJID.Text)='' then + begin + Application.MessageBox('벻Ϊ!','ʾ',0); + Exit; + end; + + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR A '); + sql.Add('where MJID='+quotedstr(trim(THMJID.Text))); + sql.Add('and CRflag='''''); + open; + end; + IF ADOQueryTemp.IsEmpty then + begin + application.MessageBox('˾δ','ʾϢ',MB_ICONERROR); + exit; + end; + + try + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete CK_BanCP_CR where BCID='+quotedstr(ADOQueryTemp.fieldbyname('BCID').AsString)); + sql.Add('UPdate CK_BanCP_KC Set KCKgQty=(select KgQty from CK_BanCP_CR A where A.CRID=CK_BanCP_KC.CRID and A.CRType='''') '); + sql.Add(',KCQty=(select Qty from CK_BanCP_CR A where A.CRID=CK_BanCP_KC.CRID and A.CRType='''') '); + SQL.Add(' where CRID='+quotedstr(ADOQueryTemp.fieldbyname('CRID').AsString)); + sql.Add('Update WFB_MJJY Set MJStr2='''' where MJID='+quotedstr(ADOQueryTemp.fieldbyname('MJID').AsString)); + ExecSQL; + end; + IF CDS_Main.Locate('BCID',trim(ADOQueryTemp.fieldbyname('BCID').AsString),[]) then + CDS_Main.Delete; + THMJID.Text:=''; + THMJID.SetFocus; + Exit; + except + THMJID.Text:=''; + THMJID.SetFocus; + Application.MessageBox('쳣','ʾ',0); + end; + end; +end; + +procedure TfrmCKProductBCPOutList.ToolButton1Click(Sender: TObject); +begin + Panel2.Visible:=true; + THMJID.Text:=''; + THMJID.SetFocus; +end; + +procedure TfrmCKProductBCPOutList.ToolButton3Click(Sender: TObject); +var + fPrintFile:string; +begin + if CDS_Main.IsEmpty then Exit; + if CDS_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + with ADOqueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete TBSubID where DName='''+Trim(DCode)+''''); + ExecSQL; + end; + with ADOqueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * FROM TBSubID where 1=2 '); + open; + end; + ADOqueryCmd.Connection.BeginTrans; + try + CDS_Main.DisableControls; + with CDS_Main do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean then + begin + ADOQueryCmd.append; + ADOQueryCmd.fieldbyname('SubId').Value:=Trim(fieldbyname('MJID').AsString); + ADOQueryCmd.fieldbyname('Dname').Value:=Trim(DCode); + ADOQueryCmd.post; + end; + Next; + end; + end; + CDS_Main.EnableControls; + ADOqueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + end; + with ADOqueryPrint do + begin + close; + sql.Clear; + sql.Add(' exec P_Get_JYMJID_Main '); + sql.Add(' @MJID='+quotedstr('')); + sql.Add(',@flag=''0'' '); + sql.Add(',@userID='+quotedstr(trim(DCode))); + open; + end; + + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\Ϣ.rmf';; + if NOT FileExists(fPrintFile) then + begin + Application.MessageBox(PChar('û'+trim(fPrintFile)),'ʾ',MB_ICONERROR); + exit; + end; + Rm2.LoadFromFile(fPrintFile); + Rm2.ShowReport; +end; + +procedure TfrmCKProductBCPOutList.ToolButton2Click(Sender: TObject); +begin + IF CDS_Main.IsEmpty then exit; + frmJYMJIDPRINT:=TfrmJYMJIDPRINT.create(self); + with frmJYMJIDPRINT do + begin + fMJID:=trim(self.CDS_Main.fieldbyname('MJID').AsString); + fflag:=1; + show; + end; +end; + +end. diff --git a/艾登贸易管理/U_CKProductCKHZList.dfm b/艾登贸易管理/U_CKProductCKHZList.dfm new file mode 100644 index 0000000..84266c6 --- /dev/null +++ b/艾登贸易管理/U_CKProductCKHZList.dfm @@ -0,0 +1,613 @@ +object frmCKProductCKHZList: TfrmCKProductCKHZList + Left = 48 + Top = 151 + Width = 1278 + Height = 514 + Caption = #25104#21697#20986#24211#27719#24635#20449#24687 + 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 = 1262 + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBExport: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + end + object TBClose: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1262 + Height = 68 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 24 + Top = 12 + Width = 48 + Height = 12 + Caption = #26597#35810#26102#38388 + end + object Label2: TLabel + Left = 60 + Top = 36 + Width = 12 + Height = 12 + Caption = #33267 + end + object Label8: TLabel + Left = 211 + Top = 100 + Width = 48 + Height = 12 + Caption = #20811' '#37325 + end + object Label9: TLabel + Left = 380 + Top = 108 + Width = 24 + Height = 12 + Caption = #38376#24133 + end + object Label7: TLabel + Left = 764 + Top = 16 + Width = 48 + Height = 12 + Caption = #31867' '#22411 + end + object Label10: TLabel + Left = 496 + Top = 40 + Width = 6 + Height = 12 + end + object Label11: TLabel + Left = 488 + Top = 80 + Width = 36 + Height = 12 + Caption = #19994#21153#21592 + end + object Label12: TLabel + Left = 488 + Top = 104 + Width = 36 + Height = 12 + Caption = #36319#21333#21592 + end + object Label5: TLabel + Left = 208 + Top = 16 + Width = 48 + Height = 12 + Caption = #35746' '#21333' '#21495 + end + object Label3: TLabel + Left = 207 + Top = 40 + Width = 48 + Height = 12 + Caption = #20013#25991#21517#31216 + end + object Label6: TLabel + Left = 404 + Top = 16 + Width = 24 + Height = 12 + Caption = #39068#33394 + end + object Label13: TLabel + Left = 404 + Top = 40 + Width = 24 + Height = 12 + Caption = #32568#21495 + end + object Label14: TLabel + Left = 584 + Top = 16 + Width = 36 + Height = 12 + Caption = #21512#21516#21495 + end + object Label15: TLabel + Left = 600 + Top = 40 + Width = 18 + Height = 12 + Caption = 'PO#' + end + object BegDate: TDateTimePicker + Left = 73 + Top = 9 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 73 + Top = 33 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 1 + end + object MPRTKZ: TEdit + Tag = 2 + Left = 260 + Top = 96 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = MPRTCodeNameChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 404 + Top = 104 + Width = 65 + Height = 20 + TabOrder = 3 + OnChange = MPRTCodeNameChange + end + object CPType: TComboBox + Tag = 2 + Left = 815 + Top = 12 + Width = 68 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 4 + OnChange = TBFindClick + Items.Strings = ( + #27491#21697 + #27425#21697 + #22810#25340 + '') + end + object YWY: TEdit + Tag = 2 + Left = 526 + Top = 76 + Width = 65 + Height = 20 + TabOrder = 5 + OnChange = MPRTCodeNameChange + end + object OrdPerson1: TEdit + Tag = 2 + Left = 526 + Top = 100 + Width = 65 + Height = 20 + TabOrder = 6 + OnChange = MPRTCodeNameChange + end + object orderNo: TEdit + Tag = 2 + Left = 258 + Top = 12 + Width = 80 + Height = 20 + TabOrder = 7 + OnChange = MPRTCodeNameChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 258 + Top = 36 + Width = 80 + Height = 20 + TabOrder = 8 + OnChange = MPRTCodeNameChange + end + object PRTColor: TEdit + Tag = 2 + Left = 430 + Top = 12 + Width = 80 + Height = 20 + TabOrder = 9 + OnChange = MPRTCodeNameChange + end + object MJstr4: TEdit + Tag = 1 + Left = 430 + Top = 36 + Width = 80 + Height = 20 + TabOrder = 10 + OnChange = MPRTCodeNameChange + end + object conNo: TEdit + Tag = 2 + Left = 622 + Top = 12 + Width = 80 + Height = 20 + TabOrder = 11 + OnChange = MPRTCodeNameChange + end + object KHCONNO: TEdit + Tag = 2 + Left = 622 + Top = 36 + Width = 80 + Height = 20 + TabOrder = 12 + OnChange = MPRTCodeNameChange + end + end + object MovePanel2: TMovePanel + Left = 408 + Top = 192 + Width = 289 + Height = 49 + BevelInner = bvLowered + Caption = #27491#22312#26597#35810#25968#25454#65292#35831#31245#21518#12290#12290#12290 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + end + object cxGrid2: TcxGrid + Left = 0 + Top = 101 + Width = 1262 + Height = 375 + Align = alClient + TabOrder = 3 + object Tv1: TcxGridDBTableView + OnMouseUp = Tv1MouseUp + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Column6 + end + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column11 + end + item + Kind = skSum + Column = v1Column12 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1Column3: TcxGridDBColumn + Caption = #20986#24211#26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 89 + end + object v1Column1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 72 + end + object v1ConNO: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNO' + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1Column9: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'CPType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column10: TcxGridDBColumn + Caption = 'PO#' + DataBinding.FieldName = 'KHCONNO' + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v2Column1: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 125 + end + object v1Column4: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column2: TcxGridDBColumn + Caption = #39068#33394'('#33521#25991')' + DataBinding.FieldName = 'SOrddefstr4' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 79 + end + object v1Column8: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column5: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'MJStr4' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column6: TcxGridDBColumn + Caption = #21367#25968 + DataBinding.FieldName = 'JQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column12: TcxGridDBColumn + Caption = #38271#24230 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column7: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 83 + end + object v2Column5: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'KGQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column11: TcxGridDBColumn + Caption = #20928#37325 + DataBinding.FieldName = 'MJQty4' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel4: TPanel + Left = 62 + Top = 139 + Width = 294 + Height = 213 + TabOrder = 4 + Visible = False + object Label4: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 292 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #20107#20214#35828#26126 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + object Image2: TImage + Left = 269 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object RichEdit1: TRichEdit + Left = 1 + Top = 24 + Width = 292 + Height = 188 + Align = alClient + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + end + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 1020 + Top = 8 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1036 + Top = 8 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 996 + Top = 65532 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 920 + Top = 152 + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 888 + Top = 144 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 896 + Top = 128 + end +end diff --git a/艾登贸易管理/U_CKProductCKHZList.pas b/艾登贸易管理/U_CKProductCKHZList.pas new file mode 100644 index 0000000..d96bb8d --- /dev/null +++ b/艾登贸易管理/U_CKProductCKHZList.pas @@ -0,0 +1,284 @@ +unit U_CKProductCKHZList; + +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, MovePanel, cxButtonEdit, + cxCalendar; + +type + TfrmCKProductCKHZList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + cxGridPopupMenu1: TcxGridPopupMenu; + Label1: TLabel; + Label2: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + CDS_Main: TClientDataSet; + Label8: TLabel; + MPRTKZ: TEdit; + Label9: TLabel; + MPRTMF: TEdit; + Label7: TLabel; + CPType: TComboBox; + MovePanel2: TMovePanel; + Label10: TLabel; + Label11: TLabel; + Label12: TLabel; + YWY: TEdit; + OrdPerson1: TEdit; + cxGrid2: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column3: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + cxGrid2Level1: TcxGridLevel; + orderNo: TEdit; + Label5: TLabel; + Label3: TLabel; + MPRTCodeName: TEdit; + Label6: TLabel; + PRTColor: TEdit; + Label13: TLabel; + MJstr4: TEdit; + Panel4: TPanel; + Label4: TLabel; + Panel10: TPanel; + Image2: TImage; + RichEdit1: TRichEdit; + v1Column2: TcxGridDBColumn; + conNo: TEdit; + Label14: TLabel; + v1ConNO: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + KHCONNO: TEdit; + Label15: TLabel; + v1Column9: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure MPRTCodeNameChange(Sender: TObject); + procedure v1Column5PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure PRTColorChange(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Tv1MouseUp(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Image2Click(Sender: TObject); + private + FLeft,FTop:Integer; + procedure InitGrid(); + { Private declarations } + public + { Public declarations } + end; + +var + frmCKProductCKHZList: TfrmCKProductCKHZList; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmCKProductCKHZList.FormDestroy(Sender: TObject); +begin + frmCKProductCKHZList:=nil; +end; + +procedure TfrmCKProductCKHZList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmCKProductCKHZList.FormCreate(Sender: TObject); +begin + //cxGrid1.Align:=alClient; + BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp) +end; + +procedure TfrmCKProductCKHZList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + Filtered:=False; + sql.Add('select convert(char(10),A.CRTime,120) as CRTime,A.CPType,A.MainId,A.QtyUnit,B.Mjstr4,C.OrderNo,C.conNO,C.MPRTCodeName,D.PrtColor,D.PrtHX,D.SOrddefstr4, '); + sql.Add('count(A.MainId) as JQty,SUM(A.Qty) as Qty,SUM(A.KGQty) as KGQty,SUM(B.MJQty4) as MJQty4,'); + sql.Add('khconNO=(select top 1 khconNo from JYOrderCon_Main X where X.conNO=C.conNO)'); + sql.Add('from CK_BanCP_CR A '); + sql.Add('inner join WFB_MJJY B on B.MJID=A.MJID'); + sql.Add('inner join JYOrder_Main C on C.MainId=A.MainId '); + sql.Add('inner join JYOrder_sub D on D.subID=A.subID '); + Sql.add('where A.CRTime>='''+formatdateTime('yyyy-MM-dd',begdate.Date)+''' '); + Sql.add('and A.CRTime<'''+formatdateTime('yyyy-MM-dd',enddate.Date+1)+''' '); + Sql.add('and A.CRFlag='''' '); + Sql.add('group by convert(char(10),A.CRTime,120),A.CPType,A.MainId,A.QtyUnit,B.Mjstr4,C.OrderNo,C.conNO,C.MPRTCodeName,D.PrtColor,D.PrtHX,D.SOrddefstr4'); + Open; + //ShowMessage(SQL.Text); + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmCKProductCKHZList.TBRafreshClick(Sender: TObject); +begin + //BegDate.SetFocus; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + InitGrid(); + MovePanel2.Visible:=False; +end; + +procedure TfrmCKProductCKHZList.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + end; +end; + +procedure TfrmCKProductCKHZList.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption+tv1.Name,Tv1,'Ʒֿ'); + Close; +end; + +procedure TfrmCKProductCKHZList.FormShow(Sender: TObject); +begin + + ReadCxGrid(self.Caption+tv1.Name,Tv1,'Ʒֿ'); + if Trim(DParameters2)='' then + begin + //v1Column5.Options.Focusing:=True; + end else + begin + //v1Column5.Options.Focusing:=False; + end; + //InitGrid(); +end; + +procedure TfrmCKProductCKHZList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then exit; + TcxGridToExcel('б',cxGrid2); +end; + +procedure TfrmCKProductCKHZList.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 TfrmCKProductCKHZList.MPRTCodeNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCKProductCKHZList.v1Column5PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='SOrdDefStr10'; + flagname:='ŵص'; + if ShowModal=1 then + begin + with CDS_Main do + begin + Edit; + FieldByName('SOrdDefStr10').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrder_Sub Set SOrdDefStr10='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + sql.Add(' where SubId='''+Trim(Self.CDS_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmCKProductCKHZList.PRTColorChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCKProductCKHZList.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + Panel4.Left:=FLeft; + Panel4.Top:=FTop+110; + Panel4.Visible:=True; + Panel10.Caption:=Trim(TV1.Controller.FocusedColumn.Caption); + RichEdit1.Text:=CDS_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString; + application.ProcessMessages; +end; + +procedure TfrmCKProductCKHZList.Tv1MouseUp(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FLeft:=X; + FTop:=Y; +end; + +procedure TfrmCKProductCKHZList.Image2Click(Sender: TObject); +begin + Panel4.Visible:=False; +end; + +end. diff --git a/艾登贸易管理/U_CKProductRKHZList.dfm b/艾登贸易管理/U_CKProductRKHZList.dfm new file mode 100644 index 0000000..01c2992 --- /dev/null +++ b/艾登贸易管理/U_CKProductRKHZList.dfm @@ -0,0 +1,622 @@ +object frmCKProductRKHZList: TfrmCKProductRKHZList + Left = 128 + Top = 152 + Width = 1238 + Height = 511 + Caption = #25104#21697#20837#24211#27719#24635#20449#24687 + 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 = 1222 + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBExport: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1222 + Height = 68 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 212 + Top = 36 + Width = 48 + Height = 12 + Caption = #20013#25991#21517#31216 + end + object Label1: TLabel + Left = 24 + Top = 12 + Width = 48 + Height = 12 + Caption = #26597#35810#26102#38388 + end + object Label2: TLabel + Left = 60 + Top = 36 + Width = 12 + Height = 12 + Caption = #33267 + end + object Label5: TLabel + Left = 212 + Top = 12 + Width = 48 + Height = 12 + Caption = #35746' '#21333' '#21495 + end + object Label6: TLabel + Left = 420 + Top = 12 + Width = 24 + Height = 12 + Caption = #39068#33394 + end + object Label8: TLabel + Left = 211 + Top = 100 + Width = 48 + Height = 12 + Caption = #20811' '#37325 + end + object Label9: TLabel + Left = 380 + Top = 108 + Width = 24 + Height = 12 + Caption = #38376#24133 + end + object Label7: TLabel + Left = 780 + Top = 16 + Width = 48 + Height = 12 + Caption = #31867' '#22411 + end + object Label10: TLabel + Left = 504 + Top = 36 + Width = 6 + Height = 12 + end + object Label11: TLabel + Left = 488 + Top = 80 + Width = 36 + Height = 12 + Caption = #19994#21153#21592 + end + object Label12: TLabel + Left = 488 + Top = 104 + Width = 36 + Height = 12 + Caption = #36319#21333#21592 + end + object Label4: TLabel + Left = 420 + Top = 36 + Width = 24 + Height = 12 + Caption = #32568#21495 + end + object Label14: TLabel + Left = 600 + Top = 16 + Width = 36 + Height = 12 + Caption = #21512#21516#21495 + end + object Label15: TLabel + Left = 616 + Top = 40 + Width = 18 + Height = 12 + Caption = 'PO#' + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 266 + Top = 32 + Width = 80 + Height = 20 + TabOrder = 0 + OnChange = MPRTCodeNameChange + end + object BegDate: TDateTimePicker + Left = 73 + Top = 9 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 1 + end + object EndDate: TDateTimePicker + Left = 73 + Top = 33 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 2 + end + object orderNo: TEdit + Tag = 2 + Left = 266 + Top = 8 + Width = 80 + Height = 20 + TabOrder = 3 + OnChange = MPRTCodeNameChange + end + object PRTColor: TEdit + Tag = 2 + Left = 446 + Top = 8 + Width = 80 + Height = 20 + TabOrder = 4 + OnChange = MPRTCodeNameChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 260 + Top = 96 + Width = 100 + Height = 20 + TabOrder = 5 + OnChange = MPRTCodeNameChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 404 + Top = 104 + Width = 65 + Height = 20 + TabOrder = 6 + OnChange = MPRTCodeNameChange + end + object CPType: TComboBox + Tag = 2 + Left = 831 + Top = 12 + Width = 68 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 7 + OnChange = TBFindClick + Items.Strings = ( + #27491#21697 + #27425#21697 + #22810#25340 + '') + end + object YWY: TEdit + Tag = 2 + Left = 526 + Top = 76 + Width = 65 + Height = 20 + TabOrder = 8 + OnChange = MPRTCodeNameChange + end + object OrdPerson1: TEdit + Tag = 2 + Left = 526 + Top = 100 + Width = 65 + Height = 20 + TabOrder = 9 + OnChange = MPRTCodeNameChange + end + object MJstr4: TEdit + Tag = 1 + Left = 446 + Top = 32 + Width = 80 + Height = 20 + TabOrder = 10 + OnChange = MPRTCodeNameChange + end + object conNo: TEdit + Tag = 2 + Left = 638 + Top = 12 + Width = 80 + Height = 20 + TabOrder = 11 + OnChange = MPRTCodeNameChange + end + object KHCONNO: TEdit + Tag = 2 + Left = 638 + Top = 36 + Width = 80 + Height = 20 + TabOrder = 12 + OnChange = MPRTCodeNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 101 + Width = 1222 + Height = 372 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBTableView + OnMouseUp = Tv1MouseUp + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Column6 + end + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column11 + end + item + Kind = skSum + Column = v1Column12 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1Column3: TcxGridDBColumn + Caption = #20837#24211#26085#26399 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 89 + end + object v1Column1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v1Column9: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'conNo' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column10: TcxGridDBColumn + Caption = 'PO#' + DataBinding.FieldName = 'khconNO' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column1: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Width = 125 + end + object v1Column4: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column2: TcxGridDBColumn + Caption = #39068#33394'('#33521#25991')' + DataBinding.FieldName = 'SOrddefstr4' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column8: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column5: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'MJStr4' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column6: TcxGridDBColumn + Caption = #21367#25968 + DataBinding.FieldName = 'JQty' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column12: TcxGridDBColumn + Caption = #38271#24230 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column7: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + HeaderAlignmentHorz = taCenter + Width = 83 + end + object v2Column5: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'KGQty' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column11: TcxGridDBColumn + Caption = #20928#37325 + DataBinding.FieldName = 'MJQty4' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column13: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'CPType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object MovePanel2: TMovePanel + Left = 408 + Top = 192 + Width = 289 + Height = 49 + BevelInner = bvLowered + Caption = #27491#22312#26597#35810#25968#25454#65292#35831#31245#21518#12290#12290#12290 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + end + object Panel4: TPanel + Left = 62 + Top = 139 + Width = 294 + Height = 213 + TabOrder = 4 + Visible = False + object Label13: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 292 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #20107#20214#35828#26126 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + object Image2: TImage + Left = 269 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object RichEdit1: TRichEdit + Left = 1 + Top = 24 + Width = 292 + Height = 188 + Align = alClient + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + end + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 980 + Top = 144 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 996 + Top = 144 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 956 + Top = 136 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 920 + Top = 152 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 144 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 896 + Top = 128 + end + object RMGridReport1: 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 720 + Top = 136 + ReportData = {} + end +end diff --git a/艾登贸易管理/U_CKProductRKHZList.pas b/艾登贸易管理/U_CKProductRKHZList.pas new file mode 100644 index 0000000..cc84268 --- /dev/null +++ b/艾登贸易管理/U_CKProductRKHZList.pas @@ -0,0 +1,291 @@ +unit U_CKProductRKHZList; + +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, MovePanel, cxButtonEdit, + cxCalendar, RM_System, RM_Common, RM_Class, RM_GridReport; + +type + TfrmCKProductRKHZList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + cxGridPopupMenu1: TcxGridPopupMenu; + Label3: TLabel; + MPRTCodeName: TEdit; + Label1: TLabel; + Label2: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + CDS_Main: TClientDataSet; + Tv1: TcxGridDBTableView; + cxGrid2Level1: TcxGridLevel; + cxGrid2: TcxGrid; + v2Column1: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + Label5: TLabel; + orderNo: TEdit; + Label6: TLabel; + PRTColor: TEdit; + v1Column7: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + Label8: TLabel; + MPRTKZ: TEdit; + Label9: TLabel; + MPRTMF: TEdit; + Label7: TLabel; + CPType: TComboBox; + MovePanel2: TMovePanel; + Label10: TLabel; + Label11: TLabel; + Label12: TLabel; + YWY: TEdit; + OrdPerson1: TEdit; + v1Column11: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + MJstr4: TEdit; + Label4: TLabel; + Panel4: TPanel; + Label13: TLabel; + Panel10: TPanel; + Image2: TImage; + RichEdit1: TRichEdit; + v1Column2: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + conNo: TEdit; + Label14: TLabel; + KHCONNO: TEdit; + Label15: TLabel; + v1Column13: TcxGridDBColumn; + RMGridReport1: TRMGridReport; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure MPRTCodeNameChange(Sender: TObject); + procedure v1Column5PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure PRTColorChange(Sender: TObject); + procedure Image2Click(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Tv1MouseUp(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure TBPrintClick(Sender: TObject); + private + FLeft,FTop:Integer; + procedure InitGrid(); + { Private declarations } + public + { Public declarations } + end; + +var + frmCKProductRKHZList: TfrmCKProductRKHZList; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmCKProductRKHZList.FormDestroy(Sender: TObject); +begin + frmCKProductRKHZList:=nil; +end; + +procedure TfrmCKProductRKHZList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmCKProductRKHZList.FormCreate(Sender: TObject); +begin + //cxGrid1.Align:=alClient; + BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp) +end; + +procedure TfrmCKProductRKHZList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + Filtered:=False; + sql.Add('select convert(char(10),A.CRTime,120) as CRTime,A.CPType,A.MainId,A.QtyUnit,B.Mjstr4,C.OrderNo,C.ConNO,C.MPRTCodeName,D.PrtColor,D.PrtHX,D.SOrddefstr4, '); + sql.Add('count(A.MainId) as JQty,SUM(A.Qty) as Qty,SUM(A.KGQty) as KGQty,SUM(B.MJQty4) as MJQty4,'); + sql.Add('khconNO=(select top 1 khconNo from JYOrderCon_Main X where X.conNO=C.conNO)'); + sql.Add('from CK_BanCP_CR A '); + sql.Add('inner join WFB_MJJY B on B.MJID=A.MJID'); + sql.Add('inner join JYOrder_Main C on C.MainId=A.MainId '); + sql.Add('inner join JYOrder_sub D on D.subID=A.subID '); + Sql.add('where A.CRTime>='''+formatdateTime('yyyy-MM-dd',begdate.Date)+''' '); + Sql.add('and A.CRTime<'''+formatdateTime('yyyy-MM-dd',enddate.Date+1)+''' '); + Sql.add('and A.CRType='''' '); + Sql.add('group by convert(char(10),A.CRTime,120),A.CPType,A.MainId,A.QtyUnit,B.Mjstr4,C.OrderNo,C.ConNO,C.MPRTCodeName,D.PrtColor,D.PrtHX,D.SOrddefstr4'); + Open; + //ShowMessage(SQL.Text); + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmCKProductRKHZList.TBRafreshClick(Sender: TObject); +begin + //BegDate.SetFocus; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + InitGrid(); + MovePanel2.Visible:=False; +end; + +procedure TfrmCKProductRKHZList.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + end; +end; + +procedure TfrmCKProductRKHZList.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption+tv1.Name,Tv1,'Ʒֿ'); + Close; +end; + +procedure TfrmCKProductRKHZList.FormShow(Sender: TObject); +begin + + ReadCxGrid(self.Caption+tv1.Name,Tv1,'Ʒֿ'); + if Trim(DParameters2)='' then + begin + //v1Column5.Options.Focusing:=True; + end else + begin + //v1Column5.Options.Focusing:=False; + end; + //InitGrid(); +end; + +procedure TfrmCKProductRKHZList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then exit; + TcxGridToExcel('б',cxGrid2); +end; + +procedure TfrmCKProductRKHZList.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 TfrmCKProductRKHZList.MPRTCodeNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCKProductRKHZList.v1Column5PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='SOrdDefStr10'; + flagname:='ŵص'; + if ShowModal=1 then + begin + with CDS_Main do + begin + Edit; + FieldByName('SOrdDefStr10').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrder_Sub Set SOrdDefStr10='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + sql.Add(' where SubId='''+Trim(Self.CDS_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmCKProductRKHZList.PRTColorChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCKProductRKHZList.Image2Click(Sender: TObject); +begin + Panel4.Visible:=False; +end; + +procedure TfrmCKProductRKHZList.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + Panel4.Left:=FLeft; + Panel4.Top:=FTop+110; + Panel4.Visible:=True; + Panel10.Caption:=Trim(TV1.Controller.FocusedColumn.Caption); + RichEdit1.Text:=CDS_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString; + application.ProcessMessages; +end; + +procedure TfrmCKProductRKHZList.Tv1MouseUp(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FLeft:=X; + FTop:=Y; +end; + +procedure TfrmCKProductRKHZList.TBPrintClick(Sender: TObject); +begin + RMGridReport1.PreviewButtons:=[pbZoom,pbLoad,pbSave,pbPrint,pbFind,pbPageSetup,pbExit,pbExport,pbNavigator]; +end; + +end. diff --git a/艾登贸易管理/U_CKYCLKC.dfm b/艾登贸易管理/U_CKYCLKC.dfm new file mode 100644 index 0000000..0b2966e --- /dev/null +++ b/艾登贸易管理/U_CKYCLKC.dfm @@ -0,0 +1,345 @@ +object frmCKYCLKC: TfrmCKYCLKC + Left = 128 + Top = 152 + Width = 1027 + Height = 511 + Caption = #21407#26448#26009#20986#20837#23384 + 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 = 1019 + 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_JWLCK.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBExport: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + end + object ToolButton1: TToolButton + Left = 252 + Top = 0 + Caption = #20445#23384 + ImageIndex = 14 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1019 + Height = 42 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 302 + Top = 12 + Width = 48 + Height = 12 + Caption = #29289#26009#21517#31216 + end + object Label4: TLabel + Left = 478 + Top = 12 + Width = 36 + Height = 12 + Caption = #35268' '#26684 + end + object Label7: TLabel + Left = 638 + Top = 12 + Width = 48 + Height = 12 + Caption = #20379' '#24212' '#21830 + end + object Label1: TLabel + Left = 28 + Top = 12 + Width = 48 + Height = 12 + Caption = #26597#35810#26102#38388 + end + object Label2: TLabel + Left = 168 + Top = 12 + Width = 12 + Height = 12 + Caption = #33267 + end + object YCLName: TEdit + Tag = 2 + Left = 351 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 0 + OnChange = YCLNameChange + end + object YCLSpec: TEdit + Tag = 2 + Left = 516 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 1 + OnChange = YCLNameChange + end + object GYSName: TEdit + Tag = 2 + Left = 687 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = YCLNameChange + end + object BegDate: TDateTimePicker + Left = 77 + Top = 9 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 3 + end + object EndDate: TDateTimePicker + Left = 181 + Top = 9 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Time = 40768.458268587970000000 + TabOrder = 4 + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 75 + Width = 1019 + Height = 399 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + Column = v2Column6 + end + item + Kind = skSum + Column = v1Column1 + end + item + Kind = skSum + Column = v1Column2 + end + item + Kind = skSum + Column = v2Column7 + end + item + Kind = skSum + Column = v2Column8 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_JWLCK.Default + object v2Column1: TcxGridDBColumn + Caption = #29289#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 92 + end + object v2Column2: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 77 + end + object v2Column3: TcxGridDBColumn + Caption = #20379#24212#21830 + DataBinding.FieldName = 'GYSName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 77 + end + object v2Column4: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'KCUint' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 82 + end + object v2Column5: TcxGridDBColumn + Caption = #19978#26399#25968#37327 + DataBinding.FieldName = 'SQJCS' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 73 + end + object v2Column6: TcxGridDBColumn + Caption = #26412#26399#20837#24211#25968#37327 + DataBinding.FieldName = 'RKS' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 101 + end + object v1Column1: TcxGridDBColumn + Caption = #26412#26399#22238#20179#25968#37327 + DataBinding.FieldName = 'HCS' + Options.Focusing = False + Width = 87 + end + object v1Column2: TcxGridDBColumn + Caption = #26412#26399#36864#36135#25968#37327 + DataBinding.FieldName = 'THS' + Options.Focusing = False + Width = 88 + end + object v2Column7: TcxGridDBColumn + Caption = #26412#26399#20986#24211#25968#37327 + DataBinding.FieldName = 'CKS' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 93 + end + object v2Column8: TcxGridDBColumn + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'KCQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 78 + end + object v2Column9: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'KCType' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + #20027#35201 + #36741#21161 + #20854#23427 + '') + HeaderAlignmentHorz = taCenter + Width = 81 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_JWLCK.ADOLink + Parameters = <> + Left = 904 + Top = 40 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_JWLCK.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 840 + Top = 40 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_JWLCK.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 872 + Top = 40 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 624 + Top = 184 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 544 + Top = 176 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 416 + Top = 192 + end +end diff --git a/艾登贸易管理/U_CKYCLKC.pas b/艾登贸易管理/U_CKYCLKC.pas new file mode 100644 index 0000000..a388bcb --- /dev/null +++ b/艾登贸易管理/U_CKYCLKC.pas @@ -0,0 +1,241 @@ +unit U_CKYCLKC; + +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; + +type + TfrmCKYCLKC = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + cxGridPopupMenu1: TcxGridPopupMenu; + Label3: TLabel; + Label4: TLabel; + Label7: TLabel; + YCLName: TEdit; + YCLSpec: TEdit; + GYSName: TEdit; + Label1: TLabel; + Label2: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + CDS_Main: TClientDataSet; + Tv1: TcxGridDBTableView; + cxGrid2Level1: TcxGridLevel; + cxGrid2: TcxGrid; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + ToolButton1: TToolButton; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure YCLNameChange(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure ToolButton1Click(Sender: TObject); + private + procedure InitGrid(); + { Private declarations } + public + { Public declarations } + end; + +var + frmCKYCLKC: TfrmCKYCLKC; + +implementation +uses + U_DataLink,U_Fun,U_CRMX; + +{$R *.dfm} + +procedure TfrmCKYCLKC.FormDestroy(Sender: TObject); +begin + frmCKYCLKC:=nil; +end; + +procedure TfrmCKYCLKC.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmCKYCLKC.FormCreate(Sender: TObject); +begin + //cxGrid1.Align:=alClient; + BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-30; + EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp) +end; + +procedure TfrmCKYCLKC.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + SQL.Add('exec CK_YCL_CRCHZ :begdate,:enddate,:CKName'); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime)); + Parameters.ParamByName('enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',enddate.DateTime+1)); + Parameters.ParamByName('CKName').Value:=Trim(DParameters1); + Open; + //ShowMessage(SQL.Text); + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmCKYCLKC.TBRafreshClick(Sender: TObject); +begin + BegDate.SetFocus; + InitGrid(); +end; + +procedure TfrmCKYCLKC.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + end; +end; + +procedure TfrmCKYCLKC.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ԭϿ2',Tv1,'ԭϲֿ'); + Close; +end; + +procedure TfrmCKYCLKC.FormShow(Sender: TObject); +begin + + ReadCxGrid('ԭϿ2',Tv1,'ԭϲֿ'); + if Trim(DParameters2)='ԭ' then + begin + ToolButton1.Visible:=True; + v2Column9.Options.Focusing:=True; + v2Column9.Visible:=True; + end else + begin + ToolButton1.Visible:=False; + v2Column9.Options.Focusing:=False; + v2Column9.Visible:=False; + end; + InitGrid(); +end; + +procedure TfrmCKYCLKC.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then exit; + TcxGridToExcel(Trim(DParameters1)+'',cxGrid2); +end; + +procedure TfrmCKYCLKC.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 TfrmCKYCLKC.YCLNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCKYCLKC.Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + try + frmCRMX:=TfrmCRMX.Create(Application); + with frmCRMX do + begin + Fbegdate:=FormatDateTime('yyyy-MM-dd',Self.BegDate.DateTime); + Fenddate:=FormatDateTime('yyyy-MM-dd',Self.enddate.DateTime+1); + {FGYS:=Trim(Self.CDS_Main.fieldbyname('GYS').AsString); + FYCLCode:=Trim(Self.CDS_Main.fieldbyname('YCLCode').AsString); + FYCLSpec:=Trim(Self.CDS_Main.fieldbyname('YCLSpec').AsString); + FCRUnit:=Trim(Self.CDS_Main.fieldbyname('KCUint').AsString); } + CRID:=Trim(Self.CDS_Main.fieldbyname('CRID').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmCRMX.Free; + end; +end; + +procedure TfrmCKYCLKC.ToolButton1Click(Sender: TObject); +begin + try + ADOQueryCmd.Connection.BeginTrans; + BegDate.SetFocus; + CDS_Main.DisableControls; + with CDS_Main do + begin + First; + while not Eof do + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update CK_YCL_KC Set KCType='''+Trim(CDS_Main.fieldbyname('KCType').AsString)+''''); + SQL.Add(' where CRID='+CDS_Main.fieldbyname('CRID').AsString); + ExecSQL; + end; + Next; + end; + end; + CDS_Main.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; + +end; + +end. diff --git a/艾登贸易管理/U_CPDBAO.dfm b/艾登贸易管理/U_CPDBAO.dfm new file mode 100644 index 0000000..5ad39dc --- /dev/null +++ b/艾登贸易管理/U_CPDBAO.dfm @@ -0,0 +1,1602 @@ +object frmCPDBao: TfrmCPDBao + Left = 87 + Top = 130 + Width = 1382 + Height = 754 + VertScrollBar.Position = 2 + Caption = #25171#21253#31383#21475 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = -2 + Width = 1533 + Height = 33 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + Visible = False + object TBClose: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1533 + Height = 76 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label16: TLabel + Left = 420 + Top = 88 + Width = 48 + Height = 12 + Caption = #36135#36816#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label15: TLabel + Left = 40 + Top = 84 + Width = 48 + Height = 12 + Caption = #37197#36135#20154#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label14: TLabel + Left = 234 + Top = 80 + Width = 24 + Height = 12 + Caption = #21253#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label1: TLabel + Left = 32 + Top = 14 + Width = 100 + Height = 24 + Caption = #26465#30721#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 1168 + Top = 85 + Width = 50 + Height = 24 + Caption = #24211#20301 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label3: TLabel + Left = 327 + Top = 14 + Width = 50 + Height = 24 + Caption = #21253#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 473 + Top = 14 + Width = 75 + Height = 24 + Caption = #21253#26465#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object PHYG: TBtnEditA + Left = 92 + Top = 84 + Width = 100 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 1 + Visible = False + end + object defstr2: TComboBox + Left = 472 + Top = 84 + Width = 101 + Height = 20 + Style = csDropDownList + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Pitch = fpFixed + Font.Style = [] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ItemHeight = 12 + ItemIndex = 0 + ParentFont = False + TabOrder = 2 + Visible = False + Items.Strings = ( + '' + #24555#20214 + #24930#20214) + end + object packNo: TcxCurrencyEdit + Left = 262 + Top = 76 + Properties.DecimalPlaces = 0 + Properties.DisplayFormat = '0' + TabOrder = 3 + Visible = False + Width = 100 + end + object SmNO: TEdit + Left = 136 + Top = 10 + Width = 165 + Height = 32 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ParentFont = False + TabOrder = 0 + OnKeyPress = SmNOKeyPress + end + object kcKw: TBtnEditA + Left = 1228 + Top = 81 + Width = 89 + Height = 33 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ParentFont = False + TabOrder = 4 + Visible = False + OnBtnClick = kcKwBtnClick + end + object baoNo: TEdit + Left = 383 + Top = 10 + Width = 66 + Height = 32 + Hint = 'baoNo' + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ParentFont = False + TabOrder = 5 + OnClick = baoNoClick + OnExit = baoNoExit + OnKeyPress = baoNoKeyPress + end + object BaoID: TEdit + Left = 550 + Top = 10 + Width = 170 + Height = 32 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ParentFont = False + TabOrder = 6 + OnClick = baoNoClick + end + object FileName: TcxButton + Left = 984 + Top = 8 + Width = 77 + Height = 33 + Hint = 'Filesother' + Caption = #25171#21360#21253#26631#31614 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + OnClick = FileNameClick + LookAndFeel.Kind = lfOffice11 + end + object cxButton1: TcxButton + Left = 1068 + Top = 8 + Width = 77 + Height = 33 + Hint = 'Filesother' + Caption = #20851#38381 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + OnClick = cxButton1Click + LookAndFeel.Kind = lfOffice11 + end + object ComboBox1: TComboBox + Left = 920 + Top = 12 + Width = 49 + Height = 23 + Style = csDropDownList + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Times New Roman' + Font.Style = [] + ItemHeight = 15 + ItemIndex = 0 + ParentFont = False + TabOrder = 9 + Text = '1' + Items.Strings = ( + '1' + '2' + '3' + '4') + end + object cxButton3: TcxButton + Left = 728 + Top = 8 + Width = 77 + Height = 33 + Hint = 'Filesother' + Caption = #21024#38500 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + OnClick = cxButton3Click + LookAndFeel.Kind = lfOffice11 + end + object cxButton2: TcxButton + Left = 704 + Top = 80 + Width = 77 + Height = 33 + Hint = 'Filesother' + Caption = #20445#23384 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + OnClick = cxButton2Click + LookAndFeel.Kind = lfOffice11 + end + object cxButton4: TcxButton + Left = 728 + Top = 40 + Width = 77 + Height = 33 + Hint = 'Filesother' + Caption = #25764#38144#25171#21253 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 12 + OnClick = cxButton4Click + LookAndFeel.Kind = lfOffice11 + end + object check_Fbz: TCheckBox + Left = 864 + Top = 80 + Width = 105 + Height = 17 + Caption = #21253#21103#26631#31614 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 13 + end + object Fbq: TBtnEditA + Left = 960 + Top = 80 + Width = 121 + Height = 20 + TabOrder = 14 + OnBtnClick = FbqBtnClick + end + object ComboBox2: TComboBox + Left = 1077 + Top = 80 + Width = 49 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 12 + ItemIndex = 0 + ParentFont = False + TabOrder = 15 + Text = '1' + Items.Strings = ( + '1' + '2' + '3' + '4') + end + object check_bz: TCheckBox + Left = 828 + Top = 16 + Width = 89 + Height = 17 + Caption = #21253#26631#31614 + Checked = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + State = cbChecked + TabOrder = 16 + end + object BaoBq: TBtnEditA + Left = 1144 + Top = 56 + Width = 141 + Height = 20 + TabOrder = 17 + Visible = False + OnBtnClick = BaoBqBtnClick + end + object CheckBox1: TCheckBox + Left = 828 + Top = 48 + Width = 133 + Height = 17 + Caption = #33258#21160#25171#21253 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 18 + end + object ComboBox3: TComboBox + Left = 920 + Top = 44 + Width = 49 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 19 + Items.Strings = ( + '1' + '2' + '3' + '4' + '5' + '6' + '7' + '8' + '9' + '10' + '11' + '12' + '13' + '14') + end + end + object Panel2: TPanel + Left = 400 + Top = 139 + Width = 1133 + Height = 560 + Caption = 'Panel2' + TabOrder = 2 + object cxGrid2: TcxGrid + Left = 1 + Top = 1 + Width = 1131 + Height = 266 + Align = alTop + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + object TV2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCustomDrawCell = TV2CustomDrawCell + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + Column = cxGridDBColumn6 + end + item + Kind = skSum + end + item + Kind = skSum + Column = V2Column2 + end + item + Kind = skSum + Column = V2Column3 + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_TradeManage.Default + object cxGridDBColumn1: TcxGridDBColumn + Caption = #25195#25551#20449#24687 + DataBinding.FieldName = 'SDefNote' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 154 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #26465#30721#21495 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 113 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 116 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Width = 94 + end + object V2Column5: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object V2Column4: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'MJStr4' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object V2Column1: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'BCGangNO' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 120 + end + object cxGridDBColumn7: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'MJType' + HeaderAlignmentHorz = taCenter + Width = 46 + end + object V2BaoID: TcxGridDBColumn + Caption = #21253#26465#30721 + DataBinding.FieldName = 'BaoID' + HeaderAlignmentHorz = taCenter + Width = 94 + end + object V2BaoNO: TcxGridDBColumn + Caption = #21253#21495 + DataBinding.FieldName = 'BaoNO' + HeaderAlignmentHorz = taCenter + Width = 51 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'SOrdQty1' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'MJLen' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + object V2Column2: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'MJMaoZ' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + object V2Column3: TcxGridDBColumn + Caption = #20928#37325 + DataBinding.FieldName = 'MJQty4' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + object cxGrid1: TcxGrid + Left = 1 + Top = 267 + Width = 1131 + Height = 292 + Align = alClient + TabOrder = 1 + object TV4: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DSSEL + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn16 + end + item + Kind = skSum + Column = cxGridDBColumn17 + end + item + Kind = skSum + end + item + Kind = skSum + Column = cxGridDBColumn18 + end + item + Kind = skSum + Column = cxGridDBColumn19 + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_TradeManage.Default + object cxGridDBColumn8: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'Ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 53 + end + object cxGridDBColumn9: TcxGridDBColumn + Caption = #26465#30721#21495 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 113 + end + object cxGridDBColumn10: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 116 + end + object cxGridDBColumn11: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 94 + end + object cxGridDBColumn12: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'BCGangNO' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 120 + end + object V4Column1: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object V4Column2: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'MJstr4' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object cxGridDBColumn13: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'MJType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object cxGridDBColumn14: TcxGridDBColumn + Caption = #21253#26465#30721 + DataBinding.FieldName = 'BaoID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 94 + end + object cxGridDBColumn15: TcxGridDBColumn + Caption = #21253#21495 + DataBinding.FieldName = 'BaoNO' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 51 + end + object cxGridDBColumn16: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'SOrdQty1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + object cxGridDBColumn17: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'MJLen' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + object cxGridDBColumn18: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'MJMaoZ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + object cxGridDBColumn19: TcxGridDBColumn + Caption = #20928#37325 + DataBinding.FieldName = 'MJQty4' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + end + object cxGridLevel3: TcxGridLevel + GridView = TV4 + end + end + end + object Panel3: TPanel + Left = 999 + Top = 225 + Width = 290 + Height = 286 + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 4 + Visible = False + object SpeedButton1: TSpeedButton + Left = 4 + Top = 211 + Width = 140 + Height = 70 + Caption = '0' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton2: TSpeedButton + Left = 4 + Top = 143 + Width = 70 + Height = 70 + Caption = '1' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton3: TSpeedButton + Left = 74 + Top = 143 + Width = 70 + Height = 70 + Caption = '2' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton4: TSpeedButton + Left = 144 + Top = 143 + Width = 70 + Height = 70 + Caption = '3' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton5: TSpeedButton + Left = 4 + Top = 73 + Width = 70 + Height = 70 + Caption = '4' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton6: TSpeedButton + Left = 74 + Top = 73 + Width = 70 + Height = 70 + Caption = '5' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton7: TSpeedButton + Left = 144 + Top = 73 + Width = 70 + Height = 70 + Caption = '6' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton8: TSpeedButton + Left = 4 + Top = 3 + Width = 70 + Height = 70 + Caption = '7' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton9: TSpeedButton + Left = 74 + Top = 2 + Width = 70 + Height = 70 + Caption = '8' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton10: TSpeedButton + Left = 144 + Top = 2 + Width = 70 + Height = 70 + Caption = '9' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton11: TSpeedButton + Tag = 9 + Left = 144 + Top = 213 + Width = 70 + Height = 68 + Caption = '.' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton12: TSpeedButton + Left = 214 + Top = 2 + Width = 70 + Height = 70 + Caption = #8592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton12Click + end + object SpeedButton49: TSpeedButton + Tag = 9 + Left = 214 + Top = 73 + Width = 70 + Height = 208 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton49Click + end + end + object Panel4: TPanel + Left = 0 + Top = 107 + Width = 553 + Height = 592 + Align = alLeft + BevelInner = bvRaised + BevelOuter = bvLowered + Caption = 'Panel4' + TabOrder = 5 + object cxGrid3: TcxGrid + Left = 2 + Top = 89 + Width = 549 + Height = 501 + Align = alClient + TabOrder = 0 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DSTm + 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 + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_TradeManage.Default + object v3Column5: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'Ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 42 + end + object Tv3Column1: TcxGridDBColumn + Caption = #26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Width = 88 + end + object v3Column1: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 72 + end + object v3Column2: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 44 + end + object v3Column4: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 43 + end + object v3Column3: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'MJlen' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 47 + end + object v3Column8: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'SOrddefstr1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v3Column6: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object v3Column7: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'MJStr4' + HeaderAlignmentHorz = taCenter + Width = 50 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + object Panel5: TPanel + Left = 2 + Top = 2 + Width = 549 + Height = 87 + Align = alTop + BevelOuter = bvNone + TabOrder = 1 + object Label6: TLabel + Left = 8 + Top = 13 + Width = 45 + Height = 14 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 8 + Top = 56 + Width = 24 + Height = 12 + Caption = #39068#33394 + end + object Label8: TLabel + Left = 96 + Top = 56 + Width = 24 + Height = 12 + Caption = #33394#21495 + end + object Label9: TLabel + Left = 180 + Top = 56 + Width = 24 + Height = 12 + Caption = #33457#22411 + end + object Label10: TLabel + Left = 268 + Top = 56 + Width = 24 + Height = 12 + Caption = #32568#21495 + end + object Label11: TLabel + Left = 356 + Top = 56 + Width = 24 + Height = 12 + Caption = #21367#21495 + end + object BtnEditA1: TBtnEditA + Left = 56 + Top = 9 + Width = 153 + Height = 22 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnBtnClick = BtnEditA1BtnClick + end + object cxButton5: TcxButton + Left = 212 + Top = 8 + Width = 49 + Height = 25 + Hint = 'Filesother' + Caption = #21047#26032 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = cxButton5Click + LookAndFeel.Kind = lfOffice11 + end + object cxButton6: TcxButton + Left = 468 + Top = 8 + Width = 61 + Height = 25 + Hint = 'Filesother' + Caption = #30830#23450#36873#25321 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = cxButton6Click + LookAndFeel.Kind = lfOffice11 + end + object cxButton7: TcxButton + Left = 468 + Top = 48 + Width = 57 + Height = 25 + Hint = 'Filesother' + Caption = #36807#28388 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = cxButton7Click + LookAndFeel.Kind = lfOffice11 + end + object PRTColor: TEdit + Tag = 2 + Left = 32 + Top = 52 + Width = 60 + Height = 20 + TabOrder = 4 + end + object SOrddefstr1: TEdit + Tag = 1 + Left = 120 + Top = 52 + Width = 60 + Height = 20 + TabOrder = 5 + end + object PRTHX: TEdit + Tag = 2 + Left = 204 + Top = 52 + Width = 60 + Height = 20 + TabOrder = 6 + end + object mjstr4: TEdit + Tag = 1 + Left = 292 + Top = 52 + Width = 60 + Height = 20 + TabOrder = 7 + end + object MJXH: TEdit + Tag = 1 + Left = 380 + Top = 52 + Width = 60 + Height = 20 + TabOrder = 8 + end + end + end + object MovePanel1: TMovePanel + Left = 506 + Top = 274 + Width = 715 + Height = 327 + BevelInner = bvLowered + Color = clSkyBlue + TabOrder = 3 + Visible = False + object Label2: TLabel + Left = 184 + Top = 160 + Width = 198 + Height = 64 + Caption = 'Label2' + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -64 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Edit2: TEdit + Left = 177 + Top = 43 + Width = 412 + Height = 72 + Enabled = False + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -64 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ParentFont = False + ReadOnly = True + TabOrder = 0 + Text = '91209120001' + end + object Button4: TButton + Left = 300 + Top = 272 + Width = 75 + Height = 41 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button4Click + end + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 552 + Top = 136 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 500 + Top = 232 + end + object CDSMJID: TClientDataSet + Aggregates = <> + Params = <> + Left = 732 + Top = 212 + end + object DataSource2: TDataSource + DataSet = CDSMJID + Left = 836 + Top = 248 + end + object ADOQueryTmp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 388 + Top = 324 + end + object cxStyleRepository1: TcxStyleRepository + Left = 317 + Top = 306 + object cxStyle1: TcxStyle + AssignedValues = [svColor, svFont] + Color = clInactiveCaption + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle2: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = 4707838 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBtnText + end + object cxStyle_gridRow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16311512 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridFoot: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridHead: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridGroupBox: TcxStyle + AssignedValues = [svColor, svFont] + Color = clMoneyGreen + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_yellow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_fontBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_fontclFuchsia: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clFuchsia + end + object cxStyle_fontclPurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clPurple + end + object cxStyle_fontclGreen: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clGreen + end + object cxStyle_fontclBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object cxStyle_fontclTeal: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clTeal + end + object cxStyle_fontclOlive: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 252 + Top = 428 + end + object DataSource1: TDataSource + DataSet = ADOQuery1 + Left = 312 + Top = 464 + end + object ADOQueryTm: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 152 + Top = 192 + end + object DSTm: TDataSource + DataSet = CDSTM + Left = 88 + Top = 216 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 576 + Top = 256 + end + object RM2: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 424 + Top = 256 + ReportData = {} + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 652 + Top = 232 + end + object CDSTM: TClientDataSet + Aggregates = <> + Params = <> + Left = 212 + Top = 221 + end + object CDSSEL: TClientDataSet + Aggregates = <> + Params = <> + Left = 957 + Top = 497 + end + object DSSEL: TDataSource + DataSet = CDSSEL + Left = 849 + Top = 501 + end +end diff --git a/艾登贸易管理/U_CPDBAO.pas b/艾登贸易管理/U_CPDBAO.pas new file mode 100644 index 0000000..2fb89ff --- /dev/null +++ b/艾登贸易管理/U_CPDBAO.pas @@ -0,0 +1,1170 @@ +unit U_CPDBAO; + +interface + +uses + Windows, Messages, strutils,SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, StdCtrls, cxContainer, cxTextEdit, + cxCurrencyEdit, BtnEdit, ExtCtrls, ComCtrls, ToolWin, DBClient, ADODB, + MovePanel, Buttons, Menus, cxLookAndFeelPainters, cxButtons, RM_Common, + RM_Class, RM_GridReport, RM_System, RM_Dataset, cxCheckBox; + +type + TfrmCPDBao = class(TForm) + ToolBar1: TToolBar; + TBClose: TToolButton; + Panel1: TPanel; + PHYG: TBtnEditA; + defstr2: TComboBox; + Label16: TLabel; + Label15: TLabel; + packNo: TcxCurrencyEdit; + Label14: TLabel; + Label1: TLabel; + Panel2: TPanel; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridDBColumn7: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ADOQueryMain: TADOQuery; + ADOQueryCmd: TADOQuery; + CDSMJID: TClientDataSet; + DataSource2: TDataSource; + SmNO: TEdit; + ADOQueryTmp: TADOQuery; + V2Column1: TcxGridDBColumn; + kcKw: TBtnEditA; + Label5: TLabel; + MovePanel1: TMovePanel; + Edit2: TEdit; + Button4: TButton; + Label2: TLabel; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxStyle_gridRow: TcxStyle; + cxStyle_gridFoot: TcxStyle; + cxStyle_gridHead: TcxStyle; + cxStyle_gridGroupBox: TcxStyle; + cxStyle_yellow: TcxStyle; + cxStyle_Red: TcxStyle; + cxStyle_fontBlack: TcxStyle; + cxStyle_fontclFuchsia: TcxStyle; + cxStyle_fontclPurple: TcxStyle; + cxStyle_fontclGreen: TcxStyle; + cxStyle_fontclBlue: TcxStyle; + cxStyle_fontclTeal: TcxStyle; + cxStyle_fontclOlive: TcxStyle; + ADOQuery1: TADOQuery; + DataSource1: TDataSource; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridLevel2: TcxGridLevel; + Tv3Column1: TcxGridDBColumn; + ADOQueryTm: TADOQuery; + DSTm: TDataSource; + baoNo: TEdit; + BaoID: TEdit; + Label3: TLabel; + Label4: TLabel; + V2BaoNO: TcxGridDBColumn; + V2BaoID: TcxGridDBColumn; + Panel3: TPanel; + SpeedButton1: TSpeedButton; + SpeedButton2: TSpeedButton; + SpeedButton3: TSpeedButton; + SpeedButton4: TSpeedButton; + SpeedButton5: TSpeedButton; + SpeedButton6: TSpeedButton; + SpeedButton7: TSpeedButton; + SpeedButton8: TSpeedButton; + SpeedButton9: TSpeedButton; + SpeedButton10: TSpeedButton; + SpeedButton11: TSpeedButton; + SpeedButton12: TSpeedButton; + SpeedButton49: TSpeedButton; + FileName: TcxButton; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + cxButton1: TcxButton; + ComboBox1: TComboBox; + V2Column2: TcxGridDBColumn; + V2Column3: TcxGridDBColumn; + Panel4: TPanel; + ADOQueryPrint: TADOQuery; + Label6: TLabel; + BtnEditA1: TBtnEditA; + v3Column1: TcxGridDBColumn; + v3Column2: TcxGridDBColumn; + v3Column3: TcxGridDBColumn; + CDSTM: TClientDataSet; + Panel5: TPanel; + cxButton3: TcxButton; + cxButton2: TcxButton; + CDSSEL: TClientDataSet; + cxGrid1: TcxGrid; + TV4: TcxGridDBTableView; + cxGridDBColumn8: TcxGridDBColumn; + cxGridDBColumn9: TcxGridDBColumn; + cxGridDBColumn10: TcxGridDBColumn; + cxGridDBColumn11: TcxGridDBColumn; + cxGridDBColumn12: TcxGridDBColumn; + cxGridDBColumn13: TcxGridDBColumn; + cxGridDBColumn14: TcxGridDBColumn; + cxGridDBColumn15: TcxGridDBColumn; + cxGridDBColumn16: TcxGridDBColumn; + cxGridDBColumn17: TcxGridDBColumn; + cxGridDBColumn18: TcxGridDBColumn; + cxGridDBColumn19: TcxGridDBColumn; + cxGridLevel3: TcxGridLevel; + DSSEL: TDataSource; + cxButton4: TcxButton; + V2Column5: TcxGridDBColumn; + V2Column4: TcxGridDBColumn; + V4Column1: TcxGridDBColumn; + V4Column2: TcxGridDBColumn; + v3Column4: TcxGridDBColumn; + check_Fbz: TCheckBox; + Fbq: TBtnEditA; + ComboBox2: TComboBox; + check_bz: TCheckBox; + BaoBq: TBtnEditA; + cxButton5: TcxButton; + cxButton6: TcxButton; + v3Column5: TcxGridDBColumn; + CheckBox1: TCheckBox; + ComboBox3: TComboBox; + v3Column6: TcxGridDBColumn; + v3Column7: TcxGridDBColumn; + cxButton7: TcxButton; + v3Column8: TcxGridDBColumn; + Label7: TLabel; + PRTColor: TEdit; + SOrddefstr1: TEdit; + Label8: TLabel; + PRTHX: TEdit; + Label9: TLabel; + mjstr4: TEdit; + Label10: TLabel; + MJXH: TEdit; + Label11: TLabel; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + + procedure FormCreate(Sender: TObject); + procedure SmNOKeyPress(Sender: TObject; var Key: Char); + procedure FormShow(Sender: TObject); + procedure TV2CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure kcKwBtnClick(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure baoNoKeyPress(Sender: TObject; var Key: Char); + procedure baoNoClick(Sender: TObject); + procedure SpeedButton1Click(Sender: TObject); + procedure SpeedButton12Click(Sender: TObject); + procedure SpeedButton49Click(Sender: TObject); + procedure FileNameClick(Sender: TObject); + procedure cxButton1Click(Sender: TObject); + procedure baoNoExit(Sender: TObject); + procedure BtnEditA1BtnClick(Sender: TObject); + procedure cxButton3Click(Sender: TObject); + procedure cxButton2Click(Sender: TObject); + procedure cxButton4Click(Sender: TObject); + procedure FbqBtnClick(Sender: TObject); + procedure BaoBqBtnClick(Sender: TObject); + procedure cxButton5Click(Sender: TObject); + procedure cxButton6Click(Sender: TObject); + procedure cxButton7Click(Sender: TObject); + private + Rolls:integer; + procedure InitGrid(); + procedure InitMJID(); + function SaveRK():Boolean; + Procedure QueryRk(); + Procedure QueryTM(); + { Private declarations } + public + { Public declarations } + end; + +var + frmCPDBao: TfrmCPDBao; + newh:hwnd; + +implementation +uses + U_DataLink,U_Fun, U_ZDYHelp, U_OrderSelRK; +{$R *.dfm} +Procedure TfrmCPDBao.QueryTm(); +var + FBaoID:string; +begin + with ADOQueryTM do + begin + close; + sql.Clear; + sql.Add('select A.*,B.*,C.MPrtCodeName,C.orderNo as OrderNoM'); + sql.Add('from WFB_MJJY A '); + sql.Add('inner join JYOrder_sub B on B.subID=A.subID '); + sql.Add('inner join JYOrder_main C on C.mainID=A.MainID '); + sql.Add('and A.mjstr2=''δ'' and isnull(A.BaoID,'''')='''' and C.orderNo='+quotedstr(trim(BtnEditA1.Text))); + open; + end; + SCreateCDS20(ADOQueryTM,CDSTM); + SInitCDSData20(ADOQueryTM,CDSTM); + + SCreateCDS20(ADOQueryTM,CDSMJID); +// SInitCDSData20(ADOQueryMain,CDSMJID); + SCreateCDS20(ADOQueryTM,CDSSEL); +// SInitCDSData20(ADOQueryMain,CDSSEL); + + IF not CDSTM.IsEmpty then + begin + with ADOQuery1 do + begin + close; + sql.clear; + sql.add('select isnull(max(cast(baoNo as int)),0)+1 as MaxBaoNo from WFB_MJJY '); + sql.Add('where mainID='+quotedstr(trim(CDSTM.fieldbyname('MainID').AsString))); + open; + end; + baoNo.text:=ADOQuery1.fieldbyname('MaxBaoNo').AsString; + if GetLSNo(ADOQueryTmp,FBaoID,'BI','WFB_MJJY',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + BaoID.Text:=trim(FBaoid); + end; + + SMNO.SetFocus; +end; + +Procedure TfrmCPDBao.QueryRk(); +begin + with ADOQuery1 do + begin + close; + sql.Clear; + sql.Add('select A.*,hC_ps=A.AordQty2,JY_ps=(select count(MainID) from WFB_MJJY X where X.APID=A.APID),'); + sql.Add('JY_Qty=(select sum(MJLen) from WFB_MJJY X where X.APID=A.APID), '); + sql.Add('RK_RollNum=(select sum(SOrdQty1) from CK_BanCP_CR X where X.APID=A.APID and X.CRType=''''),'); + sql.Add('RK_Qty=(select sum(MJLen) from CK_BanCP_CR X where X.APID=A.APID and X.CRType='''') '); + sql.Add('from JYOrder_sub_anPai A '); + SQL.Add('WHERE exists(select MJID from WFB_MJJY X where X.APID=A.APID and X.MJID='+quotedstr(trim(smNO.Text))); + sql.Add(')'); + open; + end; +end; + +function TfrmCPDBao.SaveRK():Boolean; +var + maxno:String; + CRID:Integer; + MaxCkNo,MaxCkSubNo:String; + MhcTime:TdateTime; +begin + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + + try + {with ADOQueryTmp do + begin + Close; + sql.Clear; + SQL.add('Update CK_BanCP_CRID Set CRID=CRID+1'); + sql.Add('select * from CK_BanCP_CRID'); + Open; + end; + CRID:=ADOQueryTmp.fieldbyname('CRID').AsInteger; + if GetLSNo(ADOQueryTmp,MaxCkNo,'JR','CK_BanCP_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡƷֿʧܣ','ʾ',0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where 1<>1'); + Open; + end; + mhcTime:=SGetServerDateTime(ADOQueryTmp); + + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(ADOQueryMain.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(ADOQueryMain.fieldbyname('SubId').AsString); + FieldByName('C_Code').Value:=Trim(ADOQueryMain.fieldbyname('PRTCode').AsString); + FieldByName('C_CodeName').Value:=Trim(ADOQueryMain.fieldbyname('PRTCodeName').AsString); + //FieldByName('C_SPec').Value:=Trim(ADOQueryMain.fieldbyname('C_SPec').AsString); + FieldByName('C_Color').Value:=Trim(ADOQueryMain.fieldbyname('PRTColor').AsString); + FieldByName('APID').Value:=Trim(ADOQueryMain.fieldbyname('APID').AsString); + FieldByName('MJID').Value:=Trim(ADOQueryMain.fieldbyname('MJId').AsString); + FieldByName('mjxh').Value:=Trim(ADOQueryMain.fieldbyname('mjxh').AsString); + FieldByName('BaoNo').Value:=Trim(BaoNo.Text); + FieldByName('BaoID').Value:=Trim(BaoID.Text); + + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('CRTime').Value:=FormatDateTime('yyyy-MM-dd',mhcTime); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + FieldByName('CRID').Value:=CRID; + FieldByName('KGQty').Value:=0; + FieldByName('Qty').Value:=ADOQueryMain.fieldbyname('MJLen').Value; + FieldByName('RollNum').Value:=1; + FieldByName('QtyUnit').Value:=ADOQueryMain.fieldbyname('MJTypeOther').Value; + FieldByName('CPType').Value:=ADOQueryMain.fieldbyname('MJType').Value; + //FieldByName('Note').Value:=ADOQueryMain.fieldbyname('Note').Value; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTmp); + //fieldbyname('kcKw').Value:=GetKw(ADOQueryTmp,ADOQueryMain.fieldbyname('PRTCodeName').AsString,ADOQueryMain.fieldbyname('PRTColor').AsString); + Post; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=CRID; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('CRTime').Value:=FormatDateTime('yyyy-MM-dd',mhcTime); + FieldByName('CRType').Value:=''; + FieldByName('CPType').Value:=ADOQueryMain.fieldbyname('MJType').Value; + FieldByName('C_Code').Value:=Trim(ADOQueryMain.fieldbyname('PRTCode').AsString); + FieldByName('C_CodeName').Value:=Trim(ADOQueryMain.fieldbyname('PRTCodeName').AsString); + //FieldByName('C_SPec').Value:=Trim(ADOQueryMain.fieldbyname('C_SPec').AsString); + FieldByName('C_Color').Value:=Trim(ADOQueryMain.fieldbyname('PRTColor').AsString); + FieldByName('BaoNo').Value:=Trim(BaoNo.Text); + FieldByName('BaoID').Value:=Trim(BaoID.Text); + FieldByName('MJID').Value:=Trim(ADOQueryMain.fieldbyname('MJID').AsString); + FieldByName('KCKGQty').Value:=0; + FieldByName('KCQty').Value:=ADOQueryMain.fieldbyname('MJlen').Value; + FieldByName('RollNum').Value:=1; + FieldByName('KCQtyUnit').Value:=ADOQueryMain.fieldbyname('MJTypeOther').Value; + FieldByName('mjxh').Value:=Trim(ADOQueryMain.fieldbyname('mjxh').AsString); + //FieldByName('KCNote').Value:=ADOQueryMain.fieldbyname('Note').Value; + //fieldbyname('kcKw').Value:=GetKw(ADOQueryTmp,ADOQueryMain.fieldbyname('PRTCodeName').AsString,ADOQueryMain.fieldbyname('PRTColor').AsString); + Post; + end; } + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set BaoNo='''+trim(BaoNo.Text)+''',BaoID='''+trim(Baoid.text)+''' where MJID='''+Trim(ADOQueryMain.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=true; + except + ADOQueryCmd.Connection.RollbackTrans; + end; +end; + +procedure TfrmCPDBao.InitGrid(); +begin + with ADOQueryMain do + begin + Close; + sql.Clear; + SQL.Add('select A.*,B.*,C.MprtCodeName,C.orderNo as OrderNoM from WFB_MJJY A '); + sql.add('inner join JYOrder_Sub B on B.SubId=A.SubId'); + sql.add('inner join JYOrder_Main C on C.maiNID=A.mainID'); + SQL.Add('where 1=2 '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDSMJID); + SInitCDSData20(ADOQueryMain,CDSMJID); + SCreateCDS20(ADOQueryMain,CDSSEL); + SInitCDSData20(ADOQueryMain,CDSSEL); +end; + +procedure TfrmCPDBao.InitMJID(); +begin + MovePanel1.Visible:=false; + + + with ADOQueryMain do + begin + Close; + sql.Clear; + SQL.Add('select A.*,B.*,C.MprtCodeName,C.orderNo as OrderNoM from WFB_MJJY A '); + sql.add('inner join JYOrder_Sub B on B.SubId=A.SubId'); + sql.add('inner join JYOrder_Main C on C.maiNID=A.mainID'); + sql.Add('where MJID='+quotedstr(trim(SmNO.Text))); + Open; + if not IsEmpty then + begin + IF trim(Fieldbyname('MJstr2').AsString)='' then + begin + CDSMJID.Append; + CDSMJID.FieldByName('SDefNote').Value:=''; + CDSMJID.FieldByName('MJID').Value:=trim(SmNO.Text); + CDSMJID.Post; + end + else + begin + CDSMJID.Append; + CDSMJID.FieldByName('SDefNote').Value:='ɹ'; + CDSMJID.FieldByName('MJID').Value:=trim(ADOQueryMain.Fieldbyname('MJID').AsString); +// CDSMJID.FieldByName('CRID').Value:=trim(ADOQueryMain.Fieldbyname('CRID').AsString); + CDSMJID.FieldByName('PRTCodeName').Value:=trim(ADOQueryMain.Fieldbyname('PRTCodeName').AsString); + CDSMJID.FieldByName('MPRTCodeName').Value:=trim(ADOQueryMain.Fieldbyname('MPRTCodeName').AsString); + CDSMJID.FieldByName('PRTColor').Value:=trim(ADOQueryMain.Fieldbyname('PRTColor').AsString); + CDSMJID.FieldByName('PRTHX').Value:=trim(ADOQueryMain.Fieldbyname('PRTHX').AsString); + CDSMJID.FieldByName('MJStr4').Value:=trim(ADOQueryMain.Fieldbyname('MJStr4').AsString); + CDSMJID.FieldByName('MJType').Value:=trim(ADOQueryMain.Fieldbyname('MJType').AsString); + CDSMJID.FieldByName('BaoNo').Value:=trim(BaoNo.Text); + CDSMJID.FieldByName('BaoID').Value:=trim(BaoID.Text); + CDSMJID.FieldByName('SOrdQty1').Value:=1; + CDSMJID.FieldByName('MJLen').Value:=ADOQueryMain.Fieldbyname('MJLen').AsFloat; + CDSMJID.FieldByName('MJMaoZ').Value:=ADOQueryMain.Fieldbyname('MJMaoZ').AsFloat; + CDSMJID.FieldByName('MJQty3').Value:=ADOQueryMain.Fieldbyname('MJQty3').AsFloat; + CDSMJID.FieldByName('MJQty4').Value:=ADOQueryMain.Fieldbyname('MJQty4').AsFloat; + CDSMJID.FieldByName('MJTypeOther').Value:=trim(ADOQueryMain.Fieldbyname('MJTypeOther').AsString); + CDSMJID.FieldByName('mainID').Value:=trim(ADOQueryMain.Fieldbyname('mainID').AsString); + CDSMJID.FieldByName('subID').Value:=trim(ADOQueryMain.Fieldbyname('subID').AsString); + CDSMJID.Post; + + Rolls:=Rolls+1; + end; + end + else + begin + CDSMJID.Append; + CDSMJID.FieldByName('SDefNote').Value:='벻'; + CDSMJID.FieldByName('MJID').Value:=trim(SmNO.Text); + CDSMJID.Post; + end; + end; + IF trim(CDSMJID.FieldByName('SDefNote').AsString)<>'ɹ' then + begin + MovePanel1.Visible:=true; + Edit2.Text:=SmNO.Text; + Label2.Caption:=trim(CDSMJID.FieldByName('SDefNote').AsString); + CDSMJID.delete; + end; + If CDSTM.Locate('MJID',trim(smno.Text),[]) then + begin + // application.MessageBox('AAAA','AAAAAAAA',0); + CDSTM.Delete; + tv2.Controller.EditingController.ShowEdit(); + tv3.Controller.EditingController.ShowEdit(); + end; + IF CheckBox1.Checked then + begin + IF (Rolls=strtointdef(trim(ComboBox3.Text),0)) and (strtointdef(trim(ComboBox3.Text),0)>0) then + begin + FileName.Click; + end; + end; +end; + +procedure TfrmCPDBao.FormDestroy(Sender: TObject); +begin + frmCPDBao:=nil; +end; + +procedure TfrmCPDBao.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + //writeCxGrid(self.Caption+tv1.Name,Tv1,'Ʒֿ'); + writeCxGrid(self.Caption+Tv2.Name,Tv2,'Ʒֿ'); + writeCxGrid(self.Caption+Tv3.Name+'1',Tv3,'Ʒֿ'); + writeCxGrid(self.Caption+Tv4.Name,Tv4,'Ʒֿ'); + Action:=cafree; +end; + +procedure TfrmCPDBao.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmCPDBao.FormCreate(Sender: TObject); +begin + Panel2.Align:=alClient; + //readCxGrid(self.Caption+tv1.Name,Tv1,'Ʒֿ'); + readCxGrid(self.Caption+Tv2.Name,Tv2,'Ʒֿ'); + readCxGrid(self.Caption+Tv3.Name+'1',Tv3,'Ʒֿ'); + readCxGrid(self.Caption+Tv4.Name,Tv4,'Ʒֿ'); + Rolls:=0; +end; + +procedure TfrmCPDBao.SmNOKeyPress(Sender: TObject; var Key: Char); +begin + IF key=#13 then + begin + + if trim(BaoNo.Text)='' then + begin + application.MessageBox('ŲΪ','ʾ'); + exit; + end; + if trim(BaoID.Text)='' then + begin + application.MessageBox('벻Ϊ','ʾ'); + exit; + end; + IF CDSTM.IsEmpty then exit; + if trim(smno.Text)='' then exit; + IF CDSMJID.Locate('MJID',trim(smno.Text),[]) then + begin + MovePanel1.Visible:=true; + Edit2.Text:=SmNO.Text; + Label2.Caption:='˾ظɨ裡'; + smno.Text:=''; + smno.SetFocus; + exit; + end; + If not CDSTM.Locate('MJID',trim(smno.Text),[]) then + begin + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select A.*,B.*,C.MprtCodeName,C.OrderNO as orderNoM from WFB_MJJY A '); + sql.add('inner join JYOrder_Sub B on B.SubId=A.SubId'); + sql.add('inner join JYOrder_Main C on C.maiNID=A.mainID'); + sql.Add('where MJID='+quotedstr(trim(SmNO.Text))); + Open; + IF isempty then + begin + MovePanel1.Visible:=true; + Edit2.Text:=SmNO.Text; + Label2.Caption:='˾Ŵ'; + end + else + begin + If not CDSTM.Locate('orderNoM',trim(fieldbyname('OrderNoM').AsString),[]) then + begin + MovePanel1.Visible:=true; + Edit2.Text:=SmNO.Text; + Label2.Caption:='˾ڵǰ'; + end + else + begin + IF Fieldbyname('MJstr2').AsString<>'δ' then + begin + MovePanel1.Visible:=true; + Edit2.Text:=SmNO.Text; + Label2.Caption:=fieldbyname('Mjstr2').AsString; + end + else + begin + MovePanel1.Visible:=true; + Edit2.Text:=SmNO.Text; + Label2.Caption:='˾Ѵ'; + end; + end; + end; + end; + smno.Text:=''; + smno.SetFocus; + exit; + end + else + begin + initMJID(); + end; + smno.Text:=''; + smno.SetFocus; + end; +end; + +procedure TfrmCPDBao.FormShow(Sender: TObject); +begin + MovePanel1.Left:=(Width-MovePanel1.Width) div 2; + MovePanel1.top:=(Height-MovePanel1.Height-200) div 2; + // InitGrid(); +end; + +procedure TfrmCPDBao.TV2CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); +var + i:integer; +begin + i:=tv2.GetColumnByFieldName('SDefNote').Index; + if (AViewInfo.GridRecord.Values[i]<>'ɹ') then + ACanvas.Brush.Color:=clred; +end; + +procedure TfrmCPDBao.kcKwBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CPKWFlag'; + flagname:='λϢ'; + V1Name.Caption:='λ'; + V1Note.Caption:='Ӣ'; +// MainType:=Trim(DName); + fnote:=FALSE; + if ShowModal=1 then + begin + kcKw.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmCPDBao.Button4Click(Sender: TObject); +begin + MovePanel1.Visible:=False; + SmNO.SetFocus; +end; + +procedure TfrmCPDBao.baoNoKeyPress(Sender: TObject; var Key: Char); +var FBaoID: string; +begin + +end; + +procedure TfrmCPDBao.baoNoClick(Sender: TObject); +var + i:Integer; +begin +// Panel3.Visible:=True; + { with Panel3 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim(TEdit(Sender).Name); + end; + end; + end; } +end; + +procedure TfrmCPDBao.SpeedButton1Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TSpeedButton(Sender).Hint); + if Trim(fsj)='' then Exit; + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=fsj+Trim(TSpeedButton(Sender).Caption); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; + +procedure TfrmCPDBao.SpeedButton12Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + if Trim(fsj)='' then Exit; + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=Copy(fsj,1,Length(fsj)-1); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; +procedure TfrmCPDBao.SpeedButton49Click(Sender: TObject); +var + FBaoID:string; +begin + IF trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Hint)<>'' then + begin + if GetLSNo(ADOQueryTmp,FBaoID,'BI','WFB_MJJY',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + BaoID.Text:=trim(FBaoid); + end; + Panel3.Visible:=False; +end; + +procedure TfrmCPDBao.FileNameClick(Sender: TObject); +var fPrintFile: string; + Txt,fImagePath:string; + Moudle: THandle; + Makebar:TMakebar; + Mixtext:TMixtext; + FBaoID:string; + i:Integer; +begin + if trim(BaoID.Text)='' then + begin + application.MessageBox('벻δ','ʾ'); + exit; + end; + IF CDSMJID.IsEmpty then exit; + ADOQueryCmd.Connection.BeginTrans; + try + with CDSMJID do + begin + DisableControls; + first; + while not eof do + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set BaoNo='''+trim(BaoNo.Text)+''',BaoID='''+trim(Baoid.text)+''' where MJID='''+Trim(CDSMJID.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + edit; + fieldByName('Sflag').AsString :='2'; + fieldbyname('BaoNo').Value:=trim(BaoNo.Text); + fieldbyname('BaoID').Value:=trim(BaoID.Text); + post; + next; + end; + EnableControls; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('޸ʧܣ','ʾϢ',0); + exit; + end; + + +{ if trim(BaoID.Text)='' then + begin + application.MessageBox('벻δ','ʾ'); + exit; + end; } + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add('select A.Baoid,A.BaoNo,A.MJTypeOther as QtyUnit,D.OrderNo,D.conNo,D.customerNoName,D.MprtCodeName,D.Mprtspec,D.OrdPerson1,D.MPRTKuanNO,D.LBName,D.NLBName,'); + sql.Add('PRTColor=DBO.F_Get_Order_SubStr(BaoID,''BNColor''),SOrddefstr1=DBO.F_Get_Order_SubStr(BaoID,''BNSOrddefstr1''),'); + sql.Add('SOrddefstr4=DBO.F_Get_Order_SubStr(BaoID,''BNSOrddefstr4''),PRtHX=DBO.F_Get_Order_SubStr(BaoID,''BNPRtHX''), '); + sql.Add('Mjstr4=DBO.F_Get_Order_SubStr(BaoID,''BNGangNo''), '); + sql.Add('BNMJLENLIST=DBO.F_Get_Order_SubStr(BaoID,''BNMJLENLIST''), '); + sql.Add('PRTkuanNo=DBO.F_Get_Order_SubStr(BaoID,''BNPrtkuanno''),'); + sql.Add('khConNo=(select top 1 khConNo from JYOrderCon_Main X where X.ConNO=D.conNO), '); + sql.Add('MprtCodeNameEng=(select top 1 Note from KH_Zdy X where X.zdyName=D.MprtCodeName), '); + SQL.ADD('count(A.MJID) as JSl,sum(A.MJMaoZ) MJMAOZ,sum(MJQty3) as MJQty3,sum(MJQty4) as MJQty4,SUM(A.MJLen)as MJLen'); + sql.Add('from WFB_MJJY A'); + sql.Add(' inner join JYOrder_Sub C on C.SubID=A.SubID'); + sql.Add(' inner join JYOrder_Main D on D.MainID=A.MainID'); + SQL.Add('where A.BaoID='''+Trim(BaoID.Text)+''''); + SQL.ADD('group by A.Baoid,A.BaoNo,A.MJTypeOther,D.OrderNo,D.conNo,D.customerNoName,D.MprtCodeName,D.Mprtspec,D.OrdPerson1,D.MPRTKuanNO,D.LBName,D.NLBName'); + Open; + end; + + if ADOQueryPrint.RecordCount>1 then + begin + Application.MessageBox('´!','ʾ',0); + Exit; + end; + if ADOQueryPrint.RecordCount<1 then + begin + Application.MessageBox('˰Żδ棬뱣ݣڴӡ룡','ʾ',0); + Exit; + end; + + + try + Moudle:=LoadLibrary('MakeQRBarcode.dll'); + @Makebar:=GetProcAddress(Moudle,'Make'); + @Mixtext:=GetProcAddress(Moudle,'MixText'); + Txt:=trim(BaoID.Text); + 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); + exit; + end; + + baoNo.Text:=inttostr(strtointdef(trim(baoNo.Text),0)+1); + if GetLSNo(ADOQueryTmp,FBaoID,'BI','WFB_MJJY',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + BaoID.Text:=trim(FBaoid); + CDSsel.Last; + with CDSMJID do + begin + DisableControls; + first; + while not eof do + begin + CDSsel.Append; + for i:=0 to FieldCount-1 do + begin + CDSsel.fields[i].value:=Fields[i].Value ; + end; + CDSsel.Post; + next; + end; + EnableControls; + end; + CDSMJID.EmptyDataSet; + + IF check_bz.Checked then + begin + if Trim(ADOQueryPrint.fieldbyname('NLBName').AsString)<>'' then + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\'+Trim(ADOQueryPrint.fieldbyname('NLBName').AsString)+'.rmf' + else + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ǩ.rmf'; + IF Not FileExists(fPrintFile) then + begin + Application.MessageBox(PChar('û'+fPrintFile),'ʾ',0); + Exit; + end; + + if FileExists(fPrintFile) then + begin + RMVariables['QRBARCODE']:=fImagePath; + RM2.LoadFromFile(fPrintFile); + RM2.DefaultCopies:=strtointdef(trim(ComboBox1.Text),1); + //RM2.ShowReport; + RM2.printReport; + end; + end; + + Rolls:=0; + SmNO.SetFocus; +{ + IF check_Fbz.Checked then + begin + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\'+Trim(Fbq.Text)+'.rmf' ; + IF Not FileExists(fPrintFile) then + begin + Application.MessageBox(PChar('û'+fPrintFile),'ʾ',0); + Exit; + end; + + if FileExists(fPrintFile) then + begin + RMVariables['QRBARCODE']:=fImagePath; + RM2.LoadFromFile(fPrintFile); + RM2.DefaultCopies:=strtointdef(trim(ComboBox2.Text),1); + //RM2.ShowReport; + RM2.printReport; + end; + end; + } +end; + +procedure TfrmCPDBao.cxButton1Click(Sender: TObject); +begin + TBClose.Click; +end; + +procedure TfrmCPDBao.baoNoExit(Sender: TObject); +var + FBaoID:string; +begin + IF baoNo.Text<>'' then + begin + if GetLSNo(ADOQueryTmp,FBaoID,'BI','WFB_MJJY',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + BaoID.Text:=trim(FBaoid); + end + else + BaoID.Text:=''; +end; + +procedure TfrmCPDBao.BtnEditA1BtnClick(Sender: TObject); +begin + frmOrderSelRK:=TfrmOrderSelRK.Create(Application); + with frmOrderSelRK do + begin + if ShowModal=1 then + begin + CDS_OrderSel.DisableControls; + with CDS_OrderSel do + begin + First; + while not Eof do + begin + if FieldByName('SSel').Value=True then + begin + BtnEditA1.Text:=trim(CDS_OrderSel.fieldbyname('OrderNo').asstring); + end; + Next; + end; + end; + CDS_OrderSel.EnableControls; + end; + end; + QueryTm(); +end; + +procedure TfrmCPDBao.cxButton3Click(Sender: TObject); +var + i:integer; +begin + IF CDSMJID.IsEmpty then exit; + IF CDSMJID.fieldByName('Sflag').AsString='2' then + begin + application.MessageBox('Ѵɾ','ʾϢ',0); + exit; + end + else + begin + with CDSMJID do + begin + CDSTM.Last; + + CDSTM.Append; + for i:=0 to FieldCount-1 do + begin + CDSTM.fields[i].value:=Fields[i].Value ; + end; + CDSTM.Post; + end; + CDSMJID.Delete; + end; +end; + +procedure TfrmCPDBao.cxButton2Click(Sender: TObject); +begin + IF CDSMJID.IsEmpty then exit; + ADOQueryCmd.Connection.BeginTrans; + try + with CDSMJID do + begin + DisableControls; + first; + while not eof do + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set BaoNo='''+trim(BaoNo.Text)+''',BaoID='''+trim(Baoid.text)+''' where MJID='''+Trim(CDSMJID.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + edit; + fieldByName('Sflag').AsString :='2'; + fieldbyname('BaoNo').Value:=trim(BaoNo.Text); + fieldbyname('BaoID').Value:=trim(BaoID.Text); + post; + next; + end; + EnableControls; + end; + ADOQueryCmd.Connection.CommitTrans; + // application.MessageBox('޸ijɹ','ʾϢ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('޸ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmCPDBao.cxButton4Click(Sender: TObject); +begin + if CDSSEL.IsEmpty then Exit; + if CDSSEL.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + try + CDSSEL.DisableControls; + // ADOQueryCmd.Connection.BeginTrans; + with CDSSEL do + begin + First; + while FieldByName('SSel').AsBoolean do + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set baoID='''',baoNo='''' '); + sql.Add('where MJID='''+Trim(CDSSEL.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + delete; + end; + end; + // ADOQueryCmd.Connection.CommitTrans; + CDSSEL.EnableControls; + application.MessageBox('ݳɹ','ʾϢ'); + QueryTm(); + exit; + except + // ADOQueryCmd.Connection.RollbackTrans; + CDSSEL.EnableControls; + application.MessageBox('ݳʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmCPDBao.FbqBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BAOFFLAG'; + flagname:='ǩ'; + if ShowModal=1 then + begin + Fbq.Text:=trim(ClientDataSet1.fieldbyname('zdyName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmCPDBao.BaoBqBtnClick(Sender: TObject); +type + TMyFunc = function(App:Tapplication; FormH:hwnd; FormID:integer; + Language: integer; WinStyle:integer; + GCode: Pchar; GName: Pchar; DataBase:Pchar;Title:PChar; + Parameters1:PChar;Parameters2:PChar;Parameters3:PChar;Parameters4:PChar; + Parameters5:PChar;Parameters6:PChar;Parameters7:PChar;Parameters8:PChar; + Parameters9:PChar;Parameters10:PChar;DataBaseStr:PChar):hwnd;stdcall; +var + Tf: TMyFunc; + Tp: TFarProc; + Th:Thandle; + LabInt,labname:String; +begin + //if PPInt=2 then Exit; + Ddatabase:=StringOfChar(' ', 32); + Th := LoadLibrary('LabelSet.dll'); + if Th > 0 then + begin + try + Tp := GetProcAddress(Th, 'GetDllForm'); + if Tp <> nil then + begin + Tf := TMyFunc(Tp); + newh:=Tf(Application,0,2,0,0, + PChar(DCode), + PChar(DName), + PChar(Ddatabase), + PChar('ǩģ'), + PChar(''), + PChar(''), + '','','','','','','','',PChar(DConString) + ); + if Trim(PChar(Ddatabase))<>'' then + begin + Ddatabase:=Trim(PChar(Ddatabase)); + // LabInt:=Trim( LeftBStr(Ddatabase,Pos('|',Ddatabase)-1) ) ; + BaoBq.Text:=Trim(RightBStr(Ddatabase,Length(Ddatabase)-Pos('|',Ddatabase) ) ); + end; + end + else + begin + ShowMessage('ӡִд'); + end; + finally + // FreeLibrary(); + end; + end + else + begin + ShowMessage('Ҳ'+Trim('LabelSet.dll')); + end; + +end; + +procedure TfrmCPDBao.cxButton5Click(Sender: TObject); +begin + QueryTm(); +end; + +procedure TfrmCPDBao.cxButton6Click(Sender: TObject); +begin + IF CDSTM.IsEmpty then exit; + if trim(BaoNo.Text)='' then + begin + application.MessageBox('ŲΪ','ʾ'); + exit; + end; + if trim(BaoID.Text)='' then + begin + application.MessageBox('벻Ϊ','ʾ'); + exit; + end; + + with CDSTM do + begin + DisableControls; + // first; + while Locate('ssel',true,[]) do + begin + IF CDSMJID.Locate('MJID',trim(CDSTM.fieldbyname('MJID').AsString),[]) then + begin + MovePanel1.Visible:=true; + Edit2.Text:=SmNO.Text; + Label2.Caption:='˾ظɨ裡'; + smno.Text:=''; + smno.SetFocus; + EnableControls; + exit; + end; + CDSMJID.Append; + CDSMJID.FieldByName('SDefNote').Value:='ɹ'; + CDSMJID.FieldByName('MJID').Value:=trim(Fieldbyname('MJID').AsString); +// CDSMJID.FieldByName('CRID').Value:=trim(ADOQueryMain.Fieldbyname('CRID').AsString); + CDSMJID.FieldByName('PRTCodeName').Value:=trim(Fieldbyname('PRTCodeName').AsString); + CDSMJID.FieldByName('MPRTCodeName').Value:=trim(Fieldbyname('MPRTCodeName').AsString); + CDSMJID.FieldByName('PRTColor').Value:=trim(Fieldbyname('PRTColor').AsString); + CDSMJID.FieldByName('PRTHX').Value:=trim(Fieldbyname('PRTHX').AsString); + CDSMJID.FieldByName('MJStr4').Value:=trim(Fieldbyname('MJStr4').AsString); + CDSMJID.FieldByName('MJType').Value:=trim(Fieldbyname('MJType').AsString); + CDSMJID.FieldByName('BaoNo').Value:=trim(BaoNo.Text); + CDSMJID.FieldByName('BaoID').Value:=trim(BaoID.Text); + CDSMJID.FieldByName('SOrdQty1').Value:=1; + CDSMJID.FieldByName('MJLen').Value:=Fieldbyname('MJLen').AsFloat; + CDSMJID.FieldByName('MJMaoZ').Value:=Fieldbyname('MJMaoZ').AsFloat; + CDSMJID.FieldByName('MJQty3').Value:=Fieldbyname('MJQty3').AsFloat; + CDSMJID.FieldByName('MJQty4').Value:=Fieldbyname('MJQty4').AsFloat; + CDSMJID.FieldByName('MJTypeOther').Value:=trim(Fieldbyname('MJTypeOther').AsString); + CDSMJID.FieldByName('mainID').Value:=trim(Fieldbyname('mainID').AsString); + CDSMJID.FieldByName('subID').Value:=trim(Fieldbyname('subID').AsString); + CDSMJID.Post; + + CDSTM.Delete; + tv2.Controller.EditingController.ShowEdit(); + tv3.Controller.EditingController.ShowEdit(); + end; + first; + EnableControls; + end; +end; + +procedure TfrmCPDBao.cxButton7Click(Sender: TObject); +begin + SDofilter(ADOQueryTM,SGetFilters(Panel5,1,2)); + SCreateCDS20(ADOQueryTM,CDSTM); + SInitCDSData20(ADOQueryTM,CDSTM); +end; + +end. diff --git a/艾登贸易管理/U_CPGangNo.dfm b/艾登贸易管理/U_CPGangNo.dfm new file mode 100644 index 0000000..659b7e1 --- /dev/null +++ b/艾登贸易管理/U_CPGangNo.dfm @@ -0,0 +1,1131 @@ +object frmCPGangNo: TfrmCPGangNo + Left = 41 + Top = 60 + Width = 1350 + Height = 671 + Caption = #25442#32568#21495#31383#21475 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1446 + Height = 33 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + Visible = False + object TBClose: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1446 + Height = 48 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label16: TLabel + Left = 420 + Top = 56 + Width = 48 + Height = 12 + Caption = #36135#36816#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label15: TLabel + Left = 44 + Top = 56 + Width = 48 + Height = 12 + Caption = #37197#36135#20154#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label14: TLabel + Left = 234 + Top = 56 + Width = 24 + Height = 12 + Caption = #21253#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label1: TLabel + Left = 40 + Top = 14 + Width = 100 + Height = 24 + Caption = #26465#30721#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 395 + Top = 14 + Width = 125 + Height = 24 + Caption = #20462#25913#21518#32568#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 545 + Top = 66 + Width = 75 + Height = 24 + Caption = #21253#26465#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label34: TLabel + Left = 1023 + Top = 14 + Width = 80 + Height = 22 + Caption = #25171#21360#20221#25968 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object PHYG: TBtnEditA + Left = 96 + Top = 52 + Width = 100 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 0 + Visible = False + end + object defstr2: TComboBox + Left = 472 + Top = 52 + Width = 101 + Height = 20 + Style = csDropDownList + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Pitch = fpFixed + Font.Style = [] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ItemHeight = 12 + ItemIndex = 0 + ParentFont = False + TabOrder = 2 + Visible = False + Items.Strings = ( + '' + #24555#20214 + #24930#20214) + end + object packNo: TcxCurrencyEdit + Left = 262 + Top = 52 + Properties.DecimalPlaces = 0 + Properties.DisplayFormat = '0' + TabOrder = 3 + Visible = False + Width = 100 + end + object SmNO: TEdit + Left = 144 + Top = 10 + Width = 165 + Height = 32 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ParentFont = False + TabOrder = 1 + OnKeyPress = SmNOKeyPress + end + object baoNo: TEdit + Left = 523 + Top = 10 + Width = 66 + Height = 32 + Hint = 'baoNo' + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ParentFont = False + TabOrder = 4 + OnClick = baoNoClick + end + object BaoID: TEdit + Left = 618 + Top = 58 + Width = 170 + Height = 32 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ParentFont = False + TabOrder = 5 + OnClick = baoNoClick + end + object FileName: TcxButton + Left = 1184 + Top = 8 + Width = 77 + Height = 33 + Hint = 'Filesother' + Caption = #25171#21360#21367#26631#31614 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + OnClick = FileNameClick + LookAndFeel.Kind = lfOffice11 + end + object cxButton1: TcxButton + Left = 1268 + Top = 8 + Width = 77 + Height = 33 + Hint = 'Filesother' + Caption = #20851#38381 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + OnClick = cxButton1Click + LookAndFeel.Kind = lfOffice11 + end + object ComboBox1: TComboBox + Left = 1104 + Top = 4 + Width = 49 + Height = 40 + Style = csDropDownList + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = 'Times New Roman' + Font.Style = [fsBold] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ItemHeight = 32 + ItemIndex = 0 + ParentFont = False + TabOrder = 8 + Text = '1' + Items.Strings = ( + '1' + '2' + '3' + '4') + end + object cxButton2: TcxButton + Left = 672 + Top = 8 + Width = 77 + Height = 33 + Hint = 'Filesother' + Caption = #20445#23384 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + OnClick = cxButton2Click + LookAndFeel.Kind = lfOffice11 + end + object cxButton3: TcxButton + Left = 796 + Top = 8 + Width = 77 + Height = 33 + Hint = 'Filesother' + Caption = #21024#38500 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + OnClick = cxButton3Click + LookAndFeel.Kind = lfOffice11 + end + end + object Panel2: TPanel + Left = 184 + Top = 233 + Width = 1262 + Height = 464 + Caption = 'Panel2' + TabOrder = 2 + object cxGrid2: TcxGrid + Left = 1 + Top = 1 + Width = 1260 + Height = 462 + Align = alClient + TabOrder = 0 + object TV2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCustomDrawCell = TV2CustomDrawCell + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + Column = cxGridDBColumn6 + end + item + Kind = skSum + end + item + Kind = skSum + Column = V2Column2 + end + item + Kind = skSum + Column = V2Column3 + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_TradeManage.Default + object V2Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'Ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 60 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #25195#25551#20449#24687 + DataBinding.FieldName = 'SDefNote' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 157 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #26465#30721#21495 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 113 + end + object V2OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 116 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 107 + end + object V2MJstr4: TcxGridDBColumn + Caption = #21407#32568#21495 + DataBinding.FieldName = 'MJstr4' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object V2Column1: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'BCGangNO' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 120 + end + object cxGridDBColumn7: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'MJType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 105 + end + object V2BaoID: TcxGridDBColumn + Caption = #21253#26465#30721 + DataBinding.FieldName = 'BaoID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 102 + end + object V2BaoNO: TcxGridDBColumn + Caption = #21253#21495 + DataBinding.FieldName = 'BaoNO' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 51 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'SOrdQty1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'MJLen' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + object V2Column2: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'MJMaoZ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + object V2Column3: TcxGridDBColumn + Caption = #20928#37325 + DataBinding.FieldName = 'MJQty4' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + end + object Panel3: TPanel + Left = 1027 + Top = 423 + Width = 290 + Height = 286 + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 4 + Visible = False + object SpeedButton1: TSpeedButton + Left = 4 + Top = 211 + Width = 140 + Height = 70 + Caption = '0' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton2: TSpeedButton + Left = 4 + Top = 143 + Width = 70 + Height = 70 + Caption = '1' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton3: TSpeedButton + Left = 74 + Top = 143 + Width = 70 + Height = 70 + Caption = '2' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton4: TSpeedButton + Left = 144 + Top = 143 + Width = 70 + Height = 70 + Caption = '3' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton5: TSpeedButton + Left = 4 + Top = 73 + Width = 70 + Height = 70 + Caption = '4' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton6: TSpeedButton + Left = 74 + Top = 73 + Width = 70 + Height = 70 + Caption = '5' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton7: TSpeedButton + Left = 144 + Top = 73 + Width = 70 + Height = 70 + Caption = '6' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton8: TSpeedButton + Left = 4 + Top = 3 + Width = 70 + Height = 70 + Caption = '7' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton9: TSpeedButton + Left = 74 + Top = 2 + Width = 70 + Height = 70 + Caption = '8' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton10: TSpeedButton + Left = 144 + Top = 2 + Width = 70 + Height = 70 + Caption = '9' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton11: TSpeedButton + Tag = 9 + Left = 144 + Top = 213 + Width = 70 + Height = 68 + Caption = '.' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton12: TSpeedButton + Left = 214 + Top = 2 + Width = 70 + Height = 70 + Caption = #8592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton12Click + end + object SpeedButton49: TSpeedButton + Tag = 9 + Left = 214 + Top = 73 + Width = 70 + Height = 208 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton49Click + end + end + object Panel4: TPanel + Left = 0 + Top = 81 + Width = 149 + Height = 616 + Align = alLeft + BevelInner = bvRaised + BevelOuter = bvLowered + Caption = 'Panel4' + TabOrder = 5 + Visible = False + object cxGrid3: TcxGrid + Left = 2 + Top = 57 + Width = 145 + Height = 557 + Align = alClient + TabOrder = 0 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DSTm + 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 + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + OptionsView.IndicatorWidth = 20 + Styles.Header = DataLink_TradeManage.Default + object Tv3Column1: TcxGridDBColumn + Caption = #26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Width = 80 + end + object v3Column1: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v3Column2: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v3Column3: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'MJlen' + HeaderAlignmentHorz = taCenter + Width = 80 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + object Panel5: TPanel + Left = 2 + Top = 2 + Width = 145 + Height = 55 + Align = alTop + BevelOuter = bvNone + TabOrder = 1 + object Label6: TLabel + Left = 32 + Top = 21 + Width = 45 + Height = 14 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BtnEditA1: TBtnEditA + Left = 80 + Top = 17 + Width = 153 + Height = 22 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnBtnClick = BtnEditA1BtnClick + end + end + end + object MovePanel1: TMovePanel + Left = 430 + Top = 156 + Width = 801 + Height = 353 + BevelInner = bvLowered + Color = clSkyBlue + TabOrder = 3 + Visible = False + object Label2: TLabel + Left = 244 + Top = 164 + Width = 198 + Height = 64 + Caption = 'Label2' + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -64 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Edit2: TEdit + Left = 177 + Top = 43 + Width = 412 + Height = 72 + Enabled = False + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -64 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ParentFont = False + ReadOnly = True + TabOrder = 0 + Text = '91209120001' + end + object Button4: TButton + Left = 296 + Top = 272 + Width = 75 + Height = 41 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button4Click + end + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 552 + Top = 136 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 500 + Top = 232 + end + object CDSMJID: TClientDataSet + Aggregates = <> + Params = <> + Left = 732 + Top = 212 + end + object DataSource2: TDataSource + DataSet = CDSMJID + Left = 836 + Top = 248 + end + object ADOQueryTmp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 388 + Top = 324 + end + object cxStyleRepository1: TcxStyleRepository + Left = 241 + Top = 142 + object cxStyle1: TcxStyle + AssignedValues = [svColor, svFont] + Color = clInactiveCaption + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle2: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = 4707838 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBtnText + end + object cxStyle_gridRow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16311512 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridFoot: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridHead: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridGroupBox: TcxStyle + AssignedValues = [svColor, svFont] + Color = clMoneyGreen + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_yellow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_fontBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_fontclFuchsia: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clFuchsia + end + object cxStyle_fontclPurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clPurple + end + object cxStyle_fontclGreen: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clGreen + end + object cxStyle_fontclBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object cxStyle_fontclTeal: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clTeal + end + object cxStyle_fontclOlive: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 252 + Top = 428 + end + object DataSource1: TDataSource + DataSet = ADOQuery1 + Left = 312 + Top = 464 + end + object ADOQueryTm: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 152 + Top = 192 + end + object DSTm: TDataSource + DataSet = ADOQueryTm + Left = 88 + Top = 216 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 576 + Top = 256 + end + object RM2: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 424 + Top = 256 + ReportData = {} + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 652 + Top = 232 + end + object CDSTM: TClientDataSet + Aggregates = <> + Params = <> + Left = 212 + Top = 221 + end +end diff --git a/艾登贸易管理/U_CPGangNo.pas b/艾登贸易管理/U_CPGangNo.pas new file mode 100644 index 0000000..f7c1023 --- /dev/null +++ b/艾登贸易管理/U_CPGangNo.pas @@ -0,0 +1,746 @@ +unit U_CPGangNo; + +interface + +uses + Windows, Messages, strutils,SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, StdCtrls, cxContainer, cxTextEdit, + cxCurrencyEdit, BtnEdit, ExtCtrls, ComCtrls, ToolWin, DBClient, ADODB, + MovePanel, Buttons, Menus, cxLookAndFeelPainters, cxButtons, RM_Common, + RM_Class, RM_GridReport, RM_System, RM_Dataset, cxCheckBox; + +type + TfrmCPGangNo = class(TForm) + ToolBar1: TToolBar; + TBClose: TToolButton; + Panel1: TPanel; + PHYG: TBtnEditA; + defstr2: TComboBox; + Label16: TLabel; + Label15: TLabel; + packNo: TcxCurrencyEdit; + Label14: TLabel; + Label1: TLabel; + Panel2: TPanel; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridDBColumn7: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ADOQueryMain: TADOQuery; + ADOQueryCmd: TADOQuery; + CDSMJID: TClientDataSet; + DataSource2: TDataSource; + SmNO: TEdit; + ADOQueryTmp: TADOQuery; + V2Column1: TcxGridDBColumn; + MovePanel1: TMovePanel; + Edit2: TEdit; + Button4: TButton; + Label2: TLabel; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxStyle_gridRow: TcxStyle; + cxStyle_gridFoot: TcxStyle; + cxStyle_gridHead: TcxStyle; + cxStyle_gridGroupBox: TcxStyle; + cxStyle_yellow: TcxStyle; + cxStyle_Red: TcxStyle; + cxStyle_fontBlack: TcxStyle; + cxStyle_fontclFuchsia: TcxStyle; + cxStyle_fontclPurple: TcxStyle; + cxStyle_fontclGreen: TcxStyle; + cxStyle_fontclBlue: TcxStyle; + cxStyle_fontclTeal: TcxStyle; + cxStyle_fontclOlive: TcxStyle; + ADOQuery1: TADOQuery; + DataSource1: TDataSource; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridLevel2: TcxGridLevel; + Tv3Column1: TcxGridDBColumn; + ADOQueryTm: TADOQuery; + DSTm: TDataSource; + baoNo: TEdit; + BaoID: TEdit; + Label3: TLabel; + Label4: TLabel; + V2BaoNO: TcxGridDBColumn; + V2BaoID: TcxGridDBColumn; + Panel3: TPanel; + SpeedButton1: TSpeedButton; + SpeedButton2: TSpeedButton; + SpeedButton3: TSpeedButton; + SpeedButton4: TSpeedButton; + SpeedButton5: TSpeedButton; + SpeedButton6: TSpeedButton; + SpeedButton7: TSpeedButton; + SpeedButton8: TSpeedButton; + SpeedButton9: TSpeedButton; + SpeedButton10: TSpeedButton; + SpeedButton11: TSpeedButton; + SpeedButton12: TSpeedButton; + SpeedButton49: TSpeedButton; + FileName: TcxButton; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + cxButton1: TcxButton; + ComboBox1: TComboBox; + Label34: TLabel; + V2Column2: TcxGridDBColumn; + V2Column3: TcxGridDBColumn; + Panel4: TPanel; + ADOQueryPrint: TADOQuery; + Label6: TLabel; + BtnEditA1: TBtnEditA; + v3Column1: TcxGridDBColumn; + v3Column2: TcxGridDBColumn; + v3Column3: TcxGridDBColumn; + CDSTM: TClientDataSet; + Panel5: TPanel; + V2MJstr4: TcxGridDBColumn; + V2OrderNo: TcxGridDBColumn; + V2Column4: TcxGridDBColumn; + cxButton2: TcxButton; + cxButton3: TcxButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + + procedure FormCreate(Sender: TObject); + procedure SmNOKeyPress(Sender: TObject; var Key: Char); + procedure FormShow(Sender: TObject); + procedure TV2CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure kcKwBtnClick(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure baoNoClick(Sender: TObject); + procedure SpeedButton1Click(Sender: TObject); + procedure SpeedButton12Click(Sender: TObject); + procedure SpeedButton49Click(Sender: TObject); + procedure FileNameClick(Sender: TObject); + procedure cxButton1Click(Sender: TObject); + procedure BtnEditA1BtnClick(Sender: TObject); + procedure cxButton3Click(Sender: TObject); + procedure cxButton2Click(Sender: TObject); + private + procedure InitGrid(); + procedure InitMJID(); + function SaveRK():Boolean; + Procedure QueryRk(); + Procedure QueryTM(); + { Private declarations } + public + { Public declarations } + end; + +var + frmCPGangNo: TfrmCPGangNo; + +implementation +uses + U_DataLink,U_Fun, U_ZDYHelp, U_OrderSelRK; +{$R *.dfm} +Procedure TfrmCPGangNo.QueryTm(); +var + FBaoID:string; +begin + with ADOQueryTM do + begin + close; + sql.Clear; + sql.Add('select A.*,B.PrtColor,C.MPrtCodeName'); + sql.Add('from WFB_MJJY A '); + sql.Add('inner join JYOrder_sub B on B.subID=A.subID '); + sql.Add('inner join JYOrder_main C on C.mainID=A.MainID '); + sql.Add('and A.mjstr2=''δ'' and isnull(A.BaoID,'''')='''' and C.orderNo='+quotedstr(trim(BtnEditA1.Text))); + open; + end; + SCreateCDS20(ADOQueryTM,CDSTM); + SInitCDSData20(ADOQueryTM,CDSTM); + + IF not CDSTM.IsEmpty then + begin + with ADOQuery1 do + begin + close; + sql.clear; + sql.add('select isnull(max(cast(baoNo as int)),0)+1 as MaxBaoNo from WFB_MJJY '); + sql.Add('where mainID='+quotedstr(trim(CDSTM.fieldbyname('MainID').AsString))); + open; + end; + baoNo.text:=ADOQuery1.fieldbyname('MaxBaoNo').AsString; + if GetLSNo(ADOQueryTmp,FBaoID,'BI','WFB_MJJY',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + BaoID.Text:=trim(FBaoid); + end; +end; + +Procedure TfrmCPGangNo.QueryRk(); +begin + with ADOQuery1 do + begin + close; + sql.Clear; + sql.Add('select A.*,hC_ps=A.AordQty2,JY_ps=(select count(MainID) from WFB_MJJY X where X.APID=A.APID),'); + sql.Add('JY_Qty=(select sum(MJLen) from WFB_MJJY X where X.APID=A.APID), '); + sql.Add('RK_RollNum=(select sum(SOrdQty1) from CK_BanCP_CR X where X.APID=A.APID and X.CRType=''''),'); + sql.Add('RK_Qty=(select sum(MJLen) from CK_BanCP_CR X where X.APID=A.APID and X.CRType='''') '); + sql.Add('from JYOrder_sub_anPai A '); + SQL.Add('WHERE exists(select MJID from WFB_MJJY X where X.APID=A.APID and X.MJID='+quotedstr(trim(smNO.Text))); + sql.Add(')'); + open; + end; +end; + +function TfrmCPGangNo.SaveRK():Boolean; +var + maxno:String; + CRID:Integer; + MaxCkNo,MaxCkSubNo:String; + MhcTime:TdateTime; +begin + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + + try + {with ADOQueryTmp do + begin + Close; + sql.Clear; + SQL.add('Update CK_BanCP_CRID Set CRID=CRID+1'); + sql.Add('select * from CK_BanCP_CRID'); + Open; + end; + CRID:=ADOQueryTmp.fieldbyname('CRID').AsInteger; + if GetLSNo(ADOQueryTmp,MaxCkNo,'JR','CK_BanCP_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡƷֿʧܣ','ʾ',0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where 1<>1'); + Open; + end; + mhcTime:=SGetServerDateTime(ADOQueryTmp); + + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(ADOQueryMain.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(ADOQueryMain.fieldbyname('SubId').AsString); + FieldByName('C_Code').Value:=Trim(ADOQueryMain.fieldbyname('PRTCode').AsString); + FieldByName('C_CodeName').Value:=Trim(ADOQueryMain.fieldbyname('PRTCodeName').AsString); + //FieldByName('C_SPec').Value:=Trim(ADOQueryMain.fieldbyname('C_SPec').AsString); + FieldByName('C_Color').Value:=Trim(ADOQueryMain.fieldbyname('PRTColor').AsString); + FieldByName('APID').Value:=Trim(ADOQueryMain.fieldbyname('APID').AsString); + FieldByName('MJID').Value:=Trim(ADOQueryMain.fieldbyname('MJId').AsString); + FieldByName('mjxh').Value:=Trim(ADOQueryMain.fieldbyname('mjxh').AsString); + FieldByName('BaoNo').Value:=Trim(BaoNo.Text); + FieldByName('BaoID').Value:=Trim(BaoID.Text); + + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('CRTime').Value:=FormatDateTime('yyyy-MM-dd',mhcTime); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + FieldByName('CRID').Value:=CRID; + FieldByName('KGQty').Value:=0; + FieldByName('Qty').Value:=ADOQueryMain.fieldbyname('MJLen').Value; + FieldByName('RollNum').Value:=1; + FieldByName('QtyUnit').Value:=ADOQueryMain.fieldbyname('MJTypeOther').Value; + FieldByName('CPType').Value:=ADOQueryMain.fieldbyname('MJType').Value; + //FieldByName('Note').Value:=ADOQueryMain.fieldbyname('Note').Value; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTmp); + //fieldbyname('kcKw').Value:=GetKw(ADOQueryTmp,ADOQueryMain.fieldbyname('PRTCodeName').AsString,ADOQueryMain.fieldbyname('PRTColor').AsString); + Post; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=CRID; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('CRTime').Value:=FormatDateTime('yyyy-MM-dd',mhcTime); + FieldByName('CRType').Value:=''; + FieldByName('CPType').Value:=ADOQueryMain.fieldbyname('MJType').Value; + FieldByName('C_Code').Value:=Trim(ADOQueryMain.fieldbyname('PRTCode').AsString); + FieldByName('C_CodeName').Value:=Trim(ADOQueryMain.fieldbyname('PRTCodeName').AsString); + //FieldByName('C_SPec').Value:=Trim(ADOQueryMain.fieldbyname('C_SPec').AsString); + FieldByName('C_Color').Value:=Trim(ADOQueryMain.fieldbyname('PRTColor').AsString); + FieldByName('BaoNo').Value:=Trim(BaoNo.Text); + FieldByName('BaoID').Value:=Trim(BaoID.Text); + FieldByName('MJID').Value:=Trim(ADOQueryMain.fieldbyname('MJID').AsString); + FieldByName('KCKGQty').Value:=0; + FieldByName('KCQty').Value:=ADOQueryMain.fieldbyname('MJlen').Value; + FieldByName('RollNum').Value:=1; + FieldByName('KCQtyUnit').Value:=ADOQueryMain.fieldbyname('MJTypeOther').Value; + FieldByName('mjxh').Value:=Trim(ADOQueryMain.fieldbyname('mjxh').AsString); + //FieldByName('KCNote').Value:=ADOQueryMain.fieldbyname('Note').Value; + //fieldbyname('kcKw').Value:=GetKw(ADOQueryTmp,ADOQueryMain.fieldbyname('PRTCodeName').AsString,ADOQueryMain.fieldbyname('PRTColor').AsString); + Post; + end; } + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set BaoNo='''+trim(BaoNo.Text)+''',BaoID='''+trim(Baoid.text)+''' where MJID='''+Trim(ADOQueryMain.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=true; + except + ADOQueryCmd.Connection.RollbackTrans; + end; +end; + +procedure TfrmCPGangNo.InitGrid(); +begin + with ADOQueryMain do + begin + Close; + sql.Clear; + SQL.Add('select A.*,B.*,C.MprtCodeName from WFB_MJJY A '); + sql.add('inner join JYOrder_Sub B on B.SubId=A.SubId'); + sql.add('inner join JYOrder_Main C on C.maiNID=A.mainID'); + SQL.Add('where 1=2 '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDSMJID); + SInitCDSData20(ADOQueryMain,CDSMJID); +end; + +procedure TfrmCPGangNo.InitMJID(); +begin + MovePanel1.Visible:=false; + with ADOQueryMain do + begin + Close; + sql.Clear; + SQL.Add('select A.*,B.*,C.MprtCodeName,C.OrderNo as OrderNoM from WFB_MJJY A '); + sql.add('inner join JYOrder_Sub B on B.SubId=A.SubId'); + sql.add('inner join JYOrder_Main C on C.maiNID=A.mainID'); + sql.Add('where MJID='+quotedstr(trim(SmNO.Text))); + Open; + if not IsEmpty then + begin + IF not CDSMJID.IsEmpty then + begin + IF not CDSMJID.Locate('OrderNo',trim(ADOQueryMain.fieldbyname('OrderNoM').AsString),[]) then + begin + MovePanel1.Visible:=true; + Edit2.Text:=SmNO.Text; + Label2.Caption:='Ųͬ'; + exit; + end; + end; + IF trim(Fieldbyname('MJstr2').AsString)='' then + begin + CDSMJID.Append; + CDSMJID.FieldByName('SDefNote').Value:=''; + CDSMJID.FieldByName('MJID').Value:=trim(SmNO.Text); + CDSMJID.Post; + end + else + IF trim(Fieldbyname('MJstr2').AsString)='ѳ' then + begin + CDSMJID.Append; + CDSMJID.FieldByName('SDefNote').Value:='ѳ'; + CDSMJID.FieldByName('MJID').Value:=trim(SmNO.Text); + CDSMJID.Post; + end + else + begin + IF CDSMJID.Locate('MJID',trim(ADOQueryMain.Fieldbyname('MJID').AsString),[]) then + begin + CDSMJID.Append; + CDSMJID.FieldByName('SDefNote').Value:='ɨ'; + CDSMJID.FieldByName('MJID').Value:=trim(SmNO.Text); + CDSMJID.Post; + end + else + begin + CDSMJID.Append; + CDSMJID.FieldByName('SDefNote').Value:='ɨɹ'; + CDSMJID.FieldByName('MJID').Value:=trim(ADOQueryMain.Fieldbyname('MJID').AsString); +// CDSMJID.FieldByName('CRID').Value:=trim(ADOQueryMain.Fieldbyname('CRID').AsString); + CDSMJID.FieldByName('orderNo').Value:=trim(ADOQueryMain.Fieldbyname('OrderNoM').AsString); + CDSMJID.FieldByName('PRTCodeName').Value:=trim(ADOQueryMain.Fieldbyname('PRTCodeName').AsString); + CDSMJID.FieldByName('MPRTCodeName').Value:=trim(ADOQueryMain.Fieldbyname('MPRTCodeName').AsString); + CDSMJID.FieldByName('PRTColor').Value:=trim(ADOQueryMain.Fieldbyname('PRTColor').AsString); + CDSMJID.FieldByName('MJType').Value:=trim(ADOQueryMain.Fieldbyname('MJType').AsString); + CDSMJID.FieldByName('Mjstr4').Value:=trim(ADOQueryMain.Fieldbyname('Mjstr4').AsString); + // CDSMJID.FieldByName('BaoNo').Value:=trim(BaoNo.Text); + // CDSMJID.FieldByName('BaoID').Value:=trim(BaoID.Text); + CDSMJID.FieldByName('SOrdQty1').Value:=1; + CDSMJID.FieldByName('MJLen').Value:=ADOQueryMain.Fieldbyname('MJLen').AsFloat; + CDSMJID.FieldByName('MJMaoZ').Value:=ADOQueryMain.Fieldbyname('MJMaoZ').AsFloat; + CDSMJID.FieldByName('MJQty3').Value:=ADOQueryMain.Fieldbyname('MJQty3').AsFloat; + CDSMJID.FieldByName('MJQty4').Value:=ADOQueryMain.Fieldbyname('MJQty4').AsFloat; + CDSMJID.FieldByName('MJTypeOther').Value:=trim(ADOQueryMain.Fieldbyname('MJTypeOther').AsString); + CDSMJID.FieldByName('mainID').Value:=trim(ADOQueryMain.Fieldbyname('mainID').AsString); + CDSMJID.FieldByName('subID').Value:=trim(ADOQueryMain.Fieldbyname('subID').AsString); + CDSMJID.Post; + end; + { IF saveRk() then + begin + CDSMJID.Append; + CDSMJID.FieldByName('SDefNote').Value:='ɹ'; + CDSMJID.FieldByName('MJID').Value:=trim(ADOQueryMain.Fieldbyname('MJID').AsString); +// CDSMJID.FieldByName('CRID').Value:=trim(ADOQueryMain.Fieldbyname('CRID').AsString); + CDSMJID.FieldByName('PRTCodeName').Value:=trim(ADOQueryMain.Fieldbyname('PRTCodeName').AsString); + CDSMJID.FieldByName('MPRTCodeName').Value:=trim(ADOQueryMain.Fieldbyname('MPRTCodeName').AsString); + CDSMJID.FieldByName('PRTColor').Value:=trim(ADOQueryMain.Fieldbyname('PRTColor').AsString); + CDSMJID.FieldByName('MJType').Value:=trim(ADOQueryMain.Fieldbyname('MJType').AsString); + CDSMJID.FieldByName('BaoNo').Value:=trim(BaoNo.Text); + CDSMJID.FieldByName('BaoID').Value:=trim(BaoID.Text); + CDSMJID.FieldByName('SOrdQty1').Value:=1; + CDSMJID.FieldByName('MJLen').Value:=ADOQueryMain.Fieldbyname('MJLen').AsFloat; + CDSMJID.FieldByName('MJMaoZ').Value:=ADOQueryMain.Fieldbyname('MJMaoZ').AsFloat; + CDSMJID.FieldByName('MJQty3').Value:=ADOQueryMain.Fieldbyname('MJQty3').AsFloat; + CDSMJID.FieldByName('MJQty4').Value:=ADOQueryMain.Fieldbyname('MJQty4').AsFloat; + CDSMJID.FieldByName('MJTypeOther').Value:=trim(ADOQueryMain.Fieldbyname('MJTypeOther').AsString); + CDSMJID.FieldByName('mainID').Value:=trim(ADOQueryMain.Fieldbyname('mainID').AsString); + CDSMJID.FieldByName('subID').Value:=trim(ADOQueryMain.Fieldbyname('subID').AsString); + CDSMJID.Post; + //QueryRk(); + QueryTm(); + end + else + begin + CDSMJID.Append; + CDSMJID.FieldByName('SDefNote').Value:='ʧ'; + CDSMJID.FieldByName('MJID').Value:=trim(SmNO.Text); + CDSMJID.Post; + end; } + end; + end + else + begin + CDSMJID.Append; + CDSMJID.FieldByName('SDefNote').Value:='벻'; + CDSMJID.FieldByName('MJID').Value:=trim(SmNO.Text); + CDSMJID.Post; + end; + end; + IF trim(CDSMJID.FieldByName('SDefNote').AsString)<>'ɨɹ' then + begin + MovePanel1.Visible:=true; + Edit2.Text:=SmNO.Text; + Label2.Caption:=trim(CDSMJID.FieldByName('SDefNote').AsString); + CDSMJID.Delete; + end; +end; + +procedure TfrmCPGangNo.FormDestroy(Sender: TObject); +begin + frmCPGangNo:=nil; +end; + +procedure TfrmCPGangNo.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + //writeCxGrid(self.Caption+tv1.Name,Tv1,'Ʒֿ'); + writeCxGrid(self.Caption+Tv2.Name,Tv2,'Ʒֿ'); + writeCxGrid(self.Caption+Tv3.Name,Tv3,'Ʒֿ'); + Action:=cafree; +end; + +procedure TfrmCPGangNo.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmCPGangNo.FormCreate(Sender: TObject); +begin + Panel2.Align:=alClient; + //readCxGrid(self.Caption+tv1.Name,Tv1,'Ʒֿ'); + readCxGrid(self.Caption+Tv2.Name,Tv2,'Ʒֿ'); + readCxGrid(self.Caption+Tv3.Name,Tv3,'Ʒֿ'); +end; + +procedure TfrmCPGangNo.SmNOKeyPress(Sender: TObject; var Key: Char); +begin + IF key=#13 then + begin + if trim(smno.Text)='' then exit; + initMJID(); + smno.Text:=''; + smno.SetFocus; + tv2.Controller.EditingController.ShowEdit(); + end; +end; + +procedure TfrmCPGangNo.FormShow(Sender: TObject); +begin + MovePanel1.Left:=(Width-MovePanel1.Width) div 2; + MovePanel1.top:=(Height-MovePanel1.Height-200) div 2; + InitGrid(); +end; + +procedure TfrmCPGangNo.TV2CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); +var + i:integer; +begin +{ i:=tv2.GetColumnByFieldName('SDefNote').Index; + if (AViewInfo.GridRecord.Values[i]<>'ɹ') then + ACanvas.Brush.Color:=clred; } +end; + +procedure TfrmCPGangNo.kcKwBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CPKWFlag'; + flagname:='λϢ'; + V1Name.Caption:='λ'; + V1Note.Caption:='Ӣ'; +// MainType:=Trim(DName); + fnote:=FALSE; + if ShowModal=1 then + begin + // kcKw.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmCPGangNo.Button4Click(Sender: TObject); +begin + MovePanel1.Visible:=False; + SmNO.SetFocus; +end; + +procedure TfrmCPGangNo.baoNoClick(Sender: TObject); +var + i:Integer; +begin +// Panel3.Visible:=True; + { with Panel3 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim(TEdit(Sender).Name); + end; + end; + end; } +end; + +procedure TfrmCPGangNo.SpeedButton1Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TSpeedButton(Sender).Hint); + if Trim(fsj)='' then Exit; + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=fsj+Trim(TSpeedButton(Sender).Caption); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; + +procedure TfrmCPGangNo.SpeedButton12Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + if Trim(fsj)='' then Exit; + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=Copy(fsj,1,Length(fsj)-1); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; +procedure TfrmCPGangNo.SpeedButton49Click(Sender: TObject); +var + FBaoID:string; +begin + IF trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Hint)<>'' then + begin + if GetLSNo(ADOQueryTmp,FBaoID,'BI','WFB_MJJY',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + BaoID.Text:=trim(FBaoid); + end; + Panel3.Visible:=False; +end; + +procedure TfrmCPGangNo.FileNameClick(Sender: TObject); +var + fPrintFile:string; + Txt,fImagePath:string; + Moudle: THandle; + Makebar:TMakebar; + Mixtext:TMixtext; +begin + if CDSMJID.IsEmpty then Exit; + if CDSMJID.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + CDSMJID.DisableControls; + with CDSMJID do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean=True then + begin + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add('select QtyUnit=A.MJTypeOther,B.orderNo,B.conNo,GangNo=D.AOrddefStr1,PRTColorEng=E.Note,B.LBName '); + sql.Add(',khConNo=(select top 1 khConNo from JYOrderCon_Main X where X.ConNO=B.conNO) '); + sql.Add(',MPRTCodeNameEng=ISNULL((select Top 1 F.note from KH_Zdy F where F.zdyname=B.MPRTCodeName and F.Type=''PRTCodeName''),B.MPRTCodeName)'); + sql.Add(',B.MPRTCF,B.MPRTMF,B.MPRTKZ,C.SOrddefstr4,B.MPRTCodeName,B.MPRTSpec,B.MPRTKuanNO,C.*,A.* '); + sql.Add(',Case when A.MJSJKZ*A.MJFK<>0 then Cast(A.MJQty4*1000/A.MJSJKZ/(A.MJFK/100) as int) else 0 end as MQty'); + sql.Add(' from WFB_MJJY A') ; + sql.Add(' inner join JYOrder_Main B On A.Mainid=B.Mainid'); + sql.Add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); + sql.Add(' left join KH_Zdy E on C.PRTColor=E.ZdyName and E.Type=''OrdColor'' '); + sql.Add(' inner join JYOrder_Sub_AnPai D on A.APId=D.APId '); + SQL.Add(' where A.MJID='''+Trim(CDSMJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + try + Moudle:=LoadLibrary('MakeQRBarcode.dll'); + @Makebar:=GetProcAddress(Moudle,'Make'); + @Mixtext:=GetProcAddress(Moudle,'MixText'); + Txt:=Trim(ADOQueryPrint.fieldbyname('MJID').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); + exit; + end; + if Trim(ADOQueryPrint.fieldbyname('LbName').AsString)<>'' then + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\'+Trim(ADOQueryPrint.fieldbyname('LbName').AsString)+'.rmf' + else + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ͨӢıǩ.rmf' ; + if FileExists(fPrintFile) then + begin + RMVariables['QRBARCODE']:=fImagePath; + RM2.LoadFromFile(fPrintFile); + RM2.ShowReport; + // RM2.PrintReport; + end else + begin + CDSMJID.EnableControls; + Application.MessageBox(PChar('û'+fPrintFile),'ʾ',0); + Exit; + end; + end; + Next; + end; + end; + CDSMJID.EnableControls; +end; + +procedure TfrmCPGangNo.cxButton1Click(Sender: TObject); +begin + TBClose.Click; +end; + +procedure TfrmCPGangNo.BtnEditA1BtnClick(Sender: TObject); +begin + frmOrderSelRK:=TfrmOrderSelRK.Create(Application); + with frmOrderSelRK do + begin + if ShowModal=1 then + begin + CDS_OrderSel.DisableControls; + with CDS_OrderSel do + begin + First; + while not Eof do + begin + if FieldByName('SSel').Value=True then + begin + BtnEditA1.Text:=trim(CDS_OrderSel.fieldbyname('OrderNo').asstring); + end; + Next; + end; + end; + CDS_OrderSel.EnableControls; + end; + end; + QueryTm(); +end; + +procedure TfrmCPGangNo.cxButton3Click(Sender: TObject); +begin + IF CDSMJID.IsEmpty then exit; + CDSMJID.Delete; +end; + +procedure TfrmCPGangNo.cxButton2Click(Sender: TObject); +begin + IF CDSMJID.IsEmpty then exit; + ADOQueryCmd.Connection.BeginTrans; + try + with CDSMJID do + begin + DisableControls; + first; + while not eof do + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set MJstr4='''+trim(BaoNo.Text)+''' where MJID='''+Trim(CDSMJID.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + edit; + fieldbyname('MJstr4').Value:=trim(BaoNo.Text); + post; + next; + end; + EnableControls; + end; + ADOQueryCmd.Connection.CommitTrans; + application.MessageBox('޸ijɹ','ʾϢ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('޸ʧܣ','ʾϢ',0); + end; +end; + +end. diff --git a/艾登贸易管理/U_ClothContractInPut.dfm b/艾登贸易管理/U_ClothContractInPut.dfm new file mode 100644 index 0000000..a8301e8 --- /dev/null +++ b/艾登贸易管理/U_ClothContractInPut.dfm @@ -0,0 +1,653 @@ +object frmClothContractInPut: TfrmClothContractInPut + Left = 132 + Top = 120 + Width = 864 + Height = 625 + Caption = #22383#24067#35746#36141#21512#21516#24405#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 856 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 29 + Width = 856 + Height = 241 + Align = alTop + BevelInner = bvNone + BevelOuter = bvNone + Ctl3D = False + ParentCtl3D = False + TabOrder = 1 + object Label1: TLabel + Left = 24 + Top = 14 + Width = 65 + Height = 12 + Caption = #21512#21516#32534#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 295 + Top = 14 + Width = 67 + Height = 12 + Caption = #20379' '#26041#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 546 + Top = 14 + Width = 67 + Height = 12 + Caption = #38656' '#26041#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 546 + Top = 45 + Width = 65 + Height = 12 + Caption = #20132#36135#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 24 + Top = 45 + Width = 65 + Height = 12 + Caption = #31614#35746#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 295 + Top = 45 + Width = 65 + Height = 12 + Caption = #31614#35746#22320#28857#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 298 + Top = 89 + Width = 65 + Height = 12 + Caption = #20132#36135#22320#28857#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 24 + Top = 77 + Width = 65 + Height = 36 + Caption = #20379#36135#36136#37327#13#10' '#21450#13#10#25216#26415#26631#20934#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 544 + Top = 77 + Width = 65 + Height = 36 + Caption = #36816#36755#26041#24335#13#10' '#21450#13#10#36153#29992#25215#25285#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 24 + Top = 137 + Width = 65 + Height = 12 + Caption = #21253#35013#35201#27714#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 298 + Top = 137 + Width = 65 + Height = 12 + Caption = #32467#31639#26041#24335#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 24 + Top = 177 + Width = 195 + Height = 12 + Caption = #39564#25910#26631#20934#12289#26041#27861#21450#25552#20986#24322#35758#26399#38480#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 24 + Top = 209 + Width = 91 + Height = 12 + Caption = #20854#23427#32422#23450#20107#39033#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object ConNo: TEdit + Left = 86 + Top = 11 + Width = 181 + Height = 18 + TabOrder = 0 + OnKeyPress = ConNoKeyPress + end + object FactoryNoName: TcxButtonEdit + Left = 359 + Top = 10 + Hint = 'FactoryNo' + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = FactoryNoNamePropertiesButtonClick + Properties.OnChange = FactoryNoNamePropertiesChange + TabOrder = 1 + OnKeyDown = PRTCodeNameKeyDown + Width = 162 + end + object PanZDY: TPanel + Left = 841 + Top = 128 + Width = 202 + Height = 153 + TabOrder = 2 + Visible = False + object CXGridZDY: TcxGrid + Left = 3 + Top = 4 + Width = 197 + Height = 113 + TabOrder = 0 + object TVZDY: TcxGridDBTableView + OnKeyPress = TVZDYKeyPress + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TVZDYCellDblClick + DataController.DataSource = DataSource2 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + object VHelpZDYName: TcxGridDBColumn + DataBinding.FieldName = 'ZDYName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.handBlack + Width = 163 + IsCaptionAssigned = True + end + end + object CXGridZDYLevel1: TcxGridLevel + GridView = TVZDY + end + end + object Button1: TButton + Left = 64 + Top = 120 + Width = 65 + Height = 25 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button1Click + end + end + object CompanyName: TcxButtonEdit + Left = 609 + Top = 10 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = CompanyNamePropertiesButtonClick + TabOrder = 3 + OnKeyDown = PRTCodeNameKeyDown + Width = 175 + end + object DeliveryDate: TDateTimePicker + Left = 609 + Top = 41 + Width = 177 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 4 + end + object QDTime: TDateTimePicker + Left = 86 + Top = 41 + Width = 183 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 5 + end + object QDPalce: TEdit + Left = 359 + Top = 42 + Width = 161 + Height = 18 + TabOrder = 6 + end + object JHPlace: TcxButtonEdit + Left = 361 + Top = 85 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = JHPlacePropertiesButtonClick + TabOrder = 7 + Width = 162 + end + object ConTK1: TcxButtonEdit + Left = 86 + Top = 85 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + TabOrder = 8 + Width = 183 + end + object ConTk2: TcxButtonEdit + Left = 609 + Top = 85 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + TabOrder = 9 + Width = 179 + end + object ConTK3: TcxButtonEdit + Left = 86 + Top = 133 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + TabOrder = 10 + Width = 184 + end + object ConTK4: TcxButtonEdit + Left = 361 + Top = 133 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + TabOrder = 11 + Width = 162 + end + object ConTK5: TcxButtonEdit + Left = 216 + Top = 173 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + TabOrder = 12 + Width = 576 + end + object ConTk6: TcxButtonEdit + Left = 110 + Top = 205 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + TabOrder = 13 + Width = 683 + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 270 + Width = 856 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentFont = False + ShowCaptions = True + TabOrder = 2 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 299 + Width = 856 + Height = 289 + Align = alClient + TabOrder = 3 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1Column1 + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + object v1Column1: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 100 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 103 + end + object v1PRTColor: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'KZQty' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 78 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'MFQty' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 80 + end + object v1Price: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.handBlack + Width = 58 + end + object v1ClothQty: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v1ClothQtyPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 69 + end + object v1Column5: TcxGridDBColumn + Caption = #21305#25968#37327 + DataBinding.FieldName = 'Qty1' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 54 + end + object v1ClothUnit: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'C_Qty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.handBlack + Width = 69 + end + object v1Column2: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'C_Unit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 64 + end + object v1Column3: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'Qty1' + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 46 + end + object v1Column4: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'C_Note' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 85 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 816 + Top = 85 + end + object ADOCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 800 + Top = 109 + end + object DataSource1: TDataSource + DataSet = Order_Sub + Left = 344 + Top = 376 + end + object Order_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 384 + Top = 376 + end + object DataSource2: TDataSource + DataSet = ADOZDY + Left = 240 + Top = 8 + end + object ADOZDY: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 280 + Top = 5 + end + object CDS_ZDY: TClientDataSet + Aggregates = <> + Params = <> + Left = 208 + Top = 16 + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 792 + Top = 125 + end +end diff --git a/艾登贸易管理/U_ClothContractInPut.pas b/艾登贸易管理/U_ClothContractInPut.pas new file mode 100644 index 0000000..5faca51 --- /dev/null +++ b/艾登贸易管理/U_ClothContractInPut.pas @@ -0,0 +1,760 @@ +unit U_ClothContractInPut; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer, + cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB, + ExtCtrls, BtnEdit, cxDropDownEdit; + +type + TfrmClothContractInPut = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ScrollBox1: TScrollBox; + Label1: TLabel; + ConNo: TEdit; + Label5: TLabel; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1PRTSpec: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1PRTKZ: TcxGridDBColumn; + v1ClothQty: TcxGridDBColumn; + v1Price: TcxGridDBColumn; + v1ClothUnit: TcxGridDBColumn; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + DataSource1: TDataSource; + Order_Sub: TClientDataSet; + DataSource2: TDataSource; + ADOZDY: TADOQuery; + CDS_ZDY: TClientDataSet; + FactoryNoName: TcxButtonEdit; + ADOQuery1: TADOQuery; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + PanZDY: TPanel; + CXGridZDY: TcxGrid; + TVZDY: TcxGridDBTableView; + VHelpZDYName: TcxGridDBColumn; + CXGridZDYLevel1: TcxGridLevel; + Button1: TButton; + v1Column4: TcxGridDBColumn; + Label3: TLabel; + CompanyName: TcxButtonEdit; + v1Column5: TcxGridDBColumn; + Label4: TLabel; + Label2: TLabel; + Label6: TLabel; + Label8: TLabel; + DeliveryDate: TDateTimePicker; + QDTime: TDateTimePicker; + QDPalce: TEdit; + JHPlace: TcxButtonEdit; + Label7: TLabel; + ConTK1: TcxButtonEdit; + Label9: TLabel; + ConTk2: TcxButtonEdit; + Label10: TLabel; + ConTK3: TcxButtonEdit; + Label11: TLabel; + ConTK4: TcxButtonEdit; + Label12: TLabel; + ConTK5: TcxButtonEdit; + Label13: TLabel; + ConTk6: TcxButtonEdit; + procedure TBCloseClick(Sender: TObject); + procedure TVZDYCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button1Click(Sender: TObject); + procedure PRTCodeNameKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); + procedure TVZDYKeyPress(Sender: TObject; var Key: Char); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PRTUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNoNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PRTMFPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1OrderQtyPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1ClothQtyPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure FactoryNoNamePropertiesChange(Sender: TObject); + procedure CompanyNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure JHPlacePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + private + FXS:Integer; + procedure InitData(); + procedure ZDYHelp(FButn:TcxButtonEdit;LType:string); + function SaveData():Boolean; + { Private declarations } + public + PState:Integer; + FMainId,FConNo:String; + { Public declarations } + end; + +var + frmClothContractInPut: TfrmClothContractInPut; + +implementation +uses + U_DataLink,U_ZDYHelp,U_Fun; + +{$R *.dfm} + +procedure TfrmClothContractInPut.TBCloseClick(Sender: TObject); +begin + Close; +end; + +procedure TfrmClothContractInPut.InitData(); +begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add(' exec ClothContract_QryList :MainId,:WSql'); + if PState=1 then + begin + ADOQuery1.Parameters.ParamByName('MainId').Value:=Trim(FMainId); + ADOQuery1.Parameters.ParamByName('WSQl').Value:=''; + end; + if PState=0 then + begin + ADOQuery1.Parameters.ParamByName('MainId').Value:=Trim(FMainId); + ADOQuery1.Parameters.ParamByName('WSql').Value:=' and 1<>1 '; + end; + Open; + end; + SCreateCDS20(ADOQuery1,Order_Sub); + SInitCDSData20(ADOQuery1,Order_Sub); + SCSHData(ADOQuery1,ScrollBox1,0); + if PState=0 then + begin + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1* from Contract_Main order by FillTime desc '); + Open; + end; + QDTime.DateTime:=SGetServerDate(ADOTemp); + DeliveryDate.DateTime:=SGetServerDate(ADOTemp); + QDTime.Checked:=True; + DeliveryDate.Checked:=False; + end; + PanZDY.Visible:=False; +end; + +procedure TfrmClothContractInPut.ZDYHelp(FButn:TcxButtonEdit;LType:string); +var + FType,ZDYName,FText:String; +begin + PanZDY.Visible:=True; + PanZDY.Left:=FButn.Left; + PanZDY.Top:=FButn.Top+FButn.Height; + with ADOZDY do + begin + Filtered:=False; + Close; + SQL.Clear; + SQL.Add('select RTrim(ZDYNo) ZDYNo,RTrim(ZDYName) ZDYName from KH_ZDY where Type='''+Trim(LType)+''''); + Open; + end; + FText:=Trim(FButn.Text); + if FText<>'' then + SDofilter(ADOZDY,' ZDYName like '+QuotedStr('%'+Trim(FText)+'%')) + else + SDofilter(ADOZDY,''); + VHelpZDYName.Summary.GroupFormat:=Trim(FButn.Name); +end; + +procedure TfrmClothContractInPut.TVZDYCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + FName:string; +begin + if ADOZDY.IsEmpty then Exit; + FName:=Trim(VHelpZDYName.Summary.GroupFormat); + TcxButtonEdit(FindComponent(FName)).Text:=Trim(ADOZDY.fieldbyname('ZDYName').AsString); + TcxButtonEdit(FindComponent(FName)).Hint:=Trim(ADOZDY.fieldbyname('ZDYNO').AsString); + PanZDY.Visible:=False; +end; + +procedure TfrmClothContractInPut.Button1Click(Sender: TObject); +begin + PanZDY.Visible:=False; +end; + +procedure TfrmClothContractInPut.PRTCodeNameKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + {if (key=vk_return) or (Key=vk_Down) then + begin + if ADOZDY.Active then + CXGridZDY.SetFocus; + end; } +end; + +procedure TfrmClothContractInPut.TVZDYKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if ADOZDY.IsEmpty then Exit; + TcxButtonEdit(FindComponent(VHelpZDYName.Summary.GroupFormat)).Text:=Trim(ADOZDY.fieldbyname('ZDYName').AsString); + TcxButtonEdit(FindComponent(VHelpZDYName.Summary.GroupFormat)).Hint:=Trim(ADOZDY.fieldbyname('ZDYNO').AsString); + PanZDY.Visible:=False; + ADOZDY.Active:=False; + end; +end; + +procedure TfrmClothContractInPut.FormShow(Sender: TObject); +begin + {if Trim(DParameters1)='1' then + begin + v1Price.Visible:=False; + v1ClothQty.Visible:=False; + v1PRTQty.Visible:=False; + end else + begin + v1Price.Visible:=True; + v1ClothQty.Visible:=True; + v1PRTQty.Visible:=True; + end; } + InitData(); +end; + +function TfrmClothContractInPut.SaveData():Boolean; +var + maxno:String; +begin + try + ADOCmd.Connection.BeginTrans; + /// + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from Contract_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMainId)='' then + begin + Append; + if GetLSNo(ADOTemp,maxno,'CM','Contract_Main',2,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ˮ쳣','ʾ',0); + exit; + end; + end + else begin + maxno:=Trim(FMainId); + Edit; + end; + FieldByName('MainId').Value:=Trim(maxno); + SSetsaveSql(ADOCmd,'Contract_Main',ScrollBox1,0); + + if Trim(FMainId)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + Post; + end; + FMainId:=Trim(maxno); + ///ӱ + with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('C_Unit').AsString)='Kg' then + begin + if Trim(Order_Sub.fieldbyname('KZqty').AsString)='' then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('زΪ!','ʾ',0); + Exit; + end; + if Trim(Order_Sub.fieldbyname('MFqty').AsString)='' then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ŷΪ!','ʾ',0); + Exit; + end; + end; + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'CS','Contract_Sub',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from Contract_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add(' and SubId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,Tv1,Order_Sub,'Contract_Sub',0); + if Trim(Order_Sub.fieldbyname('C_Qty').AsString)='' then + begin + FieldByName('C_Qty').Value:=0; + end; + if Trim(Order_Sub.fieldbyname('Qty1').AsString)='' then + begin + FieldByName('Qty1').Value:=0; + end; + if Trim(Order_Sub.fieldbyname('Price').AsString)='' then + begin + FieldByName('Price').Value:=0; + end; + if Trim(Order_Sub.fieldbyname('C_Unit').AsString)='Kg' then + begin + FieldByName('MQty').Value:=Order_Sub.fieldbyname('C_Qty').Value*1.00*1000 + /(Order_Sub.fieldbyname('MFQty').Value*1.00/100*Order_Sub.fieldbyname('KZQty').Value); + end else + begin + FieldByName('MQty').Value:=Order_Sub.fieldbyname('C_Qty').Value; + end; + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TfrmClothContractInPut.TBSaveClick(Sender: TObject); +begin + DeliveryDate.SetFocus; + if Trim(ConNo.Text)='' then + begin + Application.MessageBox('ͬŲΪգ','ʾ',0); + Exit; + end; + if Trim(FactoryNoName.Text)='' then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + if Order_Sub.IsEmpty then + begin + Application.MessageBox('ϸΪգ','ʾ',0); + exit; + end; + if Order_Sub.Locate('C_Qty',null,[]) then + begin + Application.MessageBox('Ϊ!','ʾ',0); + Exit; + end; + if Order_Sub.Locate('C_Unit',null,[]) then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; + if Order_Sub.Locate('KZQty',null,[]) then + begin + Application.MessageBox('زΪ!','ʾ',0); + Exit; + end; + if Order_Sub.Locate('MFQty',null,[]) then + begin + Application.MessageBox('ŷΪ!','ʾ',0); + Exit; + end; + if PState=1 then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_DH where MainId='''+Trim(FMainId)+''''); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + if Trim(FConNo)<>Trim(ConNo.Text) then + begin + Application.MessageBox('Ѿ޸ĺͬ!','ʾ',0); + Exit; + end; + end; + end; + if SaveData() then + begin + Application.MessageBox('ɹ','ʾ',0); + end; +end; + +procedure TfrmClothContractInPut.v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('OrderUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPut.v1PRTUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PRTUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPut.v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdColor'; + flagname:='ɫ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PRTColor').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPut.ToolButton1Click(Sender: TObject); +begin + with Order_Sub do + begin + Append; + Post; + end; +end; + +procedure TfrmClothContractInPut.ToolButton2Click(Sender: TObject); +begin + if Order_Sub.IsEmpty then Exit; + if Trim(Order_Sub.fieldbyname('SubId').AsString)<>'' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub_MX where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + Application.MessageBox('ѵɾ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; + Order_Sub.Delete; +end; + +procedure TfrmClothContractInPut.FactoryNoNamePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + if Trim(FMainId)<>'' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR A where exists('); + sql.Add('select * from Contract_Sub_MX B inner join Contract_Sub C on B.SubId=C.SubId '); + sql.Add(' where C.Mainid='''+Trim(FMainId)+''''); + sql.Add(' and B.MXID=A.YFTypeId)'); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + Application.MessageBox('ѾӦ޸ĹӦ!','ʾ',0); + Exit; + end; + end; + + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:=''; + MainType:='PBFactory'; + if ShowModal=1 then + begin + FXS:=99; + FactoryNoName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + FactoryNoName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPut.v1Column1PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Cloth'; + flagname:=''; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('C_CodeName').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.Order_Sub.FieldByName('C_Code').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPut.v1PRTMFPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='KZ'; + flagname:='صλ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('KZUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPut.v1OrderQtyPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MF'; + flagname:='ŷλ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('MFUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPut.v1ClothQtyPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PriceUnit'; + flagname:='Ƽ۵λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PriceUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPut.v1Column2PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('C_Unit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPut.FactoryNoNamePropertiesChange( + Sender: TObject); +begin + {if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(FactoryNoName,'FactoryNo1Name'); } +end; + +procedure TfrmClothContractInPut.CompanyNamePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdDefStr2'; + flagname:='跽'; + if ShowModal=1 then + begin + FXS:=99; + CompanyName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPut.JHPlacePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='JHPlace'; + flagname:='ص'; + if ShowModal=1 then + begin + JHPlace.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPut.ConNoKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Trim(ConNo.Text)<>'' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrder_Main where OrderNo='''+Trim(ConNo.Text)+''''); + Open; + end; + FactoryNoName.Text:=Trim(ADOTemp.fieldbyname('YCLFactory').AsString); + end; + end; +end; + +end. diff --git a/艾登贸易管理/U_ClothContractInPutHZ.dfm b/艾登贸易管理/U_ClothContractInPutHZ.dfm new file mode 100644 index 0000000..cc858b8 --- /dev/null +++ b/艾登贸易管理/U_ClothContractInPutHZ.dfm @@ -0,0 +1,645 @@ +object frmClothContractInPutHZ: TfrmClothContractInPutHZ + Left = 198 + Top = 90 + Width = 831 + Height = 622 + Caption = #32433#32447#21152#24037#21512#21516#24405#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 815 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 29 + Width = 815 + Height = 220 + Align = alTop + BevelInner = bvNone + BevelOuter = bvNone + Ctl3D = False + ParentCtl3D = False + TabOrder = 1 + object Label1: TLabel + Left = 24 + Top = 14 + Width = 65 + Height = 12 + Caption = #21512#21516#32534#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 290 + Top = 46 + Width = 65 + Height = 12 + Caption = #20132#36135#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 511 + Top = 222 + Width = 67 + Height = 12 + Caption = #20379' '#26041#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label2: TLabel + Left = 552 + Top = 14 + Width = 65 + Height = 12 + Caption = #31614#35746#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 290 + Top = 14 + Width = 67 + Height = 12 + Caption = #38656' '#26041#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 24 + Top = 46 + Width = 65 + Height = 12 + Caption = #31614#35746#22320#28857#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 552 + Top = 42 + Width = 65 + Height = 12 + Caption = #20132#36135#22320#28857#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 24 + Top = 68 + Width = 65 + Height = 36 + Caption = #20379#36135#36136#37327#13#10' '#21450#13#10#25216#26415#26631#20934#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 552 + Top = 68 + Width = 65 + Height = 36 + Caption = #36816#36755#26041#24335#13#10' '#21450#13#10#36153#29992#25215#25285#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 24 + Top = 118 + Width = 65 + Height = 12 + Caption = #21253#35013#35201#27714#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 290 + Top = 80 + Width = 65 + Height = 12 + Caption = #32467#31639#26041#24335#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 24 + Top = 154 + Width = 195 + Height = 12 + Caption = #39564#25910#26631#20934#12289#26041#27861#21450#25552#20986#24322#35758#26399#38480#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 24 + Top = 190 + Width = 91 + Height = 12 + Caption = #20854#23427#32422#23450#20107#39033#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object ConNo: TEdit + Left = 86 + Top = 11 + Width = 180 + Height = 18 + TabOrder = 0 + OnKeyPress = ConNoKeyPress + end + object DeliveryDate: TDateTimePicker + Left = 353 + Top = 42 + Width = 177 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 1 + end + object FactoryNoName: TcxButtonEdit + Tag = 77 + Left = 575 + Top = 218 + Hint = 'FactoryNo' + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = FactoryNoNamePropertiesButtonClick + Properties.OnChange = FactoryNoNamePropertiesChange + TabOrder = 2 + Visible = False + OnKeyDown = PRTCodeNameKeyDown + Width = 162 + end + object PanZDY: TPanel + Left = 841 + Top = 128 + Width = 202 + Height = 153 + TabOrder = 3 + Visible = False + object CXGridZDY: TcxGrid + Left = 3 + Top = 4 + Width = 197 + Height = 113 + TabOrder = 0 + object TVZDY: TcxGridDBTableView + OnKeyPress = TVZDYKeyPress + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TVZDYCellDblClick + DataController.DataSource = DataSource2 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + object VHelpZDYName: TcxGridDBColumn + DataBinding.FieldName = 'ZDYName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.handBlack + Width = 163 + IsCaptionAssigned = True + end + end + object CXGridZDYLevel1: TcxGridLevel + GridView = TVZDY + end + end + object Button1: TButton + Left = 64 + Top = 120 + Width = 65 + Height = 25 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button1Click + end + end + object QDTime: TDateTimePicker + Left = 614 + Top = 10 + Width = 162 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 4 + end + object CompanyName: TcxButtonEdit + Left = 353 + Top = 10 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = CompanyNamePropertiesButtonClick + TabOrder = 5 + OnKeyDown = PRTCodeNameKeyDown + Width = 177 + end + object QDPalce: TEdit + Left = 86 + Top = 43 + Width = 179 + Height = 18 + TabOrder = 6 + end + object JHPlace: TcxButtonEdit + Left = 614 + Top = 38 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = JHPlacePropertiesButtonClick + TabOrder = 7 + Width = 162 + end + object ConTK1: TcxButtonEdit + Left = 86 + Top = 76 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTK1PropertiesButtonClick + TabOrder = 8 + Width = 183 + end + object ConTk2: TcxButtonEdit + Left = 614 + Top = 76 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTk2PropertiesButtonClick + TabOrder = 9 + Width = 162 + end + object ConTK3: TcxButtonEdit + Left = 86 + Top = 114 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTK3PropertiesButtonClick + TabOrder = 10 + Width = 691 + end + object ConTK4: TcxButtonEdit + Left = 353 + Top = 76 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTK4PropertiesButtonClick + TabOrder = 11 + Width = 177 + end + object ConTK5: TcxButtonEdit + Left = 216 + Top = 150 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTK5PropertiesButtonClick + TabOrder = 12 + Width = 563 + end + object ConTk6: TcxButtonEdit + Left = 110 + Top = 186 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTk6PropertiesButtonClick + TabOrder = 13 + Width = 669 + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 249 + Width = 815 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentFont = False + ShowCaptions = True + TabOrder = 2 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 278 + Width = 815 + Height = 305 + Align = alClient + TabOrder = 3 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1Column1 + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + object v1Column3: TcxGridDBColumn + Tag = 1 + Caption = #21152#24037#21378 + DataBinding.FieldName = 'FactoryNoName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v1Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 117 + end + object v1Column1: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 100 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 103 + end + object v1Price: TcxGridDBColumn + Caption = #21152#24037#21333#20215 + DataBinding.FieldName = 'Price' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.handBlack + Width = 58 + end + object v1ClothQty: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v1ClothQtyPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 69 + end + object v1ClothUnit: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'C_Qty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.handBlack + Width = 69 + end + object v1Column2: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'C_Unit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 64 + end + object v1Column4: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'C_Note' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 85 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 384 + Top = 65533 + end + object ADOCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 520 + Top = 5 + end + object DataSource1: TDataSource + DataSet = Order_Sub + Left = 344 + Top = 376 + end + object Order_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 384 + Top = 376 + end + object DataSource2: TDataSource + DataSet = ADOZDY + Left = 240 + end + object ADOZDY: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 280 + Top = 65533 + end + object CDS_ZDY: TClientDataSet + Aggregates = <> + Params = <> + Left = 208 + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 456 + Top = 5 + end +end diff --git a/艾登贸易管理/U_ClothContractInPutHZ.pas b/艾登贸易管理/U_ClothContractInPutHZ.pas new file mode 100644 index 0000000..62bd29b --- /dev/null +++ b/艾登贸易管理/U_ClothContractInPutHZ.pas @@ -0,0 +1,878 @@ +unit U_ClothContractInPutHZ; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer, + cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB, + ExtCtrls, BtnEdit, cxDropDownEdit; + +type + TfrmClothContractInPutHZ = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ScrollBox1: TScrollBox; + Label1: TLabel; + ConNo: TEdit; + Label4: TLabel; + DeliveryDate: TDateTimePicker; + Label5: TLabel; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1PRTSpec: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1ClothQty: TcxGridDBColumn; + v1Price: TcxGridDBColumn; + v1ClothUnit: TcxGridDBColumn; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + DataSource1: TDataSource; + Order_Sub: TClientDataSet; + DataSource2: TDataSource; + ADOZDY: TADOQuery; + CDS_ZDY: TClientDataSet; + FactoryNoName: TcxButtonEdit; + ADOQuery1: TADOQuery; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + PanZDY: TPanel; + CXGridZDY: TcxGrid; + TVZDY: TcxGridDBTableView; + VHelpZDYName: TcxGridDBColumn; + CXGridZDYLevel1: TcxGridLevel; + Button1: TButton; + v1Column4: TcxGridDBColumn; + Label2: TLabel; + QDTime: TDateTimePicker; + Label3: TLabel; + CompanyName: TcxButtonEdit; + Label6: TLabel; + QDPalce: TEdit; + Label8: TLabel; + JHPlace: TcxButtonEdit; + Label7: TLabel; + ConTK1: TcxButtonEdit; + Label9: TLabel; + ConTk2: TcxButtonEdit; + Label10: TLabel; + ConTK3: TcxButtonEdit; + Label11: TLabel; + ConTK4: TcxButtonEdit; + Label12: TLabel; + ConTK5: TcxButtonEdit; + Label13: TLabel; + ConTk6: TcxButtonEdit; + v1Column3: TcxGridDBColumn; + procedure TBCloseClick(Sender: TObject); + procedure TVZDYCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button1Click(Sender: TObject); + procedure PRTCodeNameKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); + procedure TVZDYKeyPress(Sender: TObject; var Key: Char); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PRTUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNoNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PRTMFPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1OrderQtyPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1ClothQtyPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure FactoryNoNamePropertiesChange(Sender: TObject); + procedure CompanyNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure JHPlacePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTK1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTK3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTK4PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTK5PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTk6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTk2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + procedure v1Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + private + FXS:Integer; + procedure InitData(); + procedure ZDYHelp(FButn:TcxButtonEdit;LType:string); + function SaveData():Boolean; + { Private declarations } + public + PState,PCopyInt:Integer; + FMainId,FConNo,CPFlag,CPFlagName,FactoryFlag,FConType:String; + { Public declarations } + end; + +var + frmClothContractInPutHZ: TfrmClothContractInPutHZ; + +implementation +uses + U_DataLink,U_ZDYHelp,U_Fun; + +{$R *.dfm} + +procedure TfrmClothContractInPutHZ.TBCloseClick(Sender: TObject); +begin + Close; +end; + +procedure TfrmClothContractInPutHZ.InitData(); +begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add('select * from ContractHZ_Main A inner join ContractHZ_Sub B on A.MainId=B.MainId'); + sql.Add(' where A.MainId='''+Trim(FMainId)+''''); + Open; + end; + SCreateCDS20(ADOQuery1,Order_Sub); + SInitCDSData20(ADOQuery1,Order_Sub); + SCSHData(ADOQuery1,ScrollBox1,0); + if PState=0 then + begin + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1* from ContractHZ_Main where ConType='''+Trim(FConType)+'''order by FillTime desc '); + Open; + end; + ConTK1.Text:=Trim(ADOTemp.fieldbyname('ConTK1').AsString); + ConTK2.Text:=Trim(ADOTemp.fieldbyname('ConTK2').AsString); + ConTK3.Text:=Trim(ADOTemp.fieldbyname('ConTK3').AsString); + ConTK4.Text:=Trim(ADOTemp.fieldbyname('ConTK4').AsString); + ConTK5.Text:=Trim(ADOTemp.fieldbyname('ConTK5').AsString); + ConTK6.Text:=Trim(ADOTemp.fieldbyname('ConTK6').AsString); + QDTime.DateTime:=SGetServerDate(ADOTemp); + DeliveryDate.DateTime:=SGetServerDate(ADOTemp); + QDTime.Checked:=True; + DeliveryDate.Checked:=False; + + QDPalce.Text:=''; + end; + PanZDY.Visible:=False; +end; + +procedure TfrmClothContractInPutHZ.ZDYHelp(FButn:TcxButtonEdit;LType:string); +var + FType,ZDYName,FText:String; +begin + PanZDY.Visible:=True; + PanZDY.Left:=FButn.Left; + PanZDY.Top:=FButn.Top+FButn.Height; + with ADOZDY do + begin + Filtered:=False; + Close; + SQL.Clear; + SQL.Add('select RTrim(ZDYNo) ZDYNo,RTrim(ZDYName) ZDYName from KH_ZDY where Type='''+Trim(LType)+''''); + Open; + end; + FText:=Trim(FButn.Text); + if FText<>'' then + SDofilter(ADOZDY,' ZDYName like '+QuotedStr('%'+Trim(FText)+'%')) + else + SDofilter(ADOZDY,''); + VHelpZDYName.Summary.GroupFormat:=Trim(FButn.Name); +end; + +procedure TfrmClothContractInPutHZ.TVZDYCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + FName:string; +begin + if ADOZDY.IsEmpty then Exit; + FName:=Trim(VHelpZDYName.Summary.GroupFormat); + TcxButtonEdit(FindComponent(FName)).Text:=Trim(ADOZDY.fieldbyname('ZDYName').AsString); + TcxButtonEdit(FindComponent(FName)).Hint:=Trim(ADOZDY.fieldbyname('ZDYNO').AsString); + PanZDY.Visible:=False; +end; + +procedure TfrmClothContractInPutHZ.Button1Click(Sender: TObject); +begin + PanZDY.Visible:=False; +end; + +procedure TfrmClothContractInPutHZ.PRTCodeNameKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + {if (key=vk_return) or (Key=vk_Down) then + begin + if ADOZDY.Active then + CXGridZDY.SetFocus; + end; } +end; + +procedure TfrmClothContractInPutHZ.TVZDYKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if ADOZDY.IsEmpty then Exit; + TcxButtonEdit(FindComponent(VHelpZDYName.Summary.GroupFormat)).Text:=Trim(ADOZDY.fieldbyname('ZDYName').AsString); + TcxButtonEdit(FindComponent(VHelpZDYName.Summary.GroupFormat)).Hint:=Trim(ADOZDY.fieldbyname('ZDYNO').AsString); + PanZDY.Visible:=False; + ADOZDY.Active:=False; + end; +end; + +procedure TfrmClothContractInPutHZ.FormShow(Sender: TObject); +begin + {if Trim(DParameters1)='1' then + begin + v1Price.Visible:=False; + v1ClothQty.Visible:=False; + v1PRTQty.Visible:=False; + end else + begin + v1Price.Visible:=True; + v1ClothQty.Visible:=True; + v1PRTQty.Visible:=True; + end; } + InitData(); + if PCopyInt=1 then + begin + FMainId:=''; + FConNo:=''; + ConNo.Text:=''; + with Order_Sub do + begin + First; + while not Eof do + begin + Edit; + FieldByName('SubId').Value:=''; + Post; + Next; + end; + end; + end; +end; + +function TfrmClothContractInPutHZ.SaveData():Boolean; +var + maxno,maxSubNo:String; +begin + try + ADOCmd.Connection.BeginTrans; + ///ӱ + with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOCmd,maxno,'HM','ContractHZ_Main',2,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ˮ쳣','ʾ',0); + exit; + end; + end else + begin + maxno:=Trim(FMainId); + end; + + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from ContractHZ_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + Append; + end + else begin + Edit; + end; + FieldByName('MainId').Value:=Trim(maxno); + SSetsaveSql(ADOCmd,'ContractSX_Main',ScrollBox1,0); + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + FieldByName('FactoryNoName').Value:=Trim(Order_Sub.fieldbyname('FactoryNoName').AsString); + FieldByName('ConType').Value:=Trim(FConType); + Post; + end; + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOCmd,maxSubNo,'HS','ContractHZ_Sub',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxSubNo:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from ContractHZ_Sub where MainId='''+Trim(maxno)+''''); + sql.Add(' and SubId='''+Trim(maxSubNo)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(maxno); + FieldByName('SubId').Value:=Trim(maxSubNo); + SSetSaveDataCDSNew(ADOCmd,Tv1,Order_Sub,'ContractHZ_Sub',0); + if Trim(Order_Sub.fieldbyname('C_Qty').AsString)='' then + begin + FieldByName('C_Qty').Value:=0; + end; + if Trim(Order_Sub.fieldbyname('Price').AsString)='' then + begin + FieldByName('Price').Value:=0; + end; + FieldByName('C_Unit').Value:=Trim(Order_Sub.fieldbyname('C_Unit').AsString); + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxSubNo); + //Order_Sub.Post; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TfrmClothContractInPutHZ.TBSaveClick(Sender: TObject); +begin + DeliveryDate.SetFocus; + if Trim(ConNo.Text)='' then + begin + Application.MessageBox('ͬŲΪգ','ʾ',0); + Exit; + end; + if Order_Sub.IsEmpty then + begin + Application.MessageBox('ϸΪգ','ʾ',0); + exit; + end; + if Order_Sub.Locate('C_Qty',null,[]) then + begin + Application.MessageBox('Ϊ!','ʾ',0); + Exit; + end; + if Order_Sub.Locate('C_Unit',null,[]) then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; + if Order_Sub.Locate('FactoryNoName',null,[]) then + begin + Application.MessageBox('ӹΪ!','ʾ',0); + Exit; + end; + if SaveData() then + begin + Application.MessageBox('ɹ','ʾ',0); + ModalResult:=1; + end; + +end; + +procedure TfrmClothContractInPutHZ.v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('OrderUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutHZ.v1PRTUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PRTUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutHZ.v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdColor'; + flagname:='ɫ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PRTColor').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutHZ.ToolButton1Click(Sender: TObject); +begin + with Order_Sub do + begin + Append; + Post; + end; +end; + +procedure TfrmClothContractInPutHZ.ToolButton2Click(Sender: TObject); +begin + if Order_Sub.IsEmpty then Exit; + if Trim(Order_Sub.fieldbyname('SubId').AsString)<>'' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub_MX where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + Application.MessageBox('ѵɾ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; + Order_Sub.Delete; +end; + +procedure TfrmClothContractInPutHZ.FactoryNoNamePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + if Trim(FMainId)<>'' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR A where exists('); + sql.Add('select * from ContractSX_Sub_MX B inner join Contract_Sub C on B.SubId=C.SubId '); + sql.Add(' where C.Mainid='''+Trim(FMainId)+''''); + sql.Add(' and B.MXID=A.YFTypeId)'); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + Application.MessageBox('ѾӦ޸ĹӦ!','ʾ',0); + Exit; + end; + end; + + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:=''; + MainType:='YCLFactory'; + if ShowModal=1 then + begin + FXS:=99; + FactoryNoName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + FactoryNoName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutHZ.v1Column1PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim(CPFlag); + flagname:=Trim(CPFlagName); + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('C_CodeName').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.Order_Sub.FieldByName('C_Code').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutHZ.v1PRTMFPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='KZ'; + flagname:='صλ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('KZUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutHZ.v1OrderQtyPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MF'; + flagname:='ŷλ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('MFUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutHZ.v1ClothQtyPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PriceUnit'; + flagname:='Ƽ۵λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PriceUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutHZ.v1Column2PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('C_Unit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutHZ.FactoryNoNamePropertiesChange( + Sender: TObject); +begin + {if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(FactoryNoName,'FactoryNo1Name'); } +end; + +procedure TfrmClothContractInPutHZ.CompanyNamePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdDefStr2'; + flagname:='跽'; + if ShowModal=1 then + begin + FXS:=99; + CompanyName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutHZ.JHPlacePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='JHPlace'; + flagname:='ص'; + if ShowModal=1 then + begin + JHPlace.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutHZ.ConTK1PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK1'; + flagname:='׼'; + if ShowModal=1 then + begin + ConTK1.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutHZ.ConTK3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK3'; + flagname:='װҪ'; + if ShowModal=1 then + begin + ConTK3.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutHZ.ConTK4PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK4'; + flagname:='㷽ʽ'; + if ShowModal=1 then + begin + ConTK4.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutHZ.ConTK5PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK5'; + flagname:='ձ׼'; + if ShowModal=1 then + begin + ConTK5.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutHZ.ConTk6PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK6'; + flagname:='Լ'; + if ShowModal=1 then + begin + ConTK6.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutHZ.ConTk2PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK2'; + flagname:='䷽óе'; + if ShowModal=1 then + begin + ConTK2.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutHZ.ConNoKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Trim(ConNo.Text)<>'' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrder_Main where OrderNo='''+Trim(ConNo.Text)+''''); + Open; + end; + FactoryNoName.Text:=Trim(ADOTemp.fieldbyname('YCLFactory').AsString); + end; + end; +end; + +procedure TfrmClothContractInPutHZ.v1Column3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:=''; + MainType:=Trim(FactoryFlag); + if ShowModal=1 then + begin + with Order_Sub do + begin + Edit; + FieldByName('FactoryNoName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +end. diff --git a/艾登贸易管理/U_ClothContractInPutPB.dfm b/艾登贸易管理/U_ClothContractInPutPB.dfm new file mode 100644 index 0000000..0a1e759 --- /dev/null +++ b/艾登贸易管理/U_ClothContractInPutPB.dfm @@ -0,0 +1,675 @@ +object frmClothContractInPutPB: TfrmClothContractInPutPB + Left = 199 + Top = 123 + Width = 995 + Height = 557 + Caption = #22383#24067#35746#36141#21512#21516#24405#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + WindowState = wsMaximized + OnCreate = FormCreate + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 979 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 29 + Width = 979 + Height = 236 + Align = alTop + BevelInner = bvNone + BevelOuter = bvNone + Ctl3D = True + ParentCtl3D = False + TabOrder = 1 + object Label1: TLabel + Left = 20 + Top = 18 + Width = 60 + Height = 12 + Caption = #21512#21516#32534#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label4: TLabel + Left = 20 + Top = 66 + Width = 60 + Height = 12 + Caption = #20132#36135#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label5: TLabel + Left = 295 + Top = 18 + Width = 60 + Height = 12 + Caption = #20379' '#26041#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label2: TLabel + Left = 20 + Top = 42 + Width = 60 + Height = 12 + Caption = #31614#35746#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label3: TLabel + Left = 550 + Top = 18 + Width = 60 + Height = 12 + Caption = #38656' '#26041#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label6: TLabel + Left = 295 + Top = 42 + Width = 60 + Height = 12 + Caption = #31614#35746#22320#28857#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label8: TLabel + Left = 295 + Top = 66 + Width = 60 + Height = 12 + Caption = #20132#36135#22320#28857#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label7: TLabel + Left = 295 + Top = 134 + Width = 60 + Height = 12 + Caption = #36136#37327#35201#27714#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label10: TLabel + Left = 20 + Top = 162 + Width = 60 + Height = 12 + Caption = #21253#35013#35201#27714#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label11: TLabel + Left = 550 + Top = 42 + Width = 60 + Height = 12 + Caption = #32467#31639#26041#24335#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label12: TLabel + Left = 20 + Top = 186 + Width = 60 + Height = 12 + Caption = #39564#25910#26631#20934#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label13: TLabel + Left = 20 + Top = 210 + Width = 60 + Height = 12 + Caption = #20854#23427#35201#27714#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label15: TLabel + Left = 550 + Top = 68 + Width = 60 + Height = 12 + Caption = #20132#26399#35828#26126#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label9: TLabel + Left = 20 + Top = 136 + Width = 60 + Height = 12 + Caption = #36816#36755#26041#24335#65306 + end + object Label14: TLabel + Left = 20 + Top = 88 + Width = 72 + Height = 12 + Caption = #20379#26041#32852#31995#20154#65306 + end + object Label16: TLabel + Left = 550 + Top = 88 + Width = 60 + Height = 12 + Caption = #20379#26041#22320#22336#65306 + end + object Label17: TLabel + Left = 295 + Top = 110 + Width = 72 + Height = 12 + Caption = #20379#26041#24320#25143#34892#65306 + end + object Label18: TLabel + Left = 20 + Top = 112 + Width = 84 + Height = 12 + Caption = #20379#26041#38134#34892#36134#21495#65306 + end + object Label19: TLabel + Left = 295 + Top = 88 + Width = 60 + Height = 12 + Caption = #20379#26041#30005#35805#65306 + end + object ConNo: TEdit + Left = 94 + Top = 15 + Width = 160 + Height = 20 + TabOrder = 0 + OnKeyPress = ConNoKeyPress + end + object DeliveryDate: TDateTimePicker + Left = 94 + Top = 62 + Width = 160 + Height = 20 + BevelInner = bvNone + Date = 40916.000000000000000000 + Format = 'yyyy-MM-dd' + Time = 40916.000000000000000000 + TabOrder = 1 + end + object FactoryNoName: TcxButtonEdit + Left = 359 + Top = 15 + Hint = 'FactoryNo' + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = FactoryNoNamePropertiesButtonClick + TabOrder = 2 + Width = 160 + end + object QDTime: TDateTimePicker + Left = 94 + Top = 38 + Width = 160 + Height = 20 + BevelInner = bvNone + Date = 40916.000000000000000000 + Format = 'yyyy-MM-dd' + Time = 40916.000000000000000000 + TabOrder = 3 + end + object CompanyName: TcxButtonEdit + Left = 608 + Top = 16 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = CompanyNamePropertiesButtonClick + TabOrder = 4 + Width = 160 + end + object QDPalce: TEdit + Left = 359 + Top = 38 + Width = 160 + Height = 20 + TabOrder = 5 + end + object JHPlace: TcxButtonEdit + Left = 359 + Top = 62 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = JHPlacePropertiesButtonClick + TabOrder = 6 + Width = 160 + end + object ConTk2: TcxButtonEdit + Left = 94 + Top = 132 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTk2PropertiesButtonClick + TabOrder = 7 + Width = 160 + end + object ConTK4: TcxButtonEdit + Left = 608 + Top = 40 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTK4PropertiesButtonClick + TabOrder = 8 + Width = 160 + end + object ConTk7: TEdit + Left = 608 + Top = 64 + Width = 160 + Height = 20 + TabOrder = 9 + end + object LXPerson: TEdit + Left = 94 + Top = 84 + Width = 160 + Height = 20 + TabOrder = 10 + end + object bankNo: TEdit + Left = 94 + Top = 108 + Width = 160 + Height = 20 + TabOrder = 11 + end + object LXTel: TEdit + Left = 359 + Top = 84 + Width = 160 + Height = 20 + TabOrder = 12 + end + object bankName: TEdit + Left = 359 + Top = 108 + Width = 410 + Height = 20 + TabOrder = 13 + end + object LXaddress: TEdit + Left = 608 + Top = 84 + Width = 160 + Height = 20 + TabOrder = 14 + end + object ConTK1: TEdit + Left = 359 + Top = 132 + Width = 410 + Height = 20 + TabOrder = 15 + end + object ConTK3: TEdit + Left = 94 + Top = 156 + Width = 675 + Height = 20 + TabOrder = 16 + end + object ConTK5: TEdit + Left = 94 + Top = 180 + Width = 675 + Height = 20 + TabOrder = 17 + end + object ConTK6: TEdit + Left = 94 + Top = 204 + Width = 675 + Height = 20 + TabOrder = 18 + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 265 + Width = 979 + Height = 28 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentFont = False + ShowCaptions = True + TabOrder = 2 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 293 + Width = 979 + Height = 226 + Align = alClient + TabOrder = 3 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1Column1 + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Styles.Header = DataLink_TradeManage.Default + object v1Column1: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 101 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 80 + end + object v1Column3: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'MFQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 79 + end + object v1Column5: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'KZQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 87 + end + object v1ClothQty: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v1ClothQtyPropertiesButtonClick + Visible = False + HeaderAlignmentHorz = taCenter + Hidden = True + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 41 + end + object v1Column6: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'RollNum' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 65 + end + object v1ClothUnit: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1ClothUnitPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.handBlack + Width = 71 + end + object v1Column2: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column2PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 82 + end + object v1Price: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1ClothUnitPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.handBlack + Width = 69 + end + object v1Column7: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'Money' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object v1Column4: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'C_Note' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 170 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 384 + Top = 5 + end + object ADOCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 528 + Top = 65533 + end + object DataSource1: TDataSource + DataSet = Order_Sub + Left = 344 + Top = 376 + end + object Order_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 384 + Top = 376 + end + object DataSource2: TDataSource + DataSet = ADOZDY + Left = 240 + Top = 65532 + end + object ADOZDY: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 284 + Top = 1 + end + object CDS_ZDY: TClientDataSet + Aggregates = <> + Params = <> + Left = 212 + Top = 65532 + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 476 + end +end diff --git a/艾登贸易管理/U_ClothContractInPutPB.pas b/艾登贸易管理/U_ClothContractInPutPB.pas new file mode 100644 index 0000000..e049494 --- /dev/null +++ b/艾登贸易管理/U_ClothContractInPutPB.pas @@ -0,0 +1,640 @@ +unit U_ClothContractInPutPB; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer, + cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB, + ExtCtrls, BtnEdit, cxDropDownEdit; + +type + TfrmClothContractInPutPB = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ScrollBox1: TScrollBox; + Label1: TLabel; + ConNo: TEdit; + Label4: TLabel; + DeliveryDate: TDateTimePicker; + Label5: TLabel; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1PRTSpec: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1ClothQty: TcxGridDBColumn; + v1Price: TcxGridDBColumn; + v1ClothUnit: TcxGridDBColumn; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + DataSource1: TDataSource; + Order_Sub: TClientDataSet; + DataSource2: TDataSource; + ADOZDY: TADOQuery; + CDS_ZDY: TClientDataSet; + FactoryNoName: TcxButtonEdit; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + Label2: TLabel; + QDTime: TDateTimePicker; + Label3: TLabel; + CompanyName: TcxButtonEdit; + Label6: TLabel; + QDPalce: TEdit; + Label8: TLabel; + JHPlace: TcxButtonEdit; + Label7: TLabel; + ConTk2: TcxButtonEdit; + Label10: TLabel; + Label11: TLabel; + ConTK4: TcxButtonEdit; + Label12: TLabel; + Label13: TLabel; + v1Column3: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + Label15: TLabel; + ConTk7: TEdit; + Label9: TLabel; + v1Column7: TcxGridDBColumn; + Label14: TLabel; + Label16: TLabel; + Label17: TLabel; + Label18: TLabel; + Label19: TLabel; + LXPerson: TEdit; + bankNo: TEdit; + LXTel: TEdit; + bankName: TEdit; + LXaddress: TEdit; + ConTK1: TEdit; + ConTK3: TEdit; + ConTK5: TEdit; + ConTK6: TEdit; + ADOQuery1: TADOQuery; + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNoNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PRTMFPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1OrderQtyPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1ClothQtyPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure CompanyNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure JHPlacePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTK3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTK4PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTk2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + procedure v1Column10PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure FormCreate(Sender: TObject); + procedure v1ClothUnitPropertiesEditValueChanged(Sender: TObject); + private + FXS:Integer; + procedure InitData(); + procedure ZDYHelp(FButn:TcxButtonEdit;LType:string); + function SaveData():Boolean; + { Private declarations } + public + PState,PCopyInt:Integer; + FMainId,FConNo:String; + { Public declarations } + end; + +var + frmClothContractInPutPB: TfrmClothContractInPutPB; + +implementation +uses + U_DataLink,U_ZDYHelp,U_Fun, U_ProductOrder_CX, U_ZdyAttachGYS; + +{$R *.dfm} + +procedure TfrmClothContractInPutPB.TBCloseClick(Sender: TObject); +begin + Close; +end; + +procedure TfrmClothContractInPutPB.InitData(); +begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add('select A.*'); + sql.Add('from Contract_sub A'); + sql.Add('where A.MainID='''+FMainId+'''') ; + Open; + end; + SCreateCDS20(ADOQuery1,Order_Sub); + SInitCDSData20(ADOQuery1,Order_Sub); + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add('select A.*'); + sql.Add('from Contract_Main A'); + sql.Add('where A.MainID='''+FMainId+'''') ; + Open; + end; + SCSHData(ADOQuery1,ScrollBox1,0); +end; + +procedure TfrmClothContractInPutPB.ZDYHelp(FButn:TcxButtonEdit;LType:string); + +begin + +end; + +procedure TfrmClothContractInPutPB.FormShow(Sender: TObject); +begin + + InitData(); + if PCopyInt=1 then + begin + FMainId:=''; + FConNo:=''; + ConNo.Text:=''; + with Order_Sub do + begin + First; + while not Eof do + begin + Edit; + FieldByName('SubId').Value:=''; + Post; + Next; + end; + end; + end; +end; + +function TfrmClothContractInPutPB.SaveData():Boolean; +var + maxno,maxSubNo:String; +begin + try + ADOCmd.Connection.BeginTrans; + ///\ + if Trim(FMainId)='' then + begin + if GetLSNo(ADOCmd,maxno,'PM','Contract_Main',2,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ˮ쳣','ʾ',0); + exit; + end; + end + else + begin + maxno:=Trim(FMainId); + end; + + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from Contract_Main where MainId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if ADOCmd.IsEmpty then Append else edit; + FieldByName('MainId').Value:=Trim(maxno); + FieldByName('HTType').Value:='ɹͬ'; + SSetsaveSql(ADOCmd,'Contract_Main',ScrollBox1,0); + if Trim(FMainId)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + Post; + end; + + //FMainId:=Trim(maxno); + ///ӱ + with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOCmd,maxSubNo,'PS','Contract_Sub',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxSubNo:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from Contract_Sub where MainId='''+Trim(maxno)+''''); + sql.Add(' and SubId='''+Trim(maxSubNo)+''''); + Open; + end; + with ADOCmd do + begin + if ADOCmd.IsEmpty then Append else edit; + SSetSaveDataCDSNew(ADOCmd,Tv1,Order_Sub,'Contract_Sub',0); + FieldByName('MainId').Value:=Trim(maxno); + FieldByName('SubId').Value:=Trim(maxSubNo); + FieldByName('Qty').Value:=Order_Sub.fieldbyname('Qty').AsFloat; + FieldByName('RollNum').Value:=Order_Sub.fieldbyname('RollNum').AsFloat; + FieldByName('Price').Value:=Order_Sub.fieldbyname('Price').AsFloat; + FieldByName('money').Value:=Order_Sub.fieldbyname('money').AsFloat; + // FieldByName('C_status').Value:='0'; + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxSubNo); + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TfrmClothContractInPutPB.TBSaveClick(Sender: TObject); +begin + DeliveryDate.SetFocus; + if Trim(ConNo.Text)='' then + begin + Application.MessageBox('ͬŲΪգ','ʾ',0); + Exit; + end; + + if Trim(FactoryNoName.Text)='' then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + if Order_Sub.IsEmpty then + begin + Application.MessageBox('ϸΪգ','ʾ',0); + exit; + end; + if Order_Sub.Locate('Qty',null,[]) then + begin + Application.MessageBox('Ϊ!','ʾ',0); + Exit; + end; + if Order_Sub.Locate('QtyUnit',null,[]) then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; + + + + if SaveData() then + begin + Application.MessageBox('ɹ','ʾ',0); + ModalResult:=1; + end; +end; + +procedure TfrmClothContractInPutPB.ToolButton1Click(Sender: TObject); +begin + with Order_Sub do + begin + Append; + Post; + end; +end; + +procedure TfrmClothContractInPutPB.ToolButton2Click(Sender: TObject); +begin + if Order_Sub.IsEmpty then Exit; + if Trim(Order_Sub.fieldbyname('SubId').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; + Order_Sub.Delete; +end; + +procedure TfrmClothContractInPutPB.FactoryNoNamePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin +try + frmZdyAttachGYS:=TfrmZdyAttachGYS.Create(Application); + with frmZdyAttachGYS do + begin + if ShowModal=1 then + begin + + FactoryNoName.text:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + + end; + end; + finally + frmZdyAttachGYS.Free; + end; +end; + +procedure TfrmClothContractInPutPB.v1Column1PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Cloth'; + flagname:=''; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('C_CodeName').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.Order_Sub.FieldByName('C_Code').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutPB.v1PRTMFPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='KZ'; + flagname:='صλ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('KZUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutPB.v1OrderQtyPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MF'; + flagname:='ŷλ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('MFUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutPB.v1ClothQtyPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PriceUnit'; + flagname:='Ƽ۵λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PriceUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutPB.v1Column2PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CGUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutPB.CompanyNamePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdDefStr2'; + flagname:='跽'; + if ShowModal=1 then + begin + FXS:=99; + CompanyName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutPB.JHPlacePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='JHPlace'; + flagname:='ص'; + if ShowModal=1 then + begin + JHPlace.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutPB.ConTK3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK3'; + flagname:='װҪ'; + if ShowModal=1 then + begin + ConTK3.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutPB.ConTK4PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK4'; + flagname:='㷽ʽ'; + if ShowModal=1 then + begin + ConTK4.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutPB.ConTk2PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK2'; + flagname:='䷽'; + if ShowModal=1 then + begin + ConTK2.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutPB.ConNoKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Trim(ConNo.Text)<>'' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrder_Main where OrderNo='''+Trim(ConNo.Text)+''''); + Open; + end; + FactoryNoName.Text:=Trim(ADOTemp.fieldbyname('PBFactory').AsString); + end; + end; +end; + +procedure TfrmClothContractInPutPB.v1Column10PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:=''; + MainType:='PBFactory'; + if ShowModal=1 then + begin + with Order_Sub do + begin + Edit; + FieldByName('Sdefstr2').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutPB.FormCreate(Sender: TObject); +begin + QDTime.DateTime:=SGetServerDate(ADOTemp); + DeliveryDate.DateTime:=SGetServerDate(ADOTemp); +end; + +procedure TfrmClothContractInPutPB.v1ClothUnitPropertiesEditValueChanged( + Sender: TObject); +var + fieldname:string; +begin + fieldname:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + with Order_Sub do + begin + Edit; + FieldByName(Trim(fieldname)).Value:=TcxTextEdit(Sender).EditingText; + FieldByName('Money').Value:=strtofloat(format('%0.2f',[FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat])); + Post; + end; + Tv1.Controller.EditingController.ShowEdit(); +end; + +end. diff --git a/艾登贸易管理/U_ClothContractInPutSX.dfm b/艾登贸易管理/U_ClothContractInPutSX.dfm new file mode 100644 index 0000000..bbaee2c --- /dev/null +++ b/艾登贸易管理/U_ClothContractInPutSX.dfm @@ -0,0 +1,633 @@ +object frmClothContractInPutSX: TfrmClothContractInPutSX + Left = 198 + Top = 112 + Width = 831 + Height = 622 + Caption = #32433#32447#35746#36141#21512#21516#24405#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 823 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 29 + Width = 823 + Height = 250 + Align = alTop + BevelInner = bvNone + BevelOuter = bvNone + Ctl3D = False + ParentCtl3D = False + TabOrder = 1 + object Label1: TLabel + Left = 24 + Top = 14 + Width = 65 + Height = 12 + Caption = #21512#21516#32534#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 546 + Top = 46 + Width = 65 + Height = 12 + Caption = #20132#36135#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 295 + Top = 14 + Width = 67 + Height = 12 + Caption = #20379' '#26041#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 24 + Top = 46 + Width = 65 + Height = 12 + Caption = #31614#35746#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 546 + Top = 14 + Width = 67 + Height = 12 + Caption = #38656' '#26041#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 295 + Top = 46 + Width = 65 + Height = 12 + Caption = #31614#35746#22320#28857#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 298 + Top = 90 + Width = 65 + Height = 12 + Caption = #20132#36135#22320#28857#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 24 + Top = 78 + Width = 65 + Height = 36 + Caption = #20379#36135#36136#37327#13#10' '#21450#13#10#25216#26415#26631#20934#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 544 + Top = 78 + Width = 65 + Height = 36 + Caption = #36816#36755#26041#24335#13#10' '#21450#13#10#36153#29992#25215#25285#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 24 + Top = 138 + Width = 65 + Height = 12 + Caption = #21253#35013#35201#27714#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 298 + Top = 138 + Width = 65 + Height = 12 + Caption = #32467#31639#26041#24335#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 24 + Top = 178 + Width = 195 + Height = 12 + Caption = #39564#25910#26631#20934#12289#26041#27861#21450#25552#20986#24322#35758#26399#38480#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 24 + Top = 210 + Width = 91 + Height = 12 + Caption = #20854#23427#32422#23450#20107#39033#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object ConNo: TEdit + Left = 86 + Top = 11 + Width = 180 + Height = 18 + TabOrder = 0 + OnKeyPress = ConNoKeyPress + end + object DeliveryDate: TDateTimePicker + Left = 609 + Top = 42 + Width = 177 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 1 + end + object FactoryNoName: TcxButtonEdit + Left = 359 + Top = 10 + Hint = 'FactoryNo' + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = FactoryNoNamePropertiesButtonClick + Properties.OnChange = FactoryNoNamePropertiesChange + TabOrder = 2 + OnKeyDown = PRTCodeNameKeyDown + Width = 162 + end + object PanZDY: TPanel + Left = 841 + Top = 128 + Width = 202 + Height = 153 + TabOrder = 3 + Visible = False + object CXGridZDY: TcxGrid + Left = 3 + Top = 4 + Width = 197 + Height = 113 + TabOrder = 0 + object TVZDY: TcxGridDBTableView + OnKeyPress = TVZDYKeyPress + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TVZDYCellDblClick + DataController.DataSource = DataSource2 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + object VHelpZDYName: TcxGridDBColumn + DataBinding.FieldName = 'ZDYName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.handBlack + Width = 163 + IsCaptionAssigned = True + end + end + object CXGridZDYLevel1: TcxGridLevel + GridView = TVZDY + end + end + object Button1: TButton + Left = 64 + Top = 120 + Width = 65 + Height = 25 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button1Click + end + end + object QDTime: TDateTimePicker + Left = 86 + Top = 42 + Width = 183 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 4 + end + object CompanyName: TcxButtonEdit + Left = 609 + Top = 10 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = CompanyNamePropertiesButtonClick + TabOrder = 5 + OnKeyDown = PRTCodeNameKeyDown + Width = 177 + end + object QDPalce: TEdit + Left = 359 + Top = 43 + Width = 161 + Height = 18 + TabOrder = 6 + end + object JHPlace: TcxButtonEdit + Left = 361 + Top = 86 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = JHPlacePropertiesButtonClick + TabOrder = 7 + Width = 162 + end + object ConTK1: TcxButtonEdit + Left = 86 + Top = 86 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTK1PropertiesButtonClick + TabOrder = 8 + Width = 183 + end + object ConTk2: TcxButtonEdit + Left = 609 + Top = 86 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTk2PropertiesButtonClick + TabOrder = 9 + Width = 179 + end + object ConTK3: TcxButtonEdit + Left = 86 + Top = 134 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTK3PropertiesButtonClick + TabOrder = 10 + Width = 184 + end + object ConTK4: TcxButtonEdit + Left = 361 + Top = 134 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTK4PropertiesButtonClick + TabOrder = 11 + Width = 162 + end + object ConTK5: TcxButtonEdit + Left = 216 + Top = 174 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTK5PropertiesButtonClick + TabOrder = 12 + Width = 576 + end + object ConTk6: TcxButtonEdit + Left = 110 + Top = 206 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTk6PropertiesButtonClick + TabOrder = 13 + Width = 683 + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 279 + Width = 823 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentFont = False + ShowCaptions = True + TabOrder = 2 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 308 + Width = 823 + Height = 277 + Align = alClient + TabOrder = 3 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1Column1 + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + object v1Column3: TcxGridDBColumn + Caption = #20379#26041 + DataBinding.FieldName = 'FactoryNoName' + Width = 112 + end + object v1Column1: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 100 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 103 + end + object v1Price: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.handBlack + Width = 58 + end + object v1ClothQty: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v1ClothQtyPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 69 + end + object v1ClothUnit: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'C_Qty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.handBlack + Width = 69 + end + object v1Column2: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'C_Unit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 64 + end + object v1Column4: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'C_Note' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 85 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 384 + Top = 13 + end + object ADOCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 520 + Top = 5 + end + object DataSource1: TDataSource + DataSet = Order_Sub + Left = 344 + Top = 376 + end + object Order_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 384 + Top = 376 + end + object DataSource2: TDataSource + DataSet = ADOZDY + Left = 240 + Top = 8 + end + object ADOZDY: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 280 + Top = 5 + end + object CDS_ZDY: TClientDataSet + Aggregates = <> + Params = <> + Left = 208 + Top = 16 + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 456 + Top = 13 + end +end diff --git a/艾登贸易管理/U_ClothContractInPutSX.pas b/艾登贸易管理/U_ClothContractInPutSX.pas new file mode 100644 index 0000000..fbf393f --- /dev/null +++ b/艾登贸易管理/U_ClothContractInPutSX.pas @@ -0,0 +1,854 @@ +unit U_ClothContractInPutSX; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer, + cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB, + ExtCtrls, BtnEdit, cxDropDownEdit; + +type + TfrmClothContractInPutSX = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ScrollBox1: TScrollBox; + Label1: TLabel; + ConNo: TEdit; + Label4: TLabel; + DeliveryDate: TDateTimePicker; + Label5: TLabel; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1PRTSpec: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1ClothQty: TcxGridDBColumn; + v1Price: TcxGridDBColumn; + v1ClothUnit: TcxGridDBColumn; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + DataSource1: TDataSource; + Order_Sub: TClientDataSet; + DataSource2: TDataSource; + ADOZDY: TADOQuery; + CDS_ZDY: TClientDataSet; + FactoryNoName: TcxButtonEdit; + ADOQuery1: TADOQuery; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + PanZDY: TPanel; + CXGridZDY: TcxGrid; + TVZDY: TcxGridDBTableView; + VHelpZDYName: TcxGridDBColumn; + CXGridZDYLevel1: TcxGridLevel; + Button1: TButton; + v1Column4: TcxGridDBColumn; + Label2: TLabel; + QDTime: TDateTimePicker; + Label3: TLabel; + CompanyName: TcxButtonEdit; + Label6: TLabel; + QDPalce: TEdit; + Label8: TLabel; + JHPlace: TcxButtonEdit; + Label7: TLabel; + ConTK1: TcxButtonEdit; + Label9: TLabel; + ConTk2: TcxButtonEdit; + Label10: TLabel; + ConTK3: TcxButtonEdit; + Label11: TLabel; + ConTK4: TcxButtonEdit; + Label12: TLabel; + ConTK5: TcxButtonEdit; + Label13: TLabel; + ConTk6: TcxButtonEdit; + v1Column3: TcxGridDBColumn; + procedure TBCloseClick(Sender: TObject); + procedure TVZDYCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button1Click(Sender: TObject); + procedure PRTCodeNameKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); + procedure TVZDYKeyPress(Sender: TObject; var Key: Char); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PRTUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNoNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PRTMFPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1OrderQtyPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1ClothQtyPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure FactoryNoNamePropertiesChange(Sender: TObject); + procedure CompanyNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure JHPlacePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTK1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTK3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTK4PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTK5PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTk6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTk2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + private + FXS:Integer; + procedure InitData(); + procedure ZDYHelp(FButn:TcxButtonEdit;LType:string); + function SaveData():Boolean; + { Private declarations } + public + PState:Integer; + FMainId,FConNo:String; + { Public declarations } + end; + +var + frmClothContractInPutSX: TfrmClothContractInPutSX; + +implementation +uses + U_DataLink,U_ZDYHelp,U_Fun; + +{$R *.dfm} + +procedure TfrmClothContractInPutSX.TBCloseClick(Sender: TObject); +begin + Close; +end; + +procedure TfrmClothContractInPutSX.InitData(); +begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add(' exec ClothContractSX_QryList :MainId,:WSql'); + if PState=1 then + begin + ADOQuery1.Parameters.ParamByName('MainId').Value:=Trim(FMainId); + ADOQuery1.Parameters.ParamByName('WSQl').Value:=''; + end; + if PState=0 then + begin + ADOQuery1.Parameters.ParamByName('MainId').Value:=Trim(FMainId); + ADOQuery1.Parameters.ParamByName('WSql').Value:=' and 1<>1 '; + end; + Open; + end; + SCreateCDS20(ADOQuery1,Order_Sub); + SInitCDSData20(ADOQuery1,Order_Sub); + SCSHData(ADOQuery1,ScrollBox1,0); + if PState=0 then + begin + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1* from ContractSX_Main order by FillTime desc '); + Open; + end; + QDTime.DateTime:=SGetServerDate(ADOTemp); + DeliveryDate.DateTime:=SGetServerDate(ADOTemp); + QDTime.Checked:=True; + DeliveryDate.Checked:=False; + QDPalce.Text:=''; + end; + PanZDY.Visible:=False; +end; + +procedure TfrmClothContractInPutSX.ZDYHelp(FButn:TcxButtonEdit;LType:string); +var + FType,ZDYName,FText:String; +begin + PanZDY.Visible:=True; + PanZDY.Left:=FButn.Left; + PanZDY.Top:=FButn.Top+FButn.Height; + with ADOZDY do + begin + Filtered:=False; + Close; + SQL.Clear; + SQL.Add('select RTrim(ZDYNo) ZDYNo,RTrim(ZDYName) ZDYName from KH_ZDY where Type='''+Trim(LType)+''''); + Open; + end; + FText:=Trim(FButn.Text); + if FText<>'' then + SDofilter(ADOZDY,' ZDYName like '+QuotedStr('%'+Trim(FText)+'%')) + else + SDofilter(ADOZDY,''); + VHelpZDYName.Summary.GroupFormat:=Trim(FButn.Name); +end; + +procedure TfrmClothContractInPutSX.TVZDYCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + FName:string; +begin + if ADOZDY.IsEmpty then Exit; + FName:=Trim(VHelpZDYName.Summary.GroupFormat); + TcxButtonEdit(FindComponent(FName)).Text:=Trim(ADOZDY.fieldbyname('ZDYName').AsString); + TcxButtonEdit(FindComponent(FName)).Hint:=Trim(ADOZDY.fieldbyname('ZDYNO').AsString); + PanZDY.Visible:=False; +end; + +procedure TfrmClothContractInPutSX.Button1Click(Sender: TObject); +begin + PanZDY.Visible:=False; +end; + +procedure TfrmClothContractInPutSX.PRTCodeNameKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + {if (key=vk_return) or (Key=vk_Down) then + begin + if ADOZDY.Active then + CXGridZDY.SetFocus; + end; } +end; + +procedure TfrmClothContractInPutSX.TVZDYKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if ADOZDY.IsEmpty then Exit; + TcxButtonEdit(FindComponent(VHelpZDYName.Summary.GroupFormat)).Text:=Trim(ADOZDY.fieldbyname('ZDYName').AsString); + TcxButtonEdit(FindComponent(VHelpZDYName.Summary.GroupFormat)).Hint:=Trim(ADOZDY.fieldbyname('ZDYNO').AsString); + PanZDY.Visible:=False; + ADOZDY.Active:=False; + end; +end; + +procedure TfrmClothContractInPutSX.FormShow(Sender: TObject); +begin + {if Trim(DParameters1)='1' then + begin + v1Price.Visible:=False; + v1ClothQty.Visible:=False; + v1PRTQty.Visible:=False; + end else + begin + v1Price.Visible:=True; + v1ClothQty.Visible:=True; + v1PRTQty.Visible:=True; + end; } + InitData(); +end; + +function TfrmClothContractInPutSX.SaveData():Boolean; +var + maxno:String; +begin + try + ADOCmd.Connection.BeginTrans; + /// + if Trim(FMainId)='' then + begin + if GetLSNo(ADOCmd,maxno,'SM','ContractSX_Main',2,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ˮ쳣','ʾ',0); + exit; + end; + end else + begin + maxno:=Trim(FMainId); + end; + + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from ContractSX_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMainId)='' then + begin + Append; + + end + else begin + + Edit; + end; + FieldByName('MainId').Value:=Trim(maxno); + SSetsaveSql(ADOCmd,'ContractSX_Main',ScrollBox1,0); + if Trim(FMainId)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + Post; + end; + FMainId:=Trim(maxno); + ///ӱ + with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOCmd,maxno,'SS','ContractSX_Sub',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from ContractSX_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add(' and SubId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,Tv1,Order_Sub,'ContractSX_Sub',0); + if Trim(Order_Sub.fieldbyname('C_Qty').AsString)='' then + begin + FieldByName('C_Qty').Value:=0; + end; + if Trim(Order_Sub.fieldbyname('Price').AsString)='' then + begin + FieldByName('Price').Value:=0; + end; + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TfrmClothContractInPutSX.TBSaveClick(Sender: TObject); +begin + DeliveryDate.SetFocus; + if Trim(ConNo.Text)='' then + begin + Application.MessageBox('ͬŲΪգ','ʾ',0); + Exit; + end; + if Trim(FactoryNoName.Text)='' then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + if Order_Sub.IsEmpty then + begin + Application.MessageBox('ϸΪգ','ʾ',0); + exit; + end; + if Order_Sub.Locate('C_Qty',null,[]) then + begin + Application.MessageBox('Ϊ!','ʾ',0); + Exit; + end; + if Order_Sub.Locate('C_Unit',null,[]) then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; + if PState=1 then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from ContractSX_Cloth_DH where MainId='''+Trim(FMainId)+''''); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + if Trim(FConNo)<>Trim(ConNo.Text) then + begin + Application.MessageBox('Ѿ޸ĺͬ!','ʾ',0); + Exit; + end; + end; + end; + if SaveData() then + begin + Application.MessageBox('ɹ','ʾ',0); + end; +end; + +procedure TfrmClothContractInPutSX.v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('OrderUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSX.v1PRTUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PRTUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSX.v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdColor'; + flagname:='ɫ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PRTColor').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSX.ToolButton1Click(Sender: TObject); +begin + with Order_Sub do + begin + Append; + Post; + end; +end; + +procedure TfrmClothContractInPutSX.ToolButton2Click(Sender: TObject); +begin + if Order_Sub.IsEmpty then Exit; + if Trim(Order_Sub.fieldbyname('SubId').AsString)<>'' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub_MX where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + Application.MessageBox('ѵɾ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; + Order_Sub.Delete; +end; + +procedure TfrmClothContractInPutSX.FactoryNoNamePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + if Trim(FMainId)<>'' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR A where exists('); + sql.Add('select * from ContractSX_Sub_MX B inner join Contract_Sub C on B.SubId=C.SubId '); + sql.Add(' where C.Mainid='''+Trim(FMainId)+''''); + sql.Add(' and B.MXID=A.YFTypeId)'); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + Application.MessageBox('ѾӦ޸ĹӦ!','ʾ',0); + Exit; + end; + end; + + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:=''; + MainType:='YCLFactory'; + if ShowModal=1 then + begin + FXS:=99; + FactoryNoName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + FactoryNoName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSX.v1Column1PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ClothSX'; + flagname:='ɴ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('C_CodeName').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.Order_Sub.FieldByName('C_Code').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSX.v1PRTMFPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='KZ'; + flagname:='صλ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('KZUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSX.v1OrderQtyPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MF'; + flagname:='ŷλ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('MFUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSX.v1ClothQtyPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PriceUnit'; + flagname:='Ƽ۵λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PriceUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSX.v1Column2PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('C_Unit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSX.FactoryNoNamePropertiesChange( + Sender: TObject); +begin + {if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(FactoryNoName,'FactoryNo1Name'); } +end; + +procedure TfrmClothContractInPutSX.CompanyNamePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdDefStr2'; + flagname:='跽'; + if ShowModal=1 then + begin + FXS:=99; + CompanyName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSX.JHPlacePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='JHPlace'; + flagname:='ص'; + if ShowModal=1 then + begin + JHPlace.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSX.ConTK1PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK1'; + flagname:='׼'; + if ShowModal=1 then + begin + ConTK1.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSX.ConTK3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK3'; + flagname:='װҪ'; + if ShowModal=1 then + begin + ConTK3.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSX.ConTK4PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK4'; + flagname:='㷽ʽ'; + if ShowModal=1 then + begin + ConTK4.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSX.ConTK5PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK5'; + flagname:='ձ׼'; + if ShowModal=1 then + begin + ConTK5.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSX.ConTk6PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK6'; + flagname:='Լ'; + if ShowModal=1 then + begin + ConTK6.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSX.ConTk2PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK2'; + flagname:='䷽óе'; + if ShowModal=1 then + begin + ConTK2.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSX.ConNoKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Trim(ConNo.Text)<>'' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrder_Main where OrderNo='''+Trim(ConNo.Text)+''''); + Open; + end; + FactoryNoName.Text:=Trim(ADOTemp.fieldbyname('YCLFactory').AsString); + end; + end; +end; + +end. diff --git a/艾登贸易管理/U_ClothContractInPutSXMX.dfm b/艾登贸易管理/U_ClothContractInPutSXMX.dfm new file mode 100644 index 0000000..74b5a62 --- /dev/null +++ b/艾登贸易管理/U_ClothContractInPutSXMX.dfm @@ -0,0 +1,647 @@ +object frmClothContractInPutSXMX: TfrmClothContractInPutSXMX + Left = 198 + Top = 90 + Width = 831 + Height = 622 + Caption = #32433#32447#35746#36141#21512#21516#24405#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 815 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 29 + Width = 815 + Height = 220 + Align = alTop + BevelInner = bvNone + BevelOuter = bvNone + Ctl3D = False + ParentCtl3D = False + TabOrder = 1 + object Label1: TLabel + Left = 24 + Top = 14 + Width = 65 + Height = 12 + Caption = #21512#21516#32534#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 290 + Top = 46 + Width = 65 + Height = 12 + Caption = #20132#36135#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 511 + Top = 222 + Width = 67 + Height = 12 + Caption = #20379' '#26041#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label2: TLabel + Left = 552 + Top = 14 + Width = 65 + Height = 12 + Caption = #31614#35746#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 290 + Top = 14 + Width = 67 + Height = 12 + Caption = #38656' '#26041#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 24 + Top = 46 + Width = 65 + Height = 12 + Caption = #31614#35746#22320#28857#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 552 + Top = 42 + Width = 65 + Height = 12 + Caption = #20132#36135#22320#28857#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 24 + Top = 68 + Width = 65 + Height = 36 + Caption = #20379#36135#36136#37327#13#10' '#21450#13#10#25216#26415#26631#20934#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 552 + Top = 68 + Width = 65 + Height = 36 + Caption = #36816#36755#26041#24335#13#10' '#21450#13#10#36153#29992#25215#25285#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 24 + Top = 118 + Width = 65 + Height = 12 + Caption = #21253#35013#35201#27714#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 290 + Top = 80 + Width = 65 + Height = 12 + Caption = #32467#31639#26041#24335#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 24 + Top = 154 + Width = 195 + Height = 12 + Caption = #39564#25910#26631#20934#12289#26041#27861#21450#25552#20986#24322#35758#26399#38480#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 24 + Top = 190 + Width = 91 + Height = 12 + Caption = #20854#23427#32422#23450#20107#39033#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object ConNo: TEdit + Left = 86 + Top = 11 + Width = 180 + Height = 18 + TabOrder = 0 + OnKeyPress = ConNoKeyPress + end + object DeliveryDate: TDateTimePicker + Left = 353 + Top = 42 + Width = 177 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 1 + end + object FactoryNoName: TcxButtonEdit + Tag = 77 + Left = 575 + Top = 218 + Hint = 'FactoryNo' + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = FactoryNoNamePropertiesButtonClick + Properties.OnChange = FactoryNoNamePropertiesChange + TabOrder = 2 + Visible = False + OnKeyDown = PRTCodeNameKeyDown + Width = 162 + end + object PanZDY: TPanel + Left = 841 + Top = 128 + Width = 202 + Height = 153 + TabOrder = 3 + Visible = False + object CXGridZDY: TcxGrid + Left = 3 + Top = 4 + Width = 197 + Height = 113 + TabOrder = 0 + object TVZDY: TcxGridDBTableView + OnKeyPress = TVZDYKeyPress + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TVZDYCellDblClick + DataController.DataSource = DataSource2 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + object VHelpZDYName: TcxGridDBColumn + DataBinding.FieldName = 'ZDYName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.handBlack + Width = 163 + IsCaptionAssigned = True + end + end + object CXGridZDYLevel1: TcxGridLevel + GridView = TVZDY + end + end + object Button1: TButton + Left = 64 + Top = 120 + Width = 65 + Height = 25 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button1Click + end + end + object QDTime: TDateTimePicker + Left = 614 + Top = 10 + Width = 162 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 4 + end + object CompanyName: TcxButtonEdit + Left = 353 + Top = 10 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = CompanyNamePropertiesButtonClick + TabOrder = 5 + OnKeyDown = PRTCodeNameKeyDown + Width = 177 + end + object QDPalce: TEdit + Left = 86 + Top = 43 + Width = 179 + Height = 18 + TabOrder = 6 + Text = #26607#26725 + end + object JHPlace: TcxButtonEdit + Left = 614 + Top = 38 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = JHPlacePropertiesButtonClick + TabOrder = 7 + Width = 162 + end + object ConTK1: TcxButtonEdit + Left = 86 + Top = 76 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTK1PropertiesButtonClick + TabOrder = 8 + Width = 183 + end + object ConTk2: TcxButtonEdit + Left = 614 + Top = 76 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTk2PropertiesButtonClick + TabOrder = 9 + Width = 162 + end + object ConTK3: TcxButtonEdit + Left = 86 + Top = 114 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTK3PropertiesButtonClick + TabOrder = 10 + Width = 691 + end + object ConTK4: TcxButtonEdit + Left = 353 + Top = 76 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTK4PropertiesButtonClick + TabOrder = 11 + Width = 177 + end + object ConTK5: TcxButtonEdit + Left = 216 + Top = 150 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTK5PropertiesButtonClick + TabOrder = 12 + Width = 563 + end + object ConTk6: TcxButtonEdit + Left = 110 + Top = 186 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTk6PropertiesButtonClick + TabOrder = 13 + Width = 669 + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 249 + Width = 815 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentFont = False + ShowCaptions = True + TabOrder = 2 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 278 + Width = 815 + Height = 305 + Align = alClient + TabOrder = 3 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1Column1 + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + object v1Column3: TcxGridDBColumn + Tag = 1 + Caption = #20379#26041 + DataBinding.FieldName = 'FactoryNoName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v1Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 117 + end + object v1Column1: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 100 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 103 + end + object v1Price: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.handBlack + Width = 58 + end + object v1ClothQty: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v1ClothQtyPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 69 + end + object v1ClothUnit: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'C_Qty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.handBlack + Width = 69 + end + object v1Column2: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'C_Unit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.ImmediatePost = True + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v1Column4: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'C_Note' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 85 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 384 + Top = 65533 + end + object ADOCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 520 + Top = 5 + end + object DataSource1: TDataSource + DataSet = Order_Sub + Left = 344 + Top = 376 + end + object Order_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 384 + Top = 376 + end + object DataSource2: TDataSource + DataSet = ADOZDY + Left = 240 + end + object ADOZDY: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 280 + Top = 65533 + end + object CDS_ZDY: TClientDataSet + Aggregates = <> + Params = <> + Left = 208 + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 456 + Top = 5 + end +end diff --git a/艾登贸易管理/U_ClothContractInPutSXMX.pas b/艾登贸易管理/U_ClothContractInPutSXMX.pas new file mode 100644 index 0000000..1d2366c --- /dev/null +++ b/艾登贸易管理/U_ClothContractInPutSXMX.pas @@ -0,0 +1,931 @@ +unit U_ClothContractInPutSXMX; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer, + cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB, + ExtCtrls, BtnEdit, cxDropDownEdit; + +type + TfrmClothContractInPutSXMX = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ScrollBox1: TScrollBox; + Label1: TLabel; + ConNo: TEdit; + Label4: TLabel; + DeliveryDate: TDateTimePicker; + Label5: TLabel; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1PRTSpec: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1ClothQty: TcxGridDBColumn; + v1Price: TcxGridDBColumn; + v1ClothUnit: TcxGridDBColumn; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + DataSource1: TDataSource; + Order_Sub: TClientDataSet; + DataSource2: TDataSource; + ADOZDY: TADOQuery; + CDS_ZDY: TClientDataSet; + FactoryNoName: TcxButtonEdit; + ADOQuery1: TADOQuery; + v1Column1: TcxGridDBColumn; + PanZDY: TPanel; + CXGridZDY: TcxGrid; + TVZDY: TcxGridDBTableView; + VHelpZDYName: TcxGridDBColumn; + CXGridZDYLevel1: TcxGridLevel; + Button1: TButton; + v1Column4: TcxGridDBColumn; + Label2: TLabel; + QDTime: TDateTimePicker; + Label3: TLabel; + CompanyName: TcxButtonEdit; + Label6: TLabel; + QDPalce: TEdit; + Label8: TLabel; + JHPlace: TcxButtonEdit; + Label7: TLabel; + ConTK1: TcxButtonEdit; + Label9: TLabel; + ConTk2: TcxButtonEdit; + Label10: TLabel; + ConTK3: TcxButtonEdit; + Label11: TLabel; + ConTK4: TcxButtonEdit; + Label12: TLabel; + ConTK5: TcxButtonEdit; + Label13: TLabel; + ConTk6: TcxButtonEdit; + v1Column3: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + procedure TBCloseClick(Sender: TObject); + procedure TVZDYCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button1Click(Sender: TObject); + procedure PRTCodeNameKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); + procedure TVZDYKeyPress(Sender: TObject; var Key: Char); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PRTUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure FactoryNoNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PRTMFPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1OrderQtyPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1ClothQtyPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure FactoryNoNamePropertiesChange(Sender: TObject); + procedure CompanyNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure JHPlacePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTK1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTK3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTK4PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTK5PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTk6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTk2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + procedure v1Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + private + FXS:Integer; + procedure InitData(); + procedure ZDYHelp(FButn:TcxButtonEdit;LType:string); + function SaveData():Boolean; + { Private declarations } + public + PState,PCopyInt:Integer; + FMainId,FConNo:String; + + { Public declarations } + end; + +var + frmClothContractInPutSXMX: TfrmClothContractInPutSXMX; + +implementation +uses + U_DataLink,U_ZDYHelp,U_Fun; + +{$R *.dfm} + +procedure TfrmClothContractInPutSXMX.TBCloseClick(Sender: TObject); +begin + Close; +end; + +procedure TfrmClothContractInPutSXMX.InitData(); +begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add(' exec ClothContractSX_QryList :MainId,:WSql'); + if PState=1 then + begin + ADOQuery1.Parameters.ParamByName('MainId').Value:=Trim(FMainId); + ADOQuery1.Parameters.ParamByName('WSQl').Value:=''; + end; + if PState=0 then + begin + ADOQuery1.Parameters.ParamByName('MainId').Value:=Trim(FMainId); + ADOQuery1.Parameters.ParamByName('WSql').Value:=' and 1<>1 '; + end; + Open; + end; + SCreateCDS20(ADOQuery1,Order_Sub); + SInitCDSData20(ADOQuery1,Order_Sub); + SCSHData(ADOQuery1,ScrollBox1,0); + if PState=0 then + begin + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1* from ContractSX_Main order by FillTime desc '); + Open; + end; + QDTime.DateTime:=SGetServerDate(ADOTemp); + DeliveryDate.DateTime:=SGetServerDate(ADOTemp); + QDTime.Checked:=True; + DeliveryDate.Checked:=False; + QDPalce.Text:=''; + end; + PanZDY.Visible:=False; +end; + +procedure TfrmClothContractInPutSXMX.ZDYHelp(FButn:TcxButtonEdit;LType:string); +var + FType,ZDYName,FText:String; +begin + PanZDY.Visible:=True; + PanZDY.Left:=FButn.Left; + PanZDY.Top:=FButn.Top+FButn.Height; + with ADOZDY do + begin + Filtered:=False; + Close; + SQL.Clear; + SQL.Add('select RTrim(ZDYNo) ZDYNo,RTrim(ZDYName) ZDYName from KH_ZDY where Type='''+Trim(LType)+''''); + Open; + end; + FText:=Trim(FButn.Text); + if FText<>'' then + SDofilter(ADOZDY,' ZDYName like '+QuotedStr('%'+Trim(FText)+'%')) + else + SDofilter(ADOZDY,''); + VHelpZDYName.Summary.GroupFormat:=Trim(FButn.Name); +end; + +procedure TfrmClothContractInPutSXMX.TVZDYCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + FName:string; +begin + if ADOZDY.IsEmpty then Exit; + FName:=Trim(VHelpZDYName.Summary.GroupFormat); + TcxButtonEdit(FindComponent(FName)).Text:=Trim(ADOZDY.fieldbyname('ZDYName').AsString); + TcxButtonEdit(FindComponent(FName)).Hint:=Trim(ADOZDY.fieldbyname('ZDYNO').AsString); + PanZDY.Visible:=False; +end; + +procedure TfrmClothContractInPutSXMX.Button1Click(Sender: TObject); +begin + PanZDY.Visible:=False; +end; + +procedure TfrmClothContractInPutSXMX.PRTCodeNameKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + {if (key=vk_return) or (Key=vk_Down) then + begin + if ADOZDY.Active then + CXGridZDY.SetFocus; + end; } +end; + +procedure TfrmClothContractInPutSXMX.TVZDYKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if ADOZDY.IsEmpty then Exit; + TcxButtonEdit(FindComponent(VHelpZDYName.Summary.GroupFormat)).Text:=Trim(ADOZDY.fieldbyname('ZDYName').AsString); + TcxButtonEdit(FindComponent(VHelpZDYName.Summary.GroupFormat)).Hint:=Trim(ADOZDY.fieldbyname('ZDYNO').AsString); + PanZDY.Visible:=False; + ADOZDY.Active:=False; + end; +end; + +procedure TfrmClothContractInPutSXMX.FormShow(Sender: TObject); +begin + {if Trim(DParameters1)='1' then + begin + v1Price.Visible:=False; + v1ClothQty.Visible:=False; + v1PRTQty.Visible:=False; + end else + begin + v1Price.Visible:=True; + v1ClothQty.Visible:=True; + v1PRTQty.Visible:=True; + end; } + InitData(); + if PCopyInt=1 then + begin + FMainId:=''; + FConNo:=''; + ConNo.Text:=''; + with Order_Sub do + begin + First; + while not Eof do + begin + Edit; + FieldByName('SubId').Value:=''; + Post; + Next; + end; + end; + end; +end; + +function TfrmClothContractInPutSXMX.SaveData():Boolean; +var + maxno,maxSubNo:String; +begin + try + ADOCmd.Connection.BeginTrans; + ///ӱ + with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOCmd,maxno,'SM','ContractSX_Main',2,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ˮ쳣','ʾ',0); + exit; + end; + end else + begin + maxno:=Trim(FMainId); + end; + + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from ContractSX_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + Append; + end + else begin + Edit; + end; + FieldByName('MainId').Value:=Trim(maxno); + SSetsaveSql(ADOCmd,'ContractSX_Main',ScrollBox1,0); + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + FieldByName('FactoryNoName').Value:=Trim(Order_Sub.fieldbyname('FactoryNoName').AsString); + Post; + end; + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOCmd,maxSubNo,'SS','ContractSX_Sub',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxSubNo:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from ContractSX_Sub where MainId='''+Trim(maxno)+''''); + sql.Add(' and SubId='''+Trim(maxSubNo)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + ADOCmd.Append + else + ADOCmd.Edit; + FieldByName('MainId').Value:=Trim(maxno); + FieldByName('SubId').Value:=Trim(maxSubNo); + FieldByName('C_Unit').Value:=Trim(Order_Sub.fieldbyname('C_Unit').AsString); + SSetSaveDataCDSNew(ADOCmd,Tv1,Order_Sub,'ContractSX_Sub',0); + if Trim(Order_Sub.fieldbyname('C_Qty').AsString)='' then + begin + FieldByName('C_Qty').Value:=0; + end; + if Trim(Order_Sub.fieldbyname('Price').AsString)='' then + begin + FieldByName('Price').Value:=0; + end; + ADOCmd.FieldByName('C_Unit').Value:=Trim(Order_Sub.fieldbyname('C_Unit').AsString); + ADOCmd.Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxSubNo); + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update ContractSX_Sub Set C_Unit='''+Trim(Order_Sub.fieldbyname('C_Unit').AsString)+''''); + sql.Add(' where Subid='''+Trim(Order_Sub.fieldbyname('Subid').AsString)+''''); + ExecSQL; + end; + //Order_Sub.Post; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TfrmClothContractInPutSXMX.TBSaveClick(Sender: TObject); +begin + DeliveryDate.SetFocus; + if Trim(ConNo.Text)='' then + begin + Application.MessageBox('ͬŲΪգ','ʾ',0); + Exit; + end; + {if Trim(FactoryNoName.Text)='' then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; } + if Order_Sub.IsEmpty then + begin + Application.MessageBox('ϸΪգ','ʾ',0); + exit; + end; + if Order_Sub.Locate('C_Qty',null,[]) then + begin + Application.MessageBox('Ϊ!','ʾ',0); + Exit; + end; + if Order_Sub.Locate('C_Unit',null,[]) then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; + if Order_Sub.Locate('FactoryNoName',null,[]) then + begin + Application.MessageBox('Ϊ!','ʾ',0); + Exit; + end; + if PState=1 then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from ContractSX_Cloth_DH where MainId='''+Trim(FMainId)+''''); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + if Trim(FConNo)<>Trim(ConNo.Text) then + begin + Application.MessageBox('Ѿ޸ĺͬ!','ʾ',0); + Exit; + end; + end; + end; + if SaveData() then + begin + Application.MessageBox('ɹ','ʾ',0); + ModalResult:=1; + end; + +end; + +procedure TfrmClothContractInPutSXMX.v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('OrderUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSXMX.v1PRTUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PRTUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSXMX.v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdColor'; + flagname:='ɫ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PRTColor').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSXMX.ToolButton1Click(Sender: TObject); +begin + with Order_Sub do + begin + Append; + Post; + end; +end; + +procedure TfrmClothContractInPutSXMX.ToolButton2Click(Sender: TObject); +begin + if Order_Sub.IsEmpty then Exit; + if Trim(Order_Sub.fieldbyname('SubId').AsString)<>'' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub_MX where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + Application.MessageBox('ѵɾ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; + Order_Sub.Delete; +end; + +procedure TfrmClothContractInPutSXMX.FactoryNoNamePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + if Trim(FMainId)<>'' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR A where exists('); + sql.Add('select * from ContractSX_Sub_MX B inner join Contract_Sub C on B.SubId=C.SubId '); + sql.Add(' where C.Mainid='''+Trim(FMainId)+''''); + sql.Add(' and B.MXID=A.YFTypeId)'); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + Application.MessageBox('ѾӦ޸ĹӦ!','ʾ',0); + Exit; + end; + end; + + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:=''; + MainType:='YCLFactory'; + if ShowModal=1 then + begin + FXS:=99; + FactoryNoName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + FactoryNoName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSXMX.v1Column1PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ClothSX'; + flagname:='ɴ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('C_CodeName').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.Order_Sub.FieldByName('C_Code').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSXMX.v1PRTMFPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='KZ'; + flagname:='صλ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('KZUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSXMX.v1OrderQtyPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MF'; + flagname:='ŷλ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('MFUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSXMX.v1ClothQtyPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PriceUnit'; + flagname:='Ƽ۵λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PriceUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSXMX.v1Column2PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('C_Unit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSXMX.FactoryNoNamePropertiesChange( + Sender: TObject); +begin + {if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(FactoryNoName,'FactoryNo1Name'); } +end; + +procedure TfrmClothContractInPutSXMX.CompanyNamePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdDefStr2'; + flagname:='跽'; + if ShowModal=1 then + begin + FXS:=99; + CompanyName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSXMX.JHPlacePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='JHPlace'; + flagname:='ص'; + if ShowModal=1 then + begin + JHPlace.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSXMX.ConTK1PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK1'; + flagname:='׼'; + if ShowModal=1 then + begin + ConTK1.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSXMX.ConTK3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK3'; + flagname:='װҪ'; + if ShowModal=1 then + begin + ConTK3.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSXMX.ConTK4PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK4'; + flagname:='㷽ʽ'; + if ShowModal=1 then + begin + ConTK4.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSXMX.ConTK5PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK5'; + flagname:='ձ׼'; + if ShowModal=1 then + begin + ConTK5.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSXMX.ConTk6PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK6'; + flagname:='Լ'; + if ShowModal=1 then + begin + ConTK6.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSXMX.ConTk2PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK2'; + flagname:='䷽óе'; + if ShowModal=1 then + begin + ConTK2.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractInPutSXMX.ConNoKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Trim(ConNo.Text)<>'' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrder_Main where OrderNo='''+Trim(ConNo.Text)+''''); + Open; + end; + FactoryNoName.Text:=Trim(ADOTemp.fieldbyname('YCLFactory').AsString); + end; + end; +end; + +procedure TfrmClothContractInPutSXMX.v1Column3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + if Trim(FMainId)<>'' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR A where exists('); + sql.Add('select * from ContractSX_Sub_MX B inner join Contract_Sub C on B.SubId=C.SubId '); + sql.Add(' where C.Mainid='''+Trim(FMainId)+''''); + sql.Add(' and B.MXID=A.YFTypeId)'); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + Application.MessageBox('ѾӦ޸ĹӦ!','ʾ',0); + Exit; + end; + end; + + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:=''; + MainType:='YCLFactory'; + if ShowModal=1 then + begin + with Order_Sub do + begin + Edit; + FieldByName('FactoryNoName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +end. diff --git a/艾登贸易管理/U_ClothContractKCList.dfm b/艾登贸易管理/U_ClothContractKCList.dfm new file mode 100644 index 0000000..b97e94f --- /dev/null +++ b/艾登贸易管理/U_ClothContractKCList.dfm @@ -0,0 +1,635 @@ +object frmClothContractKCList: TfrmClothContractKCList + Left = 100 + Top = 35 + Width = 1238 + Height = 653 + Caption = #22383#24067#24211#23384#27719#24635#26597#35810 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1222 + AutoSize = True + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBClose: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1222 + Height = 54 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 22 + Width = 52 + Height = 12 + Caption = #30331#35760#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 161 + Top = 22 + Width = 18 + Height = 12 + Caption = '---' + end + object Label3: TLabel + Left = 283 + Top = 22 + Width = 52 + Height = 12 + Caption = #21512#21516#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 444 + Top = 22 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 612 + Top = 22 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 748 + Top = 22 + Width = 39 + Height = 12 + Caption = #22383#24067#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 892 + Top = 22 + Width = 26 + Height = 12 + Caption = #26579#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 18 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 179 + Top = 18 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object ConNo: TEdit + Tag = 2 + Left = 337 + Top = 18 + Width = 81 + Height = 20 + TabOrder = 2 + OnChange = ConNoChange + end + object C_CodeName: TEdit + Tag = 2 + Left = 497 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = ConNoChange + end + object C_Spec: TEdit + Tag = 2 + Left = 640 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 4 + OnChange = ConNoChange + end + object FactoryNoName: TEdit + Tag = 2 + Left = 792 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 5 + OnChange = ConNoChange + end + object FirstName: TEdit + Tag = 2 + Left = 920 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 6 + OnChange = ConNoChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 86 + Width = 1222 + Height = 529 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column6 + end + item + Kind = skSum + Column = v1Column3 + end + item + Kind = skSum + Column = v1Column7 + end + item + Kind = skSum + Column = v1Column8 + 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 + Column = v1Column4 + end + item + Kind = skSum + Column = v1Column14 + end + item + Kind = skAverage + end + item + Kind = skAverage + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1OrderNo: TcxGridDBColumn + Caption = #21512#21516#32534#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 103 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = #22383#24067#21378 + DataBinding.FieldName = 'FactoryNoName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 171 + end + object v1Column2: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_CodeName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 134 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 93 + end + object v1Column5: TcxGridDBColumn + Caption = #26579#21378 + DataBinding.FieldName = 'FirstName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 104 + end + object v1Column1: TcxGridDBColumn + Caption = #37319#36141#21305#25968 + DataBinding.FieldName = 'Qty1' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column9: TcxGridDBColumn + Caption = #37319#36141#25968#37327 + DataBinding.FieldName = 'C_Qty' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column19: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'C_unit' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column6: TcxGridDBColumn + Caption = #21040#36135#21305#25968 + DataBinding.FieldName = 'DHPS' + HeaderAlignmentHorz = taCenter + Width = 59 + end + object v1Column3: TcxGridDBColumn + Caption = #21040#36135#25968#37327 + DataBinding.FieldName = 'DHQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 64 + end + object v1Column4: TcxGridDBColumn + Caption = #25237#24067#21305#25968 + DataBinding.FieldName = 'TPPS' + HeaderAlignmentHorz = taCenter + Styles.Content = FontBlue + Styles.Footer = FontBlue + Styles.Header = FontBlue + Width = 58 + end + object v1Column14: TcxGridDBColumn + Caption = #25237#24067#25968#37327 + DataBinding.FieldName = 'TPQty' + HeaderAlignmentHorz = taCenter + Styles.Content = FontBlue + Styles.Footer = FontBlue + Styles.Header = FontBlue + Width = 59 + end + object v1Column7: TcxGridDBColumn + Caption = #24211#23384#21305#25968 + DataBinding.FieldName = 'KCPS' + HeaderAlignmentHorz = taCenter + Styles.Content = FoneRed + Styles.Footer = FoneRed + Styles.Header = FoneRed + Width = 61 + end + object v1Column8: TcxGridDBColumn + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'KCQty' + HeaderAlignmentHorz = taCenter + Styles.Content = FoneRed + Styles.Footer = FoneRed + Styles.Header = FoneRed + Width = 58 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 448 + Top = 168 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 936 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1000 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1040 + Top = 8 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 1168 + Top = 8 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 1096 + Top = 8 + end + object ClientDataSet3: TClientDataSet + Aggregates = <> + Params = <> + Left = 576 + Top = 168 + end + object DataSource2: TDataSource + DataSet = ClientDataSet2 + Left = 512 + Top = 168 + end + object DataSource3: TDataSource + DataSet = ClientDataSet3 + Left = 544 + Top = 168 + end + object ClientDataSet2: TClientDataSet + Aggregates = <> + Params = <> + Left = 480 + Top = 168 + 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 = 320 + Top = 168 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 352 + Top = 168 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 384 + Top = 168 + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 416 + Top = 168 + end + object ThreeColorBase: TcxStyleRepository + Left = 139 + Top = 80 + object SHuangSe: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = 4707838 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + TextColor = clBtnText + end + object SkyBlue: TcxStyle + AssignedValues = [svColor, svFont] + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object Default: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object QHuangSe: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object FontBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object TextSHuangSe: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlack + end + object FonePurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindow + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlack + end + object FoneClMaroon: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clMaroon + end + object FoneRed: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clRed + end + object RowColor: TcxStyle + AssignedValues = [svColor] + Color = 16311512 + end + object handBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxBlue: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16711731 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + end +end diff --git a/艾登贸易管理/U_ClothContractKCList.pas b/艾登贸易管理/U_ClothContractKCList.pas new file mode 100644 index 0000000..6b0a810 --- /dev/null +++ b/艾登贸易管理/U_ClothContractKCList.pas @@ -0,0 +1,202 @@ +unit U_ClothContractKCList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, + RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, + cxTextEdit; + +type + TfrmClothContractKCList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Label2: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + ConNo: TEdit; + Label5: TLabel; + C_CodeName: TEdit; + Order_Main: TClientDataSet; + Label4: TLabel; + C_Spec: TEdit; + ClientDataSet3: TClientDataSet; + DataSource2: TDataSource; + DataSource3: TDataSource; + ClientDataSet2: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1Column3: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + cxGridPopupMenu2: TcxGridPopupMenu; + Label6: TLabel; + FactoryNoName: TEdit; + Label7: TLabel; + FirstName: TEdit; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + v1Column19: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + ThreeColorBase: TcxStyleRepository; + SHuangSe: TcxStyle; + SkyBlue: TcxStyle; + Default: TcxStyle; + QHuangSe: TcxStyle; + Red: TcxStyle; + FontBlue: TcxStyle; + TextSHuangSe: TcxStyle; + FonePurple: TcxStyle; + FoneClMaroon: TcxStyle; + FoneRed: TcxStyle; + RowColor: TcxStyle; + handBlack: TcxStyle; + cxBlue: TcxStyle; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + private + FInt,PFInt:Integer; + procedure InitGrid(); + procedure InitForm(); + procedure InitGridWSQL(FWSQL:String); + { Private declarations } + public + { Public declarations } + end; + +var + frmClothContractKCList: TfrmClothContractKCList; + +implementation +uses + U_DataLink,U_ClothContractInPut,U_Fun,U_ProductOrderList,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmClothContractKCList.FormDestroy(Sender: TObject); +begin + frmClothContractKCList:=nil; +end; + +procedure TfrmClothContractKCList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmClothContractKCList.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid(self.Caption+tv1.Name,Tv1,'ָʾ'); +end; + +procedure TfrmClothContractKCList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec P_Get_PBKC :begdate,:enddate'); + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.Date); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',EndDate.Date+1); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmClothContractKCList.InitGridWSQL(FWSQL:String); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec P_View_ClothHZ :begdate,:enddate,:WSQL'); + Parameters.ParamByName('begdate').Value:='1900-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + Parameters.ParamByName('WSQL').Value:=FWSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmClothContractKCList.InitForm(); +begin + ReadCxGrid(self.Caption+tv1.Name,Tv1,'ָʾ'); + EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + BegDate.DateTime:=EndDate.DateTime-15; + InitGrid(); +end; + +procedure TfrmClothContractKCList.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + + + +procedure TfrmClothContractKCList.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmClothContractKCList.ConNoChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothContractKCList.FormShow(Sender: TObject); +begin + InitForm(); +end; + +end. diff --git a/艾登贸易管理/U_ClothContractList.dfm b/艾登贸易管理/U_ClothContractList.dfm new file mode 100644 index 0000000..509da43 --- /dev/null +++ b/艾登贸易管理/U_ClothContractList.dfm @@ -0,0 +1,952 @@ +object frmClothContractList: TfrmClothContractList + Left = -8 + Top = -8 + Width = 1382 + Height = 754 + Caption = #22383#24067#37319#36141#21512#21516 + 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 = 1366 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 107 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBAdd: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object TBDel: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object Tchk: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #23436#25104 + ImageIndex = 41 + OnClick = TchkClick + end + object TNochk: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #25764#38144#23436#25104 + ImageIndex = 86 + OnClick = TNochkClick + end + object TBExport: TToolButton + Left = 465 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 528 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object ToolButton6: TToolButton + Left = 591 + Top = 0 + Width = 48 + Caption = 'ToolButton6' + ImageIndex = 115 + Style = tbsSeparator + Visible = False + end + object TBClose: TToolButton + Left = 639 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + object ToolButton1: TToolButton + Left = 702 + Top = 0 + Width = 41 + Caption = 'ToolButton1' + ImageIndex = 60 + Style = tbsSeparator + Visible = False + end + object ToolButton2: TToolButton + Left = 743 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + Visible = False + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 806 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 869 + Top = 0 + AutoSize = True + Caption = #21040#22383#30830#23450 + ImageIndex = 113 + Visible = False + OnClick = ToolButton4Click + end + object ToolButton5: TToolButton + Left = 956 + Top = 0 + Caption = #22383#24067#39046#26009#30830#23450 + ImageIndex = 114 + Visible = False + OnClick = ToolButton5Click + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1366 + Height = 54 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 21 + Top = 22 + Width = 52 + Height = 12 + Caption = #31614#35746#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 161 + Top = 22 + Width = 18 + Height = 12 + Caption = '---' + end + object Label3: TLabel + Left = 283 + Top = 22 + Width = 52 + Height = 12 + Caption = #21512#21516#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 444 + Top = 22 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 604 + Top = 22 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 740 + Top = 22 + Width = 39 + Height = 12 + Caption = #20379#24212#21830 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 18 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 179 + Top = 18 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object ConNoM: TEdit + Tag = 2 + Left = 337 + Top = 18 + Width = 81 + Height = 20 + TabOrder = 2 + OnChange = ConNoMChange + OnKeyPress = conPress + end + object C_CodeNameM: TEdit + Tag = 2 + Left = 497 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = ConNoMChange + end + object C_Spec: TEdit + Tag = 2 + Left = 632 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 4 + OnChange = ConNoMChange + end + object Button1: TButton + Left = 872 + Top = 15 + Width = 75 + Height = 25 + Caption = #22686#34892 + TabOrder = 5 + Visible = False + OnClick = Button1Click + end + object Button2: TButton + Left = 908 + Top = 15 + Width = 75 + Height = 25 + Caption = #21024#34892 + TabOrder = 6 + Visible = False + OnClick = Button2Click + end + object Button3: TButton + Left = 988 + Top = 15 + Width = 75 + Height = 25 + Caption = #21040#22383#30830#23450 + TabOrder = 7 + Visible = False + OnClick = Button3Click + end + object Button4: TButton + Left = 1048 + Top = 15 + Width = 86 + Height = 25 + Caption = #22383#24067#39046#26009#30830#23450 + TabOrder = 8 + Visible = False + OnClick = Button4Click + end + object FactoryNoName: TEdit + Tag = 2 + Left = 784 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 9 + OnChange = ConNoMChange + end + end + object ScrollBox1: TScrollBox + Left = -172 + Top = 112 + Width = 1351 + Height = 545 + BorderStyle = bsNone + TabOrder = 2 + object cxGrid1: TcxGrid + Left = 0 + Top = 0 + Width = 815 + Height = 545 + Align = alClient + TabOrder = 0 + object Tv1: TcxGridDBTableView + OnMouseDown = Tv1MouseDown + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + OnCustomDrawCell = Tv1CustomDrawCell + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1C_Qty + end + item + Kind = skSum + Column = v1Price + end + item + Kind = skSum + Column = v1Money + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1OrderNo: TcxGridDBColumn + Caption = #21512#21516#32534#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 80 + end + object v1Column2: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_CodeName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 100 + end + object v1Column1: TcxGridDBColumn + Caption = #25351#31034#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DeliveryDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 75 + end + object v1Column5: TcxGridDBColumn + Caption = #31614#35746#26085#26399 + DataBinding.FieldName = 'QDTime' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 75 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = #20379#26041 + DataBinding.FieldName = 'FactoryNoName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 100 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 80 + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'MFQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'KZQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object v1Qty1: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'Qty1' + HeaderAlignmentHorz = taCenter + Hidden = True + Styles.Header = DataLink_TradeManage.Default + Width = 50 + end + object v1C_Qty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'C_Qty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 50 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'C_Unit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 50 + end + object v1Price: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object v1PriceUnit: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object v1Money: TcxGridDBColumn + Caption = #24635#20215 + DataBinding.FieldName = 'Money' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object v1Column3: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'Sdefstr1' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column6: TcxGridDBColumn + Caption = #35745#21010#32553#29575'(%)' + DataBinding.FieldName = 'Qty2' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column7: TcxGridDBColumn + Caption = #26579#21378 + DataBinding.FieldName = 'Sdefstr2' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column8: TcxGridDBColumn + Caption = #26579#21378#24037#33402 + DataBinding.FieldName = 'Sdefstr3' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column9: TcxGridDBColumn + Caption = #26579#21378#20215#26684 + DataBinding.FieldName = 'Sdefstr4' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column10: TcxGridDBColumn + Caption = #25351#31034#21333#21495 + DataBinding.FieldName = 'sdefstr5' + Visible = False + HeaderAlignmentHorz = taCenter + Hidden = True + Width = 70 + end + object v1Column11: TcxGridDBColumn + Caption = #24037#21378#32534#21495 + DataBinding.FieldName = 'sdefstr6' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column4: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'C_Note' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object v1DHQty: TcxGridDBColumn + Caption = #21040#36135#21305#25968 + DataBinding.FieldName = 'DHQty' + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v1MXQty: TcxGridDBColumn + Caption = #21040#36135#25968#37327 + DataBinding.FieldName = 'MXQty' + HeaderAlignmentHorz = taCenter + Width = 65 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel2: TPanel + Left = 823 + Top = 0 + Width = 528 + Height = 545 + Align = alRight + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 1 + Visible = False + object cxGrid3: TcxGrid + Left = 2 + Top = 195 + Width = 524 + Height = 348 + Align = alClient + TabOrder = 0 + object Tv3: TcxGridDBTableView + OnMouseDown = Tv3MouseDown + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource3 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v3Column2 + end + item + Kind = skSum + Column = v3Column3 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_TradeManage.Default + object cxGridDBColumn1: TcxGridDBColumn + Caption = #35746#21333#32534#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object cxGridDBPRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 42 + end + object v3Column6: TcxGridDBColumn + Caption = #25237#22383#26085#26399 + DataBinding.FieldName = 'TPDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v3Column3: TcxGridDBColumn + Caption = #25237#22383#21305#25968 + DataBinding.FieldName = 'Qty1' + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v3Column2: TcxGridDBColumn + Caption = #25968#37327'('#35745#21010')' + DataBinding.FieldName = 'TPQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v3Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 75 + end + object v3Column4: TcxGridDBColumn + Caption = #25968#37327#20844#24046 + DataBinding.FieldName = 'Qty2' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v3Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 63 + end + object v3Column5: TcxGridDBColumn + Caption = #35745#21010#32553#29575'(%)' + DataBinding.FieldName = 'Qty3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 78 + end + object v3Column7: TcxGridDBColumn + Caption = #25237#22383#20154 + DataBinding.FieldName = 'TPPerson' + HeaderAlignmentHorz = taCenter + Width = 48 + end + object v3Column8: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'TPNote' + Width = 73 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv3 + end + end + object cxGrid2: TcxGrid + Left = 2 + Top = 2 + Width = 524 + Height = 193 + Align = alTop + TabOrder = 1 + object Tv2: TcxGridDBTableView + OnMouseDown = Tv2MouseDown + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv2CellClick + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2MxQty + end + item + Kind = skSum + Column = v2Column1 + end + item + Kind = skSum + Column = v2Column2 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + object v2ComeDate: TcxGridDBColumn + Caption = #21040#36135#26085#26399 + DataBinding.FieldName = 'ComeDate' + PropertiesClassName = 'TcxDateEditProperties' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object v2Column3: TcxGridDBColumn + Caption = #23384#25918#22320#28857 + DataBinding.FieldName = 'RKPlace' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 65 + end + object v2BatchNo: TcxGridDBColumn + Caption = #25209#21495 + DataBinding.FieldName = 'BatchNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 61 + end + object v2Qty1: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'Qty1' + Visible = False + HeaderAlignmentHorz = taCenter + Hidden = True + Styles.Header = DataLink_TradeManage.Default + Width = 44 + end + object v2MxQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'MxQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 48 + end + object v2MxNote: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'MxNote' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v2Column1: TcxGridDBColumn + Tag = 2 + Caption = #24211#23384#21305#25968 + DataBinding.FieldName = 'KCPS' + Visible = False + HeaderAlignmentHorz = taCenter + Hidden = True + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + object v2Column2: TcxGridDBColumn + Tag = 2 + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'KCSL' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv2 + end + end + end + object cxSplitter1: TcxSplitter + Left = 815 + Top = 0 + Width = 8 + Height = 545 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salRight + Control = Panel2 + Visible = False + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 86 + Width = 1366 + Height = 22 + Align = alTop + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Style = 9 + TabIndex = 0 + TabOrder = 3 + Tabs.Strings = ( + #26410#23436#25104 + #23436#25104 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectBottom = 22 + ClientRectRight = 1366 + ClientRectTop = 19 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 1140 + Top = 52 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 1092 + Top = 16 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1120 + Top = 20 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1032 + Top = 52 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 1080 + Top = 76 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 1104 + Top = 64 + end + object ClientDataSet3: TClientDataSet + Aggregates = <> + Params = <> + Left = 1112 + Top = 240 + end + object DataSource2: TDataSource + DataSet = ClientDataSet2 + Left = 880 + Top = 176 + end + object DataSource3: TDataSource + DataSet = ClientDataSet3 + Left = 1112 + Top = 216 + end + object ClientDataSet2: TClientDataSet + Aggregates = <> + Params = <> + Left = 920 + Top = 224 + 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 = 352 + Top = 192 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_PRT + Left = 400 + Top = 192 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 416 + Top = 248 + end + object CDS_PRT: TClientDataSet + Aggregates = <> + Params = <> + Left = 680 + Top = 32 + end +end diff --git a/艾登贸易管理/U_ClothContractList.pas b/艾登贸易管理/U_ClothContractList.pas new file mode 100644 index 0000000..1b007c7 --- /dev/null +++ b/艾登贸易管理/U_ClothContractList.pas @@ -0,0 +1,1036 @@ +unit U_ClothContractList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, + RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, + cxTextEdit, cxPC; + +type + TfrmClothContractList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Label2: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + ConNoM: TEdit; + Label5: TLabel; + C_CodeNameM: TEdit; + TBExport: TToolButton; + Order_Main: TClientDataSet; + Label4: TLabel; + C_Spec: TEdit; + ScrollBox1: TScrollBox; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1C_Qty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1Price: TcxGridDBColumn; + v1PriceUnit: TcxGridDBColumn; + v1Money: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + ToolButton2: TToolButton; + ToolButton3: TToolButton; + ToolButton4: TToolButton; + ToolButton1: TToolButton; + ClientDataSet3: TClientDataSet; + DataSource2: TDataSource; + DataSource3: TDataSource; + ClientDataSet2: TClientDataSet; + ToolButton5: TToolButton; + ToolButton6: TToolButton; + v1Qty1: TcxGridDBColumn; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + Panel2: TPanel; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBPRTColor: TcxGridDBColumn; + v3Column3: TcxGridDBColumn; + v3Column2: TcxGridDBColumn; + v3Column4: TcxGridDBColumn; + v3Column5: TcxGridDBColumn; + v3Column6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2ComeDate: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2BatchNo: TcxGridDBColumn; + v2Qty1: TcxGridDBColumn; + v2MxQty: TcxGridDBColumn; + v2MxNote: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + cxGrid2Level1: TcxGridLevel; + cxSplitter1: TcxSplitter; + v3Column7: TcxGridDBColumn; + v3Column8: TcxGridDBColumn; + Button1: TButton; + Button2: TButton; + Button3: TButton; + Button4: TButton; + CDS_PRT: TClientDataSet; + v1Column3: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + cxTabControl1: TcxTabControl; + Tchk: TToolButton; + TNochk: TToolButton; + v1DHQty: TcxGridDBColumn; + v1MXQty: TcxGridDBColumn; + FactoryNoName: TEdit; + Label6: TLabel; + v1Column1: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); + procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv3MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure ToolButton4Click(Sender: TObject); + procedure Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure ToolButton5Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure Button1Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure v3Column2PropertiesEditValueChanged(Sender: TObject); + procedure conPress(Sender: TObject; var Key: Char); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TchkClick(Sender: TObject); + procedure TNochkClick(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + private + FInt,PFInt:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure SetStatus(); + { Private declarations } + public + FType:string; + { Public declarations } + end; + +var + frmClothContractList: TfrmClothContractList; + +implementation +uses + U_DataLink,U_ClothContractInPutPB,U_Fun,U_ProductOrderList,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmClothContractList.SetStatus(); +begin + TBAdd.Visible:=false; + tchk.Visible:=false; + tnochk.Visible:=false; + tbedit.Visible:=false; + tbdel.Visible:=false; + IF FType=''then + begin + case cxTabControl1.TabIndex of + 0:begin + tchk.Visible:=true; + tbedit.Visible:=true; + tbdel.Visible:=true; + TBAdd.Visible:=true; + end; + 1:begin + tnochk.Visible:=true; + end; + 2:begin + + end; + end; + end; + IF FType='ѯ' then + begin + Tbadd.Visible:=false; + TBPrint.Visible:=false; + v1Price.Visible:=false; + v1PriceUnit.Visible:=false; + v1Money.Visible:=false; + + v1Price.Hidden:=true; + v1PriceUnit.Hidden:=true; + v1Money.Hidden:=true; + cxTabControl1.TabIndex:=2; + cxTabControl1.Visible:=false; + end; +end; + +procedure TfrmClothContractList.FormDestroy(Sender: TObject); +begin + frmClothContractList:=nil; +end; + +procedure TfrmClothContractList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmClothContractList.FormCreate(Sender: TObject); +begin + ScrollBox1.Align:=alClient; +end; + +procedure TfrmClothContractList.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid(self.Caption+tv1.Name,Tv1,'ָʾ'); +end; + +procedure TfrmClothContractList.InitGrid(); +var strwhere: string; +begin + strwhere:=' and QDTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and QDTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+'''' + +' and HTType=''ɹͬ'''; + IF cxTabControl1.TabIndex=0 then + strwhere:=strwhere+' and isnull(C_status,''0'')=''0'' '; + IF cxTabControl1.TabIndex=1 then + strwhere:=strwhere+' and isnull(C_status,''0'')=''1'' '; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContract_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=strwhere; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + TBFind.Click; + end; +end; + +procedure TfrmClothContractList.InitForm(); +begin + ReadCxGrid(self.Caption+tv1.Name,Tv1,'ָʾ'); + cxTabControl1.TabIndex:=0; + if Trim(DParameters1)='1' then + begin + TBPrint.Visible:=False; + end else + begin + // v1Column1.Visible:=True; + // v1Column1.Hidden:=False; + // v1PRTUnit.Visible:=True; + // v1PRTUnit.Hidden:=False; + // v1PRTQty.Visible:=True; + // v1PRTQty.Hidden:=False; + TBPrint.Visible:=True; + end; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmClothContractList.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothContractList.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmClothContractInPutPB:=TfrmClothContractInPutPB.Create(Application); + with frmClothContractInPutPB do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + FConNo:=Trim(Self.Order_Main.fieldbyname('ConNoM').AsString); + if ShowModal=1 then + begin + InitGrid(); + end; + end; + finally + frmClothContractInPutPB.Free; + end; +end; + +procedure TfrmClothContractList.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + if ClientDataSet2.IsEmpty=false then + begin + Application.MessageBox('ѵɾͬ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData() then + begin + //TBRafresh.Click; + //TBFind.Click; + Order_Main.Delete; + end; +end; + +function TfrmClothContractList.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmClothContractList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel('ͬб',cxGrid1); +end; + +procedure TfrmClothContractList.TBPrintClick(Sender: TObject); +var + fPrintFile,FConNoM:string; + +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ͬ.rmf' ; + with ADOQueryTemp do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContract_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Parameters.ParamByName('MainId').Value:=Trim(Order_Main.fieldbyname('MainId').AsString); + Parameters.ParamByName('WSql').Value:=''; + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_PRT); + SInitCDSData20(ADOQueryTemp,CDS_PRT); + FConNoM:=Trim(CDS_PRT.fieldbyname('ConNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ͬ.rmf'),'ʾ',0); + end; + //SDofilter(ADOQueryMain,''); + //SCreateCDS20(ADOQueryMain,Order_Main); + //SInitCDSData20(ADOQueryMain,Order_Main); + //Order_Main.Locate('ConNoM',FConNoM,[]); + //SelPrintData(TV4,ADOQueryMain,'ͬѯ'); +end; + +procedure TfrmClothContractList.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmClothContractList.TBAddClick(Sender: TObject); +begin + try + frmClothContractInPutPB:=TfrmClothContractInPutPB.Create(Application); + with frmClothContractInPutPB do + begin + PState:=0; + FMainId:=''; + if ShowModal=1 then + begin + InitGrid(); + end; + end; + finally + frmClothContractInPutPB.Free; + end; +end; + +procedure TfrmClothContractList.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothContractList.FormShow(Sender: TObject); +begin + InitForm(); + SetStatus(); +end; + +procedure TfrmClothContractList.ToolButton2Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + if FInt=2 then + begin + ClientDataSet2.Append; + ClientDataSet2.Post; + end else + if FInt=3 then + begin + //ClientDataSet3.Append; + //ClientDataSet3.Post; + try + frmProductOrderList:=TfrmProductOrderList.Create(Application); + with frmProductOrderList do + begin + FFInt:=2; + FCloth:=1; + frmProductOrderList.TBAdd.Visible:=False; + frmProductOrderList.TBEdit.Visible:=False; + frmProductOrderList.TBDel.Visible:=False; + frmProductOrderList.TBExport.Visible:=False; + frmProductOrderList.TBPrint.Visible:=False; + frmProductOrderList.ToolButton1.Visible:=False; + frmProductOrderList.ToolButton2.Visible:=False; + frmProductOrderList.ToolButton3.Visible:=True; + frmProductOrderList.v1Column4.Visible:=True; + if ShowModal=1 then + begin + with frmProductOrderList.Order_Main do + begin + frmProductOrderList.Order_Main.First; + while not frmProductOrderList.Order_Main.Eof do + begin + if frmProductOrderList.Order_Main.FieldByName('SSel').AsBoolean=True then + begin + with Self.ClientDataSet3 do + begin + Self.ClientDataSet3.Append; + Self.ClientDataSet3.FieldByName('OrdSubId').Value:=Trim(frmProductOrderList.Order_Main.fieldbyname('SubId').AsString); + Self.ClientDataSet3.FieldByName('OrderNo').Value:=Trim(frmProductOrderList.Order_Main.fieldbyname('OrderNo').AsString); + Self.ClientDataSet3.FieldByName('MPRTCodeName').Value:=Trim(frmProductOrderList.Order_Main.fieldbyname('MPRTCodeName').AsString); + Self.ClientDataSet3.FieldByName('MPRTSpec').Value:=Trim(frmProductOrderList.Order_Main.fieldbyname('MPRTSpec').AsString); + Self.ClientDataSet3.FieldByName('PRTColor').Value:=Trim(frmProductOrderList.Order_Main.fieldbyname('PRTColor').AsString); + end; + end; + frmProductOrderList.Order_Main.Next; + end; + end; + end; + end; + finally + frmProductOrderList.Free; + end; + end; +end; + +procedure TfrmClothContractList.Tv1FocusedRecordChanged( + Sender: TcxCustomGridTableView; APrevFocusedRecord, + AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,KCSL=A.MXQty-(select isnull(Sum(TPQty),0) from Contract_Sub_Mxto B where B.MXID=A.MXID),'); + sql.Add(' KCPS=A.Qty1-(select isnull(Sum(Qty1),0) from Contract_Sub_Mxto B where B.MXID=A.MXID)'); + sql.Add('from Contract_Sub_Mx A'); + sql.Add(' where A.SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet2); + SInitCDSData20(ADOQueryTemp,ClientDataSet2); + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo ,'); + sql.Add('C_Unit=(select Top 1 C_Unit from Contract_Sub AA,Contract_Sub_Mx BB where AA.SubId=BB.SubId and BB.MXid=A.Mxid)'); + SQL.Add('from Contract_Sub_MxTo A inner join JYOrder_Sub B on A.OrdSubId=B.SubId'); + SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId '); + sql.Add('where A.MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); +end; + +procedure TfrmClothContractList.Tv2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=2; +end; + +procedure TfrmClothContractList.Tv1MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=1; +end; + +procedure TfrmClothContractList.Tv3MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=3; +end; + +procedure TfrmClothContractList.ToolButton4Click(Sender: TObject); +var + maxno:string; +begin + if ClientDataSet2.IsEmpty then Exit; + if ClientDataSet2.Locate('ComeDate',null,[]) then + begin + Application.MessageBox('ڲΪգ','ʾ',0); + Exit; + end; + if ClientDataSet2.Locate('MxQty',null,[]) then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + BegDate.SetFocus; + try + ADOQueryCmd.Connection.BeginTrans; + //ϸ + with ClientDataSet2 do + begin + First; + while not eof do + begin + if Trim(ClientDataSet2.fieldbyname('MXId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,maxno,'MX','Contract_Sub_Mx',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡϸˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(ClientDataSet2.fieldbyname('MXId').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub_Mx where MxId='''+Trim(ClientDataSet2.fieldbyname('MXId').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(ClientDataSet2.fieldbyname('MXId').AsString)='' then + Append + else + Edit; + FieldByName('MxId').Value:=Trim(maxno); + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + SSetSaveDataCDSNew(ADOQueryCmd,Tv2,ClientDataSet2,'Contract_Sub_Mx',0); + if Trim(ClientDataSet2.fieldbyname('Qty1').AsString)='' then + begin + FieldByName('Qty1').Value:=0; + end; + if Trim(ClientDataSet2.fieldbyname('MxQty').AsString)='' then + begin + FieldByName('MxQty').Value:=0; + end; + Post; + end; + with ClientDataSet2 do + begin + Edit; + FieldByName('MxId').Value:=Trim(maxno); + Post; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +procedure TfrmClothContractList.Tv2CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo ,'); + sql.Add('C_Unit=(select Top 1 C_Unit from Contract_Sub AA,Contract_Sub_Mx BB where AA.SubId=BB.SubId and BB.MXid=A.Mxid)'); + SQL.Add(' from Contract_Sub_MxTo A inner join JYOrder_Sub B on A.OrdSubId=B.SubId '); + SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId '); + sql.Add('where A.MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); +end; + +procedure TfrmClothContractList.ToolButton5Click(Sender: TObject); +var + maxno:string; +begin + if ClientDataSet3.IsEmpty then Exit; + if ClientDataSet2.IsEmpty then Exit; + if Trim(ClientDataSet2.fieldbyname('MXId').AsString)='' then + begin + Application.MessageBox('δȷ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('OrderNo',null,[]) then + begin + Application.MessageBox('ָŲΪգ','ʾ',0); + Exit; + end; + BegDate.SetFocus; + try + ADOQueryCmd.Connection.BeginTrans; + //ȥ + with ClientDataSet3 do + begin + First; + while not eof do + begin + if Trim(ClientDataSet3.fieldbyname('ToId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,maxno,'To','Contract_Sub_MxTo',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡȥˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(ClientDataSet3.fieldbyname('ToId').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub_MxTo where ToId='''+Trim(ClientDataSet3.fieldbyname('ToId').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(ClientDataSet3.fieldbyname('ToId').AsString)='' then + Append + else + Edit; + FieldByName('MxId').Value:=Trim(ClientDataSet2.fieldbyname('MxId').AsString); + FieldByName('ToId').Value:=Trim(maxno); + FieldByName('OrdSubId').Value:=Trim(ClientDataSet3.fieldbyname('OrdSubId').AsString); + FieldByName('TPDate').Value:=ClientDataSet3.fieldbyname('TPDate').Value; + FieldByName('TPPerson').Value:=ClientDataSet3.fieldbyname('TPPerson').Value; + FieldByName('TPNote').Value:=ClientDataSet3.fieldbyname('TPNote').Value; + if Trim(ClientDataSet3.fieldbyname('TPQty').AsString)<>'' then + FieldByName('TPQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value + else + FieldByName('TPQty').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty1').AsString)<>'' then + FieldByName('Qty1').Value:=ClientDataSet3.fieldbyname('Qty1').Value + else + FieldByName('Qty1').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty2').AsString)<>'' then + FieldByName('Qty2').Value:=ClientDataSet3.fieldbyname('Qty2').Value + else + FieldByName('Qty2').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty3').AsString)<>'' then + FieldByName('Qty3').Value:=ClientDataSet3.fieldbyname('Qty3').Value + else + FieldByName('Qty3').Value:=0; + Post; + end; + with ClientDataSet3 do + begin + Edit; + FieldByName('ToId').Value:=Trim(maxno); + Post; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +procedure TfrmClothContractList.ToolButton3Click(Sender: TObject); +begin + if FInt=2 then + begin + if ClientDataSet2.IsEmpty then Exit; + if ClientDataSet3.IsEmpty=false then + begin + Application.MessageBox('Ѳݣɾ¼','ʾ',0); + Exit; + end; + if Trim(ClientDataSet2.fieldbyname('MxId').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub_Mx where MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + ExecSQL; + end; + ClientDataSet2.Delete; + end else + if FInt=3 then + begin + if ClientDataSet3.IsEmpty then Exit; + if Trim(ClientDataSet3.fieldbyname('ToId').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub_MxTo where ToId='''+Trim(ClientDataSet3.fieldbyname('ToId').AsString)+''''); + ExecSQL; + end; + ClientDataSet3.Delete; + with ClientDataSet2 do + begin + Edit; + if ClientDataSet3.IsEmpty=False then + FieldByName('KCSL').Value:=ClientDataSet2.fieldbyname('MxQty').Value-tv3.DataController.Summary.FooterSummaryValues[0] + else + FieldByName('KCSL').Value:=ClientDataSet2.fieldbyname('MxQty').Value; + Post; + end; + end; +end; + +procedure TfrmClothContractList.v2Column3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='RKPlace'; + flagname:='ص'; + if ShowModal=1 then + begin + with ClientDataSet2 do + begin + Edit; + FieldByName('RKPlace').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractList.Button1Click(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmClothContractList.Button2Click(Sender: TObject); +begin + ToolButton3.Click; +end; + +procedure TfrmClothContractList.Button3Click(Sender: TObject); +begin + ToolButton4.Click; +end; + +procedure TfrmClothContractList.Button4Click(Sender: TObject); +begin + ToolButton5.Click; +end; + +procedure TfrmClothContractList.v3Column2PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,fieldname,qty1,qty2:String; + +begin + If Trim(TcxTextEdit(Sender).EditingText)<>'' then + begin + mvalue:=TcxTextEdit(Sender).EditingText; + end else + begin + mvalue:='0'; + end; + fieldname:=Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName; + with ClientDataSet3 do + begin + Edit; + FieldByName(Trim(fieldname)).Value:=mvalue; + Post; + end; + with ClientDataSet2 do + begin + Edit; + FieldByName('KCSL').Value:=ClientDataSet2.fieldbyname('MxQty').Value-tv3.DataController.Summary.FooterSummaryValues[0]; + Post; + end; + if Trim(ClientDataSet3.fieldbyname('TPQty').AsString)<>'' then + begin + qty1:=ClientDataSet3.fieldbyname('TPQty').AsString; + end else + begin + qty1:='0'; + end; + if Trim(ClientDataSet3.fieldbyname('Qty2').AsString)<>'' then + begin + Qty2:=ClientDataSet3.fieldbyname('Qty2').AsString; + end else + begin + Qty2:='0'; + end; + if StrToFloat(qty1)*StrToFloat(qty2)=0 then Exit; + with ClientDataSet3 do + begin + Edit; + FieldByName('qty3').Value:=(StrToFloat(qty1)-StrToFloat(qty2))*1.00*100/StrToFloat(qty1); + Post; + end; +end; + +procedure TfrmClothContractList.conPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(ConNoM.Text))<4 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContract_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and OM.conNo like '''+'%'+Trim(ConNoM.Text)+'%'+'''' + +' and HTType=''ɹͬ'''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmClothContractList.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + If Order_Main.IsEmpty then Exit; + try + frmClothContractInPutPB:=TfrmClothContractInPutPB.Create(Application); + with frmClothContractInPutPB do + begin + PState:=1; + ToolBar1.Enabled:=false; + ToolBar2.Enabled:=false; + Tv1.OptionsData.Editing:=false; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + FConNo:=Trim(Self.Order_Main.fieldbyname('ConNoM').AsString); + if ShowModal=1 then + begin + InitGrid(); + end; + end; + finally + frmClothContractInPutPB.Free; + end; +end; + +procedure TfrmClothContractList.TchkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Contract_Sub SET C_status=''1'' '); + sql.Add('where subID='+quotedstr(trim(Order_Main.fieldbyname('subID').AsString))); + execsql; + end; + application.MessageBox('ɹɣ','ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ɹʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmClothContractList.TNochkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Contract_Sub SET C_status=''0'' '); + sql.Add('where subID='+quotedstr(trim(Order_Main.fieldbyname('subID').AsString))); + execsql; + end; + application.MessageBox('ɹ','ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmClothContractList.cxTabControl1Change(Sender: TObject); +begin + SetStatus(); + TBRafresh.Click; +end; + +procedure TfrmClothContractList.Tv1CustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + if cxTabControl1.TabIndex=0 then + begin + with Order_Main do + begin + if (AViewInfo.GridRecord.Values[v1MXQty.Index]< + AViewInfo.GridRecord.Values[v1C_Qty.Index]*0.97) or + (AViewInfo.GridRecord.Values[v1MXQty.Index]> + AViewInfo.GridRecord.Values[v1C_Qty.Index]*1.03) then + begin + ACanvas.Font.Color:=clRed; + end; + if AViewInfo.GridRecord.Values[v1DHQty.Index]< + AViewInfo.GridRecord.Values[v1Qty1.Index] then + begin + ACanvas.Font.Color:=clRed; + end; + end; + end; +end; + +end. diff --git a/艾登贸易管理/U_ClothContractListDH.dfm b/艾登贸易管理/U_ClothContractListDH.dfm new file mode 100644 index 0000000..2b6e9d7 --- /dev/null +++ b/艾登贸易管理/U_ClothContractListDH.dfm @@ -0,0 +1,707 @@ +object frmClothContractListDH: TfrmClothContractListDH + Left = 194 + Top = 75 + Width = 1100 + Height = 573 + Caption = #22383#24067#21040#36135 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1084 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 107 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TWC: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23436#25104 + ImageIndex = 41 + Visible = False + OnClick = TWCClick + end + object TNOWC: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25764#38144#23436#25104 + ImageIndex = 86 + Visible = False + OnClick = TNOWCClick + end + object TBClose: TToolButton + Left = 276 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + object ToolButton2: TToolButton + Left = 339 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + Visible = False + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 402 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 465 + Top = 0 + AutoSize = True + Caption = #21040#22383#30830#23450 + ImageIndex = 113 + Visible = False + OnClick = ToolButton4Click + end + object ToolButton5: TToolButton + Left = 552 + Top = 0 + Caption = #22383#24067#39046#26009#30830#23450 + ImageIndex = 114 + Visible = False + OnClick = ToolButton5Click + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1084 + Height = 54 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 22 + Width = 52 + Height = 12 + Caption = #30331#35760#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 161 + Top = 22 + Width = 18 + Height = 12 + Caption = '---' + end + object Label3: TLabel + Left = 283 + Top = 22 + Width = 52 + Height = 12 + Caption = #21512#21516#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 444 + Top = 22 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 612 + Top = 22 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 752 + Top = 22 + Width = 65 + Height = 12 + Caption = #23458#25143#21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 18 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 179 + Top = 18 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 1 + end + object ConNoM: TEdit + Tag = 2 + Left = 337 + Top = 18 + Width = 81 + Height = 20 + TabOrder = 2 + OnChange = ConNoMChange + OnKeyPress = ConNoMKeyPress + end + object C_CodeNameM: TEdit + Tag = 2 + Left = 497 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = ConNoMChange + end + object C_Spec: TEdit + Tag = 2 + Left = 640 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 4 + OnChange = ConNoMChange + end + object sdefstr6: TEdit + Tag = 2 + Left = 820 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 5 + OnChange = ConNoMChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 86 + Width = 1084 + Height = 210 + Align = alClient + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 2 + object Tv1: TcxGridDBTableView + OnMouseDown = Tv1MouseDown + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv1CellClick + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column1 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1OrderNo: TcxGridDBColumn + Caption = #21512#21516#32534#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 74 + end + object v1Column2: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_CodeName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 93 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DeliveryDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 85 + end + object v1Column5: TcxGridDBColumn + Caption = #31614#35746#26085#26399 + DataBinding.FieldName = 'QDTime' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 81 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = #20379#26041 + DataBinding.FieldName = 'FactoryNoName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 85 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 71 + end + object v1Qty1: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'Qty1' + Visible = False + HeaderAlignmentHorz = taCenter + Hidden = True + Styles.Header = DataLink_TradeManage.Default + Width = 46 + end + object v1Column1: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'Qty1' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'C_Qty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'C_Unit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 58 + end + object v1Column3: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'Sdefstr1' + HeaderAlignmentHorz = taCenter + Width = 67 + end + object v1DHQty: TcxGridDBColumn + Caption = #21040#36135#21305#25968 + DataBinding.FieldName = 'DHQty' + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v1MxQty: TcxGridDBColumn + Caption = #21040#36135#25968#37327 + DataBinding.FieldName = 'MxQty' + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v1Column6: TcxGridDBColumn + Caption = #35745#21010#32553#29575'(%)' + DataBinding.FieldName = 'Qty2' + HeaderAlignmentHorz = taCenter + Width = 91 + end + object v1Column7: TcxGridDBColumn + Caption = #25351#31034#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column8: TcxGridDBColumn + Caption = #23458#25143#21512#21516#21495 + DataBinding.FieldName = 'sdefstr6' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column4: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'C_Note' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 80 + end + object v1Column9: TcxGridDBColumn + Caption = #26579#21378#24037#33402 + DataBinding.FieldName = 'Sdefstr3' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column10: TcxGridDBColumn + DataBinding.FieldName = 'subID' + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 296 + Width = 1084 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + Control = Panel2 + end + object Panel2: TPanel + Left = 0 + Top = 304 + Width = 1084 + Height = 231 + Align = alBottom + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 4 + object cxGrid2: TcxGrid + Left = 2 + Top = 34 + Width = 1080 + Height = 195 + Align = alClient + TabOrder = 0 + object Tv2: TcxGridDBTableView + OnMouseDown = Tv2MouseDown + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv2CellClick + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2MxQty + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + object v2ComeDate: TcxGridDBColumn + Tag = 2 + Caption = #21040#36135#26085#26399 + DataBinding.FieldName = 'ComeDate' + PropertiesClassName = 'TcxDateEditProperties' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 117 + end + object v2Column3: TcxGridDBColumn + Tag = 2 + Caption = #23384#25918#22320#28857 + DataBinding.FieldName = 'RKPlace' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 122 + end + object v2Column1: TcxGridDBColumn + Tag = 2 + Caption = #21305#25968#37327 + DataBinding.FieldName = 'Qty1' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v2MxQty: TcxGridDBColumn + Tag = 2 + Caption = #25968#37327 + DataBinding.FieldName = 'MxQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 90 + end + object v2Column2: TcxGridDBColumn + Tag = 2 + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'MXUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v2MxNote: TcxGridDBColumn + Tag = 2 + Caption = #22791#27880 + DataBinding.FieldName = 'MxNote' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 145 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv2 + end + end + object ToolBar2: TToolBar + Left = 2 + Top = 2 + Width = 1080 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 1 + object ToolButton8: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton2Click + end + object ToolButton9: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton3Click + end + object ToolButton10: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #21040#22383#30830#23450 + ImageIndex = 113 + OnClick = ToolButton4Click + end + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 664 + Top = 256 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 936 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1000 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1040 + Top = 8 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 1168 + Top = 8 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 1096 + Top = 8 + end + object ClientDataSet3: TClientDataSet + Aggregates = <> + Params = <> + Left = 988 + Top = 208 + end + object DataSource2: TDataSource + DataSet = ClientDataSet2 + Left = 880 + Top = 176 + end + object DataSource3: TDataSource + DataSet = ClientDataSet3 + Left = 1112 + Top = 216 + end + object ClientDataSet2: TClientDataSet + Aggregates = <> + Params = <> + Left = 920 + Top = 224 + 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 = 352 + Top = 192 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 400 + Top = 192 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 453 + Top = 200 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 440 + Top = 520 + end +end diff --git a/艾登贸易管理/U_ClothContractListDH.pas b/艾登贸易管理/U_ClothContractListDH.pas new file mode 100644 index 0000000..275beda --- /dev/null +++ b/艾登贸易管理/U_ClothContractListDH.pas @@ -0,0 +1,1119 @@ +unit U_ClothContractListDH; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, + RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, + cxTextEdit, cxPC; + +type + TfrmClothContractListDH = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Label2: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + ConNoM: TEdit; + Label5: TLabel; + C_CodeNameM: TEdit; + Order_Main: TClientDataSet; + Label4: TLabel; + C_Spec: TEdit; + ToolButton2: TToolButton; + ToolButton3: TToolButton; + ToolButton4: TToolButton; + ClientDataSet3: TClientDataSet; + DataSource2: TDataSource; + DataSource3: TDataSource; + ClientDataSet2: TClientDataSet; + ToolButton5: TToolButton; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1Qty1: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + cxSplitter1: TcxSplitter; + Panel2: TPanel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2ComeDate: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2MxQty: TcxGridDBColumn; + v2MxNote: TcxGridDBColumn; + cxGrid2Level1: TcxGridLevel; + ToolBar2: TToolBar; + ToolButton8: TToolButton; + ToolButton9: TToolButton; + ToolButton10: TToolButton; + cxGridPopupMenu2: TcxGridPopupMenu; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + sdefstr6: TEdit; + Label6: TLabel; + v1DHQty: TcxGridDBColumn; + v1MxQty: TcxGridDBColumn; + TWC: TToolButton; + TNOWC: TToolButton; + v1Column9: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); + procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv3MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure ToolButton4Click(Sender: TObject); + procedure Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure ToolButton5Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure Button1Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure ConNoMKeyPress(Sender: TObject; var Key: Char); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TWCClick(Sender: TObject); + procedure TNOWCClick(Sender: TObject); + procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + private + FInt,PFInt:Integer; + procedure InitGrid(); + procedure InitForm(); + procedure SetStatus(); + function DelData():Boolean; + function YFData():Boolean; + function DelYFData():Boolean; + { Private declarations } + public + { Public declarations } + end; + +var + frmClothContractListDH: TfrmClothContractListDH; + +implementation +uses + U_DataLink,U_ClothContractInPut,U_Fun,U_ProductOrderList,U_ZDYHelp, + U_ZdyAttachGYS; + +{$R *.dfm} + +procedure TfrmClothContractListDH.FormDestroy(Sender: TObject); +begin + frmClothContractListDH:=nil; +end; + +procedure TfrmClothContractListDH.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmClothContractListDH.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ͬ1',Tv1,'ָʾ'); + WriteCxGrid('ͬ2',Tv2,'ָʾ'); +end; + +procedure TfrmClothContractListDH.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContract_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+'''' + +' and HTType=''ɹͬ'''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmClothContractListDH.InitForm(); +begin + ReadCxGrid('ͬ1',Tv1,'ָʾ'); + ReadCxGrid('ͬ2',Tv2,'ָʾ'); + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmClothContractListDH.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmClothContractListDH.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmClothContractListDH.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmClothContractListDH.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothContractListDH.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmClothContractListDH.ToolButton2Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; +{ with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + Application.MessageBox('δ¼!','ʾ',0); + Exit; + end else + begin + if ADOQueryTemp.RecordCount>1 then + begin + Application.MessageBox('¼ظ!','ʾ',0); + Exit; + end; + end; } + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1 * from Contract_Main where ConNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + ClientDataSet2.Append; + ClientDataSet2.FieldByName('MXUnit').Value:=Trim(Order_Main.fieldbyname('C_Unit').AsString); + ClientDataSet2.FieldByName('RKPlace').Value:=''; + ClientDataSet2.FieldByName('RKPLCode').Value:=Trim(ADOQueryTemp.fieldbyname('JHPlace').AsString); + ClientDataSet2.Post; +end; + +procedure TfrmClothContractListDH.Tv1FocusedRecordChanged( + Sender: TcxCustomGridTableView; APrevFocusedRecord, + AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*'); + sql.Add('from ContractSX_Sub_Mx A'); + sql.Add(' where A.SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet2); + SInitCDSData20(ADOQueryTemp,ClientDataSet2); +end; + +procedure TfrmClothContractListDH.Tv2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=2; +end; + +procedure TfrmClothContractListDH.Tv1MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=1; +end; + +procedure TfrmClothContractListDH.Tv3MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=3; +end; + +procedure TfrmClothContractListDH.ToolButton4Click(Sender: TObject); +var + maxno:string; +begin + if ClientDataSet2.IsEmpty then Exit; + if ClientDataSet2.Locate('ComeDate',null,[]) then + begin + Application.MessageBox('ڲΪգ','ʾ',0); + Exit; + end; + if ClientDataSet2.Locate('RKPlace',null,[]) then + begin + Application.MessageBox('ŵص㲻Ϊգ','ʾ',0); + Exit; + end; + if ClientDataSet2.Locate('RKPlace','',[]) then + begin + Application.MessageBox('ŵص㲻Ϊգ','ʾ',0); + Exit; + end; + if ClientDataSet2.Locate('MxQty',null,[]) then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + BegDate.SetFocus; + try + ADOQueryCmd.Connection.BeginTrans; + //ϸ + with ClientDataSet2 do + begin + ClientDataSet2.DisableControls; + First; + while not eof do + begin + if Trim(ClientDataSet2.fieldbyname('MXId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,maxno,'MX','Contract_Sub_Mx',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + ClientDataSet2.EnableControls; + Application.MessageBox('ȡϸˮʧܣ','ʾ',0); + Exit; + end; + end + else + begin + maxno:=Trim(ClientDataSet2.fieldbyname('MXId').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub_Mx where MxId='''+Trim(ClientDataSet2.fieldbyname('MXId').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(ClientDataSet2.fieldbyname('MXId').AsString)='' then + Append + else + Edit; + FieldByName('MxId').Value:=Trim(maxno); + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + SSetSaveDataCDSNew(ADOQueryCmd,Tv2,ClientDataSet2,'Contract_Sub_Mx',2); + FieldByName('MXUnit').Value:=Trim(Order_Main.fieldbyname('C_Unit').AsString); + FieldByName('RKPLCode').Value:=Trim(ClientDataSet2.fieldbyname('RKPLCode').AsString); + if Trim(ClientDataSet2.fieldbyname('Qty1').AsString)='' then + begin + FieldByName('Qty1').Value:=0; + end; + if Trim(ClientDataSet2.fieldbyname('MxQty').AsString)='' then + begin + FieldByName('MxQty').Value:=0; + end; + if Trim(Order_Main.fieldbyname('C_Unit').AsString)='Kg' then + begin + if (Order_Main.fieldbyname('MFQty').AsFloat<>0) and (Order_Main.fieldbyname('KZQty').AsFloat<>0) then + begin + FieldByName('MxMQty').Value:=ClientDataSet2.fieldbyname('MxQty').Value*1.00*1000 + /(Order_Main.fieldbyname('MFQty').Value*1.00/100*Order_Main.fieldbyname('KZQty').Value); + end; + end + else + begin + FieldByName('MxMQty').Value:=ClientDataSet2.fieldbyname('MxQty').Value; + end; + Post; + end; + with ClientDataSet2 do + begin + Edit; + FieldByName('MxId').Value:=Trim(maxno); + Post; + end; + if YFData()=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_DH where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and FirstName='''+Trim(ClientDataSet2.fieldbyname('RKPLace').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd,maxno,'DH','Contract_Cloth_DH',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + ClientDataSet2.EnableControls; + Application.MessageBox('ȡϸˮʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_DH where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(Order_Main.fieldbyname('Mainid').AsString); + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + FieldByName('DHId').Value:=Trim(maxno); + FieldByName('FirstNo').Value:=Trim(ClientDataSet2.fieldbyname('RKPLCode').AsString); + FieldByName('FirstName').Value:=Trim(ClientDataSet2.fieldbyname('RKPLace').AsString); + FieldByName('DHUnit').Value:=Trim(Order_Main.fieldbyname('C_Unit').AsString); + FieldByName('PBName').Value:=Trim(Order_Main.fieldbyname('C_CodeName').AsString); + FieldByName('PBSpec').Value:=Trim(Order_Main.fieldbyname('C_Spec').AsString); + FieldByName('PBMF').Value:=Order_Main.fieldbyname('MFQty').AsFloat; + FieldByName('PBKZ').Value:=Order_Main.fieldbyname('KZQty').AsFloat; + Post; + end; + + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update Contract_Cloth_DH Set DHUnit='''+Trim(Order_Main.fieldbyname('C_Unit').AsString)+''''); + sql.Add(',PBName='+quotedstr(Trim(Order_Main.fieldbyname('C_CodeName').AsString))); + sql.Add(',PBSpec='+quotedstr(Trim(Order_Main.fieldbyname('C_Spec').AsString))); + sql.Add(',PBMF='+floattostr(Order_Main.fieldbyname('MFQty').AsFloat)); + sql.Add(',PBKZ='+floattostr(Order_Main.fieldbyname('KZQty').AsFloat)); + sql.Add(' where DHID='''+Trim(ADOQueryTemp.fieldbyname('DHID').AsString)+''''); + ExecSQL; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update Contract_Cloth_DH Set DHQty=(select Sum(MxQty) from Contract_Sub_Mx A where A.SubId=Contract_Cloth_DH.SubId'); + sql.Add(' and A.RKPLCode=Contract_Cloth_DH.FirstNo)'); + sql.Add(',DHMQty=(select Sum(MxMQty) from Contract_Sub_Mx A where A.SubId=Contract_Cloth_DH.SubId'); + sql.Add(' and A.RKPLCode=Contract_Cloth_DH.FirstNo)'); + sql.Add(', DHPS=(select Sum(Qty1) from Contract_Sub_Mx A where A.SubId=Contract_Cloth_DH.SubId'); + sql.Add(' and A.RKPLCode=Contract_Cloth_DH.FirstNo)'); + sql.Add(' where SubId='''+Trim(Order_Main.fieldbyname('Subid').AsString)+''''); + sql.Add(' and FirstNo='''+Trim(ClientDataSet2.fieldbyname('RKPLCode').AsString)+''''); + ExecSQL; + end; + Next; + end; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Cloth_DH '); + sql.Add('where not exists(select * from Contract_Sub_Mx A where A.SubId=Contract_Cloth_DH.SubId and A.RKPlace=Contract_Cloth_DH.firstName) '); + sql.Add('and SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + //ӹ + with ADOQueryCmd do + begin + Close; + sql.Clear; + // sql.Add('select * from Contract_Cloth_LLMX B where not exists(select * from '); + // sql.Add(' Contract_Cloth_DH A where A.DHID=B.DHID '); + // SQL.Add(' and A.SubId=B.SubId ) and B.SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' select A.DHID from Contract_Cloth_LLMx A '); + sql.Add(' inner join Contract_Cloth_LL B on B.DHID=A.DHID and B.OrdSubId=A.OrdSubId and B.LLID not like ''HL%'' '); + sql.Add(' where not exists (select X.DHID from Contract_Cloth_DH X where X.DHId=A.DHID and X.FirstName=B.FirstName) '); + sql.Add(' and A.SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''' '); + Open; + end; + if not ADOQueryCmd.IsEmpty then + begin + ClientDataSet2.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ݽҲӦȾܱ!','ʾ',0); + //begin + + Exit; + //end; + end; + ClientDataSet2.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + except + ClientDataSet2.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; +function TfrmClothContractListDH.YFData():Boolean; +var + CRID,OrdMainId,YFID,FComTaiTou,FCRID,FFactoryName:String; +begin + Result:=False; + { with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + + Application.MessageBox('δ¼!','ʾ',0); + Exit; + end else + begin + if ADOQueryTemp.RecordCount>1 then + begin + + Application.MessageBox('¼ظ!','ʾ',0); + Exit; + end; + end; } + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + OrdMainId:=Trim(ADOQueryTemp.fieldbyname('MainId').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select OrdDefStr2 from JYOrder_Main where Mainid='''+Trim(OrdMainId)+''''); + Open; + end; + FComTaiTou:=Trim(ADOQueryTemp.fieldbyname('OrdDefStr2').AsString); + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main.fieldbyname('FactoryNoName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FactoryNoName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where FactoryName='''+Trim(Order_Main.fieldbyname('FactoryNoName').AsString)+''''); + sql.Add(' and YFTypeId='''+Trim(ClientDataSet2.fieldbyname('MXId').AsString)+''''); + Open; + end; + begin + if ADOQueryTemp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd,YFID,'PF','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡӦʧ!','ʾ',0); + Exit; + end; + end + else + begin + YFID:=Trim(ADOQueryTemp.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where YFID='''+Trim(YFID)+''''); + Open; + end; + with ADOQueryCmd do + begin + if ADOQueryTemp.IsEmpty then + Append + else + Edit; + FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(ClientDataSet2.fieldbyname('MXId').AsString); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FactoryNoName').AsString); + FieldByName('CRTime').Value:=ClientDataSet2.fieldbyname('ComeDate').Value; + FieldByName('Qty').Value:=ClientDataSet2.fieldbyname('MXQty').Value; + FieldByName('PS').Value:=ClientDataSet2.fieldbyname('Qty1').Value; + FieldByName('YFType').Value:='Զ'; + FieldByName('Price').Value:=Order_Main.fieldbyname('Price').Value; + FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=''; + FieldByName('ComTaiTou').Value:=''; + FieldByName('QtyUnit').Value:=Trim(Order_Main.fieldbyname('C_Unit').AsString); + FieldByName('YFName').Value:=''; + FieldByName('MainId').Value:=Trim(OrdMainId); + Post; + end; + end; + {with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update YF_Money_CR Set Qty=(select isnull(Sum(MXQty),0) from Contract_Sub_MX A inner join'); + SQL.Add('Contract_Sub B on A.SubId=B.SubId where B.MainId=YF_Money_CR.YFTypeId)'); + sql.Add(',PS=(select isnull(Sum(A.Qty1),0) from Contract_Sub_MX A inner join'); + SQL.Add('Contract_Sub B on A.SubId=B.SubId where B.MainId=YF_Money_CR.YFTypeId)'); + sql.Add(' where YFTypeId='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+''''); + ExecSQL; + end;} + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty'); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + Result:=True; +end; + +function TfrmClothContractListDH.DelYFData():Boolean; +var + CRID,OrdMainId,YFID:String; +begin + Result:=False; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main.fieldbyname('FactoryNoName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_CR where FactoryName='''+Trim(Order_Main.fieldbyname('FactoryNoName').AsString)+''''); + sql.Add(' and YFTypeId='''+Trim(ClientDataSet2.fieldbyname('MXId').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + Result:=True; +end; +procedure TfrmClothContractListDH.Tv2CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo ,'); + sql.Add('C_Unit=(select Top 1 C_Unit from Contract_Sub AA,Contract_Sub_Mx BB where AA.SubId=BB.SubId and BB.MXid=A.Mxid)'); + SQL.Add(' from Contract_Sub_MxTo A inner join JYOrder_Sub B on A.OrdSubId=B.SubId '); + SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId '); + sql.Add('where A.MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); +end; + +procedure TfrmClothContractListDH.ToolButton5Click(Sender: TObject); +var + maxno:string; +begin + if ClientDataSet3.IsEmpty then Exit; + if ClientDataSet2.IsEmpty then Exit; + if Trim(ClientDataSet2.fieldbyname('MXId').AsString)='' then + begin + Application.MessageBox('δȷ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('OrderNo',null,[]) then + begin + Application.MessageBox('ָŲΪգ','ʾ',0); + Exit; + end; + BegDate.SetFocus; + try + ADOQueryCmd.Connection.BeginTrans; + //ȥ + with ClientDataSet3 do + begin + First; + while not eof do + begin + if Trim(ClientDataSet3.fieldbyname('ToId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,maxno,'To','Contract_Sub_MxTo',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡȥˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(ClientDataSet3.fieldbyname('ToId').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub_MxTo where ToId='''+Trim(ClientDataSet3.fieldbyname('ToId').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(ClientDataSet3.fieldbyname('ToId').AsString)='' then + Append + else + Edit; + FieldByName('MxId').Value:=Trim(ClientDataSet2.fieldbyname('MxId').AsString); + FieldByName('ToId').Value:=Trim(maxno); + FieldByName('OrdSubId').Value:=Trim(ClientDataSet3.fieldbyname('OrdSubId').AsString); + FieldByName('TPDate').Value:=ClientDataSet3.fieldbyname('TPDate').Value; + FieldByName('TPPerson').Value:=ClientDataSet3.fieldbyname('TPPerson').Value; + FieldByName('TPNote').Value:=ClientDataSet3.fieldbyname('TPNote').Value; + if Trim(ClientDataSet3.fieldbyname('TPQty').AsString)<>'' then + FieldByName('TPQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value + else + FieldByName('TPQty').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty1').AsString)<>'' then + FieldByName('Qty1').Value:=ClientDataSet3.fieldbyname('Qty1').Value + else + FieldByName('Qty1').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty2').AsString)<>'' then + FieldByName('Qty2').Value:=ClientDataSet3.fieldbyname('Qty2').Value + else + FieldByName('Qty2').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty3').AsString)<>'' then + FieldByName('Qty3').Value:=ClientDataSet3.fieldbyname('Qty3').Value + else + FieldByName('Qty3').Value:=0; + Post; + end; + with ClientDataSet3 do + begin + Edit; + FieldByName('ToId').Value:=Trim(maxno); + Post; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +procedure TfrmClothContractListDH.ToolButton3Click(Sender: TObject); +begin + //if FInt=2 then + //begin + if ClientDataSet2.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub_Mx where MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update Contract_Cloth_DH Set DHQty=(select isnull(Sum(MxQty),0) from Contract_Sub_Mx A where A.SubId=Contract_Cloth_DH.SubId'); + sql.Add(' and A.RKPLCode=Contract_Cloth_DH.FirstNo)'); + sql.Add(', DHMQty=(select isnull(Sum(MxMQty),0) from Contract_Sub_Mx A where A.SubId=Contract_Cloth_DH.SubId'); + sql.Add(' and A.RKPLCode=Contract_Cloth_DH.FirstNo)'); + sql.Add(', DHPS=(select isnull(Sum(Qty1),0) from Contract_Sub_Mx A where A.SubId=Contract_Cloth_DH.SubId'); + sql.Add(' and A.RKPLCode=Contract_Cloth_DH.FirstNo)'); + sql.Add(' where SubId='''+Trim(Order_Main.fieldbyname('Subid').AsString)+''''); + sql.Add(' and FirstNo='''+Trim(ClientDataSet2.fieldbyname('RKPLCode').AsString)+''''); + ExecSQL; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Cloth_DH '); + sql.Add('where not exists(select * from Contract_Sub_Mx A where A.SubId=Contract_Cloth_DH.SubId and A.RKPlace=Contract_Cloth_DH.firstName) '); + sql.Add(' and SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LLMX B where not exists(select * from '); + sql.Add(' Contract_Cloth_DH A where A.DHID=B.DHID '); + SQL.Add(' and A.SubId=B.SubId ) and B.SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + Application.MessageBox('ѲͶɾ!','ʾ',0); + ADOQueryCmd.Connection.RollbackTrans; + Exit; + end; + DelYFData(); + ClientDataSet2.Delete; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ɾ쳣!','ʾ',0); + end; +end; + +procedure TfrmClothContractListDH.v2Column3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + { try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:='ص'; + //MainType:='RanFactory'; + if ShowModal=1 then + begin + with ClientDataSet2 do + begin + Edit; + FieldByName('RKPlace').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + FieldByName('RKPlCode').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; } + + try + frmZdyAttachGYS:=TfrmZdyAttachGYS.Create(Application); + with frmZdyAttachGYS do + begin + if ShowModal=1 then + begin + with ClientDataSet2 do + begin + Edit; + // FieldByName('FactoryNoName').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + FieldByName('RKPlace').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + FieldByName('RKPlCode').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + end; + end; + end; + finally + frmZdyAttachGYS.Free; + end; +end; + +procedure TfrmClothContractListDH.Button1Click(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmClothContractListDH.Button2Click(Sender: TObject); +begin + ToolButton3.Click; +end; + +procedure TfrmClothContractListDH.Button3Click(Sender: TObject); +begin + ToolButton4.Click; +end; + +procedure TfrmClothContractListDH.ConNoMKeyPress(Sender: TObject; + var Key: Char); +begin if Key=#13 then + begin + if Length(Trim(ConNoM.Text))<4 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContract_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and OM.conNo like '''+'%'+Trim(ConNoM.Text)+'%'+'''' + +' and HTType=''ɹͬ'''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmClothContractListDH.Tv1CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*'); + sql.Add('from Contract_Sub_Mx A'); + sql.Add(' where A.SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet2); + SInitCDSData20(ADOQueryTemp,ClientDataSet2); + {with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo ,'); + sql.Add('C_Unit=(select Top 1 C_Unit from Contract_Sub AA,Contract_Sub_Mx BB where AA.SubId=BB.SubId and BB.MXid=A.Mxid)'); + SQL.Add('from Contract_Sub_MxTo A inner join JYOrder_Sub B on A.OrdSubId=B.SubId'); + SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId '); + sql.Add('where A.MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3);} +end; + +procedure TfrmClothContractListDH.TWCClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Contract_Sub SET C_status=''2'' '); + sql.Add('where subID='+quotedstr(trim(Order_Main.fieldbyname('subID').AsString))); + execsql; + end; + application.MessageBox('ɣ','ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmClothContractListDH.TNOWCClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Contract_Sub SET C_status=''1'' '); + sql.Add('where subID='+quotedstr(trim(Order_Main.fieldbyname('subID').AsString))); + execsql; + end; + application.MessageBox('ɹ','ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmClothContractListDH.SetStatus(); +begin + +end; + +procedure TfrmClothContractListDH.Tv1CustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + {with Order_Main do + begin + if (AViewInfo.GridRecord.Values[v1MXQty.Index]< + AViewInfo.GridRecord.Values[v1PRTOrderQty.Index]*0.97) or + (AViewInfo.GridRecord.Values[v1MXQty.Index]> + AViewInfo.GridRecord.Values[v1PRTOrderQty.Index]*1.03) then + begin + ACanvas.Font.Color:=clRed; + end; + if AViewInfo.GridRecord.Values[v1DHQty.Index]< + AViewInfo.GridRecord.Values[v1Column1.Index] then + begin + ACanvas.Font.Color:=clRed; + end; + end;} +end; + +end. diff --git a/艾登贸易管理/U_ClothContractListDHSX.dfm b/艾登贸易管理/U_ClothContractListDHSX.dfm new file mode 100644 index 0000000..5715065 --- /dev/null +++ b/艾登贸易管理/U_ClothContractListDHSX.dfm @@ -0,0 +1,595 @@ +object frmClothContractListDHSX: TfrmClothContractListDHSX + Left = 248 + Top = 60 + Width = 1068 + Height = 619 + Caption = #32433#32447#21040#36135 + 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 = 1060 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 107 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBClose: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + object ToolButton2: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + Visible = False + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #21040#22383#30830#23450 + ImageIndex = 113 + Visible = False + OnClick = ToolButton4Click + end + object ToolButton5: TToolButton + Left = 402 + Top = 0 + Caption = #22383#24067#39046#26009#30830#23450 + ImageIndex = 114 + Visible = False + OnClick = ToolButton5Click + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1060 + Height = 54 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 22 + Width = 52 + Height = 12 + Caption = #30331#35760#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 161 + Top = 22 + Width = 18 + Height = 12 + Caption = '---' + end + object Label3: TLabel + Left = 283 + Top = 22 + Width = 52 + Height = 12 + Caption = #21512#21516#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 444 + Top = 22 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 612 + Top = 22 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 18 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 179 + Top = 18 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 1 + end + object ConNoM: TEdit + Tag = 2 + Left = 337 + Top = 18 + Width = 81 + Height = 20 + TabOrder = 2 + OnChange = ConNoMChange + OnKeyPress = ConNoMKeyPress + end + object C_CodeNameM: TEdit + Tag = 2 + Left = 497 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = ConNoMChange + end + object C_Spec: TEdit + Tag = 2 + Left = 640 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 4 + OnChange = ConNoMChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 86 + Width = 1060 + Height = 204 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBTableView + OnMouseDown = Tv1MouseDown + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv1CellClick + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + object v1OrderNo: TcxGridDBColumn + Caption = #21512#21516#32534#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 74 + end + object v1Column2: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_CodeName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 93 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DeliveryDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 85 + end + object v1Column5: TcxGridDBColumn + Caption = #31614#35746#26085#26399 + DataBinding.FieldName = 'QDTime' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 81 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = #20379#26041 + DataBinding.FieldName = 'FactoryNoName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 85 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 71 + end + object v1Qty1: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'Qty1' + Visible = False + HeaderAlignmentHorz = taCenter + Hidden = True + Styles.Header = DataLink_TradeManage.Default + Width = 46 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'C_Qty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'C_Unit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 58 + end + object v1Column4: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'C_Note' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 80 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 577 + Width = 1060 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + end + object Panel2: TPanel + Left = 0 + Top = 290 + Width = 1060 + Height = 287 + Align = alBottom + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 4 + object cxGrid2: TcxGrid + Left = 2 + Top = 34 + Width = 1056 + Height = 251 + Align = alClient + TabOrder = 0 + object Tv2: TcxGridDBTableView + OnMouseDown = Tv2MouseDown + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv2CellClick + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2MxQty + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + object v2ComeDate: TcxGridDBColumn + Tag = 2 + Caption = #21040#36135#26085#26399 + DataBinding.FieldName = 'ComeDate' + PropertiesClassName = 'TcxDateEditProperties' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 117 + end + object v2Column3: TcxGridDBColumn + Tag = 2 + Caption = #21152#24037#21378 + DataBinding.FieldName = 'RKPlace' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 122 + end + object v2MxQty: TcxGridDBColumn + Tag = 2 + Caption = #25968#37327 + DataBinding.FieldName = 'MxQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 90 + end + object v2Column2: TcxGridDBColumn + Tag = 2 + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'MXUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v2MxNote: TcxGridDBColumn + Tag = 2 + Caption = #22791#27880 + DataBinding.FieldName = 'MxNote' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 145 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv2 + end + end + object ToolBar2: TToolBar + Left = 2 + Top = 2 + Width = 1056 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 1 + object ToolButton8: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton2Click + end + object ToolButton9: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton3Click + end + object ToolButton10: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #21040#36135#30830#23450 + ImageIndex = 113 + OnClick = ToolButton4Click + end + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 664 + Top = 256 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 936 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1000 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1040 + Top = 8 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 1168 + Top = 8 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 1096 + Top = 8 + end + object ClientDataSet3: TClientDataSet + Aggregates = <> + Params = <> + Left = 1112 + Top = 240 + end + object DataSource2: TDataSource + DataSet = ClientDataSet2 + Left = 880 + Top = 176 + end + object DataSource3: TDataSource + DataSet = ClientDataSet3 + Left = 1112 + Top = 216 + end + object ClientDataSet2: TClientDataSet + Aggregates = <> + Params = <> + Left = 920 + Top = 224 + 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 = 352 + Top = 192 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 400 + Top = 192 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 416 + Top = 248 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 440 + Top = 520 + end +end diff --git a/艾登贸易管理/U_ClothContractListDHSX.pas b/艾登贸易管理/U_ClothContractListDHSX.pas new file mode 100644 index 0000000..801fa95 --- /dev/null +++ b/艾登贸易管理/U_ClothContractListDHSX.pas @@ -0,0 +1,1022 @@ +unit U_ClothContractListDHSX; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, + RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, + cxTextEdit; + +type + TfrmClothContractListDHSX = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Label2: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + ConNoM: TEdit; + Label5: TLabel; + C_CodeNameM: TEdit; + Order_Main: TClientDataSet; + Label4: TLabel; + C_Spec: TEdit; + ToolButton2: TToolButton; + ToolButton3: TToolButton; + ToolButton4: TToolButton; + ClientDataSet3: TClientDataSet; + DataSource2: TDataSource; + DataSource3: TDataSource; + ClientDataSet2: TClientDataSet; + ToolButton5: TToolButton; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1Qty1: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + cxSplitter1: TcxSplitter; + Panel2: TPanel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2ComeDate: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2MxQty: TcxGridDBColumn; + v2MxNote: TcxGridDBColumn; + cxGrid2Level1: TcxGridLevel; + ToolBar2: TToolBar; + ToolButton8: TToolButton; + ToolButton9: TToolButton; + ToolButton10: TToolButton; + cxGridPopupMenu2: TcxGridPopupMenu; + v2Column2: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); + procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv3MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure ToolButton4Click(Sender: TObject); + procedure Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure ToolButton5Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure Button1Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure ConNoMKeyPress(Sender: TObject; var Key: Char); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + FInt,PFInt:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + function YFData():Boolean; + function DelYFData():Boolean; + { Private declarations } + public + { Public declarations } + end; + +var + frmClothContractListDHSX: TfrmClothContractListDHSX; + +implementation +uses + U_DataLink,U_ClothContractInPut,U_Fun,U_ProductOrderList,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmClothContractListDHSX.FormDestroy(Sender: TObject); +begin + frmClothContractListDHSX:=nil; +end; + +procedure TfrmClothContractListDHSX.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmClothContractListDHSX.FormCreate(Sender: TObject); +begin + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); +end; + +procedure TfrmClothContractListDHSX.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ͬSXdh',Tv1,'ָʾ'); + WriteCxGrid('ͬSXdhr',Tv2,'ָʾ'); +end; + +procedure TfrmClothContractListDHSX.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContractSX_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + + IF Order_Main.IsEmpty then exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*'); + sql.Add('from ContractSX_Sub_Mx A'); + sql.Add(' where A.SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and DHTYpe=''ǰӹ'' '); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet2); + SInitCDSData20(ADOQueryTemp,ClientDataSet2); + + + +end; + +procedure TfrmClothContractListDHSX.InitForm(); +begin + ReadCxGrid('ͬSXdh',Tv1,'ָʾ'); + ReadCxGrid('ͬSXdhr',Tv2,'ָʾ'); + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmClothContractListDHSX.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmClothContractListDHSX.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmClothContractListDHSX.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmClothContractListDHSX.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothContractListDHSX.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmClothContractListDHSX.ToolButton2Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + {with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + Application.MessageBox('δ¼!','ʾ',0); + Exit; + end else + begin + if ADOQueryTemp.RecordCount>1 then + begin + Application.MessageBox('¼ظ!','ʾ',0); + Exit; + end; + end; } + with ADOQueryTemp do + begin + Close; + SQL.Clear; + //sql.Add('select Top 1 * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + sql.Add('select Top 1* from ContractHZ_Main '); + sql.Add(' where ConNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + SQL.Add(' and ConType like ''%ɴ%'' '); + Open; + end; + ClientDataSet2.Append; + ClientDataSet2.FieldByName('MXUnit').Value:=Trim(Order_Main.fieldbyname('C_Unit').AsString); + //ClientDataSet2.FieldByName('RKPlace').Value:=Trim(ADOQueryTemp.fieldbyname('PBFactory').AsString); + //ClientDataSet2.FieldByName('RKPLCode').Value:=Trim(ADOQueryTemp.fieldbyname('PBFactory').AsString); + ClientDataSet2.FieldByName('RKPlace').Value:=Trim(ADOQueryTemp.fieldbyname('FactoryNoName').AsString); + ClientDataSet2.FieldByName('RKPLCode').Value:=Trim(ADOQueryTemp.fieldbyname('FactoryNoName').AsString); + ClientDataSet2.Post; +end; + +procedure TfrmClothContractListDHSX.Tv1FocusedRecordChanged( + Sender: TcxCustomGridTableView; APrevFocusedRecord, + AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*'); + sql.Add('from ContractSX_Sub_Mx A'); + sql.Add(' where A.SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet2); + SInitCDSData20(ADOQueryTemp,ClientDataSet2); + {with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo ,'); + sql.Add('C_Unit=(select Top 1 C_Unit from Contract_Sub AA,Contract_Sub_Mx BB where AA.SubId=BB.SubId and BB.MXid=A.Mxid)'); + SQL.Add('from Contract_Sub_MxTo A inner join JYOrder_Sub B on A.OrdSubId=B.SubId'); + SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId '); + sql.Add('where A.MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); } +end; + +procedure TfrmClothContractListDHSX.Tv2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=2; +end; + +procedure TfrmClothContractListDHSX.Tv1MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=1; +end; + +procedure TfrmClothContractListDHSX.Tv3MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=3; +end; + +procedure TfrmClothContractListDHSX.ToolButton4Click(Sender: TObject); +var + maxno:string; +begin + if ClientDataSet2.IsEmpty then Exit; + if ClientDataSet2.Locate('ComeDate',null,[]) then + begin + Application.MessageBox('ڲΪգ','ʾ',0); + Exit; + end; + if ClientDataSet2.Locate('RKPlace',null,[]) then + begin + Application.MessageBox('ŵص㲻Ϊգ','ʾ',0); + Exit; + end; + if ClientDataSet2.Locate('RKPlace','',[]) then + begin + Application.MessageBox('ŵص㲻Ϊգ','ʾ',0); + Exit; + end; + if ClientDataSet2.Locate('MxQty',null,[]) then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + BegDate.SetFocus; + try + ADOQueryCmd.Connection.BeginTrans; + //ϸ + with ClientDataSet2 do + begin + First; + while not eof do + begin + if Trim(ClientDataSet2.fieldbyname('MXId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,maxno,'QM','ContractSX_Sub_Mx',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡϸˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(ClientDataSet2.fieldbyname('MXId').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from ContractSX_Sub_Mx where MxId='''+Trim(ClientDataSet2.fieldbyname('MXId').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(ClientDataSet2.fieldbyname('MXId').AsString)='' then + Append + else + Edit; + FieldByName('MxId').Value:=Trim(maxno); + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + SSetSaveDataCDSNew(ADOQueryCmd,Tv2,ClientDataSet2,'ContractSX_Sub_Mx',2); + FieldByName('MXUnit').Value:=Trim(Order_Main.fieldbyname('C_Unit').AsString); + FieldByName('RKPLCode').Value:=Trim(ClientDataSet2.fieldbyname('RKPlace').AsString); + FieldByName('DHType').Value:='ǰӹ'; + if Trim(ClientDataSet2.fieldbyname('MxQty').AsString)='' then + begin + FieldByName('MxQty').Value:=0; + end; + Post; + end; + with ClientDataSet2 do + begin + Edit; + FieldByName('MxId').Value:=Trim(maxno); + Post; + end; + + if YFData()=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from ContractSX_Cloth_DH where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and FirstNo='''+Trim(ClientDataSet2.fieldbyname('RKPlace').AsString)+''''); + sql.Add(' and DHTYpe=''ǰӹ'' '); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd,maxno,'QD','ContractSX_Cloth_DH',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡϸˮʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from ContractSX_Cloth_DH where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(Order_Main.fieldbyname('Mainid').AsString); + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + FieldByName('DHId').Value:=Trim(maxno); + FieldByName('FirstNo').Value:=Trim(ClientDataSet2.fieldbyname('RKPLace').AsString); + FieldByName('FirstName').Value:=Trim(ClientDataSet2.fieldbyname('RKPLace').AsString); + FieldByName('DHUnit').Value:=Trim(Order_Main.fieldbyname('C_Unit').AsString); + FieldByName('DHType').Value:='ǰӹ'; + Post; + end; + + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update ContractSX_Cloth_DH Set DHUnit='''+Trim(Order_Main.fieldbyname('C_Unit').AsString)+''''); + sql.Add(' where DHID='''+Trim(ADOQueryTemp.fieldbyname('DHID').AsString)+''''); + ExecSQL; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update ContractSX_Cloth_DH Set DHQty=(select Sum(MxQty) from ContractSX_Sub_Mx A where A.SubId=ContractSX_Cloth_DH.SubId'); + sql.Add(' and A.RKPLace=ContractSX_Cloth_DH.FirstName and A.DHType=''ǰӹ'' )'); + sql.Add(' where SubId='''+Trim(Order_Main.fieldbyname('Subid').AsString)+''''); + sql.Add(' and FirstName='''+Trim(ClientDataSet2.fieldbyname('RKPLace').AsString)+''''); + sql.Add(' and DHType=''ǰӹ'' '); + ExecSQL; + end; + Next; + end; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete ContractSX_Cloth_DH '); + sql.Add('where not exists(select * from ContractSX_Sub_Mx A where A.SubId=ContractSX_Cloth_DH.SubId '); + sql.Add(' and A.RKPlace=ContractSX_Cloth_DH.firstName and A.DHType=''ǰӹ'') '); + sql.Add(' and SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and FirstName='''+Trim(ClientDataSet2.fieldbyname('RKPLace').AsString)+''''); + sql.Add(' and DHType=''ǰӹ'' '); + ExecSQL; + end; + {with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LLMX B where not exists(select * from '); + sql.Add(' Contract_Cloth_DH A where A.DHID=B.DHID '); + SQL.Add(' and A.SubId=B.SubId ) and B.SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + Application.MessageBox('ݽҲӦȾܱ!','ʾ',0); + //begin + ADOQueryCmd.Connection.RollbackTrans; + Exit; + //end; + end; } + {with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YFMoney'); + ExecSQL; + end;} + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; +function TfrmClothContractListDHSX.YFData():Boolean; +var + CRID,OrdMainId,YFID,FComTaiTou,FCRID,FFactoryName:String; +begin + Result:=False; +{ with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + + Application.MessageBox('δ¼!','ʾ',0); + Exit; + end else + begin + if ADOQueryTemp.RecordCount>1 then + begin + + Application.MessageBox('¼ظ!','ʾ',0); + Exit; + end; + end; } + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + OrdMainId:=Trim(ADOQueryTemp.fieldbyname('MainId').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select OrdDefStr2 from JYOrder_Main where Mainid='''+Trim(OrdMainId)+''''); + Open; + end; + FComTaiTou:=Trim(ADOQueryTemp.fieldbyname('OrdDefStr2').AsString); + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main.fieldbyname('FactoryNoName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FactoryNoName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where FactoryName='''+Trim(Order_Main.fieldbyname('FactoryNoName').AsString)+''''); + sql.Add(' and YFTypeId='''+Trim(ClientDataSet2.fieldbyname('MXId').AsString)+''''); + Open; + end; + //if ADOQueryTemp.IsEmpty then + begin + if ADOQueryTemp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd,YFID,'PF','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡӦʧ!','ʾ',0); + Exit; + end; + end else + begin + YFID:=Trim(ADOQueryTemp.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where YFID='''+Trim(YFID)+''''); + Open; + end; + with ADOQueryCmd do + begin + if ADOQueryTemp.IsEmpty then + Append + else + Edit; + FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(ClientDataSet2.fieldbyname('MXId').AsString); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FactoryNoName').AsString); + FieldByName('CRTime').Value:=ClientDataSet2.fieldbyname('ComeDate').Value; + FieldByName('Qty').Value:=ClientDataSet2.fieldbyname('MXQty').Value; + //FieldByName('PS').Value:=ClientDataSet2.fieldbyname('Qty1').Value; + FieldByName('YFType').Value:='Զ'; + FieldByName('Price').Value:=Order_Main.fieldbyname('Price').Value; + FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=''; + FieldByName('ComTaiTou').Value:=''; + FieldByName('QtyUnit').Value:=Trim(Order_Main.fieldbyname('C_Unit').AsString); + FieldByName('YFName').Value:='ɴ߷'; + FieldByName('MainId').Value:=Trim(OrdMainId); + Post; + end; + end; + {with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update YF_Money_CR Set Qty=(select isnull(Sum(MXQty),0) from Contract_Sub_MX A inner join'); + SQL.Add('Contract_Sub B on A.SubId=B.SubId where B.MainId=YF_Money_CR.YFTypeId)'); + sql.Add(',PS=(select isnull(Sum(A.Qty1),0) from Contract_Sub_MX A inner join'); + SQL.Add('Contract_Sub B on A.SubId=B.SubId where B.MainId=YF_Money_CR.YFTypeId)'); + sql.Add(' where YFTypeId='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+''''); + ExecSQL; + end;} + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty'); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + Result:=True; +end; +function TfrmClothContractListDHSX.DelYFData():Boolean; +var + CRID,OrdMainId,YFID:String; +begin + Result:=False; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main.fieldbyname('FactoryNoName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_CR where FactoryName='''+Trim(Order_Main.fieldbyname('FactoryNoName').AsString)+''''); + sql.Add(' and YFTypeId='''+Trim(ClientDataSet2.fieldbyname('MXId').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + Result:=True; +end; +procedure TfrmClothContractListDHSX.Tv2CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo ,'); + sql.Add('C_Unit=(select Top 1 C_Unit from Contract_Sub AA,Contract_Sub_Mx BB where AA.SubId=BB.SubId and BB.MXid=A.Mxid)'); + SQL.Add(' from Contract_Sub_MxTo A inner join JYOrder_Sub B on A.OrdSubId=B.SubId '); + SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId '); + sql.Add('where A.MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); +end; + +procedure TfrmClothContractListDHSX.ToolButton5Click(Sender: TObject); +var + maxno:string; +begin + if ClientDataSet3.IsEmpty then Exit; + if ClientDataSet2.IsEmpty then Exit; + if Trim(ClientDataSet2.fieldbyname('MXId').AsString)='' then + begin + Application.MessageBox('δȷ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('OrderNo',null,[]) then + begin + Application.MessageBox('ָŲΪգ','ʾ',0); + Exit; + end; + BegDate.SetFocus; + try + ADOQueryCmd.Connection.BeginTrans; + //ȥ + with ClientDataSet3 do + begin + First; + while not eof do + begin + if Trim(ClientDataSet3.fieldbyname('ToId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,maxno,'To','Contract_Sub_MxTo',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡȥˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(ClientDataSet3.fieldbyname('ToId').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub_MxTo where ToId='''+Trim(ClientDataSet3.fieldbyname('ToId').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(ClientDataSet3.fieldbyname('ToId').AsString)='' then + Append + else + Edit; + FieldByName('MxId').Value:=Trim(ClientDataSet2.fieldbyname('MxId').AsString); + FieldByName('ToId').Value:=Trim(maxno); + FieldByName('OrdSubId').Value:=Trim(ClientDataSet3.fieldbyname('OrdSubId').AsString); + FieldByName('TPDate').Value:=ClientDataSet3.fieldbyname('TPDate').Value; + FieldByName('TPPerson').Value:=ClientDataSet3.fieldbyname('TPPerson').Value; + FieldByName('TPNote').Value:=ClientDataSet3.fieldbyname('TPNote').Value; + if Trim(ClientDataSet3.fieldbyname('TPQty').AsString)<>'' then + FieldByName('TPQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value + else + FieldByName('TPQty').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty1').AsString)<>'' then + FieldByName('Qty1').Value:=ClientDataSet3.fieldbyname('Qty1').Value + else + FieldByName('Qty1').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty2').AsString)<>'' then + FieldByName('Qty2').Value:=ClientDataSet3.fieldbyname('Qty2').Value + else + FieldByName('Qty2').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty3').AsString)<>'' then + FieldByName('Qty3').Value:=ClientDataSet3.fieldbyname('Qty3').Value + else + FieldByName('Qty3').Value:=0; + Post; + end; + with ClientDataSet3 do + begin + Edit; + FieldByName('ToId').Value:=Trim(maxno); + Post; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +procedure TfrmClothContractListDHSX.ToolButton3Click(Sender: TObject); +begin + //if FInt=2 then + //begin + if ClientDataSet2.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete ContractSX_Sub_Mx where MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update ContractSX_Cloth_DH Set DHQty=(select isnull(Sum(MxQty),0) from ContractSX_Sub_Mx A where A.SubId=ContractSX_Cloth_DH.SubId'); + sql.Add(' and A.RKPLCode=ContractSX_Cloth_DH.FirstNo and A.DHTYpe=''ǰӹ'' )'); + sql.Add(' where SubId='''+Trim(Order_Main.fieldbyname('Subid').AsString)+''''); + sql.Add(' and FirstNo='''+Trim(ClientDataSet2.fieldbyname('RKPLCode').AsString)+''''); + SQL.Add(' and DHTYpe=''ǰӹ'''); + ExecSQL; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete ContractSX_Cloth_DH '); + sql.Add('where not exists(select * from ContractSX_Sub_Mx A where A.SubId=ContractSX_Cloth_DH.SubId '); + sql.Add(' and A.RKPlace=ContractSX_Cloth_DH.firstName and A.DHType=''ǰӹ'') '); + sql.Add(' and SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and FirstName='''+Trim(ClientDataSet2.fieldbyname('RKPLace').AsString)+''''); + sql.Add(' and DHType=''ǰӹ'' '); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from ContractSX_Sub_MX B where not exists(select * from '); + sql.Add(' ContractSX_Cloth_DH A where A.DHID=B.QJGDHID '); + SQL.Add(' and A.SubId=B.SubId ) and B.SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and isnull(QJGDHID,'''')<>'''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('Ѳݣɾ!','ʾ',0); + //begin + ADOQueryCmd.Connection.RollbackTrans; + Exit; + //end; + end; + DelYFData(); + ClientDataSet2.Delete; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ɾ쳣!','ʾ',0); + end; + //end; +end; + +procedure TfrmClothContractListDHSX.v2Column3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + //flag:='RKPlace'; + flag:='Factory'; + flagname:='ص'; + MainType:='PBFactory'; + if ShowModal=1 then + begin + with ClientDataSet2 do + begin + Edit; + FieldByName('RKPlace').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + FieldByName('RKPlCode').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractListDHSX.Button1Click(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmClothContractListDHSX.Button2Click(Sender: TObject); +begin + ToolButton3.Click; +end; + +procedure TfrmClothContractListDHSX.Button3Click(Sender: TObject); +begin + ToolButton4.Click; +end; + +procedure TfrmClothContractListDHSX.ConNoMKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(ConNoM.Text))<4 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContractSX_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and OM.conNo like '''+'%'+Trim(ConNoM.Text)+'%'+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmClothContractListDHSX.Tv1CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*'); + sql.Add('from ContractSX_Sub_Mx A'); + sql.Add(' where A.SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and DHTYpe=''ǰӹ'' '); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet2); + SInitCDSData20(ADOQueryTemp,ClientDataSet2); +end; + +end. diff --git a/艾登贸易管理/U_ClothContractListDHSXQJG.dfm b/艾登贸易管理/U_ClothContractListDHSXQJG.dfm new file mode 100644 index 0000000..e4760c5 --- /dev/null +++ b/艾登贸易管理/U_ClothContractListDHSXQJG.dfm @@ -0,0 +1,596 @@ +object frmClothContractListDHSXQJG: TfrmClothContractListDHSXQJG + Left = 174 + Top = -1 + Width = 1155 + Height = 754 + Caption = #32433#32447#21069#21152#24037 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1147 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 107 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBClose: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + object ToolButton2: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + Visible = False + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #21040#22383#30830#23450 + ImageIndex = 113 + Visible = False + OnClick = ToolButton4Click + end + object ToolButton5: TToolButton + Left = 402 + Top = 0 + Caption = #22383#24067#39046#26009#30830#23450 + ImageIndex = 114 + Visible = False + OnClick = ToolButton5Click + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1147 + Height = 54 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 22 + Width = 52 + Height = 12 + Caption = #30331#35760#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 161 + Top = 22 + Width = 18 + Height = 12 + Caption = '---' + end + object Label3: TLabel + Left = 283 + Top = 22 + Width = 52 + Height = 12 + Caption = #21512#21516#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 444 + Top = 22 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 612 + Top = 22 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 18 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 179 + Top = 18 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 1 + end + object ConNo: TEdit + Tag = 2 + Left = 337 + Top = 18 + Width = 81 + Height = 20 + TabOrder = 2 + OnChange = ConNoChange + OnKeyPress = ConNoKeyPress + end + object C_CodeNameM: TEdit + Tag = 2 + Left = 497 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = ConNoChange + end + object C_Spec: TEdit + Tag = 2 + Left = 640 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 4 + OnChange = ConNoChange + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 712 + Width = 1147 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + end + object Panel2: TPanel + Left = 0 + Top = 425 + Width = 1147 + Height = 287 + Align = alBottom + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 3 + object cxGrid2: TcxGrid + Left = 2 + Top = 34 + Width = 1143 + Height = 251 + Align = alClient + TabOrder = 0 + object Tv2: TcxGridDBTableView + OnMouseDown = Tv2MouseDown + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv2CellClick + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2MxQty + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + object v2ComeDate: TcxGridDBColumn + Tag = 2 + Caption = #20986#24211#26085#26399 + DataBinding.FieldName = 'ComeDate' + PropertiesClassName = 'TcxDateEditProperties' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 117 + end + object v2Column3: TcxGridDBColumn + Tag = 2 + Caption = #21518#21152#24037#21378 + DataBinding.FieldName = 'RKPlace' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 115 + end + object v2MxQty: TcxGridDBColumn + Tag = 2 + Caption = #25968#37327 + DataBinding.FieldName = 'MxQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 90 + end + object v2Column2: TcxGridDBColumn + Tag = 2 + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'MXUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object v2Column1: TcxGridDBColumn + Caption = #26579#32433#21333#20215 + DataBinding.FieldName = 'MXPrice' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 76 + end + object v2MxNote: TcxGridDBColumn + Tag = 2 + Caption = #22791#27880 + DataBinding.FieldName = 'MxNote' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 145 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv2 + end + end + object ToolBar2: TToolBar + Left = 2 + Top = 2 + Width = 1143 + AutoSize = True + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 1 + object ToolButton8: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton2Click + end + object ToolButton9: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton3Click + end + object ToolButton10: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 113 + OnClick = ToolButton4Click + end + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 86 + Width = 1147 + Height = 339 + Align = alClient + TabOrder = 4 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv1CellClick + DataController.DataSource = DataSource1 + 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 + Column = v1Column3 + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column8 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1OrderNo: TcxGridDBColumn + Caption = #21512#21516#32534#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 114 + end + object v1Column2: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_CodeName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 112 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 106 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = #21407#26448#26009#21378 + DataBinding.FieldName = 'FactoryNoName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 79 + end + object v1Column5: TcxGridDBColumn + Caption = #21069#21152#24037#21378 + DataBinding.FieldName = 'FirstName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 84 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'DHUnit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 64 + end + object v1Column3: TcxGridDBColumn + Caption = #21040#36135#25968#37327 + DataBinding.FieldName = 'DHQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1Column8: TcxGridDBColumn + Caption = #32433#32447#25968#37327 + DataBinding.FieldName = 'ClothQty' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column4: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'C_Note' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 664 + Top = 256 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 936 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1000 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1040 + Top = 8 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 1168 + Top = 8 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 1096 + Top = 8 + end + object ClientDataSet3: TClientDataSet + Aggregates = <> + Params = <> + Left = 1112 + Top = 240 + end + object DataSource2: TDataSource + DataSet = ClientDataSet2 + Left = 880 + Top = 176 + end + object DataSource3: TDataSource + DataSet = ClientDataSet3 + Left = 1112 + Top = 216 + end + object ClientDataSet2: TClientDataSet + Aggregates = <> + Params = <> + Left = 920 + Top = 224 + 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 = 352 + Top = 192 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 400 + Top = 192 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 416 + Top = 248 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 440 + Top = 520 + end +end diff --git a/艾登贸易管理/U_ClothContractListDHSXQJG.pas b/艾登贸易管理/U_ClothContractListDHSXQJG.pas new file mode 100644 index 0000000..24e7a69 --- /dev/null +++ b/艾登贸易管理/U_ClothContractListDHSXQJG.pas @@ -0,0 +1,1057 @@ +unit U_ClothContractListDHSXQJG; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, + RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, + cxTextEdit; + +type + TfrmClothContractListDHSXQJG = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Label2: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + ConNo: TEdit; + Label5: TLabel; + C_CodeNameM: TEdit; + Order_Main: TClientDataSet; + Label4: TLabel; + C_Spec: TEdit; + ToolButton2: TToolButton; + ToolButton3: TToolButton; + ToolButton4: TToolButton; + ClientDataSet3: TClientDataSet; + DataSource2: TDataSource; + DataSource3: TDataSource; + ClientDataSet2: TClientDataSet; + ToolButton5: TToolButton; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + cxSplitter1: TcxSplitter; + Panel2: TPanel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2ComeDate: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2MxQty: TcxGridDBColumn; + v2MxNote: TcxGridDBColumn; + cxGrid2Level1: TcxGridLevel; + ToolBar2: TToolBar; + ToolButton8: TToolButton; + ToolButton9: TToolButton; + ToolButton10: TToolButton; + cxGridPopupMenu2: TcxGridPopupMenu; + v2Column2: TcxGridDBColumn; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v2Column1: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); + procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv3MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure ToolButton4Click(Sender: TObject); + procedure Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure ToolButton5Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure Button1Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + FInt,PFInt:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + function YFData():Boolean; + function DelYFData():Boolean; + { Private declarations } + public + { Public declarations } + end; + +var + frmClothContractListDHSXQJG: TfrmClothContractListDHSXQJG; + +implementation +uses + U_DataLink,U_ClothContractInPut,U_Fun,U_ProductOrderList,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmClothContractListDHSXQJG.FormDestroy(Sender: TObject); +begin + frmClothContractListDHSXQJG:=nil; +end; + +procedure TfrmClothContractListDHSXQJG.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmClothContractListDHSXQJG.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ͬSXdhQJG',Tv1,'ָʾ'); + WriteCxGrid('ͬSXdhrQJG',Tv2,'ָʾ'); +end; + +procedure TfrmClothContractListDHSXQJG.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select ClothQty=DHQty-TPQtyHZ, '); + sql.Add(' A.*,B.ConNo,C.C_CodeName,C.C_Spec,C.MFQty,C.KZQty,B.FactoryNoName from ContractSX_Cloth_DH A '); + sql.add(' inner join ContractSX_Main B on A.Mainid=B.Mainid'); + sql.Add('inner join ContractSX_Sub C on A.Subid=C.Subid'); + sql.Add(' where B.FillTime>=:begdate and B.Filltime<:enddate and A.DHType=''ǰӹ'' '); + Parameters.ParamByName('begdate').Value:=BegDate.Date; + Parameters.ParamByName('enddate').Value:=EndDate.Date+1; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + IF Order_Main.IsEmpty then exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*'); + sql.Add('from ContractSX_Sub_Mx A'); + sql.Add(' where A.SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and A.DHType=''ǰ'' '); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet2); + SInitCDSData20(ADOQueryTemp,ClientDataSet2); +end; + +procedure TfrmClothContractListDHSXQJG.InitForm(); +begin + ReadCxGrid('ͬSXdhQJG',Tv1,'ָʾ'); + ReadCxGrid('ͬSXdhrQJG',Tv2,'ָʾ'); + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmClothContractListDHSXQJG.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmClothContractListDHSXQJG.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmClothContractListDHSXQJG.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmClothContractListDHSXQJG.ConNoChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothContractListDHSXQJG.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmClothContractListDHSXQJG.ToolButton2Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + {with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + Application.MessageBox('δ¼!','ʾ',0); + Exit; + end else + begin + if ADOQueryTemp.RecordCount>1 then + begin + Application.MessageBox('¼ظ!','ʾ',0); + Exit; + end; + end; } + if ClientDataSet2.Active=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1 * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + ClientDataSet2.Append; + ClientDataSet2.FieldByName('MXUnit').Value:=Trim(Order_Main.fieldbyname('DHUnit').AsString); + ClientDataSet2.Post; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1 * from ContractHZ_Main A inner join ContractHZ_Sub B on A.MainId=B.MainId'); + sql.Add(' where A.ConNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + sql.Add(' and A.ConType=''ɴǰӹ'''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + with ClientDataSet2 do + begin + Edit; + FieldByName('RKPlace').Value:=ADOQueryTemp.fieldbyname('FactoryNoName').Value; + FieldByName('MXPrice').Value:=ADOQueryTemp.fieldbyname('Price').Value; + Post; + end; + end; +end; + +procedure TfrmClothContractListDHSXQJG.Tv1FocusedRecordChanged( + Sender: TcxCustomGridTableView; APrevFocusedRecord, + AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*'); + sql.Add('from ContractSX_Sub_Mx A'); + sql.Add(' where A.SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet2); + SInitCDSData20(ADOQueryTemp,ClientDataSet2); + {with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo ,'); + sql.Add('C_Unit=(select Top 1 C_Unit from Contract_Sub AA,Contract_Sub_Mx BB where AA.SubId=BB.SubId and BB.MXid=A.Mxid)'); + SQL.Add('from Contract_Sub_MxTo A inner join JYOrder_Sub B on A.OrdSubId=B.SubId'); + SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId '); + sql.Add('where A.MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); } +end; + +procedure TfrmClothContractListDHSXQJG.Tv2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=2; +end; + +procedure TfrmClothContractListDHSXQJG.Tv1MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=1; +end; + +procedure TfrmClothContractListDHSXQJG.Tv3MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=3; +end; + +procedure TfrmClothContractListDHSXQJG.ToolButton4Click(Sender: TObject); +var + maxno:string; +begin + if ClientDataSet2.IsEmpty then Exit; + if ClientDataSet2.Locate('ComeDate',null,[]) then + begin + Application.MessageBox('ڲΪգ','ʾ',0); + Exit; + end; + if ClientDataSet2.Locate('RKPlace',null,[]) then + begin + Application.MessageBox('ӹΪգ','ʾ',0); + Exit; + end; + if ClientDataSet2.Locate('RKPlace','',[]) then + begin + Application.MessageBox('ӹΪգ','ʾ',0); + Exit; + end; + if ClientDataSet2.Locate('MxQty',null,[]) then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + if ClientDataSet2.Locate('MXPrice',null,[]) then + begin + Application.MessageBox('Ⱦɴ۲Ϊգ','ʾ',0); + Exit; + end; + BegDate.SetFocus; + try + ADOQueryCmd.Connection.BeginTrans; + //ϸ + with ClientDataSet2 do + begin + First; + while not eof do + begin + if Trim(ClientDataSet2.fieldbyname('MXId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,maxno,'MX','ContractSX_Sub_Mx',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡϸˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(ClientDataSet2.fieldbyname('MXId').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from ContractSX_Sub_Mx where MxId='''+Trim(ClientDataSet2.fieldbyname('MXId').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(ClientDataSet2.fieldbyname('MXId').AsString)='' then + Append + else + Edit; + FieldByName('MxId').Value:=Trim(maxno); + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + SSetSaveDataCDSNew(ADOQueryCmd,Tv2,ClientDataSet2,'ContractSX_Sub_Mx',2); + FieldByName('MXUnit').Value:=Trim(Order_Main.fieldbyname('DHUnit').AsString); + FieldByName('RKPLCode').Value:=Trim(ClientDataSet2.fieldbyname('RKPlace').AsString); + FieldByName('QJGDHID').Value:=Trim(Order_Main.fieldbyname('DHID').AsString); + FieldByName('DHTYpe').Value:='ǰ'; + if Trim(ClientDataSet2.fieldbyname('MxQty').AsString)='' then + begin + FieldByName('MxQty').Value:=0; + end; + if Trim(ClientDataSet2.fieldbyname('MxPrice').AsString)='' then + begin + FieldByName('MxPrice').Value:=0; + end; + Post; + end; + with ClientDataSet2 do + begin + Edit; + FieldByName('MxId').Value:=Trim(maxno); + Post; + end; + + if YFData()=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from ContractSX_Cloth_DH where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and FirstName='''+Trim(ClientDataSet2.fieldbyname('RKPlace').AsString)+''''); + sql.Add(' and DHTYpe=''ǰ'' '); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd,maxno,'SD','ContractSX_Cloth_DH',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡϸˮʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from ContractSX_Cloth_DH where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(Order_Main.fieldbyname('Mainid').AsString); + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + FieldByName('DHId').Value:=Trim(maxno); + FieldByName('FirstNo').Value:=Trim(ClientDataSet2.fieldbyname('RKPLace').AsString); + FieldByName('FirstName').Value:=Trim(ClientDataSet2.fieldbyname('RKPLace').AsString); + FieldByName('DHUnit').Value:=Trim(Order_Main.fieldbyname('DHUnit').AsString); + FieldByName('DHType').Value:='ǰ'; + Post; + end; + + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update ContractSX_Cloth_DH Set DHUnit='''+Trim(Order_Main.fieldbyname('DHUnit').AsString)+''''); + sql.Add(' where DHID='''+Trim(ADOQueryTemp.fieldbyname('DHID').AsString)+''''); + ExecSQL; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update ContractSX_Cloth_DH Set DHQty=(select Sum(MxQty) from ContractSX_Sub_Mx A where A.SubId=ContractSX_Cloth_DH.SubId'); + sql.Add(' and A.RKPLace=ContractSX_Cloth_DH.FirstName and A.DHTYpe=''ǰ'' )'); + sql.Add(' where SubId='''+Trim(Order_Main.fieldbyname('Subid').AsString)+''''); + sql.Add(' and FirstName='''+Trim(ClientDataSet2.fieldbyname('RKPLace').AsString)+''''); + sql.Add(' and DHType=''ǰ'' '); + ExecSQL; + end; + + Next; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate ContractSX_Cloth_DH Set TPQtyHZ=(select sum(MXQty) from ContractSX_Sub_Mx A where A.QJGDHID=ContractSX_Cloth_DH.DHID)'); + sql.Add(' where DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete ContractSX_Cloth_DH '); + sql.Add('where not exists(select * from ContractSX_Sub_Mx A where A.SubId=ContractSX_Cloth_DH.SubId '); + SQL.Add('and A.RKPlace=ContractSX_Cloth_DH.firstName and A.DHType=''ǰ'')'); + sql.Add(' and SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and firstName='''+Trim(ClientDataSet2.fieldbyname('RKPLace').AsString)+''''); + sql.Add(' and DHType=''ǰ'''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LLMX B where not exists(select * from '); + sql.Add(' Contract_Cloth_DH A where A.DHID=B.DHID '); + SQL.Add(' and A.SubId=B.SubId ) and B.SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + Application.MessageBox('ݽҲӦȾܱ!','ʾ',0); + //begin + ADOQueryCmd.Connection.RollbackTrans; + Exit; + //end; + end; + {with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YFMoney'); + ExecSQL; + end;} + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; +function TfrmClothContractListDHSXQJG.YFData():Boolean; +var + CRID,OrdMainId,YFID,FComTaiTou,FCRID,FFactoryName:String; +begin + Result:=False; +{ with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + + Application.MessageBox('δ¼!','ʾ',0); + Exit; + end else + begin + if ADOQueryTemp.RecordCount>1 then + begin + + Application.MessageBox('¼ظ!','ʾ',0); + Exit; + end; + end; } + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + OrdMainId:=Trim(ADOQueryTemp.fieldbyname('MainId').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select OrdDefStr2 from JYOrder_Main where Mainid='''+Trim(OrdMainId)+''''); + Open; + end; + FComTaiTou:=Trim(ADOQueryTemp.fieldbyname('OrdDefStr2').AsString); + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + sql.Add(' and YFTypeId='''+Trim(ClientDataSet2.fieldbyname('MXId').AsString)+''''); + Open; + end; + //if ADOQueryTemp.IsEmpty then + begin + if ADOQueryTemp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd,YFID,'SQ','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡӦʧ!','ʾ',0); + Exit; + end; + end else + begin + YFID:=Trim(ADOQueryTemp.fieldbyname('YFID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where YFID='''+Trim(YFID)+''''); + Open; + end; + with ADOQueryCmd do + begin + if ADOQueryTemp.IsEmpty then + Append + else + Edit; + FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(ClientDataSet2.fieldbyname('MXId').AsString); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('CRTime').Value:=ClientDataSet2.fieldbyname('ComeDate').Value; + FieldByName('Qty').Value:=ClientDataSet2.fieldbyname('MXQty').Value; + //FieldByName('PS').Value:=ClientDataSet2.fieldbyname('Qty1').Value; + FieldByName('YFType').Value:='Զ'; + if Trim(ClientDataSet2.fieldbyname('MXPrice').AsString)<>'' then + FieldByName('Price').Value:=ClientDataSet2.fieldbyname('MXPrice').Value + else + FieldByName('Price').Value:=0; + FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=''; + FieldByName('ComTaiTou').Value:=''; + FieldByName('QtyUnit').Value:=Trim(Order_Main.fieldbyname('DHUnit').AsString); + //FieldByName('YFName').Value:='ɴǰӹ'; + FieldByName('YFName').Value:='Ⱦɴ'; + FieldByName('MainId').Value:=Trim(OrdMainId); + Post; + end; + end; + {with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update YF_Money_CR Set Qty=(select isnull(Sum(MXQty),0) from Contract_Sub_MX A inner join'); + SQL.Add('Contract_Sub B on A.SubId=B.SubId where B.MainId=YF_Money_CR.YFTypeId)'); + sql.Add(',PS=(select isnull(Sum(A.Qty1),0) from Contract_Sub_MX A inner join'); + SQL.Add('Contract_Sub B on A.SubId=B.SubId where B.MainId=YF_Money_CR.YFTypeId)'); + sql.Add(' where YFTypeId='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+''''); + ExecSQL; + end;} + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty'); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + Result:=True; +end; +function TfrmClothContractListDHSXQJG.DelYFData():Boolean; +var + CRID,OrdMainId,YFID:String; +begin + Result:=False; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main.fieldbyname('FactoryNoName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_CR where FactoryName='''+Trim(Order_Main.fieldbyname('FactoryNoName').AsString)+''''); + sql.Add(' and YFTypeId='''+Trim(ClientDataSet2.fieldbyname('MXId').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + Result:=True; +end; +procedure TfrmClothContractListDHSXQJG.Tv2CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo ,'); + sql.Add('C_Unit=(select Top 1 C_Unit from Contract_Sub AA,Contract_Sub_Mx BB where AA.SubId=BB.SubId and BB.MXid=A.Mxid)'); + SQL.Add(' from Contract_Sub_MxTo A inner join JYOrder_Sub B on A.OrdSubId=B.SubId '); + SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId '); + sql.Add('where A.MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); +end; + +procedure TfrmClothContractListDHSXQJG.ToolButton5Click(Sender: TObject); +var + maxno:string; +begin + if ClientDataSet3.IsEmpty then Exit; + if ClientDataSet2.IsEmpty then Exit; + if Trim(ClientDataSet2.fieldbyname('MXId').AsString)='' then + begin + Application.MessageBox('δȷ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('OrderNo',null,[]) then + begin + Application.MessageBox('ָŲΪգ','ʾ',0); + Exit; + end; + BegDate.SetFocus; + try + ADOQueryCmd.Connection.BeginTrans; + //ȥ + with ClientDataSet3 do + begin + First; + while not eof do + begin + if Trim(ClientDataSet3.fieldbyname('ToId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,maxno,'To','Contract_Sub_MxTo',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡȥˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(ClientDataSet3.fieldbyname('ToId').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub_MxTo where ToId='''+Trim(ClientDataSet3.fieldbyname('ToId').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(ClientDataSet3.fieldbyname('ToId').AsString)='' then + Append + else + Edit; + FieldByName('MxId').Value:=Trim(ClientDataSet2.fieldbyname('MxId').AsString); + FieldByName('ToId').Value:=Trim(maxno); + FieldByName('OrdSubId').Value:=Trim(ClientDataSet3.fieldbyname('OrdSubId').AsString); + FieldByName('TPDate').Value:=ClientDataSet3.fieldbyname('TPDate').Value; + FieldByName('TPPerson').Value:=ClientDataSet3.fieldbyname('TPPerson').Value; + FieldByName('TPNote').Value:=ClientDataSet3.fieldbyname('TPNote').Value; + if Trim(ClientDataSet3.fieldbyname('TPQty').AsString)<>'' then + FieldByName('TPQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value + else + FieldByName('TPQty').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty1').AsString)<>'' then + FieldByName('Qty1').Value:=ClientDataSet3.fieldbyname('Qty1').Value + else + FieldByName('Qty1').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty2').AsString)<>'' then + FieldByName('Qty2').Value:=ClientDataSet3.fieldbyname('Qty2').Value + else + FieldByName('Qty2').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty3').AsString)<>'' then + FieldByName('Qty3').Value:=ClientDataSet3.fieldbyname('Qty3').Value + else + FieldByName('Qty3').Value:=0; + Post; + end; + with ClientDataSet3 do + begin + Edit; + FieldByName('ToId').Value:=Trim(maxno); + Post; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +procedure TfrmClothContractListDHSXQJG.ToolButton3Click(Sender: TObject); +begin + //if FInt=2 then + //begin + if ClientDataSet2.IsEmpty then Exit; + if Trim(ClientDataSet2.FieldByName('MxId').AsString)='' then + begin + ClientDataSet2.Delete; + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete ContractSX_Sub_Mx where MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update ContractSX_Cloth_DH Set DHQty=(select isnull(Sum(MxQty),0) from ContractSX_Sub_Mx A where A.SubId=ContractSX_Cloth_DH.SubId'); + sql.Add(' and A.RKPLace=ContractSX_Cloth_DH.FirstName)'); + sql.Add(' where SubId='''+Trim(Order_Main.fieldbyname('Subid').AsString)+''''); + sql.Add(' and FirstNo='''+Trim(ClientDataSet2.fieldbyname('RKPLCode').AsString)+''''); + ExecSQL; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete ContractSX_Cloth_DH '); + sql.Add('where not exists(select * from ContractSX_Sub_Mx A where A.SubId=ContractSX_Cloth_DH.SubId and A.RKPlace=ContractSX_Cloth_DH.firstName) '); + sql.Add(' and SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from ContractSX_Cloth_LLMX B where not exists(select * from '); + sql.Add(' ContractSX_Cloth_DH A where A.DHID=B.DHID '); + SQL.Add(' and A.SubId=B.SubId ) and B.SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + Application.MessageBox('Ѳݣɾ!','ʾ',0); + //begin + ADOQueryCmd.Connection.RollbackTrans; + Exit; + //end; + end; + DelYFData(); + ClientDataSet2.Delete; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ɾ쳣!','ʾ',0); + end; + //end; +end; + +procedure TfrmClothContractListDHSXQJG.v2Column3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + //flag:='RKPlace'; + flag:='Factory'; + flagname:='ص'; + MainType:='PBFactory'; + if ShowModal=1 then + begin + with ClientDataSet2 do + begin + Edit; + FieldByName('RKPlace').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + FieldByName('RKPlCode').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractListDHSXQJG.Button1Click(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmClothContractListDHSXQJG.Button2Click(Sender: TObject); +begin + ToolButton3.Click; +end; + +procedure TfrmClothContractListDHSXQJG.Button3Click(Sender: TObject); +begin + ToolButton4.Click; +end; + +procedure TfrmClothContractListDHSXQJG.ConNoKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(ConNo.Text))<4 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select ClothQty=DHQty-TPQtyHZ, '); + sql.Add(' A.*,B.ConNo,C.C_CodeName,C.C_Spec,C.MFQty,C.KZQty,B.FactoryNoName from ContractSX_Cloth_DH A '); + sql.add(' inner join ContractSX_Main B on A.Mainid=B.Mainid'); + sql.Add('inner join ContractSX_Sub C on A.Subid=C.Subid'); + sql.Add(' where B.ConNO like '''+'%'+Trim(ConNo.Text)+'%'+''' and A.DHType=''ǰӹ'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmClothContractListDHSXQJG.Tv1CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*'); + sql.Add('from ContractSX_Sub_Mx A'); + sql.Add(' where A.SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and A.DHType=''ǰ'' '); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet2); + SInitCDSData20(ADOQueryTemp,ClientDataSet2); +end; + +end. diff --git a/艾登贸易管理/U_ClothContractListHZ.dfm b/艾登贸易管理/U_ClothContractListHZ.dfm new file mode 100644 index 0000000..bf59709 --- /dev/null +++ b/艾登贸易管理/U_ClothContractListHZ.dfm @@ -0,0 +1,434 @@ +object frmClothContractListHZ: TfrmClothContractListHZ + Left = 88 + Top = 146 + Width = 1124 + Height = 532 + Caption = #37319#36141#21512#21516 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1108 + AutoSize = True + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBAdd: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object TBDel: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 315 + Top = 0 + Caption = #22797#21046 + ImageIndex = 58 + OnClick = ToolButton1Click + end + object TBExport: TToolButton + Left = 374 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + Visible = False + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 437 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 500 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1108 + Height = 54 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 22 + Width = 52 + Height = 12 + Caption = #30331#35760#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 165 + Top = 22 + Width = 6 + Height = 12 + Caption = '-' + end + object Label3: TLabel + Left = 283 + Top = 22 + Width = 52 + Height = 12 + Caption = #21512#21516#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 444 + Top = 22 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 612 + Top = 22 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 18 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 171 + Top = 18 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object ConNoM: TEdit + Tag = 2 + Left = 337 + Top = 18 + Width = 81 + Height = 20 + TabOrder = 2 + OnChange = ConNoMChange + end + object C_CodeNameM: TEdit + Tag = 2 + Left = 497 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = ConNoMChange + end + object C_Spec: TEdit + Tag = 2 + Left = 640 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 4 + OnChange = ConNoMChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 86 + Width = 1108 + Height = 408 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + Column = v1Column1 + end + item + Kind = skSum + Column = v1PRTQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + object v1OrderNo: TcxGridDBColumn + Caption = #21512#21516#32534#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 127 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = #20379#26041 + DataBinding.FieldName = 'FactoryNoName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 124 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DeliveryDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 82 + end + object v1Column5: TcxGridDBColumn + Caption = #31614#35746#26085#26399 + DataBinding.FieldName = 'QDTime' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 86 + end + object v1Column2: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_CodeName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 110 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 102 + end + object v1Qty1: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'RollNum' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 46 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 58 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'QtyUnit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 47 + end + object v1Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 57 + end + object v1PRTQty: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'Money' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 58 + end + object v1Column4: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'C_Note' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 150 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 1128 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 936 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1000 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1040 + Top = 8 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 1168 + Top = 8 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 1096 + Top = 8 + 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 = 352 + Top = 192 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_PRT + Left = 400 + Top = 192 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 416 + Top = 248 + end + object CDS_PRT: TClientDataSet + Aggregates = <> + Params = <> + Left = 880 + Top = 56 + end +end diff --git a/艾登贸易管理/U_ClothContractListHZ.pas b/艾登贸易管理/U_ClothContractListHZ.pas new file mode 100644 index 0000000..1f83510 --- /dev/null +++ b/艾登贸易管理/U_ClothContractListHZ.pas @@ -0,0 +1,356 @@ +unit U_ClothContractListHZ; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, + RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, + cxTextEdit, cxPC; + +type + TfrmClothContractListHZ = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Label2: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + ConNoM: TEdit; + Label5: TLabel; + C_CodeNameM: TEdit; + TBExport: TToolButton; + Order_Main: TClientDataSet; + Label4: TLabel; + C_Spec: TEdit; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + CDS_PRT: TClientDataSet; + ToolButton1: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1Qty1: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1PRTQty: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure cxPageControl1Change(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + private + FInt,PFInt:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + { Private declarations } + public + { Public declarations } + end; + +var + frmClothContractListHZ: TfrmClothContractListHZ; + +implementation +uses + U_DataLink,U_ClothContractInPutSX,U_Fun,U_ProductOrderList,U_ZDYHelp,U_ClothContractInPutSXMX + ,U_ClothContractInPutHZ,U_ClothContractInPutPB; + +{$R *.dfm} + +procedure TfrmClothContractListHZ.FormDestroy(Sender: TObject); +begin + frmClothContractListHZ:=nil; +end; + +procedure TfrmClothContractListHZ.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmClothContractListHZ.TBCloseClick(Sender: TObject); +begin + + ReadCxGrid(self.Caption,Tv1,'ָʾ'); + Close; +end; + +procedure TfrmClothContractListHZ.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select A.*,B.* '); + sql.Add('from Contract_sub A'); + sql.Add('inner join Contract_Main B on B.mainID=A.mainID'); + sql.Add('where FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+''''); + sql.Add('and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''); + sql.Add('and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''); + sql.Add('and HTType=''ɹͬ'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + +end; + +procedure TfrmClothContractListHZ.InitForm(); +begin + ReadCxGrid(self.Caption,Tv1,'ָʾ'); + if Trim(DParameters1)='1' then + begin + TBPrint.Visible:=False; + v1Column1.Visible:=False; + v1Column1.Hidden:=True; + v1PRTQty.Visible:=False; + v1PRTQty.Hidden:=True; + end else + begin + v1Column1.Visible:=True; + v1Column1.Hidden:=False; + v1PRTQty.Visible:=True; + v1PRTQty.Hidden:=False; + TBPrint.Visible:=True; + end; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmClothContractListHZ.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothContractListHZ.TBEditClick(Sender: TObject); +begin + try + frmClothContractInPutPB:=TfrmClothContractInPutPB.Create(Application); + with frmClothContractInPutPB do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + FConNo:=Trim(Self.Order_Main.fieldbyname('ConNo').AsString); + if ShowModal=1 then + begin + InitGrid(); + end; + end; + finally + frmClothContractInPutPB.Free; + end; + +end; + +procedure TfrmClothContractListHZ.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub where mainID='''+Trim(Order_Main.fieldbyname('mainID').AsString)+''''); + sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + InitGrid(); +end; + +function TfrmClothContractListHZ.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete ContractSX_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from ContractSX_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete ContractSX_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete ContractSX_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmClothContractListHZ.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel('ͬб',cxGrid1); +end; + +procedure TfrmClothContractListHZ.TBPrintClick(Sender: TObject); +var + fPrintFile,FConNoM:string; + +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ͬ.rmf' ; + with ADOQueryTemp do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select A.*,B.* '); + sql.Add('from Contract_sub A'); + sql.Add('inner join Contract_Main B on B.mainID=A.mainID'); + sql.Add('where B.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_PRT); + SInitCDSData20(ADOQueryTemp,CDS_PRT); + + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+trim(fPrintFile)),'ʾ',0); + end; + +end; + +procedure TfrmClothContractListHZ.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmClothContractListHZ.TBAddClick(Sender: TObject); +begin + try + frmClothContractInPutPB:=TfrmClothContractInPutPB.Create(Application); + with frmClothContractInPutPB do + begin + PState:=0; + FMainId:=''; + if ShowModal=1 then + begin + InitGrid(); + end; + end; + finally + frmClothContractInPutPB.Free; + end; +end; + +procedure TfrmClothContractListHZ.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothContractListHZ.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmClothContractListHZ.cxPageControl1Change(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmClothContractListHZ.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmClothContractInPutPB:=TfrmClothContractInPutPB.Create(Application); + with frmClothContractInPutPB do + begin + PState:=1; + PCopyInt:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + FConNo:=Trim(Self.Order_Main.fieldbyname('ConNo').AsString); + if ShowModal=1 then + begin + InitGrid(); + end; + end; + finally + frmClothContractInPutPB.Free; + end; +end; + +end. diff --git a/艾登贸易管理/U_ClothContractListLL.dfm b/艾登贸易管理/U_ClothContractListLL.dfm new file mode 100644 index 0000000..c87a517 --- /dev/null +++ b/艾登贸易管理/U_ClothContractListLL.dfm @@ -0,0 +1,771 @@ +object frmClothContractListLL: TfrmClothContractListLL + Left = 110 + Top = 14 + Width = 1279 + Height = 705 + Caption = #22383#24067#39046#26009 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1263 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 107 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBClose: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + object ToolButton2: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + Visible = False + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #21040#22383#30830#23450 + ImageIndex = 113 + Visible = False + end + object ToolButton5: TToolButton + Left = 402 + Top = 0 + Caption = #22383#24067#39046#26009#30830#23450 + ImageIndex = 114 + Visible = False + OnClick = ToolButton5Click + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1263 + Height = 54 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 22 + Width = 52 + Height = 12 + Caption = #30331#35760#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 161 + Top = 22 + Width = 18 + Height = 12 + Caption = '---' + end + object Label3: TLabel + Left = 283 + Top = 22 + Width = 52 + Height = 12 + Caption = #21512#21516#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 444 + Top = 22 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 612 + Top = 22 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 748 + Top = 22 + Width = 39 + Height = 12 + Caption = #22383#24067#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 892 + Top = 22 + Width = 26 + Height = 12 + Caption = #26579#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 18 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 179 + Top = 18 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object ConNo: TEdit + Tag = 2 + Left = 337 + Top = 18 + Width = 81 + Height = 20 + TabOrder = 2 + OnChange = ConNoChange + OnKeyPress = ConNoKeyPress + end + object C_CodeName: TEdit + Tag = 2 + Left = 497 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = ConNoChange + end + object C_Spec: TEdit + Tag = 2 + Left = 640 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 4 + OnChange = ConNoChange + end + object FactoryNoName: TEdit + Tag = 2 + Left = 792 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 5 + OnChange = ConNoChange + end + object FirstName: TEdit + Tag = 2 + Left = 920 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 6 + OnChange = ConNoChange + end + end + object Panel2: TPanel + Left = 0 + Top = 366 + Width = 1263 + Height = 301 + Align = alBottom + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 2 + object cxGrid3: TcxGrid + Left = 2 + Top = 34 + Width = 1259 + Height = 265 + Align = alClient + TabOrder = 0 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource3 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v3TPPS + end + item + Kind = skSum + Column = v3Column2 + end + item + Kind = skSum + Column = v3Column5 + end + item + Kind = skSum + Column = v3Column4 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_TradeManage.Default + object cxGridDBColumn1: TcxGridDBColumn + Caption = #35746#21333#32534#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 98 + end + object v3Column9: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'MprtCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 84 + end + object cxGridDBPRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 66 + end + object v3Column12: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'SOrddefstr1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 63 + end + object v3Column10: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'PrtKuanNO' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v3Column16: TcxGridDBColumn + Caption = #33457#22411#33457#21495 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taRightJustify + Options.Editing = False + Options.Focusing = False + Width = 67 + end + object v3Column13: TcxGridDBColumn + Caption = #20844#26020#25968 + DataBinding.FieldName = 'PRTOrderKgQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 56 + end + object v3Column14: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 60 + end + object v3Column15: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 62 + end + object v3Column6: TcxGridDBColumn + Caption = #39046#26009#26085#26399 + DataBinding.FieldName = 'TPDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 81 + end + object v3Column3: TcxGridDBColumn + Caption = #25237#22383#21305#25968 + DataBinding.FieldName = 'Qty1' + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v3TPPS: TcxGridDBColumn + Caption = #21305#25968#37327 + DataBinding.FieldName = 'TPPS' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 61 + end + object v3Column2: TcxGridDBColumn + Caption = #25968#37327'('#35745#21010')' + DataBinding.FieldName = 'TPQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v3Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 97 + end + object v3Column5: TcxGridDBColumn + Caption = #35745#21010#32553#29575'(%)' + DataBinding.FieldName = 'Qty3' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v3Column5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 85 + end + object v3Column4: TcxGridDBColumn + Caption = #25968#37327#20844#24046 + DataBinding.FieldName = 'Qty2' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v3Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 85 + end + object v3Column1: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'TPUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.ImmediatePost = True + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 59 + end + object v3Column7: TcxGridDBColumn + Caption = #25237#22383#20154 + DataBinding.FieldName = 'TPPerson' + HeaderAlignmentHorz = taCenter + Width = 47 + end + object v3Column11: TcxGridDBColumn + Caption = #32568#36153 + DataBinding.FieldName = 'GangFee' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v3Column8: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'TPNote' + HeaderAlignmentHorz = taCenter + Width = 105 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv3 + end + end + object ToolBar2: TToolBar + Left = 2 + Top = 2 + Width = 1259 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 107 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 1 + object ToolButton8: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton2Click + end + object ToolButton9: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton3Click + end + object ToolButton11: TToolButton + Left = 126 + Top = 0 + Caption = #22383#24067#39046#26009#30830#23450 + ImageIndex = 114 + OnClick = ToolButton5Click + end + object ToolButton1: TToolButton + Left = 233 + Top = 0 + AutoSize = True + Caption = #19968#38190#26367#25442 + ImageIndex = 54 + OnClick = ToolButton1Click + end + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 358 + Width = 1263 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + Control = Panel2 + end + object cxGrid1: TcxGrid + Left = 0 + Top = 86 + Width = 1263 + Height = 272 + Align = alClient + TabOrder = 4 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column6 + end + item + Kind = skSum + Column = v1Column3 + end + item + Kind = skSum + Column = v1Column7 + end + item + Kind = skSum + Column = v1Column8 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1OrderNo: TcxGridDBColumn + Caption = #21512#21516#32534#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 114 + end + object v1Column2: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_CodeName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 112 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = #22383#24067#21378 + DataBinding.FieldName = 'FactoryNoName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 79 + end + object v1Column5: TcxGridDBColumn + Caption = #26579#21378 + DataBinding.FieldName = 'FirstName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 84 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 99 + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'MFQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'KZQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'DHUnit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 64 + end + object v1Column6: TcxGridDBColumn + Caption = #21040#36135#21305#25968 + DataBinding.FieldName = 'DHPS' + HeaderAlignmentHorz = taCenter + Width = 62 + end + object v1Column3: TcxGridDBColumn + Caption = #21040#36135#25968#37327 + DataBinding.FieldName = 'DHQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1Column7: TcxGridDBColumn + Caption = #30333#22383#21305#25968 + DataBinding.FieldName = 'ClothPS' + HeaderAlignmentHorz = taCenter + Width = 64 + end + object v1Column8: TcxGridDBColumn + Caption = #30333#22383#25968#37327 + DataBinding.FieldName = 'ClothQty' + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v1Column4: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'C_Note' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 752 + Top = 216 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 936 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1000 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1040 + Top = 8 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 1168 + Top = 8 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 1096 + Top = 8 + end + object ClientDataSet3: TClientDataSet + Aggregates = <> + Params = <> + Left = 1112 + Top = 240 + end + object DataSource2: TDataSource + DataSet = ClientDataSet2 + Left = 880 + Top = 176 + end + object DataSource3: TDataSource + DataSet = ClientDataSet3 + Left = 1112 + Top = 216 + end + object ClientDataSet2: TClientDataSet + Aggregates = <> + Params = <> + Left = 920 + Top = 224 + 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 = 352 + Top = 192 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 400 + Top = 192 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 416 + Top = 248 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 968 + Top = 480 + end +end diff --git a/艾登贸易管理/U_ClothContractListLL.pas b/艾登贸易管理/U_ClothContractListLL.pas new file mode 100644 index 0000000..d8d3dfd --- /dev/null +++ b/艾登贸易管理/U_ClothContractListLL.pas @@ -0,0 +1,1214 @@ +unit U_ClothContractListLL; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, + RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, + cxTextEdit, cxDropDownEdit, cxCheckBox, cxCurrencyEdit, cxCalc; + +type + TfrmClothContractListLL = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Label2: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + ConNo: TEdit; + Label5: TLabel; + C_CodeName: TEdit; + Order_Main: TClientDataSet; + Label4: TLabel; + C_Spec: TEdit; + ToolButton2: TToolButton; + ToolButton3: TToolButton; + ToolButton4: TToolButton; + ClientDataSet3: TClientDataSet; + DataSource2: TDataSource; + DataSource3: TDataSource; + ClientDataSet2: TClientDataSet; + ToolButton5: TToolButton; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + Panel2: TPanel; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBPRTColor: TcxGridDBColumn; + v3Column6: TcxGridDBColumn; + v3Column3: TcxGridDBColumn; + v3Column2: TcxGridDBColumn; + v3Column4: TcxGridDBColumn; + v3Column5: TcxGridDBColumn; + v3Column7: TcxGridDBColumn; + v3Column8: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + cxSplitter1: TcxSplitter; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1Column3: TcxGridDBColumn; + ToolBar2: TToolBar; + ToolButton8: TToolButton; + ToolButton9: TToolButton; + ToolButton11: TToolButton; + v1Column5: TcxGridDBColumn; + cxGridPopupMenu2: TcxGridPopupMenu; + Label6: TLabel; + FactoryNoName: TEdit; + Label7: TLabel; + FirstName: TEdit; + v3Column1: TcxGridDBColumn; + v3TPPS: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + ToolButton1: TToolButton; + v3Column11: TcxGridDBColumn; + v3Column12: TcxGridDBColumn; + v3Column13: TcxGridDBColumn; + v3Column14: TcxGridDBColumn; + v3Column15: TcxGridDBColumn; + v3Column16: TcxGridDBColumn; + v3Column9: TcxGridDBColumn; + v3Column10: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure ToolButton5Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v3Column2PropertiesEditValueChanged(Sender: TObject); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + procedure ToolButton1Click(Sender: TObject); + procedure v3Column5PropertiesEditValueChanged(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); + private + FInt,PFInt:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + function YFData():Boolean; + { Private declarations } + public + { Public declarations } + end; + +var + frmClothContractListLL: TfrmClothContractListLL; + +implementation +uses + U_DataLink,U_ClothContractInPut,U_Fun,U_ProductOrderListSel,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmClothContractListLL.FormDestroy(Sender: TObject); +begin + frmClothContractListLL:=nil; +end; + +procedure TfrmClothContractListLL.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmClothContractListLL.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ͬll1',Tv1,'ָʾ'); + WriteCxGrid('ͬllr11',Tv3,'ָʾ'); +end; + +procedure TfrmClothContractListLL.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select ClothPS=A.DHPS-A.TPPSHZ,ClothQty=A.DHQty-A.TPQtyHZ, A.DHUnit,SXMainId='''',SXDHID='''',A.MainId,A.SubId'); + SQL.Add(' ,A.DHID,A.DHPS,A.TPPSHZ,A.TPQtyHZ,A.DHQty,A.FirstName,B.ConNo,C.C_CodeName,C.C_Spec,C.MFQty,C.KZQty,B.FactoryNoName '); + sql.Add(' from Contract_Cloth_DH A inner join Contract_Main B on A.Mainid=B.Mainid'); + sql.Add(' inner join Contract_Sub C on A.Subid=C.Subid'); + SQL.Add(' where B.FillTime>='''+FormatDateTime('yyyy-MM-dd',BegDate.Date)+''' '); + sql.Add(' and B.Filltime<'''+FormatDateTime('yyyy-MM-dd',EndDate.Date+1)+''''); + sql.add(' and isnull(A.DHType,'''')='''''); + sql.Add(' union all'); + sql.Add(' select ClothPS=A.DHPS-A.TPPSHZ,ClothQty=A.DHQty-A.TPQtyHZ,A.DHUnit,A.SXMainId,A.SXDHID,A.MainId,A.SubId '); + SQL.Add(' ,A.DHID,A.DHPS,A.TPPSHZ,A.TPQtyHZ,A.DHQty,A.FirstName '); + sql.Add(',ConNo=(select Top 1 ConNo from ContractSX_Main SM where SM.MainId=A.SXMainId)'); + sql.Add(',C_CodeName=A.PBName,C_Spec=A.PBSpec,MFQty=A.PBMF,KZQty=A.PBKZ'); + SQL.Add(',FactoryNoName=(select Top 1 FirstName from ContractSX_Cloth_DH SD where SD.DHID=A.SXDHID)'); + sql.Add(' from Contract_Cloth_DH A '); + SQL.Add(' where exists(select * from ContractSX_Main B where B.MainId=A.SXMainId'); + SQL.Add(' and B.FillTime>='''+FormatDateTime('yyyy-MM-dd',BegDate.Date)+''' '); + sql.Add(' and B.Filltime<'''+FormatDateTime('yyyy-MM-dd',EndDate.Date+1)+''')'); + sql.Add(' and isnull(A.DHType,'''')<>'''' '); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmClothContractListLL.InitForm(); +begin + + ReadCxGrid('ͬll1',Tv1,'ָʾ'); + ReadCxGrid('ͬllr11',Tv3,'ָʾ'); + EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + BegDate.DateTime:=EndDate.DateTime-30; + InitGrid(); +end; + +procedure TfrmClothContractListLL.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmClothContractListLL.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmClothContractListLL.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmClothContractListLL.ConNoChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothContractListLL.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmClothContractListLL.ToolButton2Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + begin + try + frmProductOrderListSel:=TfrmProductOrderListSel.Create(Application); + with frmProductOrderListSel do + begin + OrderNoM.Text:=Trim(self.Order_Main.fieldbyname('ConNo').AsString); + if ShowModal=1 then + begin + with frmProductOrderListSel.Order_Main do + begin + frmProductOrderListSel.Order_Main.First; + while not frmProductOrderListSel.Order_Main.Eof do + begin + if frmProductOrderListSel.Order_Main.FieldByName('SSel').AsBoolean=True then + begin + with Self.ClientDataSet3 do + begin + Self.ClientDataSet3.Append; + Self.ClientDataSet3.FieldByName('OrdSubId').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('SubId').AsString); + Self.ClientDataSet3.FieldByName('OrderNo').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('OrderNo').AsString); + Self.ClientDataSet3.FieldByName('MPRTCodeName').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('MPRTCodeName').AsString); + Self.ClientDataSet3.FieldByName('MPRTSpec').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('MPRTSpec').AsString); + Self.ClientDataSet3.FieldByName('PRTColor').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('PRTColor').AsString); + Self.ClientDataSet3.FieldByName('PRTkuanNo').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('PRTkuanNo').AsString); + Self.ClientDataSet3.FieldByName('SOrddefstr1').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('SOrddefstr1').AsString); + Self.ClientDataSet3.FieldByName('PRTOrderKgQty').Value:=0; + Self.ClientDataSet3.FieldByName('PRTOrderQty').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('PRTOrderQty').AsString); + Self.ClientDataSet3.FieldByName('OrderUnit').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('OrderUnit').AsString); + Self.ClientDataSet3.FieldByName('PRTHX').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('PRTHX').AsString); + Self.ClientDataSet3.FieldByName('TPUnit').Value:=Self.Order_Main.FieldByName('DHUnit').Value; + Self.ClientDataSet3.FieldByName('Qty2').Value:=0; + end; + end; + frmProductOrderListSel.Order_Main.Next; + end; + end; + end; + end; + finally + frmProductOrderListSel.Free; + end; + end; +end; + +procedure TfrmClothContractListLL.Tv2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=2; +end; + +procedure TfrmClothContractListLL.Tv2CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo ,'); + sql.Add('C_Unit=(select Top 1 C_Unit from Contract_Sub AA,Contract_Sub_Mx BB where AA.SubId=BB.SubId and BB.MXid=A.Mxid)'); + SQL.Add(' from Contract_Sub_MxTo A inner join JYOrder_Sub B on A.OrdSubId=B.SubId '); + SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId '); + sql.Add('where A.MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); +end; + +procedure TfrmClothContractListLL.ToolButton5Click(Sender: TObject); +var + maxno,LLIdx,FDW:string; +begin + if ClientDataSet3.IsEmpty then Exit; + ToolBar1.SetFocus; + if ClientDataSet3.Locate('OrderNo',null,[]) then + begin + Application.MessageBox('ָŲΪգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('TPPS',null,[]) then + begin + Application.MessageBox('ƥΪգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('TPQty',null,[]) then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('Qty2',null,[]) then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('TPUnit',null,[]) then + begin + Application.MessageBox('λΪգ','ʾ',0); + Exit; + end; + ClientDataSet3.DisableControls; + with ClientDataSet3 do + begin + First; + while not Eof do + begin + + if Trim(FDW)='' then + begin + FDW:=Trim(ClientDataSet3.fieldbyname('TPUnit').AsString); + end; + if FDW<>Trim(ClientDataSet3.fieldbyname('TPUnit').AsString) then + begin + Application.MessageBox('λһ!','ʾ',0); + Exit; + end; + Next; + end; + end; + ClientDataSet3.EnableControls; + if Trim(Order_Main.fieldbyname('DHUnit').AsString)='M' then + begin + if ClientDataSet3.Locate('TPUnit','Kg',[]) then + begin + Application.MessageBox('ͬλΪM,λΪKg','ʾ',0); + Exit; + end; + end; + + BegDate.SetFocus; + if tv3.DataController.Summary.FooterSummaryValues[0]> Order_Main.FieldByName('dhps').AsFloat then + begin + Application.MessageBox('Ͷƥܴڵƥ','ʾ',0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + //ȥ + with ClientDataSet3 do + begin + First; + while not eof do + begin + if Trim(ClientDataSet3.fieldbyname('MXId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,maxno,'MX','Contract_Cloth_LLMx',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡȥˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(ClientDataSet3.fieldbyname('MXId').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LLMx where MXId='''+Trim(ClientDataSet3.fieldbyname('MXId').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(ClientDataSet3.fieldbyname('MXId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(Order_Main.fieldbyname('MainId').AsString); + FieldByName('SXMainId').Value:=Trim(Order_Main.fieldbyname('SXMainId').AsString); + FieldByName('SXDHId').Value:=Trim(Order_Main.fieldbyname('SXDHId').AsString); + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + FieldByName('DHId').Value:=Trim(Order_Main.fieldbyname('DHId').AsString); + FieldByName('MXId').Value:=Trim(maxno); + FieldByName('OrdSubId').Value:=Trim(ClientDataSet3.fieldbyname('OrdSubId').AsString); + FieldByName('TPDate').Value:=ClientDataSet3.fieldbyname('TPDate').Value; + FieldByName('TPPerson').Value:=ClientDataSet3.fieldbyname('TPPerson').Value; + FieldByName('TPNote').Value:=ClientDataSet3.fieldbyname('TPNote').Value; + if Trim(ClientDataSet3.fieldbyname('MXId').AsString)<>'' then + begin + if Trim(ADOQueryCmd.fieldbyname('TPUnit').AsString)<>Trim(ClientDataSet3.fieldbyname('TPUnit').AsString) then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL A where A.DHIDHelp in('); + sql.Add('select LLID from Contract_Cloth_LL B where B.DHID='''+Trim(ClientDataSet3.fieldbyname('DHID').AsString)+''''); + sql.Add(' and OrdSubId='''+Trim(ClientDataSet3.fieldbyname('OrdSubId').AsString)+''' and JXJGFlag=1)'); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ӹ޸λ!','ʾ',0); + Exit; + end; + end; + end; + if Trim(ClientDataSet3.fieldbyname('MXId').AsString)<>'' then + begin + if Trim(ADOQueryCmd.fieldbyname('TPUnit').AsString)<>Trim(ClientDataSet3.fieldbyname('TPUnit').AsString) then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub_AnPai A where SubId='''+Trim(ClientDataSet3.fieldbyname('OrdSubId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ѻزֲ޸λ!','ʾ',0); + Exit; + end; + end; + end; + + + FieldByName('TPUnit').Value:=ClientDataSet3.fieldbyname('TPUnit').Value; + {if ClientDataSet3.FieldByName('JXJGFlag').AsBoolean=True then + begin + FieldByName('JXJGFlag').Value:=1; + end else + begin + FieldByName('JXJGFlag').Value:=0; + end; } + if Trim(ClientDataSet3.fieldbyname('TPQty').AsString)<>'' then + FieldByName('TPQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value + else + FieldByName('TPQty').Value:=0; + if Trim(ClientDataSet3.fieldbyname('JGPrice').AsString)<>'' then + FieldByName('JGPrice').Value:=ClientDataSet3.fieldbyname('JGPrice').Value + else + FieldByName('JGPrice').Value:=0; + if Trim(ClientDataSet3.fieldbyname('GangFee').AsString)<>'' then + FieldByName('GangFee').Value:=ClientDataSet3.fieldbyname('GangFee').Value + else + FieldByName('GangFee').Value:=0; + FieldByName('TPPS').AsFloat:=ClientDataSet3.fieldbyname('TPPS').AsFloat; + if Trim(ClientDataSet3.fieldbyname('Qty1').AsString)<>'' then + FieldByName('Qty1').Value:=ClientDataSet3.fieldbyname('Qty1').Value + else + FieldByName('Qty1').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty2').AsString)<>'' then + FieldByName('Qty2').Value:=ClientDataSet3.fieldbyname('Qty2').Value + else + FieldByName('Qty2').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty3').AsString)<>'' then + FieldByName('Qty3').Value:=ClientDataSet3.fieldbyname('Qty3').Value + else + FieldByName('Qty3').Value:=0; + if Trim(ClientDataSet3.fieldbyname('TPUnit').AsString)='Kg' then + begin + FieldByName('TPMQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value*1.00*1000 + /(Order_Main.fieldbyname('MFQty').Value*1.00/100*Order_Main.fieldbyname('KZQty').Value); + end else + begin + FieldByName('TPMQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value; + end; + if Trim(ClientDataSet3.fieldbyname('TPUnit').AsString)='Kg' then + begin + FieldByName('MQty2').Value:=ClientDataSet3.fieldbyname('Qty2').Value*1.00*1000 + /(Order_Main.fieldbyname('MFQty').Value*1.00/100*Order_Main.fieldbyname('KZQty').Value); + end else + begin + FieldByName('MQty2').Value:=ClientDataSet3.fieldbyname('Qty2').Value; + end; + if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)=Trim(Order_Main.FieldByName('DHUnit').AsString) then + begin + FieldByName('TPYZQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value; + end else + begin + if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)='M' then + begin + FieldByName('TPYZQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value + *Order_Main.fieldbyname('MFQty').Value*1.00/100 + *Order_Main.fieldbyname('KZQty').Value*1.00/1000; + end; + end; + if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)=Trim(Order_Main.FieldByName('DHUnit').AsString) then + begin + FieldByName('YZQty2').Value:=ClientDataSet3.fieldbyname('Qty2').Value; + end else + begin + if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)='M' then + begin + FieldByName('YZQty2').Value:=ClientDataSet3.fieldbyname('Qty2').Value + *Order_Main.fieldbyname('MFQty').Value*1.00/100 + *Order_Main.fieldbyname('KZQty').Value*1.00/1000; + end; + end; + Post; + end; + with ClientDataSet3 do + begin + Edit; + FieldByName('MXId').Value:=Trim(maxno); + Post; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update Contract_Cloth_DH Set TPMQtyHZ=(select Sum(TPMQty) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_DH.DHID)'); + if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)=Trim(Order_Main.FieldByName('DHUnit').AsString) then + begin + sql.Add(',TPQtyHZ=(select Sum(TPQty) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_DH.DHID)'); + end else + begin + if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)='M' then + begin + SQL.Add(',TPQtyHZ=(select sum(TPQty*(PBMF/100)*(PBKZ/1000)) from Contract_Cloth_LLMx A '); + sql.Add(' where A.DHID=Contract_Cloth_DH.DHID )'); + end; + end; + sql.Add(',TPPSHZ=(select Sum(TPPS) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_DH.DHID)'); + sql.Add(' where DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL where DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + sql.Add(' and OrdSubId='''+Trim(ClientDataSet3.fieldbyname('OrdSubId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + { with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(Max(LLIdx),0) LLIdx from Contract_Cloth_LL'); + Open; + end; + LLIdx:=IntToStr(ADOQueryTemp.fieldbyname('LLIdx').AsInteger+1); } + if GetLSNo(ADOQueryCmd,maxno,'LL','Contract_Cloth_LL',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡȥˮʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('LLID').Value:=Trim(maxno); + FieldByName('DHID').Value:=Trim(Order_Main.fieldbyname('DHID').AsString); + FieldByName('SXDHID').Value:=Trim(Order_Main.fieldbyname('SXDHID').AsString); + FieldByName('SXMainID').Value:=Trim(Order_Main.fieldbyname('SXMainID').AsString); + FieldByName('FirstNo').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('FirstName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('OrdSubId').Value:=Trim(ClientDataSet3.fieldbyname('OrdSubId').AsString); + FieldByName('TPUnit').Value:=Trim(ClientDataSet3.fieldbyname('TPUnit').AsString); + FieldByName('LLIdx').Value:=1; + Post; + end; + + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update Contract_Cloth_LL Set TPUnit='''+Trim(ClientDataSet3.fieldbyname('TPUnit').AsString)+''''); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Contract_Cloth_LL Set TPPS=(select sum(TPPS) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.DHID'); + SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)'); + if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)=Trim(Order_Main.FieldByName('DHUnit').AsString) then + begin + sql.Add(',TPQty=(select Sum(TPQty) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_LL.DHID'); + SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)'); + end else + begin + if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)='M' then + begin + SQL.Add(',TPQty=(select sum(TPQty*(PBMF/100)*(PBKZ/1000)) from Contract_Cloth_LLMx A '); + sql.Add(' where A.DHID=Contract_Cloth_LL.DHID'); + SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)'); + end; + end; + if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)=Trim(Order_Main.FieldByName('DHUnit').AsString) then + begin + sql.Add(',BCPQty=(select Sum(Qty2) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_LL.DHID'); + SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)'); + end else + begin + if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)='M' then + begin + SQL.Add(',BCPQty=(select sum(A.Qty2*(PBMF/100)*(PBKZ/1000)) from Contract_Cloth_LLMx A '); + sql.Add(' where A.DHID=Contract_Cloth_LL.DHID'); + SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)'); + end; + end; + sql.Add(', TPMQty=(select sum(TPMQty) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.DHID'); + SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)'); + sql.Add(', BCPMQty=(select sum(MQty2) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.DHID'); + SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)'); + sql.Add('where DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + SQL.Add(' and OrdSubId='''+Trim(ClientDataSet3.fieldbyname('OrdSubid').AsString)+''''); + ExecSQL; + end; + Next; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Cloth_LL where not exists('); + sql.Add(' select * from Contract_Cloth_LLMX LM where LM.DHID=Contract_Cloth_LL.DHID '); + sql.Add(' and LM.OrdSubId=Contract_Cloth_LL.OrdSubId )'); + sql.Add(' and DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + sql.Add(' and isnull(DHIDHelp,'''')='''' '); + ExecSQL; + end; + { if YFData()=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('¸׷쳣!','ʾ',0); + Exit; + end; } + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; +function TfrmClothContractListLL.YFData():Boolean; +var + CRID,OrdMainId,YFID,FComTaiTou:String; +begin + Result:=False; + { with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + + Application.MessageBox('δ¼!','ʾ',0); + Exit; + end else + begin + if ADOQueryTemp.RecordCount>1 then + begin + + Application.MessageBox('¼ظ!','ʾ',0); + Exit; + end; + end; } + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + OrdMainId:=Trim(ADOQueryTemp.fieldbyname('MainId').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select OrdDefStr2 from JYOrder_Main where Mainid='''+Trim(OrdMainId)+''''); + Open; + end; + FComTaiTou:=Trim(ADOQueryTemp.fieldbyname('OrdDefStr2').AsString); + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + sql.Add(' and YFTypeId='''+Trim(Order_Main.fieldbyname('DHid').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + + if GetLSNo(ADOQueryCmd,YFID,'GF','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡ׷Ӧʧ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(Order_Main.fieldbyname('DHid').AsString); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('CRTime').Value:=ClientDataSet3.fieldbyname('TPDate').Value; + FieldByName('YFType').Value:='Զ'; + //FieldByName('Price').Value:=Order_Main.fieldbyname('Price').Value; + FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=''; + FieldByName('ComTaiTou').Value:=''; + FieldByName('QtyUnit').Value:=''; + FieldByName('YFName').Value:='׷'; + FieldByName('MainId').Value:=Trim(OrdMainId); + Post; + end; + end else + begin + YFID:=Trim(ADOQueryTemp.fieldbyname('YFID').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set CRTime='''+Trim(ClientDataSet3.fieldbyname('TPDate').AsString)+''''); + sql.Add(' where YFID='''+Trim(ADOQueryTemp.fieldbyname('YFID').AsString)+''''); + ExecSQL; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update YF_Money_CR Set Qty=(select isnull(Count(*),0) from Contract_Cloth_LLMX A '); + SQL.Add(' where A.DHId=YF_Money_CR.YFTypeId and A.GangFee>0)'); + sql.Add(',Money=(select isnull(sum(GangFee),0) from Contract_Cloth_LLMX A '); + SQL.Add(' where A.DHId=YF_Money_CR.YFTypeId and A.GangFee>0)'); + sql.Add(',BBMoney=(select isnull(sum(GangFee),0) from Contract_Cloth_LLMX A '); + SQL.Add(' where A.DHId=YF_Money_CR.YFTypeId and A.GangFee>0)'); + sql.Add(' where YFTypeId='''+Trim(Order_Main.fieldbyname('DHid').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where YFID='''+Trim(YFID)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + if ADOQueryTemp.FieldByName('Money').AsFloat=0 then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_CR where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + end; + end; + Result:=True; +end; + +procedure TfrmClothContractListLL.ToolButton3Click(Sender: TObject); +begin + + begin + if ClientDataSet3.IsEmpty then Exit; + if Trim(ClientDataSet3.fieldbyname('MXId').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add(' select * from Contract_Cloth_LL where DHID='''+Trim(ClientDataSet3.fieldbyname('DHID').AsString)+''''); + sql.Add(' and OrdSubId='''+Trim(ClientDataSet3.fieldbyname('OrdSubId').AsString)+''''); + Open; + end; + if ADOQueryTemp.FieldByName('HCQty').AsFloat>0 then + begin + Application.MessageBox('лز,ɾ!','ʾ',0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Cloth_LLMx where MXId='''+Trim(ClientDataSet3.fieldbyname('MXId').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update Contract_Cloth_DH Set TPQtyHZ=(select isnull(Sum(TPYZQty),0) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_DH.DHID)'); + sql.Add(',TPMQtyHZ=(select isnull(Sum(TPMQty),0) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_DH.DHID)'); + sql.Add(',TPPSHZ=(select isnull(Sum(TPPS),0) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_DH.DHID)'); + sql.Add(' where DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Contract_Cloth_LL Set TPPS=(select isnull(sum(TPPS),0) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.DHID'); + SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)'); + sql.Add(', TPQty=(select isnull(sum(TPYZQty),0) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.DHID'); + SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)'); + sql.Add(', BCPQty=(select isnull(sum(YZQty2),0) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.DHID'); + SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)'); + sql.Add(', TPMQty=(select isnull(sum(TPMQty),0) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.DHID'); + SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)'); + sql.Add(', BCPMQty=(select isnull(sum(MQty2),0) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.DHID'); + SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)'); + sql.Add('where DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + SQL.Add(' and OrdSubId='''+Trim(ClientDataSet3.fieldbyname('OrdSubid').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Cloth_LL where not exists('); + sql.Add(' select * from Contract_Cloth_LLMX LM where LM.DHID=Contract_Cloth_LL.DHID '); + sql.Add(' and LM.OrdSubId=Contract_Cloth_LL.OrdSubId )'); + sql.Add(' and DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + sql.Add(' and isnull(DHIDHelp,'''')='''' '); + ExecSQL; + end; + if YFData()=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('¸׷쳣!','ʾ',0); + Exit; + end; + ADOQueryCmd.Connection.CommitTrans; + ClientDataSet3.Delete; + except; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣!','ʾ',0); + end; + + {with Order_Main do + begin + Edit; + if ClientDataSet3.IsEmpty=False then + FieldByName('KCQty').Value:=Order_Main.fieldbyname('DHQty').Value-tv3.DataController.Summary.FooterSummaryValues[0] + else + FieldByName('KCQty').Value:=Order_Main.fieldbyname('DHQty').Value; + Post; + end; } + end; +end; + +procedure TfrmClothContractListLL.v2Column3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='RKPlace'; + flagname:='ص'; + if ShowModal=1 then + begin + with ClientDataSet2 do + begin + Edit; + FieldByName('RKPlace').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractListLL.v3Column2PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,fieldname,qty1,qty2:String; +begin + If Trim(TcxTextEdit(Sender).EditingText)<>'' then + begin + mvalue:=TcxTextEdit(Sender).EditingText; + end else + begin + mvalue:='0'; + end; + fieldname:=Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName; + with ClientDataSet3 do + begin + Edit; + FieldByName(Trim(fieldname)).Value:=mvalue; + Post; + end; + {with Order_Main do + begin + Edit; + FieldByName('KCQty').Value:=Order_Main.fieldbyname('DHQty').Value-tv3.DataController.Summary.FooterSummaryValues[0]; + Post; + end; } + if Trim(ClientDataSet3.fieldbyname('TPQty').AsString)<>'' then + begin + qty1:=ClientDataSet3.fieldbyname('TPQty').AsString; + end else + begin + qty1:='0'; + end; + if Trim(ClientDataSet3.fieldbyname('Qty2').AsString)<>'' then + begin + Qty2:=ClientDataSet3.fieldbyname('Qty2').AsString; + end else + begin + Qty2:='0'; + end; + if StrToFloat(qty1)*StrToFloat(qty2)=0 then Exit; + with ClientDataSet3 do + begin + Edit; + FieldByName('qty3').Value:=(StrToFloat(qty1)-StrToFloat(qty2))*1.00*100/StrToFloat(qty1); + Post; + end; + +end; + +procedure TfrmClothContractListLL.ConNoKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(ConNo.Text))<3 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + //sql.Add('select ClothPS=A.DHPS-A.TPPSHZ,ClothQty=A.DHQty-A.TPQtyHZ, '); + // SQL.Add(' A.DHID,A.DHPS,A.TPPSHZ,A.TPQtyHZ,A.DHQty,A.DHUnit,A.FirstName,B.ConNo,C.C_CodeName,C.C_Spec,C.MFQty,C.KZQty,B.FactoryNoName '); + sql.Add('select ClothPS=A.DHPS-A.TPPSHZ,ClothQty=A.DHQty-A.TPQtyHZ, A.DHUnit,SXMainId='''',SXDHID='''',A.MainId,A.SubId'); + SQL.Add(' ,A.DHID,A.DHPS,A.TPPSHZ,A.TPQtyHZ,A.DHQty,A.FirstName,B.ConNo,C.C_CodeName,C.C_Spec,C.MFQty,C.KZQty,B.FactoryNoName '); + sql.Add(' from Contract_Cloth_DH A inner join Contract_Main B on A.Mainid=B.Mainid'); + sql.Add(' inner join Contract_Sub C on A.Subid=C.Subid'); + SQL.Add(' where B.ConNo like '''+'%'+Trim(ConNo.Text)+'%'+''''); + sql.add(' and isnull(A.DHType,'''')='''''); + sql.Add(' union all'); + + // sql.Add(' select ClothPS=A.DHPS-A.TPPSHZ,ClothQty=A.DHQty-A.TPQtyHZ, '); + //SQL.Add(' A.DHID,A.DHPS,A.TPPSHZ,A.TPQtyHZ,A.DHQty,A.DHUnit,A.FirstName '); + //sql.Add(',ConNo=(select Top 1 ConNo from ContractSX_Main SM where SM.MainId=A.SXMainId)'); + //sql.Add(',C_CodeName=A.PBName,C_Spec=A.PBSpec,MFQty=A.PBMF,KZQty=A.PBKZ'); + //SQL.Add(',FactoryNoName=(select Top 1 FirstName from ContractSX_Cloth_DH SD where SD.DHID=A.SXDHID)'); + sql.Add(' select ClothPS=A.DHPS-A.TPPSHZ,ClothQty=A.DHQty-A.TPQtyHZ,A.DHUnit,A.SXMainId,A.SXDHID,A.MainId,A.SubId '); + SQL.Add(' ,A.DHID,A.DHPS,A.TPPSHZ,A.TPQtyHZ,A.DHQty,A.FirstName '); + sql.Add(',ConNo=(select Top 1 ConNo from ContractSX_Main SM where SM.MainId=A.SXMainId)'); + sql.Add(',C_CodeName=A.PBName,C_Spec=A.PBSpec,MFQty=A.PBMF,KZQty=A.PBKZ'); + SQL.Add(',FactoryNoName=(select Top 1 FirstName from ContractSX_Cloth_DH SD where SD.DHID=A.SXDHID)'); + sql.Add(' from Contract_Cloth_DH A '); + SQL.Add(' where exists(select * from ContractSX_Main B where B.MainId=A.SXMainId'); + SQL.Add(' and B.ConNO like '''+'%'+Trim(ConNo.Text)+'%'+''')'); + sql.Add(' and isnull(A.DHType,'''')<>'''' '); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmClothContractListLL.ToolButton1Click(Sender: TObject); + var + FColumn:String; +begin + if ClientDataSet3.IsEmpty then Exit; + ToolBar2.SetFocus; + FColumn:=Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName; + if Trim(FColumn)='OrderNo' then Exit; + if Trim(FColumn)='PRTColor' then Exit; + if Application.MessageBox('ȷҪһ滻','ʾ',32+4)<>IDYES then Exit; + OneKeyPost(Tv3,ClientDataSet3); +end; + +procedure TfrmClothContractListLL.v3Column5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,fieldname,qty1,qty3:String; + +begin + If Trim(TcxTextEdit(Sender).EditingText)<>'' then + begin + mvalue:=TcxTextEdit(Sender).EditingText; + end else + begin + mvalue:='0'; + end; + fieldname:=Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName; + with ClientDataSet3 do + begin + Edit; + FieldByName(Trim(fieldname)).Value:=mvalue; + Post; + end; + {with Order_Main do + begin + Edit; + FieldByName('KCQty').Value:=Order_Main.fieldbyname('DHQty').Value-tv3.DataController.Summary.FooterSummaryValues[0]; + Post; + end; } + if Trim(ClientDataSet3.fieldbyname('TPQty').AsString)<>'' then + begin + qty1:=ClientDataSet3.fieldbyname('TPQty').AsString; + end else + begin + qty1:='0'; + end; + if Trim(ClientDataSet3.fieldbyname('qty3').AsString)<>'' then + begin + qty3:=ClientDataSet3.fieldbyname('qty3').AsString; + end else + begin + qty3:='0'; + end; + //if StrToFloat(qty1)*StrToFloat(qty2)=0 then Exit; + with ClientDataSet3 do + begin + Edit; + FieldByName('qty2').Value:=StrToFloat(qty1)*(1-StrToFloat(qty3)*1.00/100); + Post; + end; + +end; + +procedure TfrmClothContractListLL.Tv1FocusedRecordChanged( + Sender: TcxCustomGridTableView; APrevFocusedRecord, + AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); +begin + if Order_Main.IsEmpty then exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo,B.PrtKuanNo,B.SOrddefstr1,B.PRTHX,B.PRTOrderQty,B.OrderUnit, '); + SQL.Add(' Case when B.OrderUnit=''M'' then Cast(dbo.F_Get_Order_MFKZ(A.MainId,''MF'') '); + sql.Add(' *1.00/100*B.PRTOrderQty*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 as decimal(18,0))'); + SQL.Add(' when B.OrderUnit=''Y'' then Cast(dbo.F_Get_Order_MFKZ(A.MainId,''MF'')'); + sql.Add(' *1.00/100*B.PRTOrderQty*0.9144*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 As decimal(18,0)) '); + sql.Add(' when B.OrderUnit=''Kg'' then B.PRTOrderQty else Null end as PRTOrderKgQty'); + SQL.Add('from Contract_Cloth_LLMx A inner join JYOrder_Sub B on A.OrdSubId=B.SubId'); + SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId '); + sql.Add('where A.DHId='''+Trim(Order_Main.fieldbyname('DHId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); +end; + +end. diff --git a/艾登贸易管理/U_ClothContractListLLSX.dfm b/艾登贸易管理/U_ClothContractListLLSX.dfm new file mode 100644 index 0000000..f6b5448 --- /dev/null +++ b/艾登贸易管理/U_ClothContractListLLSX.dfm @@ -0,0 +1,712 @@ +object frmClothContractListLLSX: TfrmClothContractListLLSX + Left = 184 + Top = 11 + Width = 1280 + Height = 705 + Caption = #32433#32447#32455#25104#21697#20986#24211 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1272 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 107 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBClose: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + object ToolButton2: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + Visible = False + end + object ToolButton3: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #21040#22383#30830#23450 + ImageIndex = 113 + Visible = False + end + object ToolButton5: TToolButton + Left = 402 + Top = 0 + Caption = #22383#24067#39046#26009#30830#23450 + ImageIndex = 114 + Visible = False + OnClick = ToolButton5Click + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1272 + Height = 54 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 22 + Width = 52 + Height = 12 + Caption = #30331#35760#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 161 + Top = 22 + Width = 18 + Height = 12 + Caption = '---' + end + object Label3: TLabel + Left = 283 + Top = 22 + Width = 52 + Height = 12 + Caption = #21512#21516#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 444 + Top = 22 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 612 + Top = 22 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 748 + Top = 22 + Width = 52 + Height = 12 + Caption = #21407#26448#26009#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 892 + Top = 22 + Width = 39 + Height = 12 + Caption = #22383#24067#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 18 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 179 + Top = 18 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object ConNo: TEdit + Tag = 2 + Left = 337 + Top = 18 + Width = 81 + Height = 20 + TabOrder = 2 + OnChange = ConNoChange + OnKeyPress = ConNoKeyPress + end + object C_CodeName: TEdit + Tag = 2 + Left = 497 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = ConNoChange + end + object C_Spec: TEdit + Tag = 2 + Left = 640 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 4 + OnChange = ConNoChange + end + object FactoryNoName: TEdit + Tag = 2 + Left = 800 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 5 + OnChange = ConNoChange + end + object FirstName: TEdit + Tag = 2 + Left = 932 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 6 + OnChange = ConNoChange + end + end + object Panel2: TPanel + Left = 0 + Top = 370 + Width = 1272 + Height = 301 + Align = alBottom + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 2 + object cxGrid3: TcxGrid + Left = 2 + Top = 34 + Width = 1268 + Height = 265 + Align = alClient + TabOrder = 0 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource3 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v3Column65 + end + item + Kind = skSum + Column = v3Column3 + end + item + Kind = skSum + Column = v3Column9 + end + item + Kind = skSum + end + item + Kind = skSum + Column = v3Column4 + end + item + Kind = skAverage + Column = v3Column5 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_TradeManage.Default + object v3Column7: TcxGridDBColumn + Caption = #22383#24067#21517#31216 + DataBinding.FieldName = 'PBName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v3Column7PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 92 + end + object v3Column11: TcxGridDBColumn + Caption = #22383#24067#35268#26684 + DataBinding.FieldName = 'PBSpec' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v3Column12: TcxGridDBColumn + Caption = #22383#24067#38376#24133'(cm)' + DataBinding.FieldName = 'PBMF' + HeaderAlignmentHorz = taCenter + Width = 94 + end + object v3Column13: TcxGridDBColumn + Caption = #22383#24067#20811#37325'(g/'#13217')' + DataBinding.FieldName = 'PBKZ' + HeaderAlignmentHorz = taCenter + Width = 113 + end + object v3Column14: TcxGridDBColumn + Caption = #26579#21378 + DataBinding.FieldName = 'ToName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v3Column14PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 88 + end + object v3Column6: TcxGridDBColumn + Caption = #20986#24211#26085#26399 + DataBinding.FieldName = 'TPDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 91 + end + object v3Column3: TcxGridDBColumn + Caption = #25237#22383#21305#25968 + DataBinding.FieldName = 'Qty1' + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v3Column9: TcxGridDBColumn + Caption = #20986#24211#21305#25968 + DataBinding.FieldName = 'SXPS' + HeaderAlignmentHorz = taCenter + Width = 63 + end + object v3Column4: TcxGridDBColumn + Caption = #20986#24211#25968#37327 + DataBinding.FieldName = 'SXQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v3Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 85 + end + object v3Column1: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'SXUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.ImmediatePost = True + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v3Column5: TcxGridDBColumn + Caption = #25240#31639#31995#25968 + DataBinding.FieldName = 'ZSXS' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v3Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 85 + end + object v3Column65: TcxGridDBColumn + Caption = #32433#32447#25968#37327 + DataBinding.FieldName = 'TPQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v3Column10: TcxGridDBColumn + Caption = #21152#24037#21333#20215 + DataBinding.FieldName = 'JGPrice' + HeaderAlignmentHorz = taCenter + Width = 63 + end + object v3Column8: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'TPNote' + Width = 105 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv3 + end + end + object ToolBar2: TToolBar + Left = 2 + Top = 2 + Width = 1268 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 119 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 1 + object ToolButton8: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton8Click + end + object ToolButton9: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton3Click + end + object ToolButton11: TToolButton + Left = 126 + Top = 0 + Caption = #32455#25104#21697#20986#24211#30830#23450 + ImageIndex = 114 + OnClick = ToolButton5Click + end + object ToolButton1: TToolButton + Left = 245 + Top = 0 + AutoSize = True + Caption = #19968#38190#26367#25442 + ImageIndex = 54 + OnClick = ToolButton1Click + end + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 362 + Width = 1272 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + Control = Panel2 + end + object cxGrid1: TcxGrid + Left = 0 + Top = 86 + Width = 1272 + Height = 276 + Align = alClient + TabOrder = 4 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv1CellClick + DataController.DataSource = DataSource1 + 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 + Column = v1Column3 + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column8 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1OrderNo: TcxGridDBColumn + Caption = #21512#21516#32534#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 114 + end + object v1Column2: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_CodeName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 112 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 106 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = #21407#26448#26009#21378 + DataBinding.FieldName = 'FactoryNoName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 79 + end + object v1Column5: TcxGridDBColumn + Caption = #22383#24067#21378 + DataBinding.FieldName = 'FirstName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 84 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'DHUnit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 64 + end + object v1Column3: TcxGridDBColumn + Caption = #21040#36135#25968#37327 + DataBinding.FieldName = 'DHQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1Column8: TcxGridDBColumn + Caption = #32433#32447#25968#37327 + DataBinding.FieldName = 'ClothQty' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column4: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'C_Note' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 752 + Top = 216 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 936 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1000 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1040 + Top = 8 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 1168 + Top = 8 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 1096 + Top = 8 + end + object ClientDataSet3: TClientDataSet + Aggregates = <> + Params = <> + Left = 1112 + Top = 240 + end + object DataSource2: TDataSource + DataSet = ClientDataSet2 + Left = 880 + Top = 176 + end + object DataSource3: TDataSource + DataSet = ClientDataSet3 + Left = 1112 + Top = 216 + end + object ClientDataSet2: TClientDataSet + Aggregates = <> + Params = <> + Left = 920 + Top = 224 + 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 = 352 + Top = 192 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 400 + Top = 192 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 416 + Top = 248 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 1128 + Top = 472 + end +end diff --git a/艾登贸易管理/U_ClothContractListLLSX.pas b/艾登贸易管理/U_ClothContractListLLSX.pas new file mode 100644 index 0000000..3262e6e --- /dev/null +++ b/艾登贸易管理/U_ClothContractListLLSX.pas @@ -0,0 +1,1045 @@ +unit U_ClothContractListLLSX; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, + RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, + cxTextEdit, cxDropDownEdit, cxCheckBox; + +type + TfrmClothContractListLLSX = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Label2: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + ConNo: TEdit; + Label5: TLabel; + C_CodeName: TEdit; + Order_Main: TClientDataSet; + Label4: TLabel; + C_Spec: TEdit; + ToolButton2: TToolButton; + ToolButton3: TToolButton; + ToolButton4: TToolButton; + ClientDataSet3: TClientDataSet; + DataSource2: TDataSource; + DataSource3: TDataSource; + ClientDataSet2: TClientDataSet; + ToolButton5: TToolButton; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + Panel2: TPanel; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + v3Column6: TcxGridDBColumn; + v3Column3: TcxGridDBColumn; + v3Column65: TcxGridDBColumn; + v3Column4: TcxGridDBColumn; + v3Column5: TcxGridDBColumn; + v3Column8: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + cxSplitter1: TcxSplitter; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1Column3: TcxGridDBColumn; + ToolBar2: TToolBar; + ToolButton8: TToolButton; + ToolButton9: TToolButton; + ToolButton11: TToolButton; + v1Column5: TcxGridDBColumn; + cxGridPopupMenu2: TcxGridPopupMenu; + Label6: TLabel; + FactoryNoName: TEdit; + Label7: TLabel; + FirstName: TEdit; + v3Column1: TcxGridDBColumn; + v3Column9: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v3Column10: TcxGridDBColumn; + ToolButton1: TToolButton; + v3Column7: TcxGridDBColumn; + v3Column11: TcxGridDBColumn; + v3Column12: TcxGridDBColumn; + v3Column13: TcxGridDBColumn; + v3Column14: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure ToolButton5Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v3Column2PropertiesEditValueChanged(Sender: TObject); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton8Click(Sender: TObject); + procedure v3Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v3Column14PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + private + FInt,PFInt:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + function YFData():Boolean; + { Private declarations } + public + { Public declarations } + end; + +var + frmClothContractListLLSX: TfrmClothContractListLLSX; + +implementation +uses + U_DataLink,U_ClothContractInPut,U_Fun,U_ProductOrderListSel,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmClothContractListLLSX.FormDestroy(Sender: TObject); +begin + frmClothContractListLLSX:=nil; +end; + +procedure TfrmClothContractListLLSX.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmClothContractListLLSX.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('AAͬll1SX',Tv1,'ָʾ'); + WriteCxGrid('AAͬllr1SX',Tv3,'ָʾ'); +end; + +procedure TfrmClothContractListLLSX.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select ClothQty=DHQty-TPQtyHZ, '); + sql.Add(' A.*,B.ConNo,C.C_CodeName,C.C_Spec,C.MFQty,C.KZQty,B.FactoryNoName from ContractSX_Cloth_DH A '); + sql.add(' inner join ContractSX_Main B on A.Mainid=B.Mainid'); + sql.Add('inner join ContractSX_Sub C on A.Subid=C.Subid'); + //sql.Add(' where B.FillTime>=:begdate and B.Filltime<:enddate and A.DHType=''ǰ'' '); + sql.Add(' where B.FillTime>=:begdate and B.Filltime<:enddate '); + Parameters.ParamByName('begdate').Value:=BegDate.Date; + Parameters.ParamByName('enddate').Value:=EndDate.Date+1; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + + if Order_Main.IsEmpty then exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.* '); + SQL.Add('from ContractSX_Cloth_LLMx A '); + sql.Add('where A.DHId='''+Trim(Order_Main.fieldbyname('DHId').AsString)+''''); + //ShowMessage(SQL.Text); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); +end; + +procedure TfrmClothContractListLLSX.InitForm(); +begin + + ReadCxGrid('AAͬll1SX',Tv1,'ָʾ'); + ReadCxGrid('AAͬllr1SX',Tv3,'ָʾ'); + EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + BegDate.DateTime:=EndDate.DateTime-30; + InitGrid(); +end; + +procedure TfrmClothContractListLLSX.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmClothContractListLLSX.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmClothContractListLLSX.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmClothContractListLLSX.ConNoChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothContractListLLSX.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmClothContractListLLSX.Tv2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=2; +end; + +procedure TfrmClothContractListLLSX.Tv2CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo ,'); + sql.Add('C_Unit=(select Top 1 C_Unit from Contract_Sub AA,Contract_Sub_Mx BB where AA.SubId=BB.SubId and BB.MXid=A.Mxid)'); + SQL.Add(' from Contract_Sub_MxTo A inner join JYOrder_Sub B on A.OrdSubId=B.SubId '); + SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId '); + sql.Add('where A.MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); +end; + +procedure TfrmClothContractListLLSX.ToolButton5Click(Sender: TObject); +var + maxno,LLIdx,FDW:string; +begin + if ClientDataSet3.IsEmpty then Exit; + ToolBar1.SetFocus; + if ClientDataSet3.Locate('PBName',null,[]) then + begin + Application.MessageBox('ƲΪգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('SXPS',null,[]) then + begin + Application.MessageBox('ƥΪգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('SXQty',null,[]) then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('JGPrice',null,[]) then + begin + Application.MessageBox('ӹ۲Ϊգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('TPQty',null,[]) then + begin + Application.MessageBox('ɴΪգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('SXUnit',null,[]) then + begin + Application.MessageBox('λΪգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('PBMF',null,[]) then + begin + Application.MessageBox('ŷΪգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('PBKZ',null,[]) then + begin + Application.MessageBox('زΪգ','ʾ',0); + Exit; + end; + ClientDataSet3.DisableControls; + with ClientDataSet3 do + begin + First; + while not Eof do + begin + + if Trim(FDW)='' then + begin + FDW:=Trim(ClientDataSet3.fieldbyname('SXUnit').AsString); + end; + if FDW<>Trim(ClientDataSet3.fieldbyname('SXUnit').AsString) then + begin + Application.MessageBox('λһ!','ʾ',0); + Exit; + end; + Next; + end; + end; + { with ClientDataSet3 do + begin + First; + while not Eof do + begin + + if Trim(FDW)='' then + begin + FDW:=Trim(ClientDataSet3.fieldbyname('SXUnit').AsString); + end; + if FDW<>Trim(ClientDataSet3.fieldbyname('SXUnit').AsString) then + begin + Application.MessageBox('λһ!','ʾ',0); + Exit; + end; + Next; + end; + end;} + ClientDataSet3.EnableControls; + BegDate.SetFocus; + try + ADOQueryCmd.Connection.BeginTrans; + //ȥ + with ClientDataSet3 do + begin + First; + while not eof do + begin + if Trim(ClientDataSet3.fieldbyname('MXId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,maxno,'MX','ContractSX_Cloth_LLMx',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡȥˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(ClientDataSet3.fieldbyname('MXId').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from ContractSX_Cloth_LLMx where MXId='''+Trim(ClientDataSet3.fieldbyname('MXId').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(ClientDataSet3.fieldbyname('MXId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(Order_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + FieldByName('DHId').Value:=Trim(Order_Main.fieldbyname('DHId').AsString); + FieldByName('MXId').Value:=Trim(maxno); + FieldByName('TPDate').Value:=ClientDataSet3.fieldbyname('TPDate').Value; + FieldByName('TPNote').Value:=ClientDataSet3.fieldbyname('TPNote').Value; + FieldByName('TPUnit').Value:='Kg'; + FieldByName('SXUnit').Value:=ClientDataSet3.fieldbyname('SXUnit').Value; + FieldByName('PBName').Value:=ClientDataSet3.fieldbyname('PBName').Value; + FieldByName('PBSpec').Value:=ClientDataSet3.fieldbyname('PBSpec').Value; + FieldByName('PBMF').Value:=ClientDataSet3.fieldbyname('PBMF').Value; + FieldByName('PBKZ').Value:=ClientDataSet3.fieldbyname('PBKZ').Value; + FieldByName('ToName').Value:=ClientDataSet3.fieldbyname('ToName').Value; + if Trim(ClientDataSet3.fieldbyname('SXUnit').AsString)='Kg' then + begin + FieldByName('SXMQty').Value:=ClientDataSet3.FieldByName('SXQty').Value*1.00 + /(ClientDataSet3.FieldByName('PBKZ').Value/1000) + /(ClientDataSet3.FieldByName('PBMF').Value/100) + end else + begin + FieldByName('SXMQty').Value:=ClientDataSet3.FieldByName('SXQty').Value; + end; + + if Trim(ClientDataSet3.fieldbyname('TPQty').AsString)<>'' then + FieldByName('TPQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value + else + FieldByName('TPQty').Value:=0; + if Trim(ClientDataSet3.fieldbyname('JGPrice').AsString)<>'' then + FieldByName('JGPrice').Value:=ClientDataSet3.fieldbyname('JGPrice').Value + else + FieldByName('JGPrice').Value:=0; + + if Trim(ClientDataSet3.fieldbyname('SXPS').AsString)<>'' then + FieldByName('SXPS').Value:=ClientDataSet3.fieldbyname('SXPS').Value + else + FieldByName('SXPS').Value:=0; + if Trim(ClientDataSet3.fieldbyname('SXQty').AsString)<>'' then + FieldByName('SXQty').Value:=ClientDataSet3.fieldbyname('SXQty').Value + else + FieldByName('SXQty').Value:=0; + if Trim(ClientDataSet3.fieldbyname('ZSXS').AsString)<>'' then + FieldByName('ZSXS').Value:=ClientDataSet3.fieldbyname('ZSXS').Value + else + FieldByName('ZSXS').Value:=0; + FieldByName('TPYZQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value; + Post; + end; + with ClientDataSet3 do + begin + Edit; + FieldByName('MXId').Value:=Trim(maxno); + Post; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add(' Update ContractSX_Cloth_DH Set '); + sql.Add(' TPQtyHZ=(select Sum(TPQty) from ContractSX_Cloth_LLMx A where A.DHID=ContractSX_Cloth_DH.DHID)'); + sql.Add(' where DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_DH where SXDHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + sql.Add(' and FirstName='''+Trim(ClientDataSet3.fieldbyname('ToName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd,maxno,'SD','Contract_Cloth_DH',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡȥˮʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_DH where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('DHID').Value:=Trim(maxno); + FieldByName('SXDHID').Value:=Trim(Order_Main.fieldbyname('DHID').AsString); + FieldByName('SXMainID').Value:=Trim(Order_Main.fieldbyname('MainId').AsString); + FieldByName('FirstNo').Value:=Trim(ClientDataSet3.fieldbyname('ToName').AsString); + FieldByName('FirstName').Value:=Trim(ClientDataSet3.fieldbyname('ToName').AsString); + FieldByName('MainId').Value:=Trim(Order_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + FieldByName('DHUnit').Value:=Trim(ClientDataSet3.fieldbyname('SXUnit').AsString); + FieldByName('PBName').Value:=Trim(ClientDataSet3.fieldbyname('PBName').AsString); + FieldByName('PBSpec').Value:=Trim(ClientDataSet3.fieldbyname('PBSpec').AsString); + FieldByName('PBKZ').Value:=Trim(ClientDataSet3.fieldbyname('PBKZ').AsString); + FieldByName('PBMF').Value:=Trim(ClientDataSet3.fieldbyname('PBMF').AsString); + FieldByName('DHType').Value:='ɴ߼ӹ'; + Post; + end; + + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update Contract_Cloth_DH Set DHUnit='''+Trim(ClientDataSet3.fieldbyname('SXUnit').AsString)+''''); + sql.Add(' ,PBName='''+Trim(ClientDataSet3.fieldbyname('PBName').AsString)+''''); + sql.Add(' ,PBSpec='''+Trim(ClientDataSet3.fieldbyname('PBSpec').AsString)+''''); + sql.Add(' ,PBMF='+Trim(ClientDataSet3.fieldbyname('PBMF').AsString)); + sql.Add(' ,PBKZ='+Trim(ClientDataSet3.fieldbyname('PBKZ').AsString)); + sql.Add(' ,SXMainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.add(',DHType=''ɴ߼ӹ'' '); + sql.Add(' where DHID='''+Trim(ADOQueryTemp.fieldbyname('DHID').AsString)+''''); + ExecSQL; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Contract_Cloth_DH Set DHPS=(select isnull(sum(SXPS),0) from ContractSX_Cloth_LLMX A where A.DHID=Contract_Cloth_DH.SXDHID'); + SQL.Add(' and A.ToName=Contract_Cloth_DH.FirstName)'); + sql.Add(',SXTPQty=(select isnull(Sum(TPQty),0) from ContractSX_Cloth_LLMx A where A.DHID=Contract_Cloth_DH.SXDHID'); + SQL.Add(' and A.ToName=Contract_Cloth_DH.FirstName)'); + sql.Add(',DHQty=(select isnull(Sum(SXQty),0) from ContractSX_Cloth_LLMx A where A.DHID=Contract_Cloth_DH.SXDHID'); + SQL.Add(' and A.ToName=Contract_Cloth_DH.FirstName)'); + SQL.Add(',DHMQty=(select isnull(sum(SXMQty),0) from ContractSX_Cloth_LLMx A '); + SQL.Add(' where A.DHID=Contract_Cloth_DH.SXDHID'); + SQL.Add(' and A.ToName=Contract_Cloth_DH.FirstName)'); + sql.Add('where SXDHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + SQL.Add(' and FirstName='''+Trim(ClientDataSet3.fieldbyname('ToName').AsString)+''''); + ExecSQL; + end; + Next; + end; + end; + if YFData()=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('¼ӹ쳣!','ʾ',0); + Exit; + end; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; +function TfrmClothContractListLLSX.YFData():Boolean; +var + CRID,OrdMainId,YFID,FComTaiTou:String; +begin + Result:=False; +{ with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + + Application.MessageBox('δ¼!','ʾ',0); + Exit; + end else + begin + if ADOQueryTemp.RecordCount>1 then + begin + + Application.MessageBox('¼ظ!','ʾ',0); + Exit; + end; + end; } + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + OrdMainId:=Trim(ADOQueryTemp.fieldbyname('MainId').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select OrdDefStr2 from JYOrder_Main where Mainid='''+Trim(OrdMainId)+''''); + Open; + end; + FComTaiTou:=Trim(ADOQueryTemp.fieldbyname('OrdDefStr2').AsString); + + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + sql.Add(' and YFTypeId='''+Trim(Order_Main.fieldbyname('DHid').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + + if GetLSNo(ADOQueryCmd,YFID,'PJ','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡӹӦʧ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(Order_Main.fieldbyname('DHid').AsString); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('CRTime').Value:=ClientDataSet3.fieldbyname('TPDate').Value; + FieldByName('YFType').Value:='Զ'; + FieldByName('Price').Value:=ClientDataSet3.fieldbyname('JGPrice').Value; + FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=''; + FieldByName('ComTaiTou').Value:=''; + FieldByName('QtyUnit').Value:='Kg'; + FieldByName('YFName').Value:='ɴߺӹ'; + FieldByName('MainId').Value:=Trim(OrdMainId); + Post; + end; + end else + begin + YFID:=Trim(ADOQueryTemp.fieldbyname('YFID').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set CRTime='''+Trim(ClientDataSet3.fieldbyname('TPDate').AsString)+''''); + sql.add(',Price='+ClientDataSet3.fieldbyname('JGPrice').AsString); + sql.Add(' where YFID='''+Trim(ADOQueryTemp.fieldbyname('YFID').AsString)+''''); + ExecSQL; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update YF_Money_CR Set Qty=(select isnull(sum(TPQty),0) from ContractSX_Cloth_LLMX A '); + SQL.Add(' where A.DHId=YF_Money_CR.YFTypeId )'); + sql.Add(',Money=(select isnull(sum(TPQty*JGPrice),0) from ContractSX_Cloth_LLMX A '); + SQL.Add(' where A.DHId=YF_Money_CR.YFTypeId )'); + sql.Add(',BBMoney=(select isnull(sum(TPQty*JGPrice),0) from ContractSX_Cloth_LLMX A '); + SQL.Add(' where A.DHId=YF_Money_CR.YFTypeId )'); + sql.Add(' where YFTypeId='''+Trim(Order_Main.fieldbyname('DHid').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where YFID='''+Trim(YFID)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + if ADOQueryTemp.FieldByName('Money').AsFloat=0 then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_CR where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + end; + end; + Result:=True; +end; + +procedure TfrmClothContractListLLSX.ToolButton3Click(Sender: TObject); +begin + + begin + if ClientDataSet3.IsEmpty then Exit; + if Trim(ClientDataSet3.fieldbyname('MXId').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete ContractSX_Cloth_LLMx where MXId='''+Trim(ClientDataSet3.fieldbyname('MXId').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update ContractSX_Cloth_DH Set TPQtyHZ=(select isnull(Sum(TPYZQty),0) from ContractSX_Cloth_LLMx A where A.DHID=ContractSX_Cloth_DH.DHID)'); + sql.Add(' where DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Contract_Cloth_DH Set DHPS=(select isnull(sum(SXPS),0) from ContractSX_Cloth_LLMX A where A.DHID=Contract_Cloth_DH.SXDHID'); + SQL.Add(' and A.ToName=Contract_Cloth_DH.FirstName)'); + sql.Add(', DHQty=(select isnull(sum(SXQty),0) from ContractSX_Cloth_LLMX A where A.DHID=Contract_Cloth_DH.SXDHID'); + SQL.Add(' and A.ToName=Contract_Cloth_DH.FirstName)'); + sql.Add(', DHMQty=(select isnull(sum(SXMQty),0) from ContractSX_Cloth_LLMX A where A.DHID=Contract_Cloth_DH.SXDHID'); + SQL.Add(' and A.ToName=Contract_Cloth_DH.FirstName)'); + sql.Add('where SXDHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + SQL.Add(' and FirstName='''+Trim(ClientDataSet3.fieldbyname('ToName').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Cloth_DH where not exists('); + sql.Add(' select * from ContractSX_Cloth_LLMX LM where LM.DHID=Contract_Cloth_DH.SXDHID '); + sql.Add(' and LM.ToName=Contract_Cloth_DH.FirstName )'); + sql.Add(' and SXDHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + SQL.Add(' and FirstName='''+Trim(ClientDataSet3.fieldbyname('ToName').AsString)+''''); + ExecSQL; + end; + if YFData()=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ӹ쳣!','ʾ',0); + Exit; + end; + ADOQueryCmd.Connection.CommitTrans; + ClientDataSet3.Delete; + except; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣!','ʾ',0); + end; + + {with Order_Main do + begin + Edit; + if ClientDataSet3.IsEmpty=False then + FieldByName('KCQty').Value:=Order_Main.fieldbyname('DHQty').Value-tv3.DataController.Summary.FooterSummaryValues[0] + else + FieldByName('KCQty').Value:=Order_Main.fieldbyname('DHQty').Value; + Post; + end; } + end; +end; + +procedure TfrmClothContractListLLSX.v2Column3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='RKPlace'; + flagname:='ص'; + if ShowModal=1 then + begin + with ClientDataSet2 do + begin + Edit; + FieldByName('RKPlace').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractListLLSX.v3Column2PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,fieldname,qty1,qty2,qty3:String; + +begin + If Trim(TcxTextEdit(Sender).EditingText)<>'' then + begin + mvalue:=TcxTextEdit(Sender).EditingText; + end else + begin + mvalue:='0'; + end; + fieldname:=Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName; + with ClientDataSet3 do + begin + Edit; + FieldByName(Trim(fieldname)).Value:=mvalue; + Post; + end; + if Trim(ClientDataSet3.fieldbyname('ZSXS').AsString)<>'' then + begin + Qty3:=ClientDataSet3.fieldbyname('ZSXS').AsString; + end else + begin + Qty3:='0'; + end; + if Trim(ClientDataSet3.fieldbyname('SXQty').AsString)<>'' then + begin + Qty1:=ClientDataSet3.fieldbyname('SXQty').AsString; + end else + begin + Qty1:='0'; + end; + with ClientDataSet3 do + begin + Edit; + FieldByName('TPQty').Value:=StrToFloat(qty1)*StrToFloat(qty3); + Post; + end; + +end; + +procedure TfrmClothContractListLLSX.Tv1CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if Order_Main.IsEmpty then exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.* '); + SQL.Add('from ContractSX_Cloth_LLMx A '); + sql.Add('where A.DHId='''+Trim(Order_Main.fieldbyname('DHId').AsString)+''''); + //ShowMessage(SQL.Text); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); + +end; + +procedure TfrmClothContractListLLSX.ConNoKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(ConNo.Text))<3 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select ClothQty=DHQty-TPQtyHZ, '); + sql.Add('A.*,B.ConNo,C.C_CodeName,C.C_Spec,C.MFQty,C.KZQty,B.FactoryNoName from ContractSX_Cloth_DH A '); + Sql.Add('inner join ContractSX_Main B on A.Mainid=B.Mainid'); + sql.Add('inner join ContractSX_Sub C on A.Subid=C.Subid'); + SQL.Add(' where B.ConNo like '''+'%'+Trim(ConNo.Text)+'%'+''' '); //and A.DHType=''ǰ'' + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmClothContractListLLSX.ToolButton1Click(Sender: TObject); + var + FColumn:String; +begin + if ClientDataSet3.IsEmpty then Exit; + ToolBar2.SetFocus; + FColumn:=Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName; + if Trim(FColumn)='OrderNo' then Exit; + if Trim(FColumn)='PRTColor' then Exit; + if Application.MessageBox('ȷҪһ滻','ʾ',32+4)<>IDYES then Exit; + OneKeyPost(Tv3,ClientDataSet3); +end; + +procedure TfrmClothContractListLLSX.ToolButton8Click(Sender: TObject); +begin + + IF Order_Main.IsEmpty then exit; + if ClientDataSet3.IsEmpty then + begin + + with ClientDataSet3 do + begin + Append; + FieldByName('TPDate').Value:=SGetServerDate(ADOQueryTemp); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + FieldByName('ToName').Value:=Trim(ADOQueryTemp.fieldbyname('RanFactory').AsString); + Post; + end; + end else + begin + CopyAddRow(Tv3,ClientDataSet3); + with ClientDataSet3 do + begin + Edit; + FieldByName('MXID').Value:=''; + FieldByName('TPDate').Value:=null; + FieldByName('SXPS').Value:=null; + FieldByName('SXQty').Value:=null; + FieldByName('TPQty').Value:=null; + Post; + end; + end; + +end; + +procedure TfrmClothContractListLLSX.v3Column7PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Cloth'; + flagname:=''; + if ShowModal=1 then + begin + Self.ClientDataSet3.Edit; + Self.ClientDataSet3.FieldByName('PBName').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + //Self.ClientDataSet3.FieldByName('C_Code').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractListLLSX.v3Column14PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:='Ⱦ'; + MainType:='RanFactory'; + if ShowModal=1 then + begin + Self.ClientDataSet3.Edit; + self.ClientDataSet3.FieldByName('ToName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +end. diff --git a/艾登贸易管理/U_ClothContractListLLSXQJG.dfm b/艾登贸易管理/U_ClothContractListLLSXQJG.dfm new file mode 100644 index 0000000..2434503 --- /dev/null +++ b/艾登贸易管理/U_ClothContractListLLSXQJG.dfm @@ -0,0 +1,712 @@ +object frmClothContractListLLSXQJG: TfrmClothContractListLLSXQJG + Left = 37 + Top = 2 + Width = 1280 + Height = 705 + Caption = #32433#32447#21069#21152#24037#20986#24211 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1272 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 107 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBClose: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + object ToolButton2: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + Visible = False + end + object ToolButton3: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #21040#22383#30830#23450 + ImageIndex = 113 + Visible = False + end + object ToolButton5: TToolButton + Left = 402 + Top = 0 + Caption = #22383#24067#39046#26009#30830#23450 + ImageIndex = 114 + Visible = False + OnClick = ToolButton5Click + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1272 + Height = 54 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 22 + Width = 52 + Height = 12 + Caption = #30331#35760#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 161 + Top = 22 + Width = 18 + Height = 12 + Caption = '---' + end + object Label3: TLabel + Left = 283 + Top = 22 + Width = 52 + Height = 12 + Caption = #21512#21516#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 444 + Top = 22 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 612 + Top = 22 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 748 + Top = 22 + Width = 52 + Height = 12 + Caption = #21407#26448#26009#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 892 + Top = 22 + Width = 39 + Height = 12 + Caption = #22383#24067#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 18 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 179 + Top = 18 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object ConNo: TEdit + Tag = 2 + Left = 337 + Top = 18 + Width = 81 + Height = 20 + TabOrder = 2 + OnChange = ConNoChange + OnKeyPress = ConNoKeyPress + end + object C_CodeName: TEdit + Tag = 2 + Left = 497 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = ConNoChange + end + object C_Spec: TEdit + Tag = 2 + Left = 640 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 4 + OnChange = ConNoChange + end + object FactoryNoName: TEdit + Tag = 2 + Left = 800 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 5 + OnChange = ConNoChange + end + object FirstName: TEdit + Tag = 2 + Left = 932 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 6 + OnChange = ConNoChange + end + end + object Panel2: TPanel + Left = 0 + Top = 367 + Width = 1272 + Height = 301 + Align = alBottom + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 2 + object cxGrid3: TcxGrid + Left = 2 + Top = 34 + Width = 1268 + Height = 265 + Align = alClient + TabOrder = 0 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource3 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v3Column65 + end + item + Kind = skSum + Column = v3Column3 + end + item + Kind = skSum + Column = v3Column9 + end + item + Kind = skSum + end + item + Kind = skSum + Column = v3Column4 + end + item + Kind = skAverage + Column = v3Column5 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_TradeManage.Default + object v3Column7: TcxGridDBColumn + Caption = #22383#24067#21517#31216 + DataBinding.FieldName = 'PBName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v3Column7PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 92 + end + object v3Column11: TcxGridDBColumn + Caption = #22383#24067#35268#26684 + DataBinding.FieldName = 'PBSpec' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v3Column12: TcxGridDBColumn + Caption = #22383#24067#38376#24133'(cm)' + DataBinding.FieldName = 'PBMF' + HeaderAlignmentHorz = taCenter + Width = 94 + end + object v3Column13: TcxGridDBColumn + Caption = #22383#24067#20811#37325'(g/'#13217')' + DataBinding.FieldName = 'PBKZ' + HeaderAlignmentHorz = taCenter + Width = 113 + end + object v3Column14: TcxGridDBColumn + Caption = #26579#21378 + DataBinding.FieldName = 'ToName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v3Column14PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 88 + end + object v3Column6: TcxGridDBColumn + Caption = #20986#24211#26085#26399 + DataBinding.FieldName = 'TPDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 91 + end + object v3Column3: TcxGridDBColumn + Caption = #25237#22383#21305#25968 + DataBinding.FieldName = 'Qty1' + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v3Column9: TcxGridDBColumn + Caption = #20986#24211#21305#25968 + DataBinding.FieldName = 'SXPS' + HeaderAlignmentHorz = taCenter + Width = 63 + end + object v3Column4: TcxGridDBColumn + Caption = #20986#24211#25968#37327 + DataBinding.FieldName = 'SXQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v3Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 85 + end + object v3Column1: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'SXUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.ImmediatePost = True + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v3Column5: TcxGridDBColumn + Caption = #25240#31639#31995#25968 + DataBinding.FieldName = 'ZSXS' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v3Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 85 + end + object v3Column65: TcxGridDBColumn + Caption = #32433#32447#25968#37327 + DataBinding.FieldName = 'TPQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v3Column10: TcxGridDBColumn + Caption = #21152#24037#21333#20215 + DataBinding.FieldName = 'JGPrice' + HeaderAlignmentHorz = taCenter + Width = 63 + end + object v3Column8: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'TPNote' + Width = 105 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv3 + end + end + object ToolBar2: TToolBar + Left = 2 + Top = 2 + Width = 1268 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 119 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 1 + object ToolButton8: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton8Click + end + object ToolButton9: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton3Click + end + object ToolButton11: TToolButton + Left = 126 + Top = 0 + Caption = #32455#25104#21697#20986#24211#30830#23450 + ImageIndex = 114 + OnClick = ToolButton5Click + end + object ToolButton1: TToolButton + Left = 245 + Top = 0 + AutoSize = True + Caption = #19968#38190#26367#25442 + ImageIndex = 54 + OnClick = ToolButton1Click + end + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 359 + Width = 1272 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + Control = Panel2 + end + object cxGrid1: TcxGrid + Left = 0 + Top = 86 + Width = 1272 + Height = 273 + Align = alClient + TabOrder = 4 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv1CellClick + DataController.DataSource = DataSource1 + 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 + Column = v1Column3 + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column8 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1OrderNo: TcxGridDBColumn + Caption = #21512#21516#32534#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 114 + end + object v1Column2: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_CodeName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 112 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 106 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = #21407#26448#26009#21378 + DataBinding.FieldName = 'FactoryNoName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 79 + end + object v1Column5: TcxGridDBColumn + Caption = #22383#24067#21378 + DataBinding.FieldName = 'FirstName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 84 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'DHUnit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 64 + end + object v1Column3: TcxGridDBColumn + Caption = #21040#36135#25968#37327 + DataBinding.FieldName = 'DHQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1Column8: TcxGridDBColumn + Caption = #32433#32447#25968#37327 + DataBinding.FieldName = 'ClothQty' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column4: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'C_Note' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 752 + Top = 216 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 936 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1000 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1040 + Top = 8 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 1168 + Top = 8 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 1096 + Top = 8 + end + object ClientDataSet3: TClientDataSet + Aggregates = <> + Params = <> + Left = 1112 + Top = 240 + end + object DataSource2: TDataSource + DataSet = ClientDataSet2 + Left = 880 + Top = 176 + end + object DataSource3: TDataSource + DataSet = ClientDataSet3 + Left = 1112 + Top = 216 + end + object ClientDataSet2: TClientDataSet + Aggregates = <> + Params = <> + Left = 920 + Top = 224 + 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 = 352 + Top = 192 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 400 + Top = 192 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 416 + Top = 248 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 1128 + Top = 472 + end +end diff --git a/艾登贸易管理/U_ClothContractListLLSXQJG.pas b/艾登贸易管理/U_ClothContractListLLSXQJG.pas new file mode 100644 index 0000000..3b6e75a --- /dev/null +++ b/艾登贸易管理/U_ClothContractListLLSXQJG.pas @@ -0,0 +1,1030 @@ +unit U_ClothContractListLLSXQJG; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, + RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, + cxTextEdit, cxDropDownEdit, cxCheckBox; + +type + TfrmClothContractListLLSXQJG = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Label2: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + ConNo: TEdit; + Label5: TLabel; + C_CodeName: TEdit; + Order_Main: TClientDataSet; + Label4: TLabel; + C_Spec: TEdit; + ToolButton2: TToolButton; + ToolButton3: TToolButton; + ToolButton4: TToolButton; + ClientDataSet3: TClientDataSet; + DataSource2: TDataSource; + DataSource3: TDataSource; + ClientDataSet2: TClientDataSet; + ToolButton5: TToolButton; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + Panel2: TPanel; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + v3Column6: TcxGridDBColumn; + v3Column3: TcxGridDBColumn; + v3Column65: TcxGridDBColumn; + v3Column4: TcxGridDBColumn; + v3Column5: TcxGridDBColumn; + v3Column8: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + cxSplitter1: TcxSplitter; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1Column3: TcxGridDBColumn; + ToolBar2: TToolBar; + ToolButton8: TToolButton; + ToolButton9: TToolButton; + ToolButton11: TToolButton; + v1Column5: TcxGridDBColumn; + cxGridPopupMenu2: TcxGridPopupMenu; + Label6: TLabel; + FactoryNoName: TEdit; + Label7: TLabel; + FirstName: TEdit; + v3Column1: TcxGridDBColumn; + v3Column9: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v3Column10: TcxGridDBColumn; + ToolButton1: TToolButton; + v3Column7: TcxGridDBColumn; + v3Column11: TcxGridDBColumn; + v3Column12: TcxGridDBColumn; + v3Column13: TcxGridDBColumn; + v3Column14: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure ToolButton5Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v3Column2PropertiesEditValueChanged(Sender: TObject); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton8Click(Sender: TObject); + procedure v3Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v3Column14PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + private + FInt,PFInt:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + function YFData():Boolean; + { Private declarations } + public + { Public declarations } + end; + +var + frmClothContractListLLSXQJG: TfrmClothContractListLLSXQJG; + +implementation +uses + U_DataLink,U_ClothContractInPut,U_Fun,U_ProductOrderListSel,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmClothContractListLLSXQJG.FormDestroy(Sender: TObject); +begin + ClothContractListLLSXQJG:=nil; +end; + +procedure TfrmClothContractListLLSXQJG.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmClothContractListLLSXQJG.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('AAͬll1SXQJG',Tv1,'ָʾ'); + WriteCxGrid('AAͬllr1SXQJG',Tv3,'ָʾ'); +end; + +procedure TfrmClothContractListLLSXQJG.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select ClothQty=DHQty-TPQtyHZ, '); + sql.Add(' A.*,B.ConNo,C.C_CodeName,C.C_Spec,C.MFQty,C.KZQty,B.FactoryNoName from ContractSX_Cloth_DH A '); + sql.add(' inner join ContractSX_Main B on A.Mainid=B.Mainid'); + sql.Add('inner join ContractSX_Sub C on A.Subid=C.Subid'); + sql.Add(' where B.FillTime>=:begdate and B.Filltime<:enddate '); + + Parameters.ParamByName('begdate').Value:=BegDate.Date; + Parameters.ParamByName('enddate').Value:=EndDate.Date+1; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmClothContractListLLSXQJG.InitForm(); +begin + + ReadCxGrid('AAͬll1SXQJG',Tv1,'ָʾ'); + ReadCxGrid('AAͬllr1SXQJG',Tv3,'ָʾ'); + EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + BegDate.DateTime:=EndDate.DateTime-30; + InitGrid(); +end; + +procedure TfrmClothContractListLLSXQJG.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmClothContractListLLSXQJG.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmClothContractListLLSXQJG.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmClothContractListLLSXQJG.ConNoChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothContractListLLSXQJG.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmClothContractListLLSXQJG.Tv2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=2; +end; + +procedure TfrmClothContractListLLSXQJG.Tv2CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo ,'); + sql.Add('C_Unit=(select Top 1 C_Unit from Contract_Sub AA,Contract_Sub_Mx BB where AA.SubId=BB.SubId and BB.MXid=A.Mxid)'); + SQL.Add(' from Contract_Sub_MxTo A inner join JYOrder_Sub B on A.OrdSubId=B.SubId '); + SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId '); + sql.Add('where A.MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); +end; + +procedure TfrmClothContractListLLSXQJG.ToolButton5Click(Sender: TObject); +var + maxno,LLIdx,FDW:string; +begin + if ClientDataSet3.IsEmpty then Exit; + ToolBar1.SetFocus; + if ClientDataSet3.Locate('PBName',null,[]) then + begin + Application.MessageBox('ƲΪգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('SXPS',null,[]) then + begin + Application.MessageBox('ƥΪգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('SXQty',null,[]) then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('JGPrice',null,[]) then + begin + Application.MessageBox('ӹ۲Ϊգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('TPQty',null,[]) then + begin + Application.MessageBox('ɴΪգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('SXUnit',null,[]) then + begin + Application.MessageBox('λΪգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('PBMF',null,[]) then + begin + Application.MessageBox('ŷΪգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('PBKZ',null,[]) then + begin + Application.MessageBox('زΪգ','ʾ',0); + Exit; + end; + ClientDataSet3.DisableControls; + with ClientDataSet3 do + begin + First; + while not Eof do + begin + + if Trim(FDW)='' then + begin + FDW:=Trim(ClientDataSet3.fieldbyname('SXUnit').AsString); + end; + if FDW<>Trim(ClientDataSet3.fieldbyname('SXUnit').AsString) then + begin + Application.MessageBox('λһ!','ʾ',0); + Exit; + end; + Next; + end; + end; + { with ClientDataSet3 do + begin + First; + while not Eof do + begin + + if Trim(FDW)='' then + begin + FDW:=Trim(ClientDataSet3.fieldbyname('SXUnit').AsString); + end; + if FDW<>Trim(ClientDataSet3.fieldbyname('SXUnit').AsString) then + begin + Application.MessageBox('λһ!','ʾ',0); + Exit; + end; + Next; + end; + end;} + ClientDataSet3.EnableControls; + BegDate.SetFocus; + try + ADOQueryCmd.Connection.BeginTrans; + //ȥ + with ClientDataSet3 do + begin + First; + while not eof do + begin + if Trim(ClientDataSet3.fieldbyname('MXId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,maxno,'MX','ContractSX_Cloth_LLMx',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡȥˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(ClientDataSet3.fieldbyname('MXId').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from ContractSX_Cloth_LLMx where MXId='''+Trim(ClientDataSet3.fieldbyname('MXId').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(ClientDataSet3.fieldbyname('MXId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(Order_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + FieldByName('DHId').Value:=Trim(Order_Main.fieldbyname('DHId').AsString); + FieldByName('MXId').Value:=Trim(maxno); + FieldByName('TPDate').Value:=ClientDataSet3.fieldbyname('TPDate').Value; + FieldByName('TPNote').Value:=ClientDataSet3.fieldbyname('TPNote').Value; + FieldByName('TPUnit').Value:='Kg'; + FieldByName('SXUnit').Value:=ClientDataSet3.fieldbyname('SXUnit').Value; + FieldByName('PBName').Value:=ClientDataSet3.fieldbyname('PBName').Value; + FieldByName('PBSpec').Value:=ClientDataSet3.fieldbyname('PBSpec').Value; + FieldByName('PBMF').Value:=ClientDataSet3.fieldbyname('PBMF').Value; + FieldByName('PBKZ').Value:=ClientDataSet3.fieldbyname('PBKZ').Value; + FieldByName('ToName').Value:=ClientDataSet3.fieldbyname('ToName').Value; + if Trim(ClientDataSet3.fieldbyname('SXUnit').AsString)='Kg' then + begin + FieldByName('SXMQty').Value:=ClientDataSet3.FieldByName('SXQty').Value*1.00 + /(ClientDataSet3.FieldByName('PBKZ').Value/1000) + /(ClientDataSet3.FieldByName('PBMF').Value/100) + end else + begin + FieldByName('SXMQty').Value:=ClientDataSet3.FieldByName('SXQty').Value; + end; + + if Trim(ClientDataSet3.fieldbyname('TPQty').AsString)<>'' then + FieldByName('TPQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value + else + FieldByName('TPQty').Value:=0; + if Trim(ClientDataSet3.fieldbyname('JGPrice').AsString)<>'' then + FieldByName('JGPrice').Value:=ClientDataSet3.fieldbyname('JGPrice').Value + else + FieldByName('JGPrice').Value:=0; + + if Trim(ClientDataSet3.fieldbyname('SXPS').AsString)<>'' then + FieldByName('SXPS').Value:=ClientDataSet3.fieldbyname('SXPS').Value + else + FieldByName('SXPS').Value:=0; + if Trim(ClientDataSet3.fieldbyname('SXQty').AsString)<>'' then + FieldByName('SXQty').Value:=ClientDataSet3.fieldbyname('SXQty').Value + else + FieldByName('SXQty').Value:=0; + if Trim(ClientDataSet3.fieldbyname('ZSXS').AsString)<>'' then + FieldByName('ZSXS').Value:=ClientDataSet3.fieldbyname('ZSXS').Value + else + FieldByName('ZSXS').Value:=0; + FieldByName('TPYZQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value; + Post; + end; + with ClientDataSet3 do + begin + Edit; + FieldByName('MXId').Value:=Trim(maxno); + Post; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add(' Update ContractSX_Cloth_DH Set '); + sql.Add(' TPQtyHZ=(select Sum(TPQty) from ContractSX_Cloth_LLMx A where A.DHID=ContractSX_Cloth_DH.DHID)'); + sql.Add(' where DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_DH where SXDHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + sql.Add(' and FirstName='''+Trim(ClientDataSet3.fieldbyname('ToName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd,maxno,'SD','Contract_Cloth_DH',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡȥˮʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_DH where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('DHID').Value:=Trim(maxno); + FieldByName('SXDHID').Value:=Trim(Order_Main.fieldbyname('DHID').AsString); + FieldByName('SXMainID').Value:=Trim(Order_Main.fieldbyname('MainId').AsString); + FieldByName('FirstNo').Value:=Trim(ClientDataSet3.fieldbyname('ToName').AsString); + FieldByName('FirstName').Value:=Trim(ClientDataSet3.fieldbyname('ToName').AsString); + FieldByName('MainId').Value:=Trim(Order_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + FieldByName('DHUnit').Value:=Trim(ClientDataSet3.fieldbyname('SXUnit').AsString); + FieldByName('PBName').Value:=Trim(ClientDataSet3.fieldbyname('PBName').AsString); + FieldByName('PBSpec').Value:=Trim(ClientDataSet3.fieldbyname('PBSpec').AsString); + FieldByName('PBKZ').Value:=Trim(ClientDataSet3.fieldbyname('PBKZ').AsString); + FieldByName('PBMF').Value:=Trim(ClientDataSet3.fieldbyname('PBMF').AsString); + FieldByName('DHType').Value:='ɴ߼ӹ'; + Post; + end; + + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update Contract_Cloth_DH Set DHUnit='''+Trim(ClientDataSet3.fieldbyname('SXUnit').AsString)+''''); + sql.Add(' ,PBName='''+Trim(ClientDataSet3.fieldbyname('PBName').AsString)+''''); + sql.Add(' ,PBSpec='''+Trim(ClientDataSet3.fieldbyname('PBSpec').AsString)+''''); + sql.Add(' ,PBMF='+Trim(ClientDataSet3.fieldbyname('PBMF').AsString)); + sql.Add(' ,PBKZ='+Trim(ClientDataSet3.fieldbyname('PBKZ').AsString)); + sql.Add(' ,SXMainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.add(',DHType=''ɴ߼ӹ'' '); + sql.Add(' where DHID='''+Trim(ADOQueryTemp.fieldbyname('DHID').AsString)+''''); + ExecSQL; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Contract_Cloth_DH Set DHPS=(select isnull(sum(SXPS),0) from ContractSX_Cloth_LLMX A where A.DHID=Contract_Cloth_DH.SXDHID'); + SQL.Add(' and A.ToName=Contract_Cloth_DH.FirstName)'); + sql.Add(',SXTPQty=(select isnull(Sum(TPQty),0) from ContractSX_Cloth_LLMx A where A.DHID=Contract_Cloth_DH.SXDHID'); + SQL.Add(' and A.ToName=Contract_Cloth_DH.FirstName)'); + sql.Add(',DHQty=(select isnull(Sum(SXQty),0) from ContractSX_Cloth_LLMx A where A.DHID=Contract_Cloth_DH.SXDHID'); + SQL.Add(' and A.ToName=Contract_Cloth_DH.FirstName)'); + SQL.Add(',DHMQty=(select isnull(sum(SXMQty),0) from ContractSX_Cloth_LLMx A '); + SQL.Add(' where A.DHID=Contract_Cloth_DH.SXDHID'); + SQL.Add(' and A.ToName=Contract_Cloth_DH.FirstName)'); + sql.Add('where SXDHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + SQL.Add(' and FirstName='''+Trim(ClientDataSet3.fieldbyname('ToName').AsString)+''''); + ExecSQL; + end; + Next; + end; + end; + if YFData()=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('¼ӹ쳣!','ʾ',0); + Exit; + end; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; +function TfrmClothContractListLLSXQJG.YFData():Boolean; +var + CRID,OrdMainId,YFID,FComTaiTou:String; +begin + Result:=False; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + + Application.MessageBox('δ¼!','ʾ',0); + Exit; + end else + begin + if ADOQueryTemp.RecordCount>1 then + begin + + Application.MessageBox('¼ظ!','ʾ',0); + Exit; + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + OrdMainId:=Trim(ADOQueryTemp.fieldbyname('MainId').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select OrdDefStr2 from JYOrder_Main where Mainid='''+Trim(OrdMainId)+''''); + Open; + end; + FComTaiTou:=Trim(ADOQueryTemp.fieldbyname('OrdDefStr2').AsString); + + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + sql.Add(' and YFTypeId='''+Trim(Order_Main.fieldbyname('DHid').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + + if GetLSNo(ADOQueryCmd,YFID,'PJ','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡӹӦʧ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(Order_Main.fieldbyname('DHid').AsString); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('CRTime').Value:=ClientDataSet3.fieldbyname('TPDate').Value; + FieldByName('YFType').Value:='Զ'; + FieldByName('Price').Value:=ClientDataSet3.fieldbyname('JGPrice').Value; + FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=''; + FieldByName('ComTaiTou').Value:=Trim(FComTaiTou); + FieldByName('QtyUnit').Value:='Kg'; + FieldByName('YFName').Value:='ӹ'; + FieldByName('MainId').Value:=Trim(OrdMainId); + Post; + end; + end else + begin + YFID:=Trim(ADOQueryTemp.fieldbyname('YFID').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set CRTime='''+Trim(ClientDataSet3.fieldbyname('TPDate').AsString)+''''); + sql.add(',Price='+ClientDataSet3.fieldbyname('JGPrice').AsString); + sql.Add(' where YFID='''+Trim(ADOQueryTemp.fieldbyname('YFID').AsString)+''''); + ExecSQL; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update YF_Money_CR Set Qty=(select isnull(sum(TPQty),0) from ContractSX_Cloth_LLMX A '); + SQL.Add(' where A.DHId=YF_Money_CR.YFTypeId )'); + sql.Add(',Money=(select isnull(sum(TPQty*JGPrice),0) from ContractSX_Cloth_LLMX A '); + SQL.Add(' where A.DHId=YF_Money_CR.YFTypeId )'); + sql.Add(',BBMoney=(select isnull(sum(TPQty*JGPrice),0) from ContractSX_Cloth_LLMX A '); + SQL.Add(' where A.DHId=YF_Money_CR.YFTypeId )'); + sql.Add(' where YFTypeId='''+Trim(Order_Main.fieldbyname('DHid').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where YFID='''+Trim(YFID)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + if ADOQueryTemp.FieldByName('Money').AsFloat=0 then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_CR where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + end; + end; + Result:=True; +end; + +procedure TfrmClothContractListLLSXQJG.ToolButton3Click(Sender: TObject); +begin + + begin + if ClientDataSet3.IsEmpty then Exit; + if Trim(ClientDataSet3.fieldbyname('MXId').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete ContractSX_Cloth_LLMx where MXId='''+Trim(ClientDataSet3.fieldbyname('MXId').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update ContractSX_Cloth_DH Set TPQtyHZ=(select isnull(Sum(TPYZQty),0) from ContractSX_Cloth_LLMx A where A.DHID=ContractSX_Cloth_DH.DHID)'); + sql.Add(' where DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Contract_Cloth_DH Set DHPS=(select isnull(sum(SXPS),0) from ContractSX_Cloth_LLMX A where A.DHID=Contract_Cloth_DH.SXDHID'); + SQL.Add(' and A.ToName=Contract_Cloth_DH.FirstName)'); + sql.Add(', DHQty=(select isnull(sum(SXQty),0) from ContractSX_Cloth_LLMX A where A.DHID=Contract_Cloth_DH.SXDHID'); + SQL.Add(' and A.ToName=Contract_Cloth_DH.FirstName)'); + sql.Add(', DHMQty=(select isnull(sum(SXMQty),0) from ContractSX_Cloth_LLMX A where A.DHID=Contract_Cloth_DH.SXDHID'); + SQL.Add(' and A.ToName=Contract_Cloth_DH.FirstName)'); + sql.Add('where SXDHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + SQL.Add(' and FirstName='''+Trim(ClientDataSet3.fieldbyname('ToName').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Cloth_DH where not exists('); + sql.Add(' select * from ContractSX_Cloth_LLMX LM where LM.DHID=Contract_Cloth_DH.SXDHID '); + sql.Add(' and LM.ToName=Contract_Cloth_DH.FirstName )'); + sql.Add(' and SXDHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+''''); + SQL.Add(' and FirstName='''+Trim(ClientDataSet3.fieldbyname('ToName').AsString)+''''); + ExecSQL; + end; + if YFData()=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ӹ쳣!','ʾ',0); + Exit; + end; + ADOQueryCmd.Connection.CommitTrans; + ClientDataSet3.Delete; + except; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣!','ʾ',0); + end; + + {with Order_Main do + begin + Edit; + if ClientDataSet3.IsEmpty=False then + FieldByName('KCQty').Value:=Order_Main.fieldbyname('DHQty').Value-tv3.DataController.Summary.FooterSummaryValues[0] + else + FieldByName('KCQty').Value:=Order_Main.fieldbyname('DHQty').Value; + Post; + end; } + end; +end; + +procedure TfrmClothContractListLLSXQJG.v2Column3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='RKPlace'; + flagname:='ص'; + if ShowModal=1 then + begin + with ClientDataSet2 do + begin + Edit; + FieldByName('RKPlace').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractListLLSXQJG.v3Column2PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,fieldname,qty1,qty2,qty3:String; + +begin + If Trim(TcxTextEdit(Sender).EditingText)<>'' then + begin + mvalue:=TcxTextEdit(Sender).EditingText; + end else + begin + mvalue:='0'; + end; + fieldname:=Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName; + with ClientDataSet3 do + begin + Edit; + FieldByName(Trim(fieldname)).Value:=mvalue; + Post; + end; + if Trim(ClientDataSet3.fieldbyname('ZSXS').AsString)<>'' then + begin + Qty3:=ClientDataSet3.fieldbyname('ZSXS').AsString; + end else + begin + Qty3:='0'; + end; + if Trim(ClientDataSet3.fieldbyname('SXQty').AsString)<>'' then + begin + Qty1:=ClientDataSet3.fieldbyname('SXQty').AsString; + end else + begin + Qty1:='0'; + end; + with ClientDataSet3 do + begin + Edit; + FieldByName('TPQty').Value:=StrToFloat(qty1)*StrToFloat(qty3); + Post; + end; + +end; + +procedure TfrmClothContractListLLSXQJG.Tv1CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if Order_Main.IsEmpty then exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.* '); + SQL.Add('from ContractSX_Cloth_LLMx A '); + sql.Add('where A.DHId='''+Trim(Order_Main.fieldbyname('DHId').AsString)+''''); + //ShowMessage(SQL.Text); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); + +end; + +procedure TfrmClothContractListLLSXQJG.ConNoKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(ConNo.Text))<3 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select ClothQty=DHQty-TPQtyHZ '); + sql.Add('A.*,B.ConNo,C.C_CodeName,C.C_Spec,C.MFQty,C.KZQty,B.FactoryNoName from ContractSX_Cloth_DH A '); + Sql.Add('inner join ContractSX_Main B on A.Mainid=B.Mainid'); + sql.Add('inner join ContractSX_Sub C on A.Subid=C.Subid'); + SQL.Add(' where B.ConNo like '''+'%'+Trim(ConNo.Text)+'%'+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmClothContractListLLSXQJG.ToolButton1Click(Sender: TObject); + var + FColumn:String; +begin + if ClientDataSet3.IsEmpty then Exit; + ToolBar2.SetFocus; + FColumn:=Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName; + if Trim(FColumn)='OrderNo' then Exit; + if Trim(FColumn)='PRTColor' then Exit; + if Application.MessageBox('ȷҪһ滻','ʾ',32+4)<>IDYES then Exit; + OneKeyPost(Tv3,ClientDataSet3); +end; + +procedure TfrmClothContractListLLSXQJG.ToolButton8Click(Sender: TObject); +begin + + if ClientDataSet3.IsEmpty then + begin + + with ClientDataSet3 do + begin + Append; + FieldByName('TPDate').Value:=SGetServerDate(ADOQueryTemp); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + FieldByName('ToName').Value:=Trim(ADOQueryTemp.fieldbyname('RanFactory').AsString); + Post; + end; + end else + begin + CopyAddRow(Tv3,ClientDataSet3); + with ClientDataSet3 do + begin + Edit; + FieldByName('MXID').Value:=''; + FieldByName('TPDate').Value:=null; + FieldByName('SXPS').Value:=null; + FieldByName('SXQty').Value:=null; + FieldByName('TPQty').Value:=null; + Post; + end; + end; + +end; + +procedure TfrmClothContractListLLSXQJG.v3Column7PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Cloth'; + flagname:=''; + if ShowModal=1 then + begin + Self.ClientDataSet3.Edit; + Self.ClientDataSet3.FieldByName('PBName').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + //Self.ClientDataSet3.FieldByName('C_Code').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractListLLSXQJG.v3Column14PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:='Ⱦ'; + MainType:='RanFactory'; + if ShowModal=1 then + begin + Self.ClientDataSet3.Edit; + self.ClientDataSet3.FieldByName('ToName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +end. diff --git a/艾登贸易管理/U_ClothContractListSX.dfm b/艾登贸易管理/U_ClothContractListSX.dfm new file mode 100644 index 0000000..23e93bf --- /dev/null +++ b/艾登贸易管理/U_ClothContractListSX.dfm @@ -0,0 +1,436 @@ +object frmClothContractListSX: TfrmClothContractListSX + Left = -41 + Top = 54 + Width = 1280 + Height = 705 + Caption = #32433#32447#37319#36141#21512#21516 + 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 = 1272 + AutoSize = True + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBAdd: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object TBDel: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object TBExport: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 441 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1272 + Height = 54 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 22 + Width = 52 + Height = 12 + Caption = #30331#35760#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 161 + Top = 22 + Width = 18 + Height = 12 + Caption = '---' + end + object Label3: TLabel + Left = 283 + Top = 22 + Width = 52 + Height = 12 + Caption = #21512#21516#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 444 + Top = 22 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 612 + Top = 22 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 18 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 179 + Top = 18 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object ConNoM: TEdit + Tag = 2 + Left = 337 + Top = 18 + Width = 81 + Height = 20 + TabOrder = 2 + OnChange = ConNoMChange + OnKeyPress = conPress + end + object C_CodeNameM: TEdit + Tag = 2 + Left = 497 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = ConNoMChange + end + object C_Spec: TEdit + Tag = 2 + Left = 640 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 4 + OnChange = ConNoMChange + end + end + object cxGrid1: TcxGrid + Left = 64 + Top = 112 + Width = 929 + Height = 377 + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + Column = v1Column1 + end + item + Kind = skSum + Column = v1PRTQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + object v1OrderNo: TcxGridDBColumn + Caption = #21512#21516#32534#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 65 + end + object v1Column2: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_CodeName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 58 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DeliveryDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v1Column5: TcxGridDBColumn + Caption = #31614#35746#26085#26399 + DataBinding.FieldName = 'QDTime' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = #20379#26041 + DataBinding.FieldName = 'FactoryNoName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 66 + end + object v1Qty1: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'Qty1' + Visible = False + HeaderAlignmentHorz = taCenter + Hidden = True + Styles.Header = DataLink_TradeManage.Default + Width = 46 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'C_Qty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 58 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'C_Unit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 47 + end + object v1Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 57 + end + object v1PRTUnit: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 61 + end + object v1PRTQty: TcxGridDBColumn + Caption = #24635#20215 + DataBinding.FieldName = 'Money' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 58 + end + object v1Column4: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'C_Note' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 1128 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 936 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1000 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1040 + Top = 8 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 1168 + Top = 8 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 1096 + Top = 8 + 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 = 352 + Top = 192 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_PRT + Left = 400 + Top = 192 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 416 + Top = 248 + end + object CDS_PRT: TClientDataSet + Aggregates = <> + Params = <> + Left = 880 + Top = 56 + end +end diff --git a/艾登贸易管理/U_ClothContractListSX.pas b/艾登贸易管理/U_ClothContractListSX.pas new file mode 100644 index 0000000..5bc6901 --- /dev/null +++ b/艾登贸易管理/U_ClothContractListSX.pas @@ -0,0 +1,375 @@ +unit U_ClothContractListSX; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, + RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, + cxTextEdit; + +type + TfrmClothContractListSX = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Label2: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + ConNoM: TEdit; + Label5: TLabel; + C_CodeNameM: TEdit; + TBExport: TToolButton; + Order_Main: TClientDataSet; + Label4: TLabel; + C_Spec: TEdit; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + CDS_PRT: TClientDataSet; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1Qty1: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1PRTUnit: TcxGridDBColumn; + v1PRTQty: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure conPress(Sender: TObject; var Key: Char); + private + FInt,PFInt:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + { Private declarations } + public + { Public declarations } + end; + +var + frmClothContractListSX: TfrmClothContractListSX; + +implementation +uses + U_DataLink,U_ClothContractInPutSX,U_Fun,U_ProductOrderList,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmClothContractListSX.FormDestroy(Sender: TObject); +begin + frmClothContractListSX:=nil; +end; + +procedure TfrmClothContractListSX.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmClothContractListSX.FormCreate(Sender: TObject); +begin + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); +end; + +procedure TfrmClothContractListSX.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ͬбSX',Tv1,'ָʾ'); +end; + +procedure TfrmClothContractListSX.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContractSX_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmClothContractListSX.InitForm(); +begin + ReadCxGrid('ͬбSX',Tv1,'ָʾ'); + if Trim(DParameters1)='1' then + begin + TBPrint.Visible:=False; + v1Column1.Visible:=False; + v1Column1.Hidden:=True; + v1PRTUnit.Visible:=False; + v1PRTUnit.Hidden:=True; + v1PRTQty.Visible:=False; + v1PRTQty.Hidden:=True; + end else + begin + v1Column1.Visible:=True; + v1Column1.Hidden:=False; + v1PRTUnit.Visible:=True; + v1PRTUnit.Hidden:=False; + v1PRTQty.Visible:=True; + v1PRTQty.Hidden:=False; + TBPrint.Visible:=True; + end; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmClothContractListSX.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothContractListSX.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmClothContractInPutSX:=TfrmClothContractInPutSX.Create(Application); + with frmClothContractInPutSX do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + FConNo:=Trim(Self.Order_Main.fieldbyname('ConNoM').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmClothContractInPutSX.Free; + end; +end; + +procedure TfrmClothContractListSX.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from ContractSX_Sub_MX B inner join Contract_Sub C on B.SubId=C.SubId '); + sql.Add(' where C.Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('Ѿݲɾ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData() then + begin + //TBRafresh.Click; + //TBFind.Click; + Order_Main.Delete; + end; +end; + +function TfrmClothContractListSX.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete ContractSX_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from ContractSX_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete ContractSX_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete ContractSX_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmClothContractListSX.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel('ͬб',cxGrid1); +end; + +procedure TfrmClothContractListSX.TBPrintClick(Sender: TObject); +var + fPrintFile,FConNoM:string; + +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ɴ߶ͬ.rmf' ; + with ADOQueryTemp do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContractSX_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Parameters.ParamByName('MainId').Value:=Trim(Order_Main.fieldbyname('MainId').AsString); + Parameters.ParamByName('WSql').Value:=''; + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_PRT); + SInitCDSData20(ADOQueryTemp,CDS_PRT); + FConNoM:=Trim(CDS_PRT.fieldbyname('ConNoM').AsString); + //SDofilter(ADOQueryMain,' ConNoM='''+Trim(Order_Main.fieldbyname('ConNoM').AsString)+''''); + //SCreateCDS20(ADOQueryMain,Order_Main); + //SInitCDSData20(ADOQueryMain,Order_Main); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ɴ߶ͬ.rmf'),'ʾ',0); + end; + +end; + +procedure TfrmClothContractListSX.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmClothContractListSX.TBAddClick(Sender: TObject); +begin + try + frmClothContractInPutSX:=TfrmClothContractInPutSX.Create(Application); + with frmClothContractInPutSX do + begin + PState:=0; + FMainId:=''; + if ShowModal=1 then + begin + + end; + end; + finally + frmClothContractInPutSX.Free; + end; +end; + +procedure TfrmClothContractListSX.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothContractListSX.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmClothContractListSX.conPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(ConNoM.Text))<3 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContractSX_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and OM.conNo like '''+'%'+Trim(ConNoM.Text)+'%'+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +end. diff --git a/艾登贸易管理/U_ClothContractListWJG.dfm b/艾登贸易管理/U_ClothContractListWJG.dfm new file mode 100644 index 0000000..8825e81 --- /dev/null +++ b/艾登贸易管理/U_ClothContractListWJG.dfm @@ -0,0 +1,820 @@ +object frmClothContractListWJG: TfrmClothContractListWJG + Left = 107 + Top = 19 + Width = 1189 + Height = 705 + Caption = #22806#21152#24037 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Label2: TLabel + Left = 243 + Top = 70 + Width = 52 + Height = 12 + Caption = #21512#21516#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1173 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 107 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBClose: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + object ToolButton2: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + Visible = False + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #21040#22383#30830#23450 + ImageIndex = 113 + Visible = False + end + object ToolButton5: TToolButton + Left = 402 + Top = 0 + Caption = #22383#24067#39046#26009#30830#23450 + ImageIndex = 114 + Visible = False + OnClick = ToolButton5Click + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1173 + Height = 61 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 14 + Width = 52 + Height = 12 + Caption = #30331#35760#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 231 + Top = 14 + Width = 52 + Height = 12 + Caption = #21512#21516#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 452 + Top = 13 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 452 + Top = 38 + Width = 54 + Height = 12 + Caption = #35268' '#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 679 + Top = 14 + Width = 39 + Height = 12 + Caption = #22383#24067#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 679 + Top = 38 + Width = 40 + Height = 12 + Caption = #26579' '#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 231 + Top = 38 + Width = 21 + Height = 12 + Caption = 'PO#' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 10 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 75 + Top = 34 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object ConNo: TEdit + Tag = 2 + Left = 285 + Top = 10 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = ConNoChange + OnKeyPress = ConNoKeyPress + end + object C_CodeName: TEdit + Tag = 2 + Left = 509 + Top = 10 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = ConNoChange + end + object C_Spec: TEdit + Tag = 2 + Left = 508 + Top = 34 + Width = 100 + Height = 20 + TabOrder = 4 + OnChange = ConNoChange + end + object FactoryNoName: TEdit + Tag = 2 + Left = 723 + Top = 10 + Width = 100 + Height = 20 + TabOrder = 5 + OnChange = ConNoChange + end + object FirstName: TEdit + Tag = 2 + Left = 723 + Top = 34 + Width = 100 + Height = 20 + TabOrder = 6 + OnChange = ConNoChange + end + object khconNO: TEdit + Tag = 2 + Left = 285 + Top = 33 + Width = 100 + Height = 20 + TabOrder = 7 + OnChange = ConNoChange + end + end + object Panel2: TPanel + Left = 0 + Top = 366 + Width = 1173 + Height = 301 + Align = alBottom + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 2 + object cxGrid3: TcxGrid + Left = 2 + Top = 34 + Width = 1169 + Height = 265 + Align = alClient + TabOrder = 0 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource3 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v3Column2 + end + item + Kind = skSum + Column = v3Column3 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_TradeManage.Default + object cxGridDBColumn1: TcxGridDBColumn + Caption = #35746#21333#32534#21495 + DataBinding.FieldName = 'OrderNo' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 98 + end + object cxGridDBPRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v3Column15: TcxGridDBColumn + Caption = #26412#21378#32568#21495 + DataBinding.FieldName = 'BCgangNO' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v3Column16: TcxGridDBColumn + Caption = #26579#21378#32568#21495 + DataBinding.FieldName = 'RCGangNO' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v3Column13: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'SOrddefstr1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 57 + end + object v3Column14: TcxGridDBColumn + Caption = #33457#22411#33457#21495 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 63 + end + object v3Column6: TcxGridDBColumn + Caption = #39046#26009#26085#26399 + DataBinding.FieldName = 'TPDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 81 + end + object v3Column10: TcxGridDBColumn + Caption = #21152#24037#21378 + DataBinding.FieldName = 'ToName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v3Column10PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v3Column3: TcxGridDBColumn + Caption = #25237#22383#21305#25968 + DataBinding.FieldName = 'Qty1' + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v3Column9: TcxGridDBColumn + Caption = #21305#25968#37327 + DataBinding.FieldName = 'TPPS' + HeaderAlignmentHorz = taCenter + Width = 61 + end + object v3Column2: TcxGridDBColumn + Caption = #25968#37327'('#35745#21010')' + DataBinding.FieldName = 'TPQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v3Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 97 + end + object v3Column4: TcxGridDBColumn + Caption = #25968#37327#20844#24046 + DataBinding.FieldName = 'Qty2' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v3Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 85 + end + object v3Column5: TcxGridDBColumn + Caption = #35745#21010#32553#29575'(%)' + DataBinding.FieldName = 'Qty3' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v3Column5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 85 + end + object v3Column1: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'TPUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 68 + end + object v3Column7: TcxGridDBColumn + Caption = #39046#26009#20154 + DataBinding.FieldName = 'TPPerson' + HeaderAlignmentHorz = taCenter + Width = 75 + end + object v3Column11: TcxGridDBColumn + Caption = #19978#36947#21152#24037#21333#20215 + DataBinding.FieldName = 'JGPrice' + HeaderAlignmentHorz = taCenter + Width = 84 + end + object v3Column12: TcxGridDBColumn + Caption = #22806#21152#24037#31867#22411 + DataBinding.FieldName = 'HJGType' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + '' + #22238#20179#21518#21152#24037) + HeaderAlignmentHorz = taCenter + Width = 94 + end + object v3Column8: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'TPNote' + HeaderAlignmentHorz = taCenter + Width = 105 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv3 + end + end + object ToolBar2: TToolBar + Left = 2 + Top = 2 + Width = 1169 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 1 + object ToolButton8: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton2Click + end + object ToolButton9: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton3Click + end + object ToolButton11: TToolButton + Left = 126 + Top = 0 + Caption = #21518#21152#24037#30830#23450 + ImageIndex = 114 + OnClick = ToolButton5Click + end + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 358 + Width = 1173 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + Control = Panel2 + end + object cxGrid1: TcxGrid + Left = 0 + Top = 93 + Width = 1173 + Height = 265 + Align = alClient + TabOrder = 4 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv1CellClick + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column9 + end + item + Kind = skSum + Column = v1Column10 + end + item + Kind = skSum + Column = v1Column12 + end + item + Kind = skSum + Column = v1Column13 + end + item + Kind = skSum + Column = v1Column11 + end + item + Kind = skSum + Column = v1Column1 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1Column3: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 82 + end + object v1Column4: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v1OrderNo: TcxGridDBColumn + Caption = #21512#21516#32534#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 114 + end + object v1Column7: TcxGridDBColumn + Caption = 'PO#' + DataBinding.FieldName = 'khconNO' + HeaderAlignmentHorz = taCenter + Width = 88 + end + object v1Column2: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_CodeName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 112 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = #22383#24067#21378 + DataBinding.FieldName = 'FactoryNoName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 79 + end + object v1Column5: TcxGridDBColumn + Caption = #26579#21378 + DataBinding.FieldName = 'FirstName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 84 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 106 + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'MFQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'KZQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'TPUnit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 64 + end + object v1Column6: TcxGridDBColumn + Caption = #24207#27425 + DataBinding.FieldName = 'LLIdx' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 61 + end + object v1Column9: TcxGridDBColumn + Caption = #21322#25104#21697#21305#25968 + DataBinding.FieldName = 'TPPS' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v1Column10: TcxGridDBColumn + Caption = #21322#25104#21697#25968#37327 + DataBinding.FieldName = 'BCPQty' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v1Column12: TcxGridDBColumn + Caption = #20986#24211#21305#25968 + DataBinding.FieldName = 'HCPS' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column13: TcxGridDBColumn + Caption = #20986#24211#25968#37327 + DataBinding.FieldName = 'HCQty' + HeaderAlignmentHorz = taCenter + Width = 59 + end + object v1Column11: TcxGridDBColumn + Caption = #24211#23384#21305#25968 + DataBinding.FieldName = 'KCPS' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column1: TcxGridDBColumn + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'KCQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 65 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 752 + Top = 216 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 936 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1000 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1040 + Top = 8 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 1168 + Top = 8 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 1096 + Top = 8 + end + object ClientDataSet3: TClientDataSet + Aggregates = <> + Params = <> + Left = 1112 + Top = 240 + end + object DataSource2: TDataSource + DataSet = ClientDataSet2 + Left = 880 + Top = 176 + end + object DataSource3: TDataSource + DataSet = ClientDataSet3 + Left = 1112 + Top = 216 + end + object ClientDataSet2: TClientDataSet + Aggregates = <> + Params = <> + Left = 920 + Top = 224 + 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 = 352 + Top = 192 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 400 + Top = 192 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 416 + Top = 248 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 1168 + Top = 464 + end +end diff --git a/艾登贸易管理/U_ClothContractListWJG.pas b/艾登贸易管理/U_ClothContractListWJG.pas new file mode 100644 index 0000000..e07e5ac --- /dev/null +++ b/艾登贸易管理/U_ClothContractListWJG.pas @@ -0,0 +1,1238 @@ +unit U_ClothContractListWJG; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, + RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, + cxTextEdit, cxDropDownEdit, cxCheckBox; + +type + TfrmClothContractListWJG = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + ConNo: TEdit; + Label5: TLabel; + C_CodeName: TEdit; + Order_Main: TClientDataSet; + Label4: TLabel; + C_Spec: TEdit; + ToolButton2: TToolButton; + ToolButton3: TToolButton; + ToolButton4: TToolButton; + ClientDataSet3: TClientDataSet; + DataSource2: TDataSource; + DataSource3: TDataSource; + ClientDataSet2: TClientDataSet; + ToolButton5: TToolButton; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + Panel2: TPanel; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBPRTColor: TcxGridDBColumn; + v3Column6: TcxGridDBColumn; + v3Column3: TcxGridDBColumn; + v3Column2: TcxGridDBColumn; + v3Column4: TcxGridDBColumn; + v3Column5: TcxGridDBColumn; + v3Column7: TcxGridDBColumn; + v3Column8: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + cxSplitter1: TcxSplitter; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1Column1: TcxGridDBColumn; + ToolBar2: TToolBar; + ToolButton8: TToolButton; + ToolButton9: TToolButton; + ToolButton11: TToolButton; + v1Column5: TcxGridDBColumn; + cxGridPopupMenu2: TcxGridPopupMenu; + Label6: TLabel; + FactoryNoName: TEdit; + Label7: TLabel; + FirstName: TEdit; + v3Column1: TcxGridDBColumn; + v3Column9: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + v1Column13: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v3Column10: TcxGridDBColumn; + v3Column11: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v3Column12: TcxGridDBColumn; + v3Column13: TcxGridDBColumn; + v3Column14: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + Label2: TLabel; + khconNO: TEdit; + Label8: TLabel; + v3Column15: TcxGridDBColumn; + v3Column16: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure ToolButton5Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v3Column2PropertiesEditValueChanged(Sender: TObject); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure v3Column10PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + procedure v3Column5PropertiesEditValueChanged(Sender: TObject); + private + FInt,PFInt:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridWhere(fsj:string); + function YFData():Boolean; + function YFDataDel():Boolean; + { Private declarations } + public + { Public declarations } + end; + +var + frmClothContractListWJG: TfrmClothContractListWJG; + +implementation +uses + U_DataLink,U_ClothContractInPut,U_Fun,U_ProductOrderListSel,U_ZDYHelp, + U_ZdyAttachGYS; + +{$R *.dfm} + +procedure TfrmClothContractListWJG.FormDestroy(Sender: TObject); +begin + frmClothContractListWJG:=nil; +end; + +procedure TfrmClothContractListWJG.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmClothContractListWJG.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ӹ1',Tv1,'ָʾ'); + WriteCxGrid('ӹ2',Tv3,'ָʾ'); +end; + +procedure TfrmClothContractListWJG.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add(' exec P_HJG_View :begdate,:enddate,:PState,:ConNo'); + Parameters.ParamByName('PState').Value:=1; + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.Date); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',EndDate.Date+1); + Parameters.ParamByName('ConNo').Value:=''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo '); + SQL.Add('from Contract_Cloth_LLMx A inner join JYOrder_Sub B on A.OrdSubId=B.SubId'); + SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId '); + sql.Add('where A.DHId='''+Trim(Order_Main.fieldbyname('LLId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmClothContractListWJG.InitGridWhere(fsj:string); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + SQL.Add(' select A.*,B.ConNo,C.C_CodeName,B.FactoryNoName,C.C_Spec,C.MFQty,C.KZQty,C.MainId,D.DHUnit,C.SubId '); + sql.Add(' ,JM.OrderNo,JS.PRTColor'); + sql.Add(',Price=(select Top 1 JGPrice from Contract_Cloth_LLMX AAA where AAA.DHID=A.DHID )'); + sql.Add(',KCPS=TPPS-HCPS,KCQty=BCPQty-HCQty'); + sql.Add(',APFlag=(select Count(*) from JYOrder_Sub_AnPai JAP where JAP.LLID=A.LLID)'); + sql.Add(' from Contract_Cloth_LL A '); + sql.Add(' inner join Contract_Cloth_DH D on A.DHID=D.DHID '); + sql.Add(' inner join Contract_Main B on D.Mainid=B.Mainid'); + sql.Add(' inner join Contract_Sub C on D.Subid=C.Subid'); + sql.Add(' inner join JYOrder_Sub JS on A.OrdSubId=JS.SubId '); + sql.Add(' inner join JYOrder_Main JM on JS.Mainid=JM.MainId'); + //sql.Add(' where isnull(DHIDHelp,'''')='''' '); + sql.Add(' where 1=1 '); + sql.Add(fsj); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmClothContractListWJG.InitForm(); +begin + + ReadCxGrid('ӹ1',Tv1,'ָʾ'); + ReadCxGrid('ӹ2',Tv3,'ָʾ'); + EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + BegDate.DateTime:=EndDate.DateTime-30; + InitGrid(); +end; + +procedure TfrmClothContractListWJG.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmClothContractListWJG.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmClothContractListWJG.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmClothContractListWJG.ConNoChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothContractListWJG.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmClothContractListWJG.ToolButton2Click(Sender: TObject); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where ConNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + with ClientDataSet3 do + begin + Append; + FieldByName('OrderNo').Value:=Trim(Order_Main.fieldbyname('OrderNo').AsString); + FieldByName('PRTColor').Value:=Trim(Order_Main.fieldbyname('PRTColor').AsString); + FieldByName('ToName').Value:=Trim(ADOQueryTemp.fieldbyname('HZLFactory').AsString); + FieldByName('TPDate').Value:=SGetServerDate(ADOQueryTemp); + FieldByName('TPUnit').Value:=Order_Main.fieldbyname('TPUnit').Value; + Post; + end; +end; + +procedure TfrmClothContractListWJG.Tv2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=2; +end; + +procedure TfrmClothContractListWJG.Tv2CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo ,'); + sql.Add('C_Unit=(select Top 1 C_Unit from Contract_Sub AA,Contract_Sub_Mx BB where AA.SubId=BB.SubId and BB.MXid=A.Mxid)'); + SQL.Add(' from Contract_Sub_MxTo A inner join JYOrder_Sub B on A.OrdSubId=B.SubId '); + SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId '); + sql.Add('where A.MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); +end; + +procedure TfrmClothContractListWJG.ToolButton5Click(Sender: TObject); +var + maxno,LLIdx,FDW,FFLLID:string; +begin + if ClientDataSet3.IsEmpty then Exit; + if ClientDataSet3.Locate('OrderNo',null,[]) then + begin + Application.MessageBox('ָŲΪգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('ToName',null,[]) then + begin + Application.MessageBox('ӹΪգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('ToName','',[]) then + begin + Application.MessageBox('ӹΪգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('TPPS',null,[]) then + begin + Application.MessageBox('ƥΪգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('TPQty',null,[]) then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('Qty2',null,[]) then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + if ClientDataSet3.Locate('TPUnit',null,[]) then + begin + Application.MessageBox('λΪգ','ʾ',0); + Exit; + end; + ClientDataSet3.DisableControls; + with ClientDataSet3 do + begin + First; + while not Eof do + begin + + if Trim(FDW)='' then + begin + FDW:=Trim(ClientDataSet3.fieldbyname('TPUnit').AsString); + end; + if FDW<>Trim(ClientDataSet3.fieldbyname('TPUnit').AsString) then + begin + Application.MessageBox('λһ!','ʾ',0); + Exit; + end; + Next; + end; + end; + ClientDataSet3.EnableControls; + if Trim(Order_Main.fieldbyname('DHUnit').AsString)='M' then + begin + if ClientDataSet3.Locate('TPUnit','Kg',[]) then + begin + Application.MessageBox('ȾɫλΪM,ӹλΪKg','ʾ',0); + Exit; + end; + end; + BegDate.SetFocus; + try + ADOQueryCmd.Connection.BeginTrans; + //ȥ + with ClientDataSet3 do + begin + First; + while not eof do + begin + if Trim(ClientDataSet3.fieldbyname('MXId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,maxno,'MX','Contract_Cloth_LLMx',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡȥˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(ClientDataSet3.fieldbyname('MXId').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LLMx where MXId='''+Trim(ClientDataSet3.fieldbyname('MXId').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(ClientDataSet3.fieldbyname('MXId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(Order_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + FieldByName('SXMainId').Value:=Trim(Order_Main.fieldbyname('SXMainId').AsString); + FieldByName('SXDHID').Value:=Trim(Order_Main.fieldbyname('SXDHID').AsString); + FieldByName('DHId').Value:=Trim(Order_Main.fieldbyname('LLId').AsString); + FieldByName('MXId').Value:=Trim(maxno); + FieldByName('OrdSubId').Value:=Trim(Order_Main.fieldbyname('OrdSubId').AsString); + FieldByName('TPDate').Value:=ClientDataSet3.fieldbyname('TPDate').Value; + FieldByName('TPPerson').Value:=ClientDataSet3.fieldbyname('TPPerson').Value; + FieldByName('HJGType').Value:=ClientDataSet3.fieldbyname('HJGType').Value; + FieldByName('TPNote').Value:=ClientDataSet3.fieldbyname('TPNote').Value; + FieldByName('RCGangNO').Value:=Trim(ClientDataSet3.fieldbyname('RCGangNO').AsString); + FieldByName('BCgangNO').Value:=Trim(ClientDataSet3.fieldbyname('BCgangNO').AsString); + if ClientDataSet3.FieldByName('HCFlag').AsBoolean=True then + begin + FieldByName('HCFlag').Value:=1 + end else + begin + FieldByName('HCFlag').Value:=0; + end; + if Trim(ClientDataSet3.fieldbyname('MXId').AsString)<>'' then + begin + if Trim(ADOQueryCmd.fieldbyname('TPUnit').AsString)<>Trim(ClientDataSet3.fieldbyname('TPUnit').AsString) then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub_AnPai A where SubId='''+Trim(ClientDataSet3.fieldbyname('OrdSubId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ѻزֲ޸λ!','ʾ',0); + Exit; + end; + end; + end; + FieldByName('TPUnit').Value:=ClientDataSet3.fieldbyname('TPUnit').Value; + FieldByName('ToNo').Value:=ClientDataSet3.fieldbyname('ToNo').Value; + FieldByName('ToName').Value:=ClientDataSet3.fieldbyname('ToName').Value; + if Trim(ClientDataSet3.fieldbyname('TPQty').AsString)<>'' then + FieldByName('TPQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value + else + FieldByName('TPQty').Value:=0; + if Trim(ClientDataSet3.fieldbyname('TPPS').AsString)<>'' then + FieldByName('TPPS').Value:=ClientDataSet3.fieldbyname('TPPS').Value + else + FieldByName('TPPS').Value:=0; + if Trim(ClientDataSet3.fieldbyname('JGPrice').AsString)<>'' then + FieldByName('JGPrice').Value:=ClientDataSet3.fieldbyname('JGPrice').Value + else + FieldByName('JGPrice').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty1').AsString)<>'' then + FieldByName('Qty1').Value:=ClientDataSet3.fieldbyname('Qty1').Value + else + FieldByName('Qty1').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty2').AsString)<>'' then + FieldByName('Qty2').Value:=ClientDataSet3.fieldbyname('Qty2').Value + else + FieldByName('Qty2').Value:=0; + if Trim(ClientDataSet3.fieldbyname('Qty3').AsString)<>'' then + FieldByName('Qty3').Value:=ClientDataSet3.fieldbyname('Qty3').Value + else + FieldByName('Qty3').Value:=0; + if Trim(ClientDataSet3.fieldbyname('TPUnit').AsString)='Kg' then + begin + FieldByName('TPMQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value*1.00*1000 + /(Order_Main.fieldbyname('MFQty').Value*1.00/100*Order_Main.fieldbyname('KZQty').Value); + end else + begin + FieldByName('TPMQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value; + end; + if Trim(ClientDataSet3.fieldbyname('TPUnit').AsString)='Kg' then + begin + FieldByName('MQty2').Value:=ClientDataSet3.fieldbyname('Qty2').Value*1.00*1000 + /(Order_Main.fieldbyname('MFQty').Value*1.00/100*Order_Main.fieldbyname('KZQty').Value); + end else + begin + FieldByName('MQty2').Value:=ClientDataSet3.fieldbyname('Qty2').Value; + end; + Post; + end; + with ClientDataSet3 do + begin + Edit; + FieldByName('MXId').Value:=Trim(maxno); + Post; + end; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from Contract_Cloth_LL where DHIdHelp='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + sql.Add(' and firstName='''+Trim(ClientDataSet3.fieldbyname('ToName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd,FFLLID,'HL','Contract_Cloth_LL',2,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡӹʧ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('DHID').Value:=Trim(Order_Main.fieldbyname('DHID').AsString); + FieldByName('OrdSubId').Value:=Trim(Order_Main.fieldbyname('OrdSubId').AsString); + FieldByName('SXMainId').Value:=Trim(Order_Main.fieldbyname('SXMainId').AsString); + FieldByName('SXDHID').Value:=Trim(Order_Main.fieldbyname('SXDHID').AsString); + FieldByName('LLId').Value:=Trim(FFLLID); + FieldByName('DHIdHelp').Value:=Trim(Order_Main.fieldbyname('LLID').AsString); + FieldByName('FirstNo').Value:=Trim(ClientDataSet3.fieldbyname('ToNo').AsString); + FieldByName('FirstName').Value:=Trim(ClientDataSet3.fieldbyname('ToName').AsString); + FieldByName('TPUnit').Value:=Trim(ClientDataSet3.fieldbyname('TPUnit').AsString); + FieldByName('HJGType').Value:=ClientDataSet3.fieldbyname('HJGType').Value; + FieldByName('LLIdx').Value:=Order_Main.fieldbyname('LLIdx').Value+1; + FieldByName('DHID').Value:=Trim(Order_Main.fieldbyname('DHID').AsString); + FieldByName('RCGangNO').Value:=Trim(ClientDataSet3.fieldbyname('RCGangNO').AsString); + FieldByName('BCgangNO').Value:=Trim(ClientDataSet3.fieldbyname('BCgangNO').AsString); + Post; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('Update Contract_Cloth_LL Set JXJGFlag=1 '); + sql.Add(',ToNo='''+Trim(ClientDataSet3.fieldbyname('ToNo').AsString)+''''); + sql.Add(',ToName='''+Trim(ClientDataSet3.fieldbyname('ToName').AsString)+''''); + sql.Add(' where LLID='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update Contract_Cloth_LL Set TPUnit='''+Trim(ClientDataSet3.fieldbyname('TPUnit').AsString)+''''); + sql.Add(',HJGType='''+Trim(ClientDataSet3.fieldbyname('HJGType').AsString)+''''); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + end; + { if Order_Main.FieldByName('APFlag').Value=0 then + begin + if YFData()=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('Ⱦʧ!','ʾ',0); + Exit; + end; + end else + begin + if YFDataDel()=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('Ⱦʧ!','ʾ',0); + Exit; + end; + end;} + if Trim(ClientDataSet3.fieldbyname('HJGType').AsString)='' then + begin + if YFData()=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('Ⱦʧ!','ʾ',0); + Exit; + end; + end; + + Next; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update Contract_Cloth_LL Set TPMQty=(select Sum(TPMQty) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_LL.DHIDHelp'); + SQL.Add(' and A.ToName=Contract_Cloth_LL.FirstName)'); + sql.Add(',TPPS=(select Sum(TPPS) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_LL.DHIDHelp'); + SQL.Add(' and A.ToName=Contract_Cloth_LL.FirstName)'); + sql.Add(',TPQty=(select Sum(TPQty) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_LL.DHIDHelp'); + SQL.Add(' and A.ToName=Contract_Cloth_LL.FirstName)'); + sql.Add(',BCPQty=(select Sum(Qty2) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_LL.DHIDHelp'); + SQL.Add(' and A.ToName=Contract_Cloth_LL.FirstName)'); + sql.Add(',BCPMQty=(select Sum(MQty2) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_LL.DHIDHelp'); + SQL.Add(' and A.ToName=Contract_Cloth_LL.FirstName)'); + sql.Add(' where DHIDHelp='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + if Order_Main.FieldByName('APFlag').Value=0 then + begin + if Trim(ClientDataSet3.fieldbyname('HJGType').AsString)<>'زֺӹ' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Contract_Cloth_LL Set HCPS=(select isnull(Sum(TPPS),0) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.LLID)'); + sql.Add(', HCQty=(select isnull(Sum(TPQty),0) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.LLID)'); + sql.Add(' where LLID='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Contract_Cloth_LL Set HCMQty=HCQty*(TPMQty*1.00/TPQty)'); + sql.Add(' where LLID='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + end; + + end; + + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; +function TfrmClothContractListWJG.YFData():Boolean; +var + CRID,OrdMainId,YFID,Price,FComTaiTou:String; +begin + Result:=False; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('orderNO').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + + Application.MessageBox('δ¼!','ʾ',0); + Exit; + end else + begin + if ADOQueryTemp.RecordCount>1 then + begin + Application.MessageBox('¼ظ!','ʾ',0); + Exit; + end; + end; + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('orderNO').AsString)+''''); + Open; + end; + OrdMainId:=Trim(ADOQueryTemp.fieldbyname('MainId').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select OrdDefStr2 from JYOrder_Main where Mainid='''+Trim(OrdMainId)+''''); + Open; + end; + FComTaiTou:=Trim(ADOQueryTemp.fieldbyname('OrdDefStr2').AsString); + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where YFName=''Ⱦ'''); + sql.Add(' and YFTypeId='''+Trim(ClientDataSet3.fieldbyname('MXID').AsString)+''''); + Open; + end; + YFID:=Trim(ADOQueryTemp.fieldbyname('YFID').AsString); + //if ADOQueryTemp.IsEmpty then + begin + if Trim(YFID)='' then + begin + if GetLSNo(ADOQueryCmd,YFID,'RF','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡȾӦʧ!','ʾ',0); + Exit; + end; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where YFID='''+Trim(YFID)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(YFID)='' then + Append + else + Edit; + FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(ClientDataSet3.fieldbyname('MXID').AsString); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('CRTime').Value:=ClientDataSet3.fieldbyname('TPDate').Value; + if Trim(ClientDataSet3.fieldbyname('TPQty').AsString)<>'' then + FieldByName('Qty').Value:=ClientDataSet3.fieldbyname('TPQty').Value + else + FieldByName('Qty').Value:=0; + if Trim(ClientDataSet3.fieldbyname('TPPS').AsString)<>'' then + FieldByName('PS').Value:=ClientDataSet3.fieldbyname('TPPS').Value + else + FieldByName('PS').Value:=0; + FieldByName('YFType').Value:='Զ'; + if Trim(ClientDataSet3.fieldbyname('JGPrice').AsString)<>'' then + FieldByName('Price').Value:=ClientDataSet3.fieldbyname('JGPrice').Value + else + FieldByName('Price').Value:=0; + FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=''; + FieldByName('ComTaiTou').Value:=''; + FieldByName('QtyUnit').Value:=Trim(Order_Main.fieldbyname('TPUnit').AsString); + FieldByName('YFName').Value:='Ⱦ'; + FieldByName('MainId').Value:=Trim(OrdMainId); + Post; + end; + end; + {with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update YF_Money_CR Set Qty=(select isnull(HCQty,0) from Contract_Cloth_LL A '); + SQL.Add(' where A.LLId=YF_Money_CR.YFTypeId )'); + sql.Add(',PS=(select isnull(HCPS,0) from Contract_Cloth_LL A '); + SQL.Add(' where A.LLId=YF_Money_CR.YFTypeId )'); + sql.Add(' where YFTypeId='''+Trim(Order_Main.fieldbyname('LLid').AsString)+''''); + ExecSQL; + end; } + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty'); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + Result:=True; +end; +function TfrmClothContractListWJG.YFDataDel():Boolean; +var + CRID,OrdMainId,YFID,Price,FComTaiTou:String; +begin + Result:=False; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + sql.Add(' and YFTypeId='''+Trim(ClientDataSet3.fieldbyname('MXID').AsString)+''''); + Open; + end; + YFID:=Trim(ADOQueryTemp.fieldbyname('YFID').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_CR '); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + Result:=True; +end; + +procedure TfrmClothContractListWJG.ToolButton3Click(Sender: TObject); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL where DHIDHelp='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + SQL.Add(' and FirstName='''+Trim(ClientDataSet3.fieldbyname('ToName').AsString)+''''); + sql.Add(' and HCPS>0 '); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('лز!','ʾ',0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + begin + if ClientDataSet3.IsEmpty then Exit; + if Trim(ClientDataSet3.fieldbyname('MXId').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then + begin + ADOQueryCmd.Connection.RollbackTrans; + Exit; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Cloth_LLMx where MXId='''+Trim(ClientDataSet3.fieldbyname('MXId').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update Contract_Cloth_LL Set TPMQty=(select isnull(Sum(TPMQty),0) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_LL.DHIDHelp'); + SQL.Add(' and A.ToName=Contract_Cloth_LL.FirstName)'); + sql.Add(',TPPS=(select isnull(Sum(TPPS),0) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_LL.DHIDHelp'); + SQL.Add(' and A.ToName=Contract_Cloth_LL.FirstName)'); + sql.Add(',TPQty=(select isnull(Sum(TPQty),0) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_LL.DHIDHelp'); + SQL.Add(' and A.ToName=Contract_Cloth_LL.FirstName)'); + sql.Add(',BCPQty=(select isnull(Sum(Qty2),0) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_LL.DHIDHelp'); + SQL.Add(' and A.ToName=Contract_Cloth_LL.FirstName)'); + sql.Add(',BCPMQty=(select isnull(Sum(MQty2),0) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_LL.DHIDHelp'); + SQL.Add(' and A.ToName=Contract_Cloth_LL.FirstName)'); + sql.Add(' where DHIDHelp='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + if Order_Main.FieldByName('APFlag').Value=0 then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Contract_Cloth_LL Set HCPS=(select isnull(Sum(TPPS),0) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.LLID)'); + sql.Add(', HCQty=(select isnull(Sum(TPQty),0) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.LLID)'); + sql.Add(' where LLID='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Contract_Cloth_LL Set HCMQty=HCQty*(TPMQty*1.00/TPQty)'); + sql.Add(' where LLID='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + end; + + + end; + + if YFDataDel()=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('Ⱦʧ!','ʾ',0); + Exit; + end; + ClientDataSet3.Delete; + if ClientDataSet3.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Cloth_LL where DHIDHelp='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + sql.Add('Update Contract_Cloth_LL Set ToNo='''' ,ToName='''' ,JXJGFlag=0 '); + sql.Add(' where LLID='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + + end; +end; + +procedure TfrmClothContractListWJG.v2Column3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='RKPlace'; + flagname:='ص'; + if ShowModal=1 then + begin + with ClientDataSet2 do + begin + Edit; + FieldByName('RKPlace').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothContractListWJG.v3Column2PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,fieldname,qty1,qty2:String; + +begin + If Trim(TcxTextEdit(Sender).EditingText)<>'' then + begin + mvalue:=TcxTextEdit(Sender).EditingText; + end else + begin + mvalue:='0'; + end; + fieldname:=Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName; + with ClientDataSet3 do + begin + Edit; + FieldByName(Trim(fieldname)).Value:=mvalue; + Post; + end; + with ClientDataSet3 do + begin + Edit; + FieldByName('qty2').Value:= FieldByName('TPQty').AsFloat; + // FieldByName('qty3').Value:=(StrToFloat(qty1)-StrToFloat(qty2))*1.00*100/StrToFloat(qty1); + Post; + end; + {with Order_Main do + begin + Edit; + FieldByName('KCQty').Value:=Order_Main.fieldbyname('DHQty').Value-tv3.DataController.Summary.FooterSummaryValues[0]; + Post; + end; } + if Trim(ClientDataSet3.fieldbyname('TPQty').AsString)<>'' then + begin + qty1:=ClientDataSet3.fieldbyname('TPQty').AsString; + end else + begin + qty1:='0'; + end; + if Trim(ClientDataSet3.fieldbyname('Qty2').AsString)<>'' then + begin + Qty2:=ClientDataSet3.fieldbyname('Qty2').AsString; + end else + begin + Qty2:='0'; + end; + if StrToFloat(qty1)*StrToFloat(qty2)=0 then Exit; + with ClientDataSet3 do + begin + Edit; + // FieldByName('qty2').Value:= FieldByName('TPQty').AsFloat; + FieldByName('qty3').Value:=(StrToFloat(qty1)-StrToFloat(qty2))*1.00*100/StrToFloat(qty1); + Post; + end; + +end; + +procedure TfrmClothContractListWJG.Tv1CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if Order_Main.IsEmpty then exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo '); + SQL.Add('from Contract_Cloth_LLMx A inner join JYOrder_Sub B on A.OrdSubId=B.SubId'); + SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId '); + sql.Add('where A.DHId='''+Trim(Order_Main.fieldbyname('LLId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); + +end; + +procedure TfrmClothContractListWJG.v3Column10PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + { try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flagname:='ӹ'; + flag:='Factory'; + if ShowModal=1 then + begin + ClientDataSet3.Edit; + ClientDataSet3.FieldByName('ToName').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + ClientDataSet3.FieldByName('ToNo').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; } + try + frmZdyAttachGYS:=TfrmZdyAttachGYS.Create(Application); + with frmZdyAttachGYS do + begin + if ShowModal=1 then + begin + ClientDataSet3.Edit; + ClientDataSet3.FieldByName('ToName').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + ClientDataSet3.FieldByName('ToNo').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZdyAttachGYS.Free; + end; +end; + +procedure TfrmClothContractListWJG.ConNoKeyPress(Sender: TObject; + var Key: Char); +var + fsj:string; +begin + if Length(ConNo.Text)<3 then Exit; + if Key=#13 then + begin + with ADOQueryMain do + begin + Close; + sql.Clear; + sql.add(' exec P_HJG_View :begdate,:enddate,:PState,:ConNo'); + Parameters.ParamByName('PState').Value:=2; + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.Date); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',EndDate.Date+1); + Parameters.ParamByName('ConNo').Value:='%'+Trim(ConNo.Text)+'%'; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + end; +end; + +procedure TfrmClothContractListWJG.v3Column5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,fieldname,qty1,qty3:String; + +begin + If Trim(TcxTextEdit(Sender).EditingText)<>'' then + begin + mvalue:=TcxTextEdit(Sender).EditingText; + end else + begin + mvalue:='0'; + end; + fieldname:=Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName; + with ClientDataSet3 do + begin + Edit; + FieldByName(Trim(fieldname)).Value:=mvalue; + Post; + end; + {with Order_Main do + begin + Edit; + FieldByName('KCQty').Value:=Order_Main.fieldbyname('DHQty').Value-tv3.DataController.Summary.FooterSummaryValues[0]; + Post; + end; } + if Trim(ClientDataSet3.fieldbyname('TPQty').AsString)<>'' then + begin + qty1:=ClientDataSet3.fieldbyname('TPQty').AsString; + end else + begin + qty1:='0'; + end; + if Trim(ClientDataSet3.fieldbyname('qty3').AsString)<>'' then + begin + qty3:=ClientDataSet3.fieldbyname('qty3').AsString; + end else + begin + qty3:='0'; + end; + //if StrToFloat(qty1)*StrToFloat(qty2)=0 then Exit; + with ClientDataSet3 do + begin + Edit; + FieldByName('qty2').Value:=StrToFloat(qty1)*(1-StrToFloat(qty3)*1.00/100); + Post; + end; + +end; + +end. diff --git a/艾登贸易管理/U_ClothHCList.dfm b/艾登贸易管理/U_ClothHCList.dfm new file mode 100644 index 0000000..612e92d --- /dev/null +++ b/艾登贸易管理/U_ClothHCList.dfm @@ -0,0 +1,598 @@ +object frmClothHCList: TfrmClothHCList + Left = 137 + Top = 27 + Width = 1179 + Height = 705 + Caption = #24067#21305#22238#20179#26597#35810 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1163 + AutoSize = True + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBClose: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1163 + Height = 69 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 22 + Width = 52 + Height = 12 + Caption = #22238#20179#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 231 + Top = 22 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 812 + Top = 22 + Width = 52 + Height = 12 + Caption = #26579#21378#32568#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 812 + Top = 46 + Width = 52 + Height = 12 + Caption = #26412#21378#32568#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 611 + Top = 46 + Width = 54 + Height = 12 + Caption = #39068' '#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 1000 + Top = 18 + Width = 39 + Height = 12 + Caption = #21152#24037#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 231 + Top = 46 + Width = 21 + Height = 12 + Caption = 'PO#' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 427 + Top = 22 + Width = 53 + Height = 12 + Caption = #21512' '#21516' '#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 427 + Top = 46 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 611 + Top = 22 + Width = 52 + Height = 12 + Caption = #22411#21495#35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 1000 + Top = 42 + Width = 40 + Height = 12 + Caption = #27454' '#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 18 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 42 + Width = 85 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNoM: TEdit + Tag = 2 + Left = 271 + Top = 18 + Width = 98 + Height = 20 + TabOrder = 2 + OnChange = OrderNoMChange + OnKeyPress = OrderNoMKeyPress + end + object GangNo: TEdit + Tag = 2 + Left = 865 + Top = 18 + Width = 85 + Height = 20 + TabOrder = 3 + OnChange = OrderNoMChange + end + object AOrddefstr1: TEdit + Tag = 2 + Left = 865 + Top = 42 + Width = 85 + Height = 20 + TabOrder = 4 + OnChange = OrderNoMChange + end + object PRTColor: TEdit + Tag = 2 + Left = 668 + Top = 42 + Width = 85 + Height = 20 + TabOrder = 5 + OnChange = OrderNoMChange + end + object AOrddefstr4: TEdit + Tag = 2 + Left = 1049 + Top = 14 + Width = 83 + Height = 20 + TabOrder = 6 + OnChange = OrderNoMChange + end + object KHconNo: TEdit + Tag = 2 + Left = 271 + Top = 42 + Width = 98 + Height = 20 + TabOrder = 7 + OnChange = OrderNoMChange + OnKeyPress = OrderNoMKeyPress + end + object conNo: TEdit + Tag = 2 + Left = 483 + Top = 18 + Width = 86 + Height = 20 + TabOrder = 8 + OnChange = OrderNoMChange + OnKeyPress = OrderNoMKeyPress + end + object mprtCodeName: TEdit + Tag = 2 + Left = 483 + Top = 42 + Width = 86 + Height = 20 + TabOrder = 9 + OnChange = OrderNoMChange + OnKeyPress = OrderNoMKeyPress + end + object Mprtspec: TEdit + Tag = 2 + Left = 667 + Top = 18 + Width = 85 + Height = 20 + TabOrder = 10 + OnChange = OrderNoMChange + OnKeyPress = OrderNoMKeyPress + end + object prtkuanNo: TEdit + Tag = 2 + Left = 1049 + Top = 38 + Width = 83 + Height = 20 + TabOrder = 11 + OnChange = OrderNoMChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 101 + Width = 1163 + Height = 566 + Align = alClient + TabOrder = 2 + object TV2: TcxGridDBTableView + OnDblClick = TV2DblClick + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + Column = V2Column1 + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = V2Column1 + end + item + Kind = skSum + Column = V2Column7 + end + item + Kind = skSum + Column = V2Column5 + end + item + Kind = skSum + Column = V2Column6 + end + item + Kind = skSum + Column = V2Column11 + end + item + Kind = skSum + Column = V2Column12 + end + item + Kind = skSum + Column = V2Column17 + end + item + Kind = skSum + Column = V2Column18 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object V2Column2: TcxGridDBColumn + Caption = #22238#20179#26102#38388 + DataBinding.FieldName = 'ADefDate1' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 96 + end + object V2APID: TcxGridDBColumn + Caption = #32568#26465#30721 + DataBinding.FieldName = 'APID' + HeaderAlignmentHorz = taCenter + Width = 58 + end + object V2Column8: TcxGridDBColumn + Caption = #21152#24037#21378 + DataBinding.FieldName = 'AOrddefstr4' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 88 + end + object V2Column10: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNoM' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object V2Column9: TcxGridDBColumn + Caption = 'PO#' + DataBinding.FieldName = 'KHCOnNo' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object V2Column14: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'conNo' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object V2Column15: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'MprtCodeName' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object V2Column16: TcxGridDBColumn + Caption = #22411#21495#35268#26684 + DataBinding.FieldName = 'mprtspec' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object V2Column13: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Width = 77 + end + object V2Column19: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'prtkuanNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26579#21378#32568#21495 + DataBinding.FieldName = 'GangNo' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object V2Column3: TcxGridDBColumn + Caption = #26412#21378#32568#21495 + DataBinding.FieldName = 'AOrddefstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 65 + end + object V2Column7: TcxGridDBColumn + Caption = #22238#20179#21305#25968 + DataBinding.FieldName = 'AOrdQty2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + object V2Column1: TcxGridDBColumn + Caption = #22238#20179#25968#37327 + DataBinding.FieldName = 'AOrdQty1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 61 + end + object V2Column4: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'AOrddefstr2' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Width = 62 + end + object V2Column5: TcxGridDBColumn + Caption = #26816#39564#21305#25968 + DataBinding.FieldName = 'JY_PS' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 59 + end + object V2Column6: TcxGridDBColumn + Caption = #26816#39564#25968#37327 + DataBinding.FieldName = 'JY_Qty' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 86 + end + object V2Column11: TcxGridDBColumn + Caption = #20837#24211#21305#25968 + DataBinding.FieldName = 'RK_RollNum' + HeaderAlignmentHorz = taCenter + Width = 62 + end + object V2Column12: TcxGridDBColumn + Caption = #20837#24211#25968#37327 + DataBinding.FieldName = 'RK_Qty' + HeaderAlignmentHorz = taCenter + Width = 92 + end + object V2Column17: TcxGridDBColumn + Caption = #20986#24211#21305#25968 + DataBinding.FieldName = 'CK_RollNum' + HeaderAlignmentHorz = taCenter + Width = 63 + end + object V2Column18: TcxGridDBColumn + Caption = #20986#24211#25968#37327 + DataBinding.FieldName = 'CK_Qty' + HeaderAlignmentHorz = taCenter + Width = 80 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 448 + Top = 168 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 800 + Top = 12 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 944 + Top = 24 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 720 + Top = 216 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 824 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 840 + Top = 192 + end +end diff --git a/艾登贸易管理/U_ClothHCList.pas b/艾登贸易管理/U_ClothHCList.pas new file mode 100644 index 0000000..278c770 --- /dev/null +++ b/艾登贸易管理/U_ClothHCList.pas @@ -0,0 +1,220 @@ +unit U_ClothHCList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, + RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, + cxTextEdit, cxDropDownEdit, cxCheckBox; + +type + TfrmClothHCList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNoM: TEdit; + Label5: TLabel; + GangNo: TEdit; + Order_Main: TClientDataSet; + Label4: TLabel; + AOrddefstr1: TEdit; + Label6: TLabel; + PRTColor: TEdit; + Label7: TLabel; + AOrddefstr4: TEdit; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + V2Column2: TcxGridDBColumn; + V2Column8: TcxGridDBColumn; + cxGridDBColumn1: TcxGridDBColumn; + V2Column3: TcxGridDBColumn; + V2Column4: TcxGridDBColumn; + V2Column7: TcxGridDBColumn; + V2Column1: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + V2Column10: TcxGridDBColumn; + V2Column13: TcxGridDBColumn; + V2APID: TcxGridDBColumn; + V2Column9: TcxGridDBColumn; + V2Column14: TcxGridDBColumn; + KHconNo: TEdit; + Label8: TLabel; + conNo: TEdit; + Label9: TLabel; + V2Column15: TcxGridDBColumn; + V2Column16: TcxGridDBColumn; + mprtCodeName: TEdit; + Label2: TLabel; + Mprtspec: TEdit; + Label10: TLabel; + V2Column5: TcxGridDBColumn; + V2Column6: TcxGridDBColumn; + V2Column11: TcxGridDBColumn; + V2Column12: TcxGridDBColumn; + V2Column17: TcxGridDBColumn; + V2Column18: TcxGridDBColumn; + Label11: TLabel; + prtkuanNo: TEdit; + V2Column19: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure OrderNoMKeyPress(Sender: TObject; var Key: Char); + procedure TV2DblClick(Sender: TObject); + private + FInt,PFInt:Integer; + procedure InitGrid(); + procedure InitForm(); + procedure InitGridWSQL(FWSQL:String); + { Private declarations } + public + fType:string; + { Public declarations } + end; + +var + frmClothHCList: TfrmClothHCList; + +implementation +uses + U_DataLink,U_ClothContractInPut,U_Fun,U_ProductOrderList,U_ZDYHelp,U_ProductOrderNewList_JD; + +{$R *.dfm} + +procedure TfrmClothHCList.FormDestroy(Sender: TObject); +begin + frmClothHCList:=nil; +end; + +procedure TfrmClothHCList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmClothHCList.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid(self.Caption+tv2.Name,Tv2,'ָʾ'); +end; + +procedure TfrmClothHCList.InitGrid(); +begin + try + //ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec P_View_HC :begdate,:enddate,:WSQL'); + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.Date); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',EndDate.Date+1); + Parameters.ParamByName('WSQL').Value:=''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + //ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmClothHCList.InitGridWSQL(FWSQL:String); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec P_View_HC :begdate,:enddate,:WSQL'); + Parameters.ParamByName('begdate').Value:='1900-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + Parameters.ParamByName('WSQL').Value:=FWSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmClothHCList.InitForm(); +begin + ReadCxGrid(self.Caption+tv2.Name,Tv2,'ָʾ'); + EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + BegDate.DateTime:=EndDate.DateTime-7; + //InitGrid(); +end; + +procedure TfrmClothHCList.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + + + +procedure TfrmClothHCList.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmClothHCList.OrderNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothHCList.FormShow(Sender: TObject); +begin + InitForm(); + TBRafresh.Click; +end; + +procedure TfrmClothHCList.OrderNoMKeyPress(Sender: TObject; + var Key: Char); +var + fsj:String; +begin + if Key=#13 then + begin + if Length(Trim(OrderNoM.Text))<4 then Exit; + fsj:=' and B.OrderNo like '''+'%'+Trim(OrderNoM.Text)+'%'+''''; + InitGridWSQL(fsj); + end; +end; + +procedure TfrmClothHCList.TV2DblClick(Sender: TObject); +begin + if fType='10' then frmClothHCList.ModalResult:=1; +end; + +end. diff --git a/艾登贸易管理/U_ClothPDInfoList.dfm b/艾登贸易管理/U_ClothPDInfoList.dfm new file mode 100644 index 0000000..4b123f1 --- /dev/null +++ b/艾登贸易管理/U_ClothPDInfoList.dfm @@ -0,0 +1,363 @@ +object frmClothPDInfoList: TfrmClothPDInfoList + Left = 123 + Top = 23 + Width = 1162 + Height = 705 + Caption = #24453#26816#20179#24211#24211#23384 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1154 + AutoSize = True + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBExport: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBClose: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1154 + Height = 54 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 33 + Top = 22 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 194 + Top = 22 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 362 + Top = 22 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object OrderNo: TEdit + Tag = 2 + Left = 87 + Top = 18 + Width = 81 + Height = 20 + TabOrder = 0 + OnChange = OrderNoChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 247 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 1 + OnChange = OrderNoChange + end + object C_Spec: TEdit + Tag = 2 + Left = 416 + Top = 18 + Width = 113 + Height = 20 + TabOrder = 2 + OnChange = OrderNoChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 86 + Width = 1154 + Height = 585 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column11 + end + item + Kind = skSum + Column = v1Column4 + end + item + Kind = skSum + Column = v1Column5 + end + item + Kind = skSum + Column = v1Column7 + end + item + Kind = skSum + Column = v1Column10 + end + item + Kind = skSum + Column = v1JY_PS + end + item + Kind = skSum + Column = v1JY_Qty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1Column2: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 85 + end + object v1Column1: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'MPRTCode' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'MPRTSpec' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 69 + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 61 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 83 + end + object v1Column8: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v1Column9: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v1Column11: TcxGridDBColumn + Caption = #22238#20179#21305#25968 + DataBinding.FieldName = 'HCPS' + HeaderAlignmentHorz = taCenter + Width = 62 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #22238#20179#25968#37327 + DataBinding.FieldName = 'HCQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 58 + end + object v1Column4: TcxGridDBColumn + Caption = #22238#20462#21305#25968 + DataBinding.FieldName = 'HXPS' + Width = 62 + end + object v1Column5: TcxGridDBColumn + Caption = #22238#20462#25968#37327 + DataBinding.FieldName = 'HXQty' + Width = 58 + end + object v1Column7: TcxGridDBColumn + Caption = #24211#23384#21305#25968 + DataBinding.FieldName = 'KCPS' + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v1Column10: TcxGridDBColumn + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'KCQty' + HeaderAlignmentHorz = taCenter + Width = 64 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'AOrddefstr2' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 59 + end + object v1JY_PS: TcxGridDBColumn + Caption = #26816#39564#21305#25968 + DataBinding.FieldName = 'JY_PS' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 65 + end + object v1JY_Qty: TcxGridDBColumn + Caption = #26816#39564#25968#37327 + DataBinding.FieldName = 'JY_Qty' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 65 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 656 + Top = 288 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 936 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1000 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1040 + Top = 8 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 688 + Top = 288 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 624 + Top = 288 + end +end diff --git a/艾登贸易管理/U_ClothPDInfoList.pas b/艾登贸易管理/U_ClothPDInfoList.pas new file mode 100644 index 0000000..24f17ec --- /dev/null +++ b/艾登贸易管理/U_ClothPDInfoList.pas @@ -0,0 +1,169 @@ +unit U_ClothPDInfoList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, + RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, + cxTextEdit; + +type + TfrmClothPDInfoList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNo: TEdit; + Label5: TLabel; + MPRTCodeName: TEdit; + TBExport: TToolButton; + Order_Main: TClientDataSet; + Label4: TLabel; + C_Spec: TEdit; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1JY_PS: TcxGridDBColumn; + v1JY_Qty: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + private + FInt,PFInt:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + { Private declarations } + public + { Public declarations } + end; + +var + frmClothPDInfoList: TfrmClothPDInfoList; + +implementation +uses + U_DataLink,U_ClothContractInPut,U_Fun,U_ProductOrderList,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmClothPDInfoList.FormDestroy(Sender: TObject); +begin + frmClothPDInfoList:=nil; +end; + +procedure TfrmClothPDInfoList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmClothPDInfoList.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('첼1',Tv1,'ָʾ'); +end; + +procedure TfrmClothPDInfoList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + filtered:=False; + Close; + sql.Clear; + sql.Add('exec p_view_DJBKC '); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmClothPDInfoList.InitForm(); +begin + ReadCxGrid('첼1',Tv1,'ָʾ'); + InitGrid(); +end; + +procedure TfrmClothPDInfoList.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmClothPDInfoList.DelData():Boolean; +begin + +end; + +procedure TfrmClothPDInfoList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel('첼',cxGrid1); +end; + +procedure TfrmClothPDInfoList.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmClothPDInfoList.OrderNoChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothPDInfoList.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmClothPDInfoList.Tv2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=2; +end; + +end. diff --git a/艾登贸易管理/U_ClothSCListZDSel.dfm b/艾登贸易管理/U_ClothSCListZDSel.dfm new file mode 100644 index 0000000..43f21b5 --- /dev/null +++ b/艾登贸易管理/U_ClothSCListZDSel.dfm @@ -0,0 +1,804 @@ +object frmClothSCListZDSel: TfrmClothSCListZDSel + Left = 48 + Top = 50 + Width = 1280 + Height = 705 + Caption = #22383#24067#36716#21333 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1272 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 119 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManagePB.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 41 + OnClick = ToolButton1Click + end + object TBAdd: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = TBEditClick + end + object TBDel: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + OnClick = TBDelClick + end + object TBExport: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + Visible = False + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 441 + Top = 0 + AutoSize = True + Caption = #29983#20135#35745#21010#21333#25171#21360 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 564 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1272 + Height = 73 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 22 + Width = 52 + Height = 12 + Caption = #30331#35760#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 179 + Top = 22 + Width = 52 + Height = 12 + Caption = #29983#20135#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 326 + Top = 22 + Width = 26 + Height = 12 + Caption = #21697#21517 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 452 + Top = 22 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 745 + Top = 21 + Width = 26 + Height = 12 + Caption = #21305#25968 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label7: TLabel + Left = 819 + Top = 21 + Width = 26 + Height = 12 + Caption = #21592#24037 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label8: TLabel + Left = 919 + Top = 21 + Width = 26 + Height = 12 + Caption = #36710#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label9: TLabel + Left = 1005 + Top = 21 + Width = 26 + Height = 12 + Caption = #36716#25968 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label2: TLabel + Left = 179 + Top = 46 + Width = 47 + Height = 12 + Caption = #26465' '#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 18 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 75 + Top = 42 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object ConNoM: TEdit + Tag = 2 + Left = 233 + Top = 18 + Width = 81 + Height = 20 + TabOrder = 2 + OnChange = ConNoMChange + OnKeyPress = conPress + end + object C_CodeNameM: TEdit + Tag = 2 + Left = 354 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = ConNoMChange + end + object C_Color: TEdit + Tag = 2 + Left = 480 + Top = 18 + Width = 56 + Height = 20 + TabOrder = 4 + OnChange = ConNoMChange + end + object Button1: TButton + Left = 1162 + Top = 16 + Width = 43 + Height = 21 + Caption = #20316#24223 + TabOrder = 5 + Visible = False + OnClick = Button1Click + end + object Button2: TButton + Left = 1103 + Top = 16 + Width = 44 + Height = 21 + Caption = #20445#23384 + TabOrder = 6 + Visible = False + OnClick = Button2Click + end + object PS: TEdit + Left = 773 + Top = 17 + Width = 35 + Height = 20 + TabOrder = 7 + Visible = False + end + object SCPerson: TBtnEditA + Left = 846 + Top = 17 + Width = 65 + Height = 20 + Hint = 'SCPerson/'#25377#36710#24037 + ReadOnly = True + TabOrder = 8 + Visible = False + OnBtnClick = SCPersonBtnClick + end + object CarNo: TBtnEditA + Left = 946 + Top = 17 + Width = 48 + Height = 20 + Hint = 'CarNo/'#36710#21495 + ReadOnly = True + TabOrder = 9 + Visible = False + OnBtnClick = SCPersonBtnClick + end + object ZhuanQty: TEdit + Left = 1033 + Top = 17 + Width = 51 + Height = 20 + TabOrder = 10 + Visible = False + end + object MainIdTM: TEdit + Tag = 2 + Left = 233 + Top = 42 + Width = 81 + Height = 20 + TabOrder = 11 + OnKeyPress = MainIdTMKeyPress + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 105 + Width = 690 + Height = 563 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column6 + end + item + Kind = skSum + Column = v1Column10 + end + item + Kind = skSum + Column = v1Column11 + end + item + Kind = skSum + Column = v1Column12 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManagePB.SHuangSe + Styles.IncSearch = DataLink_TradeManagePB.SHuangSe + Styles.Selection = DataLink_TradeManagePB.SHuangSe + object v1OrderNo: TcxGridDBColumn + Caption = #29983#20135#21333#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 65 + end + object v1Column2: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'C_CodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 63 + end + object v1Column3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'C_Color' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 56 + end + object v1Column8: TcxGridDBColumn + Caption = #33410#25968 + DataBinding.FieldName = 'ConDefStr1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 68 + end + object v1Column9: TcxGridDBColumn + Caption = #36710#22411 + DataBinding.FieldName = 'ConDefStr2' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 53 + end + object v1Column1: TcxGridDBColumn + Caption = #36716#25968 + DataBinding.FieldName = 'ZhuanStr' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 53 + end + object v1Column5: TcxGridDBColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'QDTime' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 63 + end + object v1Qty1: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'Qty1' + Visible = False + HeaderAlignmentHorz = taCenter + Hidden = True + Styles.Header = DataLink_TradeManagePB.Default + Width = 46 + end + object v1Column6: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'Qty1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 46 + end + object v1Column10: TcxGridDBColumn + Caption = #24050#23433#25490#21305#25968 + DataBinding.FieldName = 'APPS' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 78 + end + object v1Column11: TcxGridDBColumn + Caption = #20837#24211#21305#25968 + DataBinding.FieldName = 'RKPS' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 63 + end + object v1Column12: TcxGridDBColumn + Caption = #20986#24211#21305#25968 + DataBinding.FieldName = 'CKPS' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 60 + end + object v1Column7: TcxGridDBColumn + Caption = #27599#21305#37325#37327'(KG)' + DataBinding.FieldName = 'Qty2' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 83 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #24635#37325#37327'(KG)' + DataBinding.FieldName = 'C_Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 73 + end + object v1Column4: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'C_Note' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 61 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxSplitter1: TcxSplitter + Left = 690 + Top = 105 + Width = 8 + Height = 563 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salRight + Control = Panel2 + Visible = False + end + object Panel2: TPanel + Left = 698 + Top = 105 + Width = 574 + Height = 563 + Align = alRight + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 4 + Visible = False + object cxGrid2: TcxGrid + Left = 2 + Top = 2 + Width = 570 + Height = 559 + Align = alClient + TabOrder = 0 + Visible = False + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DSAnPai + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skCount + Column = cxGridDBColumn2 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManagePB.SHuangSe + Styles.IncSearch = DataLink_TradeManagePB.SHuangSe + Styles.Selection = DataLink_TradeManagePB.SHuangSe + object v2Column2: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManagePB.Default + Width = 42 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #21592#24037 + DataBinding.FieldName = 'SCPerson' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 51 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #26465#30721 + DataBinding.FieldName = 'APID' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 92 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #36710#21495 + DataBinding.FieldName = 'CarNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 43 + end + object v2Column3: TcxGridDBColumn + Caption = #36716#25968 + DataBinding.FieldName = 'ZhuanQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 46 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #23433#25490#26085#26399 + DataBinding.FieldName = 'APDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 77 + end + object v2Column1: TcxGridDBColumn + Caption = #24050#26816#39564 + DataBinding.FieldName = 'JYFlag' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 46 + end + object v2Column4: TcxGridDBColumn + Caption = #25171#21360#27425#25968 + DataBinding.FieldName = 'PRTCount' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManagePB.Default + Width = 58 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 536 + Top = 272 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManagePB.ADOLink + Parameters = <> + Left = 448 + Top = 168 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManagePB.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 424 + Top = 168 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManagePB.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 488 + Top = 168 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 368 + Top = 160 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 392 + Top = 160 + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = 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 = 352 + Top = 192 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_PRT + Left = 288 + Top = 160 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 336 + Top = 160 + end + object CDS_PRT: TClientDataSet + Aggregates = <> + Params = <> + Left = 312 + Top = 160 + end + object RM2: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDBPRT + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 624 + Top = 264 + ReportData = {} + end + object RMDBPRT: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 528 + Top = 168 + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManagePB.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 592 + Top = 176 + end + object DSAnPai: TDataSource + DataSet = CDS_AnPai + Left = 872 + Top = 264 + end + object CDS_AnPai: TClientDataSet + Aggregates = <> + Params = <> + Left = 912 + Top = 264 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 792 + Top = 224 + end +end diff --git a/艾登贸易管理/U_ClothSCListZDSel.pas b/艾登贸易管理/U_ClothSCListZDSel.pas new file mode 100644 index 0000000..74a9d11 --- /dev/null +++ b/艾登贸易管理/U_ClothSCListZDSel.pas @@ -0,0 +1,880 @@ +unit U_ClothSCListZDSel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, + RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, + cxTextEdit, cxCheckBox, BtnEdit; + +type + TfrmClothSCListZDSel = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + ConNoM: TEdit; + Label5: TLabel; + C_CodeNameM: TEdit; + TBExport: TToolButton; + Order_Main: TClientDataSet; + Label4: TLabel; + C_Color: TEdit; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + CDS_PRT: TClientDataSet; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Qty1: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + RM2: TRMGridReport; + RMDBPRT: TRMDBDataSet; + ADOQueryPrint: TADOQuery; + cxSplitter1: TcxSplitter; + DSAnPai: TDataSource; + CDS_AnPai: TClientDataSet; + cxGridPopupMenu2: TcxGridPopupMenu; + Panel2: TPanel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Button1: TButton; + Button2: TButton; + v2Column2: TcxGridDBColumn; + PS: TEdit; + Label6: TLabel; + Label7: TLabel; + Label8: TLabel; + SCPerson: TBtnEditA; + CarNo: TBtnEditA; + ZhuanQty: TEdit; + Label9: TLabel; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + Label2: TLabel; + MainIdTM: TEdit; + v1Column1: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + ToolButton1: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); + procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv3MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure conPress(Sender: TObject; var Key: Char); + procedure SCPersonBtnClick(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure MainIdTMKeyPress(Sender: TObject; var Key: Char); + procedure ToolButton1Click(Sender: TObject); + private + FInt,PFInt:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + function SaveData():Boolean; + { Private declarations } + public + { Public declarations } + end; + +var + frmClothSCListZDSel: TfrmClothSCListZDSel; + +implementation +uses + U_DataLink,U_ClothSCInPut,U_Fun,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmClothSCListZDSel.FormDestroy(Sender: TObject); +begin + frmClothSCListZDSel:=nil; +end; + +procedure TfrmClothSCListZDSel.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmClothSCListZDSel.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ƻ',Tv1,'ָʾ'); + WriteCxGrid('ƻAP',Tv2,'ָʾ'); +end; + +procedure TfrmClothSCListZDSel.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContract_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+'''' + +' and ConType='''' '; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmClothSCListZDSel.InitForm(); +begin + ReadCxGrid('ƻ',Tv1,'ָʾ'); + ReadCxGrid('ƻAP',Tv2,'ָʾ'); + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); + {if Trim(DParameters1)='Ȩ' then + begin + TBPrintAgn.Visible:=True; + end;} +end; + +procedure TfrmClothSCListZDSel.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothSCListZDSel.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmClothSCInPut:=TfrmClothSCInPut.Create(Application); + with frmClothSCInPut do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + FConNo:=Trim(Self.Order_Main.fieldbyname('ConNoM').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmClothSCInPut.Free; + end; +end; + +procedure TfrmClothSCListZDSel.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Sub_MX where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('ѵɾ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData() then + begin + //TBRafresh.Click; + //TBFind.Click; + Order_Main.Delete; + end; +end; + +function TfrmClothSCListZDSel.DelData():Boolean; +begin +end; + +procedure TfrmClothSCListZDSel.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel('ͬб',cxGrid1); +end; + +procedure TfrmClothSCListZDSel.TBPrintClick(Sender: TObject); +var + fPrintFile,FConNoM:string; + +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\.rmf' ; + with ADOQueryTemp do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContract_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Parameters.ParamByName('MainId').Value:=Trim(Order_Main.fieldbyname('MainId').AsString); + Parameters.ParamByName('WSql').Value:=''; + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_PRT); + SInitCDSData20(ADOQueryTemp,CDS_PRT); + FConNoM:=Trim(CDS_PRT.fieldbyname('ConNoM').AsString); + //SDofilter(ADOQueryMain,' ConNoM='''+Trim(Order_Main.fieldbyname('ConNoM').AsString)+''''); + //SCreateCDS20(ADOQueryMain,Order_Main); + //SInitCDSData20(ADOQueryMain,Order_Main); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\.rmf'),'ʾ',0); + end; + //SDofilter(ADOQueryMain,''); + //SCreateCDS20(ADOQueryMain,Order_Main); + //SInitCDSData20(ADOQueryMain,Order_Main); + //Order_Main.Locate('ConNoM',FConNoM,[]); + //SelPrintData(TV4,ADOQueryMain,'ͬѯ'); +end; + +procedure TfrmClothSCListZDSel.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmClothSCListZDSel.TBAddClick(Sender: TObject); +begin + try + frmClothSCInPut:=TfrmClothSCInPut.Create(Application); + with frmClothSCInPut do + begin + PState:=0; + FMainId:=''; + if ShowModal=1 then + begin + + end; + end; + finally + frmClothSCInPut.Free; + end; +end; + +procedure TfrmClothSCListZDSel.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmClothSCListZDSel.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmClothSCListZDSel.Tv1FocusedRecordChanged( + Sender: TcxCustomGridTableView; APrevFocusedRecord, + AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*'); + sql.Add('from JYCon_Sub_AnPai A'); + sql.Add(' where A.SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_AnPai); + SInitCDSData20(ADOQueryTemp,CDS_AnPai); +end; + +procedure TfrmClothSCListZDSel.Tv2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=2; +end; + +procedure TfrmClothSCListZDSel.Tv3MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=3; +end; + +procedure TfrmClothSCListZDSel.Tv2CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + {with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo ,'); + sql.Add('C_Unit=(select Top 1 C_Unit from Contract_Sub AA,Contract_Sub_Mx BB where AA.SubId=BB.SubId and BB.MXid=A.Mxid)'); + SQL.Add(' from Contract_Sub_MxTo A inner join JYOrder_Sub B on A.OrdSubId=B.SubId '); + SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId '); + sql.Add('where A.MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); } +end; + +procedure TfrmClothSCListZDSel.conPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(ConNoM.Text))<4 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContract_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and OM.conNo like '''+'%'+Trim(ConNoM.Text)+'%'+'''' + +' and ConType='''' '; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmClothSCListZDSel.SCPersonBtnClick(Sender: TObject); +var + fsj:string; + FWZ:Integer; +begin + fsj:=Trim(TEdit(Sender).Hint); + FWZ:=Pos('/',fsj); + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Copy(fsj,1,FWZ-1); + flagname:=Copy(fsj,FWZ+1,Length(fsj)-fwz); + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmClothSCListZDSel.Button2Click(Sender: TObject); +var + FFDS:Integer; +begin + if Trim(PS.Text)='' then + begin + Application.MessageBox('ƥΪ!','ʾ',0); + Exit; + end; + if TryStrToInt(Trim(PS.Text),FFDS)=False then + begin + Application.MessageBox('ƥǷ','ʾ',0); + Exit; + end; + if Trim(SCPerson.Text)='' then + begin + Application.MessageBox('ԱΪ!','ʾ',0); + Exit; + end; + if Trim(CarNo.Text)='' then + begin + Application.MessageBox('ŲΪ!','ʾ',0); + Exit; + end; + if Trim(ZhuanQty.Text)='' then + begin + Application.MessageBox('תΪ!','ʾ',0); + Exit; + end; + if TryStrToInt(Trim(ZhuanQty.Text),FFDS)=False then + begin + Application.MessageBox('תǷ','ʾ',0); + Exit; + end; + { with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(Count(*),0) APPS from JYCon_Sub_AnPai where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + if (ADOQueryTemp.FieldByName('APPS').AsInteger+strtoint(PS.Text))>Order_Main.fieldbyname('Qty1').AsInteger then + begin + Application.MessageBox('ƥ࣬!','ʾ',0); + Exit; + end; } + if Application.MessageBox('ȷҪ','ʾ',32+4)<>IDYES then Exit; + SaveData(); +end; +function TfrmClothSCListZDSel.SaveData():Boolean; +var + maxno,fPrintFile,TaiQty,TaiQtyMax,TaiQtyMin:String; + i:Integer; + FDate:string; +begin + FDate:=FormatDateTime('yyyy-MM-dd',SGetServerDate(ADOQueryTemp)); + try + ADOQueryCmd.Connection.BeginTrans; + /// + + for i:=1 to StrToInt(PS.Text) do + begin + if GetLSNo(ADOQueryCmd,maxno,'','JYCon_Sub_AnPai',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ˮ쳣','ʾ',0); + exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from JYCon_Sub_AnPai where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(Order_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + FieldByName('APId').Value:=Trim(maxno); + FieldByName('SCPerson').Value:=Trim(SCPerson.Text); + FieldByName('CarNo').Value:=Trim(CarNo.Text); + FieldByName('ZhuanQty').Value:=Trim(ZhuanQty.Text); + FieldByName('PRTCount').Value:=1; + FieldByName('APDate').Value:=FDate; + FieldByName('Filler').Value:=Trim(DName); + Post; + end; + //¼ӹ + with ADOQueryCmd do + begin + Close; + SQL.Clear; + SQL.Add(' select Count(*) TaiQty from '); + sql.Add('(select distinct(CarNo) CarNo from [JYCon_Sub_AnPai] where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add(' and SCPerson='''+Trim(SCPerson.Text)+''''); + SQL.Add(' and APDate='''+Trim(FDate)+''') AA'); + //ShowMessage(sql.Text); + Open; + end; + TaiQty:=Trim(ADOQueryCmd.fieldbyname('TaiQty').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add(' select isnull(Max(DEFFlt1),0) TaiQtyMax,isnull(Min(DEFFlt1),0) TaiQtyMin '); + sql.Add(' from [KH_Zdy_Attachment] where ZdyName='''+Trim(Order_Main.fieldbyname('C_CodeName').AsString)+''''); + Open; + end; + if ADOQueryTemp.FieldByName('TaiQtyMax').AsInteger=0 then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ӹδ!','ʾ',0); + Exit; + end else + begin + TaiQtyMax:=ADOQueryTemp.fieldbyname('TaiQtyMax').AsString; + TaiQtyMin:=ADOQueryTemp.fieldbyname('TaiQtyMin').AsString; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1 * from [KH_Zdy_Attachment] where ZdyName='''+Trim(Order_Main.fieldbyname('C_CodeName').AsString)+''''); + sql.Add(' and DEFFlt1='+TaiQty); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYCon_Sub_AnPai Set JGPrice='+ADOQueryTemp.fieldbyname('DEFFlt3').AsString); + sql.Add(' where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add(' and SCPerson='''+Trim(SCPerson.Text)+''''); + SQL.Add(' and APDate='''+Trim(FDate)+''''); + ExecSQL; + end; + end else + begin + if StrToInt(TaiQty)'+TaiQty); + sql.Add(' )where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add(' and SCPerson='''+Trim(SCPerson.Text)+''''); + SQL.Add(' and APDate='''+Trim(FDate)+''''); + ExecSQL; + end; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYCon_Sub_AnPai Set JGPrice='); + sql.Add('(select Top 1 DEFFlt3 from KH_Zdy_Attachment where ZdyName='''+Trim(Order_Main.fieldbyname('C_CodeName').AsString)+''''); + sql.Add(' and DEFFlt1='+TaiQtyMax); + sql.Add(' )where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add(' and SCPerson='''+Trim(SCPerson.Text)+''''); + SQL.Add(' and APDate='''+Trim(FDate)+''''); + ExecSQL; + end; + end; + end; + //¼ӹ + with CDS_AnPai do + begin + Append; + FieldByName('MainId').Value:=Trim(Order_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + FieldByName('APId').Value:=Trim(maxno); + FieldByName('SCPerson').Value:=Trim(SCPerson.Text); + FieldByName('CarNo').Value:=Trim(CarNo.Text); + FieldByName('ZhuanQty').Value:=Trim(ZhuanQty.Text); + FieldByName('APDate').Value:=FDate; + FieldByName('PRTCount').Value:=1; + Post; + end; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾǩ.rmf'; + if FileExists(fPrintFile) then + begin + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select B.ConNo ,A.C_CodeName,A.C_Color,A.ConDefStr1,A.ConDefStr2,A.ConDefStr3,A.ConDefStr4, '); + sql.Add(' AA.APID,AA.ZhuanQty,AA.SCPerson,AA.CarNo,A.ConDefStr5,A.KZQty '); + sql.Add(' from JYCon_Sub_AnPai AA'); + sql.Add(' inner join Contract_Sub A on AA.SubId=A.SubId '); + sql.Add(' inner join Contract_Main B on A.MainId=B.MainId '); + sql.Add(' where AA.APId='''+Trim(CDS_AnPai.fieldbyname('APID').AsString)+''''); + Open; + end; + {CDS_AnPai.Edit; + CDS_AnPai.FieldByName('PRTFlag').Value:=1; + CDS_AnPai.FieldByName('PRTCount').Value:=2; + CDS_AnPai.Post;} + { with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYCon_Sub_AnPai Set PRTFlag=1,PRTCount=2 '); + sql.Add(' where APId='''+Trim(CDS_AnPai.fieldbyname('APID').AsString)+''''); + ExecSQL; + end; } + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + {RM2.LoadFromFile(fPrintFile); + RM2.ShowReport; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select B.ConNo ,A.C_CodeName,A.C_Color,A.ConDefStr1,A.ConDefStr2,A.ConDefStr3,A.ConDefStr4, '); + sql.Add(' AA.APID,AA.ZhuanQty,AA.SCPerson,AA.CarNo '); + sql.Add(' from JYCon_Sub_AnPai AA'); + sql.Add(' inner join Contract_Sub A on AA.SubId=A.SubId '); + sql.Add(' inner join Contract_Main B on A.MainId=B.MainId '); + sql.Add(' where AA.APId='''+Trim(maxno)+''''); + Open; + end; } + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM2.LoadFromFile(fPrintFile); + //RM2.ShowReport; + RM2.PrintReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾǩ.rmf'),'ʾ',0); + Exit; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TfrmClothSCListZDSel.Button1Click(Sender: TObject); +var + TaiQtyMax,TaiQtyMin,TaiQty:string; +begin + if CDS_AnPai.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + if CDS_AnPai.Locate('SSel;JYFlag',VarArrayOf([True,True]),[]) then + begin + Application.MessageBox('Ѽ鲻!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪ','ʾ',32+4)<>IDYES then Exit; + try + ADOQueryCmd.Connection.BeginTrans; + CDS_AnPai.DisableControls; + with CDS_AnPai do + begin + while CDS_AnPai.FieldByName('SSel').AsBoolean=True do + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYCon_Sub_AnPai '); + sql.Add(' where APId='''+Trim(CDS_AnPai.fieldbyname('APID').AsString)+''''); + ExecSQL; + end; + //¼ӹ + with ADOQueryCmd do + begin + Close; + SQL.Clear; + SQL.Add(' select Count(*) TaiQty from '); + sql.Add('(select distinct(CarNo) CarNo from [JYCon_Sub_AnPai] where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add(' and SCPerson='''+Trim(CDS_AnPai.fieldbyname('SCPerson').AsString)+''''); + SQL.Add(' and APDate='''+Trim(CDS_AnPai.fieldbyname('APDate').AsString)+''') AA'); + //ShowMessage(sql.Text); + Open; + end; + TaiQty:=Trim(ADOQueryCmd.fieldbyname('TaiQty').AsString); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add(' select isnull(Max(DEFFlt1),0) TaiQtyMax,isnull(Min(DEFFlt1),0) TaiQtyMin '); + sql.Add(' from [KH_Zdy_Attachment] where ZdyName='''+Trim(Order_Main.fieldbyname('C_CodeName').AsString)+''''); + Open; + end; + if ADOQueryTemp.FieldByName('TaiQtyMax').AsInteger=0 then + begin + ADOQueryCmd.Connection.RollbackTrans; + CDS_AnPai.EnableControls; + Application.MessageBox('ӹδ!','ʾ',0); + Exit; + end else + begin + TaiQtyMax:=ADOQueryTemp.fieldbyname('TaiQtyMax').AsString; + TaiQtyMin:=ADOQueryTemp.fieldbyname('TaiQtyMin').AsString; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1 * from [KH_Zdy_Attachment] where ZdyName='''+Trim(Order_Main.fieldbyname('C_CodeName').AsString)+''''); + sql.Add(' and DEFFlt1='+TaiQty); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYCon_Sub_AnPai Set JGPrice='+ADOQueryTemp.fieldbyname('DEFFlt3').AsString); + sql.Add(' where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add(' and SCPerson='''+Trim(CDS_AnPai.fieldbyname('SCPerson').AsString)+''''); + SQL.Add(' and APDate='''+Trim(CDS_AnPai.fieldbyname('APDate').AsString)+''''); + ExecSQL; + end; + end else + begin + if StrToInt(TaiQty)'+TaiQty); + sql.Add(' )where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add(' and SCPerson='''+Trim(CDS_AnPai.fieldbyname('SCPerson').AsString)+''''); + SQL.Add(' and APDate='''+Trim(CDS_AnPai.fieldbyname('APDate').AsString)+''''); + ExecSQL; + end; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYCon_Sub_AnPai Set JGPrice='); + sql.Add('(select Top 1 DEFFlt3 from KH_Zdy_Attachment where ZdyName='''+Trim(Order_Main.fieldbyname('C_CodeName').AsString)+''''); + sql.Add(' and DEFFlt1='+TaiQtyMax); + sql.Add(' )where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add(' and SCPerson='''+Trim(CDS_AnPai.fieldbyname('SCPerson').AsString)+''''); + SQL.Add(' and APDate='''+Trim(CDS_AnPai.fieldbyname('APDate').AsString)+''''); + ExecSQL; + end; + end; + end; + //¼ӹ + CDS_AnPai.Delete; + end; + end; + CDS_AnPai.EnableControls; + + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + CDS_AnPai.EnableControls; + Application.MessageBox('ʧ!','ʾ',0); + Exit; + end; +end; + +procedure TfrmClothSCListZDSel.MainIdTMKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContract_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and substring(OM.MainId,3,10)='''+Trim(MainIdTM.Text)+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + MainIdTM.Text:=''; + end; +end; + +procedure TfrmClothSCListZDSel.ToolButton1Click(Sender: TObject); +begin + ModalResult:=1; +end; + +end. diff --git a/艾登贸易管理/U_ConInPut.dfm b/艾登贸易管理/U_ConInPut.dfm new file mode 100644 index 0000000..fb9e43b --- /dev/null +++ b/艾登贸易管理/U_ConInPut.dfm @@ -0,0 +1,1466 @@ +object frmConInPut: TfrmConInPut + Left = 351 + Top = 195 + Width = 1382 + Height = 754 + Caption = #22806#38144#21512#21516#24405#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + WindowState = wsMaximized + OnCreate = FormCreate + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1366 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 29 + Width = 1366 + Height = 348 + Align = alTop + BevelInner = bvSpace + BevelOuter = bvSpace + Color = clBtnFace + Ctl3D = True + ParentColor = False + ParentCtl3D = False + TabOrder = 1 + object Label3: TLabel + Left = 674 + Top = 12 + Width = 65 + Height = 12 + Caption = #21046#21333#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 674 + Top = 36 + Width = 65 + Height = 12 + Caption = #20132#36135#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 247 + Top = 36 + Width = 65 + Height = 12 + Caption = #35013#33337#21475#23736#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 463 + Top = 12 + Width = 66 + Height = 12 + Caption = #19994' '#21153' '#21592#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 31 + Top = 12 + Width = 66 + Height = 12 + Caption = #21512' '#21516' '#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 31 + Top = 64 + Width = 65 + Height = 12 + Caption = #20132#26399#35828#26126#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label14: TLabel + Left = 247 + Top = 12 + Width = 67 + Height = 12 + Caption = #23458' '#25143#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label20: TLabel + Left = 31 + Top = 182 + Width = 65 + Height = 12 + Caption = #20844#21496#21488#22836#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 674 + Top = 65 + Width = 65 + Height = 12 + Caption = #20215#26684#26415#35821#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 463 + Top = 142 + Width = 66 + Height = 12 + Caption = #28322' '#30701' '#35013#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label15: TLabel + Left = 463 + Top = 66 + Width = 65 + Height = 12 + Caption = #20184#27454#26041#24335#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label1: TLabel + Left = 463 + Top = 36 + Width = 66 + Height = 12 + Caption = #30446' '#30340' '#22320#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label16: TLabel + Left = 247 + Top = 66 + Width = 65 + Height = 12 + Caption = #36816#36755#26041#24335#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label17: TLabel + Left = 247 + Top = 182 + Width = 65 + Height = 12 + Caption = #20844#21496#22320#22336#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 674 + Top = 182 + Width = 65 + Height = 12 + Caption = #38134#34892#36134#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 31 + Top = 210 + Width = 66 + Height = 12 + Caption = #24320' '#25143' '#34892#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label21: TLabel + Left = 463 + Top = 210 + Width = 65 + Height = 12 + Caption = #38134#34892#22320#22336#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label22: TLabel + Left = 63 + Top = 479 + Width = 65 + Height = 12 + Caption = #38134#34892#20195#30721#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label8: TLabel + Left = 31 + Top = 235 + Width = 67 + Height = 12 + Caption = #30005' '#35805#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label23: TLabel + Left = 247 + Top = 235 + Width = 67 + Height = 12 + Caption = #20256' '#30495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label24: TLabel + Left = 55 + Top = 459 + Width = 65 + Height = 12 + Caption = #20013#38388#38134#34892#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label25: TLabel + Left = 19 + Top = 400 + Width = 65 + Height = 12 + Caption = #25104#20221#32534#30721#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clTeal + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label26: TLabel + Left = 447 + Top = 467 + Width = 66 + Height = 12 + Caption = #21518' '#24037' '#33402#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clTeal + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label27: TLabel + Left = 239 + Top = 423 + Width = 65 + Height = 12 + Caption = #25253#20851#21517#31216#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label28: TLabel + Left = 247 + Top = 210 + Width = 65 + Height = 12 + Caption = #38134#34892#20195#30721#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label29: TLabel + Left = 31 + Top = 39 + Width = 39 + Height = 14 + Caption = 'PO#'#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label30: TLabel + Left = 15 + Top = 419 + Width = 59 + Height = 12 + Caption = #25104#20221'%'#27604#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label2: TLabel + Left = 31 + Top = 92 + Width = 66 + Height = 12 + Caption = #25910' '#36135' '#20154#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 239 + Top = 426 + Width = 91 + Height = 12 + Caption = #25910#36135#20844#21496#25260#22836#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label13: TLabel + Left = 247 + Top = 90 + Width = 91 + Height = 12 + Caption = #25910#36135#20844#21496#22320#22336#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label31: TLabel + Left = 674 + Top = 90 + Width = 91 + Height = 12 + Caption = #25910#36135#20844#21496#30005#35805#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label32: TLabel + Left = 31 + Top = 118 + Width = 91 + Height = 12 + Caption = #25910#36135#20844#21496#20256#30495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label33: TLabel + Left = 674 + Top = 446 + Width = 91 + Height = 12 + Caption = #36890#30693#20844#21496#25260#22836#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label34: TLabel + Left = 247 + Top = 142 + Width = 91 + Height = 12 + Caption = #36135#20195#20844#21496#37038#20214#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label35: TLabel + Left = 247 + Top = 116 + Width = 104 + Height = 12 + Caption = #36135#20195#20844#21496#32852#31995#20154#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label36: TLabel + Left = 31 + Top = 142 + Width = 91 + Height = 12 + Caption = #36135#20195#20844#21496#30005#35805#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label37: TLabel + Left = 463 + Top = 114 + Width = 65 + Height = 12 + Caption = #36135#20195#20844#21496#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label38: TLabel + Left = 463 + Top = 235 + Width = 67 + Height = 12 + Caption = #37038' '#20214#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label39: TLabel + Left = 31 + Top = 259 + Width = 91 + Height = 12 + Caption = #20844#21496#27880#20876#22320#22336#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label40: TLabel + Left = 674 + Top = 142 + Width = 65 + Height = 12 + Caption = #23458#25143#31616#31216#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label41: TLabel + Left = 31 + Top = 282 + Width = 46 + Height = 12 + Caption = #22791#27880'1'#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label42: TLabel + Left = 31 + Top = 302 + Width = 46 + Height = 12 + Caption = #22791#27880'2'#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label43: TLabel + Left = 32 + Top = 324 + Width = 67 + Height = 12 + Caption = #36816' '#36153#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object OrdDate: TDateTimePicker + Tag = 2 + Left = 737 + Top = 8 + Width = 136 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + TabOrder = 0 + end + object DlyDate: TDateTimePicker + Tag = 2 + Left = 737 + Top = 32 + Width = 136 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 1 + end + object ConPerson1: TEdit + Tag = 2 + Left = 526 + Top = 9 + Width = 136 + Height = 20 + TabOrder = 2 + end + object ConNo: TEdit + Tag = 2 + Left = 97 + Top = 9 + Width = 136 + Height = 20 + TabOrder = 3 + end + object FromPlace: TBtnEditC + Tag = 2 + Left = 309 + Top = 32 + Width = 136 + Height = 20 + Hint = 'FromPlace/'#35013#33337#21475#23736 + ReadOnly = True + TabOrder = 4 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object CustomerNoName: TBtnEditC + Tag = 2 + Left = 310 + Top = 8 + Width = 136 + Height = 20 + Hint = 'CustomerNo' + ReadOnly = True + TabOrder = 5 + OnBtnUpClick = CustomerNoNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object SYRName: TBtnEditC + Tag = 2 + Left = 97 + Top = 178 + Width = 136 + Height = 20 + Hint = 'SYRName/'#20844#21496#21488#22836 + TabOrder = 6 + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object PriceNote: TBtnEditC + Tag = 2 + Left = 737 + Top = 61 + Width = 136 + Height = 20 + Hint = 'PriceNote/'#20215#26684#26415#35821 + TabOrder = 7 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object QtyNote: TBtnEditC + Tag = 2 + Left = 529 + Top = 138 + Width = 136 + Height = 20 + Hint = 'QtyNote/'#28322#30701#35013 + TabOrder = 8 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object Payment: TBtnEditC + Tag = 2 + Left = 528 + Top = 62 + Width = 133 + Height = 20 + Hint = 'Payment/'#20184#27454#26041#24335 + TabOrder = 9 + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object ToPlace: TBtnEditC + Tag = 2 + Left = 526 + Top = 32 + Width = 136 + Height = 20 + Hint = 'ToPlace/'#30446#30340#22320 + ReadOnly = True + TabOrder = 10 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object ShippMent: TBtnEditC + Tag = 2 + Left = 309 + Top = 62 + Width = 136 + Height = 20 + Hint = 'ShippMent/'#36816#36755#26041#24335 + TabOrder = 11 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object BankNo: TBtnEditC + Tag = 2 + Left = 737 + Top = 178 + Width = 136 + Height = 20 + Hint = 'BankNo/'#38134#34892#36134#21495 + TabOrder = 12 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object SYRAddress: TEdit + Tag = 2 + Left = 310 + Top = 179 + Width = 350 + Height = 20 + TabOrder = 13 + end + object BankName: TEdit + Tag = 2 + Left = 97 + Top = 207 + Width = 136 + Height = 20 + TabOrder = 14 + end + object BankAddress: TEdit + Tag = 2 + Left = 526 + Top = 207 + Width = 348 + Height = 20 + TabOrder = 15 + end + object BankFastNo: TEdit + Tag = 2 + Left = 137 + Top = 392 + Width = 352 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 16 + Visible = False + end + object TelNo: TEdit + Tag = 2 + Left = 97 + Top = 232 + Width = 135 + Height = 20 + TabOrder = 17 + end + object FaxNo: TEdit + Tag = 2 + Left = 310 + Top = 232 + Width = 139 + Height = 20 + TabOrder = 18 + end + object DlyNote: TBtnEditC + Tag = 2 + Left = 97 + Top = 60 + Width = 136 + Height = 20 + Hint = 'DlyNote/'#20132#26399#35828#26126 + TabOrder = 19 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MidBank: TBtnEditC + Tag = 2 + Left = 121 + Top = 459 + Width = 352 + Height = 20 + Hint = 'MidBank/'#20013#38388#38134#34892 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 20 + Visible = False + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object CPTanLi: TCheckBox + Left = 179 + Top = 473 + Width = 58 + Height = 17 + Caption = #24377' '#21147 + Font.Charset = GB2312_CHARSET + Font.Color = clTeal + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 21 + Visible = False + OnClick = CPTanLiClick + end + object CPRanYin: TRadioGroup + Left = 294 + Top = 455 + Width = 140 + Height = 38 + Columns = 3 + Font.Charset = GB2312_CHARSET + Font.Color = clTeal + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ItemIndex = 0 + Items.Strings = ( + #26579#33394 + #21360#33457 + #26080) + ParentFont = False + TabOrder = 22 + Visible = False + OnClick = CPRanYinClick + end + object CPRanHouGY: TBtnEditC + Tag = 2 + Left = 513 + Top = 467 + Width = 136 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 23 + Visible = False + OnChange = CPRanHouGYChange + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = CPRanHouGYBtnUpClick + OnBtnDnClick = CPRanHouGYBtnDnClick + end + object CPType: TRadioGroup + Left = 738 + Top = 455 + Width = 195 + Height = 38 + Columns = 2 + Font.Charset = GB2312_CHARSET + Font.Color = clTeal + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ItemIndex = 0 + Items.Strings = ( + #38024#32455#24067 + #26797#32455#24067) + ParentFont = False + TabOrder = 24 + Visible = False + OnClick = CPTypeClick + end + object CPZHName: TEdit + Tag = 2 + Left = 300 + Top = 428 + Width = 354 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 25 + Visible = False + end + object CPCFNo: TEdit + Tag = 2 + Left = 89 + Top = 416 + Width = 136 + Height = 20 + CharCase = ecUpperCase + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 26 + Visible = False + OnChange = CPCFNoChange + OnDblClick = CPCFNoDblClick + OnKeyPress = CPCFNoKeyPress + end + object BankSelfFastNo: TEdit + Tag = 2 + Left = 310 + Top = 207 + Width = 136 + Height = 20 + TabOrder = 27 + end + object KHConNo: TEdit + Tag = 2 + Left = 97 + Top = 36 + Width = 136 + Height = 20 + TabOrder = 28 + end + object CPCFBi: TEdit + Tag = 2 + Left = 93 + Top = 436 + Width = 136 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 29 + Visible = False + end + object ConPerson2: TBtnEditC + Tag = 2 + Left = 97 + Top = 88 + Width = 136 + Height = 20 + Hint = 'ConPerson2/'#25910#36135#20154 + ReadOnly = True + TabOrder = 30 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object conDefstr1: TEdit + Tag = 2 + Left = 326 + Top = 423 + Width = 115 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 31 + Visible = False + end + object conDefstr2: TEdit + Tag = 2 + Left = 342 + Top = 87 + Width = 323 + Height = 20 + TabOrder = 32 + end + object conDefstr3: TEdit + Tag = 2 + Left = 764 + Top = 87 + Width = 109 + Height = 20 + TabOrder = 33 + end + object conDefstr4: TEdit + Tag = 2 + Left = 118 + Top = 115 + Width = 115 + Height = 20 + TabOrder = 34 + end + object conDefstr8: TEdit + Tag = 2 + Left = 326 + Top = 139 + Width = 119 + Height = 20 + TabOrder = 35 + end + object conDefstr7: TEdit + Tag = 2 + Left = 116 + Top = 139 + Width = 117 + Height = 20 + TabOrder = 36 + end + object conDefstr5: TEdit + Tag = 2 + Left = 758 + Top = 443 + Width = 119 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 37 + Visible = False + end + object ConPerson3: TBtnEditC + Tag = 2 + Left = 344 + Top = 112 + Width = 102 + Height = 20 + Hint = 'ConPerson3/'#36135#20195#20844#21496#32852#31995#20154 + ReadOnly = True + TabOrder = 38 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object conDefstr6: TEdit + Tag = 2 + Left = 528 + Top = 111 + Width = 345 + Height = 20 + TabOrder = 39 + end + object EmailNo: TEdit + Tag = 2 + Left = 526 + Top = 232 + Width = 139 + Height = 20 + TabOrder = 40 + end + object condefNote1: TEdit + Tag = 2 + Left = 120 + Top = 256 + Width = 757 + Height = 20 + TabOrder = 41 + end + object condefstr10: TEdit + Tag = 2 + Left = 737 + Top = 137 + Width = 137 + Height = 20 + Enabled = False + TabOrder = 42 + end + object condefnote2: TEdit + Tag = 2 + Left = 96 + Top = 280 + Width = 781 + Height = 20 + TabOrder = 43 + end + object condefnote3: TEdit + Tag = 2 + Left = 96 + Top = 300 + Width = 781 + Height = 20 + TabOrder = 44 + end + object YUNFee: TcxCurrencyEdit + Tag = 2 + Left = 96 + Top = 320 + Properties.DisplayFormat = '0.##' + TabOrder = 45 + Width = 133 + end + object KHLevel: TEdit + Tag = 1 + Left = 946 + Top = 4 + Width = 98 + Height = 20 + TabOrder = 46 + Visible = False + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 377 + Width = 1366 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 2 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #19968#38190#26367#25442 + ImageIndex = 104 + OnClick = ToolButton3Click + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 406 + Width = 1366 + Height = 239 + Align = alTop + TabOrder = 3 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + Column = v1PRTOrderQty + end + item + Format = '0' + Position = spFooter + Column = v1PRTPrice + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1XHNo: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'XHNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 35 + end + object v1Column9: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'PRTCode' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column9PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column5: TcxGridDBColumn + Caption = #33521#25991#21697#21517 + DataBinding.FieldName = 'PrtCodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column5PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object v1Column6: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'PRTspec' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = False + Properties.OnButtonClick = v1PRTColorPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 100 + end + object v1Column1: TcxGridDBColumn + Caption = #39068#33394#33521#25991 + DataBinding.FieldName = 'SOrdDefStr4' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 100 + end + object v1Column3: TcxGridDBColumn + Caption = #23610#23544'/'#23610#30721 + DataBinding.FieldName = 'SOrdDefStr5' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FonePurple + Width = 100 + end + object v1Column7: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'PRTMF' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column7PropertiesButtonClick + HeaderAlignmentHorz = taCenter + end + object v1Column8: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'PRTKZ' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column8PropertiesButtonClick + HeaderAlignmentHorz = taCenter + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1PRTOrderQtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 66 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1OrderUnitPropertiesButtonClick + Properties.OnEditValueChanged = v1OrderUnitPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 66 + end + object v1PRTPrice: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PRTPrice' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1PRTPricePropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 64 + end + object v1PriceUnit: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1PriceUnitPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1Column11: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'huilv' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column2: TcxGridDBColumn + Caption = #38144#21806#26085#26399 + DataBinding.FieldName = 'Sorddate' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column4: TcxGridDBColumn + Caption = #24555#36882#21333#21495 + DataBinding.FieldName = 'SOrdDefNote2' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column10: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'SOrdDefNote1' + HeaderAlignmentHorz = taCenter + Width = 160 + end + object Tv1Column1: TcxGridDBColumn + Caption = #26465#24418#30721 + DataBinding.FieldName = 'barcode' + HeaderAlignmentHorz = taCenter + Width = 120 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 1008 + Top = 141 + end + object DataSource1: TDataSource + DataSet = Order_Sub + Left = 1016 + Top = 368 + end + object Order_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 1000 + Top = 352 + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 1036 + Top = 109 + end + object CDS_Type: TClientDataSet + Aggregates = <> + Params = <> + Left = 1084 + Top = 208 + end + object ADOTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 984 + Top = 225 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 952 + Top = 185 + end +end diff --git a/艾登贸易管理/U_ConInPut.pas b/艾登贸易管理/U_ConInPut.pas new file mode 100644 index 0000000..297bf71 --- /dev/null +++ b/艾登贸易管理/U_ConInPut.pas @@ -0,0 +1,1959 @@ +unit U_ConInPut; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, + cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, cxMemo, + cxRichEdit, ComCtrls, cxContainer, cxTextEdit, cxMaskEdit, cxButtonEdit, + StdCtrls, ToolWin, DBClient, ADODB, ExtCtrls, BtnEdit, cxCalendar, StrUtils, + cxGridCustomPopupMenu, cxGridPopupMenu, cxCurrencyEdit, cxLookAndFeels, + cxLookAndFeelPainters, cxNavigator; + +type + TfrmConInPut = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ScrollBox1: TScrollBox; + Label3: TLabel; + OrdDate: TDateTimePicker; + Label4: TLabel; + DlyDate: TDateTimePicker; + Label7: TLabel; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + v1PRTColor: TcxGridDBColumn; + v1PRTPrice: TcxGridDBColumn; + ADOCmd: TADOQuery; + DataSource1: TDataSource; + Order_Sub: TClientDataSet; + ADOQuery1: TADOQuery; + v1PRTOrderQty: TcxGridDBColumn; + Label9: TLabel; + ConPerson1: TEdit; + Label10: TLabel; + ConNo: TEdit; + Label11: TLabel; + Label14: TLabel; + Label20: TLabel; + FromPlace: TBtnEditC; + CustomerNoName: TBtnEditC; + v1XHNo: TcxGridDBColumn; + SYRName: TBtnEditC; + v1OrderUnit: TcxGridDBColumn; + v1PriceUnit: TcxGridDBColumn; + Label5: TLabel; + PriceNote: TBtnEditC; + Label6: TLabel; + QtyNote: TBtnEditC; + Label15: TLabel; + Payment: TBtnEditC; + Label1: TLabel; + ToPlace: TBtnEditC; + Label16: TLabel; + ShippMent: TBtnEditC; + Label17: TLabel; + Label18: TLabel; + BankNo: TBtnEditC; + SYRAddress: TEdit; + Label19: TLabel; + BankName: TEdit; + Label21: TLabel; + BankAddress: TEdit; + Label22: TLabel; + BankFastNo: TEdit; + ToolButton3: TToolButton; + v1Column1: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + Label8: TLabel; + TelNo: TEdit; + Label23: TLabel; + FaxNo: TEdit; + Label24: TLabel; + DlyNote: TBtnEditC; + MidBank: TBtnEditC; + Label25: TLabel; + CPTanLi: TCheckBox; + CPRanYin: TRadioGroup; + Label26: TLabel; + CPRanHouGY: TBtnEditC; + CPType: TRadioGroup; + Label27: TLabel; + CPZHName: TEdit; + CDS_Type: TClientDataSet; + CPCFNo: TEdit; + Label28: TLabel; + BankSelfFastNo: TEdit; + Label29: TLabel; + KHConNo: TEdit; + Label30: TLabel; + CPCFBi: TEdit; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + ConPerson2: TBtnEditC; + Label2: TLabel; + conDefstr1: TEdit; + Label12: TLabel; + conDefstr2: TEdit; + Label13: TLabel; + Label31: TLabel; + conDefstr3: TEdit; + conDefstr4: TEdit; + Label32: TLabel; + conDefstr8: TEdit; + conDefstr7: TEdit; + Label33: TLabel; + Label34: TLabel; + conDefstr5: TEdit; + ConPerson3: TBtnEditC; + Label35: TLabel; + Label36: TLabel; + Label37: TLabel; + conDefstr6: TEdit; + EmailNo: TEdit; + Label38: TLabel; + Label39: TLabel; + condefNote1: TEdit; + condefstr10: TEdit; + Label40: TLabel; + Label41: TLabel; + Label42: TLabel; + condefnote2: TEdit; + condefnote3: TEdit; + v1Column9: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + ADOTemp: TADOQuery; + v1Column11: TcxGridDBColumn; + cxGridPopupMenu1: TcxGridPopupMenu; + Label43: TLabel; + YUNFee: TcxCurrencyEdit; + v1Column2: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + Tv1Column1: TcxGridDBColumn; + KHLevel: TEdit; + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure v1PRTColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure CustomerNoNameBtnUpClick(Sender: TObject); + procedure CustomerNoNameBtnDnClick(Sender: TObject); + procedure v1Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1OrderUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1PriceUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure SYRNameBtnUpClick(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure CPCFNoDblClick(Sender: TObject); + procedure CPCFNoKeyPress(Sender: TObject; var Key: Char); + procedure CPRanHouGYBtnUpClick(Sender: TObject); + procedure CPTanLiClick(Sender: TObject); + procedure CPRanYinClick(Sender: TObject); + procedure CPTypeClick(Sender: TObject); + procedure CPRanHouGYBtnDnClick(Sender: TObject); + procedure CPRanHouGYChange(Sender: TObject); + procedure CPCFNoChange(Sender: TObject); + procedure v1PRTOrderQtyPropertiesEditValueChanged(Sender: TObject); + procedure v1OrderUnitPropertiesEditValueChanged(Sender: TObject); + procedure v1PRTPricePropertiesEditValueChanged(Sender: TObject); + procedure v1Column5PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1Column7PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1Column8PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure FormCreate(Sender: TObject); + procedure v1Column9PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + private + fusername: string; + procedure InitData(); + procedure ZDYHelp(FButn: TcxButtonEdit; LType: string); + function SaveData(): Boolean; + function SaveDataSubOne(): Boolean; + function SaveDataMain(): Boolean; + function SaveDataSubMore(): Boolean; + procedure GetName(); + procedure InitCode(); + { Private declarations } + public + PState, CopyInt: Integer; + FMainId, FFMainId: string; + FXS: Integer; + procedure GetKgQty(); + procedure GetKgPrice(); + { Public declarations } + end; + +var + frmConInPut: TfrmConInPut; + newh: hwnd; + +implementation + +uses + U_DataLink, U_ZDYHelp, U_Fun, U_ZDYHelpSel, U_ZdyAttachment, U_ZdyAttachCP, + U_ZdyCMZ_Sel, U_ZdyYS_Sel; + +{$R *.dfm} + +procedure TfrmConInPut.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ָʾ¼1', Tv1, 'ָʾ'); +end; + +procedure TfrmConInPut.InitData(); +begin + + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from KH_Zdy where Type=''MPRTNameType'' '); + Open; + end; + SCreateCDS20(ADOQuery1, CDS_Type); + SInitCDSData20(ADOQuery1, CDS_Type); + with ADOQuery1 do + begin + Close; + SQL.Clear; +// sql.Add(' select * from JYOrderCon_Sub '); + if PState = 1 then + begin +// sql.Add('where MainId=''' + Trim(FMainId) + ''''); + sql.Add(' select PRTPrice=(( case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=B.CustomerNoName)=''ƴ'' then (select DZprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=B.CustomerNoName)='''' then (select Sprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=B.CustomerNoName)='''' then (select Tprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add('(select fprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) end end end )),A.*'); + sql.Add('from JYOrderCon_Sub A '); + sql.Add(' inner join JYOrderCon_main B on A.mainid=B.mainid '); + sql.Add('where A.MainId=''' + Trim(FMainId) + ''' '); + end; + if PState = 0 then + begin + sql.Add(' select * from JYOrderCon_Sub '); + sql.Add(' where 1<>1'); + end; +// ShowMessage(SQL.text); + Open; + end; + SCreateCDS20(ADOQuery1, Order_Sub); + SInitCDSData20(ADOQuery1, Order_Sub); + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrderCon_Main where MainId=''' + Trim(FMainId) + ''''); + Open; + end; + SCSHDataNew(ADOQuery1, ScrollBox1, 2); + if Trim(ADOQuery1.fieldbyname('CPTanLi').AsString) = '' then + begin + CPTanLi.Checked := True; + end + else + begin + CPTanLi.Checked := False; + end; + + if Trim(ADOQuery1.fieldbyname('CPRanYin').AsString) = 'Ⱦɫ' then + begin + CPRanYin.ItemIndex := 0; + end + else if Trim(ADOQuery1.fieldbyname('CPRanYin').AsString) = 'ӡ' then + begin + CPRanYin.ItemIndex := 1; + end + else + begin + CPRanYin.ItemIndex := 2; + end; + + if Trim(ADOQuery1.fieldbyname('CPType').AsString) = '֯' then + begin + CPType.ItemIndex := 0; + end + else if Trim(ADOQuery1.fieldbyname('CPType').AsString) = '֯' then + begin + CPType.ItemIndex := 1; + end; + CPZHName.Text := Trim(ADOQuery1.fieldbyname('CPZHName').AsString); + SYRName.TxtCode := Trim(ADOQuery1.fieldbyname('ConDefStr2').AsString); + if PState = 1 then + conNo.Enabled := false; + if PState = 0 then + begin + OrdDate.DateTime := SGetServerDateTime(ADOTemp); + DlyDate.DateTime := SGetServerDateTime(ADOTemp) + 10; + ConPerson1.Text := Trim(DName); + // FromPlace.Text:=''; + CPZHName.Text := ''; + // conNo.Text:='Զ'; + QtyNote.Text := '+-3%'; + SYRName.Text := ''; + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrderCon_Main where SyrName=''' + Trim(SYRName.Text) + ''''); + sql.Add(' and MPRTTYpe='''' '); + sql.Add(' order by FillTime desc'); + Open; + Self.SYRaddress.Text := Trim(ADOTemp.fieldbyname('SYRaddress').AsString); + Self.BankNo.Text := Trim(ADOTemp.fieldbyname('BankNo').AsString); + Self.BankName.Text := Trim(ADOTemp.fieldbyname('BankName').AsString); + Self.BankAddress.Text := Trim(ADOTemp.fieldbyname('BankAddress').AsString); + Self.BankSelfFastNo.Text := Trim(ADOTemp.fieldbyname('BankSelfFastNo').AsString); + // Self.BankFastNo.Text:=Trim(ADOTemp.fieldbyname('BankFastNo').AsString); + Self.TelNo.Text := Trim(ADOTemp.fieldbyname('TelNo').AsString); + Self.FaxNo.Text := Trim(ADOTemp.fieldbyname('FaxNo').AsString); + Self.EmailNo.Text := Trim(ADOTemp.fieldbyname('EmailNo').AsString); + end; + end + else + begin + end; + if CopyInt = 99 then + begin + PState := 0; + FMainId := ''; + ConPerson1.Text := Trim(DName); + conNo.Text := ''; + conNo.Enabled := true; +// SYRName.Text:='SHAOXING COUNTY GUZHEN TRADING LTD,.CO'; + with Order_Sub do + begin + First; + while not Eof do + begin + Edit; + FieldByName('MainId').Value := ''; + FieldByName('SubId').Value := ''; + Post; + Next; + end; + end; + end; +end; + +procedure TfrmConInPut.ZDYHelp(FButn: TcxButtonEdit; LType: string); +var + FType, ZDYName, FText: string; +begin +end; + +procedure TfrmConInPut.FormShow(Sender: TObject); +begin + fuserName := DCode; + if (trim(DCode) = 'A1') or (trim(DCode) = 'A2') then + begin + fuserName := 'A'; + end; + readCxGrid('ָʾ¼1', Tv1, 'ָʾ'); + InitData(); +end; + +function TfrmConInPut.SaveData(): Boolean; +var + maxno: string; + fconNO, fmxType: string; +begin + try + /// + if Trim(FMainId) = '' then + begin + if GetLSNo(ADOTemp, maxno, 'JW', 'JYOrderCon_Main', 3, 1) = False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!', 'ʾ', 0); + Exit; + end; + { if GetLSNo(ADOTemp,fconNO,'CF','JYOrderCon_Main',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + ConNo.Text:=uppercase(fconNO); } + end + else + begin + maxno := Trim(FMainId); + end; + ADOCmd.Connection.BeginTrans; + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from JYOrderCon_Main where MainId=''' + Trim(FMainId) + ''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMainId) = '' then + begin + Append; + end + else + begin + Edit; + end; + FieldByName('MainId').Value := Trim(maxno); + SSetsaveSqlNew(ADOCmd, 'JYOrderCon_Main', ScrollBox1, 2); + FieldByName('yunFee').Value := strTofloatdef(trim(yunFee.Text), 0); + if CPTanLi.Checked = True then + begin + FieldByName('CPTanLi').Value := ''; + end + else + begin + FieldByName('CPTanLi').Value := '޵'; + end; + + if CPRanYin.ItemIndex = 0 then + begin + FieldByName('CPRanYin').Value := 'Ⱦɫ'; + end + else if CPRanYin.ItemIndex = 1 then + begin + FieldByName('CPRanYin').Value := 'ӡ' + end + else if CPRanYin.ItemIndex = 0 then + begin + FieldByName('CPRanYin').Value := ''; + end; + + if CPType.ItemIndex = 0 then + begin + FieldByName('CPType').Value := '֯'; + end + else if CPType.ItemIndex = 1 then + begin + FieldByName('CPType').Value := '֯'; + end; + // FieldByName('ConDefStr2').Value:=Trim(SYRName.TxtCode); + if Trim(FMainId) = '' then + begin + FieldByName('Filler').Value := Trim(DName); + end + else + begin + FieldByName('Editer').Value := Trim(DName); + FieldByName('EditTime').Value := SGetServerDateTime(ADOTemp); + end; + FieldByName('MPRTType').Value := ''; + Post; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrderCon_Main where ConNo=''' + Trim(ConNo.Text) + ''''); + Open; + end; + if ADOCmd.RecordCount > 1 then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ͬظ!', 'ʾ', 0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrderCon_Main Set Filler=''' + Trim(DName) + ''''); + sql.Add(' where MainId=''' + Trim(FMainId) + ''''); + ExecSQL; + end; + FMainId := Trim(maxno); + ///ӱ + + with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString) = '' then + begin + if GetLSNo(ADOTemp, maxno, 'JB', 'JYOrderCon_Sub', 4, 1) = False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ', 'ʾ', 0); + Exit; + end; + with ADOTemp do + begin + close; + sql.Clear; + sql.Add('select SubID from JYOrderCon_Sub X where SubID=''' + trim(maxno) + ''''); + open; + end; + if not ADOTemp.IsEmpty then + begin + if GetLSNo(ADOTemp, maxno, 'JB', 'JYOrderCon_Sub', 4, 1) = False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ', 'ʾ', 0); + Exit; + end; + end; + end + else + begin + maxno := Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrderCon_Sub where MainId=''' + Trim(FMainId) + ''''); + sql.Add(' and SubId=''' + Trim(maxno) + ''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString) = '' then + Append + else + Edit; + FieldByName('MainId').Value := Trim(FMainId); + FieldByName('SubId').Value := Trim(maxno); + RTSetSaveDataCDS(ADOCmd, Tv1, Order_Sub, 'JYOrderCon_Sub', 0); + FieldByName('prtcode').Value := Trim(Order_Sub.fieldbyname('PrtCode').AsString); + if Trim(fieldbyname('PRTOrderQty').AsString) = '' then + begin + fieldbyname('PRTOrderQty').Value := 0 + end; + if Trim(fieldbyname('PRTPrice').AsString) = '' then + begin + fieldbyname('PRTPrice').Value := 0 + end; + fieldbyname('huilv').Value := Order_Sub.fieldbyname('huilv').AsFloat; + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value := Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + { + with ADOQuery1 do + begin + close; + sql.Clear; + sql.Add('select PrtCode,COUNT(distinct PrtPrice) as PrtPrice '); + sql.Add('from JYOrdercon_sub A '); + sql.Add('where MainID='''+trim(FMainId)+''' '); + sql.Add('group by PrtCode '); + sql.Add('having COUNT(distinct PrtPrice)>1 '); + open; + end; + IF not ADOQuery1.IsEmpty then + begin + ADOCmd.Connection.RollbackTrans; + application.MessageBox('ͬƷŴڲۣܱͬ棡','ʾϢ',MB_ICONERROR); + exit; + end; + } + ADOCmd.Connection.CommitTrans; + Result := True; + except + Result := False; + ADOCmd.Connection.RollbackTrans; + if GetLSNo(ADOTemp, maxno, 'JB', 'JYOrderCon_Sub', 4, 1) = False then + begin + end; + Application.MessageBox('ʧܣ', 'ʾ', 0); + end; +end; + +function TfrmConInPut.SaveDataMain(): Boolean; +var + maxno: string; +begin + try + ADOCmd.Connection.BeginTrans; + /// + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from JYOrder_Main where MainId=''' + Trim(FMainId) + ''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMainId) = '' then + begin + Append; + maxno := Trim(FFMainId); + end + else + begin + maxno := Trim(FMainId); + Edit; + end; + FieldByName('MainId').Value := Trim(maxno); + SSetsaveSqlNew(ADOCmd, 'JYOrder_Main', ScrollBox1, 2); + if PState = 1 then + begin + FieldByName('OrdUpDate').Value := SGetServerDateTime(ADOTemp); + end; + if Trim(FMainId) = '' then + begin + FieldByName('Filler').Value := Trim(DName); + end + else + begin + FieldByName('Editer').Value := Trim(DName); + FieldByName('EditTime').Value := SGetServerDateTime(ADOTemp); + end; + Post; + end; + FMainId := Trim(maxno); + ADOCmd.Connection.CommitTrans; + Result := True; + except + Result := False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ', 'ʾ', 0); + end; +end; + +function TfrmConInPut.SaveDataSubOne(): Boolean; +var + maxno: string; +begin + try + ADOCmd.Connection.BeginTrans; + ///ӱ + with Order_Sub do + begin + //First; + //while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString) = '' then + begin + if GetLSNo(ADOTemp, maxno, 'JS', 'JYOrder_Sub', 4, 1) = False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ', 'ʾ', 0); + Exit; + end; + end + else + begin + maxno := Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrder_Sub where MainId=''' + Trim(FMainId) + ''''); + sql.Add(' and SubId=''' + Trim(maxno) + ''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString) = '' then + Append + else + Edit; + FieldByName('MainId').Value := Trim(FMainId); + FieldByName('SubId').Value := Trim(maxno); + RTSetSaveDataCDS(ADOCmd, Tv1, Order_Sub, 'JYOrder_Sub', 0); + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value := Trim(maxno); + //Order_Sub.Post; + //Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result := True; + except + Result := False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('쳣', 'ʾ', 0); + end; +end; + +function TfrmConInPut.SaveDataSubMore(): Boolean; +var + maxno: string; +begin + try + ADOCmd.Connection.BeginTrans; + ///ӱ + with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString) = '' then + begin + if GetLSNo(ADOTemp, maxno, 'JS', 'JYOrder_Sub', 4, 1) = False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ', 'ʾ', 0); + Exit; + end; + end + else + begin + maxno := Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrder_Sub where MainId=''' + Trim(FMainId) + ''''); + sql.Add(' and SubId=''' + Trim(maxno) + ''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString) = '' then + Append + else + Edit; + FieldByName('MainId').Value := Trim(FMainId); + FieldByName('SubId').Value := Trim(maxno); + RTSetSaveDataCDS(ADOCmd, Tv1, Order_Sub, 'JYOrder_Sub', 0); + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value := Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result := True; + except + Result := False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('쳣', 'ʾ', 0); + end; +end; + +procedure TfrmConInPut.TBSaveClick(Sender: TObject); +begin + OrdDate.SetFocus; + if Trim(ConNo.Text) = '' then + begin + Application.MessageBox('ͬŲΪգ', 'ʾ', 0); + Exit; + end; + if Trim(condefstr10.Text) = '' then + begin + Application.MessageBox('ͻƲΪգ', 'ʾ', 0); + Exit; + end; + if Order_Sub.IsEmpty then + begin + Application.MessageBox('ϸϢΪգ', 'ʾ', 0); + Exit; + end; + with Order_Sub do + begin + first; + while not eof do + begin + if Order_Sub.FieldByName('PRTOrderQty').AsFloat = 0 then + begin + application.MessageBox('Ϊջ㣡', 'ʾϢ', MB_ICONERROR); + exit; + end; + if Order_Sub.FieldByName('PRTPrice').AsFloat = 0 then + begin + application.MessageBox('۲Ϊջ㣡', 'ʾϢ', MB_ICONERROR); + exit; + end; + if Order_Sub.FieldByName('huilv').AsFloat = 0 then + begin + application.MessageBox('ʲΪջ㣡', 'ʾϢ', MB_ICONERROR); + exit; + end; + next; + end; + first; + end; + if SaveData() then + begin + Application.MessageBox('ɹ', 'ʾ', 0); + end; +end; + +procedure TfrmConInPut.v1PRTColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin +// try +// frmZDYHelp := TfrmZDYHelp.Create(Application); +// with frmZDYHelp do +// begin +// flag := 'OrdColor'; +// flagname := 'ɫ'; +// V1Name.Caption := ''; +// V1Note.Caption := 'Ӣ'; +// fnote := True; +// // MainType:=Trim(DName); +// if ShowModal = 1 then +// begin +// Self.Order_Sub.Edit; +// Self.Order_Sub.FieldByName('PRTColor').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); +// Self.Order_Sub.FieldByName('SOrdDefStr4').Value := Trim(ClientDataSet1.fieldbyname('Note').AsString); +// end; +// end; +// finally +// frmZDYHelp.Free; +// end; + + frmZdyYS_sel := TfrmZdyYS_sel.create(self); + with frmZdyYS_sel do + begin + if showmodal = 1 then + begin + with Order_Sub do + begin + Edit; + FieldByName('PRTColor').value := frmZdyYS_sel.Edit1.Text; +// CDS_HZ.fieldbyname('CodeName').AsString; + Post; + end; + end; + free; + end; + InitCode(); +end; + +procedure TfrmConInPut.ToolButton1Click(Sender: TObject); +var + i: Integer; +begin + if Trim(ConNo.Text) = '' then + begin + Application.MessageBox('ͬŲΪ!', 'ʾ', 0); + Exit; + end; + i := Order_Sub.RecordCount; + i := i + 1; + CopyAddRow(Tv1, Order_Sub); + with Order_Sub do + begin + Edit; + FieldByName('XHNO').Value := IntToStr(i); + FieldByName('PRTColor').Value := ''; + FieldByName('PRTOrderQty').Value := null; + FieldByName('OrderUnit').Value := 'M'; + FieldByName('PriceUnit').Value := 'USD'; + // FieldByName('huilv').Value:=6.67; + // FieldByName('PRTPrice').Value:=null; + FieldByName('SOrddefstr4').Value := null; + //FieldByName('SOrddefstr2').Value:=null; + Post; + end; +end; + +procedure TfrmConInPut.ToolButton2Click(Sender: TObject); +begin + if Order_Sub.IsEmpty then + Exit; + if Trim(Order_Sub.fieldbyname('SubId').AsString) <> '' then + begin + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrderCon_Sub where SubId=''' + Trim(Order_Sub.fieldbyname('SubId').AsString) + ''''); + ExecSQL; + end; + end; + Order_Sub.Delete; + { if Order_Sub.IsEmpty then + begin + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(FMainId)+''''); + ExecSQL; + end; + end; } +end; + +procedure TfrmConInPut.CustomerNoNameBtnUpClick(Sender: TObject); +begin + {try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CustomerNoName'; + flagname:='ͻ'; + if Trim(DParameters1)<>'Ȩ' then + MainType:=Trim(DName); + V1Note.Caption:=''; + fnote:=true; + if ShowModal=1 then + begin + CustomerNoName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + CustomerNoName.TxtCode:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + condefstr10.Text:=Trim(ClientDataSet1.fieldbyname('note').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; } + try + frmZdyAttachment := TfrmZdyAttachment.Create(Application); + with frmZdyAttachment do + begin + fkhType := ''; + if ShowModal = 1 then + begin + CustomerNoName.Text := Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + CustomerNoName.TxtCode := Trim(CDS_HZ.fieldbyname('ZDYCode').AsString); + condefstr10.Text := Trim(CDS_HZ.fieldbyname('ZDYNameZ').AsString); + ConPerson2.Text := Trim(CDS_HZ.fieldbyname('DEFstr4').AsString); + conDefstr2.Text := Trim(CDS_HZ.fieldbyname('DEFNote2').AsString); + conDefstr3.Text := Trim(CDS_HZ.fieldbyname('DEFstr1').AsString); + conDefstr4.Text := Trim(CDS_HZ.fieldbyname('DEFstr3').AsString); + KHLevel.Text := Trim(CDS_HZ.fieldbyname('DEFStr6').AsString); + if KHLevel.Text = '' then + begin + KHLevel.Text := 'һ'; + end; + end; + end; + finally + frmZdyAttachment.Free; + end; + if Trim(CustomerNoName.Text) <> '' then + begin + + with Order_Sub do + begin + First; + while not Eof do + begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + if PState = 1 then + begin + sql.Add(' select PRTPrice=(( case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')=''ƴ'' then (select DZprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')='''' then '); + SQL.Add('case when ((left(''' + Order_Sub.FieldByName('SOrddefstr5').AsString + ''',1)=''A'' ) or (''' + Order_Sub.FieldByName('SOrddefstr5').AsString + '''=''CXXL'') or (''' + Order_Sub.FieldByName('SOrddefstr5').AsString + '''=''CXL'')) then (select Sprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else (select Seprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) end else'); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')='''' then (select Tprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add('(select fprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) end end end ))'); + sql.Add('from JYOrderCon_Sub A '); +// sql.Add(' inner join JYOrderCOn_Main B on A.mainid=B.mainid ');//A.MainId=''' + Trim(FMainId) + ''' and + sql.Add('where A.PRTCode=''' + Order_Sub.FieldByName('Prtcode').AsString + ''' '); + end; + if PState = 0 then + begin + sql.Add(' select PRTPrice=(( case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')=''ƴ'' then (select DZprice from KH_Zdy_Attachment X where X.zdycode=''' + Order_Sub.FieldByName('Prtcode').AsString + ''' ) else '); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')='''' then '); + SQL.Add('case when ((left(''' + Order_Sub.FieldByName('SOrdDefStr5').AsString + ''',1)=''A'' ) or (''' + Order_Sub.FieldByName('SOrddefstr5').AsString + '''=''CXXL'') or (''' + Order_Sub.FieldByName('SOrddefstr5').AsString + '''=''CXL'')) then (select Sprice from KH_Zdy_Attachment X where X.zdycode=''' + Order_Sub.FieldByName('Prtcode').AsString + ''' ) else (select Seprice from KH_Zdy_Attachment X where X.zdycode=''' + Order_Sub.FieldByName('Prtcode').AsString + ''' ) end else'); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')='''' then (select Tprice from KH_Zdy_Attachment X where X.zdycode=''' + Order_Sub.FieldByName('Prtcode').AsString + ''' ) else '); + sql.Add('(select fprice from KH_Zdy_Attachment X where X.zdycode=''' + Order_Sub.FieldByName('Prtcode').AsString + ''' ) end end end ))'); + sql.Add('from JYOrderCon_Sub A '); + sql.Add(' inner join JYOrderCon_Main B on A.mainid=B.mainid '); +// sql.Add('where A.PRTCode=''' + Order_Sub.FieldByName('Prtcode').AsString + ''' '); + end; +// ShowMessage(sql.text); + Open; + end; + + with ADOCmd do + begin + Order_Sub.Edit; + Order_Sub.fieldbyname('PrtPrice').Value := ADOQuery1.fieldbyname('PRTPrice').AsFloat; + Order_Sub.Post; + end; + + Next; + end; + end; + tv1.Controller.EditingController.ShowEdit(); + end; +end; + +procedure TfrmConInPut.CustomerNoNameBtnDnClick(Sender: TObject); +begin + TBtnEditC(Sender).Text := ''; + TBtnEditC(Sender).TxtCode := ''; +end; + +procedure TfrmConInPut.v1Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +type + TMyFunc = function(App: Tapplication; FormH: hwnd; FormID: integer; Language: integer; WinStyle: integer; GCode: Pchar; GName: Pchar; DataBase: Pchar; Title: PChar; Parameters1: PChar; Parameters2: PChar; Parameters3: PChar; Parameters4: PChar; Parameters5: PChar; Parameters6: PChar; Parameters7: PChar; Parameters8: PChar; Parameters9: PChar; Parameters10: PChar; DataBaseStr: PChar): hwnd; stdcall; +var + Tf: TMyFunc; + Tp: TFarProc; + Th: Thandle; + LabInt, labname: string; +begin + //if PPInt=2 then Exit; + Ddatabase := StringOfChar(' ', 32); + Th := LoadLibrary('LabelSet.dll'); + if Th > 0 then + begin + try + Tp := GetProcAddress(Th, 'GetDllForm'); + if Tp <> nil then + begin + Tf := TMyFunc(Tp); + newh := Tf(Application, 0, 2, 0, 0, PChar(DCode), PChar(DName), PChar(Ddatabase), PChar('ǩģ'), PChar(''), PChar(''), '', '', '', '', '', '', '', '', PChar(DConString)); + if Trim(PChar(Ddatabase)) <> '' then + begin + Ddatabase := Trim(PChar(Ddatabase)); + LabInt := Trim(LeftBStr(Ddatabase, Pos('|', Ddatabase) - 1)); + labname := Trim(RightBStr(Ddatabase, Length(Ddatabase) - Pos('|', Ddatabase))); + with Order_Sub do + begin + Edit; + FieldByName('SLbName').Value := labname; + FieldByName('SLbInt').Value := LabInt; + end; + end; + end + else + begin + ShowMessage('ӡִд'); + end; + finally + // FreeLibrary(); + end; + end + else + begin + ShowMessage('Ҳ' + Trim('LabelSet.dll')); + end; + +end; + +procedure TfrmConInPut.v1OrderUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +var + mvalue, FMF, FKZ, FXS, FOrdUnit: string; + FReal: Double; +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'OrderUnit'; + flagname := 'λ'; + if ShowModal = 1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('OrderUnit').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + //FOrdUnit:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; + GetKgQty(); + GetKgPrice(); + { if Trim(FOrdUnit)<>'M' then + begin + if Trim(FOrdUnit)<>'Y' then + begin + if Trim(FOrdUnit)='Kg' then + begin + Order_Sub.Edit; + Order_Sub.FieldByName('KgQty').Value:=Order_Sub.FieldByName('PRTOrderQty').Value; + end else + begin + Order_Sub.Edit; + Order_Sub.FieldByName('KgQty').Value:=null; + end; + Exit; + end; + end; + if Trim(MPRTMF.Text)='' then + begin + Application.MessageBox('ŷΪ!','ʾ',0); + Exit; + end; + if Trim(MPRTKZ.Text)='' then + begin + Application.MessageBox('زΪ!','ʾ',0); + Exit; + end; + FMF:=Copy(Trim(MPRTMF.Text),Pos('/',Trim(MPRTMF.Text))+1,2); + if TryStrToFloat(FMF,FReal)=False then + begin + Application.MessageBox('ŷ¼!','ʾ',0); + Exit; + end; + FKZ:=Copy(Trim(MPRTKZ.Text),1,Pos('g',Trim(MPRTKZ.Text))-1); + if TryStrToFloat(FKZ,FReal)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + if Trim(FOrdUnit)='M' then + begin + FXS:='1'; + end else + begin + FXS:='0.9144'; + end; + + with Order_Sub do + begin + Edit; + FieldByName('KgQty').Value:=Order_Sub.fieldbyname('PRTOrderQty').Value + *strtofloat(FXS)*strtofloat(FMF)*2.54/100*strtofloat(FKZ)/1000; + //Post; + end; } +end; + +procedure TfrmConInPut.GetKgQty(); +var + mvalue, FMF, FKZ, FXS, FOrdUnit, FOrdQty: string; + FReal: Double; +begin +{ FOrdUnit:=Trim(Order_Sub.fieldbyname('OrderUnit').AsString); + if Trim(FOrdUnit)<>'M' then + begin + if Trim(FOrdUnit)<>'Y' then + begin + if Trim(FOrdUnit)='Kg' then + begin + Order_Sub.Edit; + Order_Sub.FieldByName('KgQty').Value:=Order_Sub.FieldByName('PRTOrderQty').Value; + end else + begin + Order_Sub.Edit; + Order_Sub.FieldByName('KgQty').Value:=null; + end; + Exit; + end; + end; + + + + if Pos('-',Trim(MPRTKZ.Text))>0 then + begin + if Pos('g',Trim(MPRTKZ.Text))>0 then + FKZ:=Copy(Trim(MPRTKZ.Text),Pos('-',Trim(MPRTKZ.Text))+1,Pos('g',Trim(MPRTKZ.Text))-Pos('-',Trim(MPRTKZ.Text))-1); + if Pos('G',Trim(MPRTKZ.Text))>0 then + FKZ:=Copy(Trim(MPRTKZ.Text),Pos('-',Trim(MPRTKZ.Text))+1,Pos('G',Trim(MPRTKZ.Text))-Pos('-',Trim(MPRTKZ.Text))-1); + end else + begin + if Pos('g',Trim(MPRTKZ.Text))>0 then + FKZ:=Copy(Trim(MPRTKZ.Text),1,Pos('g',Trim(MPRTKZ.Text))-1); + if Pos('G',Trim(MPRTKZ.Text))>0 then + FKZ:=Copy(Trim(MPRTKZ.Text),1,Pos('G',Trim(MPRTKZ.Text))-1); + end; + if TryStrToFloat(FKZ,FReal)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + if Trim(FOrdUnit)='M' then + begin + FXS:='1'; + end else + begin + FXS:='0.9144'; + end; + FOrdQty:=Order_Sub.fieldbyname('PRTOrderQty').AsString; + if Trim(FOrdQty)='' then + FOrdQty:='0'; + with Order_Sub do + begin + Edit; + FieldByName('KgQty').Value:=strtofloat(FOrdQty) + *strtofloat(FXS)*strtofloat(FMF)*2.54/100*strtofloat(FKZ)/1000; + //Post; + end; } +end; + +procedure TfrmConInPut.GetKgPrice(); +var + mvalue, FMF, FKZ, FXS, FOrdUnit, FOrdPrice: string; + FReal: Double; +begin + { FOrdUnit:=Trim(Order_Sub.fieldbyname('OrderUnit').AsString); + if Trim(FOrdUnit)<>'M' then + begin + if Trim(FOrdUnit)<>'Y' then + begin + if Trim(FOrdUnit)='Kg' then + begin + Order_Sub.Edit; + Order_Sub.FieldByName('KgPrice').Value:=Order_Sub.FieldByName('PRTPrice').Value; + end else + begin + Order_Sub.Edit; + Order_Sub.FieldByName('KgPrice').Value:=null; + end; + Exit; + end; + end; + if Trim(MPRTMF.Text)='' then + begin + Application.MessageBox('ŷΪ!','ʾ',0); + Exit; + end; + if Trim(MPRTKZ.Text)='' then + begin + Application.MessageBox('زΪ!','ʾ',0); + Exit; + end; + //FMF:=Copy(Trim(MPRTMF.Text),Pos('/',Trim(MPRTMF.Text))+1,2); + if Pos('/',Trim(MPRTMF.Text))>0 then + begin + FMF:=Copy(Trim(MPRTMF.Text),Pos('/',Trim(MPRTMF.Text))+1,2); + end else + FMF:=Copy(Trim(MPRTMF.Text),1,2); + if TryStrToFloat(FMF,FReal)=False then + begin + Application.MessageBox('ŷ¼!','ʾ',0); + Exit; + end; + {FKZ:=Copy(Trim(MPRTKZ.Text),1,Pos('g',Trim(MPRTKZ.Text))-1); + if TryStrToFloat(FKZ,FReal)=False then + begin + FKZ:=Copy(Trim(MPRTKZ.Text),1,Pos('G',Trim(MPRTKZ.Text))-1); + if TryStrToFloat(FKZ,FReal)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end; + if Pos('-',Trim(MPRTKZ.Text))>0 then + begin + if Pos('g',Trim(MPRTKZ.Text))>0 then + FKZ:=Copy(Trim(MPRTKZ.Text),Pos('-',Trim(MPRTKZ.Text))+1,Pos('g',Trim(MPRTKZ.Text))-Pos('-',Trim(MPRTKZ.Text))-1); + if Pos('G',Trim(MPRTKZ.Text))>0 then + FKZ:=Copy(Trim(MPRTKZ.Text),Pos('-',Trim(MPRTKZ.Text))+1,Pos('G',Trim(MPRTKZ.Text))-Pos('-',Trim(MPRTKZ.Text))-1); + end else + begin + if Pos('g',Trim(MPRTKZ.Text))>0 then + FKZ:=Copy(Trim(MPRTKZ.Text),1,Pos('g',Trim(MPRTKZ.Text))-1); + if Pos('G',Trim(MPRTKZ.Text))>0 then + FKZ:=Copy(Trim(MPRTKZ.Text),1,Pos('G',Trim(MPRTKZ.Text))-1); + end; + if TryStrToFloat(FKZ,FReal)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + if Trim(FOrdUnit)='M' then + begin + FXS:='1'; + end else + begin + FXS:='0.9144'; + end; + FOrdPrice:=Order_Sub.fieldbyname('PRTPrice').AsString; + if Trim(FOrdPrice)='' then + FOrdPrice:='0'; + with Order_Sub do + begin + Edit; + FieldByName('KgPrice').Value:=1.00/(strtofloat(FXS)*strtofloat(FMF)*2.54/100*strtofloat(FKZ)/1000)*strtofloat(FOrdPrice); + //Post; + end; } +end; + +procedure TfrmConInPut.v1PriceUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'PriceUnit'; + flagname := '۸λ'; + if Trim(DParameters1) <> 'Ȩ' then + begin + TBAdd.Visible := False; + TBEdit.Visible := False; + TBDel.Visible := False; + end; + if ShowModal = 1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PriceUnit').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmConInPut.SYRNameBtnUpClick(Sender: TObject); +var + fsj: string; + FWZ: Integer; +begin + fsj := Trim(TEdit(Sender).Hint); + FWZ := Pos('/', fsj); + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := Copy(fsj, 1, FWZ - 1); + flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); + if Trim(flag) = 'SYRName' then + begin + flag := 'OrdDefStr2'; + V1Name.Caption := ''; + V1Note.Caption := 'Ӣ'; + fnote := True; + { if Trim(DParameters1)<>'Ȩ' then + begin + TBAdd.Visible:=False; + TBEdit.Visible:=false; + TBDel.Visible:=false; + TBSave.Visible:=false; + end; } + end; + if Trim(flag) = 'BankNo' then + begin + { if Trim(DParameters1)<>'Ȩ' then + begin + TBAdd.Visible:=False; + TBEdit.Visible:=false; + TBDel.Visible:=false; + TBSave.Visible:=false; + end; } + fnote := True; + end; + + if ShowModal = 1 then + begin + if Trim(flag) <> 'OrdDefStr2' then + begin + TEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + if Trim(flag) = 'BankNo' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrderCon_Main where BankNo=''' + Trim(ClientDataSet1.fieldbyname('ZDYName').AsString) + ''''); + sql.Add(' and MPRTTYpe='''' '); + sql.Add(' order by FillTime desc'); + Open; + // Self.SYRaddress.Text:=Trim(ADOTemp.fieldbyname('SYRaddress').AsString); + // Self.BankNo.Text:=Trim(ADOTemp.fieldbyname('BankNo').AsString); + Self.BankName.Text := Trim(ADOTemp.fieldbyname('BankName').AsString); + Self.BankAddress.Text := Trim(ADOTemp.fieldbyname('BankAddress').AsString); + Self.BankSelfFastNo.Text := Trim(ADOTemp.fieldbyname('BankSelfFastNo').AsString); + // Self.BankFastNo.Text:=Trim(ADOTemp.fieldbyname('BankFastNo').AsString); + // Self.TelNo.Text:=Trim(ADOTemp.fieldbyname('TelNo').AsString); + // Self.FaxNo.Text:=Trim(ADOTemp.fieldbyname('FaxNo').AsString); + // Self.EmailNo.Text:=Trim(ADOTemp.fieldbyname('EmailNo').AsString); + + end; + end; + end + else + begin + TEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('Note').AsString); + SYRName.TxtCode := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrderCon_Main where SYRName=''' + Trim(ClientDataSet1.fieldbyname('Note').AsString) + ''''); + sql.Add(' and MPRTTYpe='''' '); + sql.Add(' order by FillTime desc'); + Open; + Self.SYRaddress.Text := Trim(ADOTemp.fieldbyname('SYRaddress').AsString); + Self.BankNo.Text := Trim(ADOTemp.fieldbyname('BankNo').AsString); + Self.BankName.Text := Trim(ADOTemp.fieldbyname('BankName').AsString); + Self.BankAddress.Text := Trim(ADOTemp.fieldbyname('BankAddress').AsString); + Self.BankSelfFastNo.Text := Trim(ADOTemp.fieldbyname('BankSelfFastNo').AsString); + // Self.BankFastNo.Text:=Trim(ADOTemp.fieldbyname('BankFastNo').AsString); + Self.TelNo.Text := Trim(ADOTemp.fieldbyname('TelNo').AsString); + Self.FaxNo.Text := Trim(ADOTemp.fieldbyname('FaxNo').AsString); + Self.EmailNo.Text := Trim(ADOTemp.fieldbyname('EmailNo').AsString); + end; + end; + end; + if flag = 'MPRTMF' then + begin + if Self.Order_Sub.IsEmpty = False then + begin + with Self.Order_Sub do + begin + First; + while not Eof do + begin + GetKgQty(); + GetKgPrice(); + Next; + end; + end; + + end; + end; + if flag = 'MPRTKZ' then + begin + if Self.Order_Sub.IsEmpty = False then + begin + with Self.Order_Sub do + begin + First; + while not Eof do + begin + GetKgQty(); + GetKgPrice(); + Next; + end; + end; + end; + end; + end; + finally + frmZDYHelp.Free; + end; + +end; + +procedure TfrmConInPut.ToolButton3Click(Sender: TObject); +begin + if Order_Sub.IsEmpty then + Exit; + OneKeyPost(Tv1, Order_Sub); +end; + +procedure TfrmConInPut.CPCFNoDblClick(Sender: TObject); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'MPRTNameEngType'; + flagname := 'Ʒ'; + V1HelpType.Visible := True; + V1HelpType.Caption := 'д'; + fnote := True; + V1Name.Caption := 'Ӣ'; + V1Note.Caption := 'ע'; + if ShowModal = 1 then + begin + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from KH_Zdy where Type=''MPRTNameType'' '); + Open; + end; + SCreateCDS20(ADOQuery1, CDS_Type); + SInitCDSData20(ADOQuery1, CDS_Type); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmConInPut.CPCFNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key = #13 then + begin + GetName(); + end; +end; + +procedure TfrmConInPut.GetName(); +var + fsj, FCPCF, FCPHZName, fsjhelp: string; + i, j, z: Integer; +begin + if Trim(CPCFNo.Text) = '' then + begin + CPZHName.Text := ''; + Exit; + end; + i := 0; + j := 0; + z := 0; + FCPCF := ''; + FCPHZName := ''; + if Trim(CPCFNo.Text) = '' then + begin + CPZHName.Text := ''; + end; + fsj := Trim(CPCFNo.Text); + i := Pos('/', fsj); + while i >= 0 do + begin + fsjhelp := Copy(fsj, i + 1, i + 1); + if i > 0 then + begin + if Trim(fsjhelp) <> '' then + begin + if Trim(fsjhelp) <> '/' then + begin + FCPCF := Copy(fsj, 1, i - 1); + if CDS_Type.Locate('Note', Trim(FCPCF), []) then + begin + FCPCF := Trim(CDS_Type.fieldbyname('HelpType').AsString); + FCPHZName := FCPHZName + FCPCF; + end; + + fsj := Copy(fsj, i + 1, Length(fsj)); + i := Pos('/', fsj); + j := 1; + z := 1; + end + else + begin + Application.MessageBox('¼!', 'ʾ', 0); + Exit; + end; + end + else + begin + if z <> 1 then + i := 0 + else + begin + FCPCF := Copy(fsj, 1, i - 1); + if CDS_Type.Locate('Note', Trim(FCPCF), []) then + begin + FCPCF := Trim(CDS_Type.fieldbyname('HelpType').AsString); + FCPHZName := FCPHZName + FCPCF; + end; + + fsj := Copy(fsj, i + 1, Length(fsj)); + i := Pos('/', fsj); + j := 1; + z := 2; + end; + end; + + end + else + begin + if j = 1 then + begin + if z <> 2 then + begin + FCPCF := Trim(fsj); + if CDS_Type.Locate('Note', Trim(FCPCF), []) then + begin + FCPCF := Trim(CDS_Type.fieldbyname('HelpType').AsString); + FCPHZName := FCPHZName + FCPCF; + end; + + end + else + i := -1; + + end + else + begin + FCPCF := Trim(fsj); + if CDS_Type.Locate('Note', Trim(FCPCF), []) then + begin + FCPCF := Trim(CDS_Type.fieldbyname('ZdyName').AsString); + FCPHZName := FCPHZName + FCPCF; + end; + + end; + i := -1; + end; + end; + if CPType.ItemIndex = 0 then + FCPHZName := FCPHZName + '֯'; + if CPTanLi.Checked = True then + FCPHZName := FCPHZName + ''; + if CPRanYin.ItemIndex = 0 then + FCPHZName := FCPHZName + 'Ⱦɫ' + else if CPRanYin.ItemIndex = 1 then + FCPHZName := FCPHZName + 'ӡ'; + FCPHZName := FCPHZName + Trim(CPRanHouGY.Text); + {if CPType.ItemIndex=0 then + FCPHZName:=FCPHZName+'֯' + else if CPType.ItemIndex=1 then + FCPHZName:=FCPHZName+''; } + FCPHZName := FCPHZName + ''; + CPZHName.Text := Trim(FCPHZName); +end; + +procedure TfrmConInPut.CPRanHouGYBtnUpClick(Sender: TObject); +begin + try + frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag := 'CPRanHouGY'; + flagname := ''; + JiangeStr := 99; + if ShowModal = 1 then + begin + CPRanHouGY.Text := Trim(ReturnStr); + GetName(); + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmConInPut.CPTanLiClick(Sender: TObject); +begin + GetName(); +end; + +procedure TfrmConInPut.CPRanYinClick(Sender: TObject); +begin + GetName(); +end; + +procedure TfrmConInPut.CPTypeClick(Sender: TObject); +begin + GetName(); +end; + +procedure TfrmConInPut.CPRanHouGYBtnDnClick(Sender: TObject); +begin + TBtnEditC(Sender).Text := ''; + TBtnEditC(Sender).TxtCode := ''; + GetName(); +end; + +procedure TfrmConInPut.CPRanHouGYChange(Sender: TObject); +begin + GetName(); +end; + +procedure TfrmConInPut.CPCFNoChange(Sender: TObject); +begin + GetName(); +end; + +procedure TfrmConInPut.v1PRTOrderQtyPropertiesEditValueChanged(Sender: TObject); +var + mvalue, FMF, FKZ, FXS: string; + FReal: Double; +begin + {if Trim(Order_Sub.FieldByName('OrderUnit').AsString)<>'M' then + begin + if Trim(Order_Sub.FieldByName('OrderUnit').AsString)<>'Y' then Exit; + end; + if Trim(MPRTMF.Text)='' then + begin + Application.MessageBox('ŷΪ!','ʾ',0); + Exit; + end; + if Trim(MPRTKZ.Text)='' then + begin + Application.MessageBox('زΪ!','ʾ',0); + Exit; + end; + FMF:=Copy(Trim(MPRTMF.Text),Pos('/',Trim(MPRTMF.Text))+1,2); + if TryStrToFloat(FMF,FReal)=False then + begin + Application.MessageBox('ŷ¼!','ʾ',0); + Exit; + end; + FKZ:=Copy(Trim(MPRTKZ.Text),1,Pos('g',Trim(MPRTKZ.Text))-1); + if TryStrToFloat(FKZ,FReal)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + if Trim(Order_Sub.FieldByName('OrderUnit').AsString)='M' then + begin + FXS:='1'; + end else + begin + FXS:='0.9144'; + end; } + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + with Order_Sub do + begin + Edit; + FieldByName('PRTOrderQty').Value := mvalue; + Post; + end; + {with Order_Sub do + begin + Edit; + FieldByName('KgQty').Value:=Order_Sub.fieldbyname('PRTOrderQty').Value + *strtofloat(FXS)*strtofloat(FMF)*2.54/100*strtofloat(FKZ)/1000; + Post; + end; } + GetKgQty(); +end; + +procedure TfrmConInPut.v1OrderUnitPropertiesEditValueChanged(Sender: TObject); +var + mvalue: string; +begin + mvalue := TcxButtonEdit(Sender).EditingText; + with Order_Sub do + begin + Edit; + FieldByName('OrderUnit').Value := mvalue; + Post; + end; + GetKgQty(); + GetKgPrice(); +end; + +procedure TfrmConInPut.v1PRTPricePropertiesEditValueChanged(Sender: TObject); +var + mvalue: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := '0'; + end; + with Order_Sub do + begin + Edit; + FieldByName('PRTPrice').Value := mvalue; + Post; + end; + GetKgPrice(); +end; + +procedure TfrmConInPut.v1Column5PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZdyAttachCP := TfrmZdyAttachCP.Create(Application); + with frmZdyAttachCP do + begin + + if ShowModal = 1 then + begin + Order_Sub.Edit; + Order_Sub.fieldbyname('PRTCode').Value := Trim(CDS_HZ.fieldbyname('ZDYCode').AsString); + Order_Sub.fieldbyname('PRTCodeName').Value := Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + Order_Sub.fieldbyname('prtspec').Value := Trim(CDS_HZ.fieldbyname('DEFstr1').AsString); + Order_Sub.Post; + end; + end; + finally + frmZdyAttachCP.Free; + end; + tv1.Controller.EditingController.ShowEdit(); + InitCode(); +end; + +procedure TfrmConInPut.v1Column7PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'MPRTMF'; + flagname := 'ŷϢ'; + if ShowModal = 1 then + begin + Order_Sub.Edit; + Order_Sub.fieldbyname('PRTMF').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + // Order_Sub.fieldbyname('PRTCode').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + Order_Sub.Post; + end; + end; + finally + frmZDYHelp.Free; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmConInPut.v1Column8PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'MPRTKZ'; + flagname := 'Ϣ'; + if ShowModal = 1 then + begin + Order_Sub.Edit; + Order_Sub.fieldbyname('PRTKZ').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + // Order_Sub.fieldbyname('PRTCode').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + Order_Sub.Post; + end; + end; + finally + frmZDYHelp.Free; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmConInPut.FormCreate(Sender: TObject); +begin + cxgrid1.Align := alclient; +end; + +procedure TfrmConInPut.v1Column9PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZdyAttachCP := TfrmZdyAttachCP.Create(Application); + with frmZdyAttachCP do + begin + + if ShowModal = 1 then + begin + Order_Sub.Edit; + Order_Sub.fieldbyname('PRTCode').Value := Trim(CDS_HZ.fieldbyname('ZDYCode').AsString); + Order_Sub.fieldbyname('PRTCodeName').Value := Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + Order_Sub.fieldbyname('prtspec').Value := Trim(CDS_HZ.fieldbyname('DEFstr1').AsString); + Order_Sub.fieldbyname('prtmf').Value := Trim(CDS_HZ.fieldbyname('DEFstr7').AsString); + Order_Sub.fieldbyname('prtkz').Value := Trim(CDS_HZ.fieldbyname('DEFstr8').AsString); + if KHLevel.Text = 'ƴ' then + begin + Order_Sub.fieldbyname('PrtPrice').Value := CDS_HZ.fieldbyname('DZPrice').AsFloat; + end + else if KHLevel.Text = '' then + begin + if ((LeftStr((Order_Sub.fieldbyname('SOrddefstr5').AsString), 1) = 'A') or ((Order_Sub.fieldbyname('SOrddefstr5').AsString) = 'CXXL') or ((Order_Sub.fieldbyname('SOrddefstr5').AsString) = 'CXL')) then + begin + Order_Sub.fieldbyname('PrtPrice').Value := CDS_HZ.fieldbyname('SPrice').AsFloat; + end + else + begin + Order_Sub.fieldbyname('PrtPrice').Value := CDS_HZ.fieldbyname('SePrice').AsFloat; + end; + end + else if KHLevel.Text = '' then + begin + Order_Sub.fieldbyname('PrtPrice').Value := CDS_HZ.fieldbyname('TPrice').AsFloat; + end + else + begin + Order_Sub.fieldbyname('PrtPrice').Value := CDS_HZ.fieldbyname('FPrice').AsFloat; + end; + Order_Sub.Post; + end; + end; + finally + frmZdyAttachCP.Free; + end; + tv1.Controller.EditingController.ShowEdit(); + InitCode(); +end; + +procedure TfrmConInPut.v1Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + frmZdyCMZ_sel := TfrmZdyCMZ_sel.create(self); + with frmZdyCMZ_sel do + begin + if showmodal = 1 then + begin + with order_sub do + begin + Edit; + FieldByName('SOrdDefStr5').value := cdssub.fieldbyname('SizeSpec').AsString; + Post; + end; + end; + free; + end; + InitCode(); + if Trim(CustomerNoName.Text) <> '' then + begin + + with Order_Sub do + begin + First; + while not Eof do + begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + if PState = 1 then + begin + sql.Add(' select PRTPrice=(( case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')=''һ'' then (select fprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')='''' then '); + SQL.Add('case when ((left(''' + Order_Sub.FieldByName('SOrddefstr5').AsString + ''',1)=''A'' ) or (''' + Order_Sub.FieldByName('SOrddefstr5').AsString + '''=''CXXL'') or (''' + Order_Sub.FieldByName('SOrddefstr5').AsString + '''=''CXL'')) then (select Sprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else (select Seprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) end else'); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')='''' then (select Tprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add('(select DZprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) end end end ))'); + sql.Add('from JYOrderCon_Sub A '); + sql.Add(' inner join JYOrderCon_Main B on A.mainid=B.mainid '); + sql.Add('where A.MainId=''' + Trim(FMainId) + ''' and A.PRTCode=''' + Order_Sub.FieldByName('Prtcode').AsString + ''' '); + end; + if PState = 0 then + begin + sql.Add(' select PRTPrice=(( case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')=''ƴ'' then (select DZprice from KH_Zdy_Attachment X where X.zdycode=''' + Order_Sub.FieldByName('Prtcode').AsString + ''' ) else '); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')='''' then '); + SQL.Add('case when ((left(''' + Order_Sub.FieldByName('SOrdDefStr5').AsString + ''',1)=''A'' ) or (''' + Order_Sub.FieldByName('SOrddefstr5').AsString + '''=''CXXL'') or (''' + Order_Sub.FieldByName('SOrddefstr5').AsString + '''=''CXL'')) then (select Sprice from KH_Zdy_Attachment X where X.zdycode=''' + Order_Sub.FieldByName('Prtcode').AsString + ''' ) else (select Seprice from KH_Zdy_Attachment X where X.zdycode=''' + Order_Sub.FieldByName('Prtcode').AsString + ''' ) end else'); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')='''' then (select Tprice from KH_Zdy_Attachment X where X.zdycode=''' + Order_Sub.FieldByName('Prtcode').AsString + ''' ) else '); + sql.Add('(select fprice from KH_Zdy_Attachment X where X.zdycode=''' + Order_Sub.FieldByName('Prtcode').AsString + ''' ) end end end ))'); + sql.Add('from JYOrderCon_Sub A '); + sql.Add(' inner join JYOrderCon_Main B on A.mainid=B.mainid '); +// sql.Add('where A.PRTCode=''' + Order_Sub.FieldByName('Prtcode').AsString + ''' '); + end; +// ShowMessage(sql.text); + Open; + end; + + with ADOCmd do + begin + Order_Sub.Edit; + Order_Sub.fieldbyname('PrtPrice').Value := ADOQuery1.fieldbyname('PRTPrice').AsFloat; + Order_Sub.Post; + end; + + Next; + end; + end; + + tv1.Controller.EditingController.ShowEdit(); + end; +end; + +procedure TfrmConInPut.InitCode(); +var + FCode, FColor, FSize: string; +begin + FCode := Order_Sub.fieldbyname('PRTCode').AsString; + FColor := Order_Sub.fieldbyname('PRTColor').AsString; + FSize := Order_Sub.fieldbyname('SOrdDefStr5').AsString; + + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrderCon_Sub where PRTCode=''' + FCode + ''' '); + sql.Add('and PRTColor=''' + FColor + ''' '); + sql.Add('and SOrdDefStr5=''' + FSize + ''' '); + sql.Add('and isnull(barcode,'''')<>'''' '); + sql.Add('order by subid desc'); + open + end; + + if ADOTemp.IsEmpty = False then + begin + Order_Sub.Edit; + Order_Sub.fieldbyname('barcode').Value := ADOTemp.fieldbyname('barcode').AsString; + Order_Sub.Post; + end; +end; + +end. + diff --git a/艾登贸易管理/U_ConInPutJG.dfm b/艾登贸易管理/U_ConInPutJG.dfm new file mode 100644 index 0000000..043ae94 --- /dev/null +++ b/艾登贸易管理/U_ConInPutJG.dfm @@ -0,0 +1,1341 @@ +object frmConInPutJG: TfrmConInPutJG + Left = -8 + Top = -8 + Width = 1382 + Height = 754 + Caption = #23458#25143#21152#24037#21512#21516#24405#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1366 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 29 + Width = 1366 + Height = 304 + Align = alTop + BevelInner = bvNone + BevelOuter = bvNone + Color = clBtnFace + Ctl3D = False + ParentColor = False + ParentCtl3D = False + TabOrder = 1 + object Label3: TLabel + Left = 247 + Top = 42 + Width = 65 + Height = 12 + Caption = #21046#21333#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 675 + Top = 42 + Width = 65 + Height = 12 + Caption = #20132#36135#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 463 + Top = 42 + Width = 65 + Height = 12 + Caption = #31614#35746#22320#28857#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 463 + Top = 12 + Width = 66 + Height = 12 + Caption = #19994' '#21153' '#21592#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 26 + Top = 12 + Width = 66 + Height = 12 + Caption = #21512' '#21516' '#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 98 + Top = 334 + Width = 65 + Height = 12 + Caption = #20132#26399#35828#26126#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label14: TLabel + Left = 247 + Top = 12 + Width = 67 + Height = 12 + Caption = #23458' '#25143#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label20: TLabel + Left = 675 + Top = 12 + Width = 72 + Height = 12 + Caption = #20379#26041'/'#25260#22836#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 27 + Top = 310 + Width = 65 + Height = 12 + Caption = #20135#21697#21517#31216#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label6: TLabel + Left = 463 + Top = 71 + Width = 66 + Height = 12 + Caption = #28322' '#30701' '#35013#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 595 + Top = 364 + Width = 67 + Height = 12 + Caption = #38376' '#24133#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label13: TLabel + Left = 663 + Top = 332 + Width = 67 + Height = 12 + Caption = #20811' '#37325#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label15: TLabel + Left = 26 + Top = 132 + Width = 65 + Height = 12 + Caption = #20184#27454#26041#24335#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label1: TLabel + Left = 26 + Top = 101 + Width = 65 + Height = 12 + Caption = #20132#36135#26041#24335#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label17: TLabel + Left = 27 + Top = 162 + Width = 65 + Height = 12 + Caption = #20379#26041#22320#22336#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 27 + Top = 192 + Width = 65 + Height = 12 + Caption = #20379#26041#36134#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 247 + Top = 192 + Width = 78 + Height = 12 + Caption = #20379#26041#24320#25143#34892#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label21: TLabel + Left = 462 + Top = 190 + Width = 65 + Height = 12 + Caption = #23458#25143#22320#22336#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 462 + Top = 160 + Width = 65 + Height = 12 + Caption = #20379#26041#30005#35805#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label23: TLabel + Left = 675 + Top = 160 + Width = 65 + Height = 12 + Caption = #20379#26041#20256#30495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label25: TLabel + Left = 30 + Top = 379 + Width = 65 + Height = 12 + Caption = #25104#20221#32534#30721#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clTeal + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label26: TLabel + Left = 459 + Top = 398 + Width = 66 + Height = 12 + Caption = #21518' '#24037' '#33402#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clTeal + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label27: TLabel + Left = 249 + Top = 418 + Width = 65 + Height = 12 + Caption = #25253#20851#21517#31216#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label5: TLabel + Left = 26 + Top = 71 + Width = 65 + Height = 12 + Caption = #36136#37327#35201#27714#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label16: TLabel + Left = 247 + Top = 101 + Width = 104 + Height = 12 + Caption = #36816#36755#26041#24335#21450#36153#29992#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label28: TLabel + Left = 463 + Top = 101 + Width = 65 + Height = 12 + Caption = #39564#25910#26631#20934#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label29: TLabel + Left = 463 + Top = 132 + Width = 65 + Height = 12 + Caption = #20854#20182#20107#39033#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label22: TLabel + Left = 27 + Top = 222 + Width = 65 + Height = 12 + Caption = #23458#25143#30005#35805#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label24: TLabel + Left = 247 + Top = 222 + Width = 65 + Height = 12 + Caption = #23458#25143#20256#30495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label30: TLabel + Left = 34 + Top = 332 + Width = 65 + Height = 12 + Caption = #35268#26684#22411#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label31: TLabel + Left = 27 + Top = 250 + Width = 67 + Height = 12 + Caption = #22791' '#27880#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label32: TLabel + Left = 30 + Top = 349 + Width = 65 + Height = 12 + Caption = #31169#20154#36134#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label33: TLabel + Left = 30 + Top = 410 + Width = 59 + Height = 12 + Caption = #25104#20221'%'#27604#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label34: TLabel + Left = 26 + Top = 39 + Width = 78 + Height = 12 + Caption = #23458#25143#21512#21516#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label35: TLabel + Left = 463 + Top = 222 + Width = 65 + Height = 12 + Caption = #23458#25143#36134#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label36: TLabel + Left = 675 + Top = 218 + Width = 78 + Height = 12 + Caption = #23458#25143#24320#25143#34892#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label37: TLabel + Left = 27 + Top = 278 + Width = 65 + Height = 12 + Caption = #23458#25143#31616#31216#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label38: TLabel + Left = 247 + Top = 274 + Width = 65 + Height = 12 + Caption = #26159#21542#21547#31246#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object OrdDate: TDateTimePicker + Tag = 2 + Left = 310 + Top = 38 + Width = 140 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + TabOrder = 0 + end + object DlyDate: TDateTimePicker + Tag = 2 + Left = 738 + Top = 38 + Width = 138 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 1 + end + object ConPerson1: TEdit + Tag = 2 + Left = 526 + Top = 9 + Width = 136 + Height = 18 + TabOrder = 2 + end + object ConNo: TEdit + Tag = 2 + Left = 97 + Top = 9 + Width = 136 + Height = 18 + Enabled = False + TabOrder = 3 + Text = #33258#21160#29983#25104 + end + object FromPlace: TBtnEditC + Tag = 2 + Left = 526 + Top = 38 + Width = 140 + Height = 20 + Hint = 'QianDPlace/'#31614#35746#22320#28857 + ReadOnly = True + TabOrder = 4 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object CustomerNoName: TBtnEditC + Tag = 2 + Left = 310 + Top = 8 + Width = 140 + Height = 20 + Hint = 'CustomerNo' + ReadOnly = True + TabOrder = 5 + OnBtnUpClick = CustomerNoNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object SYRName: TBtnEditC + Tag = 2 + Left = 737 + Top = 8 + Width = 136 + Height = 20 + Hint = 'SYRName/'#20379#26041 + TabOrder = 6 + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTCodeName: TBtnEditC + Tag = 2 + Left = 93 + Top = 430 + Width = 136 + Height = 20 + Hint = 'MPRTCode' + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 7 + Visible = False + OnBtnUpClick = MPRTCodeNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object QtyNote: TBtnEditC + Tag = 2 + Left = 526 + Top = 67 + Width = 347 + Height = 20 + Hint = 'QtyNoteZW/'#28322#30701#35013 + TabOrder = 8 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTMF: TBtnEditC + Tag = 2 + Left = 666 + Top = 360 + Width = 136 + Height = 20 + Hint = 'MPRTMF/'#38376#24133 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 9 + Visible = False + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTKZ: TBtnEditC + Tag = 2 + Left = 725 + Top = 328 + Width = 136 + Height = 20 + Hint = 'MPRTKZ/'#20811#37325 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 10 + Visible = False + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object Payment: TBtnEditC + Tag = 2 + Left = 97 + Top = 128 + Width = 351 + Height = 20 + Hint = 'PaymentZW/'#20184#27454#26041#24335 + TabOrder = 11 + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object ShippMent: TBtnEditC + Tag = 2 + Left = 97 + Top = 97 + Width = 136 + Height = 20 + Hint = 'ShippMentZW/'#36816#36755#26041#24335 + TabOrder = 12 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object BankNo: TBtnEditC + Tag = 2 + Left = 98 + Top = 188 + Width = 136 + Height = 20 + Hint = 'BankNo/'#38134#34892#36134#21495 + TabOrder = 13 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object SYRAddress: TEdit + Tag = 2 + Left = 98 + Top = 159 + Width = 347 + Height = 18 + TabOrder = 14 + end + object BankName: TEdit + Tag = 2 + Left = 309 + Top = 189 + Width = 136 + Height = 18 + TabOrder = 15 + end + object CTMAddress: TEdit + Tag = 2 + Left = 525 + Top = 187 + Width = 351 + Height = 18 + TabOrder = 16 + end + object TelNo: TEdit + Tag = 2 + Left = 525 + Top = 157 + Width = 136 + Height = 18 + TabOrder = 17 + end + object FaxNo: TEdit + Tag = 2 + Left = 738 + Top = 157 + Width = 138 + Height = 18 + TabOrder = 18 + end + object DlyNote: TBtnEditC + Tag = 2 + Left = 157 + Top = 330 + Width = 256 + Height = 20 + Hint = 'DlyNoteZW/'#20132#26399#35828#26126 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 19 + Visible = False + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object CPTanLi: TCheckBox + Left = 241 + Top = 396 + Width = 58 + Height = 17 + Caption = #24377' '#21147 + Font.Charset = GB2312_CHARSET + Font.Color = clTeal + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 20 + Visible = False + OnClick = CPTanLiClick + end + object CPRanYin: TRadioGroup + Left = 308 + Top = 370 + Width = 140 + Height = 38 + Columns = 3 + Font.Charset = GB2312_CHARSET + Font.Color = clTeal + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ItemIndex = 0 + Items.Strings = ( + #26579#33394 + #21360#33457 + #26080) + ParentFont = False + TabOrder = 21 + Visible = False + OnClick = CPRanYinClick + end + object CPRanHouGY: TBtnEditC + Tag = 2 + Left = 522 + Top = 394 + Width = 136 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 22 + Visible = False + OnChange = CPRanHouGYChange + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = CPRanHouGYBtnUpClick + OnBtnDnClick = CPRanHouGYBtnDnClick + end + object CPType: TRadioGroup + Left = 682 + Top = 382 + Width = 195 + Height = 38 + Columns = 2 + Font.Charset = GB2312_CHARSET + Font.Color = clTeal + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ItemIndex = 0 + Items.Strings = ( + #38024#32455#24067 + #26797#32455#24067) + ParentFont = False + TabOrder = 23 + Visible = False + OnClick = CPTypeClick + end + object CPZHName: TEdit + Tag = 2 + Left = 312 + Top = 415 + Width = 357 + Height = 18 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 24 + Visible = False + end + object CPCFNo: TEdit + Tag = 2 + Left = 93 + Top = 375 + Width = 136 + Height = 18 + CharCase = ecUpperCase + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 25 + Visible = False + OnChange = CPCFNoChange + OnDblClick = CPCFNoDblClick + OnKeyPress = CPCFNoKeyPress + end + object ZhiLiangNote: TBtnEditC + Tag = 2 + Left = 97 + Top = 67 + Width = 353 + Height = 20 + Hint = 'ZhiLiangNote/'#36136#37327#35201#27714 + TabOrder = 26 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object ChuanYangNote: TBtnEditC + Tag = 2 + Left = 348 + Top = 97 + Width = 101 + Height = 20 + Hint = 'ChuanYangNote/'#36816#36755#26041#24335 + TabOrder = 27 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object YSBiaoZhunNote: TBtnEditC + Tag = 2 + Left = 526 + Top = 97 + Width = 347 + Height = 20 + Hint = 'YSBiaoZhunNote/'#39564#25910#26631#20934 + TabOrder = 28 + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object OtherNote: TBtnEditC + Tag = 2 + Left = 526 + Top = 128 + Width = 347 + Height = 20 + Hint = 'OtherNote/'#20854#20182#20107#39033 + TabOrder = 29 + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object CTMTelNo: TEdit + Tag = 2 + Left = 98 + Top = 218 + Width = 136 + Height = 18 + TabOrder = 30 + end + object CTMFaxNo: TEdit + Tag = 2 + Left = 309 + Top = 218 + Width = 136 + Height = 18 + TabOrder = 31 + end + object MPRTSpec: TBtnEditC + Tag = 2 + Left = 349 + Top = 316 + Width = 353 + Height = 20 + Hint = 'MPRTSpecNX/'#35268#26684#22411#21495 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 32 + Visible = False + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object Note: TBtnEditC + Tag = 2 + Left = 98 + Top = 246 + Width = 779 + Height = 20 + Hint = 'ConNote/'#22791#27880 + TabOrder = 33 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object SelfBankNo: TBtnEditC + Tag = 2 + Left = 201 + Top = 354 + Width = 352 + Height = 20 + Hint = 'SelfBankNo/'#31169#20154#36134#21495 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 34 + Visible = False + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object CPCFBi: TEdit + Tag = 2 + Left = 93 + Top = 407 + Width = 136 + Height = 18 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 35 + Visible = False + end + object KHConNo: TEdit + Tag = 2 + Left = 97 + Top = 36 + Width = 136 + Height = 18 + TabOrder = 36 + end + object CTMBankNo: TBtnEditC + Tag = 2 + Left = 526 + Top = 218 + Width = 136 + Height = 20 + Hint = 'CTMBankNo/'#38134#34892#36134#21495 + TabOrder = 37 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object CTMBankName: TEdit + Tag = 2 + Left = 741 + Top = 214 + Width = 136 + Height = 18 + TabOrder = 38 + end + object condefstr10: TEdit + Tag = 2 + Left = 98 + Top = 272 + Width = 137 + Height = 18 + Enabled = False + TabOrder = 39 + end + object istax: TComboBox + Left = 309 + Top = 272 + Width = 136 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 40 + Items.Strings = ( + #26410#21547#31246 + #21547#31246) + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 333 + Width = 1366 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 2 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #19968#38190#26367#25442 + ImageIndex = 104 + OnClick = ToolButton3Click + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 362 + Width = 1366 + Height = 211 + Align = alTop + TabOrder = 3 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + Column = v1PRTOrderQty + end + item + Format = '0' + Position = spFooter + Column = v1PRTPrice + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1XHNo: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'XHNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 35 + end + object v1Column8: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'PrtCode' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column8PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column4: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'PrtCodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column4PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 126 + end + object v1Column5: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'prtspec' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = False + Properties.OnButtonClick = v1PRTColorPropertiesButtonClick + Visible = False + HeaderAlignmentHorz = taCenter + Hidden = True + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 90 + end + object v1Column1: TcxGridDBColumn + Caption = #39068#33394#33521#25991 + DataBinding.FieldName = 'SOrdDefStr4' + Visible = False + HeaderAlignmentHorz = taCenter + Hidden = True + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1Column6: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'prtmf' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column6PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column7: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'prtkz' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column7PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column3: TcxGridDBColumn + Caption = #33457#22411#33457#21495 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FonePurple + Width = 59 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1OrderUnitPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 66 + end + object v1PRTPrice: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PRTPrice' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 68 + end + object v1Column9: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'huilv' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1PriceUnit: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1PriceUnitPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 66 + end + object v1Column2: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'SOrdDefNote1' + HeaderAlignmentHorz = taCenter + Width = 113 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 1008 + Top = 181 + end + object ADOCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 1008 + Top = 141 + end + object DataSource1: TDataSource + DataSet = Order_Sub + Left = 1016 + Top = 368 + end + object Order_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 680 + Top = 404 + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 1016 + Top = 125 + end + object CDS_Type: TClientDataSet + Aggregates = <> + Params = <> + Left = 512 + Top = 488 + end +end diff --git a/艾登贸易管理/U_ConInPutJG.pas b/艾登贸易管理/U_ConInPutJG.pas new file mode 100644 index 0000000..9df7b5f --- /dev/null +++ b/艾登贸易管理/U_ConInPutJG.pas @@ -0,0 +1,1420 @@ +unit U_ConInPutJG; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer, + cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB, + ExtCtrls, BtnEdit, cxCalendar,StrUtils; + +type + TfrmConInPutJG = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ScrollBox1: TScrollBox; + Label3: TLabel; + OrdDate: TDateTimePicker; + Label4: TLabel; + DlyDate: TDateTimePicker; + Label7: TLabel; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + v1PRTColor: TcxGridDBColumn; + v1PRTPrice: TcxGridDBColumn; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + DataSource1: TDataSource; + Order_Sub: TClientDataSet; + ADOQuery1: TADOQuery; + v1PRTOrderQty: TcxGridDBColumn; + Label9: TLabel; + ConPerson1: TEdit; + Label10: TLabel; + ConNo: TEdit; + Label11: TLabel; + Label14: TLabel; + Label20: TLabel; + FromPlace: TBtnEditC; + CustomerNoName: TBtnEditC; + v1XHNo: TcxGridDBColumn; + SYRName: TBtnEditC; + v1OrderUnit: TcxGridDBColumn; + v1PriceUnit: TcxGridDBColumn; + Label2: TLabel; + MPRTCodeName: TBtnEditC; + Label6: TLabel; + QtyNote: TBtnEditC; + Label12: TLabel; + MPRTMF: TBtnEditC; + Label13: TLabel; + MPRTKZ: TBtnEditC; + Label15: TLabel; + Payment: TBtnEditC; + Label1: TLabel; + ShippMent: TBtnEditC; + Label17: TLabel; + Label18: TLabel; + BankNo: TBtnEditC; + SYRAddress: TEdit; + Label19: TLabel; + BankName: TEdit; + Label21: TLabel; + CTMAddress: TEdit; + ToolButton3: TToolButton; + v1Column1: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + Label8: TLabel; + TelNo: TEdit; + Label23: TLabel; + FaxNo: TEdit; + DlyNote: TBtnEditC; + Label25: TLabel; + CPTanLi: TCheckBox; + CPRanYin: TRadioGroup; + Label26: TLabel; + CPRanHouGY: TBtnEditC; + CPType: TRadioGroup; + Label27: TLabel; + CPZHName: TEdit; + CDS_Type: TClientDataSet; + CPCFNo: TEdit; + Label5: TLabel; + ZhiLiangNote: TBtnEditC; + Label16: TLabel; + ChuanYangNote: TBtnEditC; + Label28: TLabel; + YSBiaoZhunNote: TBtnEditC; + Label29: TLabel; + OtherNote: TBtnEditC; + Label22: TLabel; + Label24: TLabel; + CTMTelNo: TEdit; + CTMFaxNo: TEdit; + Label30: TLabel; + MPRTSpec: TBtnEditC; + Label31: TLabel; + Note: TBtnEditC; + Label32: TLabel; + SelfBankNo: TBtnEditC; + Label33: TLabel; + CPCFBi: TEdit; + Label34: TLabel; + KHConNo: TEdit; + Label35: TLabel; + CTMBankNo: TBtnEditC; + Label36: TLabel; + CTMBankName: TEdit; + v1Column2: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + Label37: TLabel; + condefstr10: TEdit; + v1Column8: TcxGridDBColumn; + Label38: TLabel; + istax: TComboBox; + v1Column9: TcxGridDBColumn; + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure CustomerNoNameBtnUpClick(Sender: TObject); + procedure CustomerNoNameBtnDnClick(Sender: TObject); + procedure v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure MPRTCodeNameBtnUpClick(Sender: TObject); + procedure v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PriceUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure SYRNameBtnUpClick(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure CPCFNoDblClick(Sender: TObject); + procedure CPCFNoKeyPress(Sender: TObject; var Key: Char); + procedure CPRanHouGYBtnUpClick(Sender: TObject); + procedure CPTanLiClick(Sender: TObject); + procedure CPRanYinClick(Sender: TObject); + procedure CPTypeClick(Sender: TObject); + procedure CPRanHouGYBtnDnClick(Sender: TObject); + procedure CPRanHouGYChange(Sender: TObject); + procedure CPCFNoChange(Sender: TObject); + procedure v1Column4PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column8PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + private + fuserName:string; + procedure InitData(); + procedure ZDYHelp(FButn:TcxButtonEdit;LType:string); + function SaveData():Boolean; + function SaveDataSubOne():Boolean; + function SaveDataMain():Boolean; + function SaveDataSubMore():Boolean; + procedure GetName(); + { Private declarations } + public + PState,CopyInt:Integer; + FMainId,FFMainId:String; + FXS:Integer; + { Public declarations } + end; + +var + frmConInPutJG: TfrmConInPutJG; + newh:hwnd; +implementation +uses + U_DataLink,U_ZDYHelp,U_Fun,U_ZDYHelpSel, U_ZdyAttachment, U_ZdyAttachCP; + +{$R *.dfm} + +procedure TfrmConInPutJG.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ͬ¼ӹ',Tv1,'ָʾ'); +end; + +procedure TfrmConInPutJG.InitData(); +begin + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from KH_Zdy where Type=''MPRTNameType'' '); + Open; + end; + SCreateCDS20(ADOQuery1,CDS_Type); + SInitCDSData20(ADOQuery1,CDS_Type); + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add(' select * from JYOrderCon_Sub '); + if PState=1 then + begin + sql.Add('where MainId='''+Trim(FMainId)+''''); + end; + if PState=0 then + begin + sql.Add(' where 1<>1'); + end; + Open; + end; + SCreateCDS20(ADOQuery1,Order_Sub); + SInitCDSData20(ADOQuery1,Order_Sub); + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrderCon_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + SCSHDataNew(ADOQuery1,ScrollBox1,2); + if Trim(ADOQuery1.fieldbyname('CPTanLi').AsString)='' then + begin + CPTanLi.Checked:=True; + end else + begin + CPTanLi.Checked:=False; + end; + + if Trim(ADOQuery1.fieldbyname('CPRanYin').AsString)='Ⱦɫ' then + begin + CPRanYin.ItemIndex:=0; + end else + if Trim(ADOQuery1.fieldbyname('CPRanYin').AsString)='ӡ' then + begin + CPRanYin.ItemIndex:=1; + end else + begin + CPRanYin.ItemIndex:=2; + end; + IF not ADOQuery1.IsEmpty then + begin + istax.ItemIndex:=0; + IF ADOQuery1.fieldbyname('istax').AsBoolean then + istax.ItemIndex:=1; + end; + + if Trim(ADOQuery1.fieldbyname('CPType').AsString)='֯' then + begin + CPType.ItemIndex:=0; + end else + if Trim(ADOQuery1.fieldbyname('CPType').AsString)='֯' then + begin + CPType.ItemIndex:=1; + end; + CPZHName.Text:=Trim(ADOQuery1.fieldbyname('CPZHName').AsString); + SYRName.TxtCode:=Trim(ADOQuery1.fieldbyname('ConDefStr2').AsString); + if PState=0 then + begin + OrdDate.DateTime:=SGetServerDateTime(ADOTemp); + DlyDate.DateTime:=SGetServerDateTime(ADOTemp)+10; + ConPerson1.Text:=Trim(DName); + FromPlace.Text:=''; + CPZHName.Text:=''; + ConNo.Text:='Զ'; + ShippMent.Text:=''; + Payment.Text:=''; + QtyNote.Text:='+-3%'; + SYRName.Text:='س֯޹˾'; + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrderCon_Main where SyrName='''+Trim(SYRName.Text)+''''); + sql.Add(' and MPRTTYpe=''ӹ'' '); + sql.Add(' order by FillTime desc'); + Open; + Self.SYRAddress.Text:=Trim(ADOTemp.fieldbyname('SYRAddress').AsString); + Self.TelNo.Text:=Trim(ADOTemp.fieldbyname('TelNo').AsString); + Self.FaxNo.Text:=Trim(ADOTemp.fieldbyname('FaxNo').AsString); + Self.bankNo.Text:=Trim(ADOTemp.fieldbyname('bankNo').AsString); + Self.bankName.Text:=Trim(ADOTemp.fieldbyname('bankName').AsString); + end; + end + else + begin + end; + if CopyInt=99 then + begin + PState:=0; + FMainId:=''; + ConPerson1.Text:=Trim(DName); + ConNo.Text:='Զ'; + SYRName.Text:='س֯޹˾'; + with Order_Sub do + begin + First; + while not Eof do + begin + Edit; + FieldByName('MainId').Value:=''; + FieldByName('SubId').Value:=''; + Post; + Next; + end; + end; + end; +end; + +procedure TfrmConInPutJG.ZDYHelp(FButn:TcxButtonEdit;LType:string); +var + FType,ZDYName,FText:String; +begin +end; + +procedure TfrmConInPutJG.FormShow(Sender: TObject); +begin + + cxGrid1.Align:=alclient; + fuserName:=DCode; + if (trim(DCode)='A1') or (trim(DCode)='A2') then + begin + fuserName:='A'; + end; + readCxGrid('ͬ¼ӹ',Tv1,'ָʾ'); + InitData(); +end; + +function TfrmConInPutJG.SaveData():Boolean; +var + maxno:String; + fconNO,fmxType:string; +begin + try + + /// + if Trim(FMainId)='' then + begin + if GetLSNo(ADOTemp,maxno,'JN','JYOrderCon_Main',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + if GetLSNo(ADOTemp,fconNO,'CF','JYOrderCon_Main',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + ConNo.Text:=uppercase(fconNO); + end else + begin + maxno:=Trim(FMainId); + end; + ADOCmd.Connection.BeginTrans; + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from JYOrderCon_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMainId)='' then + begin + Append; + end + else begin + Edit; + end; + FieldByName('MainId').Value:=Trim(maxno); + SSetsaveSqlNew(ADOCmd,'JYOrderCon_Main',ScrollBox1,2); + if CPTanLi.Checked=True then + begin + FieldByName('CPTanLi').Value:=''; + end else + begin + FieldByName('CPTanLi').Value:='޵'; + end; + + if CPRanYin.ItemIndex=0 then + begin + FieldByName('CPRanYin').Value:='Ⱦɫ'; + end else + if CPRanYin.ItemIndex=1 then + begin + FieldByName('CPRanYin').Value:='ӡ' + end else if CPRanYin.ItemIndex=0 then + begin + FieldByName('CPRanYin').Value:=''; + end; + + if CPType.ItemIndex=0 then + begin + FieldByName('CPType').Value:='֯'; + end else + if CPType.ItemIndex=1 then + begin + FieldByName('CPType').Value:='֯'; + end; + FieldByName('ConDefStr2').Value:=Trim(SYRName.TxtCode); + if Trim(FMainId)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + IF trim(istax.Text)='˰' then + FieldByName('istax').Value:=1 + else + FieldByName('istax').Value:=0; + FieldByName('MPRTType').Value:='ӹ'; + Post; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrderCon_Main where ConNo='''+Trim(ConNo.Text)+''''); + Open; + end; + if ADOCmd.RecordCount>1 then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ͬظ!','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrderCon_Main Set Filler='''+Trim(DName)+''''); + sql.Add(' where MainId='''+Trim(FMainId)+''''); + ExecSQL; + end; + FMainId:=Trim(maxno); + ///ӱ + + with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'JJG','JYOrderCon_Sub',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrderCon_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add(' and SubId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + RTSetSaveDataCDS(ADOCmd,Tv1,Order_Sub,'JYOrderCon_Sub',0); + if Trim(fieldbyname('PRTOrderQty').AsString)='' then + begin + fieldbyname('PRTOrderQty').Value:=0 + end; + if Trim(fieldbyname('PRTPrice').AsString)='' then + begin + fieldbyname('PRTPrice').Value:=0 + end; + fieldbyname('huilv').Value:=Order_Sub.fieldbyname('huilv').AsFloat; + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + + with ADOQuery1 do + begin + close; + sql.Clear; + sql.Add('select PrtCode,COUNT(distinct PrtPrice) as PrtPrice '); + sql.Add('from JYOrdercon_sub A '); + sql.Add('where MainID='''+trim(FMainId)+''' '); + sql.Add('group by PrtCode '); + sql.Add('having COUNT(distinct PrtPrice)>1 '); + open; + end; + IF not ADOQuery1.IsEmpty then + begin + ADOCmd.Connection.RollbackTrans; + application.MessageBox('ͬƷŴڲۣܱͬ棡','ʾϢ',MB_ICONERROR); + exit; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + Result:=False; + end; +end; +function TfrmConInPutJG.SaveDataMain():Boolean; +var + maxno:String; +begin + try + ADOCmd.Connection.BeginTrans; + /// + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from JYOrder_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMainId)='' then + begin + Append; + maxno:=Trim(FFMainId); + end + else begin + maxno:=Trim(FMainId); + Edit; + end; + FieldByName('MainId').Value:=Trim(maxno); + SSetsaveSqlNew(ADOCmd,'JYOrder_Main',ScrollBox1,2); + if PState=1 then + begin + FieldByName('OrdUpDate').Value:=SGetServerDateTime(ADOTemp); + end; + if Trim(FMainId)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + Post; + end; + FMainId:=Trim(maxno); + ADOCmd.Connection.CommitTrans; + Result:=True; + except + + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + Result:=False; + end; +end; +function TfrmConInPutJG.SaveDataSubOne():Boolean; +var + maxno:String; +begin + try + ADOCmd.Connection.BeginTrans; + ///ӱ + with Order_Sub do + begin + //First; + //while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'JS','JYOrder_Sub',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add(' and SubId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + RTSetSaveDataCDS(ADOCmd,Tv1,Order_Sub,'JYOrder_Sub',0); + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxno); + //Order_Sub.Post; + //Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; +function TfrmConInPutJG.SaveDataSubMore():Boolean; +var + maxno:String; +begin + try + ADOCmd.Connection.BeginTrans; + ///ӱ + with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'JS','JYOrder_Sub',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add(' and SubId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + RTSetSaveDataCDS(ADOCmd,Tv1,Order_Sub,'JYOrder_Sub',0); + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +procedure TfrmConInPutJG.TBSaveClick(Sender: TObject); +begin + OrdDate.SetFocus; + if Trim(ConNo.Text)='' then + begin + Application.MessageBox('ͬŲΪգ','ʾ',0); + Exit; + end; + if Trim(condefstr10.Text)='' then + begin + Application.MessageBox('ͻƲΪգ','ʾ',0); + Exit; + end; + IF trim(istax.Text)='' then + begin + Application.MessageBox('Ƿ˰Ϊգ','ʾ',0); + Exit; + end; + IF Order_Sub.IsEmpty then + begin + Application.MessageBox('ϸϢΪգ','ʾ',0); + Exit; + end; + + with Order_Sub do + begin + first; + while not eof do + begin + IF Order_Sub.FieldByName('PRTOrderQty').AsFloat=0 then + begin + application.MessageBox('Ϊջ㣡','ʾϢ',MB_ICONERROR); + exit; + end; + IF Order_Sub.FieldByName('PRTPrice').AsFloat=0 then + begin + application.MessageBox('۲Ϊջ㣡','ʾϢ',MB_ICONERROR); + exit; + end; + next; + end; + first; + end; + + if SaveData() then + begin + Application.MessageBox('ɹ','ʾ',0); + end; +end; + +procedure TfrmConInPutJG.v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdColor'; + flagname:='ɫ'; + V1Name.Caption:=''; + V1Note.Caption:='Ӣ'; + fnote:=True; + // MainType:=Trim(DName); + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PRTColor').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + Self.Order_Sub.FieldByName('SOrdDefStr4').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmConInPutJG.ToolButton1Click(Sender: TObject); +var + i:Integer; +begin + if Trim(ConNo.Text)='' then + begin + Application.MessageBox('ͬŲΪ!','ʾ',0); + Exit; + end; + i:=Order_Sub.RecordCount; + i:=i+1; + CopyAddRow(Tv1,Order_Sub); + with Order_Sub do + begin + Edit; + FieldByName('XHNO').Value:=IntToStr(i); + FieldByName('PRTColor').Value:=''; + FieldByName('PRTOrderQty').Value:=null; + FieldByName('OrderUnit').Value:='M'; + FieldByName('PriceUnit').Value:='RMB'; + FieldByName('huilv').Value:=1; + // FieldByName('PRTPrice').Value:=null; + FieldByName('SOrddefstr4').Value:=null; + //FieldByName('SOrddefstr2').Value:=null; + Post; + end; +end; + +procedure TfrmConInPutJG.ToolButton2Click(Sender: TObject); +begin + if Order_Sub.IsEmpty then Exit; + if Trim(Order_Sub.fieldbyname('SubId').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrderCon_Sub where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; + Order_Sub.Delete; + { if Order_Sub.IsEmpty then + begin + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(FMainId)+''''); + ExecSQL; + end; + end; } +end; + +procedure TfrmConInPutJG.CustomerNoNameBtnUpClick(Sender: TObject); +begin + { try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CustomerNoNameNX'; + flagname:='ͻ'; + if Trim(DParameters1)<>'Ȩ' then + MainType:=Trim(DName); + V1Note.Caption:=''; + fnote:=true; + if ShowModal=1 then + begin + CustomerNoName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + CustomerNoName.TxtCode:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + condefstr10.Text:=Trim(ClientDataSet1.fieldbyname('note').AsString); + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrderCon_Main where CustomerNoName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + sql.Add(' order by FillTime desc'); + Open; + Self.CTMAddress.Text:=Trim(ADOTemp.fieldbyname('CTMAddress').AsString); + Self.CTMTelNo.Text:=Trim(ADOTemp.fieldbyname('CTMTelNo').AsString); + Self.CTMFaxNo.Text:=Trim(ADOTemp.fieldbyname('CTMFaxNo').AsString); + Self.CTMbankNo.Text:=Trim(ADOTemp.fieldbyname('CTMbankNo').AsString); + Self.CTMbankName.Text:=Trim(ADOTemp.fieldbyname('CTMbankName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end;} + + try + frmZdyAttachment:=TfrmZdyAttachment.Create(Application); + with frmZdyAttachment do + begin + fkhType:=''; + if ShowModal=1 then + begin + CustomerNoName.Text:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + CustomerNoName.TxtCode:=Trim(CDS_HZ.fieldbyname('ZDYCode').AsString); + condefstr10.Text:=Trim(CDS_HZ.fieldbyname('ZDYNameZ').AsString); + Self.CTMAddress.Text:=Trim(CDS_HZ.fieldbyname('DEFNote2').AsString); + Self.CTMTelNo.Text:=Trim(CDS_HZ.fieldbyname('DEFstr1').AsString); + Self.CTMFaxNo.Text:=Trim(CDS_HZ.fieldbyname('DEFstr3').AsString); + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrderCon_Main where CustomerNoName='''+Trim(CDS_HZ.fieldbyname('ZdyName').AsString)+''''); + sql.Add(' order by FillTime desc'); + Open; + Self.CTMbankNo.Text:=Trim(ADOTemp.fieldbyname('CTMbankNo').AsString); + Self.CTMbankName.Text:=Trim(ADOTemp.fieldbyname('CTMbankName').AsString); + end; + end; + end; + finally + frmZdyAttachment.Free; + end; +end; + +procedure TfrmConInPutJG.CustomerNoNameBtnDnClick(Sender: TObject); +begin + TBtnEditC(Sender).Text:=''; + TBtnEditC(Sender).TxtCode:=''; +end; + +procedure TfrmConInPutJG.v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +type + TMyFunc = function(App:Tapplication; FormH:hwnd; FormID:integer; + Language: integer; WinStyle:integer; + GCode: Pchar; GName: Pchar; DataBase:Pchar;Title:PChar; + Parameters1:PChar;Parameters2:PChar;Parameters3:PChar;Parameters4:PChar; + Parameters5:PChar;Parameters6:PChar;Parameters7:PChar;Parameters8:PChar; + Parameters9:PChar;Parameters10:PChar;DataBaseStr:PChar):hwnd;stdcall; +var + Tf: TMyFunc; + Tp: TFarProc; + Th:Thandle; + LabInt,labname:String; +begin + //if PPInt=2 then Exit; + Ddatabase:=StringOfChar(' ', 32); + Th := LoadLibrary('LabelSet.dll'); + if Th > 0 then + begin + try + Tp := GetProcAddress(Th, 'GetDllForm'); + if Tp <> nil then + begin + Tf := TMyFunc(Tp); + newh:=Tf(Application,0,2,0,0, + PChar(DCode), + PChar(DName), + PChar(Ddatabase), + PChar('ǩģ'), + PChar(''), + PChar(''), + '','','','','','','','',PChar(DConString) + ); + if Trim(PChar(Ddatabase))<>'' then + begin + Ddatabase:=Trim(PChar(Ddatabase)); + LabInt:=Trim( LeftBStr(Ddatabase,Pos('|',Ddatabase)-1) ) ; + labname:=Trim(RightBStr(Ddatabase,Length(Ddatabase)-Pos('|',Ddatabase) ) ); + with Order_Sub do + begin + Edit; + FieldByName('SLbName').Value:=labname; + FieldByName('SLbInt').Value:=LabInt; + end; + end; + end + else + begin + ShowMessage('ӡִд'); + end; + finally + // FreeLibrary(); + end; + end + else + begin + ShowMessage('Ҳ'+Trim('LabelSet.dll')); + end; + +end; + +procedure TfrmConInPutJG.MPRTCodeNameBtnUpClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTCodeNameNX'; + flagname:='Ʒ'; + if ShowModal=1 then + begin + MPRTCodeName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + MPRTCodeName.TxtCode:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmConInPutJG.v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('OrderUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmConInPutJG.v1PriceUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PriceUnit'; + flagname:='۸λ'; + if Trim(DParameters1)<>'Ȩ' then + begin + TBAdd.Visible:=False; + TBEdit.Visible:=False; + TBDel.Visible:=False; + end; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PriceUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmConInPutJG.SYRNameBtnUpClick(Sender: TObject); +var + fsj:string; + FWZ:Integer; +begin + fsj:=Trim(TEdit(Sender).Hint); + FWZ:=Pos('/',fsj); + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Copy(fsj,1,FWZ-1); + flagname:=Copy(fsj,FWZ+1,Length(fsj)-fwz); + if Trim(flag)='SYRName' then + begin + flag:='OrdDefStr2'; + V1Name.Caption:=''; + V1Note.Caption:='Ӣ'; + fnote:=True; + { if Trim(DParameters1)<>'Ȩ' then + begin + TBAdd.Visible:=False; + TBEdit.Visible:=false; + TBDel.Visible:=false; + TBSave.Visible:=false; + end; } + end; + if Trim(flag)='BankNo' then + begin + { if Trim(DParameters1)<>'Ȩ' then + begin + TBAdd.Visible:=False; + TBEdit.Visible:=false; + TBDel.Visible:=false; + TBSave.Visible:=false; + end; } + fnote:=True; + end; + + if ShowModal=1 then + begin + if Trim(flag)<>'OrdDefStr2' then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + if Trim(flag)='BankNo' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrderCon_Main where BankNo='''+Trim(ClientDataSet1.fieldbyname('ZDYName').AsString)+''''); + sql.Add(' and MPRTTYpe=''ӹ'' '); + sql.Add(' order by FillTime desc'); + Open; + //// Self.SYRAddress.Text:=Trim(ADOTemp.fieldbyname('SYRAddress').AsString); + // Self.TelNo.Text:=Trim(ADOTemp.fieldbyname('TelNo').AsString); + // Self.FaxNo.Text:=Trim(ADOTemp.fieldbyname('FaxNo').AsString); + // Self.bankNo.Text:=Trim(ADOTemp.fieldbyname('bankNo').AsString); + Self.bankName.Text:=Trim(ADOTemp.fieldbyname('bankName').AsString); + //Self.BankAddress.Text:=Trim(ADOTemp.fieldbyname('BankAddress').AsString); + //Self.BankFastNo.Text:=Trim(ADOTemp.fieldbyname('BankFastNo').AsString); + end; + end; + end + else + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + //SYRName.TxtCode:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrderCon_Main where SYRName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + sql.Add(' and MPRTTYpe=''ӹ'' '); + sql.Add(' order by FillTime desc'); + Open; + Self.SYRAddress.Text:=Trim(ADOTemp.fieldbyname('SYRAddress').AsString); + Self.TelNo.Text:=Trim(ADOTemp.fieldbyname('TelNo').AsString); + Self.FaxNo.Text:=Trim(ADOTemp.fieldbyname('FaxNo').AsString); + Self.bankNo.Text:=Trim(ADOTemp.fieldbyname('bankNo').AsString); + Self.bankName.Text:=Trim(ADOTemp.fieldbyname('bankName').AsString); + end; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmConInPutJG.ToolButton3Click(Sender: TObject); +begin + if Order_Sub.IsEmpty then Exit; + OneKeyPost(Tv1,Order_Sub); +end; + +procedure TfrmConInPutJG.CPCFNoDblClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTNameType'; + flagname:='Ʒ'; + V1HelpType.Visible:=True; + V1HelpType.Caption:='д'; + fnote:=True; + V1Name.Caption:=''; + V1Note.Caption:='Ӣ'; + if ShowModal=1 then + begin + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from KH_Zdy where Type=''MPRTNameType'' '); + Open; + end; + SCreateCDS20(ADOQuery1,CDS_Type); + SInitCDSData20(ADOQuery1,CDS_Type); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmConInPutJG.CPCFNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + GetName(); + end; +end; +procedure TfrmConInPutJG.GetName(); +var + fsj,FCPCF,FCPHZName,fsjhelp:String; + i,j,z:Integer; +begin + if Trim(CPCFNo.Text)='' then + begin + CPZHName.Text:=''; + Exit; + end; + i:=0; + j:=0; + z:=0; + FCPCF:=''; + FCPHZName:=''; + if Trim(CPCFNo.Text)='' then + begin + CPZHName.Text:=''; + end; + fsj:=Trim(CPCFNo.Text); + i:=Pos('/',fsj); + while i>=0 do + begin + fsjhelp:=Copy(fsj,i+1,i+1); + if i>0 then + begin + if Trim(fsjhelp)<>'' then + begin + if Trim(fsjhelp)<>'/' then + begin + FCPCF:=Copy(fsj,1,i-1); + if CDS_Type.Locate('Note',Trim(FCPCF),[]) then + begin + FCPCF:=Trim(CDS_Type.fieldbyname('HelpType').AsString); + FCPHZName:=FCPHZName+FCPCF; + end; + + + fsj:=Copy(fsj,i+1,Length(fsj)); + i:=Pos('/',fsj); + j:=1; + z:=1; + end else + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end else + begin + if z<>1 then + i:=0 + else begin + FCPCF:=Copy(fsj,1,i-1); + if CDS_Type.Locate('Note',Trim(FCPCF),[]) then + begin + FCPCF:=Trim(CDS_Type.fieldbyname('HelpType').AsString); + FCPHZName:=FCPHZName+FCPCF; + end; + + + fsj:=Copy(fsj,i+1,Length(fsj)); + i:=Pos('/',fsj); + j:=1; + z:=2; + end; + end; + + end else + begin + if j=1 then + begin + if z<>2 then + begin + FCPCF:=Trim(fsj); + if CDS_Type.Locate('Note',Trim(FCPCF),[]) then + begin + FCPCF:=Trim(CDS_Type.fieldbyname('HelpType').AsString); + FCPHZName:=FCPHZName+FCPCF; + end; + + + end else + i:=-1; + + end else + begin + FCPCF:=Trim(fsj); + if CDS_Type.Locate('Note',Trim(FCPCF),[]) then + begin + FCPCF:=Trim(CDS_Type.fieldbyname('ZdyName').AsString); + FCPHZName:=FCPHZName+FCPCF; + end; + + + end; + i:=-1; + end; + end; + if CPType.ItemIndex=0 then + FCPHZName:=FCPHZName+'֯'; + if CPTanLi.Checked=True then + FCPHZName:=FCPHZName+''; + if CPRanYin.ItemIndex=0 then + FCPHZName:=FCPHZName+'Ⱦɫ' + else if CPRanYin.ItemIndex=1 then + FCPHZName:=FCPHZName+'ӡ'; + FCPHZName:=FCPHZName+Trim(CPRanHouGY.Text); + {if CPType.ItemIndex=0 then + FCPHZName:=FCPHZName+'֯' + else if CPType.ItemIndex=1 then + FCPHZName:=FCPHZName+'';} + FCPHZName:=FCPHZName+''; + CPZHName.Text:=Trim(FCPHZName); +end; + + +procedure TfrmConInPutJG.CPRanHouGYBtnUpClick(Sender: TObject); +begin + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='CPRanHouGY'; + flagname:=''; + JiangeStr:=99; + if ShowModal=1 then + begin + CPRanHouGY.Text:=Trim(ReturnStr); + GetName(); + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmConInPutJG.CPTanLiClick(Sender: TObject); +begin + GetName(); +end; + +procedure TfrmConInPutJG.CPRanYinClick(Sender: TObject); +begin + GetName(); +end; + +procedure TfrmConInPutJG.CPTypeClick(Sender: TObject); +begin + GetName(); +end; + +procedure TfrmConInPutJG.CPRanHouGYBtnDnClick(Sender: TObject); +begin + TBtnEditC(Sender).Text:=''; + TBtnEditC(Sender).TxtCode:=''; + GetName(); +end; + +procedure TfrmConInPutJG.CPRanHouGYChange(Sender: TObject); +begin + GetName(); +end; + +procedure TfrmConInPutJG.CPCFNoChange(Sender: TObject); +begin + GetName(); +end; + +procedure TfrmConInPutJG.v1Column4PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZdyAttachCP:=TfrmZdyAttachCP.Create(Application); + with frmZdyAttachCP do + begin + + if ShowModal=1 then + begin + Order_Sub.Edit; + Order_Sub.fieldbyname('PRTCode').Value:=Trim(CDS_HZ.fieldbyname('ZDYCode').AsString); + Order_Sub.fieldbyname('PRTCodeName').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + Order_Sub.fieldbyname('prtspec').Value:=Trim(CDS_HZ.fieldbyname('DEFstr1').AsString); + Order_Sub.Post; + end; + end; + finally + frmZdyAttachCP.Free; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmConInPutJG.v1Column6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTMF'; + flagname:='ŷϢ'; + if ShowModal=1 then + begin + Order_Sub.Edit; + Order_Sub.fieldbyname('PRTMF').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + // Order_Sub.fieldbyname('PRTCode').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + Order_Sub.Post; + end; + end; + finally + frmZDYHelp.Free; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmConInPutJG.v1Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTKZ'; + flagname:='Ϣ'; + if ShowModal=1 then + begin + Order_Sub.Edit; + Order_Sub.fieldbyname('PRTKZ').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + // Order_Sub.fieldbyname('PRTCode').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + Order_Sub.Post; + end; + end; + finally + frmZDYHelp.Free; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmConInPutJG.v1Column8PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZdyAttachCP:=TfrmZdyAttachCP.Create(Application); + with frmZdyAttachCP do + begin + + if ShowModal=1 then + begin + Order_Sub.Edit; + Order_Sub.fieldbyname('PRTCode').Value:=Trim(CDS_HZ.fieldbyname('ZDYCode').AsString); + Order_Sub.fieldbyname('PRTCodeName').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + Order_Sub.fieldbyname('prtspec').Value:=Trim(CDS_HZ.fieldbyname('DEFstr1').AsString); + Order_Sub.fieldbyname('prtmf').Value:=Trim(CDS_HZ.fieldbyname('DEFstr7').AsString); + Order_Sub.fieldbyname('prtkz').Value:=Trim(CDS_HZ.fieldbyname('DEFstr8').AsString); + Order_Sub.Post; + end; + end; + finally + frmZdyAttachCP.Free; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +end. diff --git a/艾登贸易管理/U_ConInPutNX.dfm b/艾登贸易管理/U_ConInPutNX.dfm new file mode 100644 index 0000000..f163521 --- /dev/null +++ b/艾登贸易管理/U_ConInPutNX.dfm @@ -0,0 +1,1342 @@ +object frmConInPutNX: TfrmConInPutNX + Left = 315 + Top = 35 + Width = 1000 + Height = 664 + Caption = #20869#38144#21512#21516#24405#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 984 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 29 + Width = 984 + Height = 304 + Align = alTop + BevelInner = bvNone + BevelOuter = bvNone + Color = clBtnFace + Ctl3D = False + ParentColor = False + ParentCtl3D = False + TabOrder = 1 + object Label3: TLabel + Left = 247 + Top = 42 + Width = 65 + Height = 12 + Caption = #21046#21333#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 675 + Top = 42 + Width = 65 + Height = 12 + Caption = #20132#36135#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 463 + Top = 42 + Width = 65 + Height = 12 + Caption = #31614#35746#22320#28857#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 463 + Top = 12 + Width = 66 + Height = 12 + Caption = #19994' '#21153' '#21592#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 26 + Top = 12 + Width = 66 + Height = 12 + Caption = #21512' '#21516' '#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 98 + Top = 334 + Width = 65 + Height = 12 + Caption = #20132#26399#35828#26126#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label14: TLabel + Left = 247 + Top = 12 + Width = 67 + Height = 12 + Caption = #23458' '#25143#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label20: TLabel + Left = 675 + Top = 12 + Width = 72 + Height = 12 + Caption = #20379#26041'/'#25260#22836#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 27 + Top = 310 + Width = 65 + Height = 12 + Caption = #20135#21697#21517#31216#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label6: TLabel + Left = 463 + Top = 71 + Width = 66 + Height = 12 + Caption = #28322' '#30701' '#35013#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 595 + Top = 364 + Width = 67 + Height = 12 + Caption = #38376' '#24133#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label13: TLabel + Left = 663 + Top = 332 + Width = 67 + Height = 12 + Caption = #20811' '#37325#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label15: TLabel + Left = 26 + Top = 132 + Width = 65 + Height = 12 + Caption = #20184#27454#26041#24335#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label1: TLabel + Left = 26 + Top = 101 + Width = 65 + Height = 12 + Caption = #20132#36135#26041#24335#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label17: TLabel + Left = 27 + Top = 162 + Width = 65 + Height = 12 + Caption = #20379#26041#22320#22336#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 27 + Top = 192 + Width = 65 + Height = 12 + Caption = #20379#26041#36134#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 247 + Top = 192 + Width = 78 + Height = 12 + Caption = #20379#26041#24320#25143#34892#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label21: TLabel + Left = 462 + Top = 190 + Width = 65 + Height = 12 + Caption = #23458#25143#22320#22336#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 462 + Top = 160 + Width = 65 + Height = 12 + Caption = #20379#26041#30005#35805#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label23: TLabel + Left = 675 + Top = 160 + Width = 65 + Height = 12 + Caption = #20379#26041#20256#30495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label25: TLabel + Left = 30 + Top = 379 + Width = 65 + Height = 12 + Caption = #25104#20221#32534#30721#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clTeal + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label26: TLabel + Left = 459 + Top = 398 + Width = 66 + Height = 12 + Caption = #21518' '#24037' '#33402#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clTeal + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label27: TLabel + Left = 249 + Top = 418 + Width = 65 + Height = 12 + Caption = #25253#20851#21517#31216#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label5: TLabel + Left = 26 + Top = 71 + Width = 65 + Height = 12 + Caption = #36136#37327#35201#27714#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label16: TLabel + Left = 247 + Top = 101 + Width = 104 + Height = 12 + Caption = #36816#36755#26041#24335#21450#36153#29992#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label28: TLabel + Left = 463 + Top = 101 + Width = 65 + Height = 12 + Caption = #39564#25910#26631#20934#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label29: TLabel + Left = 463 + Top = 132 + Width = 65 + Height = 12 + Caption = #20854#20182#20107#39033#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label22: TLabel + Left = 27 + Top = 222 + Width = 65 + Height = 12 + Caption = #23458#25143#30005#35805#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label24: TLabel + Left = 247 + Top = 222 + Width = 65 + Height = 12 + Caption = #23458#25143#20256#30495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label30: TLabel + Left = 34 + Top = 332 + Width = 65 + Height = 12 + Caption = #35268#26684#22411#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label31: TLabel + Left = 27 + Top = 250 + Width = 67 + Height = 12 + Caption = #22791' '#27880#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label32: TLabel + Left = 30 + Top = 349 + Width = 65 + Height = 12 + Caption = #31169#20154#36134#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label33: TLabel + Left = 30 + Top = 410 + Width = 59 + Height = 12 + Caption = #25104#20221'%'#27604#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label34: TLabel + Left = 26 + Top = 39 + Width = 78 + Height = 12 + Caption = #23458#25143#21512#21516#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label35: TLabel + Left = 463 + Top = 222 + Width = 65 + Height = 12 + Caption = #23458#25143#36134#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label36: TLabel + Left = 675 + Top = 218 + Width = 78 + Height = 12 + Caption = #23458#25143#24320#25143#34892#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label37: TLabel + Left = 27 + Top = 278 + Width = 65 + Height = 12 + Caption = #23458#25143#31616#31216#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label38: TLabel + Left = 247 + Top = 274 + Width = 65 + Height = 12 + Caption = #26159#21542#21547#31246#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object OrdDate: TDateTimePicker + Tag = 2 + Left = 310 + Top = 38 + Width = 140 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + TabOrder = 0 + end + object DlyDate: TDateTimePicker + Tag = 2 + Left = 738 + Top = 38 + Width = 138 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 1 + end + object ConPerson1: TEdit + Tag = 2 + Left = 526 + Top = 9 + Width = 136 + Height = 18 + TabOrder = 2 + end + object ConNo: TEdit + Tag = 2 + Left = 97 + Top = 9 + Width = 136 + Height = 18 + Enabled = False + TabOrder = 3 + Text = #33258#21160#29983#25104 + end + object FromPlace: TBtnEditC + Tag = 2 + Left = 526 + Top = 38 + Width = 140 + Height = 20 + Hint = 'QianDPlace/'#31614#35746#22320#28857 + ReadOnly = True + TabOrder = 4 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object CustomerNoName: TBtnEditC + Tag = 2 + Left = 310 + Top = 8 + Width = 140 + Height = 20 + Hint = 'CustomerNo' + ReadOnly = True + TabOrder = 5 + OnBtnUpClick = CustomerNoNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object SYRName: TBtnEditC + Tag = 2 + Left = 737 + Top = 8 + Width = 136 + Height = 20 + Hint = 'SYRName/'#20379#26041 + TabOrder = 6 + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTCodeName: TBtnEditC + Tag = 2 + Left = 93 + Top = 430 + Width = 136 + Height = 20 + Hint = 'MPRTCode' + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 7 + Visible = False + OnBtnUpClick = MPRTCodeNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object QtyNote: TBtnEditC + Tag = 2 + Left = 526 + Top = 67 + Width = 347 + Height = 20 + Hint = 'QtyNoteZW/'#28322#30701#35013 + TabOrder = 8 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTMF: TBtnEditC + Tag = 2 + Left = 666 + Top = 360 + Width = 136 + Height = 20 + Hint = 'MPRTMF/'#38376#24133 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 9 + Visible = False + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTKZ: TBtnEditC + Tag = 2 + Left = 725 + Top = 328 + Width = 136 + Height = 20 + Hint = 'MPRTKZ/'#20811#37325 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 10 + Visible = False + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object Payment: TBtnEditC + Tag = 2 + Left = 97 + Top = 128 + Width = 351 + Height = 20 + Hint = 'PaymentZW/'#20184#27454#26041#24335 + TabOrder = 11 + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object ShippMent: TBtnEditC + Tag = 2 + Left = 97 + Top = 97 + Width = 136 + Height = 20 + Hint = 'ShippMentZW/'#36816#36755#26041#24335 + TabOrder = 12 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object BankNo: TBtnEditC + Tag = 2 + Left = 98 + Top = 188 + Width = 136 + Height = 20 + Hint = 'BankNo/'#38134#34892#36134#21495 + TabOrder = 13 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object SYRAddress: TEdit + Tag = 2 + Left = 98 + Top = 159 + Width = 347 + Height = 18 + TabOrder = 14 + end + object BankName: TEdit + Tag = 2 + Left = 309 + Top = 189 + Width = 136 + Height = 18 + TabOrder = 15 + end + object CTMAddress: TEdit + Tag = 2 + Left = 525 + Top = 187 + Width = 351 + Height = 18 + TabOrder = 16 + end + object TelNo: TEdit + Tag = 2 + Left = 525 + Top = 157 + Width = 136 + Height = 18 + TabOrder = 17 + end + object FaxNo: TEdit + Tag = 2 + Left = 738 + Top = 157 + Width = 138 + Height = 18 + TabOrder = 18 + end + object DlyNote: TBtnEditC + Tag = 2 + Left = 157 + Top = 330 + Width = 256 + Height = 20 + Hint = 'DlyNoteZW/'#20132#26399#35828#26126 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 19 + Visible = False + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object CPTanLi: TCheckBox + Left = 241 + Top = 396 + Width = 58 + Height = 17 + Caption = #24377' '#21147 + Font.Charset = GB2312_CHARSET + Font.Color = clTeal + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 20 + Visible = False + OnClick = CPTanLiClick + end + object CPRanYin: TRadioGroup + Left = 308 + Top = 370 + Width = 140 + Height = 38 + Columns = 3 + Font.Charset = GB2312_CHARSET + Font.Color = clTeal + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ItemIndex = 0 + Items.Strings = ( + #26579#33394 + #21360#33457 + #26080) + ParentFont = False + TabOrder = 21 + Visible = False + OnClick = CPRanYinClick + end + object CPRanHouGY: TBtnEditC + Tag = 2 + Left = 522 + Top = 394 + Width = 136 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 22 + Visible = False + OnChange = CPRanHouGYChange + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = CPRanHouGYBtnUpClick + OnBtnDnClick = CPRanHouGYBtnDnClick + end + object CPType: TRadioGroup + Left = 682 + Top = 382 + Width = 195 + Height = 38 + Columns = 2 + Font.Charset = GB2312_CHARSET + Font.Color = clTeal + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ItemIndex = 0 + Items.Strings = ( + #38024#32455#24067 + #26797#32455#24067) + ParentFont = False + TabOrder = 23 + Visible = False + OnClick = CPTypeClick + end + object CPZHName: TEdit + Tag = 2 + Left = 312 + Top = 415 + Width = 357 + Height = 18 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 24 + Visible = False + end + object CPCFNo: TEdit + Tag = 2 + Left = 93 + Top = 375 + Width = 136 + Height = 18 + CharCase = ecUpperCase + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 25 + Visible = False + OnChange = CPCFNoChange + OnDblClick = CPCFNoDblClick + OnKeyPress = CPCFNoKeyPress + end + object ZhiLiangNote: TBtnEditC + Tag = 2 + Left = 97 + Top = 67 + Width = 353 + Height = 20 + Hint = 'ZhiLiangNote/'#36136#37327#35201#27714 + TabOrder = 26 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object ChuanYangNote: TBtnEditC + Tag = 2 + Left = 348 + Top = 97 + Width = 101 + Height = 20 + Hint = 'ChuanYangNote/'#36816#36755#26041#24335 + TabOrder = 27 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object YSBiaoZhunNote: TBtnEditC + Tag = 2 + Left = 526 + Top = 97 + Width = 347 + Height = 20 + Hint = 'YSBiaoZhunNote/'#39564#25910#26631#20934 + TabOrder = 28 + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object OtherNote: TBtnEditC + Tag = 2 + Left = 526 + Top = 128 + Width = 347 + Height = 20 + Hint = 'OtherNote/'#20854#20182#20107#39033 + TabOrder = 29 + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object CTMTelNo: TEdit + Tag = 2 + Left = 98 + Top = 218 + Width = 136 + Height = 18 + TabOrder = 30 + end + object CTMFaxNo: TEdit + Tag = 2 + Left = 309 + Top = 218 + Width = 136 + Height = 18 + TabOrder = 31 + end + object MPRTSpec: TBtnEditC + Tag = 2 + Left = 349 + Top = 316 + Width = 353 + Height = 20 + Hint = 'MPRTSpecNX/'#35268#26684#22411#21495 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 32 + Visible = False + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object Note: TBtnEditC + Tag = 2 + Left = 98 + Top = 246 + Width = 779 + Height = 20 + Hint = 'ConNote/'#22791#27880 + TabOrder = 33 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object SelfBankNo: TBtnEditC + Tag = 2 + Left = 201 + Top = 354 + Width = 352 + Height = 20 + Hint = 'SelfBankNo/'#31169#20154#36134#21495 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 34 + Visible = False + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object CPCFBi: TEdit + Tag = 2 + Left = 93 + Top = 407 + Width = 136 + Height = 18 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 35 + Visible = False + end + object KHConNo: TEdit + Tag = 2 + Left = 97 + Top = 36 + Width = 136 + Height = 18 + TabOrder = 36 + end + object CTMBankNo: TBtnEditC + Tag = 2 + Left = 526 + Top = 218 + Width = 136 + Height = 20 + Hint = 'CTMBankNo/'#38134#34892#36134#21495 + TabOrder = 37 + OnDblClick = SYRNameBtnUpClick + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object CTMBankName: TEdit + Tag = 2 + Left = 741 + Top = 214 + Width = 136 + Height = 18 + TabOrder = 38 + end + object condefstr10: TEdit + Tag = 2 + Left = 98 + Top = 272 + Width = 137 + Height = 18 + Enabled = False + TabOrder = 39 + end + object istax: TComboBox + Left = 309 + Top = 272 + Width = 136 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 40 + Items.Strings = ( + #26410#21547#31246 + #21547#31246) + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 333 + Width = 984 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 2 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #19968#38190#26367#25442 + ImageIndex = 104 + OnClick = ToolButton3Click + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 362 + Width = 984 + Height = 263 + Align = alClient + TabOrder = 3 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + Column = v1PRTOrderQty + end + item + Format = '0' + Position = spFooter + Column = v1PRTPrice + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1XHNo: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'XHNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 35 + end + object v1Column8: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'PRTCode' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column8PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column4: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'PrtCodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column4PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 126 + end + object v1Column5: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'prtspec' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = False + Properties.OnButtonClick = v1PRTColorPropertiesButtonClick + Visible = False + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + VisibleForCustomization = False + Width = 90 + end + object v1Column1: TcxGridDBColumn + Caption = #39068#33394#33521#25991 + DataBinding.FieldName = 'SOrdDefStr4' + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + VisibleForCustomization = False + Width = 72 + end + object v1Column6: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'prtmf' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column6PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column7: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'prtkz' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column7PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column3: TcxGridDBColumn + Caption = #33457#22411#33457#21495 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FonePurple + Width = 59 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1OrderUnitPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 66 + end + object v1PRTPrice: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PRTPrice' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 68 + end + object v1PriceUnit: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1PriceUnitPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 66 + end + object v1Column9: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'huilv' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column2: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'SOrdDefNote1' + HeaderAlignmentHorz = taCenter + Width = 113 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1008 + Top = 181 + end + object ADOCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 1008 + Top = 141 + end + object DataSource1: TDataSource + DataSet = Order_Sub + Left = 1016 + Top = 368 + end + object Order_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 1000 + Top = 352 + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 1016 + Top = 125 + end + object CDS_Type: TClientDataSet + Aggregates = <> + Params = <> + Left = 512 + Top = 488 + end +end diff --git a/艾登贸易管理/U_ConInPutNX.pas b/艾登贸易管理/U_ConInPutNX.pas new file mode 100644 index 0000000..7fd7693 --- /dev/null +++ b/艾登贸易管理/U_ConInPutNX.pas @@ -0,0 +1,1436 @@ +unit U_ConInPutNX; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer, + cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB, + ExtCtrls, BtnEdit, cxCalendar,StrUtils, cxLookAndFeels, + cxLookAndFeelPainters, cxNavigator; + +type + TfrmConInPutNX = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ScrollBox1: TScrollBox; + Label3: TLabel; + OrdDate: TDateTimePicker; + Label4: TLabel; + DlyDate: TDateTimePicker; + Label7: TLabel; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + v1PRTColor: TcxGridDBColumn; + v1PRTPrice: TcxGridDBColumn; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + DataSource1: TDataSource; + Order_Sub: TClientDataSet; + ADOQuery1: TADOQuery; + v1PRTOrderQty: TcxGridDBColumn; + Label9: TLabel; + ConPerson1: TEdit; + Label10: TLabel; + ConNo: TEdit; + Label11: TLabel; + Label14: TLabel; + Label20: TLabel; + FromPlace: TBtnEditC; + CustomerNoName: TBtnEditC; + v1XHNo: TcxGridDBColumn; + SYRName: TBtnEditC; + v1OrderUnit: TcxGridDBColumn; + v1PriceUnit: TcxGridDBColumn; + Label2: TLabel; + MPRTCodeName: TBtnEditC; + Label6: TLabel; + QtyNote: TBtnEditC; + Label12: TLabel; + MPRTMF: TBtnEditC; + Label13: TLabel; + MPRTKZ: TBtnEditC; + Label15: TLabel; + Payment: TBtnEditC; + Label1: TLabel; + ShippMent: TBtnEditC; + Label17: TLabel; + Label18: TLabel; + BankNo: TBtnEditC; + SYRAddress: TEdit; + Label19: TLabel; + BankName: TEdit; + Label21: TLabel; + CTMAddress: TEdit; + ToolButton3: TToolButton; + v1Column1: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + Label8: TLabel; + TelNo: TEdit; + Label23: TLabel; + FaxNo: TEdit; + DlyNote: TBtnEditC; + Label25: TLabel; + CPTanLi: TCheckBox; + CPRanYin: TRadioGroup; + Label26: TLabel; + CPRanHouGY: TBtnEditC; + CPType: TRadioGroup; + Label27: TLabel; + CPZHName: TEdit; + CDS_Type: TClientDataSet; + CPCFNo: TEdit; + Label5: TLabel; + ZhiLiangNote: TBtnEditC; + Label16: TLabel; + ChuanYangNote: TBtnEditC; + Label28: TLabel; + YSBiaoZhunNote: TBtnEditC; + Label29: TLabel; + OtherNote: TBtnEditC; + Label22: TLabel; + Label24: TLabel; + CTMTelNo: TEdit; + CTMFaxNo: TEdit; + Label30: TLabel; + MPRTSpec: TBtnEditC; + Label31: TLabel; + Note: TBtnEditC; + Label32: TLabel; + SelfBankNo: TBtnEditC; + Label33: TLabel; + CPCFBi: TEdit; + Label34: TLabel; + KHConNo: TEdit; + Label35: TLabel; + CTMBankNo: TBtnEditC; + Label36: TLabel; + CTMBankName: TEdit; + v1Column2: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + Label37: TLabel; + condefstr10: TEdit; + v1Column8: TcxGridDBColumn; + istax: TComboBox; + Label38: TLabel; + v1Column9: TcxGridDBColumn; + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure CustomerNoNameBtnUpClick(Sender: TObject); + procedure CustomerNoNameBtnDnClick(Sender: TObject); + procedure v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure MPRTCodeNameBtnUpClick(Sender: TObject); + procedure v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PriceUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure SYRNameBtnUpClick(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure CPCFNoDblClick(Sender: TObject); + procedure CPCFNoKeyPress(Sender: TObject; var Key: Char); + procedure CPRanHouGYBtnUpClick(Sender: TObject); + procedure CPTanLiClick(Sender: TObject); + procedure CPRanYinClick(Sender: TObject); + procedure CPTypeClick(Sender: TObject); + procedure CPRanHouGYBtnDnClick(Sender: TObject); + procedure CPRanHouGYChange(Sender: TObject); + procedure CPCFNoChange(Sender: TObject); + procedure v1Column4PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column8PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + private + fuserName:string; + procedure InitData(); + procedure ZDYHelp(FButn:TcxButtonEdit;LType:string); + function SaveData():Boolean; + function SaveDataSubOne():Boolean; + function SaveDataMain():Boolean; + function SaveDataSubMore():Boolean; + procedure GetName(); + { Private declarations } + public + PState,CopyInt:Integer; + FMainId,FFMainId:String; + FXS:Integer; + { Public declarations } + end; + +var + frmConInPutNX: TfrmConInPutNX; + newh:hwnd; +implementation +uses + U_DataLink,U_ZDYHelp,U_Fun,U_ZDYHelpSel, U_ZdyAttachment, U_ZdyAttachCP; + +{$R *.dfm} + +procedure TfrmConInPutNX.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ͬ¼1',Tv1,'ָʾ'); +end; + +procedure TfrmConInPutNX.InitData(); +begin + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from KH_Zdy where Type=''MPRTNameType'' '); + Open; + end; + SCreateCDS20(ADOQuery1,CDS_Type); + SInitCDSData20(ADOQuery1,CDS_Type); + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add(' select * from JYOrderCon_Sub '); + if PState=1 then + begin + sql.Add('where MainId='''+Trim(FMainId)+''''); + end; + if PState=0 then + begin + sql.Add(' where 1<>1'); + end; + Open; + end; + SCreateCDS20(ADOQuery1,Order_Sub); + SInitCDSData20(ADOQuery1,Order_Sub); + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrderCon_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + SCSHDataNew(ADOQuery1,ScrollBox1,2); + if Trim(ADOQuery1.fieldbyname('CPTanLi').AsString)='' then + begin + CPTanLi.Checked:=True; + end else + begin + CPTanLi.Checked:=False; + end; + IF not ADOQuery1.IsEmpty then + begin + istax.ItemIndex:=0; + IF ADOQuery1.fieldbyname('istax').AsBoolean then + istax.ItemIndex:=1; + end; + + if Trim(ADOQuery1.fieldbyname('CPRanYin').AsString)='Ⱦɫ' then + begin + CPRanYin.ItemIndex:=0; + end else + if Trim(ADOQuery1.fieldbyname('CPRanYin').AsString)='ӡ' then + begin + CPRanYin.ItemIndex:=1; + end else + begin + CPRanYin.ItemIndex:=2; + end; + + if Trim(ADOQuery1.fieldbyname('CPType').AsString)='֯' then + begin + CPType.ItemIndex:=0; + end else + if Trim(ADOQuery1.fieldbyname('CPType').AsString)='֯' then + begin + CPType.ItemIndex:=1; + end; + CPZHName.Text:=Trim(ADOQuery1.fieldbyname('CPZHName').AsString); + SYRName.TxtCode:=Trim(ADOQuery1.fieldbyname('ConDefStr2').AsString); + if PState=0 then + begin + OrdDate.DateTime:=SGetServerDateTime(ADOTemp); + DlyDate.DateTime:=SGetServerDateTime(ADOTemp)+10; + ConPerson1.Text:=Trim(DName); + FromPlace.Text:=''; + CPZHName.Text:=''; + ConNo.Text:='Զ'; + ShippMent.Text:=''; + Payment.Text:=''; + QtyNote.Text:='+-3%'; + SYRName.Text:='عó޹˾'; + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrderCon_Main where SyrName='''+Trim(SYRName.Text)+''''); + sql.Add(' and MPRTTYpe='''' '); + sql.Add(' order by FillTime desc'); + Open; + Self.SYRAddress.Text:=Trim(ADOTemp.fieldbyname('SYRAddress').AsString); + Self.TelNo.Text:=Trim(ADOTemp.fieldbyname('TelNo').AsString); + Self.FaxNo.Text:=Trim(ADOTemp.fieldbyname('FaxNo').AsString); + Self.bankNo.Text:=Trim(ADOTemp.fieldbyname('bankNo').AsString); + Self.bankName.Text:=Trim(ADOTemp.fieldbyname('bankName').AsString); + end; + end + else + begin + end; + if CopyInt=99 then + begin + PState:=0; + FMainId:=''; + ConPerson1.Text:=Trim(DName); + ConNo.Text:='Զ'; + SYRName.Text:='عó޹˾'; + with Order_Sub do + begin + First; + while not Eof do + begin + Edit; + FieldByName('MainId').Value:=''; + FieldByName('SubId').Value:=''; + Post; + Next; + end; + end; + end; +end; + +procedure TfrmConInPutNX.ZDYHelp(FButn:TcxButtonEdit;LType:string); +var + FType,ZDYName,FText:String; +begin +end; + +procedure TfrmConInPutNX.FormShow(Sender: TObject); +begin + fuserName:=DCode; + if (trim(DCode)='A1') or (trim(DCode)='A2') then + begin + fuserName:='A'; + end; + readCxGrid('ͬ¼1',Tv1,'ָʾ'); + InitData(); +end; + +function TfrmConInPutNX.SaveData():Boolean; +var + maxno:String; + fconNO,fmxType:string; +begin + try + /// + if Trim(FMainId)='' then + begin + if GetLSNo(ADOCmd,maxno,'JN','JYOrderCon_Main',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + if GetLSNo(ADOCmd,fconNO,'CF','JYOrderCon_Main',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + ConNo.Text:=uppercase(fconNO); + end + else + begin + maxno:=Trim(FMainId); + end; + + ADOCmd.Connection.BeginTrans; + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from JYOrderCon_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMainId)='' then + begin + Append; + end + else begin + Edit; + end; + FieldByName('MainId').Value:=Trim(maxno); + SSetsaveSqlNew(ADOCmd,'JYOrderCon_Main',ScrollBox1,2); + if CPTanLi.Checked=True then + begin + FieldByName('CPTanLi').Value:=''; + end else + begin + FieldByName('CPTanLi').Value:='޵'; + end; + + if CPRanYin.ItemIndex=0 then + begin + FieldByName('CPRanYin').Value:='Ⱦɫ'; + end else + if CPRanYin.ItemIndex=1 then + begin + FieldByName('CPRanYin').Value:='ӡ' + end else if CPRanYin.ItemIndex=0 then + begin + FieldByName('CPRanYin').Value:=''; + end; + + if CPType.ItemIndex=0 then + begin + FieldByName('CPType').Value:='֯'; + end else + if CPType.ItemIndex=1 then + begin + FieldByName('CPType').Value:='֯'; + end; + FieldByName('ConDefStr2').Value:=Trim(SYRName.TxtCode); + if Trim(FMainId)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + FieldByName('MPRTType').Value:=''; + IF trim(istax.Text)='˰' then + FieldByName('istax').Value:=1 + else + FieldByName('istax').Value:=0; + Post; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrderCon_Main where ConNo='''+Trim(ConNo.Text)+''''); + Open; + end; + if ADOCmd.RecordCount>1 then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ͬظ!','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrderCon_Main Set Filler='''+Trim(DName)+''''); + sql.Add(' where MainId='''+Trim(FMainId)+''''); + ExecSQL; + end; + FMainId:=Trim(maxno); + ///ӱ + + with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOCmd,maxno,'JNX','JYOrderCon_Sub',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrderCon_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add(' and SubId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + RTSetSaveDataCDS(ADOCmd,Tv1,Order_Sub,'JYOrderCon_Sub',0); + FieldByName('prtcode').Value:=Trim(Order_Sub.fieldbyname('PrtCode').AsString); + if Trim(fieldbyname('PRTOrderQty').AsString)='' then + begin + fieldbyname('PRTOrderQty').Value:=0 + end; + if Trim(fieldbyname('PRTPrice').AsString)='' then + begin + fieldbyname('PRTPrice').Value:=0 + end; + fieldbyname('huilv').Value:=Order_Sub.fieldbyname('huilv').AsFloat; + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + with ADOQuery1 do + begin + close; + sql.Clear; + sql.Add('select PrtCode,COUNT(distinct PrtPrice) as PrtPrice '); + sql.Add('from JYOrdercon_sub A '); + sql.Add('where MainID='''+trim(FMainId)+''' '); + sql.Add('group by PrtCode '); + sql.Add('having COUNT(distinct PrtPrice)>1 '); + open; + end; + IF not ADOQuery1.IsEmpty then + begin + ADOCmd.Connection.RollbackTrans; + application.MessageBox('ͬƷŴڲۣܱͬ棡','ʾϢ',MB_ICONERROR); + exit; + end; + + ADOCmd.Connection.CommitTrans; + Result:=True; + except + + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + Result:=False; + end; +end; +function TfrmConInPutNX.SaveDataMain():Boolean; +var + maxno:String; +begin + try + ADOCmd.Connection.BeginTrans; + /// + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from JYOrder_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMainId)='' then + begin + Append; + maxno:=Trim(FFMainId); + end + else begin + maxno:=Trim(FMainId); + Edit; + end; + FieldByName('MainId').Value:=Trim(maxno); + SSetsaveSqlNew(ADOCmd,'JYOrder_Main',ScrollBox1,2); + if PState=1 then + begin + FieldByName('OrdUpDate').Value:=SGetServerDateTime(ADOTemp); + end; + if Trim(FMainId)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + Post; + end; + FMainId:=Trim(maxno); + ADOCmd.Connection.CommitTrans; + Result:=True; + except + + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + Result:=False; + end; +end; +function TfrmConInPutNX.SaveDataSubOne():Boolean; +var + maxno:String; +begin + try + ADOCmd.Connection.BeginTrans; + ///ӱ + with Order_Sub do + begin + //First; + //while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'JS','JYOrder_Sub',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add(' and SubId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + RTSetSaveDataCDS(ADOCmd,Tv1,Order_Sub,'JYOrder_Sub',0); + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxno); + //Order_Sub.Post; + //Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; +function TfrmConInPutNX.SaveDataSubMore():Boolean; +var + maxno:String; +begin + try + ADOCmd.Connection.BeginTrans; + ///ӱ + with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'JS','JYOrder_Sub',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add(' and SubId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + RTSetSaveDataCDS(ADOCmd,Tv1,Order_Sub,'JYOrder_Sub',0); + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +procedure TfrmConInPutNX.TBSaveClick(Sender: TObject); +begin + OrdDate.SetFocus; + if Trim(ConNo.Text)='' then + begin + Application.MessageBox('ͬŲΪգ','ʾ',0); + Exit; + end; + if Trim(condefstr10.Text)='' then + begin + Application.MessageBox('ͻƲΪգ','ʾ',0); + Exit; + end; + IF trim(istax.Text)='' then + begin + Application.MessageBox('Ƿ˰Ϊգ','ʾ',0); + Exit; + end; + IF Order_Sub.IsEmpty then + begin + Application.MessageBox('ϸϢΪգ','ʾ',0); + Exit; + end; + with Order_Sub do + begin + first; + while not eof do + begin + IF Order_Sub.FieldByName('PRTOrderQty').AsFloat=0 then + begin + application.MessageBox('Ϊջ㣡','ʾϢ',MB_ICONERROR); + exit; + end; + IF Order_Sub.FieldByName('PRTPrice').AsFloat=0 then + begin + application.MessageBox('۲Ϊջ㣡','ʾϢ',MB_ICONERROR); + exit; + end; + next; + end; + first; + end; + if SaveData() then + begin + Application.MessageBox('ɹ','ʾ',0); + end; +end; + +procedure TfrmConInPutNX.v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdColor'; + flagname:='ɫ'; + V1Name.Caption:=''; + V1Note.Caption:='Ӣ'; + fnote:=True; + // MainType:=Trim(DName); + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PRTColor').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + Self.Order_Sub.FieldByName('SOrdDefStr4').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmConInPutNX.ToolButton1Click(Sender: TObject); +var + i:Integer; +begin + if Trim(ConNo.Text)='' then + begin + Application.MessageBox('ͬŲΪ!','ʾ',0); + Exit; + end; + i:=Order_Sub.RecordCount; + i:=i+1; + CopyAddRow(Tv1,Order_Sub); + with Order_Sub do + begin + Edit; + FieldByName('XHNO').Value:=IntToStr(i); + FieldByName('PRTColor').Value:=''; + FieldByName('PRTOrderQty').Value:=null; + FieldByName('OrderUnit').Value:='M'; + FieldByName('PriceUnit').Value:='RMB'; + FieldByName('huilv').Value:=1; + // FieldByName('PRTPrice').Value:=null; + FieldByName('SOrddefstr4').Value:=null; + //FieldByName('SOrddefstr2').Value:=null; + Post; + end; +end; + +procedure TfrmConInPutNX.ToolButton2Click(Sender: TObject); +begin + if Order_Sub.IsEmpty then Exit; + if Trim(Order_Sub.fieldbyname('SubId').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrderCon_Sub where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; + Order_Sub.Delete; + { if Order_Sub.IsEmpty then + begin + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(FMainId)+''''); + ExecSQL; + end; + end; } +end; + +procedure TfrmConInPutNX.CustomerNoNameBtnUpClick(Sender: TObject); +begin + { try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CustomerNoNameNX'; + flagname:='ͻ'; + if Trim(DParameters1)<>'Ȩ' then + MainType:=Trim(DName); + V1Note.Caption:=''; + fnote:=true; + if ShowModal=1 then + begin + CustomerNoName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + CustomerNoName.TxtCode:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + condefstr10.Text:=Trim(ClientDataSet1.fieldbyname('note').AsString); + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrderCon_Main where CustomerNoName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + sql.Add(' order by FillTime desc'); + Open; + Self.CTMAddress.Text:=Trim(ADOTemp.fieldbyname('CTMAddress').AsString); + Self.CTMTelNo.Text:=Trim(ADOTemp.fieldbyname('CTMTelNo').AsString); + Self.CTMFaxNo.Text:=Trim(ADOTemp.fieldbyname('CTMFaxNo').AsString); + Self.CTMbankNo.Text:=Trim(ADOTemp.fieldbyname('CTMbankNo').AsString); + Self.CTMbankName.Text:=Trim(ADOTemp.fieldbyname('CTMbankName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end;} + + try + frmZdyAttachment:=TfrmZdyAttachment.Create(Application); + with frmZdyAttachment do + begin + fkhType:=''; + if ShowModal=1 then + begin + CustomerNoName.Text:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + CustomerNoName.TxtCode:=Trim(CDS_HZ.fieldbyname('ZDYCode').AsString); + condefstr10.Text:=Trim(CDS_HZ.fieldbyname('ZDYNameZ').AsString); + Self.CTMAddress.Text:=Trim(CDS_HZ.fieldbyname('DEFNote2').AsString); + Self.CTMTelNo.Text:=Trim(CDS_HZ.fieldbyname('DEFstr1').AsString); + Self.CTMFaxNo.Text:=Trim(CDS_HZ.fieldbyname('DEFstr3').AsString); + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrderCon_Main where CustomerNoName='''+Trim(CDS_HZ.fieldbyname('ZdyName').AsString)+''''); + sql.Add(' order by FillTime desc'); + Open; + Self.CTMbankNo.Text:=Trim(ADOTemp.fieldbyname('CTMbankNo').AsString); + Self.CTMbankName.Text:=Trim(ADOTemp.fieldbyname('CTMbankName').AsString); + end; + end; + end; + finally + frmZdyAttachment.Free; + end; +end; + +procedure TfrmConInPutNX.CustomerNoNameBtnDnClick(Sender: TObject); +begin + TBtnEditC(Sender).Text:=''; + TBtnEditC(Sender).TxtCode:=''; +end; + +procedure TfrmConInPutNX.v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +type + TMyFunc = function(App:Tapplication; FormH:hwnd; FormID:integer; + Language: integer; WinStyle:integer; + GCode: Pchar; GName: Pchar; DataBase:Pchar;Title:PChar; + Parameters1:PChar;Parameters2:PChar;Parameters3:PChar;Parameters4:PChar; + Parameters5:PChar;Parameters6:PChar;Parameters7:PChar;Parameters8:PChar; + Parameters9:PChar;Parameters10:PChar;DataBaseStr:PChar):hwnd;stdcall; +var + Tf: TMyFunc; + Tp: TFarProc; + Th:Thandle; + LabInt,labname:String; +begin + //if PPInt=2 then Exit; + Ddatabase:=StringOfChar(' ', 32); + Th := LoadLibrary('LabelSet.dll'); + if Th > 0 then + begin + try + Tp := GetProcAddress(Th, 'GetDllForm'); + if Tp <> nil then + begin + Tf := TMyFunc(Tp); + newh:=Tf(Application,0,2,0,0, + PChar(DCode), + PChar(DName), + PChar(Ddatabase), + PChar('ǩģ'), + PChar(''), + PChar(''), + '','','','','','','','',PChar(DConString) + ); + if Trim(PChar(Ddatabase))<>'' then + begin + Ddatabase:=Trim(PChar(Ddatabase)); + LabInt:=Trim( LeftBStr(Ddatabase,Pos('|',Ddatabase)-1) ) ; + labname:=Trim(RightBStr(Ddatabase,Length(Ddatabase)-Pos('|',Ddatabase) ) ); + with Order_Sub do + begin + Edit; + FieldByName('SLbName').Value:=labname; + FieldByName('SLbInt').Value:=LabInt; + end; + end; + end + else + begin + ShowMessage('ӡִд'); + end; + finally + // FreeLibrary(); + end; + end + else + begin + ShowMessage('Ҳ'+Trim('LabelSet.dll')); + end; + +end; + +procedure TfrmConInPutNX.MPRTCodeNameBtnUpClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTCodeNameNX'; + flagname:='Ʒ'; + if ShowModal=1 then + begin + MPRTCodeName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + MPRTCodeName.TxtCode:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmConInPutNX.v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('OrderUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmConInPutNX.v1PriceUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PriceUnit'; + flagname:='۸λ'; + if Trim(DParameters1)<>'Ȩ' then + begin + TBAdd.Visible:=False; + TBEdit.Visible:=False; + TBDel.Visible:=False; + end; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PriceUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmConInPutNX.SYRNameBtnUpClick(Sender: TObject); +var + fsj:string; + FWZ:Integer; +begin + fsj:=Trim(TEdit(Sender).Hint); + FWZ:=Pos('/',fsj); + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Copy(fsj,1,FWZ-1); + flagname:=Copy(fsj,FWZ+1,Length(fsj)-fwz); + if Trim(flag)='SYRName' then + begin + flag:='OrdDefStr2'; + V1Name.Caption:=''; + V1Note.Caption:='Ӣ'; + fnote:=True; + { if Trim(DParameters1)<>'Ȩ' then + begin + TBAdd.Visible:=False; + TBEdit.Visible:=false; + TBDel.Visible:=false; + TBSave.Visible:=false; + end; } + end; + if Trim(flag)='BankNo' then + begin + { if Trim(DParameters1)<>'Ȩ' then + begin + TBAdd.Visible:=False; + TBEdit.Visible:=false; + TBDel.Visible:=false; + TBSave.Visible:=false; + end; } + fnote:=True; + end; + + if ShowModal=1 then + begin + if Trim(flag)<>'OrdDefStr2' then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + if Trim(flag)='BankNo' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrderCon_Main where BankNo='''+Trim(ClientDataSet1.fieldbyname('ZDYName').AsString)+''''); + sql.Add(' and MPRTTYpe='''' '); + sql.Add(' order by FillTime desc'); + Open; + // Self.SYRAddress.Text:=Trim(ADOTemp.fieldbyname('SYRAddress').AsString); + // Self.TelNo.Text:=Trim(ADOTemp.fieldbyname('TelNo').AsString); + // Self.FaxNo.Text:=Trim(ADOTemp.fieldbyname('FaxNo').AsString); + // Self.bankNo.Text:=Trim(ADOTemp.fieldbyname('bankNo').AsString); + Self.bankName.Text:=Trim(ADOTemp.fieldbyname('bankName').AsString); + //Self.BankAddress.Text:=Trim(ADOTemp.fieldbyname('BankAddress').AsString); + //Self.BankFastNo.Text:=Trim(ADOTemp.fieldbyname('BankFastNo').AsString); + end; + end; + end + else + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + //SYRName.TxtCode:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrderCon_Main where SYRName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+''''); + sql.Add(' and MPRTTYpe='''' '); + sql.Add(' order by FillTime desc'); + Open; + Self.SYRAddress.Text:=Trim(ADOTemp.fieldbyname('SYRAddress').AsString); + Self.TelNo.Text:=Trim(ADOTemp.fieldbyname('TelNo').AsString); + Self.FaxNo.Text:=Trim(ADOTemp.fieldbyname('FaxNo').AsString); + Self.bankNo.Text:=Trim(ADOTemp.fieldbyname('bankNo').AsString); + Self.bankName.Text:=Trim(ADOTemp.fieldbyname('bankName').AsString); + end; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmConInPutNX.ToolButton3Click(Sender: TObject); +begin + if Order_Sub.IsEmpty then Exit; + OneKeyPost(Tv1,Order_Sub); +end; + +procedure TfrmConInPutNX.CPCFNoDblClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTNameType'; + flagname:='Ʒ'; + V1HelpType.Visible:=True; + V1HelpType.Caption:='д'; + fnote:=True; + V1Name.Caption:=''; + V1Note.Caption:='Ӣ'; + if ShowModal=1 then + begin + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from KH_Zdy where Type=''MPRTNameType'' '); + Open; + end; + SCreateCDS20(ADOQuery1,CDS_Type); + SInitCDSData20(ADOQuery1,CDS_Type); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmConInPutNX.CPCFNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + GetName(); + end; +end; +procedure TfrmConInPutNX.GetName(); +var + fsj,FCPCF,FCPHZName,fsjhelp:String; + i,j,z:Integer; +begin + if Trim(CPCFNo.Text)='' then + begin + CPZHName.Text:=''; + Exit; + end; + i:=0; + j:=0; + z:=0; + FCPCF:=''; + FCPHZName:=''; + if Trim(CPCFNo.Text)='' then + begin + CPZHName.Text:=''; + end; + fsj:=Trim(CPCFNo.Text); + i:=Pos('/',fsj); + while i>=0 do + begin + fsjhelp:=Copy(fsj,i+1,i+1); + if i>0 then + begin + if Trim(fsjhelp)<>'' then + begin + if Trim(fsjhelp)<>'/' then + begin + FCPCF:=Copy(fsj,1,i-1); + if CDS_Type.Locate('Note',Trim(FCPCF),[]) then + begin + FCPCF:=Trim(CDS_Type.fieldbyname('HelpType').AsString); + FCPHZName:=FCPHZName+FCPCF; + end; + + + fsj:=Copy(fsj,i+1,Length(fsj)); + i:=Pos('/',fsj); + j:=1; + z:=1; + end else + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end else + begin + if z<>1 then + i:=0 + else begin + FCPCF:=Copy(fsj,1,i-1); + if CDS_Type.Locate('Note',Trim(FCPCF),[]) then + begin + FCPCF:=Trim(CDS_Type.fieldbyname('HelpType').AsString); + FCPHZName:=FCPHZName+FCPCF; + end; + + + fsj:=Copy(fsj,i+1,Length(fsj)); + i:=Pos('/',fsj); + j:=1; + z:=2; + end; + end; + + end else + begin + if j=1 then + begin + if z<>2 then + begin + FCPCF:=Trim(fsj); + if CDS_Type.Locate('Note',Trim(FCPCF),[]) then + begin + FCPCF:=Trim(CDS_Type.fieldbyname('HelpType').AsString); + FCPHZName:=FCPHZName+FCPCF; + end; + + + end else + i:=-1; + + end else + begin + FCPCF:=Trim(fsj); + if CDS_Type.Locate('Note',Trim(FCPCF),[]) then + begin + FCPCF:=Trim(CDS_Type.fieldbyname('ZdyName').AsString); + FCPHZName:=FCPHZName+FCPCF; + end; + + + end; + i:=-1; + end; + end; + if CPType.ItemIndex=0 then + FCPHZName:=FCPHZName+'֯'; + if CPTanLi.Checked=True then + FCPHZName:=FCPHZName+''; + if CPRanYin.ItemIndex=0 then + FCPHZName:=FCPHZName+'Ⱦɫ' + else if CPRanYin.ItemIndex=1 then + FCPHZName:=FCPHZName+'ӡ'; + FCPHZName:=FCPHZName+Trim(CPRanHouGY.Text); + {if CPType.ItemIndex=0 then + FCPHZName:=FCPHZName+'֯' + else if CPType.ItemIndex=1 then + FCPHZName:=FCPHZName+'';} + FCPHZName:=FCPHZName+''; + CPZHName.Text:=Trim(FCPHZName); +end; + + +procedure TfrmConInPutNX.CPRanHouGYBtnUpClick(Sender: TObject); +begin + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='CPRanHouGY'; + flagname:=''; + JiangeStr:=99; + if ShowModal=1 then + begin + CPRanHouGY.Text:=Trim(ReturnStr); + GetName(); + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmConInPutNX.CPTanLiClick(Sender: TObject); +begin + GetName(); +end; + +procedure TfrmConInPutNX.CPRanYinClick(Sender: TObject); +begin + GetName(); +end; + +procedure TfrmConInPutNX.CPTypeClick(Sender: TObject); +begin + GetName(); +end; + +procedure TfrmConInPutNX.CPRanHouGYBtnDnClick(Sender: TObject); +begin + TBtnEditC(Sender).Text:=''; + TBtnEditC(Sender).TxtCode:=''; + GetName(); +end; + +procedure TfrmConInPutNX.CPRanHouGYChange(Sender: TObject); +begin + GetName(); +end; + +procedure TfrmConInPutNX.CPCFNoChange(Sender: TObject); +begin + GetName(); +end; + +procedure TfrmConInPutNX.v1Column4PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + {try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTCodeName'; + flagname:='Ʒ'; + if ShowModal=1 then + begin + Order_Sub.Edit; + Order_Sub.fieldbyname('PRTCodeName').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Order_Sub.fieldbyname('PRTCode').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + Order_Sub.Post; + end; + end; + finally + frmZDYHelp.Free; + end; } + try + frmZdyAttachCP:=TfrmZdyAttachCP.Create(Application); + with frmZdyAttachCP do + begin + + if ShowModal=1 then + begin + Order_Sub.Edit; + Order_Sub.fieldbyname('PRTCode').Value:=Trim(CDS_HZ.fieldbyname('ZDYCode').AsString); + Order_Sub.fieldbyname('PRTCodeName').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + Order_Sub.fieldbyname('prtspec').Value:=Trim(CDS_HZ.fieldbyname('DEFstr1').AsString); + Order_Sub.Post; + end; + end; + finally + frmZdyAttachCP.Free; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmConInPutNX.v1Column6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTMF'; + flagname:='ŷϢ'; + if ShowModal=1 then + begin + Order_Sub.Edit; + Order_Sub.fieldbyname('PRTMF').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + // Order_Sub.fieldbyname('PRTCode').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + Order_Sub.Post; + end; + end; + finally + frmZDYHelp.Free; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmConInPutNX.v1Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTKZ'; + flagname:='Ϣ'; + if ShowModal=1 then + begin + Order_Sub.Edit; + Order_Sub.fieldbyname('PRTKZ').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + // Order_Sub.fieldbyname('PRTCode').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + Order_Sub.Post; + end; + end; + finally + frmZDYHelp.Free; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmConInPutNX.v1Column8PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZdyAttachCP:=TfrmZdyAttachCP.Create(Application); + with frmZdyAttachCP do + begin + + if ShowModal=1 then + begin + Order_Sub.Edit; + Order_Sub.fieldbyname('PRTCode').Value:=Trim(CDS_HZ.fieldbyname('ZDYCode').AsString); + Order_Sub.fieldbyname('PRTCodeName').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + Order_Sub.fieldbyname('prtspec').Value:=Trim(CDS_HZ.fieldbyname('DEFstr1').AsString); + Order_Sub.fieldbyname('prtmf').Value:=Trim(CDS_HZ.fieldbyname('DEFstr7').AsString); + Order_Sub.fieldbyname('prtkz').Value:=Trim(CDS_HZ.fieldbyname('DEFstr8').AsString); + Order_Sub.Post; + end; + end; + finally + frmZdyAttachCP.Free; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +end. diff --git a/艾登贸易管理/U_ContractList.dfm b/艾登贸易管理/U_ContractList.dfm new file mode 100644 index 0000000..2435884 --- /dev/null +++ b/艾登贸易管理/U_ContractList.dfm @@ -0,0 +1,1382 @@ +object frmContractList: TfrmContractList + Left = 344 + Top = 138 + Width = 1518 + Height = 667 + Caption = #35746#21333#21512#21516 + 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 = 1502 + Height = 62 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 107 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton4: TToolButton + Left = 126 + Top = 0 + Caption = #20135#21697#31867#21035#23450#20041 + ImageIndex = 58 + Visible = False + OnClick = ToolButton4Click + end + object TBAdd: TToolButton + Left = 233 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 296 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object ToolButton2: TToolButton + Left = 359 + Top = 0 + AutoSize = True + Caption = #22797#21046 + ImageIndex = 57 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 422 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + OnClick = ToolButton1Click + end + object TBDel: TToolButton + Left = 485 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object Tchk: TToolButton + Left = 548 + Top = 0 + AutoSize = True + Caption = #21512#21516#23436#25104 + ImageIndex = 41 + OnClick = TchkClick + end + object Tnochk: TToolButton + Left = 635 + Top = 0 + AutoSize = True + Caption = #25764#38144#23436#25104 + ImageIndex = 86 + Visible = False + OnClick = TnochkClick + end + object TQX: TToolButton + Left = 722 + Top = 0 + AutoSize = True + Caption = #21512#21516#21462#28040 + ImageIndex = 41 + Wrap = True + OnClick = TQXClick + end + object TNOQX: TToolButton + Left = 0 + Top = 30 + AutoSize = True + Caption = #25764#38144#21512#21516#21462#28040 + ImageIndex = 86 + OnClick = TNOQXClick + end + object ToolButton5: TToolButton + Left = 111 + Top = 30 + AutoSize = True + Caption = #35746#21333#23548#20837 + ImageIndex = 8 + OnClick = ToolButton5Click + end + object ToolButton9: TToolButton + Left = 198 + Top = 30 + AutoSize = True + Caption = #35746#21333#23548#20837'2' + ImageIndex = 8 + OnClick = ToolButton9Click + end + object TBExport: TToolButton + Left = 291 + Top = 30 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object ToolButton7: TToolButton + Left = 354 + Top = 30 + AutoSize = True + Caption = #26631#31614#35774#32622 + ImageIndex = 60 + OnClick = ToolButton7Click + end + object ToolButton8: TToolButton + Left = 441 + Top = 30 + AutoSize = True + Caption = #26631#31614#25171#21360 + ImageIndex = 12 + OnClick = ToolButton8Click + end + object TBPrint: TToolButton + Left = 528 + Top = 30 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object ToolButton6: TToolButton + Left = 591 + Top = 30 + AutoSize = True + Caption = #21512#24182#25171#21360 + ImageIndex = 12 + OnClick = ToolButton6Click + end + object ToolButton3: TToolButton + Left = 678 + Top = 30 + AutoSize = True + Caption = #21512#21516#38468#20214 + ImageIndex = 57 + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 765 + Top = 30 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + object ToolButton10: TToolButton + Left = 828 + Top = 30 + Caption = #26631#31614#35774#32622#29305#27530 + ImageIndex = 56 + OnClick = ToolButton10Click + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 127 + Width = 1502 + Height = 276 + Align = alTop + PopupMenu = PopupMenu1 + TabOrder = 1 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + OnCellDblClick = Tv1CellDblClick + OnCustomDrawCell = Tv1CustomDrawCell + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + Column = v1ConMoney + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 73 + end + object v1Column3: TcxGridDBColumn + Caption = 'PO#' + DataBinding.FieldName = 'KHConNO' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column1: TcxGridDBColumn + Caption = #20844#21496#21488#22836 + DataBinding.FieldName = 'SYRName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 119 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'ConPerson1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 83 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 102 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 120 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 97 + end + object v1MPRTSpec: TcxGridDBColumn + Caption = #20132#26399#35828#26126 + DataBinding.FieldName = 'DlyNote' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 100 + end + object v1OrdDefStr1: TcxGridDBColumn + Caption = #20215#26684#26415#35821 + DataBinding.FieldName = 'PriceNote' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 93 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1Column2: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column9: TcxGridDBColumn + DataBinding.FieldName = 'status' + Visible = False + Options.Editing = False + VisibleForCustomization = False + end + object v1Column10: TcxGridDBColumn + Caption = #21512#21516#38468#20214 + DataBinding.FieldName = 'ISSC' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 58 + end + object v1ConMoney: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'ConMoney' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = FoneRed + Styles.Footer = FoneRed + Styles.Header = FoneRed + Width = 81 + end + object Tv1Column1: TcxGridDBColumn + Caption = #26631#31614#21517#31216 + DataBinding.FieldName = 'LBName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 80 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel1: TPanel + Left = 0 + Top = 62 + Width = 1502 + Height = 43 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 2 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 295 + Top = 15 + Width = 40 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 658 + Top = 15 + Width = 53 + Height = 12 + Caption = #19994' '#21153' '#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 458 + Top = 87 + Width = 52 + Height = 12 + Caption = #33521#25991#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 471 + Top = 15 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 335 + Top = 83 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 335 + Top = 107 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 164 + Top = 16 + Width = 6 + Height = 12 + Caption = '-' + end + object Label3: TLabel + Left = 846 + Top = 15 + Width = 21 + Height = 12 + Caption = 'PO#' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 1064 + Top = 16 + Width = 54 + Height = 12 + Caption = #38144#21806#39069#65306'0' + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 172 + Top = 11 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object CustomerNoName: TEdit + Tag = 2 + Left = 343 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = CustomerNoNameChange + OnKeyPress = ConNoKeyPress + end + object ConPerson1: TEdit + Tag = 2 + Left = 719 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = CustomerNoNameChange + OnKeyPress = ConNoKeyPress + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 511 + Top = 83 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 4 + OnChange = CustomerNoNameChange + end + object ConNo: TEdit + Tag = 2 + Left = 516 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 5 + OnChange = CustomerNoNameChange + OnKeyPress = ConNoKeyPress + end + object MPRTKZ: TEdit + Tag = 2 + Left = 364 + Top = 79 + Width = 56 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 6 + OnChange = CustomerNoNameChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 364 + Top = 103 + Width = 56 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 7 + OnChange = CustomerNoNameChange + end + object KHConNO: TEdit + Tag = 2 + Left = 875 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 8 + OnChange = CustomerNoNameChange + OnKeyPress = ConNoKeyPress + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 105 + Width = 1502 + Height = 22 + Align = alTop + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 3 + Properties.CustomButtons.Buttons = <> + Properties.Style = 9 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + #26410#23436#25104 + #24050#23436#25104 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectBottom = 22 + ClientRectRight = 1502 + ClientRectTop = 19 + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 417 + Width = 1502 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + Control = cxGrid2 + end + object cxGrid2: TcxGrid + Left = 0 + Top = 425 + Width = 1502 + Height = 203 + Align = alBottom + TabOrder = 5 + object TV2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + Column = cxGridDBColumn3 + end + item + Format = '0' + Position = spFooter + Column = v1PRTPrice + end + item + Format = '0' + Position = spFooter + Column = cxGridDBColumn4 + end + item + Format = '0' + Position = spFooter + Column = cxGridDBColumn5 + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn3 + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object V2Column1: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'prtCode' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column5: TcxGridDBColumn + Caption = #33521#25991#21697#21517 + DataBinding.FieldName = 'PrtCodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 100 + end + object v1Column6: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'PRTspec' + HeaderAlignmentHorz = taCenter + Width = 100 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = False + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 100 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #39068#33394#33521#25991 + DataBinding.FieldName = 'SOrdDefStr4' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 100 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #23610#23544'/'#23610#30721 + DataBinding.FieldName = 'SOrdDefStr5' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FonePurple + Width = 100 + end + object v1Column7: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'PRTMF' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column8: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'PRTKZ' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 60 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object v1PRTPrice: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PRTPrice' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 60 + end + object v1PriceUnit: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #20844#26020#25968#37327 + DataBinding.FieldName = 'KgQty' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #20844#26020#21333#20215 + DataBinding.FieldName = 'KgPrice' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object V2Column4: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'huilv' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object V2Column2: TcxGridDBColumn + Caption = #38144#21806#26085#26399 + DataBinding.FieldName = 'Sorddate' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object V2Column5: TcxGridDBColumn + Caption = #24555#36882#21333#21495 + DataBinding.FieldName = 'SOrdDefNote2' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object V2Column3: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'SOrdDefNote1' + HeaderAlignmentHorz = taCenter + Width = 100 + end + object TV2Column1: TcxGridDBColumn + Caption = #26465#24418#30721 + DataBinding.FieldName = 'barcode' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 120 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + object cxGrid3: TcxGrid + Left = 480 + Top = 310 + Width = 629 + Height = 236 + Align = alCustom + TabOrder = 6 + Visible = False + object TV3: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + Column = cxGridDBColumn11 + end + item + Format = '0' + Position = spFooter + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn11 + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object TV3Column2: TcxGridDBColumn + end + object TV3Column1: TcxGridDBColumn + Caption = 'Name' + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 84 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = 'color' + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Width = 55 + end + object cxGridDBColumn7: TcxGridDBColumn + Caption = 'Lineitem sku' + DataBinding.FieldName = 'PRTCodeName' + HeaderAlignmentHorz = taCenter + Width = 95 + end + object cxGridDBColumn11: TcxGridDBColumn + Caption = 'Lineitem quantity' + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FontBlue + Width = 105 + end + object cxGridDBColumn13: TcxGridDBColumn + Caption = 'Notes' + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 93 + end + object TV3Column3: TcxGridDBColumn + Caption = 'Lineitem name' + DataBinding.FieldName = 'PRTCode' + end + object TV3Column4: TcxGridDBColumn + Caption = 'size' + DataBinding.FieldName = 'PRTCM' + HeaderAlignmentHorz = taRightJustify + end + end + object cxGridLevel2: TcxGridLevel + GridView = TV3 + end + end + object cxGrid4: TcxGrid + Left = 180 + Top = 166 + Width = 629 + Height = 236 + Align = alCustom + TabOrder = 7 + Visible = False + object TV4: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + Column = cxGridDBColumn14 + end + item + Format = '0' + Position = spFooter + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn14 + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object cxGridDBColumn8: TcxGridDBColumn + end + object cxGridDBColumn9: TcxGridDBColumn + Caption = 'Name' + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 84 + end + object cxGridDBColumn14: TcxGridDBColumn + Caption = 'Lineitem quantity' + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FontBlue + Width = 105 + end + object cxGridDBColumn12: TcxGridDBColumn + Caption = 'Lineitem sku' + DataBinding.FieldName = 'PRTCode' + HeaderAlignmentHorz = taCenter + Width = 95 + end + object cxGridDBColumn16: TcxGridDBColumn + Caption = 'Lineitem name' + DataBinding.FieldName = 'PRTCodeName' + end + object cxGridDBColumn15: TcxGridDBColumn + Caption = 'Notes' + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 93 + end + object cxGridDBColumn10: TcxGridDBColumn + Caption = 'Color' + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Width = 55 + end + object cxGridDBColumn17: TcxGridDBColumn + Caption = 'Size' + DataBinding.FieldName = 'PRTCM' + HeaderAlignmentHorz = taRightJustify + end + end + object cxGridLevel3: TcxGridLevel + GridView = TV4 + end + end + object Panel2: TPanel + Left = 172 + Top = 184 + Width = 361 + Height = 93 + TabOrder = 8 + Visible = False + object Label7: TLabel + Left = 55 + Top = 15 + Width = 80 + Height = 19 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Button2: TButton + Left = 35 + Top = 59 + Width = 75 + Height = 25 + Caption = #25171#21360 + TabOrder = 0 + OnClick = Button2Click + end + object Button3: TButton + Left = 235 + Top = 59 + Width = 75 + Height = 25 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button3Click + end + object Edit1: TEdit + Tag = 2 + Left = 141 + Top = 12 + Width = 180 + Height = 27 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 2 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 280 + Top = 272 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 480 + Top = 152 + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 = RMDBDataSet1 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 336 + Top = 168 + ReportData = {} + end + object RMDBDataSet1: TRMDBDataSet + Visible = True + DataSet = Cds_Print1 + Left = 388 + Top = 180 + 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 = 608 + Top = 304 + end + object PopupMenu1: TPopupMenu + Left = 288 + Top = 184 + object N2: TMenuItem + Caption = #20840#36873 + OnClick = N2Click + end + object N1: TMenuItem + Caption = #20840#24323 + OnClick = N1Click + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 416 + Top = 300 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end + object PopupMenu2: TPopupMenu + Left = 648 + Top = 168 + object N11: TMenuItem + Caption = #26684#24335'1' + end + object N21: TMenuItem + Caption = #26684#24335'2' + end + object N31: TMenuItem + Caption = #26684#24335'3' + end + end + object ADOQuerySub: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 556 + Top = 416 + end + object DataSource2: TDataSource + DataSet = Order_sub + Left = 488 + Top = 440 + end + object ThreeColorBase: TcxStyleRepository + Left = 139 + Top = 80 + PixelsPerInch = 96 + object SHuangSe: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = 4707838 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + TextColor = clBtnText + end + object SkyBlue: TcxStyle + AssignedValues = [svColor, svFont] + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object Default: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object QHuangSe: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object FontBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object TextSHuangSe: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlack + end + object FonePurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindow + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlack + end + object FoneClMaroon: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clMaroon + end + object FoneRed: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clRed + end + object RowColor: TcxStyle + AssignedValues = [svColor] + Color = 16311512 + end + object handBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxBlue: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16711731 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle1: TcxStyle + AssignedValues = [svColor] + Color = clLime + end + end + object OpenDialog1: TOpenDialog + Left = 1000 + Top = 4 + end + object Order_sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 540 + Top = 448 + end + object Cds_Print1: TClientDataSet + Aggregates = <> + Params = <> + Left = 604 + Top = 236 + end +end diff --git a/艾登贸易管理/U_ContractList.pas b/艾登贸易管理/U_ContractList.pas new file mode 100644 index 0000000..cfb69dc --- /dev/null +++ b/艾登贸易管理/U_ContractList.pas @@ -0,0 +1,1640 @@ +unit U_ContractList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, cxControls, + cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, + cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, RM_Dataset, RM_System, + RM_Common, RM_Class, RM_GridReport, RM_e_Xls, Menus, cxPC, cxButtonEdit, + cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, + dxBarBuiltInMenu, ComObj; + +type + FdDy = record + inc: integer; //ͻ׽־ + FDdys: string[32]; //ͻ׽ + FdDysName: string[32]; //ͻ׽ + end; + + TfrmContractList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + TBExport: TToolButton; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1MPRTSpec: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBDataSet1: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + ToolButton1: TToolButton; + v1OrdDefStr1: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + ToolButton2: TToolButton; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + v1Column4: TcxGridDBColumn; + PopupMenu2: TPopupMenu; + N11: TMenuItem; + N21: TMenuItem; + N31: TMenuItem; + Panel1: TPanel; + Label1: TLabel; + Label4: TLabel; + Label5: TLabel; + Label8: TLabel; + Label9: TLabel; + Label12: TLabel; + Label13: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + CustomerNoName: TEdit; + ConPerson1: TEdit; + MPRTCodeName: TEdit; + ConNo: TEdit; + MPRTKZ: TEdit; + MPRTMF: TEdit; + v1Column2: TcxGridDBColumn; + ToolButton4: TToolButton; + Label2: TLabel; + v1Column3: TcxGridDBColumn; + cxTabControl1: TcxTabControl; + Tchk: TToolButton; + Tnochk: TToolButton; + cxSplitter1: TcxSplitter; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1PRTPrice: TcxGridDBColumn; + v1PriceUnit: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ADOQuerySub: TADOQuery; + DataSource2: TDataSource; + KHConNO: TEdit; + Label3: TLabel; + TQX: TToolButton; + TNOQX: TToolButton; + ToolButton3: TToolButton; + v1Column9: TcxGridDBColumn; + Label6: TLabel; + v1ConMoney: TcxGridDBColumn; + ThreeColorBase: TcxStyleRepository; + SHuangSe: TcxStyle; + SkyBlue: TcxStyle; + Default: TcxStyle; + QHuangSe: TcxStyle; + Red: TcxStyle; + FontBlue: TcxStyle; + TextSHuangSe: TcxStyle; + FonePurple: TcxStyle; + FoneClMaroon: TcxStyle; + FoneRed: TcxStyle; + RowColor: TcxStyle; + handBlack: TcxStyle; + cxBlue: TcxStyle; + cxStyle1: TcxStyle; + v1Column10: TcxGridDBColumn; + V2Column1: TcxGridDBColumn; + V2Column3: TcxGridDBColumn; + V2Column4: TcxGridDBColumn; + V2Column2: TcxGridDBColumn; + V2Column5: TcxGridDBColumn; + ToolButton5: TToolButton; + OpenDialog1: TOpenDialog; + cxGrid3: TcxGrid; + TV3: TcxGridDBTableView; + TV3Column2: TcxGridDBColumn; + TV3Column1: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridDBColumn7: TcxGridDBColumn; + cxGridDBColumn11: TcxGridDBColumn; + cxGridDBColumn13: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + ToolButton6: TToolButton; + N1: TMenuItem; + ToolButton7: TToolButton; + TV2Column1: TcxGridDBColumn; + ToolButton8: TToolButton; + Order_sub: TClientDataSet; + Tv1Column1: TcxGridDBColumn; + ToolButton9: TToolButton; + TV3Column3: TcxGridDBColumn; + TV3Column4: TcxGridDBColumn; + cxGrid4: TcxGrid; + TV4: TcxGridDBTableView; + cxGridDBColumn8: TcxGridDBColumn; + cxGridDBColumn9: TcxGridDBColumn; + cxGridDBColumn10: TcxGridDBColumn; + cxGridDBColumn12: TcxGridDBColumn; + cxGridDBColumn14: TcxGridDBColumn; + cxGridDBColumn15: TcxGridDBColumn; + cxGridDBColumn16: TcxGridDBColumn; + cxGridDBColumn17: TcxGridDBColumn; + cxGridLevel3: TcxGridLevel; + Panel2: TPanel; + Label7: TLabel; + Button2: TButton; + Button3: TButton; + Edit1: TEdit; + ToolButton10: TToolButton; + Cds_Print1: TClientDataSet; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure CustomerNoNameChange(Sender: TObject); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + procedure ToolButton4Click(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure TchkClick(Sender: TObject); + procedure TnochkClick(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure TQXClick(Sender: TObject); + procedure TNOQXClick(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); + procedure ToolButton5Click(Sender: TObject); + procedure ToolButton6Click(Sender: TObject); + procedure ToolButton7Click(Sender: TObject); + procedure ToolButton8Click(Sender: TObject); + procedure ToolButton9Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure ToolButton10Click(Sender: TObject); + private + DQdate: TDateTime; + fuserName: string; + procedure InitGrid(); + procedure InitForm(); + function DelData(): Boolean; + procedure InitGridFH(); + procedure SetStatus(); + procedure InitSub(); + { Private declarations } + public + FFInt, FCloth: Integer; + + { Public declarations } + end; + +var + frmContractList: TfrmContractList; + dFdDy: array[0..120] of FdDy; + +implementation + +uses + U_DataLink, U_ConInPut, U_Fun, U_ZDYHelp, U_FjList_RZ, U_LabelList, + U_LabelListts; + +{$R *.dfm} +procedure TfrmContractList.InitSub(); +begin + ADOQuerySub.Close; + if Order_Main.IsEmpty then + exit; + with ADOQuerySub do + begin + close; + sql.Clear; + sql.Add('select A.*,IScZ=isnull((select count(MainID) from JYOrder_Sub X where X.Sorddefstr10=A.subID),0) from JYOrderCon_sub A '); + sql.Add('where mainID =' + quotedstr((Order_Main.fieldbyname('mainID').AsString))); + open; + end; + SCreateCDS20(ADOQuerySub, Order_sub); + SInitCDSData20(ADOQuerySub, Order_sub); +end; + +procedure TfrmContractList.SetStatus(); +begin + + tchk.Visible := false; + tnochk.Visible := false; + tbedit.Visible := false; + tbdel.Visible := false; + Tqx.Visible := false; + TNoqx.Visible := false; + { if Trim(DParameters1)<>'Ȩ' then + begin + case cxTabControl1.TabIndex of + 0:begin + IF trim(DCode)<>'A2' then + begin + tbedit.Visible:=true; + tbdel.Visible:=true; + end; + Tqx.Visible:=true; + end; + 1:begin + Tqx.Visible:=true; + end; + 2:begin + TNoqx.Visible:=true; + end; + 3:begin + end; + end; + end + else + begin + case cxTabControl1.TabIndex of + 0:begin + tchk.Visible:=true; + tbedit.Visible:=true; + tbdel.Visible:=true; + Tqx.Visible:=true; + end; + 1:begin + tnochk.Visible:=true; + Tqx.Visible:=true; + end; + 2:begin + TNoqx.Visible:=true; + end; + 3:begin + // TNoqx.Visible:=true; + end; + end; + end; } + + case cxTabControl1.TabIndex of + 0: + begin + tchk.Visible := true; + tbedit.Visible := true; + tbdel.Visible := true; + //Tqx.Visible:=true; + end; + 1: + begin + tnochk.Visible := true; + // Tqx.Visible:=true; + end; + 2: + begin + // TNoqx.Visible:=true; + end; + end; + +end; + +procedure TfrmContractList.FormDestroy(Sender: TObject); +begin + frmContractList := nil; +end; + +procedure TfrmContractList.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmContractList.FormCreate(Sender: TObject); +begin + cxgrid1.Align := alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate := SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmContractList.TBCloseClick(Sender: TObject); +begin + Close; + if FCloth <> 1 then + WriteCxGrid('ͬб', Tv1, 'ָʾ1') + else + WriteCxGrid('ͬбѡ', Tv1, 'ָʾ1'); +end; + +procedure TfrmContractList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + sql.Clear; + sql.Add('select A.*,A.ConNo ConNoM '); + SQL.Add(',PRTOrderQty=(select Sum(PRTOrderQty) from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',ConMoney=(select Sum(PRTOrderQty*PRTPrice) from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',OrderUnit=(select top 1 OrderUnit from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',PriceUnit=(select top 1 PriceUnit from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',PRTPrice=(select top 1 PRTPrice from JYOrderCon_Sub B where B.MainId=A.MainId)'); + sql.Add(',ISSC=cast((case when isnull((select count(WBID) from TP_File X where X.WBID=A.maiNID and X.TFType=''ͬ''),0)>0 then 1 else 0 end) as bit)'); + sql.Add(' from JYOrderCon_Main A '); + // sql.Add(' left join Contract_Main B on B.conNO=A.conNo '); + SQL.Add('where A.OrdDate>=''' + FormatDateTime('yyyy-MM-dd', BegDate.DateTime) + ''''); + SQL.Add('and A.OrdDate<''' + FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1) + ''''); + sql.Add(' and A.MPRTType='''' '); + if Trim(DParameters1) <> 'Ȩ' then + begin + sql.Add('and A.Filler=''' + Trim(DName) + ''''); + end; + if cxTabControl1.TabIndex < 2 then + begin + sql.Add(' and isnull(A.status,''0'')=''' + inttostr(cxTabControl1.TabIndex) + ''''); + end; +// ShowMessage(SQL.text); + Open; + end; + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmContractList.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value := ' and FillTime>=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.DateTime)) + '''' + ' and FillTime<''' + Trim(FormatDateTime('yyyy-MM-dd', EndDate.DateTime + 1)) + ''''; + Open; + end; + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmContractList.InitForm(); +begin + + if FCloth <> 1 then + ReadCxGrid('ͬб', Tv1, 'ָʾ1') + else + ReadCxGrid('ͬбѡ', Tv1, 'ָʾ1'); + +// if FCloth = 1 then +// begin +// v1Column4.Visible := True; +// // v1PRTPrice.Visible:=False; +// // v1PRTPrice.Hidden:=True; +// end +// else +// begin +// v1Column4.Visible := False; +// // v1PRTPrice.Visible:=True; +// // v1PRTPrice.Hidden:=False; +// end; + BegDate.DateTime := SGetServerDate10(ADOQueryTemp) - 30; + EndDate.DateTime := SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmContractList.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active = False then + Exit; + SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); +end; + +procedure TfrmContractList.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then + begin + Application.MessageBox('ܲ˵!', 'ʾ', 0); + Exit; + end; + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select mainID from JYOrder_main A where ConNo=' + quotedstr(trim(Order_Main.fieldbyname('conNO').AsString))); + open; + end; + + try + frmConInPut := TfrmConInPut.Create(Application); + with frmConInPut do + begin + PState := 1; + FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString); + + if not ADOQueryTemp.IsEmpty then + begin + frmConInPut.ConNo.Enabled := False; + end; + + if ShowModal = 1 then + begin + + end; + end; + finally + frmConInPut.Free; + end; +end; + +procedure TfrmContractList.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then + begin + Application.MessageBox('ܲ˵!', 'ʾ', 0); + Exit; + end; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + if DelData() then + begin + Order_Main.Delete; + end; +end; + +function TfrmContractList.DelData(): Boolean; +begin + try + Result := false; + ADOQueryCmd.Connection.BeginTrans; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrderCon_Sub where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + ''''); + sql.Add('delete JYOrderCon_Main where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + ''''); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ͬɾ'))); + sql.Add(',' + quotedstr(trim('ͬţ' + trim(Order_Main.FieldByName('conNo').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + ExecSQL; + end; + + ADOQueryCmd.Connection.CommitTrans; + Result := True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result := False; + Application.MessageBox('ɾ쳣', 'ʾ', 0); + end; +end; + +procedure TfrmContractList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then + Exit; + SelExportData(Tv1, ADOQueryMain, 'ָʾб'); +end; + +procedure TfrmContractList.TBPrintClick(Sender: TObject); +var + fPrintFile: string; + EngMoney: string; + fRMXLSExport1: TRMXLSExport; +begin + if Order_Main.IsEmpty then + Exit; + fRMXLSExport1 := TRMXLSExport.Create(self); + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ͬ.rmf'; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*,ConMoney=B.PRTOrderQty*B.PRTPrice,COL=''COL:'' '); + sql.Add(',Case when substring(PriceNote,1,3)=''FOB'' then '' ''+A.FromPlace else '' ''+A.ToPlace end as PriceNote10 '); + sql.Add(',PrtImage=(select Top 1 FilesOther from TP_File X where X.WBID=B.PRTCode) '); + sql.Add(' from JYOrderCon_Main A inner join JYOrderCon_Sub B on A.MainId=B.MainId '); + sql.Add(' where A.MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + ''''); + Open; + end; + SCreateCDS20(ADOQueryPrint, CDS_Print); + SInitCDSData20(ADOQueryPrint, CDS_Print); + // + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select TolConMoney=Sum(PRTOrderQty*PRTPrice)'); + sql.Add(' from JYOrderCon_Main A inner join JYOrderCon_Sub B on A.MainId=B.MainId '); + sql.Add(' where A.MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + ''''); + Open; + end; + EngMoney := num2cengnum(ADOQueryTemp.fieldbyname('TolConMoney').AsString); + EngMoney := UpperCase(EngMoney); + if FileExists(fPrintFile) then + begin + RMVariables['EngMoney'] := EngMoney; + // RM1.PreviewButtons:=[pbZoom,pbLoad,pbSave,pbPrint,pbFind,pbPageSetup,pbExit,pbSaveToXLS,pbExport,pbNavigator]; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end + else + begin + Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\Ӣĺͬ.rmf'), 'ʾ', 0); + end; + fRMXLSExport1.Free; +end; + +procedure TfrmContractList.TBRafreshClick(Sender: TObject); +begin + if FFInt = 1 then + begin + InitGridFH(); + end + else + InitGrid(); + TBFind.Click; +end; + +procedure TfrmContractList.TBAddClick(Sender: TObject); +var + maxno: string; +begin + try + frmConInPut := TfrmConInPut.Create(Application); + with frmConInPut do + begin + PState := 0; + FMainId := ''; + if ShowModal = 1 then + begin + + end; + end; + finally + frmConInPut.Free; + end; +end; + +procedure TfrmContractList.FormShow(Sender: TObject); +begin + + InitForm(); + SetStatus(); +end; + +procedure TfrmContractList.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + if ToolButton1.Visible = False then + Exit; + ToolButton1.Click; +end; + +procedure TfrmContractList.TBTPClick(Sender: TObject); +var + FQty, FQty1, FMxQty, FPQty, FMxQtyS, FPQtyS: string; +begin +end; + +procedure TfrmContractList.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmContractList.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmContractList.Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id, id10: Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmContractList.v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmContractList.N1Click(Sender: TObject); +//var +// fPrintFile: string; +// Porderno: string; +begin + SelOKNo(Order_Main, False); +// if Order_Main.IsEmpty then +// Exit; +// fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf'; +// SDofilter(ADOQueryMain, ' OrderNoM=''' + Trim(Order_Main.fieldbyname('OrderNoM').AsString) + ''''); +// SCreateCDS20(ADOQueryMain, Order_Main); +// SInitCDSData20(ADOQueryMain, Order_Main); +// Porderno := Trim(Order_Main.fieldbyname('OrderNoM').AsString); +// if FileExists(fPrintFile) then +// begin +// //RMVariables['begindate']:=begindate.DateTime; +// //RMVariables['enddate']:=enddate.DateTime; +// //RMVariables['printtime']:=Now; +// //RMVariables['printer']:=Trim(gUserName); +// RM1.LoadFromFile(fPrintFile); +// RM1.ShowReport; +// end +// else +// begin +// Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf'), 'ʾ', 0); +// end; +// SDofilter(ADOQueryMain, ''); +// SCreateCDS20(ADOQueryMain, Order_Main); +// SInitCDSData20(ADOQueryMain, Order_Main); +// Order_Main.Locate('ordernoM', Porderno, []); +end; + +procedure TfrmContractList.N2Click(Sender: TObject); +//var +// fPrintFile: string; +// Porderno: string; +begin + SelOKNo(Order_Main, True); +// if Order_Main.IsEmpty then +// Exit; +// fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf'; +// SDofilter(ADOQueryMain, ' OrderNoM=''' + Trim(Order_Main.fieldbyname('OrderNoM').AsString) + ''''); +// SCreateCDS20(ADOQueryMain, Order_Main); +// SInitCDSData20(ADOQueryMain, Order_Main); +// Porderno := Trim(Order_Main.fieldbyname('OrderNoM').AsString); +// if FileExists(fPrintFile) then +// begin +// //RMVariables['begindate']:=begindate.DateTime; +// //RMVariables['enddate']:=enddate.DateTime; +// //RMVariables['printtime']:=Now; +// //RMVariables['printer']:=Trim(gUserName); +// RM1.LoadFromFile(fPrintFile); +// RM1.ShowReport; +// end +// else +// begin +// Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf'), 'ʾ', 0); +// end; +// SDofilter(ADOQueryMain, ''); +// SCreateCDS20(ADOQueryMain, Order_Main); +// SInitCDSData20(ADOQueryMain, Order_Main); +// Order_Main.Locate('ordernoM', Porderno, []); +end; + +procedure TfrmContractList.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + try + frmConInPut := TfrmConInPut.Create(Application); + with frmConInPut do + begin + PState := 1; + FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible := False; + TBSave.Visible := False; + ScrollBox1.Enabled := False; + Tv1.OptionsSelection.CellSelect := False; + if ShowModal = 1 then + begin + + end; + end; + finally + frmConInPut.Free; + end; +end; + +procedure TfrmContractList.ToolButton2Click(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + try + frmConInPut := TfrmConInPut.Create(Application); + with frmConInPut do + begin + PState := 1; + CopyInt := 99; + FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString); + if ShowModal = 1 then + begin + + end; + end; + finally + frmConInPut.Free; + end; +end; + +procedure TfrmContractList.CustomerNoNameChange(Sender: TObject); +begin + if ADOQueryMain.Active = False then + Exit; + SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); +end; + +procedure TfrmContractList.ConNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key = #13 then + begin + if Length(Tedit(Sender).Text) < 1 then + Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + SQL.Clear; + sql.Add('select A.*,A.ConNo ConNoM '); + SQL.Add(',PRTOrderQty=(select Sum(PRTOrderQty) from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',ConMoney=(select Sum(PRTOrderQty*PRTPrice) from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',OrderUnit=(select top 1 OrderUnit from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',PriceUnit=(select top 1 PriceUnit from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',PRTPrice=(select top 1 PRTPrice from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',case when isnull((select top 1 X.conNO from Contract_Main X where X.conNo=A.conNO) ,'''')='''' then '''' else '''' end as IScg '); + sql.Add(',ISSC=cast((case when isnull((select count(WBID) from TP_File X where X.WBID=A.maiNID and X.TFType=''ͬ''),0)>0 then 1 else 0 end) as bit)'); + sql.Add(' from JYOrderCon_Main A '); + SQL.Add('where OrdDate>=''' + '1899-01-01' + ''''); + SQL.Add('and OrdDate<''' + '2050-01-01' + ''''); + sql.Add(' and MPRTType='''' '); + if Trim(DParameters1) <> 'Ȩ' then + begin + sql.Add('and A.Filler=''' + Trim(DName) + ''''); + end; + sql.Add(' and ' + Tedit(Sender).Name + ' like ' + quotedstr(trim('%' + trim(Tedit(Sender).Text) + '%'))); + // sql.Add(' and ConNo like '''+'%'+Trim(ConNoM.Text)+'%'+''''); + Open; + end; + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmContractList.ToolButton4Click(Sender: TObject); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'MPRTNameType'; + flagname := 'Ʒ'; + V1HelpType.Visible := True; + V1HelpType.Caption := 'д'; + fnote := True; + V1Name.Caption := ''; + V1Note.Caption := 'Ӣ'; + if ShowModal = 1 then + begin + + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContractList.cxTabControl1Change(Sender: TObject); +begin + SetStatus(); + TBRafresh.Click; +end; + +procedure TfrmContractList.TchkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrdercon_Main SET status=''1'' '); + sql.Add('where mainID=' + quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ͬ'))); + sql.Add(',' + quotedstr(trim('ͬţ' + trim(Order_Main.FieldByName('conNo').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ͬɳɹ', 'ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ͬʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmContractList.TnochkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrdercon_Main SET status=''0'' '); + sql.Add('where mainID=' + quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ͬ'))); + sql.Add(',' + quotedstr(trim('ͬţ' + trim(Order_Main.FieldByName('conNo').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ͬɳɹ', 'ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ͬʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmContractList.Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + InitSub(); +end; + +procedure TfrmContractList.TQXClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrdercon_Main SET status=''2'' '); + sql.Add('where mainID=' + quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ͬȡ'))); + sql.Add(',' + quotedstr(trim('ͬţ' + trim(Order_Main.FieldByName('conNo').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ͬȡɹ', 'ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ͬȡʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmContractList.TNOQXClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrdercon_Main SET status=''0'' '); + sql.Add('where mainID=' + quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ͬȡ'))); + sql.Add(',' + quotedstr(trim('ͬţ' + trim(Order_Main.FieldByName('conNo').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ͬȡɹ', 'ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ͬȡʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmContractList.ToolButton3Click(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + try + frmFjList_RZ := TfrmFjList_RZ.Create(Application); + with frmFjList_RZ do + begin + // PState:=1; + // if Trim(DParameters1)<>'Ȩ' then cxButton1.Visible:=false; + fkeyNO := Trim(Self.Order_Main.fieldbyname('MainId').AsString); + fType := 'ͬ'; + if ShowModal = 1 then + begin + + end; + end; + finally + frmFjList_RZ.Free; + end; +end; + +procedure TfrmContractList.Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + if AViewInfo.GridRecord.Values[tv1.GetColumnByFieldName('status').Index] = '2' then + ACanvas.Brush.Color := clLime; +end; + +procedure TfrmContractList.ToolButton5Click(Sender: TObject); +var + excelApp, WorkBook: Variant; + i, j, k, ExcelRowCount: integer; + maxId, M1, M2, M3: string; + FMessage: string; +begin + try + excelApp := CreateOleObject('Excel.Application'); + openDialog1.Filter := '*.CSV;*.xls'; + if opendialog1.Execute then + begin + WorkBook := excelApp.WorkBooks.Open(OpenDialog1.FileName); + end + else + exit; + excelApp.Visible := false; + ExcelRowCount := WorkBook.WorkSheets[1].UsedRange.Rows.Count; + except + application.MessageBox('EXCEL', 'Ϣ', MB_ICONERROR); + exit; + end; + try + k := 0; + for i := 1 to 100 do + begin + //󶨽ʾֶκ + for j := 1 to Tv3.ColumnCount - 1 do + begin + if trim(Tv3.Columns[j].Caption) = 'ܳƷ' then + continue; + if trim(Tv3.Columns[j].Caption) = 'Ʒ' then + continue; + if trim(Tv3.Columns[j].Caption) = 'ѡ' then + continue; + if trim(Tv3.Columns[j].Caption) = '¼' then + continue; + if trim(Tv3.Columns[j].Caption) = '¼ʱ' then + continue; + if trim(Tv3.Columns[j].Caption) = '޸' then + continue; + if trim(Tv3.Columns[j].Caption) = '޸ʱ' then + continue; + if trim(excelApp.Cells[1, i].value) = trim(Tv3.Columns[j].Caption) then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := trim(Tv3.Columns[j].DataBinding.FieldName); + dFdDy[k].FdDysName := trim(Tv3.Columns[j].Caption); + end; + end; + k := k + 1; + end; + except + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete jyorder_main_DR '); + execsql; + end; +// ShowMessage(IntToStr(k)); + ADOQueryCmd.Connection.BeginTrans; + try + for i := 2 to ExcelRowCount do + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from jyorder_main_DR where 1=2'); + open; + end; + ADOQueryCmd.Append; + for j := 0 to k - 1 do + begin + if trim(dFdDy[j].FDdys) = '' then + continue; + M1 := dFdDy[j].FDdys; //ֶ + M2 := inttostr(dFdDy[j].inc); //ǰ + M3 := excelApp.Cells[i, dFdDy[j].inc].Value; //ǰԪ + ADOQueryCmd.fieldbyname(dFdDy[j].FDdys).Value := excelApp.Cells[i, dFdDy[j].inc].Value; + end; + + ADOQueryCmd.Post; + + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('exec P_Get_Con_DR_copy1 ''' + trim(DName) + ''' '); + ExecSQL; + end; + + WorkBook.Close; + excelApp.Quit; + excelApp := Unassigned; + WorkBook := Unassigned; + + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ!', 'ʾ', 0); + InitGrid(); + except + WorkBook.Close; + excelApp.Quit; + excelApp := Unassigned; + WorkBook := Unassigned; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; + +procedure TfrmContractList.ToolButton6Click(Sender: TObject); +var + fPrintFile: string; + EngMoney: string; + fRMXLSExport1: TRMXLSExport; +begin + + if Order_Main.IsEmpty then + Exit; + if Order_Main.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + with ADOqueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete TBSubID where DName=''' + Trim(DCode) + ''''); + ExecSQL; + end; + with ADOqueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * FROM TBSubID where 1=2 '); + open; + end; + ADOqueryCmd.Connection.BeginTrans; + try + Order_Main.DisableControls; + with Order_Main do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean then + begin + ADOQueryCmd.append; + ADOQueryCmd.fieldbyname('SubId').Value := Trim(fieldbyname('Mainid').AsString); + ADOQueryCmd.fieldbyname('Dname').Value := Trim(DCode); + ADOQueryCmd.post; + end; + Next; + end; + end; + Order_Main.EnableControls; + ADOqueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + end; + + fRMXLSExport1 := TRMXLSExport.Create(self); + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ϲͬ.rmf'; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*,ConMoney=B.PRTOrderQty*B.PRTPrice,COL=''COL:'' '); + sql.Add(',Case when substring(PriceNote,1,3)=''FOB'' then '' ''+A.FromPlace else '' ''+A.ToPlace end as PriceNote10 '); + sql.Add(',PrtImage=(select Top 1 FilesOther from TP_File X where X.WBID=B.PRTCode) '); + sql.Add(' from JYOrderCon_Main A inner join JYOrderCon_Sub B on A.MainId=B.MainId '); + sql.Add(' where EXISTS(select SubId from TBSubID X where X.SubId=A.Mainid and X.DName=''' + trim(DCode) + ''' )'); + Open; + end; + SCreateCDS20(ADOQueryPrint, CDS_Print1); + SInitCDSData20(ADOQueryPrint, CDS_Print1); + // + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select TolConMoney=Sum(PRTOrderQty*PRTPrice)'); + sql.Add(' from JYOrderCon_Main A inner join JYOrderCon_Sub B on A.MainId=B.MainId '); + sql.Add(' where EXISTS(select SubId from TBSubID X where X.SubId=A.Mainid and X.DName=''' + trim(DCode) + ''')'); + Open; + end; + EngMoney := num2cengnum(ADOQueryTemp.fieldbyname('TolConMoney').AsString); + EngMoney := UpperCase(EngMoney); + if FileExists(fPrintFile) then + begin + RMVariables['EngMoney'] := EngMoney; + // RM1.PreviewButtons:=[pbZoom,pbLoad,pbSave,pbPrint,pbFind,pbPageSetup,pbExit,pbSaveToXLS,pbExport,pbNavigator]; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end + else + begin + Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\ϲͬ.rmf'), 'ʾ', 0); + end; + fRMXLSExport1.Free; +end; + +procedure TfrmContractList.ToolButton7Click(Sender: TObject); +begin + try + frmLabelList := TfrmLabelList.Create(Application); + with frmLabelList do + begin + if ShowModal = 1 then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrderCon_Main Set LBName=''' + Trim(ADOQueryLabel.fieldbyname('labelCaption').AsString) + ''''); + sql.Add(' where Mainid=''' + Trim(Order_Main.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; + TBRafresh.Click; + end; + end; + finally + frmLabelList.Free; + end; +end; + +procedure TfrmContractList.ToolButton8Click(Sender: TObject); +begin +// if Order_Main.Locate('SSel', True, []) = False then +// begin +// Application.MessageBox('ûѡ!', 'ʾ', 0); +// Exit; +// end; +// if Order_Main.IsEmpty then +// Exit; +// + if Trim(Order_Main.fieldbyname('LBName').AsString) = '' then + begin + Exit; + end; + panel2.Visible := True; +end; + + +//var +// fPrintFile: string; +// EngMoney: string; +// fRMXLSExport1: TRMXLSExport; +//begin +// if Order_Main.IsEmpty then +// Exit; +// +// if Trim(Order_Main.fieldbyname('LBName').AsString) = '' then +// begin +// Exit; +// end; +// +// fRMXLSExport1 := TRMXLSExport.Create(self); +// fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + Order_Main.fieldbyname('LBName').AsString + '.rmf'; +// with ADOQueryPrint do +// begin +// Close; +// sql.Clear; +// sql.Add('select A.*,B.*,ConMoney=B.PRTOrderQty*B.PRTPrice,COL=''COL:'' '); +// sql.Add(',Case when substring(PriceNote,1,3)=''FOB'' then '' ''+A.FromPlace else '' ''+A.ToPlace end as PriceNote10 '); +// sql.Add(',PrtImage=(select Top 1 FilesOther from TP_File X where X.WBID=B.PRTCode) '); +// sql.Add(' from JYOrderCon_Main A inner join JYOrderCon_Sub B on A.MainId=B.MainId '); +// sql.Add(' where B.Subid=''' + Trim(Order_sub.fieldbyname('subid').AsString) + ''''); +// Open; +// end; +// SCreateCDS20(ADOQueryPrint, CDS_Print); +// SInitCDSData20(ADOQueryPrint, CDS_Print); +// +// if FileExists(fPrintFile) then +// begin +// RM1.LoadFromFile(fPrintFile); +// RM1.DefaultCopies :=StrToInt(Order_sub.fieldbyname('PRTOrderQty').AsString) ; +// RM1.ShowReport; +// end +// else +// begin +// Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\' + Order_Main.fieldbyname('LBName').AsString), 'ʾ', 0); +// end; +// fRMXLSExport1.Free; +//end; + +procedure TfrmContractList.ToolButton9Click(Sender: TObject); +var + excelApp, WorkBook: Variant; + i, j, k, ExcelRowCount: integer; + maxId, M1, M2, M3: string; + FMessage: string; +begin + try + excelApp := CreateOleObject('Excel.Application'); + openDialog1.Filter := '*.CSV;*.xls'; + if opendialog1.Execute then + begin + WorkBook := excelApp.WorkBooks.Open(OpenDialog1.FileName); + end + else + exit; + excelApp.Visible := false; + ExcelRowCount := WorkBook.WorkSheets[1].UsedRange.Rows.Count; + except + application.MessageBox('EXCEL', 'Ϣ', MB_ICONERROR); + exit; + end; + try + k := 0; + for i := 1 to 100 do + begin + //󶨽ʾֶκ + for j := 1 to Tv4.ColumnCount - 1 do + begin + if trim(Tv4.Columns[j].Caption) = 'ܳƷ' then + continue; + if trim(Tv4.Columns[j].Caption) = 'Ʒ' then + continue; + if trim(Tv4.Columns[j].Caption) = 'ѡ' then + continue; + if trim(Tv4.Columns[j].Caption) = '¼' then + continue; + if trim(Tv4.Columns[j].Caption) = '¼ʱ' then + continue; + if trim(Tv4.Columns[j].Caption) = '޸' then + continue; + if trim(Tv4.Columns[j].Caption) = '޸ʱ' then + continue; + if trim(excelApp.Cells[1, i].value) = trim(Tv4.Columns[j].Caption) then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := trim(Tv4.Columns[j].DataBinding.FieldName); + dFdDy[k].FdDysName := trim(Tv4.Columns[j].Caption); + end; + end; + k := k + 1; + end; + except + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete jyorder_main_DR '); + execsql; + end; +// ShowMessage(IntToStr(k)); + ADOQueryCmd.Connection.BeginTrans; + try + for i := 2 to ExcelRowCount do + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from jyorder_main_DR where 1=2'); + open; + end; + ADOQueryCmd.Append; + for j := 0 to k - 1 do + begin + if trim(dFdDy[j].FDdys) = '' then + continue; + M1 := dFdDy[j].FDdys; //ֶ + M2 := inttostr(dFdDy[j].inc); //ǰ + M3 := excelApp.Cells[i, dFdDy[j].inc].Value; //ǰԪ + ADOQueryCmd.fieldbyname(dFdDy[j].FDdys).Value := excelApp.Cells[i, dFdDy[j].inc].Value; + end; + + ADOQueryCmd.Post; + + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('exec P_Get_Con_DR2_copy1 ''' + trim(DName) + ''' '); + ExecSQL; + end; + + WorkBook.Close; + excelApp.Quit; + excelApp := Unassigned; + WorkBook := Unassigned; + + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ!', 'ʾ', 0); + InitGrid(); + except + WorkBook.Close; + excelApp.Quit; + excelApp := Unassigned; + WorkBook := Unassigned; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; + +procedure TfrmContractList.Button2Click(Sender: TObject); +var + FMainid: string; + fPrintFile: string; + Porderno: string; + i, j: Integer; +begin + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete TBSubID where DName=''' + Trim(DCode) + ''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('SELECT * FROM TBSubID where 1=2 '); + open; + end; + FMainid := ''; + Order_Main.DisableControls; + try + ADOQueryCmd.Connection.BeginTrans; + with Order_Main do + begin + First; + while not Eof do + begin + if Fieldbyname('Ssel').AsBoolean then + begin + if FMainid = '' then + begin + FMainid := Trim(Order_Main.fieldbyname('CustomerNoName').AsString); + end + else + begin + if Trim(Order_Main.fieldbyname('CustomerNoName').AsString) <> FMainid then + begin + application.MessageBox('ѡIJͬһͻһӡ', 'ʾϢ', 0); + ADOQueryCmd.Connection.RollbackTrans; + EnableControls; + exit; + end; + end; + ADOQueryCmd.append; + ADOQueryCmd.fieldbyname('SubId').Value := Trim(Order_Main.fieldbyname('Mainid').AsString); + ADOQueryCmd.fieldbyname('Dname').Value := Trim(DCode); + ADOQueryCmd.post; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + end; + order_main.EnableControls; + +// fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf'; +// fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + Order_Main.fieldbyname('LBName').AsString + '.rmf'; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('exec P_Print_OrderBQdy ''' + trim(DCode) + ''''); + sql.Add(',''' + trim(Edit1.Text) + ''' '); +// showmessage(sql.Text); + Open; + end; + SCreateCDS20(ADOQueryPrint, CDS_Print); + SCreateCDS20(ADOQueryPrint, CDS_Print1); + SInitCDSData20(ADOQueryPrint, CDS_Print); + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + CDS_Print.fieldbyname('LBName').AsString + '.rmf'; + try + with CDS_Print do + begin + DisableControls; + first; + while not eof do + begin + CDS_Print1.EmptyDataSet; + CDS_Print1.Append; + for i := 0 to FieldCount - 1 do + begin + CDS_Print1.fields[i].value := CDS_Print.Fields[i].Value; + end; + CDS_Print1.Post; + + if (trim(CDS_Print1.fieldbyname('subid').AsString) <> '') then + begin + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + RM1.DefaultCopies := StrToInt(CDS_Print1.fieldbyname('PRTOrderQty').AsString); + RM1.ShowReport; +// RM1.PrintReport; + end + else + begin +// Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf'), 'ʾ', 0); + Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\' + Order_Main.fieldbyname('LBName').AsString), 'ʾ', 0); + exit; + end; + + end; + + Next; + end; + EnableControls; + end; + + finally + + end; +// with ADOQueryPrint do +// begin +// Close; +// sql.Clear; +// sql.Add('select A.*,B.*,ConMoney=B.PRTOrderQty*B.PRTPrice,COL=''COL:'' '); +// sql.Add(',Case when substring(PriceNote,1,3)=''FOB'' then '' ''+A.FromPlace else '' ''+A.ToPlace end as PriceNote10 '); +// sql.Add(',PrtImage=(select Top 1 FilesOther from TP_File X where X.WBID=B.PRTCode) '); +// sql.Add(' from JYOrderCon_Main A inner join JYOrderCon_Sub B on A.MainId=B.MainId '); +// sql.Add(' where B.Subid=''' + Trim(ADOQueryTemp.fieldbyname('subid').AsString) + ''''); +// Open; +// end; +// SCreateCDS20(ADOQueryPrint, CDS_Print); +// SInitCDSData20(ADOQueryPrint, CDS_Print); +// if FileExists(fPrintFile) then +// begin +// RM1.LoadFromFile(fPrintFile); +// RM1.DefaultCopies := StrToInt(Order_sub.fieldbyname('PRTOrderQty').AsString); +// RM1.ShowReport; +// end +// else +// begin +//// Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf'), 'ʾ', 0); +// Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\' + Order_Main.fieldbyname('LBName').AsString), 'ʾ', 0); +// exit; +// end; +// end; +end; + +procedure TfrmContractList.Button3Click(Sender: TObject); +begin + Panel2.Visible := false; +end; + +procedure TfrmContractList.ToolButton10Click(Sender: TObject); +begin + try + frmLabelListts := TfrmLabelListts.Create(Application); + with frmLabelListts do + begin + if ShowModal = 1 then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrderCon_Main Set LBName=''' + Trim(ADOQueryLabel.fieldbyname('labelCaption').AsString) + ''''); + sql.Add(' where Mainid=''' + Trim(Order_Main.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; +// TBRafresh.Click; + end; + end; + finally + frmLabelListts.Free; + end; +end; + +end. + diff --git a/艾登贸易管理/U_ContractListJG.dfm b/艾登贸易管理/U_ContractListJG.dfm new file mode 100644 index 0000000..ee5f361 --- /dev/null +++ b/艾登贸易管理/U_ContractListJG.dfm @@ -0,0 +1,909 @@ +object frmContractListJG: TfrmContractListJG + Left = -8 + Top = -8 + Width = 1382 + Height = 754 + Caption = #35746#21333#21512#21516 + 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 = 1366 + Height = 62 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 107 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 106 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + Caption = #20135#21697#31867#21035#23450#20041 + ImageIndex = 58 + Visible = False + OnClick = ToolButton4Click + end + object TBAdd: TToolButton + Left = 296 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 359 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object ToolButton2: TToolButton + Left = 422 + Top = 0 + AutoSize = True + Caption = #22797#21046 + ImageIndex = 57 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 485 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + OnClick = ToolButton1Click + end + object TBDel: TToolButton + Left = 548 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object tchk: TToolButton + Left = 611 + Top = 0 + AutoSize = True + Caption = #21512#21516#23436#25104 + ImageIndex = 41 + Wrap = True + OnClick = tchkClick + end + object Tnochk: TToolButton + Left = 0 + Top = 30 + AutoSize = True + Caption = #25764#38144#23436#25104 + ImageIndex = 86 + Visible = False + OnClick = TnochkClick + end + object Tqx: TToolButton + Left = 87 + Top = 30 + AutoSize = True + Caption = #21512#21516#21462#28040 + ImageIndex = 41 + OnClick = TqxClick + end + object Tnoqx: TToolButton + Left = 174 + Top = 30 + AutoSize = True + Caption = #25764#38144#21512#21516#21462#28040 + ImageIndex = 86 + OnClick = TnoqxClick + end + object TBExport: TToolButton + Left = 285 + Top = 30 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object ToolButton5: TToolButton + Left = 348 + Top = 30 + AutoSize = True + Caption = #21512#21516#38468#20214 + ImageIndex = 57 + OnClick = ToolButton5Click + end + object TBPrint: TToolButton + Left = 435 + Top = 30 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object ComboBox1: TComboBox + Left = 498 + Top = 33 + Width = 145 + Height = 24 + DropDownCount = 10 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 16 + ParentFont = False + TabOrder = 0 + Visible = False + end + object TBClose: TToolButton + Left = 643 + Top = 30 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 144 + Width = 1249 + Height = 289 + TabOrder = 1 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + OnCustomDrawCell = Tv1CustomDrawCell + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Column11 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 73 + end + object v1Column8: TcxGridDBColumn + Caption = #23458#25143#21512#21516#21495 + DataBinding.FieldName = 'KHConNo' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column1: TcxGridDBColumn + Caption = #20379#26041 + DataBinding.FieldName = 'SYRName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 94 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'ConPerson1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 91 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 94 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 80 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 80 + end + object v1PRTPrice: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PRTPrice' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + object v1PRTColor: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 59 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + object v1Column2: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 83 + end + object v1MPRTCF: TcxGridDBColumn + Caption = #25968#37327#35828#26126 + DataBinding.FieldName = 'QtyNote' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 125 + end + object v1Column10: TcxGridDBColumn + DataBinding.FieldName = 'status' + Visible = False + Hidden = True + end + object v1Column12: TcxGridDBColumn + Caption = #21512#21516#38468#20214 + DataBinding.FieldName = 'ISSC' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v1Column11: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'ConMoney' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 80 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel1: TPanel + Left = 0 + Top = 62 + Width = 1366 + Height = 43 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 2 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 291 + Top = 15 + Width = 40 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 454 + Top = 15 + Width = 53 + Height = 12 + Caption = #19994' '#21153' '#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 430 + Top = 99 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 623 + Top = 15 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 303 + Top = 99 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 303 + Top = 123 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 160 + Top = 16 + Width = 6 + Height = 12 + Caption = '-' + end + object Label3: TLabel + Left = 774 + Top = 15 + Width = 65 + Height = 12 + Caption = #23458#25143#21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 168 + Top = 11 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object CustomerNoName: TEdit + Tag = 2 + Left = 331 + Top = 11 + Width = 78 + Height = 20 + TabOrder = 2 + OnChange = CustomerNoNameChange + OnKeyPress = ConNoKeyPress + end + object ConPerson1: TEdit + Tag = 2 + Left = 507 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 3 + OnChange = CustomerNoNameChange + OnKeyPress = ConNoKeyPress + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 483 + Top = 95 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 4 + OnChange = CustomerNoNameChange + end + object ConNo: TEdit + Tag = 2 + Left = 664 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 5 + OnChange = CustomerNoNameChange + OnKeyPress = ConNoKeyPress + end + object MPRTKZ: TEdit + Tag = 2 + Left = 332 + Top = 95 + Width = 56 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 6 + OnChange = CustomerNoNameChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 332 + Top = 119 + Width = 56 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 7 + OnChange = CustomerNoNameChange + end + object KHConNO: TEdit + Tag = 2 + Left = 843 + Top = 11 + Width = 80 + Height = 20 + TabOrder = 8 + OnChange = CustomerNoNameChange + OnKeyPress = ConNoKeyPress + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 105 + Width = 1366 + Height = 22 + Align = alTop + Style = 9 + TabIndex = 0 + TabOrder = 3 + Tabs.Strings = ( + #26410#23436#25104 + #24050#23436#25104 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectBottom = 22 + ClientRectRight = 1366 + ClientRectTop = 19 + end + object cxGrid2: TcxGrid + Left = 0 + Top = 528 + Width = 1366 + Height = 188 + Align = alBottom + TabOrder = 4 + object TV2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCustomDrawCell = TV2CustomDrawCell + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + Column = cxGridDBColumn4 + end + item + Format = '0' + Position = spFooter + Column = cxGridDBColumn5 + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn4 + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object V2Column1: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'PRTCode' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'PrtCodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 126 + end + object v1Column5: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'prtspec' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = False + Visible = False + HeaderAlignmentHorz = taCenter + Hidden = True + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 90 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39068#33394#33521#25991 + DataBinding.FieldName = 'SOrdDefStr4' + Visible = False + HeaderAlignmentHorz = taCenter + Hidden = True + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1Column6: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'prtmf' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column7: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'prtkz' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column3: TcxGridDBColumn + Caption = #33457#22411#33457#21495 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FonePurple + Width = 59 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 66 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PRTPrice' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 68 + end + object v1PriceUnit: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 66 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'SOrdDefNote1' + HeaderAlignmentHorz = taCenter + Width = 113 + end + object V2Column2: TcxGridDBColumn + DataBinding.FieldName = 'ISCZ' + Visible = False + HeaderGlyphAlignmentVert = vaBottom + Hidden = True + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 520 + Width = 1366 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + Control = cxGrid2 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = RMDBDataSet1 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 336 + Top = 200 + ReportData = {} + end + object RMDBDataSet1: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 392 + Top = 200 + 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 = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 288 + Top = 184 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end + object PopupMenu2: TPopupMenu + Left = 648 + Top = 168 + object N11: TMenuItem + Caption = #26684#24335'1' + end + object N21: TMenuItem + Caption = #26684#24335'2' + end + object N31: TMenuItem + Caption = #26684#24335'3' + end + end + object ADOQuerySub: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 556 + Top = 416 + end + object DataSource2: TDataSource + DataSet = ADOQuerySub + Left = 488 + Top = 440 + end +end diff --git a/艾登贸易管理/U_ContractListJG.pas b/艾登贸易管理/U_ContractListJG.pas new file mode 100644 index 0000000..59ca0e0 --- /dev/null +++ b/艾登贸易管理/U_ContractListJG.pas @@ -0,0 +1,1006 @@ +unit U_ContractListJG; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus, cxPC, cxButtonEdit; + +type + TfrmContractListJG = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + TBExport: TToolButton; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + v1MPRTCF: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBDataSet1: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + v1PRTPrice: TcxGridDBColumn; + ToolButton1: TToolButton; + v1Column1: TcxGridDBColumn; + ToolButton2: TToolButton; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + v1Column4: TcxGridDBColumn; + PopupMenu2: TPopupMenu; + N11: TMenuItem; + N21: TMenuItem; + N31: TMenuItem; + Panel1: TPanel; + Label1: TLabel; + Label4: TLabel; + Label5: TLabel; + Label8: TLabel; + Label9: TLabel; + Label12: TLabel; + Label13: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + CustomerNoName: TEdit; + ConPerson1: TEdit; + MPRTCodeName: TEdit; + ConNo: TEdit; + MPRTKZ: TEdit; + MPRTMF: TEdit; + v1Column2: TcxGridDBColumn; + ComboBox1: TComboBox; + ToolButton4: TToolButton; + cxTabControl1: TcxTabControl; + tchk: TToolButton; + Tnochk: TToolButton; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + v1PriceUnit: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + cxSplitter1: TcxSplitter; + ADOQuerySub: TADOQuery; + DataSource2: TDataSource; + v1Column8: TcxGridDBColumn; + Label2: TLabel; + KHConNO: TEdit; + Label3: TLabel; + Tqx: TToolButton; + Tnoqx: TToolButton; + ToolButton5: TToolButton; + v1Column10: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + V2Column1: TcxGridDBColumn; + V2Column2: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure CustomerNoNameChange(Sender: TObject); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + procedure ToolButton4Click(Sender: TObject); + procedure tchkClick(Sender: TObject); + procedure TnochkClick(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); + procedure TqxClick(Sender: TObject); + procedure TnoqxClick(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure TV2CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + private + DQdate:TDateTime; + fuserName:string; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + procedure SetStatus(); + procedure InitSub(); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmContractListJG: TfrmContractListJG; + +implementation +uses + U_DataLink,U_ConInPutJG,U_Fun,U_ZDYHelp, U_FjList_RZ; + +{$R *.dfm} +procedure TfrmContractListJG.InitSub(); +begin + ADOQuerySub.Close; + IF Order_Main.IsEmpty then exit; + with ADOQuerySub do + begin + close; + sql.Clear; + sql.Add('select A.*,IScZ=isnull((select count(MainID) from JYOrder_Sub X where X.Sorddefstr10=A.subID),0) from JYOrderCon_sub A '); + sql.Add('where mainID ='+quotedstr((Order_Main.fieldbyname('mainID').AsString))); + open; + end; +end; +procedure TfrmContractListJG.SetStatus(); +begin + tchk.Visible:=false; + tnochk.Visible:=false; + tbedit.Visible:=false; + tbdel.Visible:=false; + Tqx.Visible:=false; + TNoqx.Visible:=false; + { if Trim(DParameters1)<>'Ȩ' then + begin + case cxTabControl1.TabIndex of + 0:begin + IF trim(DCode)<>'A2' then + begin + tbedit.Visible:=true; + tbdel.Visible:=true; + end; + Tqx.Visible:=true; + end; + 1:begin + Tqx.Visible:=true; + end; + 2:begin + TNoqx.Visible:=true; + end; + 3:begin + end; + end; + end + else + begin + case cxTabControl1.TabIndex of + 0:begin + + tchk.Visible:=true; + tbedit.Visible:=true; + tbdel.Visible:=true; + Tqx.Visible:=true; + end; + 1:begin + tnochk.Visible:=true; + Tqx.Visible:=true; + end; + 2:begin + TNOqx.Visible:=true; + end; + 3:begin + end; + end; + end;} + + case cxTabControl1.TabIndex of + 0:begin + + tchk.Visible:=true; + tbedit.Visible:=true; + tbdel.Visible:=true; + // Tqx.Visible:=true; + end; + 1:begin + tnochk.Visible:=true; + // Tqx.Visible:=true; + end; + 2:begin + // TNOqx.Visible:=true; + end; + end; +end; + + +procedure TfrmContractListJG.FormDestroy(Sender: TObject); +begin + frmContractListJG:=nil; +end; + +procedure TfrmContractListJG.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmContractListJG.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmContractListJG.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ͻӹͬб',Tv1,'ָʾ'); +end; + +procedure TfrmContractListJG.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select A.*,A.ConNo ConNoM '); + SQL.Add(',PRTOrderQty=(select Sum(PRTOrderQty) from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',ConMoney=(select Sum(PRTOrderQty*PRTPrice) from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',OrderUnit=(select top 1 OrderUnit from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',PriceUnit=(select top 1 PriceUnit from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',PRTPrice=(select top 1 PRTPrice from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',case when isnull((select top 1 X.conNO from Contract_Main X where X.conNo=A.conNO) ,'''')='''' then '''' else '''' end as IScg '); + sql.Add(',ISSC=cast((case when isnull((select count(WBID) from TP_File X where X.WBID=A.maiNID and X.TFType=''ͬ''),0)>0 then 1 else 0 end) as bit)'); + sql.Add(' from JYOrderCon_Main A '); + SQL.Add('where A.OrdDate>='''+FormatDateTime('yyyy-MM-dd',BegDate.DateTime)+''''); + SQL.Add('and A.OrdDate<'''+FormatDateTime('yyyy-MM-dd',enddate.DateTime+1)+''''); + sql.Add(' and A.MPRTType=''ӹ'' '); + if Trim(DParameters1)<>'Ȩ' then + begin + sql.Add('and A.Filler='''+Trim(DName)+''''); + end; + IF cxTabControl1.TabIndex<2 then + begin + sql.Add(' and isnull(A.status,''0'')='''+inttostr(cxTabControl1.TabIndex)+''''); + end; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmContractListJG.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmContractListJG.InitForm(); +begin + ReadCxGrid('ͻӹͬб',Tv1,'ָʾ'); + + if FCloth=1 then + begin + v1Column4.Visible:=True; + v1PRTPrice.Visible:=False; + v1PRTPrice.Hidden:=True; + end + else + begin + v1Column4.Visible:=False; + v1PRTPrice.Visible:=True; + v1PRTPrice.Hidden:=False; + end; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-30; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 10* from JYOrderCon_Main Order by FillTime desc'); + Open; + end; + ComboBox1.Clear; + with ADOQueryTemp do + begin + First; + while not Eof do + begin + ComboBox1.Items.Add(Trim(ADOQueryTemp.fieldbyname('ConNO').AsString)); + Next; + end; + end; +end; + +procedure TfrmContractListJG.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmContractListJG.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select mainID from JYOrder_main A where ConNo='+quotedstr(trim(Order_Main.fieldbyname('conNO').AsString))); + open; + IF not ADOQueryTemp.IsEmpty then + begin + Application.MessageBox('Ѿָʾ޸ĺͬ','ʾ',0); + Exit; + end; + end; + try + frmConInPutJG:=TfrmConInPutJG.Create(Application); + with frmConInPutJG do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmConInPutJG.Free; + end; +end; + +procedure TfrmContractListJG.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData() then + begin + Order_Main.Delete; + end; +end; + +function TfrmContractListJG.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrderCon_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrderCon_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmContractListJG.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv1,ADOQueryMain,'ָʾб'); +end; + +procedure TfrmContractListJG.TBPrintClick(Sender: TObject); +var + fPrintFile:string; + EngMoney:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ͻӹͬ.rmf' ; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*,ConMoney=B.PRTOrderQty*B.PRTPrice,COL=''COL:'' '); + sql.Add(' from JYOrderCon_Main A inner join JYOrderCon_Sub B on A.MainId=B.MainId '); + sql.Add(' where A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print); + // + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select TolConMoney=Sum(PRTOrderQty*PRTPrice)'); + sql.Add(' from JYOrderCon_Main A inner join JYOrderCon_Sub B on A.MainId=B.MainId '); + sql.Add(' where A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + EngMoney:=num2cengnum(ADOQueryTemp.fieldbyname('TolConMoney').AsString); + EngMoney:=UpperCase(EngMoney); + if FileExists(fPrintFile) then + begin + RMVariables['EngMoney']:=EngMoney; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\Ӣĺͬ.rmf'),'ʾ',0); + end; +end; + +procedure TfrmContractListJG.TBRafreshClick(Sender: TObject); +begin + InitGrid(); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 10* from JYOrderCon_Main Order by FillTime desc '); + Open; + end; + ComboBox1.Clear; + with ADOQueryTemp do + begin + First; + while not Eof do + begin + ComboBox1.Items.Add(Trim(ADOQueryTemp.fieldbyname('ConNO').AsString)); + Next; + end; + end; + TBFind.Click; +end; + +procedure TfrmContractListJG.TBAddClick(Sender: TObject); +var + maxno:string; +begin + try + frmConInPutJG:=TfrmConInPutJG.Create(Application); + with frmConInPutJG do + begin + PState:=0; + FMainId:=''; + if ShowModal=1 then + begin + + end; + end; + finally + frmConInPutJG.Free; + end; +end; + +procedure TfrmContractListJG.FormShow(Sender: TObject); +begin + fuserName:=DCode; + if (trim(DCode)='A1') or (trim(DCode)='A2') then + begin + fuserName:='A'; + end; + InitForm(); + SetStatus(); +end; + +procedure TfrmContractListJG.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if ToolButton1.Visible=False then Exit; + ToolButton1.Click; +end; + +procedure TfrmContractListJG.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmContractListJG.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmContractListJG.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmContractListJG.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmContractListJG.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmContractListJG.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmContractListJG.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmContractListJG.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmConInPutJG:=TfrmConInPutJG.Create(Application); + with frmConInPutJG do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible:=False; + TBSave.Visible:=False; + ScrollBox1.Enabled:=False; + Tv1.OptionsSelection.CellSelect:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmConInPutJG.Free; + end; +end; + +procedure TfrmContractListJG.ToolButton2Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmConInPutJG:=TfrmConInPutJG.Create(Application); + with frmConInPutJG do + begin + PState:=1; + CopyInt:=99; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmConInPutJG.Free; + end; +end; + +procedure TfrmContractListJG.ToolButton3Click(Sender: TObject); +begin + ModalResult:=1; +end; + +procedure TfrmContractListJG.CustomerNoNameChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmContractListJG.ConNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if Length(Tedit(Sender).Text)<1 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add('select A.*,A.ConNo ConNoM '); + SQL.Add(',PRTOrderQty=(select Sum(PRTOrderQty) from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',ConMoney=(select Sum(PRTOrderQty*PRTPrice) from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',OrderUnit=(select top 1 OrderUnit from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',PriceUnit=(select top 1 PriceUnit from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',PRTPrice=(select top 1 PRTPrice from JYOrderCon_Sub B where B.MainId=A.MainId)'); + sql.Add(',ISSC=cast((case when isnull((select count(WBID) from TP_File X where X.WBID=A.maiNID and X.TFType=''ͬ''),0)>0 then 1 else 0 end) as bit)'); + sql.Add(' from JYOrderCon_Main A '); + SQL.Add('where OrdDate>='''+'1899-01-01'+''''); + SQL.Add('and OrdDate<'''+'2050-01-01'+''''); + sql.Add(' and MPRTType='''' '); + if Trim(DParameters1)<>'Ȩ' then + begin + sql.Add('and A.Filler='''+Trim(DName)+''''); + end; + // sql.Add(' and ConNo like '''+'%'+Trim(ConNoM.Text)+'%'+''''); + sql.Add(' and '+Tedit(Sender).Name+' like '+quotedstr(trim('%'+trim(Tedit(Sender).Text)+'%'))); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmContractListJG.ToolButton4Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTNameType'; + flagname:='Ʒ'; + V1HelpType.Visible:=True; + V1HelpType.Caption:='д'; + fnote:=True; + V1Name.Caption:=''; + V1Note.Caption:='Ӣ'; + if ShowModal=1 then + begin + + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContractListJG.tchkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrdercon_Main SET status=''1'' '); + sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' '+quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(','+quotedstr(trim(self.Caption))); + sql.Add(','+quotedstr(trim('ͬ'))); + sql.Add(','+quotedstr(trim('ͬţ'+trim(Order_Main.FieldByName('conNo').AsString)))); + sql.Add(','+quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ͬɳɹ','ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ͬʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmContractListJG.TnochkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrdercon_Main SET status=''0'' '); + sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' '+quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(','+quotedstr(trim(self.Caption))); + sql.Add(','+quotedstr(trim('ͬ'))); + sql.Add(','+quotedstr(trim('ͬţ'+trim(Order_Main.FieldByName('conNo').AsString)))); + sql.Add(','+quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ͬɳɹ','ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ͬʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmContractListJG.cxTabControl1Change(Sender: TObject); +begin + SetStatus(); + TBRafresh.Click; + +end; + +procedure TfrmContractListJG.Tv1FocusedRecordChanged( + Sender: TcxCustomGridTableView; APrevFocusedRecord, + AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); +begin + InitSub(); +end; + +procedure TfrmContractListJG.TqxClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrdercon_Main SET status=''2'' '); + sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' '+quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(','+quotedstr(trim(self.Caption))); + sql.Add(','+quotedstr(trim('ͬȡ'))); + sql.Add(','+quotedstr(trim('ͬţ'+trim(Order_Main.FieldByName('conNo').AsString)))); + sql.Add(','+quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ͬȡɹ','ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ͬȡʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmContractListJG.TnoqxClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrdercon_Main SET status=''0'' '); + sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' '+quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(','+quotedstr(trim(self.Caption))); + sql.Add(','+quotedstr(trim('ͬȡ'))); + sql.Add(','+quotedstr(trim('ͬţ'+trim(Order_Main.FieldByName('conNo').AsString)))); + sql.Add(','+quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ͬȡɹ','ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ͬȡʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmContractListJG.ToolButton5Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmFjList_RZ:=TfrmFjList_RZ.Create(Application); + with frmFjList_RZ do + begin + // PState:=1; + if Trim(DParameters1)<>'Ȩ' then cxButton1.Visible:=false; + fkeyNO:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + fType:='ͬ'; + if ShowModal=1 then + begin + + end; + end; + finally + frmFjList_RZ.Free; + end; +end; + +procedure TfrmContractListJG.Tv1CustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + IF AViewInfo.GridRecord.Values[tv1.GetColumnByFieldName('status').Index]='2' then + ACanvas.Brush.Color:=clLime; +end; + +procedure TfrmContractListJG.TV2CustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + IF AViewInfo.GridRecord.Values[tv2.GetColumnByFieldName('ISCZ').Index]>='1' then + ACanvas.Brush.Color:=$00F8E4D8; +end; + +end. diff --git a/艾登贸易管理/U_ContractListNX.dfm b/艾登贸易管理/U_ContractListNX.dfm new file mode 100644 index 0000000..b715de8 --- /dev/null +++ b/艾登贸易管理/U_ContractListNX.dfm @@ -0,0 +1,909 @@ +object frmContractListNX: TfrmContractListNX + Left = -8 + Top = -8 + Width = 1382 + Height = 754 + Caption = #35746#21333#21512#21516 + 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 = 1366 + Height = 62 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 107 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 106 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + Caption = #20135#21697#31867#21035#23450#20041 + ImageIndex = 58 + Visible = False + OnClick = ToolButton4Click + end + object TBAdd: TToolButton + Left = 296 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 359 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object ToolButton2: TToolButton + Left = 422 + Top = 0 + AutoSize = True + Caption = #22797#21046 + ImageIndex = 57 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 485 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + OnClick = ToolButton1Click + end + object TBDel: TToolButton + Left = 548 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object tchk: TToolButton + Left = 611 + Top = 0 + AutoSize = True + Caption = #21512#21516#23436#25104 + ImageIndex = 41 + Wrap = True + OnClick = tchkClick + end + object Tnochk: TToolButton + Left = 0 + Top = 30 + AutoSize = True + Caption = #25764#38144#23436#25104 + ImageIndex = 86 + Visible = False + OnClick = TnochkClick + end + object Tqx: TToolButton + Left = 87 + Top = 30 + AutoSize = True + Caption = #21512#21516#21462#28040 + ImageIndex = 41 + OnClick = TqxClick + end + object Tnoqx: TToolButton + Left = 174 + Top = 30 + AutoSize = True + Caption = #25764#38144#21512#21516#21462#28040 + ImageIndex = 86 + OnClick = TnoqxClick + end + object TBExport: TToolButton + Left = 285 + Top = 30 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object ToolButton5: TToolButton + Left = 348 + Top = 30 + AutoSize = True + Caption = #21512#21516#38468#20214 + ImageIndex = 57 + OnClick = ToolButton5Click + end + object TBPrint: TToolButton + Left = 435 + Top = 30 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object ComboBox1: TComboBox + Left = 498 + Top = 33 + Width = 145 + Height = 24 + DropDownCount = 10 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 16 + ParentFont = False + TabOrder = 0 + Visible = False + end + object TBClose: TToolButton + Left = 643 + Top = 30 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxGrid1: TcxGrid + Left = 4 + Top = 128 + Width = 1249 + Height = 289 + TabOrder = 1 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + OnCellDblClick = Tv1CellDblClick + OnCustomDrawCell = Tv1CustomDrawCell + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Column11 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 73 + end + object v1Column8: TcxGridDBColumn + Caption = #23458#25143#21512#21516#21495 + DataBinding.FieldName = 'KHConNo' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column1: TcxGridDBColumn + Caption = #20379#26041 + DataBinding.FieldName = 'SYRName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 94 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'ConPerson1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 91 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 94 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 80 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 80 + end + object v1PRTPrice: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PRTPrice' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + object v1PRTColor: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 59 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + object v1Column2: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 83 + end + object v1MPRTCF: TcxGridDBColumn + Caption = #25968#37327#35828#26126 + DataBinding.FieldName = 'QtyNote' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 125 + end + object v1Column10: TcxGridDBColumn + DataBinding.FieldName = 'status' + Visible = False + VisibleForCustomization = False + end + object v1Column12: TcxGridDBColumn + Caption = #21512#21516#38468#20214 + DataBinding.FieldName = 'ISSC' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v1Column11: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'ConMoney' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 80 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel1: TPanel + Left = 0 + Top = 62 + Width = 1366 + Height = 43 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 2 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 291 + Top = 15 + Width = 40 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 454 + Top = 15 + Width = 53 + Height = 12 + Caption = #19994' '#21153' '#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 430 + Top = 99 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 623 + Top = 15 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 303 + Top = 99 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 303 + Top = 123 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 160 + Top = 16 + Width = 6 + Height = 12 + Caption = '-' + end + object Label3: TLabel + Left = 774 + Top = 15 + Width = 65 + Height = 12 + Caption = #23458#25143#21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 168 + Top = 11 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object CustomerNoName: TEdit + Tag = 2 + Left = 331 + Top = 11 + Width = 78 + Height = 20 + TabOrder = 2 + OnChange = CustomerNoNameChange + OnKeyPress = ConNoKeyPress + end + object ConPerson1: TEdit + Tag = 2 + Left = 507 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 3 + OnChange = CustomerNoNameChange + OnKeyPress = ConNoKeyPress + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 483 + Top = 95 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 4 + OnChange = CustomerNoNameChange + end + object ConNo: TEdit + Tag = 2 + Left = 664 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 5 + OnChange = CustomerNoNameChange + OnKeyPress = ConNoKeyPress + end + object MPRTKZ: TEdit + Tag = 2 + Left = 332 + Top = 95 + Width = 56 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 6 + OnChange = CustomerNoNameChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 332 + Top = 119 + Width = 56 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 7 + OnChange = CustomerNoNameChange + end + object KHConNO: TEdit + Tag = 2 + Left = 843 + Top = 11 + Width = 80 + Height = 20 + TabOrder = 8 + OnChange = CustomerNoNameChange + OnKeyPress = ConNoKeyPress + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 105 + Width = 1366 + Height = 22 + Align = alTop + TabOrder = 3 + Properties.CustomButtons.Buttons = <> + Properties.Style = 9 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + #26410#23436#25104 + #24050#23436#25104 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectBottom = 22 + ClientRectRight = 1366 + ClientRectTop = 19 + end + object cxGrid2: TcxGrid + Left = 0 + Top = 527 + Width = 1366 + Height = 188 + Align = alBottom + TabOrder = 4 + object TV2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + OnCustomDrawCell = TV2CustomDrawCell + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + Column = cxGridDBColumn4 + end + item + Format = '0' + Position = spFooter + Column = cxGridDBColumn5 + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn4 + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object V2Column1: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'prtCode' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'PrtCodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 126 + end + object v1Column5: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'prtspec' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = False + Visible = False + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + VisibleForCustomization = False + Width = 90 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39068#33394#33521#25991 + DataBinding.FieldName = 'SOrdDefStr4' + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + VisibleForCustomization = False + Width = 72 + end + object v1Column6: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'prtmf' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column7: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'prtkz' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column3: TcxGridDBColumn + Caption = #33457#22411#33457#21495 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FonePurple + Width = 59 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 66 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PRTPrice' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 68 + end + object v1PriceUnit: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 66 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'SOrdDefNote1' + HeaderAlignmentHorz = taCenter + Width = 113 + end + object V2Column2: TcxGridDBColumn + DataBinding.FieldName = 'ISCZ' + Visible = False + VisibleForCustomization = False + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 519 + Width = 1366 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + Control = cxGrid2 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = RMDBDataSet1 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 336 + Top = 200 + ReportData = {} + end + object RMDBDataSet1: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 288 + Top = 184 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 340 + Top = 260 + end + object PopupMenu2: TPopupMenu + Left = 648 + Top = 168 + object N11: TMenuItem + Caption = #26684#24335'1' + end + object N21: TMenuItem + Caption = #26684#24335'2' + end + object N31: TMenuItem + Caption = #26684#24335'3' + end + end + object ADOQuerySub: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 556 + Top = 416 + end + object DataSource2: TDataSource + DataSet = ADOQuerySub + Left = 488 + Top = 440 + end +end diff --git a/艾登贸易管理/U_ContractListNX.pas b/艾登贸易管理/U_ContractListNX.pas new file mode 100644 index 0000000..f22f736 --- /dev/null +++ b/艾登贸易管理/U_ContractListNX.pas @@ -0,0 +1,1008 @@ +unit U_ContractListNX; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus, cxPC, cxButtonEdit, cxLookAndFeels, cxLookAndFeelPainters, + cxNavigator, dxBarBuiltInMenu; + +type + TfrmContractListNX = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + TBExport: TToolButton; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + v1MPRTCF: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBDataSet1: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + v1PRTPrice: TcxGridDBColumn; + ToolButton1: TToolButton; + v1Column1: TcxGridDBColumn; + ToolButton2: TToolButton; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + v1Column4: TcxGridDBColumn; + PopupMenu2: TPopupMenu; + N11: TMenuItem; + N21: TMenuItem; + N31: TMenuItem; + Panel1: TPanel; + Label1: TLabel; + Label4: TLabel; + Label5: TLabel; + Label8: TLabel; + Label9: TLabel; + Label12: TLabel; + Label13: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + CustomerNoName: TEdit; + ConPerson1: TEdit; + MPRTCodeName: TEdit; + ConNo: TEdit; + MPRTKZ: TEdit; + MPRTMF: TEdit; + v1Column2: TcxGridDBColumn; + ComboBox1: TComboBox; + ToolButton4: TToolButton; + cxTabControl1: TcxTabControl; + tchk: TToolButton; + Tnochk: TToolButton; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + v1PriceUnit: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + cxSplitter1: TcxSplitter; + ADOQuerySub: TADOQuery; + DataSource2: TDataSource; + v1Column8: TcxGridDBColumn; + Label2: TLabel; + KHConNO: TEdit; + Label3: TLabel; + Tqx: TToolButton; + Tnoqx: TToolButton; + ToolButton5: TToolButton; + v1Column10: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + V2Column1: TcxGridDBColumn; + V2Column2: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure CustomerNoNameChange(Sender: TObject); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + procedure ToolButton4Click(Sender: TObject); + procedure tchkClick(Sender: TObject); + procedure TnochkClick(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); + procedure TqxClick(Sender: TObject); + procedure TnoqxClick(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure TV2CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + private + DQdate:TDateTime; + fuserName:string; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + procedure SetStatus(); + procedure InitSub(); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmContractListNX: TfrmContractListNX; + +implementation +uses + U_DataLink,U_ConInPutNX,U_Fun,U_ZDYHelp, U_FjList_RZ; + +{$R *.dfm} +procedure TfrmContractListNX.InitSub(); +begin + ADOQuerySub.Close; + IF Order_Main.IsEmpty then exit; + with ADOQuerySub do + begin + close; + sql.Clear; + sql.Add('select A.*,IScZ=isnull((select count(MainID) from JYOrder_Sub X where X.Sorddefstr10=A.subID),0) from JYOrderCon_sub A '); + sql.Add('where mainID ='+quotedstr((Order_Main.fieldbyname('mainID').AsString))); + open; + end; +end; +procedure TfrmContractListNX.SetStatus(); +begin + tchk.Visible:=false; + tnochk.Visible:=false; + tbedit.Visible:=false; + tbdel.Visible:=false; + Tqx.Visible:=false; + TNoqx.Visible:=false; + { if Trim(DParameters1)<>'Ȩ' then + begin + case cxTabControl1.TabIndex of + 0:begin + IF trim(DCode)<>'A2' then + begin + tbedit.Visible:=true; + tbdel.Visible:=true; + end; + Tqx.Visible:=true; + end; + 1:begin + Tqx.Visible:=true; + end; + 2:begin + TNoqx.Visible:=true; + end; + 3:begin + end; + end; + end + else + begin + case cxTabControl1.TabIndex of + 0:begin + + tchk.Visible:=true; + tbedit.Visible:=true; + tbdel.Visible:=true; + Tqx.Visible:=true; + end; + 1:begin + tnochk.Visible:=true; + Tqx.Visible:=true; + end; + 2:begin + TNOqx.Visible:=true; + end; + 3:begin + end; + end; + end; } + + case cxTabControl1.TabIndex of + 0:begin + + tchk.Visible:=true; + tbedit.Visible:=true; + tbdel.Visible:=true; + //Tqx.Visible:=true; + end; + 1:begin + tnochk.Visible:=true; + //Tqx.Visible:=true; + end; + 2:begin + // TNOqx.Visible:=true; + end; + + end; +end; + + +procedure TfrmContractListNX.FormDestroy(Sender: TObject); +begin + frmContractListNX:=nil; +end; + +procedure TfrmContractListNX.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmContractListNX.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmContractListNX.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ͬб',Tv1,'ָʾ'); +end; + +procedure TfrmContractListNX.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select A.*,A.ConNo ConNoM '); + SQL.Add(',PRTOrderQty=(select Sum(PRTOrderQty) from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',ConMoney=(select Sum(PRTOrderQty*PRTPrice) from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',OrderUnit=(select top 1 OrderUnit from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',PriceUnit=(select top 1 PriceUnit from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',PRTPrice=(select top 1 PRTPrice from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',case when isnull((select top 1 X.conNO from Contract_Main X where X.conNo=A.conNO) ,'''')='''' then '''' else '''' end as IScg '); + sql.Add(',ISSC=cast((case when isnull((select count(WBID) from TP_File X where X.WBID=A.maiNID and X.TFType=''ͬ''),0)>0 then 1 else 0 end) as bit)'); + sql.Add(' from JYOrderCon_Main A '); + SQL.Add('where A.OrdDate>='''+FormatDateTime('yyyy-MM-dd',BegDate.DateTime)+''''); + SQL.Add('and A.OrdDate<'''+FormatDateTime('yyyy-MM-dd',enddate.DateTime+1)+''''); + sql.Add(' and A.MPRTType='''' '); + if Trim(DParameters1)<>'Ȩ' then + begin + sql.Add('and A.Filler='''+Trim(DName)+''''); + end; + IF cxTabControl1.TabIndex<2 then + begin + sql.Add(' and isnull(A.status,''0'')='''+inttostr(cxTabControl1.TabIndex)+''''); + end; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmContractListNX.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmContractListNX.InitForm(); +begin + ReadCxGrid('ͬб',Tv1,'ָʾ'); + + if FCloth=1 then + begin + v1Column4.Visible:=True; + v1PRTPrice.Visible:=False; + v1PRTPrice.Hidden:=True; + end + else + begin + v1Column4.Visible:=False; + v1PRTPrice.Visible:=True; + v1PRTPrice.Hidden:=False; + end; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-30; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 10* from JYOrderCon_Main Order by FillTime desc'); + Open; + end; + ComboBox1.Clear; + with ADOQueryTemp do + begin + First; + while not Eof do + begin + ComboBox1.Items.Add(Trim(ADOQueryTemp.fieldbyname('ConNO').AsString)); + Next; + end; + end; +end; + +procedure TfrmContractListNX.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmContractListNX.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select mainID from JYOrder_main A where ConNo='+quotedstr(trim(Order_Main.fieldbyname('conNO').AsString))); + open; + IF not ADOQueryTemp.IsEmpty then + begin + Application.MessageBox('Ѿָʾ޸ĺͬ','ʾ',0); + Exit; + end; + end; + try + frmConInPutNX:=TfrmConInPutNX.Create(Application); + with frmConInPutNX do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmConInPutNX.Free; + end; +end; + +procedure TfrmContractListNX.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData() then + begin + Order_Main.Delete; + end; +end; + +function TfrmContractListNX.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrderCon_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrderCon_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmContractListNX.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv1,ADOQueryMain,'ָʾб'); +end; + +procedure TfrmContractListNX.TBPrintClick(Sender: TObject); +var + fPrintFile:string; + EngMoney:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ͬ.rmf' ; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*,ConMoney=B.PRTOrderQty*B.PRTPrice,COL=''COL:'' '); + sql.Add(' from JYOrderCon_Main A inner join JYOrderCon_Sub B on A.MainId=B.MainId '); + sql.Add(' where A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print); + // + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select TolConMoney=Sum(PRTOrderQty*PRTPrice)'); + sql.Add(' from JYOrderCon_Main A inner join JYOrderCon_Sub B on A.MainId=B.MainId '); + sql.Add(' where A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + EngMoney:=num2cengnum(ADOQueryTemp.fieldbyname('TolConMoney').AsString); + EngMoney:=UpperCase(EngMoney); + if FileExists(fPrintFile) then + begin + RMVariables['EngMoney']:=EngMoney; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\Ӣĺͬ.rmf'),'ʾ',0); + end; +end; + +procedure TfrmContractListNX.TBRafreshClick(Sender: TObject); +begin + InitGrid(); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 10* from JYOrderCon_Main Order by FillTime desc '); + Open; + end; + ComboBox1.Clear; + with ADOQueryTemp do + begin + First; + while not Eof do + begin + ComboBox1.Items.Add(Trim(ADOQueryTemp.fieldbyname('ConNO').AsString)); + Next; + end; + end; + TBFind.Click; +end; + +procedure TfrmContractListNX.TBAddClick(Sender: TObject); +var + maxno:string; +begin + try + frmConInPutNX:=TfrmConInPutNX.Create(Application); + with frmConInPutNX do + begin + PState:=0; + FMainId:=''; + if ShowModal=1 then + begin + + end; + end; + finally + frmConInPutNX.Free; + end; +end; + +procedure TfrmContractListNX.FormShow(Sender: TObject); +begin + fuserName:=DCode; + if (trim(DCode)='A1') or (trim(DCode)='A2') then + begin + fuserName:='A'; + end; + InitForm(); + SetStatus(); +end; + +procedure TfrmContractListNX.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if ToolButton1.Visible=False then Exit; + ToolButton1.Click; +end; + +procedure TfrmContractListNX.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmContractListNX.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmContractListNX.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmContractListNX.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmContractListNX.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmContractListNX.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmContractListNX.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmContractListNX.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmConInPutNX:=TfrmConInPutNX.Create(Application); + with frmConInPutNX do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible:=False; + TBSave.Visible:=False; + ScrollBox1.Enabled:=False; + Tv1.OptionsSelection.CellSelect:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmConInPutNX.Free; + end; +end; + +procedure TfrmContractListNX.ToolButton2Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmConInPutNX:=TfrmConInPutNX.Create(Application); + with frmConInPutNX do + begin + PState:=1; + CopyInt:=99; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmConInPutNX.Free; + end; +end; + +procedure TfrmContractListNX.ToolButton3Click(Sender: TObject); +begin + ModalResult:=1; +end; + +procedure TfrmContractListNX.CustomerNoNameChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmContractListNX.ConNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if Length(Tedit(Sender).Text)<1 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add('select A.*,A.ConNo ConNoM '); + SQL.Add(',PRTOrderQty=(select Sum(PRTOrderQty) from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',ConMoney=(select Sum(PRTOrderQty*PRTPrice) from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',OrderUnit=(select top 1 OrderUnit from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',PriceUnit=(select top 1 PriceUnit from JYOrderCon_Sub B where B.MainId=A.MainId)'); + SQL.Add(',PRTPrice=(select top 1 PRTPrice from JYOrderCon_Sub B where B.MainId=A.MainId)'); + sql.Add(',ISSC=cast((case when isnull((select count(WBID) from TP_File X where X.WBID=A.maiNID and X.TFType=''ͬ''),0)>0 then 1 else 0 end) as bit)'); + sql.Add(' from JYOrderCon_Main A '); + SQL.Add('where OrdDate>='''+'1899-01-01'+''''); + SQL.Add('and OrdDate<'''+'2050-01-01'+''''); + sql.Add(' and MPRTType='''' '); + if Trim(DParameters1)<>'Ȩ' then + begin + sql.Add('and A.Filler='''+Trim(DName)+''''); + end; + // sql.Add(' and ConNo like '''+'%'+Trim(ConNoM.Text)+'%'+''''); + sql.Add(' and '+Tedit(Sender).Name+' like '+quotedstr(trim('%'+trim(Tedit(Sender).Text)+'%'))); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmContractListNX.ToolButton4Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTNameType'; + flagname:='Ʒ'; + V1HelpType.Visible:=True; + V1HelpType.Caption:='д'; + fnote:=True; + V1Name.Caption:=''; + V1Note.Caption:='Ӣ'; + if ShowModal=1 then + begin + + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContractListNX.tchkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrdercon_Main SET status=''1'' '); + sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' '+quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(','+quotedstr(trim(self.Caption))); + sql.Add(','+quotedstr(trim('ͬ'))); + sql.Add(','+quotedstr(trim('ͬţ'+trim(Order_Main.FieldByName('conNo').AsString)))); + sql.Add(','+quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ͬɳɹ','ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ͬʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmContractListNX.TnochkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrdercon_Main SET status=''0'' '); + sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' '+quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(','+quotedstr(trim(self.Caption))); + sql.Add(','+quotedstr(trim('ͬ'))); + sql.Add(','+quotedstr(trim('ͬţ'+trim(Order_Main.FieldByName('conNo').AsString)))); + sql.Add(','+quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ͬɳɹ','ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ͬʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmContractListNX.cxTabControl1Change(Sender: TObject); +begin + SetStatus(); + TBRafresh.Click; + +end; + +procedure TfrmContractListNX.Tv1FocusedRecordChanged( + Sender: TcxCustomGridTableView; APrevFocusedRecord, + AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); +begin + InitSub(); +end; + +procedure TfrmContractListNX.TqxClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrdercon_Main SET status=''2'' '); + sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' '+quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(','+quotedstr(trim(self.Caption))); + sql.Add(','+quotedstr(trim('ͬȡ'))); + sql.Add(','+quotedstr(trim('ͬţ'+trim(Order_Main.FieldByName('conNo').AsString)))); + sql.Add(','+quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ͬȡɹ','ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ͬȡʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmContractListNX.TnoqxClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrdercon_Main SET status=''0'' '); + sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' '+quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(','+quotedstr(trim(self.Caption))); + sql.Add(','+quotedstr(trim('ͬȡ'))); + sql.Add(','+quotedstr(trim('ͬţ'+trim(Order_Main.FieldByName('conNo').AsString)))); + sql.Add(','+quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ͬȡɹ','ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ͬȡʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmContractListNX.ToolButton5Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmFjList_RZ:=TfrmFjList_RZ.Create(Application); + with frmFjList_RZ do + begin + // PState:=1; + if Trim(DParameters1)<>'Ȩ' then cxButton1.Visible:=false; + fkeyNO:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + fType:='ͬ'; + if ShowModal=1 then + begin + + end; + end; + finally + frmFjList_RZ.Free; + end; +end; + +procedure TfrmContractListNX.Tv1CustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + IF AViewInfo.GridRecord.Values[tv1.GetColumnByFieldName('status').Index]='2' then + ACanvas.Brush.Color:=clLime; +end; + +procedure TfrmContractListNX.TV2CustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + IF AViewInfo.GridRecord.Values[tv2.GetColumnByFieldName('ISCZ').Index]>='1' then + ACanvas.Brush.Color:=$00F8E4D8; +end; + +end. diff --git a/艾登贸易管理/U_Contract_Main.dfm b/艾登贸易管理/U_Contract_Main.dfm new file mode 100644 index 0000000..4c8ec8d --- /dev/null +++ b/艾登贸易管理/U_Contract_Main.dfm @@ -0,0 +1,546 @@ +object frmContract_Main: TfrmContract_Main + Left = 64 + Top = 133 + Width = 1232 + Height = 656 + Caption = #21152#24037#21512#21516 + 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 = 1216 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBAdd: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object TBDel: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object Tchk: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #23457#26680 + ImageIndex = 41 + Visible = False + OnClick = TchkClick + end + object TNochk: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #25764#38144#23457#26680 + ImageIndex = 86 + Visible = False + OnClick = TNochkClick + end + object TBExport: TToolButton + Left = 465 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 528 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 591 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1216 + Height = 54 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 21 + Top = 22 + Width = 52 + Height = 12 + Caption = #31614#35746#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 161 + Top = 22 + Width = 18 + Height = 12 + Caption = '---' + end + object Label3: TLabel + Left = 283 + Top = 22 + Width = 52 + Height = 12 + Caption = #21512#21516#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 444 + Top = 22 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 604 + Top = 22 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 740 + Top = 22 + Width = 39 + Height = 12 + Caption = #21152#24037#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 18 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 179 + Top = 18 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object ConNoM: TEdit + Tag = 2 + Left = 337 + Top = 18 + Width = 81 + Height = 20 + TabOrder = 2 + OnChange = ConNoMChange + OnKeyPress = conPress + end + object C_CodeNameM: TEdit + Tag = 2 + Left = 497 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = ConNoMChange + end + object C_Spec: TEdit + Tag = 2 + Left = 632 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 4 + OnChange = ConNoMChange + end + object FactoryNoName: TEdit + Tag = 2 + Left = 784 + Top = 18 + Width = 83 + Height = 20 + TabOrder = 5 + OnChange = ConNoMChange + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 107 + Width = 1216 + Height = 485 + Align = alTop + BorderStyle = bsNone + TabOrder = 2 + object cxGrid1: TcxGrid + Left = 0 + Top = 0 + Width = 1216 + Height = 467 + Align = alTop + TabOrder = 0 + object Tv1: TcxGridDBTableView + OnMouseDown = Tv1MouseDown + NavigatorButtons.ConfirmDelete = False + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1C_Qty + end + item + Kind = skSum + Column = v1Price + end + item + Kind = skSum + Column = v1Money + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1OrderNo: TcxGridDBColumn + Caption = #21512#21516#32534#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 80 + end + object v1Column2: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_CodeName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 100 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DeliveryDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 75 + end + object v1Column5: TcxGridDBColumn + Caption = #31614#35746#26085#26399 + DataBinding.FieldName = 'QDTime' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 75 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = #21152#24037#21378 + DataBinding.FieldName = 'FactoryNoName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 100 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 80 + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'MFQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'KZQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 77 + end + object v1Qty1: TcxGridDBColumn + Caption = #21152#24037#21305#25968 + DataBinding.FieldName = 'Qty1' + HeaderAlignmentHorz = taCenter + Hidden = True + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1C_Qty: TcxGridDBColumn + Caption = #21152#24037#25968#37327 + DataBinding.FieldName = 'C_Qty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'C_Unit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 50 + end + object v1Price: TcxGridDBColumn + Caption = #21152#24037#21333#20215 + DataBinding.FieldName = 'Price' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 83 + end + object v1Money: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'JGMoney' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 83 + end + object v1Column4: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'C_Note' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 106 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 86 + Width = 1216 + Height = 21 + Align = alTop + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Style = 9 + TabIndex = 0 + TabOrder = 3 + Tabs.Strings = ( + #26410#23457#26680 + #23457#26680 + #20840#37096) + Visible = False + OnChange = cxTabControl1Change + ClientRectBottom = 21 + ClientRectRight = 1216 + ClientRectTop = 19 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 1140 + Top = 52 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 1092 + Top = 16 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1032 + Top = 52 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 1080 + Top = 76 + end + object ClientDataSet3: TClientDataSet + Aggregates = <> + Params = <> + Left = 1112 + Top = 240 + end + object DataSource2: TDataSource + DataSet = ClientDataSet2 + Left = 880 + Top = 176 + end + object DataSource3: TDataSource + DataSet = ClientDataSet3 + Left = 1112 + Top = 216 + end + object ClientDataSet2: TClientDataSet + Aggregates = <> + Params = <> + Left = 920 + Top = 224 + 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 = 918 + Top = 186 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_PRT + Left = 864 + Top = 248 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 853 + Top = 207 + end + object CDS_PRT: TClientDataSet + Aggregates = <> + Params = <> + Left = 934 + Top = 65 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 1112 + Top = 163 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 616 + Top = 279 + end +end diff --git a/艾登贸易管理/U_Contract_Main.pas b/艾登贸易管理/U_Contract_Main.pas new file mode 100644 index 0000000..4605ab3 --- /dev/null +++ b/艾登贸易管理/U_Contract_Main.pas @@ -0,0 +1,530 @@ +unit U_Contract_Main; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, + RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, + cxTextEdit, cxPC; + +type + TfrmContract_Main = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Label2: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + ConNoM: TEdit; + Label5: TLabel; + C_CodeNameM: TEdit; + TBExport: TToolButton; + Label4: TLabel; + C_Spec: TEdit; + ScrollBox1: TScrollBox; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1C_Qty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1Price: TcxGridDBColumn; + v1Money: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + ClientDataSet3: TClientDataSet; + DataSource2: TDataSource; + DataSource3: TDataSource; + ClientDataSet2: TClientDataSet; + v1Qty1: TcxGridDBColumn; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + CDS_PRT: TClientDataSet; + cxTabControl1: TcxTabControl; + Tchk: TToolButton; + TNochk: TToolButton; + FactoryNoName: TEdit; + Label6: TLabel; + Order_Main: TClientDataSet; + ADOQueryMain: TADOQuery; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); + procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv3MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure v2Column3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure conPress(Sender: TObject; var Key: Char); + procedure TchkClick(Sender: TObject); + procedure TNochkClick(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + private + FInt,PFInt:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure SetStatus(); + { Private declarations } + public + FType:string; + { Public declarations } + end; + +var + frmContract_Main: TfrmContract_Main; + +implementation +uses + U_DataLink,U_Fun,U_ProductOrderList,U_ZDYHelp, + U_Contract_Sub; + +{$R *.dfm} + +procedure TfrmContract_Main.SetStatus(); +begin + tchk.Visible:=false; + tnochk.Visible:=false; + tbedit.Visible:=false; + tbdel.Visible:=false; + if Trim(DParameters1)<>'Ȩ' then + begin + case cxTabControl1.TabIndex of + 0:begin + // tbedit.Visible:=true; + tbdel.Visible:=true; + end; + 1:begin + end; + 2:begin + end; + end; + end + else + begin + case cxTabControl1.TabIndex of + 0:begin + // tchk.Visible:=true; + tbedit.Visible:=true; + tbdel.Visible:=true; + end; + 1:begin + tnochk.Visible:=true; + end; + 2:begin + end; + end; + end; +end; + +procedure TfrmContract_Main.FormDestroy(Sender: TObject); +begin + frmContract_Main:=nil; +end; + +procedure TfrmContract_Main.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmContract_Main.FormCreate(Sender: TObject); +begin + ScrollBox1.Align:=alClient; + cxGrid1.Align:=ALClient; +end; + +procedure TfrmContract_Main.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid(self.Caption+tv1.Name,Tv1,'ͬ'); +end; + +procedure TfrmContract_Main.InitGrid(); +var strwhere: string; +begin + strwhere:=' and QDTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and QDTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+'''' + +' and HTType=''ӹͬ'''; + IF cxTabControl1.TabIndex=0 then + strwhere:=strwhere+' and isnull(C_status,''0'')=''0'' '; + IF cxTabControl1.TabIndex=1 then + strwhere:=strwhere+' and isnull(C_status,''0'')=''1'' '; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContract_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=strwhere; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + TBFind.Click; + end; +end; + +procedure TfrmContract_Main.InitForm(); +begin + ReadCxGrid(self.Caption+tv1.Name,Tv1,'ͬ'); + cxTabControl1.TabIndex:=0; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmContract_Main.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmContract_Main.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmContract_Sub:=TfrmContract_Sub.Create(Application); + with frmContract_Sub do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + FConNo:=Trim(Self.Order_Main.fieldbyname('ConNoM').AsString); + if ShowModal=1 then + begin + InitGrid(); + end; + end; + finally + frmContract_Sub.Free; + end; +end; + +procedure TfrmContract_Main.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + if ClientDataSet2.IsEmpty=false then + begin + Application.MessageBox('ѵɾͬ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData() then + begin + TBRafresh.Click; + //TBFind.Click; + // Order_Main.Delete; + end; +end; + +function TfrmContract_Main.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_main where mainID='''+Trim(Order_Main.fieldbyname('mainID').AsString)+''''); + sql.Add('delete Contract_Sub where mainID='''+Trim(Order_Main.fieldbyname('mainID').AsString)+''''); + ExecSQL; + end; + + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmContract_Main.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel('ӹͬ',cxGrid1); +end; + +procedure TfrmContract_Main.TBPrintClick(Sender: TObject); +var + fPrintFile,FConNoM:string; + +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ͬ.rmf' ; + with ADOQueryTemp do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContract_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Parameters.ParamByName('MainId').Value:=Trim(Order_Main.fieldbyname('MainId').AsString); + Parameters.ParamByName('WSql').Value:=''; + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_PRT); + SInitCDSData20(ADOQueryTemp,CDS_PRT); + FConNoM:=Trim(CDS_PRT.fieldbyname('ConNoM').AsString); + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ͬ.rmf'),'ʾ',0); + end; +end; + +procedure TfrmContract_Main.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmContract_Main.TBAddClick(Sender: TObject); +begin + try + frmContract_Sub:=TfrmContract_Sub.Create(Application); + with frmContract_Sub do + begin + PState:=0; + FMainId:=''; + if ShowModal=1 then + begin + InitGrid(); + end; + end; + finally + frmContract_Sub.Free; + end; +end; + +procedure TfrmContract_Main.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmContract_Main.FormShow(Sender: TObject); +begin + InitForm(); + SetStatus(); +end; + +procedure TfrmContract_Main.Tv1FocusedRecordChanged( + Sender: TcxCustomGridTableView; APrevFocusedRecord, + AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,KCSL=A.MXQty-(select isnull(Sum(TPQty),0) from Contract_Sub_Mxto B where B.MXID=A.MXID),'); + sql.Add(' KCPS=A.Qty1-(select isnull(Sum(Qty1),0) from Contract_Sub_Mxto B where B.MXID=A.MXID)'); + sql.Add('from Contract_Sub_Mx A'); + sql.Add(' where A.SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet2); + SInitCDSData20(ADOQueryTemp,ClientDataSet2); + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo ,'); + sql.Add('C_Unit=(select Top 1 C_Unit from Contract_Sub AA,Contract_Sub_Mx BB where AA.SubId=BB.SubId and BB.MXid=A.Mxid)'); + SQL.Add('from Contract_Sub_MxTo A inner join JYOrder_Sub B on A.OrdSubId=B.SubId'); + SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId '); + sql.Add('where A.MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); +end; + +procedure TfrmContract_Main.Tv2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=2; +end; + +procedure TfrmContract_Main.Tv1MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=1; +end; + +procedure TfrmContract_Main.Tv3MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=3; +end; + +procedure TfrmContract_Main.Tv2CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo ,'); + sql.Add('C_Unit=(select Top 1 C_Unit from Contract_Sub AA,Contract_Sub_Mx BB where AA.SubId=BB.SubId and BB.MXid=A.Mxid)'); + SQL.Add(' from Contract_Sub_MxTo A inner join JYOrder_Sub B on A.OrdSubId=B.SubId '); + SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId '); + sql.Add('where A.MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,ClientDataSet3); + SInitCDSData20(ADOQueryTemp,ClientDataSet3); +end; + +procedure TfrmContract_Main.v2Column3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='RKPlace'; + flagname:='ص'; + if ShowModal=1 then + begin + with ClientDataSet2 do + begin + Edit; + FieldByName('RKPlace').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContract_Main.conPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(ConNoM.Text))<4 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec ClothContract_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and OM.conNo like '''+'%'+Trim(ConNoM.Text)+'%'+'''' + +' and HTType=''ӹͬ'''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmContract_Main.TchkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Contract_Sub SET C_status=''1'' '); + sql.Add('where subID='+quotedstr(trim(Order_Main.fieldbyname('subID').AsString))); + execsql; + end; + application.MessageBox('˳ɹ','ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmContract_Main.TNochkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Contract_Sub SET C_status=''0'' '); + sql.Add('where subID='+quotedstr(trim(Order_Main.fieldbyname('subID').AsString))); + execsql; + end; + application.MessageBox('ɹ','ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmContract_Main.cxTabControl1Change(Sender: TObject); +begin + SetStatus(); + TBRafresh.Click; +end; + +end. diff --git a/艾登贸易管理/U_Contract_Sub.dfm b/艾登贸易管理/U_Contract_Sub.dfm new file mode 100644 index 0000000..1cfcf7f --- /dev/null +++ b/艾登贸易管理/U_Contract_Sub.dfm @@ -0,0 +1,595 @@ +object frmContract_Sub: TfrmContract_Sub + Left = 217 + Top = 121 + Width = 1125 + Height = 632 + Caption = #21152#24037#21512#21516#24405#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + WindowState = wsMaximized + OnCreate = FormCreate + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1109 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 29 + Width = 1109 + Height = 288 + Align = alTop + BevelInner = bvNone + BevelOuter = bvNone + Ctl3D = False + ParentCtl3D = False + TabOrder = 1 + object Label1: TLabel + Left = 34 + Top = 14 + Width = 65 + Height = 12 + Caption = #21512#21516#32534#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 556 + Top = 46 + Width = 65 + Height = 12 + Caption = #20132#36135#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 34 + Top = 46 + Width = 65 + Height = 12 + Caption = #31614#35746#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 556 + Top = 14 + Width = 65 + Height = 12 + Caption = #20844#21496#25260#22836#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 34 + Top = 80 + Width = 65 + Height = 12 + Caption = #31614#35746#22320#28857#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 555 + Top = 80 + Width = 65 + Height = 12 + Caption = #20132#36135#22320#28857#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 34 + Top = 115 + Width = 65 + Height = 12 + Caption = #21253#35013#35201#27714#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 305 + Top = 80 + Width = 65 + Height = 12 + Caption = #32467#31639#26041#24335#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 305 + Top = 14 + Width = 65 + Height = 12 + Caption = #25351#31034#21333#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 306 + Top = 46 + Width = 66 + Height = 12 + Caption = #21152' '#24037' '#21378#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label14: TLabel + Left = 35 + Top = 219 + Width = 52 + Height = 12 + Caption = #21152#24037#35201#27714 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label15: TLabel + Left = 33 + Top = 142 + Width = 52 + Height = 12 + Caption = #20854#20182#20107#39033 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object ConNo: TEdit + Left = 96 + Top = 11 + Width = 180 + Height = 18 + TabOrder = 0 + end + object DeliveryDate: TDateTimePicker + Left = 619 + Top = 42 + Width = 180 + Height = 20 + BevelInner = bvNone + Date = 40916.000000000000000000 + Format = 'yyyy-MM-dd' + Time = 40916.000000000000000000 + TabOrder = 1 + end + object QDTime: TDateTimePicker + Left = 96 + Top = 42 + Width = 180 + Height = 20 + BevelInner = bvNone + Date = 40916.000000000000000000 + Format = 'yyyy-MM-dd' + Time = 40916.000000000000000000 + TabOrder = 2 + end + object CompanyName: TcxButtonEdit + Left = 619 + Top = 10 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = CompanyNamePropertiesButtonClick + TabOrder = 3 + Width = 180 + end + object QDPalce: TEdit + Left = 98 + Top = 77 + Width = 180 + Height = 18 + TabOrder = 4 + end + object JHPlace: TcxButtonEdit + Left = 619 + Top = 76 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = JHPlacePropertiesButtonClick + TabOrder = 5 + Width = 180 + end + object factoryNoName: TcxButtonEdit + Left = 368 + Top = 42 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = ConTk2PropertiesButtonClick + TabOrder = 6 + Width = 180 + end + object ConTK3: TcxButtonEdit + Left = 96 + Top = 111 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTK3PropertiesButtonClick + TabOrder = 7 + Width = 700 + end + object ConTK4: TcxButtonEdit + Left = 368 + Top = 76 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ConTK4PropertiesButtonClick + TabOrder = 8 + Width = 180 + end + object ConTK5: TMemo + Left = 94 + Top = 216 + Width = 699 + Height = 65 + ScrollBars = ssVertical + TabOrder = 9 + OnClick = ConTK5Click + end + object ConTk6: TMemo + Left = 94 + Top = 142 + Width = 699 + Height = 65 + ScrollBars = ssVertical + TabOrder = 10 + OnClick = ConTk6Click + end + object OrderNo: TcxButtonEdit + Left = 368 + Top = 10 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = orderNoPropertiesButtonClick + TabOrder = 11 + Width = 180 + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 317 + Width = 1109 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentFont = False + ShowCaptions = True + TabOrder = 2 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 346 + Width = 1109 + Height = 213 + Align = alTop + TabOrder = 3 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + Column = v1Column1 + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Styles.Header = DataLink_TradeManage.Default + object v1Column1: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_CodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 97 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684#22411#21495 + DataBinding.FieldName = 'C_Spec' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 67 + end + object v1C_Color: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'C_Color' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Sdefstr1: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'Sdefstr1' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column3: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'MFQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 64 + end + object v1Column5: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'KZQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 73 + end + object v1Qty2: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'Qty2' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 67 + end + object v1MainUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'MainUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column6: TcxGridDBColumn + Caption = #21152#24037#21305#25968 + DataBinding.FieldName = 'Qty1' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 57 + end + object v1C_Qty: TcxGridDBColumn + Caption = #21152#24037#25968#37327 + DataBinding.FieldName = 'C_Qty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1C_QtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 63 + end + object v1Column2: TcxGridDBColumn + Caption = #21152#24037#25968#37327#21333#20301 + DataBinding.FieldName = 'C_Unit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 100 + end + object v1Price: TcxGridDBColumn + Caption = #21152#24037#21333#20215 + DataBinding.FieldName = 'Price' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Qty3PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1JGMoney: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'JGMoney' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1JGMoneyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 70 + end + object v1Column4: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'C_Note' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 140 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 384 + Top = 13 + end + object ADOCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 520 + Top = 5 + end + object DataSource1: TDataSource + DataSet = Order_Sub + Left = 344 + Top = 376 + end + object Order_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 384 + Top = 376 + end + object DataSource2: TDataSource + DataSet = ADOZDY + Left = 240 + Top = 8 + end + object ADOZDY: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 280 + Top = 5 + end + object CDS_ZDY: TClientDataSet + Aggregates = <> + Params = <> + Left = 208 + Top = 16 + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 456 + Top = 13 + end +end diff --git a/艾登贸易管理/U_Contract_Sub.pas b/艾登贸易管理/U_Contract_Sub.pas new file mode 100644 index 0000000..5751340 --- /dev/null +++ b/艾登贸易管理/U_Contract_Sub.pas @@ -0,0 +1,922 @@ +unit U_Contract_Sub; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer, + cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB, + ExtCtrls, BtnEdit, cxDropDownEdit; + +type + TfrmContract_Sub = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ScrollBox1: TScrollBox; + Label1: TLabel; + ConNo: TEdit; + Label4: TLabel; + DeliveryDate: TDateTimePicker; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1PRTSpec: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1C_Qty: TcxGridDBColumn; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + DataSource1: TDataSource; + Order_Sub: TClientDataSet; + DataSource2: TDataSource; + ADOZDY: TADOQuery; + CDS_ZDY: TClientDataSet; + ADOQuery1: TADOQuery; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + Label2: TLabel; + QDTime: TDateTimePicker; + Label3: TLabel; + CompanyName: TcxButtonEdit; + Label6: TLabel; + QDPalce: TEdit; + Label8: TLabel; + JHPlace: TcxButtonEdit; + factoryNoName: TcxButtonEdit; + Label10: TLabel; + ConTK3: TcxButtonEdit; + Label11: TLabel; + ConTK4: TcxButtonEdit; + v1Column3: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Qty2: TcxGridDBColumn; + v1Price: TcxGridDBColumn; + Label7: TLabel; + Label9: TLabel; + Label14: TLabel; + Label15: TLabel; + ConTK5: TMemo; + ConTk6: TMemo; + v1C_Color: TcxGridDBColumn; + v1Sdefstr1: TcxGridDBColumn; + v1MainUnit: TcxGridDBColumn; + v1JGMoney: TcxGridDBColumn; + OrderNo: TcxButtonEdit; + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PRTUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PRTMFPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1OrderQtyPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1ClothQtyPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure FactoryNoNamePropertiesChange(Sender: TObject); + procedure CompanyNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure JHPlacePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTK3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTK4PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTK5PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTk6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ConTk2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column10PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure FormCreate(Sender: TObject); + procedure ConTk6Click(Sender: TObject); + procedure ConTK5Click(Sender: TObject); + procedure v1C_QtyPropertiesEditValueChanged(Sender: TObject); + procedure v1Qty3PropertiesEditValueChanged(Sender: TObject); + procedure v1JGMoneyPropertiesEditValueChanged(Sender: TObject); + procedure OrderNoPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + private + FXS:Integer; + procedure InitData(); + procedure ZDYHelp(FButn:TcxButtonEdit;LType:string); + function SaveData():Boolean; + { Private declarations } + public + PState,PCopyInt:Integer; + FMainId,FConNo:String; + { Public declarations } + end; + +var + frmContract_Sub: TfrmContract_Sub; + +implementation +uses + U_DataLink,U_ZDYHelp,U_Fun, U_ProductOrder_CX, U_ZDYHelpSel; + +{$R *.dfm} + +procedure TfrmContract_Sub.TBCloseClick(Sender: TObject); +begin + Close; +end; + +procedure TfrmContract_Sub.InitData(); +begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add(' exec ClothContract_QryList :MainId,:WSql'); + if PState=1 then + begin + ADOQuery1.Parameters.ParamByName('MainId').Value:=Trim(FMainId); + ADOQuery1.Parameters.ParamByName('WSQl').Value:=''; + end; + if PState=0 then + begin + ADOQuery1.Parameters.ParamByName('MainId').Value:=Trim(FMainId); + ADOQuery1.Parameters.ParamByName('WSql').Value:=' and 1<>1 '; + end; + Open; + end; + SCreateCDS20(ADOQuery1,Order_Sub); + SInitCDSData20(ADOQuery1,Order_Sub); + SCSHData(ADOQuery1,ScrollBox1,0); + if PState=0 then + begin + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1* from Contract_Main order by FillTime desc '); + Open; + end; + QDTime.DateTime:=SGetServerDate(ADOTemp); + DeliveryDate.DateTime:=SGetServerDate(ADOTemp); + end; +end; + +procedure TfrmContract_Sub.ZDYHelp(FButn:TcxButtonEdit;LType:string); +begin + +end; + +procedure TfrmContract_Sub.FormShow(Sender: TObject); +begin + InitData(); +end; + +function TfrmContract_Sub.SaveData():Boolean; +var + maxno,maxSubNo:String; +begin + try + ADOCmd.Connection.BeginTrans; + /// + if Trim(FMainId)='' then + begin + if GetLSNo(ADOCmd,maxno,'JG','Contract_Main',2,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ˮ쳣','ʾ',0); + exit; + end; + end else + begin + maxno:=Trim(FMainId); + end; + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from Contract_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + Append; + + end + else begin + + Edit; + end; + FieldByName('MainId').Value:=Trim(maxno); + FieldByName('HTType').Value:='ӹͬ'; + SSetsaveSql(ADOCmd,'Contract_Main',ScrollBox1,0); + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + FieldByName('FactoryNoName').Value:=Trim(factoryNoName.Text); + Post; + end; + + with Order_Sub do + begin + First; + while not Eof do + begin + + ///ӱ + + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOCmd,maxSubNo,'HT','Contract_Sub',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxSubNo:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from Contract_Sub where MainId='''+Trim(maxno)+''''); + sql.Add(' and SubId='''+Trim(maxSubNo)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(maxno); + FieldByName('SubId').Value:=Trim(maxSubNo); + SSetSaveDataCDSNew(ADOCmd,Tv1,Order_Sub,'Contract_Sub',0); + FieldByName('MFQty').Value:=Order_Sub.fieldbyname('MFQty').AsFloat; + FieldByName('C_Qty').Value:=Order_Sub.fieldbyname('C_Qty').AsFloat; + FieldByName('KZQty').Value:=Order_Sub.fieldbyname('KZQty').AsFloat; + FieldByName('C_Qty').Value:=Order_Sub.fieldbyname('C_Qty').AsFloat; + FieldByName('Qty1').Value:=Order_Sub.fieldbyname('Qty1').AsFloat; + FieldByName('Price').Value:=Order_Sub.fieldbyname('Price').AsFloat; + FieldByName('JGMoney').Value:=Order_Sub.fieldbyname('JGMoney').AsFloat; + FieldByName('C_Note').Value:=trim(Order_Sub.fieldbyname('C_Note').AsString); + FieldByName('C_status').Value:='0'; + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxSubNo); + //Order_Sub.Post; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TfrmContract_Sub.TBSaveClick(Sender: TObject); +begin + DeliveryDate.SetFocus; + if Trim(ConNo.Text)='' then + begin + Application.MessageBox('ͬŲΪգ','ʾ',0); + Exit; + end; + if Trim(factoryNoName.Text)='' then + begin + Application.MessageBox('ӹΪգ','ʾ',0); + Exit; + end; + if Order_Sub.IsEmpty then + begin + Application.MessageBox('ϸΪգ','ʾ',0); + exit; + end; + if Order_Sub.Locate('C_Qty',null,[]) then + begin + Application.MessageBox('ӹΪ!','ʾ',0); + Exit; + end; + if Order_Sub.Locate('C_Unit',null,[]) then + begin + Application.MessageBox('ӹλΪ!','ʾ',0); + Exit; + end; + + if SaveData() then + begin + Application.MessageBox('ɹ','ʾ',0); + ModalResult:=1; + end; +end; + +procedure TfrmContract_Sub.v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('OrderUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContract_Sub.v1PRTUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PRTUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContract_Sub.v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdColor'; + flagname:='ɫ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PRTColor').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContract_Sub.ToolButton1Click(Sender: TObject); +begin + with Order_Sub do + begin + Append; + Post; + end; +end; + +procedure TfrmContract_Sub.ToolButton2Click(Sender: TObject); +begin + if Order_Sub.IsEmpty then Exit; + if Trim(Order_Sub.fieldbyname('SubId').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete Contract_Sub where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; + Order_Sub.Delete; +end; + +procedure TfrmContract_Sub.v1Column1PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Cloth'; + flagname:=''; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('C_CodeName').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.Order_Sub.FieldByName('C_Code').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContract_Sub.v1PRTMFPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='KZ'; + flagname:='صλ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('KZUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContract_Sub.v1OrderQtyPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MF'; + flagname:='ŷλ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('MFUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContract_Sub.v1ClothQtyPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PriceUnit'; + flagname:='Ƽ۵λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PriceUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContract_Sub.v1Column2PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('C_Unit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContract_Sub.FactoryNoNamePropertiesChange( + Sender: TObject); +begin + {if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(FactoryNoName,'FactoryNo1Name'); } +end; + +procedure TfrmContract_Sub.CompanyNamePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdDefStr2'; + flagname:='̧ͷ'; + if ShowModal=1 then + begin + FXS:=99; + CompanyName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContract_Sub.JHPlacePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='JHPlace'; + flagname:='ص'; + if ShowModal=1 then + begin + JHPlace.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContract_Sub.ConTK3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK3'; + flagname:='װҪ'; + if ShowModal=1 then + begin + ConTK3.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContract_Sub.ConTK4PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK4'; + flagname:='㷽ʽ'; + if ShowModal=1 then + begin + ConTK4.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContract_Sub.ConTK5PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK5'; + flagname:='ձ׼'; + if ShowModal=1 then + begin + ConTK5.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContract_Sub.ConTk6PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='ConTK6'; + flagname:='Լ'; + if ShowModal=1 then + begin + ConTK6.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContract_Sub.ConTk2PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:=''; + MainType:='PBFactory'; + if ShowModal=1 then + begin + with Order_Sub do + begin + Edit; + factoryNoName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + FieldByName('factoryNoname').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContract_Sub.v1Column7PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + if Trim(FMainId)<>'' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR A where exists('); + sql.Add('select * from Contract_Sub_MX B inner join Contract_Sub C on B.SubId=C.SubId '); + sql.Add(' where C.Mainid='''+Trim(FMainId)+''''); + sql.Add(' and B.MXID=A.YFTypeId)'); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + Application.MessageBox('ѾӦ޸ĹӦ!','ʾ',0); + Exit; + end; + end; + + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:=''; + MainType:='PBFactory'; + if ShowModal=1 then + begin + with Order_Sub do + begin + Edit; + FieldByName('FactoryNoName').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContract_Sub.v1Column10PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:='Ⱦ'; + MainType:='PBFactory'; + if ShowModal=1 then + begin + with Order_Sub do + begin + Edit; + FieldByName('Sdefstr2').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmContract_Sub.FormCreate(Sender: TObject); +begin + cxGrid1.Align:=alclient; +end; + +procedure TfrmContract_Sub.ConTk6Click(Sender: TObject); +VAR i: integer; +begin + i:=0; + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='QTYDSX'; + flagname:='Լ'; + if ShowModal=1 then + begin + ConTK6.Lines.Clear; + with ClientDataSet1 do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean=True then + begin + i:=i+1; + ConTK6.Lines.Add(inttostr(i)+'.'+FieldByName('ZDYName').AsString); + end; + Next; + end; + end; + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmContract_Sub.ConTK5Click(Sender: TObject); +VAR i: integer; +begin + i:=0; + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='JGYQ'; + flagname:='Լ'; + if ShowModal=1 then + begin + ConTK5.Lines.Clear; + with ClientDataSet1 do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean=True then + begin + i:=i+1; + ConTK5.Lines.Add(inttostr(i)+'.'+FieldByName('ZDYName').AsString); + end; + Next; + end; + end; + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmContract_Sub.v1C_QtyPropertiesEditValueChanged( + Sender: TObject); +var + Fieldname:string; +begin + Fieldname:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + with Order_sub do + begin + edit; + fieldbyname(Fieldname).Value:=TcxTextEdit(Sender).EditingText; + FieldByName('JGMoney').Value:=strtofloat(format('%.2f',[Fieldbyname('C_Qty').AsFloat*Fieldbyname('Price').AsFloat ])); + post; + end; + Tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmContract_Sub.v1Qty3PropertiesEditValueChanged( + Sender: TObject); +var + Fieldname:string; +begin + Fieldname:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + with Order_sub do + begin + edit; + fieldbyname(Fieldname).Value:=TcxTextEdit(Sender).EditingText; + FieldByName('JGMoney').Value:=strtofloat(format('%.2f',[Fieldbyname('Price').AsFloat*Fieldbyname('C_Qty').AsFloat ])); + post; + end; + Tv1.Controller.EditingController.ShowEdit(); +end; + + +procedure TfrmContract_Sub.v1JGMoneyPropertiesEditValueChanged( + Sender: TObject); +var + Fieldname:string; +begin + Fieldname:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + with Order_sub do + begin + edit; + fieldbyname(Fieldname).Value:=TcxTextEdit(Sender).EditingText; + if Fieldbyname('C_Qty').AsFloat<>0 then + begin + FieldByName('Price').Value:=strtofloat(format('%.2f',[Fieldbyname('JGMoney').AsFloat/Fieldbyname('C_Qty').AsFloat])); + end; + post; + end; + Tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmContract_Sub.OrderNoPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +var FOrderNo: String; +begin + FrmProductOrder_CX:=TFrmProductOrder_CX.Create(self); + with FrmProductOrder_CX do + begin + if showModal=1 then + begin + self.ConNo.Text:=trim(Order_Main.fieldbyname('ConNo').AsString); + self.OrderNo.Text:=trim(Order_Main.fieldbyname('OrderNo').AsString); + self.CompanyName.Text:=trim(Order_Main.fieldbyname('SYRName').AsString); + self.ConTK3.Text:=trim(Order_Main.fieldbyname('MPRTBZNote').AsString); + with Order_Main do + begin + first; + ForderNo:=''; + while not Eof do + begin + if fieldbyname('Ssel').AsBoolean then + begin + if FOrderNo='' then + begin + FOrderNo:=trim(fieldbyname('OrderNo').AsString); + end + else + begin + if FOrderNo<>trim(fieldbyname('OrderNo').AsString) then + begin + application.MessageBox('Ųһ','ʾ',0); + exit; + end; + end; + Order_Sub.Append; + Order_Sub.FieldByName('C_CodeName').AsString:=trim(fieldbyname('MPRTCodeName').AsString); + Order_Sub.FieldByName('C_Spec').AsString:=trim(fieldbyname('MPRTSpec').AsString); + Order_Sub.FieldByName('C_Color').AsString:=trim(fieldbyname('PRTColor').AsString); + Order_Sub.FieldByName('Sdefstr1').AsString:=trim(fieldbyname('SOrddefstr1').AsString); + Order_Sub.FieldByName('Qty2').value:=fieldbyname('PRTOrderQty').AsFloat; + Order_Sub.FieldByName('MainUnit').AsString:=trim(fieldbyname('OrderUnit').AsString); + order_Sub.Post; + end; + next; + end; + end; + end; + free; + end; +end; + +end. diff --git a/艾登贸易管理/U_CpCkSaoMNew.dfm b/艾登贸易管理/U_CpCkSaoMNew.dfm new file mode 100644 index 0000000..d882883 --- /dev/null +++ b/艾登贸易管理/U_CpCkSaoMNew.dfm @@ -0,0 +1,460 @@ +object frmCpCkSaoMNew: TfrmCpCkSaoMNew + Left = 31 + Top = 61 + Width = 1199 + Height = 652 + Caption = #25104#21697#20986#24211#25195#25551 + Color = clBtnFace + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 16 + object cxGrid2: TcxGrid + Left = 0 + Top = 169 + Width = 593 + Height = 446 + Align = alLeft + TabOrder = 0 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + Column = v2Column6 + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Format = #21367#25968#37327#65306'#' + Kind = skCount + Column = v1Column1 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object v1Column1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Width = 129 + end + object v1Column5: TcxGridDBColumn + Caption = #26465#30721 + DataBinding.FieldName = 'MJId' + HeaderAlignmentHorz = taCenter + Width = 144 + end + object v2Column5: TcxGridDBColumn + Caption = #20844#26020#25968 + DataBinding.FieldName = 'KgQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 121 + end + object v2Column6: TcxGridDBColumn + Caption = #38271#24230 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 87 + end + object v1Column2: TcxGridDBColumn + Caption = #38271#24230#21333#20301 + DataBinding.FieldName = 'QtyUnit' + HeaderAlignmentHorz = taCenter + Width = 86 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel1: TPanel + Left = 0 + Top = 0 + Width = 1191 + Height = 169 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 1 + object Label1: TLabel + Left = 110 + Top = 134 + Width = 68 + Height = 16 + Caption = #25195#25551#20837#21475 + end + object BaoID: TEdit + Left = 178 + Top = 131 + Width = 167 + Height = 24 + TabOrder = 0 + OnKeyPress = BaoIDKeyPress + end + object Button2: TButton + Left = 1006 + Top = 132 + Width = 75 + Height = 23 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button2Click + end + object Button3: TButton + Left = 21 + Top = 132 + Width = 75 + Height = 23 + Caption = #36873#21333 + TabOrder = 2 + OnClick = Button3Click + end + object Button1: TButton + Left = 598 + Top = 132 + Width = 107 + Height = 23 + Caption = #25764#38144#20986#24211 + TabOrder = 3 + OnClick = Button1Click + end + object cxGrid1: TcxGrid + Left = 2 + Top = 2 + Width = 1187 + Height = 120 + Align = alTop + TabOrder = 4 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Styles.Footer = DataLink_TradeManage.Default + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 78 + end + object v2Column2: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 141 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 119 + end + object v1Column10: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 83 + end + object v1Column14: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 75 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 80 + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 80 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 93 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv2 + end + end + end + object cxGrid3: TcxGrid + Left = 593 + Top = 169 + Width = 584 + Height = 446 + Align = alLeft + TabOrder = 2 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DS_MainSel + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = cxGridDBColumn6 + end + item + Format = #21367#25968#37327#65306'#' + Kind = skCount + Column = cxGridDBColumn1 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object cxGridDBColumn1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Width = 157 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #26465#30721 + DataBinding.FieldName = 'MJId' + HeaderAlignmentHorz = taCenter + Width = 144 + end + object v3Column1: TcxGridDBColumn + Caption = #20844#26020#25968 + DataBinding.FieldName = 'KgQty' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #38271#24230 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 71 + end + object v3Column2: TcxGridDBColumn + Caption = #38271#24230#21333#20301 + DataBinding.FieldName = 'QtyUnit' + HeaderAlignmentHorz = taCenter + Width = 79 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv3 + end + end + object MovePanel1: TMovePanel + Left = 8 + Top = 208 + Width = 561 + Height = 305 + BevelInner = bvLowered + Color = clSkyBlue + TabOrder = 3 + Visible = False + object Label2: TLabel + Left = 64 + Top = 48 + Width = 147 + Height = 48 + Caption = #24050#20986#24211 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 456 + Top = 56 + Width = 49 + Height = 48 + Caption = #21367 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Edit1: TEdit + Left = 216 + Top = 24 + Width = 241 + Height = 105 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -96 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 0 + Text = '1234' + end + object Edit2: TEdit + Left = 73 + Top = 143 + Width = 386 + Height = 72 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -64 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 1 + Text = '91209120001' + end + object Button4: TButton + Left = 216 + Top = 248 + Width = 75 + Height = 41 + Caption = #20851#38381 + TabOrder = 2 + OnClick = Button4Click + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 976 + Top = 40 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 136 + Top = 216 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 96 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1072 + Top = 8 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 792 + Top = 64 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 872 + Top = 72 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 320 + Top = 48 + end + object DataSource2: TDataSource + DataSet = CDS_Sub + Left = 288 + Top = 48 + end + object ADOQuerySub: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 680 + Top = 64 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 56 + Top = 200 + end + object cxGridPopupMenu3: TcxGridPopupMenu + PopupMenus = <> + Left = 600 + Top = 72 + end + object DS_MainSel: TDataSource + DataSet = CDS_MainSel + Left = 616 + Top = 336 + end + object CDS_MainSel: TClientDataSet + Aggregates = <> + Params = <> + Left = 648 + Top = 336 + end + object cxGridPopupMenu4: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 832 + Top = 312 + end +end diff --git a/艾登贸易管理/U_CpCkSaoMNew.pas b/艾登贸易管理/U_CpCkSaoMNew.pas new file mode 100644 index 0000000..2506945 --- /dev/null +++ b/艾登贸易管理/U_CpCkSaoMNew.pas @@ -0,0 +1,450 @@ +unit U_CpCkSaoMNew; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, ExtCtrls, ADODB, DBClient, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, MovePanel, cxCheckBox; + +type + TfrmCpCkSaoMNew = class(TForm) + cxGrid2: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column1: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + cxGrid2Level1: TcxGridLevel; + cxGridPopupMenu1: TcxGridPopupMenu; + CDS_Main: TClientDataSet; + DataSource1: TDataSource; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + Panel1: TPanel; + BaoID: TEdit; + Label1: TLabel; + v1Column5: TcxGridDBColumn; + Button2: TButton; + Button3: TButton; + CDS_Sub: TClientDataSet; + DataSource2: TDataSource; + ADOQuerySub: TADOQuery; + cxGridPopupMenu2: TcxGridPopupMenu; + cxGridPopupMenu3: TcxGridPopupMenu; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + DS_MainSel: TDataSource; + CDS_MainSel: TClientDataSet; + v3Column1: TcxGridDBColumn; + Button1: TButton; + cxGridPopupMenu4: TcxGridPopupMenu; + MovePanel1: TMovePanel; + Edit1: TEdit; + Edit2: TEdit; + Label2: TLabel; + Label3: TLabel; + Button4: TButton; + cxGrid1: TcxGrid; + Tv2: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1Column2: TcxGridDBColumn; + v3Column2: TcxGridDBColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure BaoIDKeyPress(Sender: TObject; var Key: Char); + procedure Button2Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button4Click(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + procedure InitSubGrid(); + public + { Public declarations } + end; + +var + frmCpCkSaoMNew: TfrmCpCkSaoMNew; + +implementation +uses +U_DataLink,U_Fun,U_OrderSel ; + +{$R *.dfm} + +procedure TfrmCpCkSaoMNew.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmCpCkSaoMNew.FormDestroy(Sender: TObject); +begin + frmCpCkSaoMNew:=nil; +end; +procedure TfrmCpCkSaoMNew.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + SQL.Add('select A.*,OrderNo=(select OrderNo from JYOrder_Main where MainId=A.MainId) from CK_BanCP_CR A'); + sql.add('where 1<>1'); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + SQL.Add('select A.*,OrderNo=(select OrderNo from JYOrder_Main where MainId=A.MainId) from CK_BanCP_CR A'); + sql.add('where 1<>1'); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_MainSel); + SInitCDSData20(ADOQueryMain,CDS_MainSel); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmCpCkSaoMNew.FormShow(Sender: TObject); +begin + ReadCxGrid('ѡ',Tv2,'Ʒֿ'); + ReadCxGrid('Ʒ',Tv1,'Ʒֿ'); + ReadCxGrid('ƷSels',Tv3,'Ʒֿ'); + InitSubGrid(); + InitGrid(); +end; + +procedure TfrmCpCkSaoMNew.BaoIDKeyPress(Sender: TObject; var Key: Char); +var + maxno:String; +begin + if Key=#13 then + begin + if CDS_Sub.IsEmpty then + begin + BaoID.Text:=''; + Application.MessageBox('δѡɨ⣡','ʾ',0); + Exit; + end; + if CDS_Main.Locate('MJId',Trim(BaoID.Text),[])=False then + begin + BaoID.Text:=''; + Application.MessageBox('˾ڴľУ','ʾ',0); + Exit; + end; + CDS_Main.Locate('MJId',Trim(BaoID.Text),[]); + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_Main do + begin + if GetLSNo(ADOQueryCmd,maxno,'CC','CK_BanCp_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCp_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('BCID').Value:=Trim(maxno); + FieldByName('CRID').Value:=CDS_Main.fieldbyname('CRID').Value; + FieldByName('CRTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('KGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('MJID').Value:=CDS_Main.fieldbyname('MJID').Value; + FieldByName('MainID').Value:=CDS_Main.fieldbyname('MainID').Value; + FieldByName('SubID').Value:=CDS_Main.fieldbyname('SubID').Value; + FieldByName('APID').Value:=CDS_Main.fieldbyname('APID').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + //FieldByName('JZXNo').Value:=Trim(JZXNo.Text); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update CK_BanCp_KC set KCKgQty=0,KCQty=0 where CRID='+CDS_Main.fieldbyname('CRID').AsString); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + with CDS_MainSel do + begin + Append; + FieldByName('MainId').Value:=CDS_Main.fieldbyname('MainId').Value; + FieldByName('SubId').Value:=Self.CDS_Main.fieldbyname('SubId').Value; + FieldByName('OrderNo').Value:=Self.CDS_Main.fieldbyname('OrderNo').Value; + FieldByName('KGQty').Value:=Self.CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=Self.CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=Self.CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('MJId').Value:=Self.CDS_Main.fieldbyname('MJId').Value; + FieldByName('CRId').Value:=Self.CDS_Main.fieldbyname('CRId').Value; + FieldByName('APID').Value:=Self.CDS_Main.fieldbyname('APID').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('BCID').Value:=Trim(maxno); + //FieldByName('JZXNo').Value:=Trim(JZXNo.Text); + Post; + end; + CDS_Main.Delete; + MovePanel1.Visible:=True; + if CDS_MainSel.IsEmpty=False then + Edit1.Text:=IntToStr(Tv3.DataController.Summary.FooterSummaryValues[2]) + else + Edit1.Text:='0'; + Edit2.Text:=Trim(BaoID.Text); + BaoID.Text:=''; + Exit; + except + BaoID.Text:=''; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; + end; +end; + +procedure TfrmCpCkSaoMNew.Button2Click(Sender: TObject); +begin + Close; + WriteCxGrid('ѡ',Tv2,'Ʒֿ'); + WriteCxGrid('Ʒ',Tv1,'Ʒֿ'); + WriteCxGrid('ƷSels',Tv3,'Ʒֿ'); +end; + +procedure TfrmCpCkSaoMNew.Button3Click(Sender: TObject); +begin + {if CDS_Main.IsEmpty=False then + begin + Application.MessageBox('ɨ費ܸĵţ','ʾ',0); + Exit; + end;} + try + frmOrderSel:=TfrmOrderSel.Create(Application); + with frmOrderSel do + begin + if ShowModal=1 then + begin + CDS_OrderSel.DisableControls; + with CDS_OrderSel do + begin + First; + while not Eof do + begin + if FieldByName('SSel').Value=True then + begin + if Self.CDS_Sub.Locate('SubId',Trim(CDS_OrderSel.fieldbyname('SubId').AsString),[])=False then + begin + with Self.CDS_Sub do + begin + Append; + FieldByName('MainId').Value:=Trim(CDS_OrderSel.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(CDS_OrderSel.fieldbyname('SubId').AsString); + FieldByName('CustomerNo').Value:=Trim(CDS_OrderSel.fieldbyname('CustomerNo').AsString); + FieldByName('OrderNo').Value:=Trim(CDS_OrderSel.fieldbyname('OrderNo').AsString); + FieldByName('CustomerNoName').Value:=Trim(CDS_OrderSel.fieldbyname('CustomerNoName').AsString); + FieldByName('MPRTCodeName').Value:=Trim(CDS_OrderSel.fieldbyname('MPRTCodeName').AsString); + FieldByName('PRTOrderQty').Value:=Trim(CDS_OrderSel.fieldbyname('PRTOrderQty').AsString); + FieldByName('OrderUnit').Value:=Trim(CDS_OrderSel.fieldbyname('OrderUnit').AsString); + FieldByName('PRTColor').Value:=Trim(CDS_OrderSel.fieldbyname('PRTColor').AsString); + FieldByName('MPRTMF').Value:=Trim(CDS_OrderSel.fieldbyname('MPRTMF').AsString); + FieldByName('MPRTKZ').Value:=Trim(CDS_OrderSel.fieldbyname('MPRTKZ').AsString); + Post; + end; + end; + end; + Next; + end; + end; + CDS_OrderSel.EnableControls; + CDS_Sub.DisableControls; + with CDS_Sub do + begin + First; + while not Eof do + begin + if Trim(Self.CDS_Sub.fieldbyname('SFlag').AsString)<>'2' then + begin + with Self.ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select orderNo=(select OrderNo from JYOrder_Main where MainId=A.MainId), A.*,B.KCQty,B.KCKgQty '); + sql.Add(' from CK_BanCP_CR A inner join CK_BanCP_KC B on A.CRID=B.CRID'); + sql.Add(' where B.KCqty>0 and A.CRType='''' '); + SQL.Add(' and A.SubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+''''); + Open; + end; + with Self.ADOQueryTemp do + begin + First; + while not Eof do + begin + with CDS_Main do + begin + Append; + FieldByName('MainId').Value:=Self.ADOQueryTemp.fieldbyname('MainId').Value; + FieldByName('SubId').Value:=Self.ADOQueryTemp.fieldbyname('SubId').Value; + FieldByName('APId').Value:=Self.ADOQueryTemp.fieldbyname('APId').Value; + FieldByName('OrderNo').Value:=Self.ADOQueryTemp.fieldbyname('OrderNo').Value; + FieldByName('KgQty').Value:=Self.ADOQueryTemp.fieldbyname('KCKgQty').Value; + FieldByName('Qty').Value:=Self.ADOQueryTemp.fieldbyname('KCQty').Value; + FieldByName('QtyUnit').Value:=Self.ADOQueryTemp.fieldbyname('QtyUnit').Value; + FieldByName('MJId').Value:=Self.ADOQueryTemp.fieldbyname('MJId').Value; + FieldByName('CRId').Value:=Self.ADOQueryTemp.fieldbyname('CRId').Value; + FieldByName('CPType').Value:=Self.ADOQueryTemp.fieldbyname('CPType').Value; + Post; + end; + Next; + end; + end; + end; + CDS_Sub.Edit; + CDS_Sub.FieldByName('SFlag').Value:='2'; + CDS_Sub.Post; + Next; + end; + end; + CDS_Sub.EnableControls; + end; + end; + finally + frmOrderSel.Free; + end; +end; + +procedure TfrmCpCkSaoMNew.InitSubGrid(); +begin + try + ADOQuerySub.DisableControls; + with ADOQuerySub do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*'); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.Mainid'); + sql.Add(' where 1<>1 '); + + Open; + end; + SCreateCDS20(ADOQuerySub,CDS_Sub); + SInitCDSData20(ADOQuerySub,CDS_Sub); + finally + ADOQuerySub.EnableControls; + end; +end; + + +procedure TfrmCpCkSaoMNew.Button1Click(Sender: TObject); +begin + if CDS_MainSel.IsEmpty then Exit; + if Application.MessageBox('ȷҪִд˲','ʾ',32+4)<>IDYES then Exit; + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete CK_BanCP_CR where BCID='''+Trim(CDS_MainSel.fieldbyname('BCID').AsString)+''''); + sql.Add('UPdate CK_BanCP_KC Set KCKgQty=(select KgQty from CK_BanCP_CR A where A.CRID=CK_BanCP_KC.CRID and A.CRType='''') '); + sql.Add(',KCQty=(select Qty from CK_BanCP_CR A where A.CRID=CK_BanCP_KC.CRID and A.CRType='''') '); + SQL.Add(' where CRID='+CDS_MainSel.fieldbyname('CRID').AsString); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + with CDS_Main do + begin + Append; + FieldByName('MainId').Value:=CDS_MainSel.fieldbyname('MainId').Value; + FieldByName('SubId').Value:=Self.CDS_MainSel.fieldbyname('SubId').Value; + FieldByName('OrderNo').Value:=Self.CDS_MainSel.fieldbyname('OrderNo').Value; + FieldByName('KgQty').Value:=Self.CDS_MainSel.fieldbyname('KgQty').Value; + FieldByName('Qty').Value:=Self.CDS_MainSel.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=Self.CDS_MainSel.fieldbyname('QtyUnit').Value; + FieldByName('MJId').Value:=Self.CDS_MainSel.fieldbyname('MJId').Value; + FieldByName('CRId').Value:=Self.CDS_MainSel.fieldbyname('CRId').Value; + FieldByName('APID').Value:=Self.CDS_MainSel.fieldbyname('APID').Value; + FieldByName('CPType').Value:=Self.CDS_MainSel.fieldbyname('CPType').Value; + Post; + end; + CDS_MainSel.Delete; + MovePanel1.Visible:=True; + if CDS_MainSel.IsEmpty=False then + Edit1.Text:=IntToStr(Tv3.DataController.Summary.FooterSummaryValues[2]) + else + Edit1.Text:='0'; + Edit2.Text:=Trim(CDS_Main.fieldbyname('MJId').AsString); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ɹ','ʾ',0); + end; +end; + +procedure TfrmCpCkSaoMNew.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if CDS_MainSel.IsEmpty=False then Exit; + if CDS_Sub.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + CDS_Main.DisableControls; + with CDS_Main do + begin + First; + while not Eof do + begin + if Trim(CDS_Main.fieldbyname('SubId').AsString)=Trim(CDS_Sub.fieldbyname('SubId').AsString) then + begin + CDS_Main.Delete; + end else + Next; + end; + end; + CDS_Main.EnableControls; + CDS_Sub.Delete; +end; + +procedure TfrmCpCkSaoMNew.Button4Click(Sender: TObject); +begin + MovePanel1.Visible:=False; +end; + +end. diff --git a/艾登贸易管理/U_CpCkSaoMNewSel.dfm b/艾登贸易管理/U_CpCkSaoMNewSel.dfm new file mode 100644 index 0000000..9dca724 --- /dev/null +++ b/艾登贸易管理/U_CpCkSaoMNewSel.dfm @@ -0,0 +1,783 @@ +object frmCpCkSaoMNewSel: TfrmCpCkSaoMNewSel + Left = 102 + Top = 59 + Width = 1230 + Height = 637 + Caption = #25104#21697#20986#24211#25195#25551 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Panel1: TPanel + Left = 0 + Top = 0 + Width = 1214 + Height = 205 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 0 + object Label1: TLabel + Left = 95 + Top = 134 + Width = 48 + Height = 12 + Caption = #25195#25551#20837#21475 + end + object Label4: TLabel + Left = 310 + Top = 158 + Width = 48 + Height = 12 + Caption = #20986#24211#26102#38388 + end + object Label5: TLabel + Left = 310 + Top = 134 + Width = 48 + Height = 12 + Caption = #20986#24211#21333#21495 + end + object Label6: TLabel + Left = 248 + Top = 136 + Width = 26 + Height = 12 + Caption = #21333#21367 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 248 + Top = 157 + Width = 39 + Height = 12 + Caption = #20837#24211#21333 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 492 + Top = 158 + Width = 48 + Height = 12 + Caption = #20986#24211#22791#27880 + end + object Label9: TLabel + Left = 248 + Top = 180 + Width = 39 + Height = 12 + Caption = #21253#26465#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 816 + Top = 136 + Width = 48 + Height = 12 + Caption = #36864#24211#25195#25551 + end + object BaoID: TEdit + Left = 143 + Top = 130 + Width = 100 + Height = 20 + TabOrder = 0 + OnKeyPress = BaoIDKeyPress + end + object Button2: TButton + Left = 693 + Top = 130 + Width = 48 + Height = 20 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button2Click + end + object Button3: TButton + Left = 21 + Top = 130 + Width = 65 + Height = 20 + Caption = #36873#21333 + TabOrder = 2 + OnClick = Button3Click + end + object Button1: TButton + Left = 1033 + Top = 132 + Width = 62 + Height = 18 + Caption = #25764#38144#20986#24211 + TabOrder = 3 + OnClick = Button1Click + end + object cxGrid1: TcxGrid + Left = 2 + Top = 2 + Width = 1210 + Height = 120 + Align = alTop + TabOrder = 4 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Styles.Footer = DataLink_TradeManage.Default + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 78 + end + object v2Column2: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 141 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 119 + end + object v1Column10: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 83 + end + object v1Column14: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 75 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 80 + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 80 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 93 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv2 + end + end + object Button5: TButton + Left = 492 + Top = 130 + Width = 60 + Height = 20 + Caption = #20986#24211 + TabOrder = 5 + OnClick = Button5Click + end + object CRTime: TDateTimePicker + Left = 358 + Top = 154 + Width = 102 + Height = 20 + Date = 41337.663190821760000000 + Time = 41337.663190821760000000 + Enabled = False + TabOrder = 6 + end + object CKOrdNo: TEdit + Left = 358 + Top = 130 + Width = 101 + Height = 20 + TabOrder = 7 + end + object RKOrdID: TEdit + Left = 143 + Top = 154 + Width = 100 + Height = 20 + TabOrder = 8 + OnKeyPress = RKOrdIDKeyPress + end + object CRNote: TEdit + Left = 541 + Top = 154 + Width = 206 + Height = 20 + TabOrder = 9 + end + object bao: TEdit + Left = 143 + Top = 178 + Width = 100 + Height = 20 + TabOrder = 10 + OnKeyPress = baoKeyPress + end + object THMJID: TEdit + Left = 868 + Top = 132 + Width = 121 + Height = 20 + TabOrder = 11 + OnKeyPress = THMJIDKeyPress + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 205 + Width = 577 + Height = 394 + Align = alLeft + TabOrder = 1 + object Tv1: TcxGridDBTableView + PopupMenu = PopupMenu1 + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + Column = v2Column6 + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Format = #21367#25968#37327#65306'#' + Kind = skCount + Column = v1Column1 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object v1Column6: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 41 + end + object v1Column1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 81 + end + object v1KHName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'KHName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column3: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 57 + end + object v1Column4: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'AOrdDefStr1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 41 + end + object v1Column9: TcxGridDBColumn + Caption = #21253#21495 + DataBinding.FieldName = 'BaoNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 50 + end + object v1Column5: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 40 + end + object v2Column5: TcxGridDBColumn + Caption = #20844#26020#25968 + DataBinding.FieldName = 'KgQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 55 + end + object v2Column6: TcxGridDBColumn + Caption = #38271#24230 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 52 + end + object v1Column2: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'QtyUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 47 + end + object v1Column7: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'CPType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 50 + end + object v1Column8: TcxGridDBColumn + Caption = #20837#24211#21333#21495 + DataBinding.FieldName = 'RKOrdId' + HeaderAlignmentHorz = taCenter + Width = 86 + end + object v1Column11: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 75 + end + object v1Column12: TcxGridDBColumn + Caption = #21253#26465#30721 + DataBinding.FieldName = 'baoID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 75 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGrid3: TcxGrid + Left = 577 + Top = 205 + Width = 637 + Height = 394 + Align = alClient + TabOrder = 2 + object Tv3: TcxGridDBTableView + PopupMenu = PopupMenu2 + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DS_MainSel + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = cxGridDBColumn6 + end + item + Format = #21367#25968#37327#65306'#' + Kind = skCount + Column = cxGridDBColumn1 + end + item + Kind = skSum + Column = v3Column1 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + object v3Column5: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 44 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 98 + end + object v3Column9: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'KHname' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v3Column3: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object v3Column4: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'AOrdDefStr1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 65 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 52 + end + object v3Column1: TcxGridDBColumn + Caption = #20844#26020#25968 + DataBinding.FieldName = 'KgQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 59 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #38271#24230 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 69 + end + object v3Column2: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'QtyUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 57 + end + object v3Column6: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'CPType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 59 + end + object v3Column7: TcxGridDBColumn + Caption = #20837#24211#21333#21495 + DataBinding.FieldName = 'RKOrdId' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 61 + end + object v3Column8: TcxGridDBColumn + Caption = #21253#21495 + DataBinding.FieldName = 'BaoNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 55 + end + object v3MJID: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv3 + end + end + object MovePanel1: TMovePanel + Left = 4 + Top = 248 + Width = 561 + Height = 305 + BevelInner = bvLowered + Color = clSkyBlue + TabOrder = 3 + Visible = False + object Label2: TLabel + Left = 64 + Top = 48 + Width = 147 + Height = 48 + Caption = #24050#20986#24211 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 460 + Top = 40 + Width = 49 + Height = 48 + Caption = #21367 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 68 + Top = 264 + Width = 9 + Height = 16 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Edit1: TEdit + Left = 216 + Top = 24 + Width = 241 + Height = 105 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -96 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 0 + Text = '1234' + end + object Edit2: TEdit + Left = 73 + Top = 143 + Width = 386 + Height = 72 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -64 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 1 + Text = '91209120001' + end + object Button4: TButton + Left = 396 + Top = 240 + Width = 75 + Height = 41 + Caption = #20851#38381 + TabOrder = 2 + OnClick = Button4Click + end + end + object MovePanel2: TMovePanel + Left = 584 + Top = 264 + Width = 289 + Height = 49 + BevelInner = bvLowered + Caption = #27491#22312#25191#34892#25968#25454#25805#20316#65292#35831#31245#21518#12290#12290#12290 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 976 + Top = 40 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 136 + Top = 216 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 96 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1072 + Top = 8 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 792 + Top = 64 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 872 + Top = 72 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 320 + Top = 48 + end + object DataSource2: TDataSource + DataSet = CDS_Sub + Left = 288 + Top = 48 + end + object ADOQuerySub: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 680 + Top = 64 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 56 + Top = 228 + end + object DS_MainSel: TDataSource + DataSet = CDS_MainSel + Left = 616 + Top = 336 + end + object CDS_MainSel: TClientDataSet + Aggregates = <> + Params = <> + Left = 648 + Top = 336 + end + object cxGridPopupMenu4: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 832 + Top = 312 + end + object PopupMenu1: TPopupMenu + Left = 288 + Top = 528 + object N1: TMenuItem + Caption = #20840#36873 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #20840#24323 + OnClick = N2Click + end + end + object PopupMenu2: TPopupMenu + Left = 936 + Top = 480 + object MenuItem1: TMenuItem + Caption = #20840#36873 + OnClick = MenuItem1Click + end + object MenuItem2: TMenuItem + Caption = #20840#24323 + OnClick = MenuItem2Click + end + end + object ADOQueryPrice: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 608 + Top = 64 + end + object CDSPrice: TClientDataSet + Aggregates = <> + Params = <> + Left = 440 + Top = 352 + end +end diff --git a/艾登贸易管理/U_CpCkSaoMNewSel.pas b/艾登贸易管理/U_CpCkSaoMNewSel.pas new file mode 100644 index 0000000..b2e857f --- /dev/null +++ b/艾登贸易管理/U_CpCkSaoMNewSel.pas @@ -0,0 +1,1361 @@ +unit U_CpCkSaoMNewSel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, ExtCtrls, ADODB, DBClient, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, MovePanel, cxCheckBox, Menus, + ComCtrls; + +type + TfrmCpCkSaoMNewSel = class(TForm) + cxGridPopupMenu1: TcxGridPopupMenu; + CDS_Main: TClientDataSet; + DataSource1: TDataSource; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + Panel1: TPanel; + BaoID: TEdit; + Label1: TLabel; + Button2: TButton; + Button3: TButton; + CDS_Sub: TClientDataSet; + DataSource2: TDataSource; + ADOQuerySub: TADOQuery; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_MainSel: TDataSource; + CDS_MainSel: TClientDataSet; + Button1: TButton; + cxGridPopupMenu4: TcxGridPopupMenu; + cxGrid1: TcxGrid; + Tv2: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + cxGrid2: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column6: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + cxGrid2Level1: TcxGridLevel; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + v3Column5: TcxGridDBColumn; + cxGridDBColumn1: TcxGridDBColumn; + v3Column3: TcxGridDBColumn; + v3Column4: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + v3Column1: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + v3Column2: TcxGridDBColumn; + v3Column6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + PopupMenu2: TPopupMenu; + MenuItem1: TMenuItem; + MenuItem2: TMenuItem; + Button5: TButton; + CRTime: TDateTimePicker; + Label4: TLabel; + Label5: TLabel; + CKOrdNo: TEdit; + ADOQueryPrice: TADOQuery; + CDSPrice: TClientDataSet; + Label6: TLabel; + RKOrdID: TEdit; + Label7: TLabel; + v1Column8: TcxGridDBColumn; + v3Column7: TcxGridDBColumn; + MovePanel1: TMovePanel; + Label2: TLabel; + Label3: TLabel; + Edit1: TEdit; + Edit2: TEdit; + Button4: TButton; + MovePanel2: TMovePanel; + v1Column9: TcxGridDBColumn; + v3Column8: TcxGridDBColumn; + Label8: TLabel; + CRNote: TEdit; + bao: TEdit; + Label9: TLabel; + v1Column11: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + Label10: TLabel; + THMJID: TEdit; + v3MJID: TcxGridDBColumn; + Label12: TLabel; + v1KHName: TcxGridDBColumn; + v3Column9: TcxGridDBColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure BaoIDKeyPress(Sender: TObject; var Key: Char); + procedure Button2Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button4Click(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure MenuItem1Click(Sender: TObject); + procedure MenuItem2Click(Sender: TObject); + procedure Button5Click(Sender: TObject); + procedure RKOrdIDKeyPress(Sender: TObject; var Key: Char); + procedure baoKeyPress(Sender: TObject; var Key: Char); + procedure THMJIDKeyPress(Sender: TObject; var Key: Char); + private + { Private declarations } + procedure InitGrid(); + procedure InitSubGrid(); + function YSData(Order_Main10:TClientDataSet):Boolean; + procedure InitPrice(); + public + { Public declarations } + end; + +var + frmCpCkSaoMNewSel: TfrmCpCkSaoMNewSel; + +implementation +uses +U_DataLink,U_Fun,U_OrderSel ; + +{$R *.dfm} + +procedure TfrmCpCkSaoMNewSel.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmCpCkSaoMNewSel.FormDestroy(Sender: TObject); +begin + frmCpCkSaoMNewSel:=nil; +end; +procedure TfrmCpCkSaoMNewSel.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + SQL.Add('select A.*,OrderNo=(select OrderNo from JYOrder_Main where MainId=A.MainId) '); + sql.Add(',KHName=(select isnull(customerNoName,OrderNo) from JYOrder_Main where MainId=A.MainId)'); + sql.Add(',MPrtCodeName=(select MPrtCodeName from JYOrder_Main where MainId=A.MainId)'); + sql.Add(',Mprtspec=(select Mprtspec from JYOrder_Main where MainId=A.MainId)'); + SQL.Add(',PRTHX=(select PRTHX from JYOrder_Sub where SubId=A.SubId)'); + SQL.Add(',PRTColor=(select PRTColor from JYOrder_Sub where SubId=A.SubId)'); + sql.Add(',AOrdDefstr1=(select AOrdDefstr1 from JYOrder_Sub_AnPai where ApId=A.ApId)'); + sql.Add(',MJXH=(select MJXH from WFB_MJJY where MJID=A.MJID)'); + sql.Add('from CK_BanCP_CR A'); + sql.add('where 1<>1'); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + + SCreateCDS20(ADOQueryMain,CDS_MainSel); + //SInitCDSData20(ADOQueryMain,CDS_MainSel); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmCpCkSaoMNewSel.FormShow(Sender: TObject); +begin + ReadCxGrid('ѡ',Tv2,'Ʒֿ'); + ReadCxGrid('Ʒ',Tv1,'Ʒֿ'); + ReadCxGrid('ƷSels',Tv3,'Ʒֿ'); + InitSubGrid(); + InitGrid(); + CRTime.DateTime:=SGetServerDate(ADOQueryTemp); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Mainid,PRTPrice,KHName='''' from JYOrder_Sub where 1<>1'); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDSPrice); + SInitCDSData20(ADOQueryTemp,CDSPrice); +end; +procedure TfrmCpCkSaoMNewSel.InitPrice(); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Mainid,PRTPrice,KHName=Cast('''' as varchar(50)) from JYOrder_Sub where 1<>1'); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDSPrice); + SInitCDSData20(ADOQueryTemp,CDSPrice); + if CDSPrice.IsEmpty=False then + begin + CDSPrice.Delete; + end; +end; + +procedure TfrmCpCkSaoMNewSel.BaoIDKeyPress(Sender: TObject; var Key: Char); +var + maxno:String; +begin + if Key=#13 then + begin + Label12.Caption:=''; + if CDS_Sub.IsEmpty then + begin + BaoID.Text:=''; + Application.MessageBox('δѡɨ⣡','ʾ',0); + Exit; + end; + if Trim(CKOrdNo.Text)='' then + begin + Application.MessageBox('ⵥŲΪ!','ʾ',0); + Exit; + end; + if CDS_MainSel.Locate('MJId',Trim(BaoID.Text),[]) then + begin + MovePanel1.Visible:=True; + Edit2.Text:=Trim(BaoID.Text); + Label12.Caption:='ѣ˾ظɨ裡'; + BaoID.Text:=''; + + // Application.MessageBox('˾ظɨ裡','ʾ',0); + Exit; + end; + if CDS_Main.Locate('MJId',Trim(BaoID.Text),[])=False then + begin + MovePanel1.Visible:=True; + Edit2.Text:=Trim(BaoID.Text); + Label12.Caption:='ѣ˾ڴľУ'; + BaoID.Text:=''; + + // Application.MessageBox('˾ڴľУ','ʾ',0); + Exit; + end; + CDS_Main.Locate('MJId',Trim(BaoID.Text),[]); + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_Main do + begin + if GetLSNo(ADOQueryCmd,maxno,'CC','CK_BanCp_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCp_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('BCID').Value:=Trim(maxno); + FieldByName('CRID').Value:=CDS_Main.fieldbyname('CRID').Value; + FieldByName('CRTime').Value:=FormatDateTime('yyyy-MM-dd',CRTime.Date); + FieldByName('KGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('MJID').Value:=CDS_Main.fieldbyname('MJID').Value; + FieldByName('MainID').Value:=CDS_Main.fieldbyname('MainID').Value; + FieldByName('SubID').Value:=CDS_Main.fieldbyname('SubID').Value; + FieldByName('APID').Value:=CDS_Main.fieldbyname('APID').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('BaoNo').Value:=CDS_Main.fieldbyname('BaoNo').Value; + FieldByName('BaoID').Value:=CDS_Main.fieldbyname('BaoID').Value; + FieldByName('RKPlace').Value:=CDS_Main.fieldbyname('RKPlace').AsString; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + FieldByName('CKOrdNo').Value:=Trim(CKOrdNo.Text); + FieldByName('CRNote').Value:=Trim(CRNote.Text); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update CK_BanCp_KC set KCKgQty=0,KCQty=0 where CRID='+CDS_Main.fieldbyname('CRID').AsString); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add(' Update WFB_MJJY Set MJStr2=''ѳ'' where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+''''); + sql.Add(' update JYOrdercon_Main SET status=''1'' '); + sql.Add(' from JYOrdercon_Main A '); + sql.Add(' inner join JYOrder_Main B on B.conNO=A.conNO '); + sql.Add(' where B.MainID='''+Trim(CDS_Main.fieldbyname('MainID').AsString)+''' and A.status<>''1'' '); + ExecSQL; + end; + end; + if YSData(CDS_Main)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('Ӧտʧ!','ʾ',0); + Exit; + end; + ADOQueryCmd.Connection.CommitTrans; + with CDS_MainSel do + begin + Append; + FieldByName('MainId').Value:=CDS_Main.fieldbyname('MainId').Value; + FieldByName('SubId').Value:=Self.CDS_Main.fieldbyname('SubId').Value; + FieldByName('KHName').Value:=Self.CDS_Main.fieldbyname('KHName').Value; + FieldByName('OrderNo').Value:=Self.CDS_Main.fieldbyname('OrderNo').Value; + FieldByName('KGQty').Value:=Self.CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=Self.CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=Self.CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('MJId').Value:=Self.CDS_Main.fieldbyname('MJId').Value; + FieldByName('CRId').Value:=Self.CDS_Main.fieldbyname('CRId').Value; + FieldByName('APID').Value:=Self.CDS_Main.fieldbyname('APID').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('BCID').Value:=Trim(maxno); + FieldByName('PRTColor').Value:=Self.CDS_Main.fieldbyname('PRTColor').Value; + FieldByName('MJXH').Value:=Self.CDS_Main.fieldbyname('MJXH').Value; + FieldByName('AOrdDefstr1').Value:=CDS_Main.fieldbyname('AOrdDefstr1').Value; + FieldByName('KHName').Value:=CDS_Main.fieldbyname('KHName').Value; + FieldByName('RKOrdId').Value:=CDS_Main.fieldbyname('RKOrdId').Value; + FieldByName('BaoNo').Value:=CDS_Main.fieldbyname('BaoNo').Value; + //FieldByName('JZXNo').Value:=Trim(JZXNo.Text); + Post; + end; + CDS_Main.Delete; + MovePanel1.Visible:=True; + if CDS_MainSel.IsEmpty=False then + Edit1.Text:=IntToStr(Tv3.DataController.Summary.FooterSummaryValues[2]) + else + Edit1.Text:='0'; + Edit2.Text:=Trim(BaoID.Text); + BaoID.Text:=''; + Exit; + except + BaoID.Text:=''; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; + end; +end; + +procedure TfrmCpCkSaoMNewSel.Button2Click(Sender: TObject); +begin + tv1.Controller.EditingController.ShowEdit(); + tv3.Controller.EditingController.ShowEdit(); + Close; + WriteCxGrid('ѡ',Tv2,'Ʒֿ'); + WriteCxGrid('Ʒ',Tv1,'Ʒֿ'); + WriteCxGrid('ƷSels',Tv3,'Ʒֿ'); +end; + +procedure TfrmCpCkSaoMNewSel.Button3Click(Sender: TObject); +var + maxno,fsj:String; +begin + {if CDS_Main.IsEmpty=False then + begin + Application.MessageBox('ɨ費ܸĵţ','ʾ',0); + Exit; + end;} + + try + frmOrderSel:=TfrmOrderSel.Create(Application); + with frmOrderSel do + begin + if ShowModal=1 then + begin + CDS_OrderSel.DisableControls; + with CDS_OrderSel do + begin + First; + while not Eof do + begin + if FieldByName('SSel').Value=True then + begin + if Self.CDS_Sub.Locate('SubId',Trim(CDS_OrderSel.fieldbyname('SubId').AsString),[])=False then + begin + with Self.CDS_Sub do + begin + Append; + FieldByName('MainId').Value:=Trim(CDS_OrderSel.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(CDS_OrderSel.fieldbyname('SubId').AsString); + FieldByName('CustomerNo').Value:=Trim(CDS_OrderSel.fieldbyname('CustomerNo').AsString); + FieldByName('OrderNo').Value:=Trim(CDS_OrderSel.fieldbyname('OrderNo').AsString); + FieldByName('CustomerNoName').Value:=Trim(CDS_OrderSel.fieldbyname('CustomerNoName').AsString); + FieldByName('MPRTCodeName').Value:=Trim(CDS_OrderSel.fieldbyname('MPRTCodeName').AsString); + FieldByName('PRTOrderQty').Value:=Trim(CDS_OrderSel.fieldbyname('PRTOrderQty').AsString); + FieldByName('OrderUnit').Value:=Trim(CDS_OrderSel.fieldbyname('OrderUnit').AsString); + FieldByName('PRTColor').Value:=Trim(CDS_OrderSel.fieldbyname('PRTColor').AsString); + FieldByName('MPRTMF').Value:=Trim(CDS_OrderSel.fieldbyname('MPRTMF').AsString); + FieldByName('MPRTKZ').Value:=Trim(CDS_OrderSel.fieldbyname('MPRTKZ').AsString); + Post; + end; + end; + end; + Next; + end; + end; + CDS_OrderSel.EnableControls; + + end; + end; + finally + frmOrderSel.Free; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete TBSubID where DName='''+Trim(DCode)+''''); + ExecSQL; + end; + CDS_Sub.DisableControls; + with CDS_Sub do + begin + First; + while not Eof do + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('insert into TBSubID select :SubId,:Dname'); + Parameters.ParamByName('SubId').Value:=Trim(CDS_Sub.fieldbyname('SubId').AsString); + Parameters.ParamByName('Dname').Value:=Trim(DCode); + ExecSQL; + end; + Next; + end; + end; + CDS_Sub.EnableControls; + with Self.ADOQueryTemp do + begin + Close; + SQL.Clear; + SQL.Add('select A.*,OrderNo=(select OrderNo from JYOrder_Main where MainId=A.MainId) '); + sql.Add(',KHName=(select isnull(customerNoName,OrderNo) from JYOrder_Main where MainId=A.MainId)'); + sql.Add(',MPrtCodeName=(select MPrtCodeName from JYOrder_Main where MainId=A.MainId)'); + sql.Add(',Mprtspec=(select Mprtspec from JYOrder_Main where MainId=A.MainId)'); + SQL.Add(',PRTHX=(select PRTHX from JYOrder_Sub where SubId=A.SubId)'); + SQL.Add(',PRTColor=(select PRTHX from JYOrder_Sub where SubId=A.SubId)'); + sql.Add(',AOrdDefstr1=(select AOrdDefstr1 from JYOrder_Sub_AnPai where ApId=A.ApId)'); + sql.Add(',MJXH=(select MJXH from WFB_MJJY where MJID=A.MJID)'); + sql.Add(' from CK_BanCP_CR A inner join CK_BanCP_KC B on A.CRID=B.CRID'); + sql.Add(' where exists( select * from TBSubID AA where AA.SubId=A.SubId and AA.DName='''+Trim(DCode)+''') '); + SQL.Add(' and (B.KCqty>0 or B.KCKgQty>0) and A.CRType='''' '); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_Main); + SInitCDSData20(ADOQueryTemp,CDS_Main); + SCreateCDS20(ADOQueryTemp,CDS_Mainsel); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select A.MainId,A.PRTPrice,C.CustomerNoName from JYOrder_Sub A inner join TBSubID B on A.SubId=B.SubId'); + sql.Add(' inner join JYOrder_Main C on A.MainId=C.MainId '); + sql.Add(' where B.DName='''+Trim(DCode)+''''); + sql.Add(' group by A.MainId,A.PRTPrice,C.CustomerNoName'); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDSPrice); + SInitCDSData20(ADOQueryTemp,CDSPrice); + if GetLSNo(ADOQueryCmd,maxno,'CK','CK_BanCP_CR',3,1)=False then + begin + Application.MessageBox('ȡⵥʧ!','ʾ',0); + Exit; + end; + CKOrdNo.Text:=Trim(maxno); +end; + +procedure TfrmCpCkSaoMNewSel.InitSubGrid(); +begin + try + ADOQuerySub.DisableControls; + with ADOQuerySub do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*'); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.Mainid'); + sql.Add(' where 1<>1 '); + + Open; + end; + SCreateCDS20(ADOQuerySub,CDS_Sub); + SInitCDSData20(ADOQuerySub,CDS_Sub); + finally + ADOQuerySub.EnableControls; + end; +end; + + +procedure TfrmCpCkSaoMNewSel.Button1Click(Sender: TObject); +var + FMainid:String; +begin + if CDS_MainSel.IsEmpty then Exit; + if CDS_MainSel.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪִд˲','ʾ',32+4)<>IDYES then Exit; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + InitPrice(); + + try + ADOQueryCmd.Connection.BeginTrans; + CDS_MainSel.DisableControls; + with CDS_MainSel do + begin + //First; + while CDS_MainSel.Locate('SSel',True,[])=True do + begin + //if CDS_MainSel.FieldByName('SSel').AsBoolean=True then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete CK_BanCP_CR where BCID='''+Trim(CDS_MainSel.fieldbyname('BCID').AsString)+''''); + sql.Add('UPdate CK_BanCP_KC Set KCKgQty=(select KgQty from CK_BanCP_CR A where A.CRID=CK_BanCP_KC.CRID and A.CRType='''') '); + sql.Add(',KCQty=(select Qty from CK_BanCP_CR A where A.CRID=CK_BanCP_KC.CRID and A.CRType='''') '); + SQL.Add(' where CRID='+CDS_MainSel.fieldbyname('CRID').AsString); + sql.Add('Update WFB_MJJY Set MJStr2='''' where MJID='''+Trim(CDS_MainSel.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + CDS_Main.DisableControls; + with CDS_Main do + begin + Append; + FieldByName('MainId').Value:=CDS_MainSel.fieldbyname('MainId').Value; + FieldByName('SubId').Value:=Self.CDS_MainSel.fieldbyname('SubId').Value; + FieldByName('OrderNo').Value:=Self.CDS_MainSel.fieldbyname('OrderNo').Value; + FieldByName('KgQty').Value:=Self.CDS_MainSel.fieldbyname('KgQty').Value; + FieldByName('Qty').Value:=Self.CDS_MainSel.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=Self.CDS_MainSel.fieldbyname('QtyUnit').Value; + FieldByName('MJId').Value:=Self.CDS_MainSel.fieldbyname('MJId').Value; + FieldByName('CRId').Value:=Self.CDS_MainSel.fieldbyname('CRId').Value; + FieldByName('APID').Value:=Self.CDS_MainSel.fieldbyname('APID').Value; + FieldByName('CPType').Value:=Self.CDS_MainSel.fieldbyname('CPType').Value; + FieldByName('PRTColor').Value:=Self.CDS_MainSel.fieldbyname('PRTColor').Value; + FieldByName('AOrddefstr1').Value:=Self.CDS_MainSel.fieldbyname('AOrddefstr1').Value; + FieldByName('MJXH').Value:=Self.CDS_MainSel.fieldbyname('MJXH').Value; + FieldByName('KHName').Value:=CDS_MainSel.fieldbyname('KHName').Value; + FieldByName('RKOrdID').Value:=CDS_MainSel.fieldbyname('RKOrdID').Value; + FieldByName('BaoNo').Value:=CDS_MainSel.fieldbyname('BaoNo').Value; + FieldByName('BaoID').Value:=CDS_MainSel.fieldbyname('BaoID').Value; + Post; + end; + CDS_Main.EnableControls; + if YSData(CDS_MainSel)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('Ӧտʧ!','ʾ',0); + Exit; + end; + CDS_MainSel.Delete; + end; + end; + end; + CDS_MainSel.EnableControls; + CDSPrice.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + MovePanel1.Visible:=True; + if CDS_MainSel.IsEmpty=False then + Edit1.Text:=IntToStr(Tv3.DataController.Summary.FooterSummaryValues[2]) + else + Edit1.Text:='0'; + MovePanel2.Visible:=False; + Exit; + except + MovePanel2.Visible:=False; + CDS_MainSel.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +procedure TfrmCpCkSaoMNewSel.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if CDS_MainSel.IsEmpty=False then Exit; + if CDS_Sub.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + CDS_Main.DisableControls; + with CDS_Main do + begin + First; + while not Eof do + begin + if Trim(CDS_Main.fieldbyname('SubId').AsString)=Trim(CDS_Sub.fieldbyname('SubId').AsString) then + begin + CDS_Main.Delete; + end else + Next; + end; + end; + CDS_Main.EnableControls; + CDS_Sub.Delete; +end; + +procedure TfrmCpCkSaoMNewSel.Button4Click(Sender: TObject); +begin + MovePanel1.Visible:=False; +end; + +procedure TfrmCpCkSaoMNewSel.N1Click(Sender: TObject); +begin + SelOKNo(CDS_Main,True); +end; + +procedure TfrmCpCkSaoMNewSel.N2Click(Sender: TObject); +begin + SelOKNo(CDS_Main,False); +end; + +procedure TfrmCpCkSaoMNewSel.MenuItem1Click(Sender: TObject); +begin + SelOKNo(CDS_MainSel,True); +end; + +procedure TfrmCpCkSaoMNewSel.MenuItem2Click(Sender: TObject); +begin + SelOKNo(CDS_MainSel,False); +end; + +procedure TfrmCpCkSaoMNewSel.Button5Click(Sender: TObject); +var + maxno:String; + CRID:Integer; + MaxCkNo,MaxCkSubNo:String; +begin + if CDS_Sub.IsEmpty then Exit; + if CDS_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + if Trim(CKOrdNo.Text)='' then + begin + Application.MessageBox('ⵥŲΪ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪִг','ʾ',32+4)<>IDYES then exit; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + InitPrice(); + try + ADOQueryCmd.Connection.BeginTrans; + CDS_Main.DisableControls; + CDS_MainSel.DisableControls; + with CDS_Main do + begin + //First; + while CDS_Main.Locate('SSel',True,[])=True do + begin + application.ProcessMessages; + //if CDS_Main.FieldByName('SSel').AsBoolean=True then + begin + if GetLSNo(ADOQueryTemp,maxno,'CC','CK_BanCp_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCp_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('BCID').Value:=Trim(maxno); + FieldByName('CRID').Value:=CDS_Main.fieldbyname('CRID').Value; + FieldByName('CRTime').Value:=FormatDateTime('yyyy-MM-dd',CRTime.Date); + FieldByName('KGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('MJID').Value:=CDS_Main.fieldbyname('MJID').Value; + FieldByName('MainID').Value:=CDS_Main.fieldbyname('MainID').Value; + FieldByName('SubID').Value:=CDS_Main.fieldbyname('SubID').Value; + FieldByName('APID').Value:=CDS_Main.fieldbyname('APID').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('BaoNo').Value:=CDS_Main.fieldbyname('BaoNo').Value; + FieldByName('BaoID').Value:=CDS_Main.fieldbyname('BaoID').Value; + FieldByName('RKPlace').Value:=CDS_Main.fieldbyname('RKPlace').AsString; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + FieldByName('CKOrdNo').Value:=Trim(CKOrdNo.Text); + FieldByName('CRNote').Value:=Trim(CRNote.Text); + //FieldByName('JZXNo').Value:=Trim(JZXNo.Text); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update CK_BanCp_KC set KCKgQty=0,KCQty=0 where CRID='+CDS_Main.fieldbyname('CRID').AsString); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add(' Update WFB_MJJY Set MJStr2=''ѳ'' where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+''''); + sql.Add(' update JYOrdercon_Main SET status=''1'' '); + sql.Add(' from JYOrdercon_Main A '); + sql.Add(' inner join JYOrder_Main B on B.conNO=A.conNO '); + sql.Add(' where B.MainID='''+Trim(CDS_Main.fieldbyname('MainID').AsString)+''' and A.status<>''1'' '); + ExecSQL; + end; + if YSData(CDS_Main)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('Ӧտʧ!','ʾ',0); + Exit; + end; + + with CDS_MainSel do + begin + Append; + FieldByName('MainId').Value:=CDS_Main.fieldbyname('MainId').Value; + FieldByName('SubId').Value:=Self.CDS_Main.fieldbyname('SubId').Value; + FieldByName('KHName').Value:=Self.CDS_Main.fieldbyname('KHName').Value; + FieldByName('OrderNo').Value:=Self.CDS_Main.fieldbyname('OrderNo').Value; + FieldByName('KGQty').Value:=Self.CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=Self.CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=Self.CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('MJId').Value:=Self.CDS_Main.fieldbyname('MJId').Value; + FieldByName('CRId').Value:=Self.CDS_Main.fieldbyname('CRId').Value; + FieldByName('APID').Value:=Self.CDS_Main.fieldbyname('APID').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('BCID').Value:=Trim(maxno); + FieldByName('PRTColor').Value:=Self.CDS_Main.fieldbyname('PRTColor').Value; + FieldByName('MJXH').Value:=Self.CDS_Main.fieldbyname('MJXH').Value; + FieldByName('AOrdDefstr1').Value:=CDS_Main.fieldbyname('AOrdDefstr1').Value; + FieldByName('KHName').Value:=CDS_Main.fieldbyname('KHName').Value; + FieldByName('RKOrdId').Value:=CDS_Main.fieldbyname('RKOrdId').Value; + FieldByName('BaoNo').Value:=CDS_Main.fieldbyname('BaoNo').Value; + //FieldByName('JZXNo').Value:=Trim(JZXNo.Text); + Post; + end; + // CDS_MainSel.EnableControls; + CDS_Main.Delete; + end; + end; + end; + CDS_MainSel.EnableControls; + CDS_Main.EnableControls; + CDS_Sub.DisableControls; + ADOQueryCmd.Connection.CommitTrans; + MovePanel2.Visible:=False; + Exit; + except + BaoID.Text:=''; + CDS_Main.EnableControls; + MovePanel2.Visible:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; +function TfrmCpCkSaoMNewSel.YSData(Order_Main10:TClientDataSet):Boolean; +var + CRID,YFID,PriceUnit,OrderUnit,FComTaiTou,FromSubID:String; + fprice,huilv:double; +begin + Result:=False; + fprice:=0; + with Order_Main10 do + begin + + begin + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1 *,fPrice=dbo.F_Get_Order_Price(MainID,subID) from JYOrder_Sub Where subID='''+Trim(Order_Main10.fieldbyname('subID').AsString)+''''); + Open; + end; + IF not ADOQueryTemp.IsEmpty then + begin + PriceUnit:=Trim(ADOQueryTemp.fieldbyname('PriceUnit').AsString); + OrderUnit:=Trim(ADOQueryTemp.fieldbyname('OrderUnit').AsString); + fPrice:= ADOQueryTemp.fieldbyname('fPrice').AsFloat; + huilv:= ADOQueryTemp.fieldbyname('huilv').AsFloat; + end; + IF huilv=0 then huilv:=1; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main10.fieldbyname('KHName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(Order_Main10.fieldbyname('KHName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add(' select * from YF_Money_CR where FactoryName='''+Trim(Order_Main10.fieldbyname('KHName').AsString)+''''); + sql.Add(' and mainID='''+Trim(Order_Main10.fieldbyname('mainID').AsString)+''''); + sql.Add(' and CRTime='''+FormatDateTime('yyyy-MM-dd',CRTime.Date)+'''') ; + // sql.Add(' and YFTypeId='''+Trim(Order_Main10.fieldbyname('subID').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd,YFID,'CS','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡƷӦʧ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(Order_Main10.fieldbyname('mainID').AsString); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦտǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(Order_Main10.fieldbyname('KHName').AsString); + FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',CRTime.Date)); + FieldByName('YFType').Value:='Զ'; + FieldByName('Price').Value:=fprice; + FieldByName('HuiLv').Value:=huilv; + FieldByName('BZType').Value:=Trim(PriceUnit); + FieldByName('QtyUnit').Value:=Trim(Order_Main10.fieldbyname('QtyUnit').AsString); + FieldByName('ComTaiTou').Value:=Trim(FComTaiTou); + FieldByName('YFName').Value:='۽'; + FieldByName('MainId').Value:=Trim(Order_Main10.fieldbyname('Mainid').AsString); + // FieldByName('subID').Value:=Trim(Order_Main10.fieldbyname('subID').AsString); + FieldByName('OrderNO').Value:=Trim(Order_Main10.fieldbyname('OrderNO').AsString); + FieldByName('P_CodeName').Value:=Trim(Order_Main10.fieldbyname('MprtCodeName').AsString); + FieldByName('P_Spec').Value:=Trim(Order_Main10.fieldbyname('MprtSpec').AsString); + FieldByName('status').Value:='0'; + Post; + end; + end else + begin + YFID:=Trim(ADOQueryTemp.fieldbyname('YFID').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update YF_Money_CR Set Qty=(select isnull(Sum(A.Qty),0) from CK_BanCP_CR A where A.MainID=YF_Money_CR.MainID and A.CRtime=YF_Money_CR.CRTime and A.CRType='''') '); + sql.Add(',PS=(select isnull(count(A.mainID),0) from CK_BanCP_CR A where A.maiNID=YF_Money_CR.maiNID and A.CRtime=YF_Money_CR.CRTime and A.CRType='''') '); + sql.Add(' where MainID='''+Trim(Order_Main10.fieldbyname('mainID').AsString)+''''); + sql.Add(' and CRTime='''+FormatDateTime('yyyy-MM-dd',CRTime.Date)+'''') ; + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty*HuiLv'); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where YFId='''+Trim(YFID)+''''); + Open; + end; + if ADOQueryTemp.FieldByName('Qty').Value=0 then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete from YF_Money_CR where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + end; + //Next; + end; + end; + Result:=True; +end; + +procedure TfrmCpCkSaoMNewSel.RKOrdIDKeyPress(Sender: TObject; + var Key: Char); +var + maxno:String; +begin + if Key=#13 then + begin + Label12.Caption:=''; + if CDS_Sub.IsEmpty then + begin + BaoID.Text:=''; + Application.MessageBox('δѡɨ⣡','ʾ',0); + Exit; + end; + if Trim(CKOrdNo.Text)='' then + begin + Application.MessageBox('ⵥŲΪ!','ʾ',0); + Exit; + end; + if CDS_Main.Locate('RKOrdId',Trim(RKOrdId.Text),[])=False then + begin + MovePanel1.Visible:=True; + Edit2.Text:=Trim(RKOrdId.Text); + Label12.Caption:='ѣⵥڴľУ'; + RKOrdId.Text:=''; + + // Application.MessageBox('ⵥڴľУ','ʾ',0); + Exit; + end; + //CDS_Main.Locate('MJId',Trim(BaoID.Text),[]); + MovePanel2.Visible:=True; + MovePanel2.Refresh; + InitPrice(); + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_Main do + begin + First; + while CDS_Main.Locate('RKOrdId',Trim(RKOrdId.Text),[])=True do + begin + if GetLSNo(ADOQueryCmd,maxno,'CC','CK_BanCp_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCp_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('BCID').Value:=Trim(maxno); + FieldByName('CRID').Value:=CDS_Main.fieldbyname('CRID').Value; + FieldByName('CRTime').Value:=FormatDateTime('yyyy-MM-dd',CRTime.Date); + FieldByName('KGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('MJID').Value:=CDS_Main.fieldbyname('MJID').Value; + FieldByName('MainID').Value:=CDS_Main.fieldbyname('MainID').Value; + FieldByName('SubID').Value:=CDS_Main.fieldbyname('SubID').Value; + FieldByName('APID').Value:=CDS_Main.fieldbyname('APID').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('BaoNo').Value:=CDS_Main.fieldbyname('BaoNo').Value; + FieldByName('BaoID').Value:=CDS_Main.fieldbyname('BaoID').Value; + FieldByName('RKPlace').Value:=CDS_Main.fieldbyname('RKPlace').AsString; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + FieldByName('CRNote').Value:=Trim(CRNote.Text); + FieldByName('CKOrdNo').Value:=Trim(CKOrdNo.Text); + //FieldByName('JZXNo').Value:=Trim(JZXNo.Text); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update CK_BanCp_KC set KCKgQty=0,KCQty=0 where CRID='+CDS_Main.fieldbyname('CRID').AsString); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add(' Update WFB_MJJY Set MJStr2=''ѳ'' where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+''''); + sql.Add(' update JYOrdercon_Main SET status=''1'' '); + sql.Add(' from JYOrdercon_Main A '); + sql.Add(' inner join JYOrder_Main B on B.conNO=A.conNO '); + sql.Add(' where B.MainID='''+Trim(CDS_Main.fieldbyname('MainID').AsString)+''' and A.status<>''1'' '); + ExecSQL; + end; + if YSData(CDS_Main)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('Ӧտʧ!','ʾ',0); + Exit; + end; + if CDSPrice.Locate('MainId',Trim(CDS_Main.fieldbyname('MainId').AsString),[])=False then + begin + CDSPrice.Append; + CDSPrice.FieldByName('MainId').Value:=Trim(CDS_Main.fieldbyname('MainId').AsString); + CDSPrice.FieldByName('KHName').Value:=Trim(CDS_Main.fieldbyname('KHName').AsString); + //CDS_Sub.Locate('MainId',Trim(CDS_Main.fieldbyname('MainId').AsString),[]); + {if Trim(CDS_Sub.fieldbyname('OrderUnit').AsString)<>'Kg' then + begin + CDSPrice.FieldByName('JLUnit').Value:='M'; + end else + begin + CDSPrice.FieldByName('JLUnit').Value:='Kg'; + end; } + CDSPrice.Post; + end; + with CDS_MainSel do + begin + Append; + FieldByName('MainId').Value:=CDS_Main.fieldbyname('MainId').Value; + FieldByName('SubId').Value:=Self.CDS_Main.fieldbyname('SubId').Value; + FieldByName('KHName').Value:=Self.CDS_Main.fieldbyname('KHName').Value; + FieldByName('OrderNo').Value:=Self.CDS_Main.fieldbyname('OrderNo').Value; + FieldByName('KGQty').Value:=Self.CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=Self.CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=Self.CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('MJId').Value:=Self.CDS_Main.fieldbyname('MJId').Value; + FieldByName('CRId').Value:=Self.CDS_Main.fieldbyname('CRId').Value; + FieldByName('APID').Value:=Self.CDS_Main.fieldbyname('APID').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('BCID').Value:=Trim(maxno); + FieldByName('PRTColor').Value:=Self.CDS_Main.fieldbyname('PRTColor').Value; + FieldByName('MJXH').Value:=Self.CDS_Main.fieldbyname('MJXH').Value; + FieldByName('AOrdDefstr1').Value:=CDS_Main.fieldbyname('AOrdDefstr1').Value; + FieldByName('KHName').Value:=CDS_Main.fieldbyname('KHName').Value; + FieldByName('RKOrdId').Value:=CDS_Main.fieldbyname('RKOrdId').Value; + FieldByName('BaoNo').Value:=CDS_Main.fieldbyname('BaoNo').Value; + //FieldByName('JZXNo').Value:=Trim(JZXNo.Text); + Post; + end; + CDS_Main.Delete; + end; + + end; + with CDSPrice do + begin + First; + while not Eof do + begin + if YSData(CDSPrice)=False then + begin + MovePanel2.Visible:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('Ӧտʧ!','ʾ',0); + Exit; + end; + Next; + end; + end; + + ADOQueryCmd.Connection.CommitTrans; + + MovePanel1.Visible:=True; + if CDS_MainSel.IsEmpty=False then + Edit1.Text:=IntToStr(Tv3.DataController.Summary.FooterSummaryValues[2]) + else + Edit1.Text:='0'; + Edit2.Text:=Trim(RKOrdID.Text); + RKOrdID.Text:=''; + MovePanel2.Visible:=False; + Exit; + except + RKOrdID.Text:=''; + MovePanel2.Visible:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; + end; +end; + +procedure TfrmCpCkSaoMNewSel.baoKeyPress(Sender: TObject; var Key: Char); +var + maxno:String; +begin + if Key=#13 then + begin + Label12.Caption:=''; + if CDS_Sub.IsEmpty then + begin + Bao.Text:=''; + Application.MessageBox('δѡɨ⣡','ʾ',0); + Exit; + end; + if Trim(bao.Text)='' then + begin + Application.MessageBox('ŲΪ!','ʾ',0); + Exit; + end; + if Trim(CKOrdNo.Text)='' then + begin + Application.MessageBox('ⵥŲΪ!','ʾ',0); + Exit; + end; + if CDS_Main.Locate('baoID',Trim(bao.Text),[])=False then + begin + MovePanel1.Visible:=True; + Edit2.Text:=Trim(bao.Text); + Label12.Caption:='ѣ˰ڴľУ'; + bao.Text:=''; + + // Application.MessageBox('˰ڴľУ','ʾ',0); + Exit; + end; + // CDS_Main.Locate('baoID',Trim(bao.Text),[]); + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_Main do + begin + first; + while CDS_Main.Locate('baoID',Trim(bao.Text),[]) do + begin + if GetLSNo(ADOQueryCmd,maxno,'CC','CK_BanCp_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCp_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('BCID').Value:=Trim(maxno); + FieldByName('CRID').Value:=CDS_Main.fieldbyname('CRID').Value; + FieldByName('CRTime').Value:=FormatDateTime('yyyy-MM-dd',CRTime.Date); + FieldByName('KGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('MJID').Value:=CDS_Main.fieldbyname('MJID').Value; + FieldByName('MainID').Value:=CDS_Main.fieldbyname('MainID').Value; + FieldByName('SubID').Value:=CDS_Main.fieldbyname('SubID').Value; + FieldByName('APID').Value:=CDS_Main.fieldbyname('APID').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('BaoNo').Value:=CDS_Main.fieldbyname('BaoNo').Value; + FieldByName('BaoID').Value:=CDS_Main.fieldbyname('BaoID').Value; + FieldByName('RKPlace').Value:=CDS_Main.fieldbyname('RKPlace').AsString; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + FieldByName('CKOrdNo').Value:=Trim(CKOrdNo.Text); + FieldByName('CRNote').Value:=Trim(CRNote.Text); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update CK_BanCp_KC set KCKgQty=0,KCQty=0 where CRID='+CDS_Main.fieldbyname('CRID').AsString); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add(' Update WFB_MJJY Set MJStr2=''ѳ'' where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+''''); + sql.Add(' update JYOrdercon_Main SET status=''1'' '); + sql.Add(' from JYOrdercon_Main A '); + sql.Add(' inner join JYOrder_Main B on B.conNO=A.conNO '); + sql.Add(' where B.MainID='''+Trim(CDS_Main.fieldbyname('MainID').AsString)+''' and A.status<>''1'' '); + ExecSQL; + end; + + if YSData(CDS_Main)=False then + begin + + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('Ӧտʧ!','ʾ',0); + Exit; + end; + + with CDS_MainSel do + begin + Append; + FieldByName('MainId').Value:=CDS_Main.fieldbyname('MainId').Value; + FieldByName('SubId').Value:=Self.CDS_Main.fieldbyname('SubId').Value; + FieldByName('KHName').Value:=Self.CDS_Main.fieldbyname('KHName').Value; + FieldByName('OrderNo').Value:=Self.CDS_Main.fieldbyname('OrderNo').Value; + FieldByName('KGQty').Value:=Self.CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=Self.CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=Self.CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('MJId').Value:=Self.CDS_Main.fieldbyname('MJId').Value; + FieldByName('CRId').Value:=Self.CDS_Main.fieldbyname('CRId').Value; + FieldByName('APID').Value:=Self.CDS_Main.fieldbyname('APID').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('BCID').Value:=Trim(maxno); + FieldByName('PRTColor').Value:=Self.CDS_Main.fieldbyname('PRTColor').Value; + FieldByName('MJXH').Value:=Self.CDS_Main.fieldbyname('MJXH').Value; + FieldByName('AOrdDefstr1').Value:=CDS_Main.fieldbyname('AOrdDefstr1').Value; + FieldByName('KHName').Value:=CDS_Main.fieldbyname('KHName').Value; + FieldByName('RKOrdId').Value:=CDS_Main.fieldbyname('RKOrdId').Value; + FieldByName('BaoNo').Value:=CDS_Main.fieldbyname('BaoNo').Value; + //FieldByName('JZXNo').Value:=Trim(JZXNo.Text); + Post; + end; + CDS_Main.Delete; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + MovePanel1.Visible:=True; + if CDS_MainSel.IsEmpty=False then + Edit1.Text:=IntToStr(Tv3.DataController.Summary.FooterSummaryValues[2]) + else + Edit1.Text:='0'; + Edit2.Text:=Trim(bao.Text); + bao.Text:=''; + exit; + except + bao.Text:=''; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; + end; + +end; + +procedure TfrmCpCkSaoMNewSel.THMJIDKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if CDS_MainSel.IsEmpty then + begin + BaoID.Text:=''; + Application.MessageBox('δⲻɨ˻','ʾ',0); + Exit; + end; + if Trim(THMJID.Text)='' then + begin + Application.MessageBox('벻Ϊ!','ʾ',0); + Exit; + end; + if not CDS_MainSel.Locate('MJId',Trim(THMJID.Text),[]) then + begin + BaoID.Text:=''; + Application.MessageBox('˾Ųڣ','ʾ',0); + Exit; + end; + + CDS_MainSel.Locate('MJId',Trim(THMJID.Text),[]); + try + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete CK_BanCP_CR where BCID='''+Trim(CDS_MainSel.fieldbyname('BCID').AsString)+''''); + sql.Add('UPdate CK_BanCP_KC Set KCKgQty=(select KgQty from CK_BanCP_CR A where A.CRID=CK_BanCP_KC.CRID and A.CRType='''') '); + sql.Add(',KCQty=(select Qty from CK_BanCP_CR A where A.CRID=CK_BanCP_KC.CRID and A.CRType='''') '); + SQL.Add(' where CRID='+CDS_MainSel.fieldbyname('CRID').AsString); + sql.Add('Update WFB_MJJY Set MJStr2='''' where MJID='''+Trim(CDS_MainSel.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + // CDS_Main.DisableControls; + with CDS_Main do + begin + Append; + FieldByName('MainId').Value:=CDS_MainSel.fieldbyname('MainId').Value; + FieldByName('SubId').Value:=Self.CDS_MainSel.fieldbyname('SubId').Value; + FieldByName('OrderNo').Value:=Self.CDS_MainSel.fieldbyname('OrderNo').Value; + FieldByName('KgQty').Value:=Self.CDS_MainSel.fieldbyname('KgQty').Value; + FieldByName('Qty').Value:=Self.CDS_MainSel.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=Self.CDS_MainSel.fieldbyname('QtyUnit').Value; + FieldByName('MJId').Value:=Self.CDS_MainSel.fieldbyname('MJId').Value; + FieldByName('CRId').Value:=Self.CDS_MainSel.fieldbyname('CRId').Value; + FieldByName('APID').Value:=Self.CDS_MainSel.fieldbyname('APID').Value; + FieldByName('CPType').Value:=Self.CDS_MainSel.fieldbyname('CPType').Value; + FieldByName('PRTColor').Value:=Self.CDS_MainSel.fieldbyname('PRTColor').Value; + FieldByName('AOrddefstr1').Value:=Self.CDS_MainSel.fieldbyname('AOrddefstr1').Value; + FieldByName('MJXH').Value:=Self.CDS_MainSel.fieldbyname('MJXH').Value; + FieldByName('KHName').Value:=CDS_MainSel.fieldbyname('KHName').Value; + FieldByName('RKOrdID').Value:=CDS_MainSel.fieldbyname('RKOrdID').Value; + FieldByName('BaoNo').Value:=CDS_MainSel.fieldbyname('BaoNo').Value; + FieldByName('BaoID').Value:=CDS_MainSel.fieldbyname('BaoID').Value; + Post; + end; + CDS_MainSel.Delete; + Edit2.Text:=Trim(THMJID.Text); + THMJID.Text:=''; + THMJID.SetFocus; + Exit; + except + THMJID.Text:=''; + THMJID.SetFocus; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; + end; +end; + +end. diff --git a/艾登贸易管理/U_CpRkSaoMNew.dfm b/艾登贸易管理/U_CpRkSaoMNew.dfm new file mode 100644 index 0000000..3acd231 --- /dev/null +++ b/艾登贸易管理/U_CpRkSaoMNew.dfm @@ -0,0 +1,993 @@ +object frmCpRkSaoMNew: TfrmCpRkSaoMNew + Left = 191 + Top = 100 + Width = 1136 + Height = 618 + Caption = #25104#21697#20837#24211#25195#25551 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object cxGrid2: TcxGrid + Left = 0 + Top = 253 + Width = 516 + Height = 327 + Align = alLeft + TabOrder = 0 + object Tv1: TcxGridDBTableView + PopupMenu = PopupMenu1 + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + Column = v2Column6 + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Format = #21367#25968#37327#65306'#' + Kind = skCount + Column = v1Column1 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object v1Column6: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 41 + end + object v1MJID: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 75 + end + object v1Column1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 89 + end + object v1Column11: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'KHName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column3: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 54 + end + object v1Column4: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'AOrdDefStr1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 44 + end + object v1Column5: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 43 + end + object v2Column5: TcxGridDBColumn + Caption = #20844#26020#25968 + DataBinding.FieldName = 'KgQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 67 + end + object v2Column6: TcxGridDBColumn + Caption = #38271#24230 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 56 + end + object v1Column2: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'QtyUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 53 + end + object v1Column7: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'CPType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 56 + end + object v1Column8: TcxGridDBColumn + Caption = #21253#26465#30721 + DataBinding.FieldName = 'baoID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column9: TcxGridDBColumn + Caption = #21253#21495 + DataBinding.FieldName = 'baoNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 50 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel1: TPanel + Left = 0 + Top = 0 + Width = 1120 + Height = 253 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 1 + object Label1: TLabel + Left = 61 + Top = 125 + Width = 51 + Height = 16 + Caption = #21367#26465#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 250 + Top = 125 + Width = 68 + Height = 16 + Caption = #20837#24211#26102#38388 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 6 + Top = 185 + Width = 34 + Height = 48 + Caption = #20837#24211#13#10' '#21333#13#10#26465#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 437 + Top = 125 + Width = 34 + Height = 16 + Caption = #24211#20301 + Font.Charset = GB2312_CHARSET + Font.Color = clGreen + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 509 + Top = 320 + Width = 34 + Height = 16 + Caption = #21253#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 867 + Top = 311 + Width = 40 + Height = 19 + Caption = #25171#21253 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 437 + Top = 157 + Width = 34 + Height = 16 + Caption = #32568#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clGreen + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 61 + Top = 157 + Width = 51 + Height = 16 + Caption = #21253#26465#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BaoID: TEdit + Left = 131 + Top = 125 + Width = 110 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + OnKeyPress = BaoIDKeyPress + end + object Button2: TButton + Left = 762 + Top = 165 + Width = 57 + Height = 31 + Caption = #20851#38381 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button2Click + end + object Button3: TButton + Left = 3 + Top = 121 + Width = 45 + Height = 24 + Caption = #36873#21333 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Button3Click + end + object Button1: TButton + Left = 663 + Top = 165 + Width = 84 + Height = 31 + Caption = #25764#38144#20837#24211 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = Button1Click + end + object cxGrid1: TcxGrid + Left = 2 + Top = 2 + Width = 1116 + Height = 103 + Align = alTop + TabOrder = 4 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Styles.Footer = DataLink_TradeManage.Default + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 78 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 75 + end + object v2Column2: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 82 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 77 + end + object v1Column10: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 64 + end + object v1Column14: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 75 + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 60 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 66 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv2 + end + end + object Button5: TButton + Left = 663 + Top = 118 + Width = 81 + Height = 31 + Caption = #25163#24037#20837#24211 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + OnClick = Button5Click + end + object CRTime: TDateTimePicker + Left = 320 + Top = 121 + Width = 107 + Height = 24 + Date = 41337.663190821760000000 + Time = 41337.663190821760000000 + Enabled = False + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 6 + end + object Button6: TButton + Left = 250 + Top = 196 + Width = 43 + Height = 40 + Caption = #33719#21462 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + OnClick = Button6Click + end + object RKOrdID: TEdit + Left = 47 + Top = 192 + Width = 205 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + end + object RKPlace: TBtnEditA + Left = 472 + Top = 119 + Width = 121 + Height = 29 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 9 + OnBtnClick = RKPlaceBtnClick + end + object BaoNo: TEdit + Left = 552 + Top = 302 + Width = 78 + Height = 44 + BiDiMode = bdLeftToRight + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = 'Times New Roman' + Font.Style = [fsBold] + ParentBiDiMode = False + ParentFont = False + TabOrder = 10 + end + object RKOrdPS: TEdit + Left = 293 + Top = 195 + Width = 90 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -35 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 11 + end + object Button7: TButton + Left = 381 + Top = 196 + Width = 41 + Height = 40 + Caption = #25171#21360 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 12 + OnClick = Button7Click + end + object Button8: TButton + Left = 715 + Top = 300 + Width = 96 + Height = 40 + Caption = #25171#21360#21253#26631#31614 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 13 + OnClick = Button8Click + end + object ComboBox1: TComboBox + Left = 760 + Top = 120 + Width = 57 + Height = 24 + Style = csDropDownList + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ItemHeight = 16 + ParentFont = False + TabOrder = 14 + Items.Strings = ( + #27491#21697 + #27425#21697 + #30041#26679 + '') + end + object Edit3: TEdit + Left = 824 + Top = 319 + Width = 31 + Height = 27 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 15 + OnClick = Edit3Click + end + object gangNo: TEdit + Left = 472 + Top = 156 + Width = 121 + Height = 20 + TabOrder = 16 + end + object Bao: TEdit + Left = 131 + Top = 153 + Width = 110 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 17 + OnKeyPress = BaoKeyPress + end + end + object cxGrid3: TcxGrid + Left = 516 + Top = 253 + Width = 604 + Height = 327 + Align = alClient + TabOrder = 2 + object Tv3: TcxGridDBTableView + PopupMenu = PopupMenu2 + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv3CellClick + DataController.DataSource = DS_MainSel + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = cxGridDBColumn6 + end + item + Format = #21367#25968#37327#65306'#' + Kind = skCount + Column = cxGridDBColumn1 + end + item + Kind = skSum + Column = v3KgQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + object v3Column5: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 44 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 98 + end + object v3KHname: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'KHname' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v3Column3: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object v3Column4: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'AOrdDefStr1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 65 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 52 + end + object v3Column8: TcxGridDBColumn + Caption = #21253#21495 + DataBinding.FieldName = 'BaoNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v3KgQty: TcxGridDBColumn + Caption = #20844#26020#25968 + DataBinding.FieldName = 'KgQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 59 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #38271#24230 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 69 + end + object v3Column2: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'QtyUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 57 + end + object v3Column6: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'CPType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 59 + end + object v3Column7: TcxGridDBColumn + Caption = #20837#24211#21333#21495 + DataBinding.FieldName = 'RKOrdID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 74 + end + object v3Column1: TcxGridDBColumn + Caption = #21253#26465#30721 + DataBinding.FieldName = 'baoID' + HeaderAlignmentHorz = taCenter + Width = 80 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv3 + end + end + object MovePanel1: TMovePanel + Left = 12 + Top = 272 + Width = 506 + Height = 321 + BevelInner = bvLowered + Color = clSkyBlue + TabOrder = 3 + Visible = False + object Label2: TLabel + Left = 29 + Top = 48 + Width = 147 + Height = 48 + Caption = #24050#20837#24211 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 421 + Top = 56 + Width = 49 + Height = 48 + Caption = #21367 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 50 + Top = 268 + Width = 9 + Height = 16 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Edit1: TEdit + Left = 181 + Top = 24 + Width = 241 + Height = 105 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -96 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 0 + Text = '1234' + end + object Edit2: TEdit + Left = 44 + Top = 158 + Width = 429 + Height = 72 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -64 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 1 + Text = '91209120001' + end + object Button4: TButton + Left = 394 + Top = 232 + Width = 70 + Height = 41 + Caption = #20851#38381 + TabOrder = 2 + OnClick = Button4Click + end + end + object MovePanel2: TMovePanel + Left = 536 + Top = 272 + Width = 289 + Height = 49 + BevelInner = bvLowered + Caption = #27491#22312#25191#34892#25968#25454#25805#20316#65292#35831#31245#21518#12290#12290#12290 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 816 + Top = 48 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 132 + Top = 240 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 84 + Top = 248 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 624 + Top = 56 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 664 + Top = 40 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 728 + Top = 48 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 808 + Top = 48 + end + object DataSource2: TDataSource + DataSet = CDS_Sub + Left = 856 + Top = 48 + end + object ADOQuerySub: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 688 + Top = 56 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 56 + Top = 200 + end + object cxGridPopupMenu3: TcxGridPopupMenu + PopupMenus = <> + Left = 776 + Top = 48 + end + object DS_MainSel: TDataSource + DataSet = CDS_MainSel + Left = 616 + Top = 336 + end + object CDS_MainSel: TClientDataSet + Aggregates = <> + Params = <> + Left = 648 + Top = 336 + end + object cxGridPopupMenu4: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 832 + Top = 312 + end + object PopupMenu1: TPopupMenu + Left = 344 + Top = 544 + object N1: TMenuItem + Caption = #20840#36873 + OnClick = N1Click + end + object N3: TMenuItem + Caption = #20840#36873'('#25171#21253')' + OnClick = N3Click + end + object N2: TMenuItem + Caption = #20840#24323 + OnClick = N2Click + end + end + object PopupMenu2: TPopupMenu + Left = 936 + Top = 480 + object MenuItem1: TMenuItem + Caption = #20840#36873 + OnClick = MenuItem1Click + end + object MenuItem2: TMenuItem + Caption = #20840#24323 + OnClick = MenuItem2Click + end + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 664 + Top = 64 + ReportData = {} + end + object ADOQueryPrt: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 952 + Top = 72 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrt + Left = 776 + Top = 384 + end +end diff --git a/艾登贸易管理/U_CpRkSaoMNew.pas b/艾登贸易管理/U_CpRkSaoMNew.pas new file mode 100644 index 0000000..b342116 --- /dev/null +++ b/艾登贸易管理/U_CpRkSaoMNew.pas @@ -0,0 +1,1463 @@ +unit U_CpRkSaoMNew; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, ExtCtrls, ADODB, DBClient, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, MovePanel, cxCheckBox, Menus, + ComCtrls, BtnEdit, RM_System, RM_Common, RM_Class, RM_GridReport, + RM_Dataset; + +type + TfrmCpRkSaoMNew = class(TForm) + cxGrid2: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column1: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + cxGrid2Level1: TcxGridLevel; + cxGridPopupMenu1: TcxGridPopupMenu; + CDS_Main: TClientDataSet; + DataSource1: TDataSource; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + Panel1: TPanel; + BaoID: TEdit; + Label1: TLabel; + v1Column5: TcxGridDBColumn; + Button2: TButton; + Button3: TButton; + CDS_Sub: TClientDataSet; + DataSource2: TDataSource; + ADOQuerySub: TADOQuery; + cxGridPopupMenu2: TcxGridPopupMenu; + cxGridPopupMenu3: TcxGridPopupMenu; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + DS_MainSel: TDataSource; + CDS_MainSel: TClientDataSet; + v3KgQty: TcxGridDBColumn; + Button1: TButton; + cxGridPopupMenu4: TcxGridPopupMenu; + MovePanel1: TMovePanel; + Edit1: TEdit; + Edit2: TEdit; + Label2: TLabel; + Label3: TLabel; + Button4: TButton; + cxGrid1: TcxGrid; + Tv2: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1Column2: TcxGridDBColumn; + v3Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v3Column3: TcxGridDBColumn; + v3Column4: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v3Column5: TcxGridDBColumn; + Button5: TButton; + v1Column7: TcxGridDBColumn; + v3Column6: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + PopupMenu2: TPopupMenu; + MenuItem1: TMenuItem; + MenuItem2: TMenuItem; + MovePanel2: TMovePanel; + CRTime: TDateTimePicker; + Label4: TLabel; + Button6: TButton; + RKOrdID: TEdit; + RKPlace: TBtnEditA; + Label5: TLabel; + Label6: TLabel; + Label7: TLabel; + BaoNo: TEdit; + RKOrdPS: TEdit; + Button7: TButton; + v3Column7: TcxGridDBColumn; + RM1: TRMGridReport; + Button8: TButton; + ADOQueryPrt: TADOQuery; + RMDB_Main: TRMDBDataSet; + v3Column8: TcxGridDBColumn; + ComboBox1: TComboBox; + Edit3: TEdit; + Label8: TLabel; + v1MJID: TcxGridDBColumn; + Label9: TLabel; + gangNo: TEdit; + Bao: TEdit; + Label10: TLabel; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v3Column1: TcxGridDBColumn; + Label12: TLabel; + N3: TMenuItem; + v1Column11: TcxGridDBColumn; + v3KHname: TcxGridDBColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure BaoIDKeyPress(Sender: TObject; var Key: Char); + procedure Button2Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button4Click(Sender: TObject); + procedure Button5Click(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure MenuItem1Click(Sender: TObject); + procedure MenuItem2Click(Sender: TObject); + procedure Button6Click(Sender: TObject); + procedure RKPlaceBtnClick(Sender: TObject); + procedure Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button7Click(Sender: TObject); + procedure Button8Click(Sender: TObject); + procedure Edit3Click(Sender: TObject); + procedure BaoKeyPress(Sender: TObject; var Key: Char); + procedure N3Click(Sender: TObject); + private + { Private declarations } + FBaoId:String; + procedure InitGrid(); + procedure InitSubGrid(); + procedure SavedataCK(); + + public + { Public declarations } + end; + +var + frmCpRkSaoMNew: TfrmCpRkSaoMNew; + +implementation +uses +U_DataLink,U_Fun,U_OrderSelRK,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmCpRkSaoMNew.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmCpRkSaoMNew.FormDestroy(Sender: TObject); +begin + frmCpRkSaoMNew:=nil; +end; +procedure TfrmCpRkSaoMNew.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + SQL.Add('select A.*,OrderNo=(select OrderNo from JYOrder_Main where MainId=A.MainId) '); + SQL.Add(',PRTColor=(select PRTColor from JYOrder_Sub where SubId=A.SubId)'); + sql.Add(',AOrdDefstr1=(select AOrdDefstr1 from JYOrder_Sub_AnPai where ApId=A.ApId)'); + sql.Add(',KHName=(select isnull(customerNoName,OrderNo) from JYOrder_Main where MainId=A.MainId)'); + sql.Add(',MJXH=(select MJXH from WFB_MJJY where MJID=A.MJID)'); + sql.Add('from CK_BanCP_CR A'); + sql.add('where 1<>1'); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + SCreateCDS20(ADOQueryMain,CDS_MainSel); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmCpRkSaoMNew.FormShow(Sender: TObject); +begin + ReadCxGrid('ѡ',Tv2,'Ʒֿ'); + ReadCxGrid('Ʒ',Tv1,'Ʒֿ'); + ReadCxGrid('ƷSels',Tv3,'Ʒֿ'); + InitSubGrid(); + InitGrid(); + CRTime.DateTime:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmCpRkSaoMNew.BaoIDKeyPress(Sender: TObject; var Key: Char); +var + maxno:String; + CRID:Integer; + MaxCkNo,MaxCkSubNo:String; +begin + if Key=#13 then + begin + Label12.Caption:=''; + if CDS_Sub.IsEmpty then + begin + BaoID.Text:=''; + + Application.MessageBox('δѡɨ⣡','ʾ',0); + Exit; + end; + if Trim(RKOrdID.Text)='' then + begin + Application.MessageBox('ⵥŲΪ!','ʾ',0); + Exit; + end; + if CDS_MainSel.Locate('MJId',Trim(BaoID.Text),[]) then + begin + MovePanel1.Visible:=True; + Edit2.Text:=Trim(BaoID.Text); + Label12.Caption:='ѣ˾ظɨ裡'; + BaoID.Text:=''; + + + // Application.MessageBox('˾ظɨ裡','ʾ',0); + Exit; + end; + if CDS_Main.Locate('MJId',Trim(BaoID.Text),[])=False then + begin + MovePanel1.Visible:=True; + Edit2.Text:=Trim(BaoID.Text); + Label12.Caption:='ѣ˾ڴľУ'; + BaoID.Text:=''; + // Application.MessageBox('˾ڴľУ','ʾ',0); + Exit; + end; + + { if Trim(RKPlace.Text)='' then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; } + if Trim(BaoNo.Text)='' then + begin + if Trim(Edit3.Text)='' then + begin + application.MessageBox('ţ','ʾϢ',MB_ICONERROR); + exit; + { with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select BaoInt=max(Cast(BaoNo as int))+1 from CK_BanCP_CR where Mainid='''+Trim(CDS_Main.fieldbyname('Mainid').AsString)+''''); + Open; + end; + BaoNo.Text:=ADOQueryTemp.fieldbyname('BaoInt').AsString; } + end; + + end; + + CDS_Main.Locate('MJId',Trim(BaoID.Text),[]); + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_Main do + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.add('Update CK_BanCP_CRID Set CRID=CRID+1'); + sql.Add('select * from CK_BanCP_CRID'); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').Value; + { if Trim(FBaoId)='' then + begin + if Trim(BaoNo.Text)<>'' then + begin + if GetLSNo(ADOQueryCmd,FBaoId,'9','CK_BanCP_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡƷֿʧܣ','ʾ',0); + Exit; + end; + end; + end else + begin + if Trim(BaoNo.Text)='' then + begin + FBaoId:=''; + end; + end; } + if GetLSNo(ADOQueryCmd,MaxCkNo,'JR','CK_BanCP_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡƷֿʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(CDS_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(CDS_Main.fieldbyname('SubId').AsString); + FieldByName('APID').Value:=Trim(CDS_Main.fieldbyname('APID').AsString); + FieldByName('MJID').Value:=Trim(CDS_Main.fieldbyname('MJId').AsString); + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('CRTime').Value:=FormatDateTime('yyyy-MM-dd',CRTime.DateTime); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + //FieldByName('JTType').Value:=Trim(XJFlag); + FieldByName('CRID').Value:=CRID; + FieldByName('KGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('RKOrdId').Value:=Trim(RKOrdID.Text); + FieldByName('BaoNo').Value:=Trim(CDS_Main.fieldbyname('BaoNo').AsString); + FieldByName('BaoID').Value:=Trim(CDS_Main.fieldbyname('BaoID').AsString); + FieldByName('RKPlace').Value:=Trim(RKPlace.Text); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=CRID; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('MJID').Value:=Trim(CDS_Main.fieldbyname('MJID').AsString); + FieldByName('KCKGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('KCQty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('KCQtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set MJStr2='''' '); + IF trim(gangNo.Text)<>'' then + sql.Add(',MJStr4='+Quotedstr(trim(gangNo.Text))); + sql.Add('where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+''''); + + // sql.Add(' update JYOrder_Main SET status=''2'' where MainID='''+Trim(CDS_Main.fieldbyname('MainID').AsString)+''' and status<>''2'' '); + ExecSQL; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select Mainid from CK_BanCP_CR where RKOrdId='''+Trim(RKOrdID.Text)+''''); + SQL.Add(' group by MainId'); + Open; + end; + if ADOQueryCmd.RecordCount>1 then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ͬʹͬⵥ!','ʾ',0); + Exit; + end; + ADOQueryCmd.Connection.CommitTrans; + with CDS_MainSel do + begin + Append; + FieldByName('MainId').Value:=CDS_Main.fieldbyname('MainId').Value; + FieldByName('SubId').Value:=Self.CDS_Main.fieldbyname('SubId').Value; + FieldByName('KHName').Value:=Self.CDS_Main.fieldbyname('KHName').Value; + FieldByName('OrderNo').Value:=Self.CDS_Main.fieldbyname('OrderNo').Value; + FieldByName('KGQty').Value:=Self.CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=Self.CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=Self.CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('MJId').Value:=Self.CDS_Main.fieldbyname('MJId').Value; + FieldByName('CRId').Value:=IntToStr(CRID); + FieldByName('APID').Value:=Self.CDS_Main.fieldbyname('APID').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('RKOrdID').Value:=Trim(RKOrdID.Text); + FieldByName('PRTColor').Value:=CDS_Main.fieldbyname('PRTColor').Value; + FieldByName('MJXH').Value:=CDS_Main.fieldbyname('MJXH').Value; + IF trim(gangNo.Text)<>'' then + FieldByName('AOrdDefstr1').Value:=trim(gangNo.Text) + else + FieldByName('AOrdDefstr1').Value:=CDS_Main.fieldbyname('AOrdDefstr1').Value; + FieldByName('RKOrdID').Value:=Trim(RKOrdID.Text); + FieldByName('BaoNo').Value:=Trim(CDS_Main.fieldbyname('BaoNo').AsString); + FieldByName('BaoID').Value:=Trim(CDS_Main.fieldbyname('BaoID').AsString); + Post; + end; + CDS_Main.Delete; + MovePanel1.Visible:=True; + if CDS_MainSel.IsEmpty=False then + Edit1.Text:=IntToStr(Tv3.DataController.Summary.FooterSummaryValues[2]) + else + Edit1.Text:='0'; + Edit2.Text:=Trim(BaoID.Text); + BaoID.Text:=''; + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select isnull(Count(*),0) ZPS from CK_BanCP_CR where RKOrdID='''+Trim(RKOrdID.Text)+''''); + Open; + end; + RKOrdPS.Text:=Trim(ADOQueryCmd.fieldbyname('ZPS').AsString)+'ƥ'; + // BaoID.SetFocus; + Exit; + except + BaoID.Text:=''; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; + end; +end; +procedure TfrmCpRkSaoMNew.SavedataCK(); +var + CRID:Integer; + MaxCkNo,MaxCkSubNo:String; +begin + //if Trim(Cds_Main.fieldbyname('SubType').AsString)='' then + //////////////////////////////////////////////////////////////浽Ʒֿ//////////////////////////////////////////////// + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.add('Update CK_BanCP_CRID Set CRID=CRID+1'); + sql.Add('select * from CK_BanCP_CRID'); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').Value; + if GetLSNo(ADOQueryCmd,MaxCkNo,'JR','CK_BanCP_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡƷֿʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(CDS_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(CDS_Main.fieldbyname('SubId').AsString); + FieldByName('APID').Value:=Trim(CDS_Main.fieldbyname('APID').AsString); + FieldByName('MJID').Value:=Trim(CDS_Main.fieldbyname('MJId').AsString); + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('CRTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + //FieldByName('JTType').Value:=Trim(XJFlag); + FieldByName('CRID').Value:=CRID; + FieldByName('KGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=CRID; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('MJID').Value:=Trim(CDS_Main.fieldbyname('MJID').AsString); + FieldByName('KCKGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('KCQty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('KCQtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set MJStr2='''' where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; +end; +procedure TfrmCpRkSaoMNew.Button2Click(Sender: TObject); +begin + IF (trim(RKOrdID.Text)<>'') and (CDS_MainSel.RecordCount>0) then + begin + if Application.MessageBox('ȷҪرս棬ӡⵥ','ʾ',32+4)<>IDYES then Exit; + end; + tv1.Controller.EditingController.ShowEdit(); + tv3.Controller.EditingController.ShowEdit(); + Close; + WriteCxGrid('ѡ',Tv2,'Ʒֿ'); + WriteCxGrid('Ʒ',Tv1,'Ʒֿ'); + WriteCxGrid('ƷSels',Tv3,'Ʒֿ'); +end; + +procedure TfrmCpRkSaoMNew.Button3Click(Sender: TObject); +begin + {if CDS_Main.IsEmpty=False then + begin + Application.MessageBox('ɨ費ܸĵţ','ʾ',0); + Exit; + end;} + try + frmOrderSelRK:=TfrmOrderSelRK.Create(Application); + with frmOrderSelRK do + begin + if ShowModal=1 then + begin + CDS_OrderSel.DisableControls; + with CDS_OrderSel do + begin + First; + while not Eof do + begin + if FieldByName('SSel').Value=True then + begin + if Self.CDS_Sub.Locate('SubId',Trim(CDS_OrderSel.fieldbyname('SubId').AsString),[])=False then + begin + with Self.CDS_Sub do + begin + Append; + FieldByName('MainId').Value:=Trim(CDS_OrderSel.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(CDS_OrderSel.fieldbyname('SubId').AsString); + FieldByName('CustomerNo').Value:=Trim(CDS_OrderSel.fieldbyname('CustomerNo').AsString); + FieldByName('OrderNo').Value:=Trim(CDS_OrderSel.fieldbyname('OrderNo').AsString); + FieldByName('CustomerNoName').Value:=Trim(CDS_OrderSel.fieldbyname('CustomerNoName').AsString); + FieldByName('MPRTCodeName').Value:=Trim(CDS_OrderSel.fieldbyname('MPRTCodeName').AsString); + FieldByName('PRTOrderQty').Value:=Trim(CDS_OrderSel.fieldbyname('PRTOrderQty').AsString); + FieldByName('OrderUnit').Value:=Trim(CDS_OrderSel.fieldbyname('OrderUnit').AsString); + FieldByName('PRTColor').Value:=Trim(CDS_OrderSel.fieldbyname('PRTColor').AsString); + FieldByName('MPRTMF').Value:=Trim(CDS_OrderSel.fieldbyname('MPRTMF').AsString); + FieldByName('MPRTKZ').Value:=Trim(CDS_OrderSel.fieldbyname('MPRTKZ').AsString); + Post; + end; + end; + end; + Next; + end; + end; + CDS_OrderSel.EnableControls; + CDS_Sub.DisableControls; + with CDS_Sub do + begin + First; + while not Eof do + begin + if Trim(Self.CDS_Sub.fieldbyname('SFlag').AsString)<>'2' then + begin + with Self.ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select orderNo=(select OrderNo from JYOrder_Main where MainId=A.MainId) '); + sql.Add(',PRTColor=(select PRTHX from JYOrder_Sub JS where JS.SubId=A.SubId) '); + sql.Add(',KHName=(select isnull(customerNoName,OrderNo) from JYOrder_Main where MainId=A.MainId)'); + sql.Add(',AOrdDefStr1=A.MJStr4,A.* '); + sql.Add(' from WFB_MJJY A '); + sql.Add(' where isnull(A.MJStr2,'''')=''δ'' '); + SQL.Add(' and A.SubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+''''); + // sql.Add(' and APID in (''150422026'',''150401015'')'); + Open; + end; + Self.ADOQueryTemp.DisableControls; + CDS_Main.DisableControls; + with Self.ADOQueryTemp do + begin + First; + while not Eof do + begin + with CDS_Main do + begin + Append; + FieldByName('MainId').Value:=Self.ADOQueryTemp.fieldbyname('MainId').Value; + FieldByName('SubId').Value:=Self.ADOQueryTemp.fieldbyname('SubId').Value; + FieldByName('KHName').Value:=Self.ADOQueryTemp.fieldbyname('KHName').Value; + FieldByName('APId').Value:=Self.ADOQueryTemp.fieldbyname('APId').Value; + FieldByName('OrderNo').Value:=Self.ADOQueryTemp.fieldbyname('OrderNo').Value; + FieldByName('KgQty').Value:=Self.ADOQueryTemp.fieldbyname('MJMaoZ').Value; + FieldByName('Qty').Value:=Self.ADOQueryTemp.fieldbyname('MJLen').Value; + FieldByName('QtyUnit').Value:=Self.ADOQueryTemp.fieldbyname('MJTypeOther').Value; + FieldByName('MJId').Value:=Self.ADOQueryTemp.fieldbyname('MJId').Value; + FieldByName('CPType').Value:=Self.ADOQueryTemp.fieldbyname('MJType').Value; + FieldByName('PRTColor').Value:=Self.ADOQueryTemp.fieldbyname('PRTColor').Value; + FieldByName('AOrddefstr1').Value:=Self.ADOQueryTemp.fieldbyname('AOrddefstr1').Value; + FieldByName('MJXH').Value:=Self.ADOQueryTemp.fieldbyname('MJXH').Value; + FieldByName('baoID').Value:=Self.ADOQueryTemp.fieldbyname('baoID').Value; + FieldByName('baoNo').Value:=Self.ADOQueryTemp.fieldbyname('baoNo').Value; + Post; + end; + Next; + end; + end; + CDS_Main.EnableControls; + Self.ADOQueryTemp.EnableControls; + end; + CDS_Sub.Edit; + CDS_Sub.FieldByName('SFlag').Value:='2'; + CDS_Sub.Post; + Next; + end; + end; + CDS_Sub.EnableControls; + Button6.OnClick(self); + end; + + end; + finally + frmOrderSelRK.Release; + end; +end; + +procedure TfrmCpRkSaoMNew.InitSubGrid(); +begin + try + ADOQuerySub.DisableControls; + with ADOQuerySub do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*,Cast('''' as varchar(20))'); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.Mainid'); + sql.Add(' where 1<>1 '); + + Open; + end; + SCreateCDS20(ADOQuerySub,CDS_Sub); + SInitCDSData20(ADOQuerySub,CDS_Sub); + finally + ADOQuerySub.EnableControls; + end; +end; + + +procedure TfrmCpRkSaoMNew.Button1Click(Sender: TObject); +begin + if CDS_MainSel.IsEmpty then Exit; + if CDS_MainSel.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪִд˲','ʾ',32+4)<>IDYES then Exit; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + try + ADOQueryCmd.Connection.BeginTrans; + CDS_MainSel.DisableControls; + with CDS_MainSel do + begin + First; + while CDS_MainSel.FieldByName('SSel').AsBoolean=True do + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete CK_BanCP_CR where BCID='''+Trim(CDS_MainSel.fieldbyname('BCID').AsString)+''''); + sql.Add('delete CK_BanCP_KC where CRID='+Trim(CDS_MainSel.fieldbyname('CRID').AsString)); + sql.Add('Update WFB_MJJY Set MJStr2=''δ'' where MJID='''+Trim(CDS_MainSel.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + with CDS_Main do + begin + Append; + FieldByName('MainId').Value:=CDS_MainSel.fieldbyname('MainId').Value; + FieldByName('SubId').Value:=Self.CDS_MainSel.fieldbyname('SubId').Value; + FieldByName('OrderNo').Value:=Self.CDS_MainSel.fieldbyname('OrderNo').Value; + FieldByName('KgQty').Value:=Self.CDS_MainSel.fieldbyname('KgQty').Value; + FieldByName('Qty').Value:=Self.CDS_MainSel.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=Self.CDS_MainSel.fieldbyname('QtyUnit').Value; + FieldByName('MJId').Value:=Self.CDS_MainSel.fieldbyname('MJId').Value; + FieldByName('APID').Value:=Self.CDS_MainSel.fieldbyname('APID').Value; + FieldByName('CPType').Value:=Self.CDS_MainSel.fieldbyname('CPType').Value; + FieldByName('PRTColor').Value:=Self.CDS_MainSel.fieldbyname('PRTColor').Value; + FieldByName('AOrddefstr1').Value:=Self.CDS_MainSel.fieldbyname('AOrddefstr1').Value; + FieldByName('MJXH').Value:=Self.CDS_MainSel.fieldbyname('MJXH').Value; + FieldByName('baoID').Value:=Self.CDS_MainSel.fieldbyname('baoID').Value; + FieldByName('baoNo').Value:=Self.CDS_MainSel.fieldbyname('baoNo').Value; + Post; + end; + CDS_MainSel.Delete; + end; + + end; + CDS_MainSel.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + MovePanel2.Visible:=False; + + MovePanel1.Visible:=True; + if CDS_MainSel.IsEmpty=False then + Edit1.Text:=IntToStr(Tv3.DataController.Summary.FooterSummaryValues[2]) + else + Edit1.Text:='0'; + Edit2.Text:=Trim(CDS_Main.fieldbyname('MJId').AsString); + if Trim(RKOrdID.Text)<>'' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select isnull(Count(*),0) ZPS from CK_BanCP_CR where RKOrdID='''+Trim(RKOrdID.Text)+''''); + Open; + end; + RKOrdPS.Text:=Trim(ADOQueryCmd.fieldbyname('ZPS').AsString)+'ƥ'; + end; + except + MovePanel2.Visible:=False; + CDS_MainSel.DisableControls; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TfrmCpRkSaoMNew.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if CDS_MainSel.IsEmpty=False then Exit; + if CDS_Sub.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + CDS_Main.DisableControls; + with CDS_Main do + begin + First; + while not Eof do + begin + if Trim(CDS_Main.fieldbyname('SubId').AsString)=Trim(CDS_Sub.fieldbyname('SubId').AsString) then + begin + CDS_Main.Delete; + end else + Next; + end; + end; + CDS_Main.EnableControls; + CDS_Sub.Delete; +end; + +procedure TfrmCpRkSaoMNew.Button4Click(Sender: TObject); +begin + MovePanel1.Visible:=False; +end; + +procedure TfrmCpRkSaoMNew.Button5Click(Sender: TObject); +var + maxno:String; + CRID:Integer; + MaxCkNo,MaxCkSubNo:String; +begin + if CDS_Sub.IsEmpty then Exit; + if CDS_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + if Trim(RKOrdID.Text)='' then + begin + Application.MessageBox('ⵥŲΪ!','ʾ',0); + Exit; + end; +{ if Trim(RKPlace.Text)='' then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; } + if Application.MessageBox('ȷҪִ','ʾ',32+4)<>IDYES then exit; + if Trim(BaoNo.Text)='' then + begin + if Trim(Edit3.Text)='' then + begin + application.MessageBox('ţ','ʾϢ',MB_ICONERROR); + exit; + {with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select BaoInt=max(Cast(BaoNo as int))+1 from CK_BanCP_CR where Mainid='''+Trim(CDS_Main.fieldbyname('Mainid').AsString)+''''); + Open; + end; + BaoNo.Text:=ADOQueryTemp.fieldbyname('BaoInt').AsString; } + end; + + end; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + try + ADOQueryCmd.Connection.BeginTrans; + CDS_Main.DisableControls; + CDS_MainSel.DisableControls; + with CDS_Main do + begin + First; + while not Eof do + begin + if CDS_Main.FieldByName('SSel').AsBoolean=True then + begin + application.ProcessMessages; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.add('Update CK_BanCP_CRID Set CRID=CRID+1'); + sql.Add('select * from CK_BanCP_CRID'); + Open; + end; + CRID:=ADOQueryTemp.fieldbyname('CRID').Value; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.add('select * from WFB_MJJY'); + sql.Add('where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+''' and MJstr2='''''); + Open; + end; + IF not ADOQueryTemp.IsEmpty then + begin + CDS_Main.Delete; + continue; + end; + if GetLSNo(ADOQueryTemp,MaxCkNo,'JR','CK_BanCP_CR',4,1)=False then + begin + MovePanel2.Visible:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡƷֿʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(CDS_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(CDS_Main.fieldbyname('SubId').AsString); + FieldByName('APID').Value:=Trim(CDS_Main.fieldbyname('APID').AsString); + FieldByName('MJID').Value:=Trim(CDS_Main.fieldbyname('MJId').AsString); + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('CRTime').Value:=FormatDateTime('yyyy-MM-dd',CRTime.DateTime); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + //FieldByName('JTType').Value:=Trim(XJFlag); + FieldByName('CRID').Value:=CRID; + FieldByName('KGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('RKOrdId').Value:=Trim(RKOrdID.Text); + { if Trim(Edit3.Text)='' then + begin + FieldByName('BaoNo').Value:=Trim(BaoNo.Text); + FieldByName('BaoID').Value:=Trim(FBaoId); + end; } + FieldByName('BaoNo').Value:=Trim(CDS_Main.fieldbyname('BaoNo').AsString); + FieldByName('BaoID').Value:=Trim(CDS_Main.fieldbyname('BaoID').AsString); + FieldByName('RKPlace').Value:=Trim(RKPlace.Text); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=CRID; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('MJID').Value:=Trim(CDS_Main.fieldbyname('MJID').AsString); + FieldByName('KCKGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('KCQty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('KCQtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set MJStr2='''' '); + IF trim(gangNo.Text)<>'' then + sql.Add(',MJStr4='+Quotedstr(trim(gangNo.Text))); + sql.Add('where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+''''); + + // sql.Add(' update JYOrder_Main SET status=''2'' where MainID='''+Trim(CDS_Main.fieldbyname('MainID').AsString)+''' and status<>''2'' '); + ExecSQL; + end; + with CDS_MainSel do + begin + Append; + FieldByName('MainId').Value:=CDS_Main.fieldbyname('MainId').Value; + FieldByName('SubId').Value:=Self.CDS_Main.fieldbyname('SubId').Value; + FieldByName('KHName').Value:=Self.CDS_Main.fieldbyname('KHName').Value; + FieldByName('OrderNo').Value:=Self.CDS_Main.fieldbyname('OrderNo').Value; + FieldByName('KGQty').Value:=Self.CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=Self.CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=Self.CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('MJId').Value:=Self.CDS_Main.fieldbyname('MJId').Value; + FieldByName('CRId').Value:=IntToStr(CRID); + FieldByName('APID').Value:=Self.CDS_Main.fieldbyname('APID').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('PRTColor').Value:=Self.CDS_Main.fieldbyname('PRTColor').Value; + FieldByName('MJXH').Value:=Self.CDS_Main.fieldbyname('MJXH').Value; + IF trim(gangNo.Text)<>'' then + FieldByName('AOrdDefstr1').Value:=trim(gangNo.Text) + else + FieldByName('AOrdDefstr1').Value:=CDS_Main.fieldbyname('AOrdDefstr1').Value; + FieldByName('RKOrdID').Value:=Trim(RKOrdID.Text); + { if Trim(Edit3.Text)='' then + FieldByName('BaoNo').Value:=Trim(BaoNo.Text); } + FieldByName('BaoNo').Value:=Trim(CDS_Main.fieldbyname('BaoNo').AsString); + FieldByName('BaoID').Value:=Trim(CDS_Main.fieldbyname('BaoID').AsString); + Post; + end; + CDS_Main.Delete; + end else + CDS_Main.Next; + end; + end; + CDS_Main.EnableControls; + CDS_MainSel.EnableControls; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select Mainid from CK_BanCP_CR where RKOrdId='''+Trim(RKOrdID.Text)+''''); + SQL.Add(' group by MainId'); + Open; + end; + if ADOQueryCmd.RecordCount>1 then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ͬʹͬⵥ!','ʾ',0); + Exit; + end; + ADOQueryCmd.Connection.CommitTrans; + MovePanel2.Visible:=False; + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select isnull(Count(*),0) ZPS from CK_BanCP_CR where RKOrdID='''+Trim(RKOrdID.Text)+''''); + Open; + end; + RKOrdPS.Text:=Trim(ADOQueryCmd.fieldbyname('ZPS').AsString)+'ƥ'; + Exit; + except + BaoID.Text:=''; + CDS_Main.EnableControls; + MovePanel2.Visible:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +procedure TfrmCpRkSaoMNew.N1Click(Sender: TObject); +begin + //SelOKNo(CDS_Main,True); + if CDS_Main.IsEmpty then Exit; + CDS_Main.DisableControls; + with CDS_Main do + begin + First; + while not Eof do + begin + if Trim(ComboBox1.Text)='' then + begin + Edit; + FieldByName('SSel').Value:=True; + Post; + end else + begin + if Trim(CDS_Main.fieldbyname('CPType').AsString)=Trim(ComboBox1.Text) then + begin + Edit; + FieldByName('SSel').Value:=True; + Post; + end; + end; + Next; + end; + end; + CDS_Main.EnableControls; +end; + +procedure TfrmCpRkSaoMNew.N2Click(Sender: TObject); +begin + SelOKNo(CDS_Main,False); +end; + +procedure TfrmCpRkSaoMNew.MenuItem1Click(Sender: TObject); +begin + SelOKNo(CDS_MainSel,True); +end; + +procedure TfrmCpRkSaoMNew.MenuItem2Click(Sender: TObject); +begin + SelOKNo(CDS_MainSel,False); +end; + +procedure TfrmCpRkSaoMNew.Button6Click(Sender: TObject); +var + maxno:string; +begin + if GetLSNo(ADOQueryCmd,maxno,'9','CK_BanCP_CR',4,1)=False then + begin + Application.MessageBox('ȡⵥʧ!','ʾ',0); + Exit; + end; + RKOrdID.Text:=Trim(maxno); +end; + +procedure TfrmCpRkSaoMNew.RKPlaceBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='KuWei'; + flagname:='λ'; + if ShowModal=1 then + begin + RKPlace.Text:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmCpRkSaoMNew.Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + RKOrdID.Text:=Trim(CDS_MainSel.fieldbyname('RKOrdID').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select isnull(Count(*),0) ZPS from CK_BanCP_CR where RKOrdID='''+Trim(RKOrdID.Text)+''''); + Open; + end; + RKOrdPS.Text:=Trim(ADOQueryCmd.fieldbyname('ZPS').AsString)+'ƥ'; +end; + +procedure TfrmCpRkSaoMNew.Button7Click(Sender: TObject); +var + fPrintFile:String; + Txt,fImagePath:string; + Moudle: THandle; + Makebar:TMakebar; + Mixtext:TMixtext; +begin + if Trim(RKOrdID.Text)='' then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ⵥǩ.rmf'; + with ADOQueryPrt do + begin + Close; + sql.Clear; + sql.Add('select A1.CRTime,A1.RKOrdID,A.MJTypeOther as QtyUnit,D.OrderNo,D.conNo,D.customerNoName,D.MprtCodeName,D.Mprtspec,D.OrdPerson1,D.MPRTKuanNO,'); + sql.Add('PRTColor=DBO.F_Get_Order_SubStr(RKOrdID,''RKColor''),SOrddefstr1=DBO.F_Get_Order_SubStr(RKOrdID,''RKSOrddefstr1''),'); + sql.Add('SOrddefstr4=DBO.F_Get_Order_SubStr(RKOrdID,''RkSOrddefstr4''),PRtHX=DBO.F_Get_Order_SubStr(RKOrdID,''RKPRtHX''), '); + sql.Add('PRTkuanNo=DBO.F_Get_Order_SubStr(RKOrdID,''RkPrtkuanno''),'); + sql.Add('MJStr4=DBO.F_Get_Order_SubStr(RKOrdID,''RKGangNO''), '); + sql.Add('khConNo=(select top 1 khConNo from JYOrderCon_Main X where X.ConNO=D.conNO), '); + sql.Add('Bsl=(select count(distinct baoNo) from CK_BanCP_CR X where X.RKOrdID=A1.RKOrdID), '); + SQL.ADD('count(A.MJID) as JSl,sum(A.MJMaoZ) MJMAOZ,sum(MJQty2) as MJQty2,sum(MJQty3) as MJQty3,sum(MJQty4) as MJQty4,SUM(A.MJLen)as MJLen'); + sql.Add('from CK_BanCP_CR A1 inner join WFB_MJJY A on A.MJID=A1.MJID '); + sql.Add(' inner join JYOrder_Sub C on C.SubID=A.SubID'); + sql.Add(' inner join JYOrder_Main D on D.MainID=A.MainID'); + sql.Add(' where A1.RKOrdID='''+Trim(RKOrdID.Text)+''''); + SQL.ADD(' group by A1.CRTime,A1.RKOrdID,A.MJTypeOther,D.OrderNo,D.conNo,D.customerNoName,D.MprtCodeName,D.Mprtspec,D.OrdPerson1,D.MPRTKuanNO'); + //ShowMessage(ADOQueryPrt.SQL.Text); + Open; + end; + try + Moudle:=LoadLibrary('MakeQRBarcode.dll'); + @Makebar:=GetProcAddress(Moudle,'Make'); + @Mixtext:=GetProcAddress(Moudle,'MixText'); + Txt:=Trim(ADOQueryPrt.fieldbyname('RKOrdID').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); + exit; + end; + + if FileExists(fPrintFile) then + begin + //CDS_MainSel.Locate('RKOrdID',Trim(RKOrdID.Text),[]); + //RMVariables['RKOrdID']:=Trim(CDS_MainSel.fieldbyname('RKOrdID').AsString); + //RMVariables['OrderNo']:=Trim(CDS_MainSel.fieldbyname('OrderNo').AsString); + //RMVariables['PS']:=Trim(RKOrdPS.Text); + //RMVariables['QtyUnit']:=Trim(CDS_MainSel.fieldbyname('QtyUnit').AsString); + RMVariables['QRBARCODE']:=fImagePath; + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ⵥǩ.rmf'),'ʾ',0); + end; +end; + +procedure TfrmCpRkSaoMNew.Button8Click(Sender: TObject); +var + fPrintFile:String; + Txt,fImagePath:string; + Moudle: THandle; + Makebar:TMakebar; + Mixtext:TMixtext; +begin + if Trim(Edit3.Text)='' then Exit; + if Trim(BaoNo.Text)='' then + begin + BaoNo.Text:=''; + Exit; + end else + begin + BaoNo.Text:=''; + // BaoNo.Text:=IntToStr(StrToInt(BaoNo.Text)+1); + end; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ǩ.rmf'; + with ADOQueryPrt do + begin + Close; + sql.Clear; + sql.Add('select A.BaoId,A.BaoNo,A.QtyUnit,B.AOrdDefStr1,D.OrderNo,D.conNo,D.customerNoName,D.MprtCodeName,D.OrdPerson1,C.PRTColor,C.SOrddefstr1,C.SOrddefstr4,C.PRtHX,'); + sql.Add(' khConNo=(select top 1 khConNo from JYOrderCon_Main X where X.ConNO=D.conNO), '); + sql.Add(' Count(A.BaoId) JSl,Sum(WM.MJQty4) MJQty4,Sum(WM.MJMaoZ) MJMaoZ,Sum(WM.MJLen) MJLen'); + sql.Add(' from CK_BanCP_CR A inner join WFB_MJJY WM on A.MJID=WM.MJID'); + sql.Add(' inner join JYOrder_Sub_AnPai B on A.APID=B.APID'); + sql.Add(' inner join JYOrder_Sub C on B.SubID=C.SubID'); + sql.Add(' inner join JYOrder_Main D on C.MainID=D.MainID'); + sql.Add(' where BaoId='''+Trim(FBaoId)+''' and A.CRflag='''' '); + sql.Add(' Group by A.BaoId,A.BaoNo,A.QtyUnit,B.AOrdDefStr1,D.OrderNo,D.conNo,D.customerNoName,D.MprtCodeName,D.OrdPerson1,C.PRTColor,C.SOrddefstr1,C.SOrddefstr4,C.PRtHX'); + Open; + end; + if ADOQueryPrt.RecordCount>1 then + begin + Application.MessageBox('볷!','ʾ',0); + Exit; + end; + try + Moudle:=LoadLibrary('MakeQRBarcode.dll'); + @Makebar:=GetProcAddress(Moudle,'Make'); + @Mixtext:=GetProcAddress(Moudle,'MixText'); + Txt:=Trim(ADOQueryPrt.fieldbyname('BaoId').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); + exit; + end; + if FileExists(fPrintFile) then + begin + //RMVariables['RKOrdID']:=Trim(CDS_MainSel.fieldbyname('RKOrdID').AsString); + //RMVariables['OrderNo']:=Trim(CDS_MainSel.fieldbyname('OrderNo').AsString); + //RMVariables['PS']:=Trim(RKOrdPS.Text); + //RMVariables['QtyUnit']:=Trim(CDS_MainSel.fieldbyname('QtyUnit').AsString); + RMVariables['QRBARCODE']:=fImagePath; + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + // rm1.PrintReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ǩ.rmf'),'ʾ',0); + end; + CDS_MainSel.EmptyDataSet; + FBaoId:=''; +end; + +procedure TfrmCpRkSaoMNew.Edit3Click(Sender: TObject); +begin + if Trim(Edit3.Text)='' then + begin + Edit3.Text:=''; + baoNo.Text:=''; + fbaoID:=''; + end else + begin + Edit3.Text:=''; + baoNo.Text:=''; + fbaoID:=''; + end; +end; + +procedure TfrmCpRkSaoMNew.BaoKeyPress(Sender: TObject; var Key: Char); +var + maxno:String; + CRID:Integer; + MaxCkNo,MaxCkSubNo:String; +begin + if Key=#13 then + begin + Label12.Caption:=''; + if CDS_Sub.IsEmpty then + begin + Bao.Text:=''; + Application.MessageBox('δѡɨ⣡','ʾ',0); + Exit; + end; + if Trim(RKOrdID.Text)='' then + begin + Application.MessageBox('ⵥŲΪ!','ʾ',0); + Exit; + end; + IF trim(Bao.text)='' then + begin + // Label12.Caption:='ŲΪգ'; + Application.MessageBox('ŲΪգ','ʾ',0); + Exit; + end; + if CDS_MainSel.Locate('baoID',Trim(Bao.Text),[]) then + begin + MovePanel1.Visible:=True; + Edit2.Text:=Trim(Bao.Text); + Label12.Caption:='ѣ˰ظɨ裡'; + Bao.Text:=''; + + // Application.MessageBox('˰ظɨ裡','ʾ',0); + Exit; + end; + if CDS_Main.Locate('baoID',Trim(Bao.Text),[])=False then + begin + MovePanel1.Visible:=True; + Edit2.Text:=Trim(Bao.Text); + Label12.Caption:='ѣ˾ڴľУ'; + Bao.Text:=''; + + // Application.MessageBox('˾ڴľУ','ʾ',0); + Exit; + end; + + + + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_Main do + begin + DisableControls; + while CDS_Main.Locate('BaoID',Trim(Bao.Text),[]) do + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.add('Update CK_BanCP_CRID Set CRID=CRID+1'); + sql.Add('select * from CK_BanCP_CRID'); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').Value; + + if GetLSNo(ADOQueryCmd,MaxCkNo,'JR','CK_BanCP_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡƷֿʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(CDS_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(CDS_Main.fieldbyname('SubId').AsString); + FieldByName('APID').Value:=Trim(CDS_Main.fieldbyname('APID').AsString); + FieldByName('MJID').Value:=Trim(CDS_Main.fieldbyname('MJId').AsString); + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('CRTime').Value:=FormatDateTime('yyyy-MM-dd',CRTime.DateTime); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + //FieldByName('JTType').Value:=Trim(XJFlag); + FieldByName('CRID').Value:=CRID; + FieldByName('KGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('RKOrdId').Value:=Trim(RKOrdID.Text); + FieldByName('BaoNo').Value:=Trim(CDS_Main.fieldbyname('BaoNo').AsString); + FieldByName('BaoID').Value:=Trim(CDS_Main.fieldbyname('BaoID').AsString); + + FieldByName('RKPlace').Value:=Trim(RKPlace.Text); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=CRID; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('MJID').Value:=Trim(CDS_Main.fieldbyname('MJID').AsString); + FieldByName('KCKGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('KCQty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('KCQtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set MJStr2='''' '); + IF trim(gangNo.Text)<>'' then + sql.Add(',MJStr4='+Quotedstr(trim(gangNo.Text))); + sql.Add('where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+''''); + + // sql.Add(' update JYOrder_Main SET status=''2'' where MainID='''+Trim(CDS_Main.fieldbyname('MainID').AsString)+''' and status<>''2'' '); + ExecSQL; + end; + with CDS_MainSel do + begin + Append; + FieldByName('MainId').Value:=CDS_Main.fieldbyname('MainId').Value; + FieldByName('SubId').Value:=Self.CDS_Main.fieldbyname('SubId').Value; + FieldByName('KHName').Value:=Self.CDS_Main.fieldbyname('KHName').Value; + FieldByName('OrderNo').Value:=Self.CDS_Main.fieldbyname('OrderNo').Value; + FieldByName('KGQty').Value:=Self.CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=Self.CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=Self.CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('MJId').Value:=Self.CDS_Main.fieldbyname('MJId').Value; + FieldByName('CRId').Value:=IntToStr(CRID); + FieldByName('APID').Value:=Self.CDS_Main.fieldbyname('APID').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('RKOrdID').Value:=Trim(RKOrdID.Text); + FieldByName('PRTColor').Value:=CDS_Main.fieldbyname('PRTColor').Value; + FieldByName('MJXH').Value:=CDS_Main.fieldbyname('MJXH').Value; + IF trim(gangNo.Text)<>'' then + FieldByName('AOrdDefstr1').Value:=trim(gangNo.Text) + else + FieldByName('AOrdDefstr1').Value:=CDS_Main.fieldbyname('AOrdDefstr1').Value; + FieldByName('RKOrdID').Value:=Trim(RKOrdID.Text); + FieldByName('BaoNo').Value:=Trim(CDS_Main.fieldbyname('BaoNo').AsString); + FieldByName('BaoID').Value:=Trim(CDS_Main.fieldbyname('BaoID').AsString); + Post; + end; + CDS_Main.Delete; + end; + CDS_Main.EnableControls; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select Mainid from CK_BanCP_CR where RKOrdId='''+Trim(RKOrdID.Text)+''''); + SQL.Add(' group by MainId'); + Open; + end; + if ADOQueryCmd.RecordCount>1 then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ͬʹͬⵥ!','ʾ',0); + Exit; + end; + ADOQueryCmd.Connection.CommitTrans; + MovePanel1.Visible:=True; + if CDS_MainSel.IsEmpty=False then + Edit1.Text:=IntToStr(Tv3.DataController.Summary.FooterSummaryValues[2]) + else + Edit1.Text:='0'; + Edit2.Text:=Trim(Bao.Text); + Bao.Text:=''; + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select isnull(Count(*),0) ZPS from CK_BanCP_CR where RKOrdID='''+Trim(RKOrdID.Text)+''''); + Open; + end; + RKOrdPS.Text:=Trim(ADOQueryCmd.fieldbyname('ZPS').AsString)+'ƥ'; + Exit; + except + Bao.Text:=''; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; + end; +end; + + +procedure TfrmCpRkSaoMNew.N3Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + CDS_Main.DisableControls; + with CDS_Main do + begin + First; + while not Eof do + begin + if Trim(Fieldbyname('baoNo').AsString)<>'' then + begin + Edit; + FieldByName('SSel').Value:=True; + Post; + end; + Next; + end; + end; + CDS_Main.EnableControls; +end; + +end. diff --git a/艾登贸易管理/U_CpRkSaoMNewDB.dfm b/艾登贸易管理/U_CpRkSaoMNewDB.dfm new file mode 100644 index 0000000..eb91430 --- /dev/null +++ b/艾登贸易管理/U_CpRkSaoMNewDB.dfm @@ -0,0 +1,710 @@ +object frmCpRkSaoMNewDB: TfrmCpRkSaoMNewDB + Left = 31 + Top = 56 + Width = 1199 + Height = 652 + Caption = #25104#21697#25171#21253#25195#25551 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object cxGrid2: TcxGrid + Left = 0 + Top = 209 + Width = 516 + Height = 405 + Align = alLeft + TabOrder = 0 + object Tv1: TcxGridDBTableView + PopupMenu = PopupMenu1 + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + Column = v2Column6 + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Format = #21367#25968#37327#65306'#' + Kind = skCount + Column = v1Column1 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object v1Column6: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 41 + end + object v1Column1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 89 + end + object v1Column3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 54 + end + object v1Column4: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'AOrdDefStr1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 44 + end + object v1Column5: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 43 + end + object v2Column5: TcxGridDBColumn + Caption = #20844#26020#25968 + DataBinding.FieldName = 'KgQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 67 + end + object v2Column6: TcxGridDBColumn + Caption = #38271#24230 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 56 + end + object v1Column2: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'QtyUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 53 + end + object v1Column7: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'CPType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 56 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel1: TPanel + Left = 0 + Top = 0 + Width = 1183 + Height = 209 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 1 + object Label1: TLabel + Left = 90 + Top = 137 + Width = 48 + Height = 12 + Caption = #25195#25551#20837#21475 + end + object Label4: TLabel + Left = 256 + Top = 137 + Width = 48 + Height = 12 + Caption = #20837#24211#26102#38388 + end + object Label5: TLabel + Left = 22 + Top = 157 + Width = 34 + Height = 48 + Caption = #20837#24211#13#10' '#21333#13#10#26465#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 464 + Top = 137 + Width = 24 + Height = 12 + Caption = #24211#20301 + end + object Label7: TLabel + Left = 464 + Top = 168 + Width = 24 + Height = 12 + Caption = #21253#21495 + end + object BaoID: TEdit + Left = 139 + Top = 133 + Width = 110 + Height = 20 + TabOrder = 0 + OnKeyPress = BaoIDKeyPress + end + object Button2: TButton + Left = 701 + Top = 164 + Width = 57 + Height = 20 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button2Click + end + object Button3: TButton + Left = 21 + Top = 133 + Width = 45 + Height = 20 + Caption = #36873#21333 + TabOrder = 2 + OnClick = Button3Click + end + object Button1: TButton + Left = 619 + Top = 164 + Width = 65 + Height = 20 + Caption = #25764#38144#20837#24211 + TabOrder = 3 + OnClick = Button1Click + end + object cxGrid1: TcxGrid + Left = 2 + Top = 2 + Width = 1179 + Height = 120 + Align = alTop + TabOrder = 4 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Styles.Footer = DataLink_TradeManage.Default + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 78 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 80 + end + object v2Column2: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 100 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 119 + end + object v1Column10: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 83 + end + object v1Column14: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 75 + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 80 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 93 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv2 + end + end + object Button5: TButton + Left = 619 + Top = 133 + Width = 65 + Height = 20 + Caption = #20837#24211 + TabOrder = 5 + OnClick = Button5Click + end + object CRTime: TDateTimePicker + Left = 309 + Top = 133 + Width = 97 + Height = 20 + Date = 41337.663190821760000000 + Time = 41337.663190821760000000 + TabOrder = 6 + end + object Button6: TButton + Left = 365 + Top = 163 + Width = 40 + Height = 21 + Caption = #33719#21462 + TabOrder = 7 + OnClick = Button6Click + end + object RKOrdID: TEdit + Left = 59 + Top = 166 + Width = 205 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + end + object RKPlace: TBtnEditA + Left = 491 + Top = 133 + Width = 100 + Height = 20 + TabOrder = 9 + OnBtnClick = RKPlaceBtnClick + end + object BaoNo: TEdit + Left = 491 + Top = 164 + Width = 100 + Height = 20 + TabOrder = 10 + end + object RKOrdPS: TEdit + Left = 265 + Top = 164 + Width = 99 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -35 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 11 + end + object Button7: TButton + Left = 365 + Top = 187 + Width = 41 + Height = 21 + Caption = #25171#21360 + TabOrder = 12 + OnClick = Button7Click + end + end + object cxGrid3: TcxGrid + Left = 516 + Top = 209 + Width = 667 + Height = 405 + Align = alClient + TabOrder = 2 + object Tv3: TcxGridDBTableView + PopupMenu = PopupMenu2 + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv3CellClick + DataController.DataSource = DS_MainSel + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = cxGridDBColumn6 + end + item + Format = #21367#25968#37327#65306'#' + Kind = skCount + Column = cxGridDBColumn1 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object v3Column5: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 44 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 98 + end + object v3Column3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object v3Column4: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'AOrdDefStr1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 65 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 52 + end + object v3Column1: TcxGridDBColumn + Caption = #20844#26020#25968 + DataBinding.FieldName = 'KgQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 59 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #38271#24230 + DataBinding.FieldName = 'Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 69 + end + object v3Column2: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'QtyUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 57 + end + object v3Column6: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'CPType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 59 + end + object v3Column7: TcxGridDBColumn + Caption = #20837#24211#21333#21495 + DataBinding.FieldName = 'RKOrdID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 74 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv3 + end + end + object MovePanel1: TMovePanel + Left = 8 + Top = 232 + Width = 506 + Height = 305 + BevelInner = bvLowered + Color = clSkyBlue + TabOrder = 3 + Visible = False + object Label2: TLabel + Left = 29 + Top = 48 + Width = 147 + Height = 48 + Caption = #24050#20837#24211 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 421 + Top = 56 + Width = 49 + Height = 48 + Caption = #21367 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Edit1: TEdit + Left = 181 + Top = 24 + Width = 241 + Height = 105 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -96 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 0 + Text = '1234' + end + object Edit2: TEdit + Left = 38 + Top = 143 + Width = 386 + Height = 72 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -64 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 1 + Text = '91209120001' + end + object Button4: TButton + Left = 181 + Top = 248 + Width = 75 + Height = 41 + Caption = #20851#38381 + TabOrder = 2 + OnClick = Button4Click + end + end + object MovePanel2: TMovePanel + Left = 464 + Top = 272 + Width = 289 + Height = 49 + BevelInner = bvLowered + Caption = #27491#22312#25191#34892#25968#25454#25805#20316#65292#35831#31245#21518#12290#12290#12290 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 976 + Top = 40 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 136 + Top = 216 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 96 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1072 + Top = 8 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 792 + Top = 64 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 872 + Top = 72 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 320 + Top = 48 + end + object DataSource2: TDataSource + DataSet = CDS_Sub + Left = 288 + Top = 48 + end + object ADOQuerySub: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 680 + Top = 64 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 56 + Top = 200 + end + object cxGridPopupMenu3: TcxGridPopupMenu + PopupMenus = <> + Left = 600 + Top = 72 + end + object DS_MainSel: TDataSource + DataSet = CDS_MainSel + Left = 616 + Top = 336 + end + object CDS_MainSel: TClientDataSet + Aggregates = <> + Params = <> + Left = 648 + Top = 336 + end + object cxGridPopupMenu4: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 832 + Top = 312 + end + object PopupMenu1: TPopupMenu + Left = 288 + Top = 528 + object N1: TMenuItem + Caption = #20840#36873 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #20840#24323 + OnClick = N2Click + end + end + object PopupMenu2: TPopupMenu + Left = 936 + Top = 480 + object MenuItem1: TMenuItem + Caption = #20840#36873 + OnClick = MenuItem1Click + end + object MenuItem2: TMenuItem + Caption = #20840#24323 + OnClick = MenuItem2Click + end + 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 456 + Top = 176 + ReportData = {} + end +end diff --git a/艾登贸易管理/U_CpRkSaoMNewDB.pas b/艾登贸易管理/U_CpRkSaoMNewDB.pas new file mode 100644 index 0000000..61bb83a --- /dev/null +++ b/艾登贸易管理/U_CpRkSaoMNewDB.pas @@ -0,0 +1,940 @@ +unit U_CpRkSaoMNewDB; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, ExtCtrls, ADODB, DBClient, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, MovePanel, cxCheckBox, Menus, + ComCtrls, BtnEdit, RM_System, RM_Common, RM_Class, RM_GridReport; + +type + TfrmCpRkSaoMNewDB = class(TForm) + cxGrid2: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column1: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + cxGrid2Level1: TcxGridLevel; + cxGridPopupMenu1: TcxGridPopupMenu; + CDS_Main: TClientDataSet; + DataSource1: TDataSource; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + Panel1: TPanel; + BaoID: TEdit; + Label1: TLabel; + v1Column5: TcxGridDBColumn; + Button2: TButton; + Button3: TButton; + CDS_Sub: TClientDataSet; + DataSource2: TDataSource; + ADOQuerySub: TADOQuery; + cxGridPopupMenu2: TcxGridPopupMenu; + cxGridPopupMenu3: TcxGridPopupMenu; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + DS_MainSel: TDataSource; + CDS_MainSel: TClientDataSet; + v3Column1: TcxGridDBColumn; + Button1: TButton; + cxGridPopupMenu4: TcxGridPopupMenu; + MovePanel1: TMovePanel; + Edit1: TEdit; + Edit2: TEdit; + Label2: TLabel; + Label3: TLabel; + Button4: TButton; + cxGrid1: TcxGrid; + Tv2: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1Column2: TcxGridDBColumn; + v3Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v3Column3: TcxGridDBColumn; + v3Column4: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v3Column5: TcxGridDBColumn; + Button5: TButton; + v1Column7: TcxGridDBColumn; + v3Column6: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + PopupMenu2: TPopupMenu; + MenuItem1: TMenuItem; + MenuItem2: TMenuItem; + MovePanel2: TMovePanel; + CRTime: TDateTimePicker; + Label4: TLabel; + Button6: TButton; + RKOrdID: TEdit; + RKPlace: TBtnEditA; + Label5: TLabel; + Label6: TLabel; + Label7: TLabel; + BaoNo: TEdit; + RKOrdPS: TEdit; + Button7: TButton; + v3Column7: TcxGridDBColumn; + RM1: TRMGridReport; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure BaoIDKeyPress(Sender: TObject; var Key: Char); + procedure Button2Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button4Click(Sender: TObject); + procedure Button5Click(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure MenuItem1Click(Sender: TObject); + procedure MenuItem2Click(Sender: TObject); + procedure Button6Click(Sender: TObject); + procedure RKPlaceBtnClick(Sender: TObject); + procedure Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button7Click(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + procedure InitSubGrid(); + procedure SavedataCK(); + public + { Public declarations } + end; + +var + frmCpRkSaoMNewDB: TfrmCpRkSaoMNewDB; + +implementation +uses +U_DataLink,U_Fun,U_OrderSelRK,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmCpRkSaoMNewDB.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmCpRkSaoMNewDB.FormDestroy(Sender: TObject); +begin + frmCpRkSaoMNewDB:=nil; +end; +procedure TfrmCpRkSaoMNewDB.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + SQL.Add('select A.*,OrderNo=(select OrderNo from JYOrder_Main where MainId=A.MainId) '); + SQL.Add(',PRTColor=(select PRTColor from JYOrder_Sub where SubId=A.SubId)'); + sql.Add(',AOrdDefstr1=(select AOrdDefstr1 from JYOrder_Sub_AnPai where ApId=A.ApId)'); + sql.Add(',MJXH=(select MJXH from WFB_MJJY where MJID=A.MJID)'); + sql.Add('from CK_BanCP_CR A'); + sql.add('where 1<>1'); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + SQL.Add('select A.*,OrderNo=(select OrderNo from JYOrder_Main where MainId=A.MainId) '); + SQL.Add(',PRTColor=(select PRTColor from JYOrder_Sub where SubId=A.SubId)'); + sql.Add(',AOrdDefstr1=(select AOrdDefstr1 from JYOrder_Sub_AnPai where ApId=A.ApId)'); + sql.Add(',MJXH=(select MJXH from WFB_MJJY where MJID=A.MJID)'); + sql.Add('from CK_BanCP_CR A'); + sql.add('where 1<>1'); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_MainSel); + SInitCDSData20(ADOQueryMain,CDS_MainSel); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmCpRkSaoMNewDB.FormShow(Sender: TObject); +begin + ReadCxGrid('ѡ',Tv2,'Ʒֿ'); + ReadCxGrid('Ʒ',Tv1,'Ʒֿ'); + ReadCxGrid('ƷSels',Tv3,'Ʒֿ'); + InitSubGrid(); + InitGrid(); + CRTime.DateTime:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmCpRkSaoMNewDB.BaoIDKeyPress(Sender: TObject; var Key: Char); +var + maxno:String; + CRID:Integer; + MaxCkNo,MaxCkSubNo:String; +begin + if Key=#13 then + begin + if CDS_Sub.IsEmpty then + begin + BaoID.Text:=''; + Application.MessageBox('δѡɨ⣡','ʾ',0); + Exit; + end; + if CDS_Main.Locate('MJId',Trim(BaoID.Text),[])=False then + begin + BaoID.Text:=''; + //Application.MessageBox('˾ڴľУ','ʾ',0); + Exit; + end; + if Trim(RKOrdID.Text)='' then + begin + Application.MessageBox('ⵥŲΪ!','ʾ',0); + Exit; + end; + if Trim(RKPlace.Text)='' then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; + CDS_Main.Locate('MJId',Trim(BaoID.Text),[]); + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_Main do + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.add('Update CK_BanCP_CRID Set CRID=CRID+1'); + sql.Add('select * from CK_BanCP_CRID'); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').Value; + if GetLSNo(ADOQueryCmd,MaxCkNo,'JR','CK_BanCP_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡƷֿʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(CDS_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(CDS_Main.fieldbyname('SubId').AsString); + FieldByName('APID').Value:=Trim(CDS_Main.fieldbyname('APID').AsString); + FieldByName('MJID').Value:=Trim(CDS_Main.fieldbyname('MJId').AsString); + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('CRTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + //FieldByName('JTType').Value:=Trim(XJFlag); + FieldByName('CRID').Value:=CRID; + FieldByName('KGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('RKOrdId').Value:=Trim(RKOrdID.Text); + FieldByName('BaoNo').Value:=Trim(BaoNo.Text); + FieldByName('RKPlace').Value:=Trim(RKPlace.Text); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=CRID; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('MJID').Value:=Trim(CDS_Main.fieldbyname('MJID').AsString); + FieldByName('KCKGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('KCQty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('KCQtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set MJStr2='''' where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select Mainid from CK_BanCP_CR where RKOrdId='''+Trim(RKOrdID.Text)+''''); + SQL.Add(' group by MainId'); + Open; + end; + if ADOQueryCmd.RecordCount>1 then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ͬʹͬⵥ!','ʾ',0); + Exit; + end; + ADOQueryCmd.Connection.CommitTrans; + with CDS_MainSel do + begin + Append; + FieldByName('MainId').Value:=CDS_Main.fieldbyname('MainId').Value; + FieldByName('SubId').Value:=Self.CDS_Main.fieldbyname('SubId').Value; + FieldByName('OrderNo').Value:=Self.CDS_Main.fieldbyname('OrderNo').Value; + FieldByName('KGQty').Value:=Self.CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=Self.CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=Self.CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('MJId').Value:=Self.CDS_Main.fieldbyname('MJId').Value; + FieldByName('CRId').Value:=IntToStr(CRID); + FieldByName('APID').Value:=Self.CDS_Main.fieldbyname('APID').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('RKOrdID').Value:=Trim(RKOrdID.Text); + FieldByName('PRTColor').Value:=CDS_Main.fieldbyname('PRTColor').Value; + FieldByName('MJXH').Value:=CDS_Main.fieldbyname('MJXH').Value; + FieldByName('AOrdDefstr1').Value:=CDS_Main.fieldbyname('AOrdDefstr1').Value; + FieldByName('RKOrdID').Value:=Trim(RKOrdID.Text); + Post; + end; + CDS_Main.Delete; + MovePanel1.Visible:=True; + if CDS_MainSel.IsEmpty=False then + Edit1.Text:=IntToStr(Tv3.DataController.Summary.FooterSummaryValues[2]) + else + Edit1.Text:='0'; + Edit2.Text:=Trim(BaoID.Text); + BaoID.Text:=''; + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select isnull(Count(*),0) ZPS from CK_BanCP_CR where RKOrdID='''+Trim(RKOrdID.Text)+''''); + Open; + end; + RKOrdPS.Text:=Trim(ADOQueryCmd.fieldbyname('ZPS').AsString)+'ƥ'; + Exit; + except + BaoID.Text:=''; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; + end; +end; +procedure TfrmCpRkSaoMNewDB.SavedataCK(); +var + CRID:Integer; + MaxCkNo,MaxCkSubNo:String; +begin + //if Trim(Cds_Main.fieldbyname('SubType').AsString)='' then + //////////////////////////////////////////////////////////////浽Ʒֿ//////////////////////////////////////////////// + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.add('Update CK_BanCP_CRID Set CRID=CRID+1'); + sql.Add('select * from CK_BanCP_CRID'); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').Value; + if GetLSNo(ADOQueryCmd,MaxCkNo,'JR','CK_BanCP_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡƷֿʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(CDS_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(CDS_Main.fieldbyname('SubId').AsString); + FieldByName('APID').Value:=Trim(CDS_Main.fieldbyname('APID').AsString); + FieldByName('MJID').Value:=Trim(CDS_Main.fieldbyname('MJId').AsString); + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('CRTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + //FieldByName('JTType').Value:=Trim(XJFlag); + FieldByName('CRID').Value:=CRID; + FieldByName('KGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=CRID; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('MJID').Value:=Trim(CDS_Main.fieldbyname('MJID').AsString); + FieldByName('KCKGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('KCQty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('KCQtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set MJStr2='''' where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; +end; +procedure TfrmCpRkSaoMNewDB.Button2Click(Sender: TObject); +begin + Close; + WriteCxGrid('ѡ',Tv2,'Ʒֿ'); + WriteCxGrid('Ʒ',Tv1,'Ʒֿ'); + WriteCxGrid('ƷSels',Tv3,'Ʒֿ'); +end; + +procedure TfrmCpRkSaoMNewDB.Button3Click(Sender: TObject); +begin + {if CDS_Main.IsEmpty=False then + begin + Application.MessageBox('ɨ費ܸĵţ','ʾ',0); + Exit; + end;} + try + frmOrderSelRK:=TfrmOrderSelRK.Create(Application); + with frmOrderSelRK do + begin + if ShowModal=1 then + begin + CDS_OrderSel.DisableControls; + with CDS_OrderSel do + begin + First; + while not Eof do + begin + if FieldByName('SSel').Value=True then + begin + if Self.CDS_Sub.Locate('SubId',Trim(CDS_OrderSel.fieldbyname('SubId').AsString),[])=False then + begin + with Self.CDS_Sub do + begin + Append; + FieldByName('MainId').Value:=Trim(CDS_OrderSel.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(CDS_OrderSel.fieldbyname('SubId').AsString); + FieldByName('CustomerNo').Value:=Trim(CDS_OrderSel.fieldbyname('CustomerNo').AsString); + FieldByName('OrderNo').Value:=Trim(CDS_OrderSel.fieldbyname('OrderNo').AsString); + FieldByName('CustomerNoName').Value:=Trim(CDS_OrderSel.fieldbyname('CustomerNoName').AsString); + FieldByName('MPRTCodeName').Value:=Trim(CDS_OrderSel.fieldbyname('MPRTCodeName').AsString); + FieldByName('PRTOrderQty').Value:=Trim(CDS_OrderSel.fieldbyname('PRTOrderQty').AsString); + FieldByName('OrderUnit').Value:=Trim(CDS_OrderSel.fieldbyname('OrderUnit').AsString); + FieldByName('PRTColor').Value:=Trim(CDS_OrderSel.fieldbyname('PRTColor').AsString); + FieldByName('MPRTMF').Value:=Trim(CDS_OrderSel.fieldbyname('MPRTMF').AsString); + FieldByName('MPRTKZ').Value:=Trim(CDS_OrderSel.fieldbyname('MPRTKZ').AsString); + Post; + end; + end; + end; + Next; + end; + end; + CDS_OrderSel.EnableControls; + CDS_Sub.DisableControls; + with CDS_Sub do + begin + First; + while not Eof do + begin + if Trim(Self.CDS_Sub.fieldbyname('SFlag').AsString)<>'2' then + begin + with Self.ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select orderNo=(select OrderNo from JYOrder_Main where MainId=A.MainId) '); + sql.Add(',PRTColor=(select PRTColor from JYOrder_Sub JS where JS.SubId=A.SubId) '); + sql.Add(',AOrdDefStr1=(select AOrdDefStr1 from JYOrder_Sub_AnPai JS where JS.APId=A.APId),A.* '); + sql.Add(' from WFB_MJJY A '); + sql.Add(' where isnull(A.MJStr2,'''')=''δ'' '); + SQL.Add(' and A.SubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+''''); + Open; + end; + Self.ADOQueryTemp.DisableControls; + with Self.ADOQueryTemp do + begin + First; + while not Eof do + begin + with CDS_Main do + begin + Append; + FieldByName('MainId').Value:=Self.ADOQueryTemp.fieldbyname('MainId').Value; + FieldByName('SubId').Value:=Self.ADOQueryTemp.fieldbyname('SubId').Value; + FieldByName('APId').Value:=Self.ADOQueryTemp.fieldbyname('APId').Value; + FieldByName('OrderNo').Value:=Self.ADOQueryTemp.fieldbyname('OrderNo').Value; + FieldByName('KgQty').Value:=Self.ADOQueryTemp.fieldbyname('MJMaoZ').Value; + FieldByName('Qty').Value:=Self.ADOQueryTemp.fieldbyname('MJLen').Value; + FieldByName('QtyUnit').Value:=Self.ADOQueryTemp.fieldbyname('MJTypeOther').Value; + FieldByName('MJId').Value:=Self.ADOQueryTemp.fieldbyname('MJId').Value; + FieldByName('CPType').Value:=Self.ADOQueryTemp.fieldbyname('MJType').Value; + FieldByName('PRTColor').Value:=Self.ADOQueryTemp.fieldbyname('PRTColor').Value; + FieldByName('AOrddefstr1').Value:=Self.ADOQueryTemp.fieldbyname('AOrddefstr1').Value; + FieldByName('MJXH').Value:=Self.ADOQueryTemp.fieldbyname('MJXH').Value; + Post; + end; + Next; + end; + end; + Self.ADOQueryTemp.EnableControls; + end; + CDS_Sub.Edit; + CDS_Sub.FieldByName('SFlag').Value:='2'; + CDS_Sub.Post; + Next; + end; + end; + CDS_Sub.EnableControls; + end; + end; + finally + frmOrderSelRK.Free; + end; +end; + +procedure TfrmCpRkSaoMNewDB.InitSubGrid(); +begin + try + ADOQuerySub.DisableControls; + with ADOQuerySub do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*'); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.Mainid'); + sql.Add(' where 1<>1 '); + + Open; + end; + SCreateCDS20(ADOQuerySub,CDS_Sub); + SInitCDSData20(ADOQuerySub,CDS_Sub); + finally + ADOQuerySub.EnableControls; + end; +end; + + +procedure TfrmCpRkSaoMNewDB.Button1Click(Sender: TObject); +begin + if CDS_MainSel.IsEmpty then Exit; + if CDS_MainSel.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪִд˲','ʾ',32+4)<>IDYES then Exit; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + try + ADOQueryCmd.Connection.BeginTrans; + CDS_MainSel.DisableControls; + with CDS_MainSel do + begin + First; + while not Eof do + begin + if CDS_MainSel.FieldByName('SSel').AsBoolean=True then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete CK_BanCP_CR where BCID='''+Trim(CDS_MainSel.fieldbyname('BCID').AsString)+''''); + sql.Add('delete CK_BanCP_KC where CRID='+Trim(CDS_MainSel.fieldbyname('CRID').AsString)); + sql.Add('Update WFB_MJJY Set MJStr2=''δ'' where MJID='''+Trim(CDS_MainSel.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + with CDS_Main do + begin + Append; + FieldByName('MainId').Value:=CDS_MainSel.fieldbyname('MainId').Value; + FieldByName('SubId').Value:=Self.CDS_MainSel.fieldbyname('SubId').Value; + FieldByName('OrderNo').Value:=Self.CDS_MainSel.fieldbyname('OrderNo').Value; + FieldByName('KgQty').Value:=Self.CDS_MainSel.fieldbyname('KgQty').Value; + FieldByName('Qty').Value:=Self.CDS_MainSel.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=Self.CDS_MainSel.fieldbyname('QtyUnit').Value; + FieldByName('MJId').Value:=Self.CDS_MainSel.fieldbyname('MJId').Value; + FieldByName('APID').Value:=Self.CDS_MainSel.fieldbyname('APID').Value; + FieldByName('CPType').Value:=Self.CDS_MainSel.fieldbyname('CPType').Value; + FieldByName('PRTColor').Value:=Self.CDS_MainSel.fieldbyname('PRTColor').Value; + FieldByName('AOrddefstr1').Value:=Self.CDS_MainSel.fieldbyname('AOrddefstr1').Value; + FieldByName('MJXH').Value:=Self.CDS_MainSel.fieldbyname('MJXH').Value; + Post; + end; + CDS_MainSel.Delete; + end else + Next; + end; + end; + CDS_MainSel.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + MovePanel2.Visible:=False; + + MovePanel1.Visible:=True; + if CDS_MainSel.IsEmpty=False then + Edit1.Text:=IntToStr(Tv3.DataController.Summary.FooterSummaryValues[2]) + else + Edit1.Text:='0'; + Edit2.Text:=Trim(CDS_Main.fieldbyname('MJId').AsString); + if Trim(RKOrdID.Text)<>'' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select isnull(Count(*),0) ZPS from CK_BanCP_CR where RKOrdID='''+Trim(RKOrdID.Text)+''''); + Open; + end; + RKOrdPS.Text:=Trim(ADOQueryCmd.fieldbyname('ZPS').AsString)+'ƥ'; + end; + except + MovePanel2.Visible:=False; + CDS_MainSel.DisableControls; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ɹ','ʾ',0); + end; +end; + +procedure TfrmCpRkSaoMNewDB.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if CDS_MainSel.IsEmpty=False then Exit; + if CDS_Sub.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + CDS_Main.DisableControls; + with CDS_Main do + begin + First; + while not Eof do + begin + if Trim(CDS_Main.fieldbyname('SubId').AsString)=Trim(CDS_Sub.fieldbyname('SubId').AsString) then + begin + CDS_Main.Delete; + end else + Next; + end; + end; + CDS_Main.EnableControls; + CDS_Sub.Delete; +end; + +procedure TfrmCpRkSaoMNewDB.Button4Click(Sender: TObject); +begin + MovePanel1.Visible:=False; +end; + +procedure TfrmCpRkSaoMNewDB.Button5Click(Sender: TObject); +var + maxno:String; + CRID:Integer; + MaxCkNo,MaxCkSubNo:String; +begin + if CDS_Sub.IsEmpty then Exit; + if CDS_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + if Trim(RKOrdID.Text)='' then + begin + Application.MessageBox('ⵥŲΪ!','ʾ',0); + Exit; + end; + if Trim(RKPlace.Text)='' then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪִ','ʾ',32+4)<>IDYES then exit; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + try + ADOQueryCmd.Connection.BeginTrans; + CDS_Main.DisableControls; + with CDS_Main do + begin + First; + while not Eof do + begin + if CDS_Main.FieldByName('SSel').AsBoolean=True then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.add('Update CK_BanCP_CRID Set CRID=CRID+1'); + sql.Add('select * from CK_BanCP_CRID'); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').Value; + if GetLSNo(ADOQueryCmd,MaxCkNo,'JR','CK_BanCP_CR',4,1)=False then + begin + MovePanel2.Visible:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡƷֿʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(CDS_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(CDS_Main.fieldbyname('SubId').AsString); + FieldByName('APID').Value:=Trim(CDS_Main.fieldbyname('APID').AsString); + FieldByName('MJID').Value:=Trim(CDS_Main.fieldbyname('MJId').AsString); + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('CRTime').Value:=FormatDateTime('yyyy-MM-dd',CRTime.DateTime); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + //FieldByName('JTType').Value:=Trim(XJFlag); + FieldByName('CRID').Value:=CRID; + FieldByName('KGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('RKOrdId').Value:=Trim(RKOrdID.Text); + FieldByName('BaoNo').Value:=Trim(BaoNo.Text); + FieldByName('RKPlace').Value:=Trim(RKPlace.Text); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=CRID; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('MJID').Value:=Trim(CDS_Main.fieldbyname('MJID').AsString); + FieldByName('KCKGQty').Value:=CDS_Main.fieldbyname('KGQty').Value; + FieldByName('KCQty').Value:=CDS_Main.fieldbyname('Qty').Value; + FieldByName('KCQtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set MJStr2='''' where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + with CDS_MainSel do + begin + Append; + FieldByName('MainId').Value:=CDS_Main.fieldbyname('MainId').Value; + FieldByName('SubId').Value:=Self.CDS_Main.fieldbyname('SubId').Value; + FieldByName('OrderNo').Value:=Self.CDS_Main.fieldbyname('OrderNo').Value; + FieldByName('KGQty').Value:=Self.CDS_Main.fieldbyname('KGQty').Value; + FieldByName('Qty').Value:=Self.CDS_Main.fieldbyname('Qty').Value; + FieldByName('QtyUnit').Value:=Self.CDS_Main.fieldbyname('QtyUnit').Value; + FieldByName('MJId').Value:=Self.CDS_Main.fieldbyname('MJId').Value; + FieldByName('CRId').Value:=IntToStr(CRID); + FieldByName('APID').Value:=Self.CDS_Main.fieldbyname('APID').Value; + FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('PRTColor').Value:=Self.CDS_Main.fieldbyname('PRTColor').Value; + FieldByName('MJXH').Value:=Self.CDS_Main.fieldbyname('MJXH').Value; + FieldByName('AOrdDefstr1').Value:=CDS_Main.fieldbyname('AOrdDefstr1').Value; + FieldByName('RKOrdID').Value:=Trim(RKOrdID.Text); + Post; + end; + CDS_Main.Delete; + end else + CDS_Main.Next; + end; + end; + CDS_Main.EnableControls; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select Mainid from CK_BanCP_CR where RKOrdId='''+Trim(RKOrdID.Text)+''''); + SQL.Add(' group by MainId'); + Open; + end; + if ADOQueryCmd.RecordCount>1 then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ͬʹͬⵥ!','ʾ',0); + Exit; + end; + ADOQueryCmd.Connection.CommitTrans; + MovePanel2.Visible:=False; + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select isnull(Count(*),0) ZPS from CK_BanCP_CR where RKOrdID='''+Trim(RKOrdID.Text)+''''); + Open; + end; + RKOrdPS.Text:=Trim(ADOQueryCmd.fieldbyname('ZPS').AsString)+'ƥ'; + Exit; + except + BaoID.Text:=''; + CDS_Main.EnableControls; + MovePanel2.Visible:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +procedure TfrmCpRkSaoMNewDB.N1Click(Sender: TObject); +begin + SelOKNo(CDS_Main,True); +end; + +procedure TfrmCpRkSaoMNewDB.N2Click(Sender: TObject); +begin + SelOKNo(CDS_Main,False); +end; + +procedure TfrmCpRkSaoMNewDB.MenuItem1Click(Sender: TObject); +begin + SelOKNo(CDS_MainSel,True); +end; + +procedure TfrmCpRkSaoMNewDB.MenuItem2Click(Sender: TObject); +begin + SelOKNo(CDS_MainSel,False); +end; + +procedure TfrmCpRkSaoMNewDB.Button6Click(Sender: TObject); +var + maxno:string; +begin + if GetLSNo(ADOQueryCmd,maxno,'9','CK_BanCP_CR',4,1)=False then + begin + Application.MessageBox('ȡⵥʧ!','ʾ',0); + Exit; + end; + RKOrdID.Text:=Trim(maxno); +end; + +procedure TfrmCpRkSaoMNewDB.RKPlaceBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='KuWei'; + flagname:='λ'; + if ShowModal=1 then + begin + RKPlace.Text:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmCpRkSaoMNewDB.Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + RKOrdID.Text:=Trim(CDS_MainSel.fieldbyname('RKOrdID').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select isnull(Count(*),0) ZPS from CK_BanCP_CR where RKOrdID='''+Trim(RKOrdID.Text)+''''); + Open; + end; + RKOrdPS.Text:=Trim(ADOQueryCmd.fieldbyname('ZPS').AsString)+'ƥ'; +end; + +procedure TfrmCpRkSaoMNewDB.Button7Click(Sender: TObject); +var + fPrintFile:String; +begin + if Trim(RKOrdPS.Text)='' then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ⵥǩ.rmf' ; + if FileExists(fPrintFile) then + begin + CDS_MainSel.Locate('RKOrdID',Trim(RKOrdID.Text),[]); + RMVariables['RKOrdID']:=Trim(CDS_MainSel.fieldbyname('RKOrdID').AsString); + RMVariables['OrderNo']:=Trim(CDS_MainSel.fieldbyname('OrderNo').AsString); + RMVariables['PS']:=Trim(RKOrdPS.Text); + RMVariables['QtyUnit']:=Trim(CDS_MainSel.fieldbyname('QtyUnit').AsString); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ⵥǩ.rmf'),'ʾ',0); + end; +end; + +end. diff --git a/艾登贸易管理/U_DataLink.dfm b/艾登贸易管理/U_DataLink.dfm new file mode 100644 index 0000000..dae1176 --- /dev/null +++ b/艾登贸易管理/U_DataLink.dfm @@ -0,0 +1,17978 @@ +object DataLink_TradeManage: TDataLink_TradeManage + OldCreateOrder = False + OnDestroy = DataModuleDestroy + Left = 276 + Top = 210 + Height = 296 + Width = 410 + object AdoDataLink: TADOQuery + Connection = ADOLink + Parameters = <> + Left = 136 + Top = 8 + end + object ADOLink: TADOConnection + LoginPrompt = False + Left = 48 + Top = 8 + end + object ThreeImgList: TImageList + Height = 24 + Width = 24 + Left = 48 + Top = 72 + 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 + object ThreeLookAndFeelCol: TcxLookAndFeelController + Kind = lfStandard + NativeStyle = False + Left = 253 + Top = 12 + end + object ThreeColorBase: TcxStyleRepository + Left = 139 + Top = 80 + PixelsPerInch = 96 + object SHuangSe: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = 4707838 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + TextColor = clBtnText + end + object SkyBlue: TcxStyle + AssignedValues = [svColor, svFont] + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object Default: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object QHuangSe: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object FontBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object TextSHuangSe: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlack + end + object FonePurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindow + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlack + end + object FoneClMaroon: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clMaroon + end + object FoneRed: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clRed + end + object RowColor: TcxStyle + AssignedValues = [svColor] + Color = 16311512 + end + object handBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxBlue: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16711731 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle1: TcxStyle + AssignedValues = [svColor] + Color = clLime + end + end +end diff --git a/艾登贸易管理/U_DataLink.pas b/艾登贸易管理/U_DataLink.pas new file mode 100644 index 0000000..b917df4 --- /dev/null +++ b/艾登贸易管理/U_DataLink.pas @@ -0,0 +1,89 @@ +unit U_DataLink; + +interface + +uses + SysUtils, Classes, DB, ADODB, ImgList, Controls, cxStyles, cxLookAndFeels, + 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; {ݿӲ} + DCurHandle:hwnd; //ǰ + DName:string ; //#û#// + DCode:string ; //#û#// + Ddatabase:string; //#ݿ#// + DTitCaption:string; //##// + PicSvr:string; + DParameters1,DParameters2,DParameters3,DParameters4,DParameters5:string;// ⲿ + DParameters6,DParameters7,DParameters8,DParameters9,DParameters10:string;//ⲿ + OldDllApp:Tapplication; //ԭо + NewDllApp: Tapplication;//ǰ + MainApplication: Tapplication ; + DFormCode:integer; //ǰں + IsDelphiLanguage:integer; + DServerDate:TdateTime; //ʱ + DCompany:string; //˾ + IpCall:Integer; + IpWLDZStr:string; +type + TDataLink_TradeManage = class(TDataModule) + AdoDataLink: TADOQuery; + ADOLink: TADOConnection; + ThreeImgList: TImageList; + ThreeLookAndFeelCol: TcxLookAndFeelController; + ThreeColorBase: TcxStyleRepository; + SHuangSe: TcxStyle; + SkyBlue: TcxStyle; + Default: TcxStyle; + QHuangSe: TcxStyle; + Red: TcxStyle; + FontBlue: TcxStyle; + TextSHuangSe: TcxStyle; + FonePurple: TcxStyle; + FoneClMaroon: TcxStyle; + FoneRed: TcxStyle; + RowColor: TcxStyle; + handBlack: TcxStyle; + cxBlue: TcxStyle; + cxStyle1: TcxStyle; + procedure DataModuleDestroy(Sender: TObject); + private + { Private declarations } + public + { Public declarations } + end; + TMakebar = procedure(ucData:pchar;nDataLen:integer;nErrLevel:integer;nMask:integer;nBarEdition:integer;szBmpFileName:pchar;nScale:integer);stdcall; + TMixtext = procedure( szSrcBmpFileName:PChar;szDstBmpFileName:PChar;sztext:PChar;fontsize,txtheight,hmargin,vmargin,txtcntoneline:integer);stdcall; + + +var + DataLink_TradeManage: TDataLink_TradeManage; + +implementation +{$R *.dfm} + + +procedure TDataLink_TradeManage.DataModuleDestroy(Sender: TObject); +begin + DataLink_TradeManage:=nil; +end; + +end. + + + + diff --git a/艾登贸易管理/U_FanYangList.dfm b/艾登贸易管理/U_FanYangList.dfm new file mode 100644 index 0000000..b389c08 --- /dev/null +++ b/艾登贸易管理/U_FanYangList.dfm @@ -0,0 +1,899 @@ +object FrmFanYangList: TFrmFanYangList + Left = 120 + Top = 98 + Width = 1152 + Height = 620 + Caption = #25918#26679#25351#31034#21333 + 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 = 1136 + AutoSize = True + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBAdd: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object ToolButton1: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + OnClick = ToolButton1Click + end + object TBDel: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton2: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #22797#21046 + ImageIndex = 57 + OnClick = ToolButton2Click + end + object TBPrint: TToolButton + Left = 441 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 504 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1136 + Height = 64 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 33 + Top = 14 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 195 + Top = 14 + Width = 52 + Height = 12 + Caption = #25918#26679#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 353 + Top = 14 + Width = 54 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 508 + Top = 14 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 195 + Top = 38 + Width = 53 + Height = 12 + Caption = #21512' '#21516' '#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 508 + Top = 38 + Width = 54 + Height = 12 + Caption = 'PO#& '#27454#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 353 + Top = 38 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 667 + Top = 38 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 667 + Top = 14 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 801 + Top = 14 + Width = 39 + Height = 12 + Caption = #19994#21153#32452 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 86 + Top = 10 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 85 + Top = 34 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 249 + Top = 10 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoChange + end + object CustomerNoName: TEdit + Tag = 2 + Left = 406 + Top = 10 + Width = 76 + Height = 20 + TabOrder = 3 + OnChange = OrderNoChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 562 + Top = 10 + Width = 76 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + end + object ConNo: TEdit + Tag = 2 + Left = 249 + Top = 34 + Width = 77 + Height = 20 + TabOrder = 5 + OnChange = OrderNoChange + end + object MPRTKuanNO: TEdit + Tag = 2 + Left = 562 + Top = 34 + Width = 76 + Height = 20 + TabOrder = 6 + OnChange = OrderNoChange + end + object MPRTCode: TEdit + Tag = 2 + Left = 406 + Top = 34 + Width = 76 + Height = 20 + TabOrder = 7 + OnChange = OrderNoChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 696 + Top = 34 + Width = 82 + Height = 20 + TabOrder = 8 + OnChange = OrderNoChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 696 + Top = 10 + Width = 82 + Height = 20 + TabOrder = 9 + OnChange = OrderNoChange + end + object OrdDefStr1: TEdit + Tag = 2 + Left = 842 + Top = 10 + Width = 76 + Height = 20 + TabOrder = 10 + OnChange = OrderNoChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 116 + Width = 1136 + Height = 225 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1OrderNO: TcxGridDBColumn + Caption = #25918#26679#21333#21495 + DataBinding.FieldName = 'OrderNO' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 92 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object v1DlyDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + object v1MPRTCode: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'MPRTCode' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 86 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 69 + end + object v1Column1: TcxGridDBColumn + Caption = #23458#25143#31616#31216 + DataBinding.FieldName = 'CustomerNo' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 94 + end + object v1OrdDefStr1: TcxGridDBColumn + Caption = #19994#21153#32452 + DataBinding.FieldName = 'OrdDefStr1' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1OrdDefStr2: TcxGridDBColumn + Caption = #29983#20135#32452 + DataBinding.FieldName = 'OrdDefStr2' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1MPRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object v1MPRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 59 + end + object v1OrdQty1: TcxGridDBColumn + Caption = #21046#32593#36153 + DataBinding.FieldName = 'OrdQty1' + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v1OrdQty3: TcxGridDBColumn + Caption = #25968#30721#21943#21360#36153 + DataBinding.FieldName = 'OrdQty3' + HeaderAlignmentHorz = taCenter + Width = 81 + end + object v1OrdQty5: TcxGridDBColumn + Caption = #21305#26679#36153 + DataBinding.FieldName = 'OrdQty5' + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v1orddefstr7: TcxGridDBColumn + Caption = #32467#31639#26041#24335 + DataBinding.FieldName = 'orddefstr7' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1RanFactory: TcxGridDBColumn + Caption = #26579#21378 + DataBinding.FieldName = 'RanFactory' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 139 + end + object v1CPCFBi: TcxGridDBColumn + Caption = #25104#20998 + DataBinding.FieldName = 'CPCFBi' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1PBFactory: TcxGridDBColumn + Caption = #22383#24067#21378 + DataBinding.FieldName = 'PBFactory' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column2: TcxGridDBColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 357 + Width = 1136 + Height = 225 + Align = alBottom + TabOrder = 3 + object TV2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DSSUB + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn21 + end + item + Kind = skSum + Column = cxGridDBColumn19 + end + item + Kind = skSum + Column = cxGridDBColumn20 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object cxGridDBColumn7: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Width = 108 + end + object cxGridDBColumn9: TcxGridDBColumn + Caption = 'PO#_'#27454#21495 + DataBinding.FieldName = 'MPRTKuanNO' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 75 + end + object cxGridDBColumn10: TcxGridDBColumn + Caption = #19994#21153#32452 + DataBinding.FieldName = 'OrdDefStr1' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 70 + end + object cxGridDBColumn11: TcxGridDBColumn + Caption = #29983#20135#32452 + DataBinding.FieldName = 'OrdDefStr2' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 70 + end + object cxGridDBColumn21: TcxGridDBColumn + Caption = #21305#26679#25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 71 + end + object cxGridDBColumn22: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 78 + end + object V2Column1: TcxGridDBColumn + Caption = #38754#26009#21333#20215 + DataBinding.FieldName = 'PRTPRice' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object cxGridDBColumn19: TcxGridDBColumn + Caption = #23454#38469#20986#36135 + DataBinding.FieldName = 'SOrdQty1' + HeaderAlignmentHorz = taCenter + Width = 85 + end + object cxGridDBColumn20: TcxGridDBColumn + Caption = #25104#21697#23492#20986 + DataBinding.FieldName = 'SOrdQty2' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object cxGridDBColumn18: TcxGridDBColumn + Caption = #24037#21378#32534#21495 + DataBinding.FieldName = 'SOrddefstr3' + HeaderAlignmentHorz = taCenter + Width = 113 + end + object cxGridDBColumn23: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 174 + end + object cxGridDBColumn24: TcxGridDBColumn + Caption = #25104#20998 + DataBinding.FieldName = 'CPCFBi' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 70 + end + object cxGridDBColumn25: TcxGridDBColumn + Caption = #22383#24067#21378 + DataBinding.FieldName = 'PBFactory' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 70 + end + object cxGridDBColumn26: TcxGridDBColumn + Caption = #26579#21378 + DataBinding.FieldName = 'RanFactory' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 70 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + object Panel4: TPanel + Left = 411 + Top = 136 + Width = 231 + Height = 216 + Locked = True + TabOrder = 4 + Visible = False + object Label14: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 229 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #25253#34920#21517#31216 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + object Image2: TImage + Left = 206 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object Button1: TButton + Left = 83 + Top = 176 + Width = 75 + Height = 25 + Caption = #30830#23450 + TabOrder = 1 + OnClick = Button1Click + end + object RadioGroup1: TRadioGroup + Left = 48 + Top = 28 + Width = 149 + Height = 145 + ItemIndex = 0 + Items.Strings = ( + #25918#26679#25351#31034#21333 + #25918#26679#25351#31034#21333'('#26080#20215#26684')' + #25918#26679#25351#31034#21333#21457#31080) + TabOrder = 2 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 96 + Width = 1136 + Height = 20 + Align = alTop + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Style = 9 + TabIndex = 0 + TabOrder = 5 + Tabs.Strings = ( + #26410#23457#26680 + #24050#23457#26680 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectBottom = 20 + ClientRectRight = 1136 + ClientRectTop = 19 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 352 + Top = 270 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 520 + Top = 269 + end + object ADOQueryTmp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 488 + Top = 270 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 419 + Top = 273 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 590 + Top = 270 + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 = 385 + Top = 273 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 453 + Top = 274 + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 554 + Top = 269 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 633 + Top = 269 + end + object ADOQuerySub: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 240 + Top = 416 + end + object DSSUB: TDataSource + DataSet = ADOQuerySub + Left = 312 + Top = 420 + 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 = 740 + Top = 248 + end +end diff --git a/艾登贸易管理/U_FanYangList.pas b/艾登贸易管理/U_FanYangList.pas new file mode 100644 index 0000000..cb9329d --- /dev/null +++ b/艾登贸易管理/U_FanYangList.pas @@ -0,0 +1,447 @@ +unit U_FanYangList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxCalendar, Menus, RM_Common, + RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, DBClient, + ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, cxSplitter, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, StdCtrls, ComCtrls, ExtCtrls, + ToolWin, cxPC; + +type + TFrmFanYangList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + ToolButton1: TToolButton; + TBDel: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + Label3: TLabel; + Label4: TLabel; + Label8: TLabel; + Label9: TLabel; + Label10: TLabel; + Label11: TLabel; + Label12: TLabel; + Label13: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + OrderNo: TEdit; + CustomerNoName: TEdit; + MPRTCodeName: TEdit; + ConNo: TEdit; + MPRTKuanNO: TEdit; + MPRTCode: TEdit; + MPRTKZ: TEdit; + MPRTMF: TEdit; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNO: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1MPRTCode: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DlyDate: TcxGridDBColumn; + v1CustomerNoName: TcxGridDBColumn; + v1MPRTCodeName: TcxGridDBColumn; + v1MPRTMF: TcxGridDBColumn; + v1MPRTKZ: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + v1OrdDefStr1: TcxGridDBColumn; + v1OrdDefStr2: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + v1CPCFBi: TcxGridDBColumn; + v1PBFactory: TcxGridDBColumn; + v1RanFactory: TcxGridDBColumn; + v1OrdQty1: TcxGridDBColumn; + v1OrdQty3: TcxGridDBColumn; + v1OrdQty5: TcxGridDBColumn; + OrdDefStr1: TEdit; + Label2: TLabel; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + cxGridDBColumn7: TcxGridDBColumn; + cxGridDBColumn9: TcxGridDBColumn; + cxGridDBColumn10: TcxGridDBColumn; + cxGridDBColumn11: TcxGridDBColumn; + cxGridDBColumn18: TcxGridDBColumn; + cxGridDBColumn19: TcxGridDBColumn; + cxGridDBColumn20: TcxGridDBColumn; + cxGridDBColumn21: TcxGridDBColumn; + cxGridDBColumn22: TcxGridDBColumn; + cxGridDBColumn23: TcxGridDBColumn; + cxGridDBColumn24: TcxGridDBColumn; + cxGridDBColumn25: TcxGridDBColumn; + cxGridDBColumn26: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ADOQuerySub: TADOQuery; + DSSUB: TDataSource; + v1orddefstr7: TcxGridDBColumn; + V2Column1: TcxGridDBColumn; + Panel4: TPanel; + Label14: TLabel; + Panel10: TPanel; + Image2: TImage; + Button1: TButton; + RadioGroup1: TRadioGroup; + cxTabControl1: TcxTabControl; + v1Column1: TcxGridDBColumn; + RMXLSExport1: TRMXLSExport; + ToolButton2: TToolButton; + v1Column2: TcxGridDBColumn; + procedure FormShow(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure FormDestroy(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBPrintClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); + procedure Image2Click(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + private + procedure initGrid(); + procedure initsub(); + procedure SetStatus(); + { Private declarations } + public + { Public declarations } + end; + +var + FrmFanYangList: TFrmFanYangList; + +implementation + +uses U_DataLink,U_FanYangList_Sub,U_Fun; + +{$R *.dfm} +procedure TFrmFanYangList.SetStatus(); +begin + tbedit.Visible:=false; + tbdel.Visible:=false; + + case cxTabControl1.TabIndex of + 0:begin + // tchk.Visible:=true; + tbedit.Visible:=true; + tbdel.Visible:=true; + end; + 1:begin + // tnochk.Visible:=true; + end; + 2:begin + end; + end; +end; +procedure TFrmFanYangList.initsub(); +begin + with ADOQuerySub do + begin + close; + sql.Clear; + sql.Add('select A.*,B.* from JYOrderFy_Main A '); + sql.add('inner join JYOrderFy_Sub B on B.Mainid=A.Mainid '); + sql.Add('where A.MainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + + open; + end; +end; + +procedure TFrmFanYangList.initGrid(); +begin + with ADOQueryTmp do + begin + close; + sql.Clear; + sql.Add('select A.* from JYOrderFy_Main A '); + // sql.add('inner join JYOrderFy_Sub B on B.Mainid=A.Mainid '); + sql.Add('where A.OrdDate>='''+FormatDateTime('yyyy-MM-dd',BegDate.DateTime)+''' '); + sql.add('and A.OrdDate<'''+FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1)+''' '); + //sql.add('and status=''0'''); + if trim(DParameters1)<>'Ȩ' then + begin + sql.add('and filler='''+trim(DName)+''' '); + end; + if cxTabControl1.TabIndex<2 then + sql.add(' and status ='''+inttostr(cxTabControl1.TabIndex)+''' '); + open; + end; + SCreateCDS20(ADOQueryTmp,Order_Main); + SInitCDSData20(ADOQueryTmp,Order_Main); + TBFind.Click; +end; + +procedure TFrmFanYangList.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption+Tv1.Name,Tv1,'ָʾ¼'); + ReadCxGrid(self.Caption+Tv2.Name,Tv2,'ָʾ¼'); + BegDate.DateTime:=SGetServerDate10(ADOQuerycmd)-30; + EndDate.DateTime:=SGetServerDate10(ADOQuerycmd); + SetStatus(); + initGrid(); +end; + +procedure TFrmFanYangList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TFrmFanYangList.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; +end; + +procedure TFrmFanYangList.FormDestroy(Sender: TObject); +begin + FrmFanYangList:=nil; +end; + +procedure TFrmFanYangList.TBAddClick(Sender: TObject); +begin + try + FrmFanYangListSub:=TFrmFanYangListSub.Create(Application); + with FrmFanYangListSub do + begin + FMainid:=''; + // v1SOrdQty1.Options.Editing:=False; + if ShowModal=1 then + begin + initGrid(); + end; + end; + finally + FrmFanYangListSub.Free; + end; +end; + +procedure TFrmFanYangList.TBRafreshClick(Sender: TObject); +begin + initGrid(); +end; + +procedure TFrmFanYangList.TBFindClick(Sender: TObject); +begin + if ADOQueryTmp.Active=False then Exit; + SDofilter(ADOQueryTmp,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryTmp,Order_Main); + SInitCDSData20(ADOQueryTmp,Order_Main); +end; + +procedure TFrmFanYangList.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + IF trim(order_Main.fieldbyname('Status').AsString)='1' then + begin + application.MessageBox('˲޸','ʾ'); + exit; + end; +{ if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; } + try + FrmFanYangListSub:=TFrmFanYangListSub.Create(Application); + with FrmFanYangListSub do + begin + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + // CustomerNo.Enabled:=False; + // CustomerNoName.Enabled:=False; + OrdDefStr1.Enabled:=False; + if ShowModal=1 then + begin + initGrid(); + end; + end; + finally + FrmFanYangListSub.Free; + end; +end; + +procedure TFrmFanYangList.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + FrmFanYangListSub:=TFrmFanYangListSub.Create(Application); + with FrmFanYangListSub do + begin + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible:=False; + TBSave.Visible:=False; + Panel1.Enabled:=False; + if ShowModal=1 then + begin + initGrid(); + end; + end; + finally + FrmFanYangListSub.Free; + end; +end; + +procedure TFrmFanYangList.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; + IF trim(order_Main.fieldbyname('Status').AsString)='1' then + begin + application.MessageBox('˲ɾ','ʾ'); + exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + close; + sql.clear; + sql.Add('delete from JYOrderFy_Main where Mainid='''+trim(order_Main.fieldbyname('Mainid').AsString)+''' '); + sql.Add('delete from JYOrder_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + execsql; + end; + initGrid(); +end; + +procedure TFrmFanYangList.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid(self.Caption+Tv1.Name,Tv1,'ָʾ¼'); + WriteCxGrid(self.Caption+Tv2.Name,Tv2,'ָʾ¼'); +end; + +procedure TFrmFanYangList.Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + ToolButton1.Click; +end; + +procedure TFrmFanYangList.TBPrintClick(Sender: TObject); +begin + Panel4.Visible:=true; + +end; + +procedure TFrmFanYangList.OrderNoChange(Sender: TObject); +begin + if ADOQueryTmp.Active=False then Exit; + SDofilter(ADOQueryTmp,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryTmp,Order_Main); + SInitCDSData20(ADOQueryTmp,Order_Main); +end; + +procedure TFrmFanYangList.Tv1FocusedRecordChanged( + Sender: TcxCustomGridTableView; APrevFocusedRecord, + AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); +begin + initsub(); +end; + +procedure TFrmFanYangList.Image2Click(Sender: TObject); +begin + Panel4.Visible:=False; +end; + +procedure TFrmFanYangList.Button1Click(Sender: TObject); +var + fPrintFile:string; +begin + if order_Main.IsEmpty then exit; + with ADOQueryPrint do + begin + close; + sql.clear; + sql.add('select A.*,B.*, '); + sql.add('ColorGS=(select count(AA.PRTColor) from '); + sql.add('(select distinct C.PRTColor From JYOrderFY_Sub C where C.Mainid=A.Mainid) AA),'); + sql.Add('PYZJ=(select Sum(C.PRTOrderQty) from JYOrderFY_Sub C where C.Mainid=A.Mainid),'); + sql.Add('m_SOrdQty1=(select Sum(C.SOrdQty1) from JYOrderFY_Sub C where C.Mainid=A.Mainid),'); + sql.Add('m_SOrdQty2=(select Sum(C.SOrdQty2) from JYOrderFY_Sub C where C.Mainid=A.Mainid),'); + sql.Add('MLMoney=(select Sum(C.PRTOrderQty*PrtPrice) from JYOrderFY_Sub C where C.Mainid=A.Mainid)'); + sql.add('from JYOrderFY_Main A '); + sql.add('inner join JYOrderFY_Sub B on B.Mainid=A.Mainid '); + sql.Add('where A.Mainid='''+trim(Order_Main.fieldbyname('Mainid').asstring)+''' '); + open; + end; + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print); + IF RadioGroup1.ItemIndex=2 then + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ָʾƱ.rmf' + else + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf' ; + if FileExists(fPrintFile) then + begin + RMVariables['FS'] :=RadioGroup1.ItemIndex; + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; +end; + +procedure TFrmFanYangList.cxTabControl1Change(Sender: TObject); +begin + SetStatus(); + initgrid(); +end; + +procedure TFrmFanYangList.ToolButton2Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + + try + FrmFanYangListSub:=TFrmFanYangListSub.Create(Application); + with FrmFanYangListSub do + begin + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + CopyInt:=99; + // CustomerNo.Enabled:=False; + // CustomerNoName.Enabled:=False; + // OrdDefStr1.Enabled:=False; + if ShowModal=1 then + begin + initGrid(); + end; + end; + finally + FrmFanYangListSub.Free; + end; +end; + +end. diff --git a/艾登贸易管理/U_FanYangListHZ.dfm b/艾登贸易管理/U_FanYangListHZ.dfm new file mode 100644 index 0000000..00c28e8 --- /dev/null +++ b/艾登贸易管理/U_FanYangListHZ.dfm @@ -0,0 +1,920 @@ +object FrmFanYangListHZ: TFrmFanYangListHZ + Left = -8 + Top = -8 + Width = 1382 + Height = 754 + Caption = #25918#26679#25351#31034#21333#32479#35745 + 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 = 1366 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 89 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + OnClick = ToolButton1Click + end + object TBPrint: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object TChk: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #23457#26680 + ImageIndex = 41 + OnClick = TChkClick + end + object TNoChk: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #25764#38144#23457#26680 + ImageIndex = 86 + Visible = False + OnClick = TNoChkClick + end + object ToolButton2: TToolButton + Left = 402 + Top = 0 + Caption = #23548#20986'Excel' + ImageIndex = 57 + OnClick = ToolButton2Click + end + object TBClose: TToolButton + Left = 491 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1366 + Height = 64 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 33 + Top = 14 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 195 + Top = 14 + Width = 52 + Height = 12 + Caption = #25918#26679#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 353 + Top = 14 + Width = 52 + Height = 12 + Caption = #23458#25143#31616#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 508 + Top = 14 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 195 + Top = 38 + Width = 53 + Height = 12 + Caption = #21512' '#21516' '#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 508 + Top = 38 + Width = 54 + Height = 12 + Caption = 'PO#& '#27454#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 353 + Top = 38 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 667 + Top = 38 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 667 + Top = 14 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 801 + Top = 14 + Width = 39 + Height = 12 + Caption = #19994#21153#32452 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 86 + Top = 10 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 85 + Top = 34 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNoM: TEdit + Tag = 2 + Left = 249 + Top = 10 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoMChange + end + object CustomerNo: TEdit + Tag = 2 + Left = 406 + Top = 10 + Width = 76 + Height = 20 + TabOrder = 3 + OnChange = OrderNoMChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 562 + Top = 10 + Width = 76 + Height = 20 + TabOrder = 4 + OnChange = OrderNoMChange + end + object ConNo: TEdit + Tag = 2 + Left = 249 + Top = 34 + Width = 77 + Height = 20 + TabOrder = 5 + OnChange = OrderNoMChange + end + object MPRTKuanNO: TEdit + Tag = 2 + Left = 562 + Top = 34 + Width = 76 + Height = 20 + TabOrder = 6 + OnChange = OrderNoMChange + end + object MPRTCode: TEdit + Tag = 2 + Left = 406 + Top = 34 + Width = 76 + Height = 20 + TabOrder = 7 + OnChange = OrderNoMChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 696 + Top = 34 + Width = 82 + Height = 20 + TabOrder = 8 + OnChange = OrderNoMChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 696 + Top = 10 + Width = 82 + Height = 20 + TabOrder = 9 + OnChange = OrderNoMChange + end + object OrdDefStr1: TEdit + Tag = 2 + Left = 842 + Top = 10 + Width = 76 + Height = 20 + TabOrder = 10 + OnChange = OrderNoMChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 116 + Width = 1366 + Height = 364 + Align = alTop + TabOrder = 2 + object TV1: TcxGridDBBandedTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = V1PRTOrderQty + end + item + Kind = skSum + Column = V1SOrdQty1 + end + item + Kind = skSum + Column = V1MLF + end + item + Kind = skSum + Column = V1SMPYF + end + item + Kind = skSum + Column = V1SOrdQty2 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnMoving = False + OptionsCustomize.BandMoving = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_TradeManage.Default + Styles.BandHeader = DataLink_TradeManage.Default + Bands = < + item + Options.Moving = False + Width = 1000 + end + item + Caption = #21046#32593#36153 + Options.Moving = False + Width = 165 + end + item + Caption = #25968#30721#36153 + Options.Moving = False + Width = 113 + end + item + Options.Moving = False + Styles.Background = DataLink_TradeManage.FoneRed + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 389 + end + item + Caption = #25910#27454#20449#24687 + Width = 311 + end> + object VOrdDate: TcxGridDBBandedColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 79 + OnCompareRowValuesForCellMerging = VOrdDateCompareRowValuesForCellMerging + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object V1OrdDefStr1: TcxGridDBBandedColumn + Caption = #19994#21153#32452 + DataBinding.FieldName = 'OrdDefStr1' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 47 + OnCompareRowValuesForCellMerging = VOrdDateCompareRowValuesForCellMerging + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object V1Mainid: TcxGridDBBandedColumn + Caption = #25918#26679#21333#32534#21495 + DataBinding.FieldName = 'OrderNoM' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 71 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object V1MPRTCodeName: TcxGridDBBandedColumn + Caption = #21697#21517 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 112 + OnCompareRowValuesForCellMerging = VOrdDateCompareRowValuesForCellMerging + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object V1MPRTCode: TcxGridDBBandedColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'MPRTCode' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 69 + OnCompareRowValuesForCellMerging = VOrdDateCompareRowValuesForCellMerging + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object V1PRTOrderQty: TcxGridDBBandedColumn + Caption = #21305#26679#25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Width = 64 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object V1OrderUnit: TcxGridDBBandedColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 9 + Position.RowIndex = 0 + end + object V1PRTColor: TcxGridDBBandedColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 56 + OnCompareRowValuesForCellMerging = V1PRTColorCompareRowValuesForCellMerging + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object V1OrdQty4: TcxGridDBBandedColumn + Caption = #38754#26009#21333#20215 + DataBinding.FieldName = 'PRTPrice' + HeaderAlignmentHorz = taCenter + Width = 65 + Position.BandIndex = 0 + Position.ColIndex = 10 + Position.RowIndex = 0 + end + object V1SOrdQty1: TcxGridDBBandedColumn + Caption = #23454#38469#20986#36135 + DataBinding.FieldName = 'SOrdQty1' + HeaderAlignmentHorz = taCenter + Width = 59 + Position.BandIndex = 0 + Position.ColIndex = 11 + Position.RowIndex = 0 + end + object V1SOrdQty2: TcxGridDBBandedColumn + Caption = #25104#21697#23492#20986 + DataBinding.FieldName = 'SOrdQty2' + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 12 + Position.RowIndex = 0 + end + object V1MLF: TcxGridDBBandedColumn + Caption = #38754#26009#36153 + DataBinding.FieldName = 'MLF' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 13 + Position.RowIndex = 0 + end + object V1OrdQty5: TcxGridDBBandedColumn + Caption = #21305#26679#36153 + DataBinding.FieldName = 'OrdQty5' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 75 + OnCompareRowValuesForCellMerging = VOrdDateCompareRowValuesForCellMerging + Position.BandIndex = 0 + Position.ColIndex = 14 + Position.RowIndex = 0 + end + object V1OrdQty2: TcxGridDBBandedColumn + Caption = #32593#25968 + DataBinding.FieldName = 'OrdQty2' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 49 + OnCompareRowValuesForCellMerging = VOrdDateCompareRowValuesForCellMerging + Position.BandIndex = 1 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object V1OrdQty1: TcxGridDBBandedColumn + Caption = #21333#20215 + DataBinding.FieldName = 'OrdQty1' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 55 + OnCompareRowValuesForCellMerging = VOrdDateCompareRowValuesForCellMerging + Position.BandIndex = 1 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object V1ZWF: TcxGridDBBandedColumn + Caption = #21512#35745 + DataBinding.FieldName = 'ZWF' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 62 + OnCompareRowValuesForCellMerging = VOrdDateCompareRowValuesForCellMerging + Position.BandIndex = 1 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object V1OrdQty3: TcxGridDBBandedColumn + Caption = #21333#20215 + DataBinding.FieldName = 'OrdQty3' + HeaderAlignmentHorz = taCenter + Width = 51 + Position.BandIndex = 2 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object V1SMPYF: TcxGridDBBandedColumn + Caption = #21512#35745 + DataBinding.FieldName = 'SMPYF' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 62 + Position.BandIndex = 2 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object V1ZJ: TcxGridDBBandedColumn + Caption = #24635#35745 + DataBinding.FieldName = 'ZJ' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 65 + OnCompareRowValuesForCellMerging = VOrdDateCompareRowValuesForCellMerging + Position.BandIndex = 3 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object V1OrdQty6: TcxGridDBBandedColumn + Caption = #24555#36882#36153 + DataBinding.FieldName = 'OrdQty6' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 50 + OnCompareRowValuesForCellMerging = VOrdDateCompareRowValuesForCellMerging + Position.BandIndex = 3 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object V1Note: TcxGridDBBandedColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 127 + OnCompareRowValuesForCellMerging = VOrdDateCompareRowValuesForCellMerging + Position.BandIndex = 3 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object V1OrdDefStr6: TcxGridDBBandedColumn + Caption = #24065#31181 + DataBinding.FieldName = 'OrdDefStr6' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 37 + OnCompareRowValuesForCellMerging = VOrdDateCompareRowValuesForCellMerging + Position.BandIndex = 3 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object V1CustomerNoName: TcxGridDBBandedColumn + Caption = #23458#25143#31616#31216 + DataBinding.FieldName = 'CustomerNo' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 85 + OnCompareRowValuesForCellMerging = VOrdDateCompareRowValuesForCellMerging + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object V1OrdQty7: TcxGridDBBandedColumn + Caption = #25187#27454 + DataBinding.FieldName = 'OrdQty7' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 41 + OnCompareRowValuesForCellMerging = VOrdDateCompareRowValuesForCellMerging + Position.BandIndex = 3 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object V1Orddefdate1: TcxGridDBBandedColumn + Caption = #25910#27454#26085#26399 + DataBinding.FieldName = 'Orddefdate1' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 81 + OnCompareRowValuesForCellMerging = VOrdDateCompareRowValuesForCellMerging + Position.BandIndex = 4 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object V1OrdQty9: TcxGridDBBandedColumn + Caption = #25910#27454#37329#39069 + DataBinding.FieldName = 'OrdQty9' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 63 + OnCompareRowValuesForCellMerging = VOrdDateCompareRowValuesForCellMerging + Position.BandIndex = 4 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object V1OrddefNote1: TcxGridDBBandedColumn + Caption = #25910#27454#22791#27880 + DataBinding.FieldName = 'OrddefNote1' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 147 + OnCompareRowValuesForCellMerging = VOrdDateCompareRowValuesForCellMerging + Position.BandIndex = 4 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object V1conNo: TcxGridDBBandedColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'conNo' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 70 + OnCompareRowValuesForCellMerging = VOrdDateCompareRowValuesForCellMerging + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object V1orddefstr7: TcxGridDBBandedColumn + Caption = #32467#31639#26041#24335 + DataBinding.FieldName = 'orddefstr7' + HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Width = 69 + OnCompareRowValuesForCellMerging = VOrdDateCompareRowValuesForCellMerging + Position.BandIndex = 3 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = TV1 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 96 + Width = 1366 + Height = 20 + Align = alTop + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Style = 9 + TabIndex = 0 + TabOrder = 3 + Tabs.Strings = ( + #26410#23457#26680 + #24050#23457#26680 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectBottom = 20 + ClientRectRight = 1366 + ClientRectTop = 19 + end + object PanelSh: TPanel + Left = 428 + Top = 156 + Width = 401 + Height = 173 + BevelInner = bvLowered + BevelOuter = bvSpace + TabOrder = 4 + Visible = False + object Label5: TLabel + Left = 28 + Top = 32 + Width = 52 + Height = 12 + Caption = #25910#27454#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 204 + Top = 32 + Width = 52 + Height = 12 + Caption = #25910#27454#37329#39069 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 28 + Top = 56 + Width = 52 + Height = 12 + Caption = #25910#27454#22791#27880 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Orddefdate1: TDateTimePicker + Left = 84 + Top = 28 + Width = 90 + Height = 20 + Date = 42066.617078726850000000 + Format = 'yyyy-MM-dd' + Time = 42066.617078726850000000 + TabOrder = 0 + end + object ordQty9: TcxCurrencyEdit + Left = 260 + Top = 28 + Properties.DisplayFormat = '0.00;-,0.00' + TabOrder = 1 + Width = 90 + end + object OrddefNote1: TMemo + Left = 83 + Top = 56 + Width = 270 + Height = 53 + TabOrder = 2 + end + object Button1: TButton + Left = 80 + Top = 124 + Width = 75 + Height = 25 + Caption = #23457#26680#36890#36807 + TabOrder = 3 + OnClick = Button1Click + end + object Button2: TButton + Left = 232 + Top = 124 + Width = 75 + Height = 25 + Caption = #21462#28040#23457#26680 + TabOrder = 4 + OnClick = Button2Click + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 304 + Top = 205 + end + object ADOQueryTmp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 274 + Top = 288 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 309 + Top = 268 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 254 + Top = 353 + 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 = 362 + Top = 198 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 226 + Top = 247 + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 150 + Top = 271 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 279 + Top = 185 + end +end diff --git a/艾登贸易管理/U_FanYangListHZ.pas b/艾登贸易管理/U_FanYangListHZ.pas new file mode 100644 index 0000000..2f53ad0 --- /dev/null +++ b/艾登贸易管理/U_FanYangListHZ.pas @@ -0,0 +1,399 @@ +unit U_FanYangListHZ; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxCalendar, RM_Dataset, RM_System, + RM_Common, RM_Class, RM_GridReport, DBClient, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, StdCtrls, ComCtrls, ExtCtrls, + ToolWin, cxPC, cxGridBandedTableView, cxGridDBBandedTableView, + cxCustomPivotGrid, cxDBPivotGrid, cxContainer, cxTextEdit, cxCurrencyEdit; + +type + TFrmFanYangListHZ = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + ToolButton1: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + Label3: TLabel; + Label4: TLabel; + Label8: TLabel; + Label9: TLabel; + Label10: TLabel; + Label11: TLabel; + Label12: TLabel; + Label13: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + OrderNoM: TEdit; + CustomerNo: TEdit; + MPRTCodeName: TEdit; + ConNo: TEdit; + MPRTKuanNO: TEdit; + MPRTCode: TEdit; + MPRTKZ: TEdit; + MPRTMF: TEdit; + cxGrid1: TcxGrid; + cxGrid1Level1: TcxGridLevel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + TChk: TToolButton; + TNoChk: TToolButton; + cxTabControl1: TcxTabControl; + TV1: TcxGridDBBandedTableView; + VOrdDate: TcxGridDBBandedColumn; + V1OrdDefStr1: TcxGridDBBandedColumn; + V1Mainid: TcxGridDBBandedColumn; + V1MPRTCodeName: TcxGridDBBandedColumn; + V1MPRTCode: TcxGridDBBandedColumn; + V1PRTColor: TcxGridDBBandedColumn; + V1PRTOrderQty: TcxGridDBBandedColumn; + V1OrdQty4: TcxGridDBBandedColumn; + V1SOrdQty1: TcxGridDBBandedColumn; + V1MLF: TcxGridDBBandedColumn; + V1OrdQty5: TcxGridDBBandedColumn; + V1OrdQty2: TcxGridDBBandedColumn; + V1OrdQty1: TcxGridDBBandedColumn; + V1ZWF: TcxGridDBBandedColumn; + V1OrdQty3: TcxGridDBBandedColumn; + V1SMPYF: TcxGridDBBandedColumn; + V1ZJ: TcxGridDBBandedColumn; + V1Note: TcxGridDBBandedColumn; + V1OrderUnit: TcxGridDBBandedColumn; + V1OrdQty6: TcxGridDBBandedColumn; + V1SOrdQty2: TcxGridDBBandedColumn; + V1OrdDefStr6: TcxGridDBBandedColumn; + OrdDefStr1: TEdit; + Label2: TLabel; + V1CustomerNoName: TcxGridDBBandedColumn; + V1OrdQty7: TcxGridDBBandedColumn; + PanelSh: TPanel; + Label5: TLabel; + Orddefdate1: TDateTimePicker; + Label6: TLabel; + ordQty9: TcxCurrencyEdit; + Label7: TLabel; + OrddefNote1: TMemo; + Button1: TButton; + Button2: TButton; + V1Orddefdate1: TcxGridDBBandedColumn; + V1OrdQty9: TcxGridDBBandedColumn; + V1OrddefNote1: TcxGridDBBandedColumn; + ToolButton2: TToolButton; + V1conNo: TcxGridDBBandedColumn; + V1orddefstr7: TcxGridDBBandedColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure FormDestroy(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure TChkClick(Sender: TObject); + procedure TNoChkClick(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBPrintClick(Sender: TObject); + procedure VOrdDateCompareRowValuesForCellMerging(Sender: TcxGridColumn; + ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; + const AValue1: Variant; ARow2: TcxGridDataRow; + AProperties2: TcxCustomEditProperties; const AValue2: Variant; + var AAreEqual: Boolean); + procedure V1PRTColorCompareRowValuesForCellMerging( + Sender: TcxGridColumn; ARow1: TcxGridDataRow; + AProperties1: TcxCustomEditProperties; const AValue1: Variant; + ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; + const AValue2: Variant; var AAreEqual: Boolean); + procedure Button1Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + private + procedure initGrid(); + { Private declarations } + public + { Public declarations } + end; + +var + FrmFanYangListHZ: TFrmFanYangListHZ; + +implementation + +uses U_DataLink,U_FanYangList_Sub,U_Fun; + +{$R *.dfm} + +procedure TFrmFanYangListHZ.initGrid(); +begin + with ADOQueryTmp do + begin + Filtered:=False; + close; + sql.Clear; + sql.add('exec P_Get_FYList '); + sql.add('@begdate='''+formatdatetime('yyyy-MM-dd',begdate.DateTime)+''' '); + sql.Add(',@endDate='''+formatdatetime('yyyy-MM-dd',endDate.DateTime+1)+''' '); + open; + end; + SCreateCDS20(ADOQueryTmp,Order_Main); + SInitCDSData20(ADOQueryTmp,Order_Main); + TBFind.Click; +end; + +procedure TFrmFanYangListHZ.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TFrmFanYangListHZ.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; +end; + +procedure TFrmFanYangListHZ.FormDestroy(Sender: TObject); +begin + FrmFanYangListHZ:=nil; +end; + +procedure TFrmFanYangListHZ.FormShow(Sender: TObject); +begin + ReadCxBandedGrid(self.Caption+Tv1.Name+'5',Tv1,'ָʾͳ'); + BegDate.DateTime:=SGetServerDate10(ADOQueryPrint)-15; + EndDate.DateTime:=SGetServerDate10(ADOQueryPrint); + initGrid(); +end; + +procedure TFrmFanYangListHZ.TBRafreshClick(Sender: TObject); +begin + initGrid(); +end; + +procedure TFrmFanYangListHZ.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxBandedGrid(self.Caption+Tv1.Name+'5',Tv1,'ָʾͳ'); +end; + +procedure TFrmFanYangListHZ.TBFindClick(Sender: TObject); +var strwhere: string; +begin + if ADOQueryTmp.Active=False then Exit; + strwhere:=SGetFilters(Panel1,1,2); + IF strwhere='' then + begin + if cxTabControl1.TabIndex<2 then + strwhere:=' status ='''+inttostr(cxTabControl1.TabIndex)+''''; + end + else + begin + if cxTabControl1.TabIndex<2 then + strwhere:=strwhere+' and status ='''+inttostr(cxTabControl1.TabIndex)+''''; + end; + SDofilter(ADOQueryTmp,strwhere); + SCreateCDS20(ADOQueryTmp,Order_Main); + SInitCDSData20(ADOQueryTmp,Order_Main); +end; + +procedure TFrmFanYangListHZ.OrderNoMChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TFrmFanYangListHZ.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + FrmFanYangListSub:=TFrmFanYangListSub.Create(Application); + with FrmFanYangListSub do + begin + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible:=False; + TBSave.Visible:=False; + Panel1.Enabled:=False; + if ShowModal=1 then + begin + initGrid(); + end; + end; + finally + FrmFanYangListSub.Free; + end; +end; + +procedure TFrmFanYangListHZ.cxTabControl1Change(Sender: TObject); +begin + Tchk.Visible:=False; + TNochk.Visible:=False; + if CxTabControl1.TabIndex=0 then + begin + Tchk.Visible:=True; + end; + if CxTabControl1.TabIndex=1 then + begin + TNochk.Visible:=true; + end; + initGrid(); +end; + +procedure TFrmFanYangListHZ.TChkClick(Sender: TObject); +begin + if order_Main.IsEmpty then exit; + + PanelSh.Left:=(Width-PanelSh.Width) div 2; + PanelSh.top:=(Height-PanelSh.Height-100) div 2; + Orddefdate1.DateTime:=date(); + ordQty9.Text:=''; + OrddefNote1.Text:=''; + PanelSh.Visible:=true; + +end; + +procedure TFrmFanYangListHZ.TNoChkClick(Sender: TObject); +begin + if order_Main.IsEmpty then exit; + try + with ADOQueryTmp do + begin + close; + sql.Clear; + sql.add('update jYorderFY_Main set Chker='''',Chktime=Null,status=''0'' '); + sql.Add(',Orddefdate1=null,ordQty9=0,OrddefNote1='''' '); + sql.add('where Mainid='''+trim(Order_Main.fieldbyname('Mainid').asstring)+''' '); + execsql; + end; + application.MessageBox('ɹ','ʾϢ'); + initGrid(); + except + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TFrmFanYangListHZ.Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + ToolButton1.Click; +end; + +procedure TFrmFanYangListHZ.TBPrintClick(Sender: TObject); +var + fPrintFile:string; +begin + if order_Main.IsEmpty then exit; + {with ADOQueryPrint do + begin + close; + sql.clear; + sql.Add('select A.*,B.*,'); + //Sql.add('CLRGS=(select count(AA.PRTColor) from (select distinct D.PRTColor from JYOrderFy_Sub D where D.Mainid=A.Mainid ) AA),'); + //sql.add('SumOrdQty1=(select Sum(D.SOrdQty1) from JYOrderFY_Sub D where D.Mainid=A.Mainid ),'); + //sql.add('ZJ=(select C.OrdQty5*Count(D.PRTColor)+C.OrdQty1*C.OrdQty2+C.OrdQty3*Sum(D.SOrdQty1)+C.OrdQty4*Sum(D.SOrdQty1)'); + //sql.add(' from JYOrderFy_Main C inner join JYOrderFy_Sub D on D.Mainid=C.Mainid where C.Mainid=A.Mainid '); + //sql.add('group by C.OrdQty5,C.OrdQty1,C.OrdQty2,C.OrdQty3,C.OrdQty4 ),'); + sql.add('ZJ=(select (AA.OrdQty5*Count(AA.PRTColor)+AA.OrdQty1*AA.OrdQty2+AA.OrdQty3*Sum(SL)+AA.OrdQty4*Sum(SL)) from '); + sql.add('(select E.PRTColor,F.OrdQty5,F.OrdQty1,F.OrdQty2,F.OrdQty3,F.OrdQty4,Sum(E.SOrdQty1) SL From JYOrderFy_Sub E inner join '); + sql.add('JYOrderFy_Main F on F.Mainid=E.Mainid where F.Mainid=A.Mainid group by E.PRTColor,F.OrdQty5,F.OrdQty1,F.OrdQty2,F.OrdQty3,F.OrdQty4 ) AA '); + sql.add('group by AA.OrdQty5,AA.OrdQty1,AA.OrdQty2,AA.OrdQty3,AA.OrdQty4) ,'); + + sql.add('MLF=SOrdQty1*OrdQty4,ZWF=OrdQty2*OrdQty1,SMPYF=OrdQty3*SOrdQty1 '); + sql.add('from JYOrderFy_Main A '); + sql.add('inner join JYOrderFy_Sub B on B.Mainid=A.Mainid '); + sql.Add('where A.Mainid='''+trim(Order_Main.fieldbyname('Mainid').asstring)+''' '); + open; + end; + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print);} + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ָʾͳ.rmf' ; + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾͳ.rmf'),'ʾ',0); + end; +end; + +procedure TFrmFanYangListHZ.VOrdDateCompareRowValuesForCellMerging( + Sender: TcxGridColumn; ARow1: TcxGridDataRow; + AProperties1: TcxCustomEditProperties; const AValue1: Variant; + ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; + const AValue2: Variant; var AAreEqual: Boolean); +begin + if ARow1.Values[V1Mainid.Index]=ARow2.Values[V1Mainid.Index] then + AAreEqual:=True + else + AAreEqual:=False; +end; + +procedure TFrmFanYangListHZ.V1PRTColorCompareRowValuesForCellMerging( + Sender: TcxGridColumn; ARow1: TcxGridDataRow; + AProperties1: TcxCustomEditProperties; const AValue1: Variant; + ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; + const AValue2: Variant; var AAreEqual: Boolean); +begin + if (ARow1.Values[V1Mainid.Index]=ARow2.Values[V1Mainid.Index]) and + (ARow1.Values[V1PRTColor.Index]=ARow2.Values[V1PRTColor.Index]) then + begin + AAreEqual:=true + end + else + AAreEqual:=False; +end; + +procedure TFrmFanYangListHZ.Button1Click(Sender: TObject); +begin + try + with ADOQueryTmp do + begin + close; + sql.Clear; + sql.add(' update jYorderFY_Main set Chker='''+Trim(DName)+''',Chktime=getdate(),status=''1'' '); + IF strTofloatdef(trim(OrdQty9.Text),0)<>0 then + begin + sql.Add(',Orddefdate1='''+formatdateTime('yyyy-MM-dd',Orddefdate1.DateTime)+''' '); + sql.Add(',OrdQty9='''+floattostr(strTofloatdef(trim(OrdQty9.Text),0))+''' '); + sql.Add(',OrddefNote1='''+trim(OrddefNote1.Text)+''' '); + end; + sql.add(' where Mainid='''+trim(Order_Main.fieldbyname('Mainid').asstring)+''' '); + execsql; + end; + PanelSh.Visible:=false; + application.MessageBox('˳ɹ','ʾϢ'); + initGrid(); + except + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TFrmFanYangListHZ.Button2Click(Sender: TObject); +begin + PanelSh.Visible:=false; +end; + +procedure TFrmFanYangListHZ.ToolButton2Click(Sender: TObject); +begin + IF Order_Main.IsEmpty then exit; + TcxGridToExcel(self.Caption,CXGrid1); +end; + +end. diff --git a/艾登贸易管理/U_FanYangList_Sub.dfm b/艾登贸易管理/U_FanYangList_Sub.dfm new file mode 100644 index 0000000..8777f08 --- /dev/null +++ b/艾登贸易管理/U_FanYangList_Sub.dfm @@ -0,0 +1,1119 @@ +object FrmFanYangListSub: TFrmFanYangListSub + Left = 191 + Top = 0 + Width = 1162 + Height = 712 + Caption = #25918#26679#25351#31034#21333#24405#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + WindowState = wsMaximized + OnCreate = FormCreate + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1146 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 393 + Width = 1146 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 1 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 422 + Width = 1146 + Height = 247 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + Column = v1PRTOrderQty + end + item + Format = '0' + Position = spFooter + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1SOrdQty1 + end + item + Kind = skSum + Column = v1SOrdQty2 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1XHNo: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'XHNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 35 + end + object v1SOrddefstr1: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'SOrddefstr1' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 85 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = False + Properties.OnButtonClick = v1PRTColorPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 92 + end + object v1SOrddefstr4: TcxGridDBColumn + Caption = #39068#33394'('#33521#25991')' + DataBinding.FieldName = 'SOrddefstr4' + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1PRTHX: TcxGridDBColumn + Caption = #33457#22411#33457#21495 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #21305#26679#25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 82 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1OrderUnitPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 77 + end + object v1Column1: TcxGridDBColumn + Caption = #38754#26009#21333#20215 + DataBinding.FieldName = 'PRTPRice' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1SOrdQty1: TcxGridDBColumn + Caption = #23454#38469#20986#36135 + DataBinding.FieldName = 'SOrdQty1' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1SOrdQty2: TcxGridDBColumn + Caption = #25104#21697#23492#20986 + DataBinding.FieldName = 'SOrdQty2' + HeaderAlignmentHorz = taCenter + Width = 64 + end + object v1SOrddefstr3: TcxGridDBColumn + Caption = #24037#21378#32534#21495 + DataBinding.FieldName = 'SOrddefstr3' + HeaderAlignmentHorz = taCenter + Width = 71 + end + object v1SOrddefstr5: TcxGridDBColumn + Caption = #36873#39033 + DataBinding.FieldName = 'SOrddefstr5' + HeaderAlignmentHorz = taCenter + Width = 67 + end + object v1SOrdDefNote1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'SOrdDefNote1' + HeaderAlignmentHorz = taCenter + Width = 169 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel1: TPanel + Left = 0 + Top = 29 + Width = 1146 + Height = 364 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 3 + object Label1: TLabel + Left = 37 + Top = 17 + Width = 65 + Height = 12 + Caption = #25918#26679#21333#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 213 + Top = 88 + Width = 67 + Height = 12 + Caption = #26579' '#21378#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 213 + Top = 17 + Width = 65 + Height = 12 + Caption = #21512#21516#32534#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 571 + Top = 17 + Width = 65 + Height = 12 + Caption = #21046#21333#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label14: TLabel + Left = 571 + Top = 41 + Width = 66 + Height = 12 + Caption = #19994' '#21153' '#32452#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 37 + Top = 65 + Width = 67 + Height = 12 + Caption = #38376' '#24133#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 213 + Top = 65 + Width = 67 + Height = 12 + Caption = #20811' '#37325#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 389 + Top = 41 + Width = 65 + Height = 12 + Caption = #20135#21697#21517#31216#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 571 + Top = 65 + Width = 66 + Height = 12 + Caption = #29983' '#20135' '#32452#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label16: TLabel + Left = 37 + Top = 88 + Width = 66 + Height = 12 + Caption = #22383' '#24067' '#21378#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 213 + Top = 188 + Width = 66 + Height = 12 + Caption = #21305' '#26679' '#36153#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label24: TLabel + Left = 389 + Top = 188 + Width = 66 + Height = 12 + Caption = #24555' '#36882' '#36153#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label25: TLabel + Left = 37 + Top = 41 + Width = 65 + Height = 12 + Caption = #20132#36135#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label26: TLabel + Left = 213 + Top = 41 + Width = 65 + Height = 12 + Caption = #20135#21697#32534#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label28: TLabel + Left = 571 + Top = 88 + Width = 62 + Height = 13 + Caption = 'SEASON'#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -13 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label29: TLabel + Left = 389 + Top = 17 + Width = 67 + Height = 12 + Caption = #23458' '#25143#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label35: TLabel + Left = 389 + Top = 65 + Width = 67 + Height = 12 + Caption = 'PO#& '#27454#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label42: TLabel + Left = 37 + Top = 188 + Width = 78 + Height = 12 + Caption = #25968#30721#21943#21360#36153#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label43: TLabel + Left = 37 + Top = 164 + Width = 67 + Height = 12 + Caption = #27801' '#23376#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label45: TLabel + Left = 389 + Top = 88 + Width = 67 + Height = 12 + Caption = #25104' '#20221#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label48: TLabel + Left = 389 + Top = 164 + Width = 66 + Height = 12 + Caption = #21046' '#32593' '#36153#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 37 + Top = 291 + Width = 67 + Height = 12 + Caption = #22791' '#27880#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 571 + Top = 164 + Width = 67 + Height = 12 + Caption = #32593' '#25968#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 571 + Top = 188 + Width = 67 + Height = 12 + Caption = #24065' '#31181#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 37 + Top = 232 + Width = 65 + Height = 12 + Caption = #27880#24847#20107#39033#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 213 + Top = 113 + Width = 66 + Height = 12 + Caption = #32553' '#27700' '#29575#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label15: TLabel + Left = 389 + Top = 113 + Width = 67 + Height = 12 + Caption = #25197' '#21147#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label17: TLabel + Left = 571 + Top = 113 + Width = 68 + Height = 12 + Caption = 'PH '#20540#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 37 + Top = 112 + Width = 65 + Height = 12 + Caption = #27979#35797#26631#20934#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label30: TLabel + Left = 37 + Top = 138 + Width = 65 + Height = 12 + Caption = #27838#33394#29282#24230#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label31: TLabel + Left = 213 + Top = 138 + Width = 65 + Height = 12 + Caption = #27700#27927#29282#24230#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label20: TLabel + Left = 389 + Top = 138 + Width = 67 + Height = 12 + Caption = #24178' '#30952#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label21: TLabel + Left = 571 + Top = 138 + Width = 67 + Height = 12 + Caption = #28287' '#30952#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label33: TLabel + Left = 213 + Top = 164 + Width = 91 + Height = 12 + Caption = #38750#27695#28418#33394#29282#24230#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label22: TLabel + Left = 37 + Top = 212 + Width = 67 + Height = 12 + Caption = #25187' '#27454#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label23: TLabel + Left = 213 + Top = 212 + Width = 65 + Height = 12 + Caption = #32467#31639#26041#24335#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object OrderNo: TEdit + Left = 101 + Top = 14 + Width = 98 + Height = 20 + Enabled = False + TabOrder = 0 + Text = #33258#21160#20135#29983 + end + object ConNo: TEdit + Tag = 2 + Left = 278 + Top = 14 + Width = 98 + Height = 20 + TabOrder = 1 + end + object OrdDate: TDateTimePicker + Tag = 2 + Left = 634 + Top = 13 + Width = 98 + Height = 20 + BevelInner = bvNone + Date = 0.670856296288548100 + Format = 'yyyy-MM-dd' + Time = 0.670856296288548100 + ShowCheckbox = True + TabOrder = 2 + end + object DLYDate: TDateTimePicker + Tag = 2 + Left = 101 + Top = 37 + Width = 98 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 3 + end + object CPCFBi: TEdit + Tag = 2 + Left = 456 + Top = 85 + Width = 98 + Height = 20 + TabOrder = 4 + end + object OrdDefStr2: TBtnEditA + Tag = 2 + Left = 634 + Top = 61 + Width = 98 + Height = 20 + TabOrder = 5 + OnBtnClick = OrdDefStr2BtnClick + end + object OrdDefStr3: TBtnEditA + Tag = 2 + Left = 634 + Top = 84 + Width = 98 + Height = 20 + TabOrder = 6 + OnBtnClick = OrdDefStr3BtnClick + end + object MPRTKuanNO: TEdit + Tag = 2 + Left = 456 + Top = 62 + Width = 98 + Height = 20 + TabOrder = 7 + end + object MPRTCodeName: TBtnEditA + Tag = 2 + Left = 456 + Top = 37 + Width = 98 + Height = 20 + TabOrder = 8 + OnBtnClick = MPRTCodeNameBtnClick + end + object OrdDefStr1: TBtnEditA + Tag = 2 + Left = 634 + Top = 37 + Width = 98 + Height = 20 + TabOrder = 9 + OnBtnClick = OrdDefStr1BtnClick + end + object CustomerNoName: TBtnEditA + Tag = 2 + Left = 493 + Top = 13 + Width = 61 + Height = 20 + TabOrder = 10 + OnBtnClick = CustomerNoNameBtnClick + end + object RanFactory: TBtnEditA + Tag = 2 + Left = 278 + Top = 85 + Width = 98 + Height = 20 + TabOrder = 11 + OnBtnClick = RanFactoryBtnClick + end + object PBFactory: TBtnEditA + Tag = 2 + Left = 101 + Top = 84 + Width = 98 + Height = 20 + TabOrder = 12 + OnBtnClick = PBFactoryBtnClick + end + object MPRTKZ: TBtnEditA + Tag = 2 + Left = 278 + Top = 61 + Width = 98 + Height = 20 + TabOrder = 13 + OnBtnClick = MPRTKZBtnClick + end + object MPRTMF: TBtnEditA + Tag = 2 + Left = 101 + Top = 61 + Width = 98 + Height = 20 + TabOrder = 14 + OnBtnClick = MPRTMFBtnClick + end + object MPRTCode: TBtnEditA + Tag = 2 + Left = 278 + Top = 37 + Width = 98 + Height = 20 + TabOrder = 15 + OnBtnClick = MPRTCodeBtnClick + end + object OrdDefStr4: TBtnEditA + Tag = 2 + Left = 101 + Top = 160 + Width = 98 + Height = 20 + TabOrder = 16 + OnBtnClick = OrdDefStr4BtnClick + end + object OrdQty1: TcxCurrencyEdit + Tag = 2 + Left = 456 + Top = 160 + Properties.AssignedValues.DisplayFormat = True + TabOrder = 17 + Width = 98 + end + object OrdQty5: TcxCurrencyEdit + Tag = 2 + Left = 278 + Top = 184 + Properties.AssignedValues.DisplayFormat = True + TabOrder = 18 + Width = 98 + end + object OrdQty3: TcxCurrencyEdit + Tag = 2 + Left = 113 + Top = 184 + Properties.AssignedValues.DisplayFormat = True + TabOrder = 19 + Width = 84 + end + object OrdQty6: TcxCurrencyEdit + Tag = 2 + Left = 456 + Top = 184 + Properties.AssignedValues.DisplayFormat = True + TabOrder = 20 + Width = 98 + end + object Note: TMemo + Tag = 2 + Left = 101 + Top = 293 + Width = 631 + Height = 62 + Lines.Strings = ( + '') + ScrollBars = ssVertical + TabOrder = 21 + end + object OrdFlag1: TCheckBox + Tag = 2 + Left = 751 + Top = 14 + Width = 97 + Height = 17 + Caption = #26159#21542#35745#31639#36153#29992 + Checked = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + State = cbChecked + TabOrder = 22 + Visible = False + end + object OrdQty2: TcxCurrencyEdit + Tag = 2 + Left = 634 + Top = 160 + Properties.AssignedValues.DisplayFormat = True + TabOrder = 23 + Width = 98 + end + object OrdDefStr6: TBtnEditA + Tag = 2 + Left = 634 + Top = 184 + Width = 98 + Height = 20 + TabOrder = 24 + OnBtnClick = OrdDefStr6BtnClick + end + object MPRTTeBieNote: TMemo + Tag = 2 + Left = 101 + Top = 230 + Width = 631 + Height = 62 + Lines.Strings = ( + '') + ScrollBars = ssVertical + TabOrder = 25 + OnDblClick = MPRTTeBieNoteDblClick + end + object MPRTPH: TBtnEditA + Tag = 2 + Left = 634 + Top = 109 + Width = 98 + Height = 20 + TabOrder = 26 + OnBtnClick = MPRTPHBtnClick + end + object MPRTNiuDu: TBtnEditA + Tag = 2 + Left = 456 + Top = 109 + Width = 98 + Height = 20 + TabOrder = 27 + OnBtnClick = MPRTNiuDuBtnClick + end + object MPRTSL: TBtnEditA + Tag = 2 + Left = 278 + Top = 109 + Width = 98 + Height = 20 + TabOrder = 28 + OnBtnClick = MPRTSLBtnClick + end + object OrdDefStr5: TBtnEditA + Tag = 2 + Left = 101 + Top = 109 + Width = 98 + Height = 20 + TabOrder = 29 + OnBtnClick = OrdDefStr5BtnClick + end + object MPRTColorLaoDu4: TBtnEditA + Tag = 2 + Left = 278 + Top = 134 + Width = 98 + Height = 20 + TabOrder = 30 + OnBtnClick = MPRTColorLaoDu4BtnClick + end + object MPRTColorLaoDu3: TBtnEditA + Tag = 2 + Left = 101 + Top = 134 + Width = 98 + Height = 20 + TabOrder = 31 + OnBtnClick = MPRTColorLaoDu3BtnClick + end + object MPRTDingPoLv: TBtnEditA + Tag = 2 + Left = 300 + Top = 160 + Width = 77 + Height = 20 + TabOrder = 32 + OnBtnClick = MPRTDingPoLvBtnClick + end + object MPRTColorLaoDu1: TBtnEditA + Tag = 2 + Left = 456 + Top = 134 + Width = 98 + Height = 20 + TabOrder = 33 + OnBtnClick = MPRTColorLaoDu1BtnClick + end + object MPRTColorLaoDu2: TBtnEditA + Tag = 2 + Left = 634 + Top = 134 + Width = 98 + Height = 20 + TabOrder = 34 + OnBtnClick = MPRTColorLaoDu2BtnClick + end + object CustomerNo: TEdit + Tag = 2 + Left = 456 + Top = 13 + Width = 37 + Height = 20 + TabOrder = 35 + end + object OrdQty7: TcxCurrencyEdit + Tag = 2 + Left = 100 + Top = 208 + Properties.AssignedValues.DisplayFormat = True + TabOrder = 36 + Width = 98 + end + object orddefstr7: TComboBox + Tag = 2 + Left = 279 + Top = 208 + Width = 98 + Height = 20 + ItemHeight = 12 + TabOrder = 37 + Items.Strings = ( + '' + #20813#36153 + #22823#36135#35797#26679) + end + end + object DataSource1: TDataSource + DataSet = Order_Sub + Left = 369 + Top = 490 + end + object Order_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 336 + Top = 490 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 300 + Top = 491 + end + object ADOQueryTmp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 261 + Top = 491 + end +end diff --git a/艾登贸易管理/U_FanYangList_Sub.pas b/艾登贸易管理/U_FanYangList_Sub.pas new file mode 100644 index 0000000..18ce479 --- /dev/null +++ b/艾登贸易管理/U_FanYangList_Sub.pas @@ -0,0 +1,887 @@ +unit U_FanYangList_Sub; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxButtonEdit, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, ComCtrls, ToolWin, ExtCtrls, + StdCtrls, BtnEdit, cxContainer, cxTextEdit, cxCurrencyEdit, ADODB, + DBClient,strutils; + +type + TFrmFanYangListSub = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1XHNo: TcxGridDBColumn; + v1SOrddefstr1: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + v1PRTHX: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1SOrdDefNote1: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + Panel1: TPanel; + Label1: TLabel; + Label7: TLabel; + Label10: TLabel; + Label3: TLabel; + Label14: TLabel; + Label12: TLabel; + Label13: TLabel; + Label2: TLabel; + Label6: TLabel; + Label16: TLabel; + Label19: TLabel; + Label24: TLabel; + Label25: TLabel; + Label26: TLabel; + Label28: TLabel; + Label29: TLabel; + Label35: TLabel; + Label42: TLabel; + Label43: TLabel; + Label45: TLabel; + Label48: TLabel; + OrderNo: TEdit; + ConNo: TEdit; + OrdDate: TDateTimePicker; + DLYDate: TDateTimePicker; + CPCFBi: TEdit; + OrdDefStr2: TBtnEditA; + OrdDefStr3: TBtnEditA; + MPRTKuanNO: TEdit; + MPRTCodeName: TBtnEditA; + OrdDefStr1: TBtnEditA; + CustomerNoName: TBtnEditA; + RanFactory: TBtnEditA; + PBFactory: TBtnEditA; + MPRTKZ: TBtnEditA; + MPRTMF: TBtnEditA; + MPRTCode: TBtnEditA; + OrdDefStr4: TBtnEditA; + OrdQty1: TcxCurrencyEdit; + OrdQty5: TcxCurrencyEdit; + OrdQty3: TcxCurrencyEdit; + OrdQty6: TcxCurrencyEdit; + Label4: TLabel; + Note: TMemo; + OrdFlag1: TCheckBox; + Label5: TLabel; + OrdQty2: TcxCurrencyEdit; + Label8: TLabel; + OrdDefStr6: TBtnEditA; + v1SOrddefstr4: TcxGridDBColumn; + v1SOrdQty1: TcxGridDBColumn; + v1SOrddefstr3: TcxGridDBColumn; + v1SOrddefstr5: TcxGridDBColumn; + Label9: TLabel; + MPRTTeBieNote: TMemo; + Label11: TLabel; + Label15: TLabel; + Label17: TLabel; + MPRTPH: TBtnEditA; + MPRTNiuDu: TBtnEditA; + MPRTSL: TBtnEditA; + Label18: TLabel; + OrdDefStr5: TBtnEditA; + Label30: TLabel; + Label31: TLabel; + MPRTColorLaoDu4: TBtnEditA; + MPRTColorLaoDu3: TBtnEditA; + Label20: TLabel; + Label21: TLabel; + Label33: TLabel; + MPRTDingPoLv: TBtnEditA; + MPRTColorLaoDu1: TBtnEditA; + MPRTColorLaoDu2: TBtnEditA; + DataSource1: TDataSource; + Order_Sub: TClientDataSet; + ADOQueryCmd: TADOQuery; + ADOQueryTmp: TADOQuery; + CustomerNo: TEdit; + v1Column1: TcxGridDBColumn; + v1SOrdQty2: TcxGridDBColumn; + Label22: TLabel; + OrdQty7: TcxCurrencyEdit; + Label23: TLabel; + orddefstr7: TComboBox; + procedure FormCreate(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure MPRTCodeBtnClick(Sender: TObject); + procedure MPRTTeBieNoteDblClick(Sender: TObject); + procedure CustomerNoNameBtnClick(Sender: TObject); + procedure v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure MPRTCodeNameBtnClick(Sender: TObject); + procedure OrdDefStr1BtnClick(Sender: TObject); + procedure OrdDefStr2BtnClick(Sender: TObject); + procedure MPRTMFBtnClick(Sender: TObject); + procedure MPRTKZBtnClick(Sender: TObject); + procedure PBFactoryBtnClick(Sender: TObject); + procedure RanFactoryBtnClick(Sender: TObject); + procedure OrdDefStr3BtnClick(Sender: TObject); + procedure OrdDefStr5BtnClick(Sender: TObject); + procedure MPRTSLBtnClick(Sender: TObject); + procedure MPRTNiuDuBtnClick(Sender: TObject); + procedure MPRTPHBtnClick(Sender: TObject); + procedure MPRTColorLaoDu3BtnClick(Sender: TObject); + procedure MPRTColorLaoDu4BtnClick(Sender: TObject); + procedure MPRTColorLaoDu1BtnClick(Sender: TObject); + procedure MPRTColorLaoDu2BtnClick(Sender: TObject); + procedure OrdDefStr4BtnClick(Sender: TObject); + procedure MPRTDingPoLvBtnClick(Sender: TObject); + procedure OrdDefStr6BtnClick(Sender: TObject); + private + procedure initGrid(); + procedure SaveData(); + { Private declarations } + public + FMainid: string; + CopyInt: integer; + { Public declarations } + end; + +var + FrmFanYangListSub: TFrmFanYangListSub; + +implementation + +uses U_DataLink,U_ZDYHelp,U_Fun,U_ZDYHelpSel, U_ZdyAttachment; + +{$R *.dfm} + +procedure TFrmFanYangListSub.SaveData(); +var MaxNo,ForederNo: string; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if Trim(FMainId)='' then + begin + if GetLSNo(ADOQueryCmd,FMainId,'FY','JYOrderFY_Main',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + with ADOQueryTmp do + begin + close; + sql.Clear; + sql.Add('exec P_Get_MaxFYNo '); + sql.Add(' @MPRTType='+quotedstr(trim(OrdDefStr1.Text))); + open; + end; + IF trim(ADOQueryTmp.FieldByName('maxStr').AsString)='XXX' then + begin + if GetLSNo(ADOQueryCmd,ForederNo,trim(OrdDefStr1.text)+formatdateTime('yy',SGetServerDate10(ADOQueryTmp)),'JYOrderFY_Main',3,0)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + ForederNo:=Trim(RightBStr(ForederNo,Length(ForederNo)-1)); + end + else + ForederNo:=trim(ADOQueryTmp.FieldByName('maxStr').AsString); + ForederNo:='P'+trim(OrdDefStr1.Text)+ForederNo+trim(CustomerNo.Text); + orderNo.Text:= ForederNo; + end; + // ForederNo:=trim(orderNo.Text); + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from JYOrderFy_Main where MainId='''+Trim(FMainId)+''''); + Open; + if isempty then + begin + Append; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('Filltime').Value:=SGetServerDateTime(ADOQueryTmp); + end + else + begin + Edit; + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOQueryTmp); + end; + FieldByName('OrderNo').Value:=Trim(orderNo.text); + FieldByName('MainId').Value:=Trim(FMainid); + FieldByName('Status').Value:='0'; + SSetsaveSqlNew(ADOQueryCmd,'JYOrderFy_Main',Panel1,2); + Post; + end; + with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,MaxNo,'FY','JYOrderfy_Sub',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + MaxNo:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrderFY_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add(' and SubId='''+Trim(maxno)+''''); + Open; + if isempty then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + RTSetSaveDataCDS(ADOQueryCmd,Tv1,Order_Sub,'JYOrderFY_Sub',0); + fieldbyname('PRTOrderQty').Value:=Order_Sub.fieldbyname('PRTOrderQty').AsFloat; + fieldbyname('PrtPrice').Value:=Order_Sub.fieldbyname('PrtPrice').AsFloat; + fieldbyname('SOrdQty1').Value:=Order_Sub.fieldbyname('SOrdQty1').AsFloat; + fieldbyname('SOrdQty2').Value:=Order_Sub.fieldbyname('SOrdQty2').AsFloat; + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxno); + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Application.messagebox('ɹ','ʾ'); + ModalResult:=1; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ'); + end; +end; + +procedure TFrmFanYangListSub.initGrid(); +begin + with AdoqueryCmd do + begin + close; + sql.clear; + sql.add('select * from JYOrderFy_Main where Mainid='''+trim(FMainid)+''' '); + open; + if not isempty then + begin + SCSHDataNew(AdoqueryCmd,Panel1,2); + OrderNO.Text:=Trim(fieldbyname('ORDERno').AsString); + orddefstr7.Text:=Trim(fieldbyname('orddefstr7').AsString); + end; + end; + with ADOQueryCmd do + begin + close; + sql.clear; + sql.add('select * from JYOrderFy_Sub where Mainid='''+trim(FMainid)+''' '); + open; + end; + SCreateCDS20(ADOQueryCmd,Order_Sub); + SInitCDSData20(ADOQueryCmd,Order_Sub); + + + IF CopyInt=99 then + begin + FMainid:=''; + OrderNo.Text:='Զ'; + with Order_Sub do + begin + First; + while not Eof do + begin + Edit; + FieldByName('MainId').Value:=''; + FieldByName('SubId').Value:=''; + Post; + Next; + end; + first; + end; + end; +end; + +procedure TFrmFanYangListSub.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; +end; + +procedure TFrmFanYangListSub.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption+Tv1.Name,Tv1,'ָʾ¼'); + ordDate.datetime:=SGetServerDateTime(ADOQueryTmp); + DLYDate.DateTime:=SGetServerDateTime(ADOQueryTmp); +{ if trim(DParameters1)<>'Ȩ' then + begin + OrdFlag1.Visible:=False; + end; } + initGrid(); +end; + +procedure TFrmFanYangListSub.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid(self.Caption+Tv1.Name,Tv1,'ָʾ¼'); +end; + +procedure TFrmFanYangListSub.ToolButton2Click(Sender: TObject); +begin + if Order_Sub.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + close; + sql.clear; + sql.Add('delete from JYOrderfy_Sub where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+''''); + execsql; + end; + Order_Sub.Delete; +end; + +procedure TFrmFanYangListSub.ToolButton1Click(Sender: TObject); +var j: integer; +begin + j:=Order_Sub.RecordCount; + j:=j+1; + CopyAddRow(Tv1,Order_Sub); + with order_Sub do + begin + edit; + fieldbyname('XHNo').AsString:=Inttostr(j); + post; + end; +end; + +procedure TFrmFanYangListSub.TBSaveClick(Sender: TObject); +begin + if trim(OrderNo.Text)='' then + begin + application.MessageBox('ŲΪ','ʾ'); + exit; + end; + if trim(CustomerNo.Text)='' then + begin + application.MessageBox('ͻƲΪ','ʾ'); + exit; + end; + if trim(CustomerNoName.Text)='' then + begin + application.MessageBox('ͻΪ','ʾ'); + exit; + end; + if trim(OrdDefStr1.Text)='' then + begin + application.MessageBox('ҵ鲻Ϊ','ʾ'); + exit; + end; + if order_Sub.IsEmpty then + begin + application.MessageBox('ϸΪ','ʾ'); + exit; + end; + if order_Sub.Locate('PRTColor',null,[])=true then + begin + application.MessageBox('ɫΪ','ʾ'); + exit; + end; + SaveData(); +end; + +procedure TFrmFanYangListSub.MPRTCodeBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTCode'; + flagname:='Ʒ';; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.MPRTTeBieNoteDblClick(Sender: TObject); +var i: integer; +begin + i:=0; + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='MPRTTeBieNote'; + flagname:='ע'; + if ShowModal=1 then + begin + MPRTTeBieNote.Lines.Clear; + with ClientDataSet1 do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean=True then + begin + i:=i+1; + MPRTTeBieNote.Lines.Add(inttostr(i)+'.'+FieldByName('ZDYName').AsString) + end; + Next; + end; + end; + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TFrmFanYangListSub.CustomerNoNameBtnClick(Sender: TObject); +begin + { try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CustomerNoName'; + flagname:='ͻ'; + fnote:=True; + V1Note.Caption:='ͻ'; + V1Name.Caption:='ͻ'; + if trim(DParameters1)<>'Ȩ' then ViewFlag:=true; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + CustomerNo.text:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; } + try + frmZdyAttachment:=TfrmZdyAttachment.Create(Application); + with frmZdyAttachment do + begin + fkhType:=''; + if ShowModal=1 then + begin + CustomerNoName.Text:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + // CustomerNoName.TxtCode:=Trim(CDS_HZ.fieldbyname('ZDYCode').AsString); + CustomerNo.Text:=Trim(CDS_HZ.fieldbyname('ZDYNameZ').AsString); + end; + end; + finally + frmZdyAttachment.Free; + end; +end; + +procedure TFrmFanYangListSub.v1PRTColorPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdColor'; + flagname:='ɫ'; + V1Name.Caption:=''; + V1Note.Caption:='Ӣ'; + fnote:=True; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PRTColor').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.Order_Sub.FieldByName('SOrddefstr4').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.v1OrderUnitPropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('OrderUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.MPRTCodeNameBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTCodeName'; + flagname:='Ʒ';; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.OrdDefStr1BtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YEWUZU'; + flagname:='ҵ';; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.OrdDefStr2BtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='SHENGCHANZU'; + flagname:='';; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.MPRTMFBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTMF'; + flagname:='ŷ'; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.MPRTKZBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTKZ'; + flagname:=''; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.PBFactoryBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:=''; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.RanFactoryBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:='Ⱦ'; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.OrdDefStr3BtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='SEASON'; + flagname:='SEASON';; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.OrdDefStr5BtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CESHIBZ'; + flagname:='Ա׼';; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.MPRTSLBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTSL'; + flagname:='ˮ';; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.MPRTNiuDuBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTNiuDu'; + flagname:='Ť';; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.MPRTPHBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTPH'; + flagname:='PHֵ';; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.MPRTColorLaoDu3BtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTColorLaoDu3'; + flagname:='մɫζ';; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.MPRTColorLaoDu4BtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTColorLaoDu4'; + flagname:='ˮϴζ';; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.MPRTColorLaoDu1BtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTColorLaoDu1'; + flagname:='ĥ';; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.MPRTColorLaoDu2BtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTColorLaoDu2'; + flagname:='ʪĥ';; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.OrdDefStr4BtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='SHAZI'; + flagname:='ɳ';; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.MPRTDingPoLvBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTDingPoLv'; + flagname:='';; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmFanYangListSub.OrdDefStr6BtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CYTP'; + flagname:=''; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +end. diff --git a/艾登贸易管理/U_FjList_RZ.dfm b/艾登贸易管理/U_FjList_RZ.dfm new file mode 100644 index 0000000..a50c743 --- /dev/null +++ b/艾登贸易管理/U_FjList_RZ.dfm @@ -0,0 +1,183 @@ +object frmFjList_RZ: TfrmFjList_RZ + Left = 177 + Top = 159 + Width = 796 + Height = 501 + BorderIcons = [biSystemMenu, biMinimize] + Caption = #38468#20214#20449#24687 + 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 + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ListView1: TListView + Left = 40 + Top = 20 + Width = 429 + Height = 77 + Columns = <> + TabOrder = 0 + OnDblClick = ListView1DblClick + end + object Panel1: TPanel + Left = 629 + Top = 0 + Width = 151 + Height = 463 + Align = alRight + TabOrder = 1 + object FileName: TcxButton + Left = 30 + Top = 60 + Width = 75 + Height = 25 + Hint = 'Filesother' + Caption = #28155#21152 + TabOrder = 0 + OnClick = FileNameClick + LookAndFeel.Kind = lfOffice11 + end + object cxButton1: TcxButton + Left = 30 + Top = 96 + Width = 75 + Height = 25 + Hint = 'Filesother' + Caption = #21024#38500 + TabOrder = 1 + OnClick = cxButton1Click + LookAndFeel.Kind = lfOffice11 + end + object cxButton2: TcxButton + Left = 30 + Top = 132 + Width = 75 + Height = 25 + Hint = 'Filesother' + Caption = #20445#23384 + TabOrder = 2 + OnClick = cxButton2Click + LookAndFeel.Kind = lfOffice11 + end + object cxButton3: TcxButton + Left = 30 + Top = 172 + Width = 75 + Height = 25 + Hint = 'Filesother' + Caption = #20851#38381 + TabOrder = 3 + Visible = False + OnClick = cxButton3Click + LookAndFeel.Kind = lfOffice11 + end + end + object Panel2: TPanel + Left = 176 + Top = 140 + Width = 193 + Height = 41 + BevelInner = bvRaised + BevelOuter = bvLowered + Caption = 'Panel2' + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + OnDblClick = Panel2DblClick + end + object cxGrid1: TcxGrid + Left = 8 + Top = 84 + Width = 593 + Height = 345 + TabOrder = 3 + object Tv1: TcxGridDBTableView + OnDblClick = Tv1DblClick + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + object v1Column1: TcxGridDBColumn + Caption = #25991#20214#21517#31216 + DataBinding.FieldName = 'FileName' + HeaderAlignmentHorz = taCenter + Width = 146 + end + object v1Column4: TcxGridDBColumn + Caption = #25991#20214#20462#25913#26102#38388 + DataBinding.FieldName = 'TFdate' + HeaderAlignmentHorz = taCenter + Width = 140 + end + object v1Column2: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Width = 83 + end + object v1Column3: TcxGridDBColumn + Caption = #19978#20256#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Width = 140 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOQueryTmp: TADOQuery + Connection = ADOConnection1 + Parameters = <> + Left = 520 + Top = 28 + end + object ADOQueryCmd: TADOQuery + Connection = ADOConnection1 + Parameters = <> + Left = 568 + Top = 32 + end + object ImageList1: TImageList + Left = 536 + Top = 228 + end + object IdFTP1: TIdFTP + MaxLineAction = maException + ReadTimeout = 0 + ProxySettings.ProxyType = fpcmNone + ProxySettings.Port = 0 + Left = 500 + Top = 198 + end + object ADOConnection1: TADOConnection + LoginPrompt = False + Left = 532 + Top = 240 + end + object DataSource1: TDataSource + DataSet = ADOQueryTmp + Left = 548 + Top = 140 + end +end diff --git a/艾登贸易管理/U_FjList_RZ.pas b/艾登贸易管理/U_FjList_RZ.pas new file mode 100644 index 0000000..190a911 --- /dev/null +++ b/艾登贸易管理/U_FjList_RZ.pas @@ -0,0 +1,443 @@ +unit U_FjList_RZ; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ExtCtrls, ComCtrls, Menus, cxLookAndFeelPainters, StdCtrls, + cxButtons, DB, ADODB, ImgList,shellapi, IdBaseComponent, IdComponent, + IdTCPConnection, IdTCPClient, IdFTP, cxStyles, cxCustomData, cxGraphics, + cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxGridLevel, cxClasses, cxControls, + cxGridCustomView, cxGrid; + +type + TfrmFjList_RZ = class(TForm) + ListView1: TListView; + Panel1: TPanel; + FileName: TcxButton; + cxButton1: TcxButton; + cxButton2: TcxButton; + cxButton3: TcxButton; + ADOQueryTmp: TADOQuery; + ADOQueryCmd: TADOQuery; + ImageList1: TImageList; + Panel2: TPanel; + IdFTP1: TIdFTP; + ADOConnection1: TADOConnection; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + DataSource1: TDataSource; + v1Column4: TcxGridDBColumn; + procedure cxButton3Click(Sender: TObject); + procedure FormDestroy(Sender: TObject); + procedure FileNameClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ListView1DblClick(Sender: TObject); + procedure cxButton1Click(Sender: TObject); + procedure cxButton2Click(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure Panel2DblClick(Sender: TObject); + procedure Tv1DblClick(Sender: TObject); + private + procedure InitData(); + { Private declarations } + public + fkeyNO:string; + fType:string; + fId:integer; + fstatus:integer; + // fmanage:string; + + { Public declarations } + end; + +var +frmFjList_RZ: TfrmFjList_RZ; + +implementation + uses + U_DataLink,U_Fun10,U_CompressionFun; +{$R *.dfm} +procedure TfrmFjList_RZ.InitData(); +var + ListItem: TListItem; + Flag: Cardinal; + info: SHFILEINFOA; + Icon: TIcon; +begin + ListView1.Items.Clear; + try + + with adoqueryTmp do + begin + close; + sql.Clear; + sql.Add('select * from TP_File '); + sql.Add('where WBID='+quotedstr(trim(fkeyNO))); + sql.Add('and TFType='+quotedstr(trim(fType))); + open; + { if not IsEmpty then + begin + while not eof do + begin + with ListView1 do + begin + LargeImages := ImageList1; + Icon := TIcon.Create; + ListItem := Items.Add; + Listitem.Caption := trim(fieldbyname('fileName').AsString); + // Listitem.SubItems.Add(OpenDiaLog.FileName); + Flag := (SHGFI_SMALLICON or SHGFI_ICON or SHGFI_USEFILEATTRIBUTES); + SHGetFileInfo(Pchar(trim(fieldbyname('fileName').AsString)), 0, info, Sizeof(info), Flag); + Icon.Handle := info.hIcon; + ImageList1.AddIcon(Icon); + ListItem.ImageIndex := ImageList1.Count - 1; + end; + next; + end; + end; } + end; + except + end; +end; + +procedure TfrmFjList_RZ.cxButton3Click(Sender: TObject); +begin + ADOQueryTmp.Close; + ADOQuerycmd.Close; + ListView1.Items.Free; + ModalResult:=-1; +end; + +procedure TfrmFjList_RZ.FormDestroy(Sender: TObject); +begin + frmFjList_RZ:=nil; +end; + +procedure TfrmFjList_RZ.FileNameClick(Sender: TObject); +var + OpenDiaLog: TOpenDialog; + fFileName:string; + fFilePath:string; + maxNo:string; +// myStream: TADOBlobStream; + FJStream : TMemoryStream; + mfileSize:integer; + mCreationTime:TdateTime; + mWriteTime:TdateTime; +begin + + try + OpenDiaLog := TOpenDialog.Create(Self); + if OpenDiaLog.Execute then + begin + fFilePath:=OpenDiaLog.FileName; + fFileName:=ExtractFileName(OpenDiaLog.FileName); + + + { with adoqueryCmd do + begin + close; + sql.Clear; + sql.Add('select TFId from TP_File '); + sql.Add('where WBID<>'+quotedstr(trim(fkeyNO))); + sql.Add('and TFType='+quotedstr(trim(fType))); + sql.Add('and FileName='+quotedstr(trim(fFileName))); + open; + IF not adoqueryCmd.IsEmpty then + begin + application.MessageBox('˸Ѵڣ޸ļϴ','ʾϢ',MB_ICONERROR); + exit; + end; + end; + } + + Panel2.Caption:='ϴݣԵ...'; + Panel2.Visible:=true; + application.ProcessMessages; + + if GetLSNo(ADOQueryCmd,maxNo,'FJ','TP_File',4,1)=False then + begin + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + + //ȡļϢ + GetFileInfo(fFilePath,mfileSize,mCreationTime,mWriteTime); + + adoqueryCmd.Connection.BeginTrans; + + + with adoqueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from TP_File '); + sql.Add('where TFID='+quotedstr(trim(maxNO))); + // sql.Add('where WBID='+quotedstr(trim(fkeyNO))); + // sql.Add('and TFType='+quotedstr(trim(fType))); + // sql.Add('and FileName='+quotedstr(trim(fFileName))); + execsql; + end; + + try + FJStream:=TMemoryStream.Create; + with adoqueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from TP_File '); + sql.Add('where TFID='+quotedstr(trim(maxNO))); + // sql.Add('where WBID='+quotedstr(trim(fkeyNO))); + // sql.Add('and TFType='+quotedstr(trim(fType))); + // sql.Add('and FileName='+quotedstr(trim(fFileName))); + open; + append; + fieldbyname('TFID').Value:=trim(maxNO); + fieldbyname('WBID').Value:=trim(fkeyNO); + fieldbyname('TFType').Value:=trim(fType); + fieldbyname('Filler').Value:=trim(DName); + fieldbyname('FileName').Value:=trim(fFileName); + fieldbyname('TFDate').Value:=mWriteTime; + FJStream.LoadFromFile(fFilePath); + CompressionStream(FJStream); + tblobfield(FieldByName('Filesother')).LoadFromStream(FJStream); + post; + end; + + { if fFilePath <> '' then + begin + try + IdFTP1.Host := PicSvr; + IdFTP1.Username := 'three'; + IdFTP1.Password := '641010'; + IdFTP1.Connect(); + IdFTP1.Put(fFilePath, 'FJ\' + Trim(fFileName)); + IdFTP1.Quit; + except + IdFTP1.Quit; + Application.MessageBox('ϴͻͼļʧܣļ', 'ʾ', MB_ICONWARNING); + end; + end; + IdFTP1.Quit; + } + Panel2.Visible:=false; + initdata(); + finally + FJStream.Free; + end; + + end; + adoqueryCmd.Connection.CommitTrans; + except + adoqueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmFjList_RZ.FormCreate(Sender: TObject); +begin + with ADOConnection1 do + begin + Connected:=false; + ConnectionString:=DConString; + //ConnectionString:=''; + Connected:=true; + end; + cxGrid1.Align:=alclient; + fstatus:=0; +end; + +procedure TfrmFjList_RZ.FormShow(Sender: TObject); +begin + IF fstatus=0 then Panel1.Visible:=true + else Panel1.Visible:=false; + initdata(); +end; + +procedure TfrmFjList_RZ.ListView1DblClick(Sender: TObject); +var + sFieldName:string; + fileName:string; +begin + if ListView1.Items.Count<1 THEN EXIT; + + if listView1.SelCount<1 then exit; + sFieldName:='D:\ͼƬ鿴'; + + if not DirectoryExists(pchar(sFieldName)) then + CreateDirectory(pchar(sFieldName),nil); + + fileName:=ListView1.Selected.Caption; + + sFieldName:=sFieldName+'\'+trim(fileName); + + try + IdFTP1.Host := PicSvr; + IdFTP1.Username := 'three'; + IdFTP1.Password := '641010'; + IdFTP1.Connect(); + except + ; + end; + + if IdFTP1.Connected then + begin + + Panel2.Caption:='ݣԵ...'; + Panel2.Visible:=true; + application.ProcessMessages; + try + IdFTP1.Get('FJ\'+ Trim(fileName), sFieldName,false, true); + except + Panel2.Visible:=false; + Application.MessageBox('ͻͼļ', 'ʾ', MB_ICONWARNING); + IdFTP1.Quit; + Exit; + end; + end + else + begin + Panel2.Visible:=false; + Application.MessageBox('޷ļ', 'ʾ', MB_ICONWARNING); + IdFTP1.Quit; + Exit; + end; + Panel2.Visible:=false; + if IdFTP1.Connected then IdFTP1.Quit; + ShellExecute(Handle, 'open',PChar(sFieldName),'', '', SW_SHOWNORMAL); + +end; + +procedure TfrmFjList_RZ.cxButton1Click(Sender: TObject); +var + fFileName:string; + fFilePath:string; +begin + // if listView1.SelCount<1 then exit; + + IF ADOQueryTmp.IsEmpty then exit; + + try + // fFileName:=ListView1.Selected.Caption; + // ADOQueryTmp.Locate('fileName',fFileName,[]); + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete from TP_File '); + sql.Add('where TFID='+quotedstr(trim(ADOQueryTmp.fieldbyname('TFID').AsString))); + // sql.Add('and TFType='+quotedstr(trim(fType))); + // sql.Add('and FileName='+quotedstr(trim(fFileName))); + execsql; + end; + + initData(); + + except + end; + +end; + +procedure TfrmFjList_RZ.cxButton2Click(Sender: TObject); +var + SaveDialog: TSaveDialog; + fFileName:string; + fFilePath:string; + ff: TADOBlobStream; + FJStream : TMemoryStream; +begin + if adoqueryTmp.IsEmpty then exit; + + try + + fFileName:=adoqueryTmp.fieldbyname('FileName').AsString; + + SaveDialog := TSaveDialog.Create(Self); + + SaveDialog.FileName:=fFileName; + if SaveDialog.Execute then + begin + Panel2.Caption:='ڱݣԵ...'; + Panel2.Visible:=true; + application.ProcessMessages; + fFilePath:=SaveDialog.FileName; + + try + ff := TADOBlobstream.Create(adoqueryTmp.fieldByName('FilesOther') as TblobField, bmRead); + + fjStream:= TMemoryStream.Create ; + ff.SaveToStream(fjStream); + UnCompressionStream(fjStream); + fjStream.SaveToFile(fFilePath); + // ShellExecute(Handle, 'open',PChar(sFieldName),'', '', SW_SHOWNORMAL); + finally + fjStream.free; + ff.Free; + end; + + + Panel2.Visible:=false; + // if IdFTP1.Connected then IdFTP1.Quit; + end; + except + Panel2.Visible:=false; + end; +end; + +procedure TfrmFjList_RZ.FormClose(Sender: TObject; var Action: TCloseAction); +begin + if fId=10 then Action:=cafree + else + Action:=cahide; +end; + +procedure TfrmFjList_RZ.Panel2DblClick(Sender: TObject); +begin + Panel2.Visible:=false; +end; + +procedure TfrmFjList_RZ.Tv1DblClick(Sender: TObject); +var + sFieldName:string; + fileName:string; + ff: TADOBlobStream; + FJStream : TMemoryStream; +begin + + IF adoqueryTmp.IsEmpty then exit; + + sFieldName:='D:\ͼƬ鿴'; + + if not DirectoryExists(pchar(sFieldName)) then + CreateDirectory(pchar(sFieldName),nil); + + fileName:=adoqueryTmp.fieldbyname('FileName').AsString; + + sFieldName:=sFieldName+'\'+trim(fileName); + + try + ff := TADOBlobstream.Create(adoqueryTmp.fieldByName('FilesOther') as TblobField, bmRead); + + fjStream:= TMemoryStream.Create ; + ff.SaveToStream(fjStream); + UnCompressionStream(fjStream); + fjStream.SaveToFile(sFieldName); + ShellExecute(Handle, 'open',PChar(sFieldName),'', '', SW_SHOWNORMAL); + finally + fjStream.free; + ff.Free; + end; + + + +end; + +end. diff --git a/艾登贸易管理/U_GetDllForm.pas b/艾登贸易管理/U_GetDllForm.pas new file mode 100644 index 0000000..14a4522 --- /dev/null +++ b/艾登贸易管理/U_GetDllForm.pas @@ -0,0 +1,1128 @@ +unit U_GetDllForm; + +interface + +uses + Windows, Messages, forms, OleCtnrs, DateUtils, SysUtils, ADODB, Dxcore, + activex; + +function GetDllForm(App: Tapplication; FormH: hwnd; FormID: integer; Language: integer; WinStyle: integer; GCode: Pchar; GName: Pchar; DataBase: Pchar; Title: PChar; Parameters1: PChar; Parameters2: PChar; Parameters3: PChar; Parameters4: PChar; Parameters5: PChar; Parameters6: PChar; Parameters7: PChar; Parameters8: PChar; Parameters9: PChar; Parameters10: PChar; DataBaseStr: PChar): hwnd; export; stdcall; + +function ConnData(): Boolean; + +function GetsysParam(muserId: pchar; fparam1: pchar): Boolean; + +implementation + +uses + U_DataLink, U_Fun, U_iniParam, U_MJManageNewFDNew, U_ProductOrderList, + U_ProductOrderAnPai, U_SetBanZu, U_BangAdd, U_MJEdit, U_JYOrderCDOne, + U_JYOrderCDMore, U_CpCkSaoMNewSel, U_CKProductBCPInList, U_CKProductBCPOutList, + U_BanCpHCSaoM, U_CKProductBCPHCList, U_CKProductBCPKCList, + U_CKProductBCPKCHZList, U_CpRkSaoMNew, U_ClothContractList, + U_ClothContractListDH, U_ClothContractListLL, U_ClothContractKCList, + U_ContractList, U_ProductOrderNewList, U_ClothContractListWJG, + U_ClothPDInfoList, U_OrderJDList, U_ProductOrderAnPaiGQX, U_ClothHCList, + U_ContractListNX, U_ClothContractListSX, U_ClothContractListDHSX, + U_ClothContractListLLSX, U_ClothContractListHZ, U_ProductOrderLBNameSet, + U_ClothContractListDHSXQJG, U_ProductOrderNewList_JD, U_ProductOrderNewList_CY, + U_HCList, U_OrderInPut_HYWT, U_ModulePromptList, U_ProductOrderNewList_FB, + U_FanYangList, U_FanYangListHZ, U_CKProductRKHZList, U_CKProductCKHZList, + U_CKJYList, U_ProductOrderLBNameSetFZ, U_Contract_Main, U_ContractListJG, + U_ProductOrderNewList_PB; + + + ///////////////////////////////////////////////////////////////// + // ˵:ȡDllеô // + // ˵App>>Ӧó // + // FormH>>ôھ // + // FormID>>ں; // + // Language>>; // + // WinStyle>>ͣ // +///////////////////////////////////////////////////////////////// +function GetDllForm(App: Tapplication; FormH: hwnd; FormID: integer; Language: integer; WinStyle: integer; GCode: Pchar; GName: Pchar; DataBase: Pchar; Title: PChar; Parameters1: PChar; Parameters2: PChar; Parameters3: PChar; Parameters4: PChar; Parameters5: PChar; Parameters6: PChar; Parameters7: PChar; Parameters8: PChar; Parameters9: PChar; Parameters10: PChar; DataBaseStr: PChar): hwnd; +var + mnewHandle: hwnd; + mstyle: TFormStyle; // 0:Ӵ; 1ͨ + mstate: TWindowState; + mborderstyle: TFormBorderStyle; +begin + mnewHandle := 0; + DName := GName; + DCode := GCode; + DdataBase := DataBase; + DTitCaption := Title; + DParameters1 := Parameters1; + DParameters2 := Parameters2; + DParameters3 := Parameters3; + DParameters4 := Parameters4; + DParameters5 := Parameters5; + DParameters6 := Parameters6; + DParameters7 := Parameters7; + DParameters8 := Parameters8; + DParameters9 := Parameters9; + DParameters10 := Parameters10; + + MainApplication := App; + DCurHandle := FormH; + IsDelphiLanguage := Language; + + Application := TApplication(App); + DCurHandle := 0; + + + //ֵַ + SetLength(server, 255); + SetLength(dtbase, 255); + SetLength(user, 255); + SetLength(pswd, 255); + + //server:='192.168.1.99'; //192.168.1.113 + //dtbase:='powertexdata'; + server := '139.224.12.182,7781'; + dtbase := 'aidengdata'; + user := 'aidengsa'; + pswd := 'rightsoft@3203'; + DConString := 'Provider=SQLOLEDB.1;Password=' + pswd + ';Persist Security Info=True;User ID=' + user + ';Initial Catalog=' + dtbase + ';Data Source=' + server; + if trim(DataBaseStr) <> '' then + DConString := DataBaseStr; +// DParameters1 := 'Ȩ'; +// DParameters2 := 'ϲȨ'; + // DParameters2:='޳'; +// DCode := 'ADMIN'; +// DName := 'ADMIN'; + //DParameters2:=''; + // database:='Ȩ'; + if not ConnData() then + begin + result := 0; + exit; + end; + if IsINIFile() then + ReadINIFile() + else + WriteINIFile; + GetsysParam('', ''); + // 崰 ״̬ + if WinStyle = 0 then + begin + mstyle := fsMDIChild; + mstate := wsMaximized; + mborderstyle := bsSizeable; + end + else + begin + mstyle := fsNormal; + mstate := wsNormal; + mborderstyle := bsSizeable; + end; + //////////////////// + { GetSWLDZ('192.168.1.246'); + if IpCall<>0 then + begin + Result:=0; + Application.MessageBox('粻ͨ','ʾ',0); + Exit; + end; + if Trim(IpWLDZStr)<>'D4:AE:52:BE:9F:02' then + begin + Result:=0; + Application.MessageBox('ݿʧܣ','ʾ',0); + Exit; + end; } + ///////////////////// + //ģ鴰 + case FormID of + + -1: //ͬ() + begin + if frmContractListJG = nil then + begin + frmContractListJG := TfrmContractListJG.Create(application.MainForm); + with frmContractListJG do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmContractListJG.BringToFront; + // + mnewHandle := frmContractListJG.Handle; + + end; + 0: //ͬ() + begin + if frmContractList = nil then + begin + frmContractList := TfrmContractList.Create(application.MainForm); + with frmContractList do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmContractList.BringToFront; + // + mnewHandle := frmContractList.Handle; + + end; + 1: //ͬ() + begin + if frmContractListNX = nil then + begin + frmContractListNX := TfrmContractListNX.Create(application.MainForm); + with frmContractListNX do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmContractListNX.BringToFront; + // + mnewHandle := frmContractListNX.Handle; + end; + 201: //ָʾ + begin + if frmProductOrderNewList = nil then + begin + frmProductOrderNewList := TfrmProductOrderNewList.Create(application.MainForm); + with frmProductOrderNewList do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmProductOrderNewList.BringToFront; + // + mnewHandle := frmProductOrderNewList.Handle; + + end; + 2011: //ָʾŰ + begin + if frmProductOrderNewList_PB = nil then + begin + frmProductOrderNewList_PB := TfrmProductOrderNewList_PB.Create(application.MainForm); + with frmProductOrderNewList_PB do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmProductOrderNewList_PB.BringToFront; + // + mnewHandle := frmProductOrderNewList_PB.Handle; + + end; + { 3: //ɴ߲ɹ + begin + if frmClothContractListSX=nil then + begin + frmClothContractListSX:= TfrmClothContractListSX.Create(application.MainForm); + with frmClothContractListSX do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmClothContractListSX.BringToFront; + // + mNewHandle:=frmClothContractListSX.Handle; + + end ; } + 3: //ɹͬ + begin + if frmClothContractListHZ = nil then + begin + frmClothContractListHZ := TfrmClothContractListHZ.Create(application.MainForm); + with frmClothContractListHZ do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmClothContractListHZ.BringToFront; + // + mnewHandle := frmClothContractListHZ.Handle; + + end; + + 4: //ɴ + begin + if frmClothContractListDHSX = nil then + begin + frmClothContractListDHSX := TfrmClothContractListDHSX.Create(application.MainForm); + with frmClothContractListDHSX do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmClothContractListDHSX.BringToFront; + // + mnewHandle := frmClothContractListDHSX.Handle; + + end; + 41: //Ⱦɴ + begin + if frmClothContractListDHSXQJG = nil then + begin + frmClothContractListDHSXQJG := TfrmClothContractListDHSXQJG.Create(application.MainForm); + with frmClothContractListDHSXQJG do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmClothContractListDHSXQJG.BringToFront; + // + mnewHandle := frmClothContractListDHSXQJG.Handle; + end; + 5: //ɴ֯Ʒ + begin + if frmClothContractListLLSX = nil then + begin + frmClothContractListLLSX := TfrmClothContractListLLSX.Create(application.MainForm); + with frmClothContractListLLSX do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmClothContractListLLSX.BringToFront; + // + mnewHandle := frmClothContractListLLSX.Handle; + end; + + 61: //ʾ + begin + if frmModulePromptList = nil then + begin + frmModulePromptList := TfrmModulePromptList.Create(application.MainForm); + with frmModulePromptList do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmModulePromptList.BringToFront; + // + mnewHandle := frmModulePromptList.Handle; + end; + + 6: //ɹ + begin + if frmClothContractList = nil then + begin + frmClothContractList := TfrmClothContractList.Create(application.MainForm); + with frmClothContractList do + begin + caption := Trim(Title); + FType := trim(DataBase); + // FType:=''; + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmClothContractList.BringToFront; + // + mnewHandle := frmClothContractList.Handle; + end; + 611: //ɹͬ + begin + if frmContract_Main = nil then + begin + frmContract_Main := TfrmContract_Main.Create(application.MainForm); + with frmContract_Main do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmContract_Main.BringToFront; + // + mnewHandle := frmContract_Main.Handle; + end; + + 7: // + begin + if frmClothContractListDH = nil then + begin + frmClothContractListDH := TfrmClothContractListDH.Create(application.MainForm); + with frmClothContractListDH do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmClothContractListDH.BringToFront; + // + mnewHandle := frmClothContractListDH.Handle; + + end; + + 8: // + begin + if frmClothContractListLL = nil then + begin + frmClothContractListLL := TfrmClothContractListLL.Create(application.MainForm); + with frmClothContractListLL do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmClothContractListLL.BringToFront; + // + mnewHandle := frmClothContractListLL.Handle; + + end; + 9: //ӹ + begin + if frmClothContractListWJG = nil then + begin + frmClothContractListWJG := TfrmClothContractListWJG.Create(application.MainForm); + with frmClothContractListWJG do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmClothContractListWJG.BringToFront; + // + mnewHandle := frmClothContractListWJG.Handle; + + end; + 10: //زֹ + begin + if frmProductOrderAnPai = nil then + begin + frmProductOrderAnPai := TfrmProductOrderAnPai.Create(application.MainForm); + with frmProductOrderAnPai do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmProductOrderAnPai.BringToFront; + // + mnewHandle := frmProductOrderAnPai.Handle; + + end; + 2: // Ʒ + begin + if frmMJManageNewFDNewSF = nil then + begin + frmMJManageNewFDNewSF := TfrmMJManageNewFDNewSF.Create(application.MainForm); + with frmMJManageNewFDNewSF do + begin + fmanage := Trim(DataBase); + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmMJManageNewFDNewSF.BringToFront; + // + mnewHandle := frmMJManageNewFDNewSF.Handle; + end; + 11: //ǩƤ + begin + if frmProductOrderLBNameSet = nil then + begin + frmProductOrderLBNameSet := TfrmProductOrderLBNameSet.Create(application.MainForm); + with frmProductOrderLBNameSet do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmProductOrderLBNameSet.BringToFront; + // + mnewHandle := frmProductOrderLBNameSet.Handle; + + end; + 12: //ƥ + begin + if frmMJEdit = nil then + begin + frmMJEdit := TfrmMJEdit.Create(application.MainForm); + with frmMJEdit do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmMJEdit.BringToFront; + // + mnewHandle := frmMJEdit.Handle; + + end; + 13: //ɨ + begin + if frmCpRkSaoMNew = nil then + begin + frmCpRkSaoMNew := TfrmCpRkSaoMNew.Create(application.MainForm); + with frmCpRkSaoMNew do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmCpRkSaoMNew.BringToFront; + // + mnewHandle := frmCpRkSaoMNew.Handle; + + end; + 14: //Ʒ + begin + if frmCpCkSaoMNewSel = nil then + begin + frmCpCkSaoMNewSel := TfrmCpCkSaoMNewSel.Create(application.MainForm); + with frmCpCkSaoMNewSel do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmCpCkSaoMNewSel.BringToFront; + // + mnewHandle := frmCpCkSaoMNewSel.Handle; + + end; + 15: //Ʒб + begin + if frmCKProductBCPInList = nil then + begin + frmCKProductBCPInList := TfrmCKProductBCPInList.Create(application.MainForm); + with frmCKProductBCPInList do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmCKProductBCPInList.BringToFront; + // + mnewHandle := frmCKProductBCPInList.Handle; + + end; + 16: //Ʒб + begin + if frmCKProductBCPOutList = nil then + begin + frmCKProductBCPOutList := TfrmCKProductBCPOutList.Create(application.MainForm); + with frmCKProductBCPOutList do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmCKProductBCPOutList.BringToFront; + // + mnewHandle := frmCKProductBCPOutList.Handle; + + end; + 17: //б + begin + if frmCKProductBCPKCList = nil then + begin + frmCKProductBCPKCList := TfrmCKProductBCPKCList.Create(application.MainForm); + with frmCKProductBCPKCList do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmCKProductBCPKCList.BringToFront; + // + mnewHandle := frmCKProductBCPKCList.Handle; + + end; + 18: //б + begin + if frmCKProductBCPKCHZList = nil then + begin + frmCKProductBCPKCHZList := TfrmCKProductBCPKCHZList.Create(application.MainForm); + with frmCKProductBCPKCHZList do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmCKProductBCPKCHZList.BringToFront; + // + mnewHandle := frmCKProductBCPKCHZList.Handle; + + end; + 19: //鱨 + begin + if frmJYOrderCDOne = nil then + begin + frmJYOrderCDOne := TfrmJYOrderCDOne.Create(application.MainForm); + with frmJYOrderCDOne do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmJYOrderCDOne.BringToFront; + // + mnewHandle := frmJYOrderCDOne.Handle; + + end; + 20: // + begin + if frmJYOrderCDMore = nil then + begin + frmJYOrderCDMore := TfrmJYOrderCDMore.Create(application.MainForm); + with frmJYOrderCDMore do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmJYOrderCDMore.BringToFront; + // + mnewHandle := frmJYOrderCDMore.Handle; + + end; + 21: //첼 + begin + if frmClothPDInfoList = nil then + begin + frmClothPDInfoList := TfrmClothPDInfoList.Create(application.MainForm); + with frmClothPDInfoList do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmClothPDInfoList.BringToFront; + // + mnewHandle := frmClothPDInfoList.Handle; + + end; + 22: //زֲѯ + begin + if frmClothHCList = nil then + begin + frmClothHCList := TfrmClothHCList.Create(application.MainForm); + with frmClothHCList do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmClothHCList.BringToFront; + // + mnewHandle := frmClothHCList.Handle; + + end; + + 23: //ָʾȲѯ + begin + if frmProductOrderNewList_JD = nil then + begin + frmProductOrderNewList_JD := TfrmProductOrderNewList_JD.Create(application.MainForm); + with frmProductOrderNewList_JD do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmProductOrderNewList_JD.BringToFront; + // + mnewHandle := frmProductOrderNewList_JD.Handle; + + end; + + 24: //ܲѯ + begin + if frmClothContractKCList = nil then + begin + frmClothContractKCList := TfrmClothContractKCList.Create(application.MainForm); + with frmClothContractKCList do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmClothContractKCList.BringToFront; + // + mnewHandle := frmClothContractKCList.Handle; + + end; + + 25: //˼ƻ + begin + if frmProductOrderNewList_CY = nil then + begin + frmProductOrderNewList_CY := TfrmProductOrderNewList_CY.Create(application.MainForm); + with frmProductOrderNewList_CY do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmProductOrderNewList_CY.BringToFront; + // + mnewHandle := frmProductOrderNewList_CY.Handle; + end; + + 26: //ί + begin + if frmorderInput_HYWT = nil then + begin + frmorderInput_HYWT := TfrmorderInput_HYWT.create(application.MainForm); + with frmorderInput_HYWT do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + end; + end + else + frmorderInput_HYWT.BringToFront; + mnewHandle := frmorderInput_HYWT.Handle; + end; + + 27: //ƱϢ + begin + if frmProductOrderNewList_FB = nil then + begin + frmProductOrderNewList_FB := TfrmProductOrderNewList_FB.Create(application.MainForm); + with frmProductOrderNewList_FB do + begin + caption := Trim(Title); + ftype := ''; + // ftype:=trim(DataBase); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmProductOrderNewList_FB.BringToFront; + // + mnewHandle := frmProductOrderNewList_FB.Handle; + end; + + 28: //ָʾ + begin + if FrmFanYangList = nil then + begin + FrmFanYangList := TFrmFanYangList.Create(application.MainForm); + with FrmFanYangList do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + FrmFanYangList.BringToFront; + // + mnewHandle := FrmFanYangList.Handle; + end; + + 29: //ָʾ + begin + if FrmFanYangListHZ = nil then + begin + FrmFanYangListHZ := TFrmFanYangListHZ.Create(application.MainForm); + with FrmFanYangListHZ do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + FrmFanYangListHZ.BringToFront; + // + mnewHandle := FrmFanYangListHZ.Handle; + end; + 30: // + begin + if frmCKProductRKHZList = nil then + begin + frmCKProductRKHZList := TfrmCKProductRKHZList.Create(application.MainForm); + with frmCKProductRKHZList do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmCKProductRKHZList.BringToFront; + // + mnewHandle := frmCKProductRKHZList.Handle; + end; + 31: // + begin + if frmCKProductCKHZList = nil then + begin + frmCKProductCKHZList := TfrmCKProductCKHZList.Create(application.MainForm); + with frmCKProductCKHZList do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmCKProductCKHZList.BringToFront; + // + mnewHandle := frmCKProductCKHZList.Handle; + end; + 32: // + begin + if frmCKJYList = nil then + begin + frmCKJYList := TfrmCKJYList.Create(application.MainForm); + with frmCKJYList do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmCKJYList.BringToFront; + // + mnewHandle := frmCKJYList.Handle; + end; + 33: //ǩƤ + begin + if frmProductOrderLBNameSetFZ = nil then + begin + frmProductOrderLBNameSetFZ := TfrmProductOrderLBNameSetFZ.Create(application.MainForm); + with frmProductOrderLBNameSetFZ do + begin + caption := Trim(Title); + FormStyle := mstyle; + windowState := mstate; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmProductOrderLBNameSetFZ.BringToFront; + // + mnewHandle := frmProductOrderLBNameSetFZ.Handle; + end; + + { + + 101: //زֹ (Ȩ) + begin + if frmProductOrderAnPaiGQX=nil then + begin + frmProductOrderAnPaiGQX:= TfrmProductOrderAnPaiGQX.Create(application.MainForm); + with frmProductOrderAnPaiGQX do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmProductOrderAnPaiGQX.BringToFront; + // + mNewHandle:=frmProductOrderAnPaiGQX.Handle; + + end ; + + + 3: // + begin + if frmSetBanZu=nil then + begin + frmSetBanZu:= TfrmSetBanZu.Create(application.MainForm); + with frmSetBanZu do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmSetBanZu.BringToFront; + // + mNewHandle:=frmSetBanZu.Handle; + + end ; + + + + + 8: //Ʒز + begin + if frmBanCpHCSaoM=nil then + begin + frmBanCpHCSaoM:= TfrmBanCpHCSaoM.Create(application.MainForm); + with frmBanCpHCSaoM do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmBanCpHCSaoM.BringToFront; + // + mNewHandle:=frmBanCpHCSaoM.Handle; + + end ; + 9: //Ʒб + begin + if frmCKProductBCPHCList=nil then + begin + frmCKProductBCPHCList:= TfrmCKProductBCPHCList.Create(application.MainForm); + with frmCKProductBCPHCList do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmCKProductBCPHCList.BringToFront; + // + mNewHandle:=frmCKProductBCPHCList.Handle; + + end ; + + 22: //Ȳѯ + begin + if frmOrderJDList=nil then + begin + frmOrderJDList:= TfrmOrderJDList.Create(application.MainForm); + with frmOrderJDList do + begin + caption:=Trim(Title); + FormStyle := mstyle ; + windowState := mstate ; + BorderStyle := mborderstyle; + //show; + end; + end + else + frmOrderJDList.BringToFront; + // + mNewHandle:=frmOrderJDList.Handle; + + end ; } + + + end; // end case + + Result := mnewHandle; +// NewDllApp:=Application ; +end; + +function GetsysParam(muserId: pchar; fparam1: pchar): Boolean; +begin + result := true; + ////////////////////////////// + shortDateFormat := 'yyyy-MM-dd'; + // + with DataLink_TradeManage.AdoDataLink do + begin + close; + sql.Clear; + sql.Add('select getDate()as dt'); + open; + DServerDate := fieldByName('dt').AsDatetime; + end; + result := true; +end; +//=========================================================== + //ݿӳ +//=========================================================== + +function ConnData(): Boolean; +begin + if not Assigned(DataLink_TradeManage) then + DataLink_TradeManage := TDataLink_TradeManage.Create(Application); + try + with DataLink_TradeManage.ADOLink do + begin + if not Connected then + begin + Connected := false; + ConnectionString := DConString; + LoginPrompt := false; + Connected := true; + end; + end; + Result := true; + except + Result := false; + application.MessageBox('ݿʧܣ', '', mb_Ok + MB_ICONERROR); + end; + +end; + +initialization + CoInitialize(nil); + dxUnitsLoader.Initialize; + + +finalization + DataLink_TradeManage.Free; + application := NewDllApp; + dxUnitsLoader.Finalize; + +end. + diff --git a/艾登贸易管理/U_GetPGJBInList.dfm b/艾登贸易管理/U_GetPGJBInList.dfm new file mode 100644 index 0000000..b91fa9a --- /dev/null +++ b/艾登贸易管理/U_GetPGJBInList.dfm @@ -0,0 +1,400 @@ +object frmGetPGJBInList: TfrmGetPGJBInList + Left = 67 + Top = 20 + Width = 765 + Height = 623 + Caption = #24211#23384#21015#34920 + 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 + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 757 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Images = DataLink_WFBProducttion.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton1: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #30830#23450 + ImageIndex = 41 + OnClick = ToolButton1Click + end + object TBFind: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBExport: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + Visible = False + OnClick = TBExportClick + end + object TBClose: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 757 + Height = 42 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 40 + Top = 15 + Width = 48 + Height = 12 + Caption = #29289#26009#21517#31216 + end + object Label4: TLabel + Left = 216 + Top = 15 + Width = 36 + Height = 12 + Caption = #35268' '#26684 + end + object Label7: TLabel + Left = 376 + Top = 15 + Width = 48 + Height = 12 + Caption = #20379' '#24212' '#21830 + end + object YCLName: TEdit + Tag = 2 + Left = 89 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 0 + OnChange = YCLNameChange + end + object YCLSpec: TEdit + Tag = 2 + Left = 254 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 1 + OnChange = YCLNameChange + end + object GYSName: TEdit + Tag = 2 + Left = 425 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = YCLNameChange + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 313 + Width = 757 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + Control = cxGrid3 + end + object cxGrid1: TcxGrid + Left = 24 + Top = 80 + Width = 697 + Height = 217 + TabOrder = 3 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'DefStr1' + end + item + Format = 'DefStr2' + Column = v1ShortName + end + item + Format = 'RollUnit' + Column = v1UnitName + end + item + Format = 'YCLCode' + Column = v1P_ChnName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Quantity + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_WFBProducttion.Default + object v1P_ChnName: TcxGridDBColumn + Tag = 2 + Caption = #29289#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Width = 98 + end + object v1Column2: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v1ShortName: TcxGridDBColumn + Caption = #20379#24212#21830 + DataBinding.FieldName = 'GYSName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v1Quantity: TcxGridDBColumn + Tag = 2 + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'KCQty' + HeaderAlignmentHorz = taCenter + Width = 78 + end + object v1UnitName: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'KCUint' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Width = 73 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGrid3: TcxGrid + Left = 0 + Top = 321 + Width = 757 + Height = 265 + Align = alBottom + TabOrder = 4 + object TV2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TV2CellDblClick + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'DefStr1' + end + item + Format = 'DefStr2' + Column = cxGridDBColumn15 + end + item + Format = 'RollUnit' + Column = cxGridDBColumn17 + end + item + Format = 'YCLCode' + Column = cxGridDBColumn13 + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn16 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_WFBProducttion.Default + object cxGridDBColumn13: TcxGridDBColumn + Tag = 2 + Caption = #29289#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Width = 190 + end + object cxGridDBColumn14: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Width = 171 + end + object cxGridDBColumn15: TcxGridDBColumn + Caption = #20379#24212#21830 + DataBinding.FieldName = 'GYSName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Width = 144 + end + object cxGridDBColumn16: TcxGridDBColumn + Tag = 2 + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'KCQty' + HeaderAlignmentHorz = taCenter + Width = 101 + end + object cxGridDBColumn17: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'KCUint' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Width = 68 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TV2 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 256 + Top = 232 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 360 + Top = 232 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 400 + Top = 232 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 432 + Top = 232 + end + object DataSource1: TDataSource + DataSet = ClientDataSet1 + Left = 288 + Top = 232 + end + object DataSource2: TDataSource + DataSet = ClientDataSet2 + Left = 680 + Top = 512 + end + object ADOQuery2: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 712 + Top = 512 + end + object ClientDataSet1: TClientDataSet + Aggregates = <> + Params = <> + Left = 320 + Top = 232 + end + object ClientDataSet2: TClientDataSet + Aggregates = <> + Params = <> + Left = 744 + Top = 512 + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 512 + Top = 584 + end +end diff --git a/艾登贸易管理/U_GetPGJBInList.pas b/艾登贸易管理/U_GetPGJBInList.pas new file mode 100644 index 0000000..82f8843 --- /dev/null +++ b/艾登贸易管理/U_GetPGJBInList.pas @@ -0,0 +1,268 @@ +unit U_GetPGJBInList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, cxCalendar, cxButtonEdit, cxDropDownEdit, + DBClient, cxSplitter; + +type + TfrmGetPGJBInList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + TBExport: TToolButton; + Panel1: TPanel; + ToolButton1: TToolButton; + cxSplitter1: TcxSplitter; + DataSource2: TDataSource; + ADOQuery2: TADOQuery; + ClientDataSet1: TClientDataSet; + ClientDataSet2: TClientDataSet; + cxGridPopupMenu2: TcxGridPopupMenu; + Label3: TLabel; + Label4: TLabel; + Label7: TLabel; + YCLName: TEdit; + YCLSpec: TEdit; + GYSName: TEdit; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_ChnName: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1ShortName: TcxGridDBColumn; + v1Quantity: TcxGridDBColumn; + v1UnitName: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + cxGrid3: TcxGrid; + TV2: TcxGridDBTableView; + cxGridDBColumn13: TcxGridDBColumn; + cxGridDBColumn14: TcxGridDBColumn; + cxGridDBColumn15: TcxGridDBColumn; + cxGridDBColumn16: TcxGridDBColumn; + cxGridDBColumn17: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure PlanNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure P_ChnNameChange(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TV2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure YCLNameChange(Sender: TObject); + private + procedure InitGrid(); + procedure InitGrid10(); + procedure InitForm(); + function DelData():Boolean; + { Private declarations } + public + { Public declarations } + end; + +var + frmGetPGJBInList: TfrmGetPGJBInList; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmGetPGJBInList.FormDestroy(Sender: TObject); +begin + frmGetPGJBInList:=nil; +end; + +procedure TfrmGetPGJBInList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmGetPGJBInList.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; +end; + +procedure TfrmGetPGJBInList.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('б',Tv1,'ԭϲֿ'); + WriteCxGrid('бѡ',Tv2,'ԭϲֿ'); +end; + +procedure TfrmGetPGJBInList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' select YCLName=(select ZdyName from KH_Zdy KK where KK.ZdyNo=A.YCLCode), '); + sql.Add(' A.*,GYSName=(select ZdyName from KH_ZDY B where A.GYS=B.ZdyNo) '); + sql.Add(' from CK_YCL_KC A where A.KCQty>0'); + sql.Add(' and A.CKName=''ԭϲֿ'' '); + Open; + SCreateCDS20(ADOQueryMain,ClientDataSet1); + SInitCDSData20(ADOQueryMain,ClientDataSet1); + end; + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmGetPGJBInList.InitGrid10(); +begin + try + ADOQuery2.DisableControls; + with ADOQuery2 do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' select YCLName=(select ZdyName from KH_Zdy KK where KK.ZdyNo=A.YCLCode), '); + sql.Add(' A.*,GYSName=(select ZdyName from KH_ZDY B where A.GYS=B.ZdyNo) '); + sql.Add('from CK_YCL_KC A where 1<>1'); + Open; + SCreateCDS20(ADOQuery2,ClientDataSet2); + SInitCDSData20(ADOQuery2,ClientDataSet2); + end; + finally + ADOQuery2.EnableControls; + end; +end; + +procedure TfrmGetPGJBInList.InitForm(); +begin + ReadCxGrid('б',Tv1,'ԭϲֿ'); + ReadCxGrid('бѡ',Tv2,'ԭϲֿ'); + InitGrid(); + InitGrid10(); +end; + +procedure TfrmGetPGJBInList.TBFindClick(Sender: TObject); +begin + if not ADOQueryMain.Active then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,ClientDataSet1); + SInitCDSData20(ADOQueryMain,ClientDataSet1); +end; + +function TfrmGetPGJBInList.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add(''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmGetPGJBInList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel('б',cxGrid1); +end; + +procedure TfrmGetPGJBInList.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmGetPGJBInList.PlanNoChange(Sender: TObject); +begin + if ADOQueryMain.Active then + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); +end; + +procedure TfrmGetPGJBInList.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmGetPGJBInList.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then + ModalResult:=-1 + else + ModalResult:=1; +end; + +procedure TfrmGetPGJBInList.P_ChnNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmGetPGJBInList.Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + i:Integer; +begin + if ClientDataSet1.IsEmpty then exit; + ClientDataSet2.Append; + for i:=0 to ClientDataSet2.FieldCount-1 do + begin + ClientDataSet2.Fields[i].Value:=ClientDataSet1.Fields[i].Value; + end; + ClientDataSet2.Post; + ClientDataSet1.Delete; +end; + +procedure TfrmGetPGJBInList.TV2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + i:Integer; +begin + if ClientDataSet2.IsEmpty then exit; + ClientDataSet1.Append; + for i:=0 to ClientDataSet1.FieldCount-1 do + begin + ClientDataSet1.Fields[i].Value:=ClientDataSet2.Fields[i].Value; + end; + ClientDataSet1.Post; + ClientDataSet2.Delete; +end; + +procedure TfrmGetPGJBInList.YCLNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +end. diff --git a/艾登贸易管理/U_GetPGJBOneTwoInList.dfm b/艾登贸易管理/U_GetPGJBOneTwoInList.dfm new file mode 100644 index 0000000..c62958a --- /dev/null +++ b/艾登贸易管理/U_GetPGJBOneTwoInList.dfm @@ -0,0 +1,412 @@ +object frmGetPGJBOneTwoInList: TfrmGetPGJBOneTwoInList + Left = 238 + Top = 101 + Width = 765 + Height = 623 + Caption = #24211#23384#21015#34920 + 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 + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 757 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Images = DataLink_WFBProducttion.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton1: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #30830#23450 + ImageIndex = 41 + OnClick = ToolButton1Click + end + object TBFind: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBExport: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + Visible = False + OnClick = TBExportClick + end + object TBClose: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 757 + Height = 42 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 40 + Top = 15 + Width = 48 + Height = 12 + Caption = #29289#26009#21517#31216 + end + object Label4: TLabel + Left = 216 + Top = 15 + Width = 36 + Height = 12 + Caption = #35268' '#26684 + end + object Label7: TLabel + Left = 376 + Top = 15 + Width = 48 + Height = 12 + Caption = #20379' '#24212' '#21830 + end + object YCLName: TEdit + Tag = 2 + Left = 89 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 0 + OnChange = YCLNameChange + end + object YCLSpec: TEdit + Tag = 2 + Left = 254 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 1 + OnChange = YCLNameChange + end + object GYSName: TEdit + Tag = 2 + Left = 425 + Top = 12 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = YCLNameChange + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 313 + Width = 757 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + Control = cxGrid3 + end + object cxGrid1: TcxGrid + Left = 8 + Top = 80 + Width = 713 + Height = 217 + TabOrder = 3 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'DefStr1' + end + item + Format = 'DefStr2' + Column = v1ShortName + end + item + Format = 'RollUnit' + Column = v1UnitName + end + item + Format = 'YCLCode' + Column = v1P_ChnName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Quantity + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_WFBProducttion.Default + object v1Column1: TcxGridDBColumn + Caption = #20179#24211 + DataBinding.FieldName = 'CKName' + HeaderAlignmentHorz = taCenter + Width = 82 + end + object v1P_ChnName: TcxGridDBColumn + Tag = 2 + Caption = #29289#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Width = 112 + end + object v1Column2: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v1ShortName: TcxGridDBColumn + Caption = #20379#24212#21830 + DataBinding.FieldName = 'GYSName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v1Quantity: TcxGridDBColumn + Tag = 2 + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'KCQty' + HeaderAlignmentHorz = taCenter + Width = 78 + end + object v1UnitName: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'KCUint' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Width = 73 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGrid3: TcxGrid + Left = 0 + Top = 321 + Width = 757 + Height = 265 + Align = alBottom + TabOrder = 4 + object TV2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TV2CellDblClick + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'DefStr1' + end + item + Format = 'DefStr2' + Column = cxGridDBColumn15 + end + item + Format = 'RollUnit' + Column = cxGridDBColumn17 + end + item + Format = 'YCLCode' + Column = cxGridDBColumn13 + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn16 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_WFBProducttion.Default + object V2Column1: TcxGridDBColumn + Caption = #20179#24211 + DataBinding.FieldName = 'CKName' + HeaderAlignmentHorz = taCenter + Width = 85 + end + object cxGridDBColumn13: TcxGridDBColumn + Tag = 2 + Caption = #29289#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Width = 190 + end + object cxGridDBColumn14: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Width = 171 + end + object cxGridDBColumn15: TcxGridDBColumn + Caption = #20379#24212#21830 + DataBinding.FieldName = 'GYSName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Width = 144 + end + object cxGridDBColumn16: TcxGridDBColumn + Tag = 2 + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'KCQty' + HeaderAlignmentHorz = taCenter + Width = 101 + end + object cxGridDBColumn17: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'KCUint' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Width = 68 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TV2 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 256 + Top = 232 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 360 + Top = 232 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 400 + Top = 232 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 432 + Top = 232 + end + object DataSource1: TDataSource + DataSet = ClientDataSet1 + Left = 288 + Top = 232 + end + object DataSource2: TDataSource + DataSet = ClientDataSet2 + Left = 680 + Top = 512 + end + object ADOQuery2: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 712 + Top = 512 + end + object ClientDataSet1: TClientDataSet + Aggregates = <> + Params = <> + Left = 320 + Top = 232 + end + object ClientDataSet2: TClientDataSet + Aggregates = <> + Params = <> + Left = 744 + Top = 512 + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 512 + Top = 584 + end +end diff --git a/艾登贸易管理/U_GetPGJBOneTwoInList.pas b/艾登贸易管理/U_GetPGJBOneTwoInList.pas new file mode 100644 index 0000000..2031df2 --- /dev/null +++ b/艾登贸易管理/U_GetPGJBOneTwoInList.pas @@ -0,0 +1,270 @@ +unit U_GetPGJBOneTwoInList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, cxCalendar, cxButtonEdit, cxDropDownEdit, + DBClient, cxSplitter; + +type + TfrmGetPGJBOneTwoInList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + TBExport: TToolButton; + Panel1: TPanel; + ToolButton1: TToolButton; + cxSplitter1: TcxSplitter; + DataSource2: TDataSource; + ADOQuery2: TADOQuery; + ClientDataSet1: TClientDataSet; + ClientDataSet2: TClientDataSet; + cxGridPopupMenu2: TcxGridPopupMenu; + Label3: TLabel; + Label4: TLabel; + Label7: TLabel; + YCLName: TEdit; + YCLSpec: TEdit; + GYSName: TEdit; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1P_ChnName: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1ShortName: TcxGridDBColumn; + v1Quantity: TcxGridDBColumn; + v1UnitName: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + cxGrid3: TcxGrid; + TV2: TcxGridDBTableView; + cxGridDBColumn13: TcxGridDBColumn; + cxGridDBColumn14: TcxGridDBColumn; + cxGridDBColumn15: TcxGridDBColumn; + cxGridDBColumn16: TcxGridDBColumn; + cxGridDBColumn17: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + v1Column1: TcxGridDBColumn; + V2Column1: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure PlanNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure P_ChnNameChange(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TV2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure YCLNameChange(Sender: TObject); + private + procedure InitGrid(); + procedure InitGrid10(); + procedure InitForm(); + function DelData():Boolean; + { Private declarations } + public + { Public declarations } + end; + +var + frmGetPGJBOneTwoInList: TfrmGetPGJBOneTwoInList; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmGetPGJBOneTwoInList.FormDestroy(Sender: TObject); +begin + frmGetPGJBOneTwoInList:=nil; +end; + +procedure TfrmGetPGJBOneTwoInList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmGetPGJBOneTwoInList.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; +end; + +procedure TfrmGetPGJBOneTwoInList.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('б',Tv1,'ԭϲֿ'); + WriteCxGrid('бѡ',Tv2,'ԭϲֿ'); +end; + +procedure TfrmGetPGJBOneTwoInList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' select YCLName=(select ZdyName from KH_Zdy KK where KK.ZdyNo=A.YCLCode), '); + sql.Add(' A.*,GYSName=(select ZdyName from KH_ZDY B where A.GYS=B.ZdyNo) '); + sql.Add(' from CK_YCL_KC A where A.KCQty>0'); + sql.Add(' and A.CKName in(''ԭϲֿ'',''ԭ϶'') '); + Open; + SCreateCDS20(ADOQueryMain,ClientDataSet1); + SInitCDSData20(ADOQueryMain,ClientDataSet1); + end; + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmGetPGJBOneTwoInList.InitGrid10(); +begin + try + ADOQuery2.DisableControls; + with ADOQuery2 do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' select YCLName=(select ZdyName from KH_Zdy KK where KK.ZdyNo=A.YCLCode), '); + sql.Add(' A.*,GYSName=(select ZdyName from KH_ZDY B where A.GYS=B.ZdyNo) '); + sql.Add('from CK_YCL_KC A where 1<>1'); + Open; + SCreateCDS20(ADOQuery2,ClientDataSet2); + SInitCDSData20(ADOQuery2,ClientDataSet2); + end; + finally + ADOQuery2.EnableControls; + end; +end; + +procedure TfrmGetPGJBOneTwoInList.InitForm(); +begin + ReadCxGrid('б',Tv1,'ԭϲֿ'); + ReadCxGrid('бѡ',Tv2,'ԭϲֿ'); + InitGrid(); + InitGrid10(); +end; + +procedure TfrmGetPGJBOneTwoInList.TBFindClick(Sender: TObject); +begin + if not ADOQueryMain.Active then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,ClientDataSet1); + SInitCDSData20(ADOQueryMain,ClientDataSet1); +end; + +function TfrmGetPGJBOneTwoInList.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add(''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmGetPGJBOneTwoInList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel('б',cxGrid1); +end; + +procedure TfrmGetPGJBOneTwoInList.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmGetPGJBOneTwoInList.PlanNoChange(Sender: TObject); +begin + if ADOQueryMain.Active then + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); +end; + +procedure TfrmGetPGJBOneTwoInList.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmGetPGJBOneTwoInList.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then + ModalResult:=-1 + else + ModalResult:=1; +end; + +procedure TfrmGetPGJBOneTwoInList.P_ChnNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmGetPGJBOneTwoInList.Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + i:Integer; +begin + if ClientDataSet1.IsEmpty then exit; + ClientDataSet2.Append; + for i:=0 to ClientDataSet2.FieldCount-1 do + begin + ClientDataSet2.Fields[i].Value:=ClientDataSet1.Fields[i].Value; + end; + ClientDataSet2.Post; + ClientDataSet1.Delete; +end; + +procedure TfrmGetPGJBOneTwoInList.TV2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + i:Integer; +begin + if ClientDataSet2.IsEmpty then exit; + ClientDataSet1.Append; + for i:=0 to ClientDataSet1.FieldCount-1 do + begin + ClientDataSet1.Fields[i].Value:=ClientDataSet2.Fields[i].Value; + end; + ClientDataSet1.Post; + ClientDataSet2.Delete; +end; + +procedure TfrmGetPGJBOneTwoInList.YCLNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +end. diff --git a/艾登贸易管理/U_HCList.dfm b/艾登贸易管理/U_HCList.dfm new file mode 100644 index 0000000..d1242ae --- /dev/null +++ b/艾登贸易管理/U_HCList.dfm @@ -0,0 +1,724 @@ +object frmHCList: TfrmHCList + Left = 95 + Top = 128 + Width = 1140 + Height = 555 + Caption = #25104#21697#24211#23384#27719#24635#21015#34920 + 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 = 1124 + Height = 33 + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBExport: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object Tprint: TToolButton + Left = 189 + Top = 0 + Caption = #25171#21360#32568#26631#31614 + ImageIndex = 96 + Visible = False + end + object TBClose: TToolButton + Left = 284 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1124 + Height = 64 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 259 + Top = 16 + Width = 48 + Height = 12 + Caption = #20135#21697#21517#31216 + end + object Label4: TLabel + Left = 260 + Top = 40 + Width = 48 + Height = 12 + Caption = #39068' '#33394 + end + object Label1: TLabel + Left = 48 + Top = 16 + Width = 48 + Height = 12 + Caption = #22238#20179#26102#38388 + end + object Label2: TLabel + Left = 84 + Top = 36 + Width = 12 + Height = 12 + Caption = #33267 + end + object Label5: TLabel + Left = 472 + Top = 16 + Width = 48 + Height = 12 + Caption = #20219#21153#21333#21495 + end + object Label6: TLabel + Left = 36 + Top = 76 + Width = 48 + Height = 12 + Caption = #26465' '#30721 + end + object Label8: TLabel + Left = 195 + Top = 92 + Width = 48 + Height = 12 + Caption = #20811' '#37325 + end + object Label9: TLabel + Left = 428 + Top = 92 + Width = 24 + Height = 12 + Caption = #38376#24133 + end + object Label7: TLabel + Left = 510 + Top = 68 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object Label10: TLabel + Left = 472 + Top = 40 + Width = 48 + Height = 12 + Caption = #32568' '#21495 + end + object Label11: TLabel + Left = 668 + Top = 16 + Width = 36 + Height = 12 + Caption = #21152#24037#21378 + end + object C_CodeName: TEdit + Tag = 2 + Left = 312 + Top = 13 + Width = 100 + Height = 20 + TabOrder = 0 + OnChange = C_CodeNameChange + end + object C_Color: TEdit + Tag = 2 + Left = 312 + Top = 37 + Width = 100 + Height = 20 + TabOrder = 1 + OnChange = C_CodeNameChange + end + object BegDate: TDateTimePicker + Left = 97 + Top = 13 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Format = 'yyyy-MM-dd' + Time = 40768.458268587970000000 + TabOrder = 2 + end + object EndDate: TDateTimePicker + Left = 97 + Top = 37 + Width = 87 + Height = 20 + Date = 40768.458268587970000000 + Format = 'yyyy-MM-dd' + Time = 40768.458268587970000000 + TabOrder = 3 + end + object conNO: TEdit + Tag = 2 + Left = 522 + Top = 13 + Width = 100 + Height = 20 + TabOrder = 4 + OnChange = C_CodeNameChange + end + object MJID: TEdit + Tag = 2 + Left = 86 + Top = 73 + Width = 109 + Height = 20 + TabOrder = 5 + OnChange = C_CodeNameChange + end + object KZ: TEdit + Tag = 2 + Left = 240 + Top = 89 + Width = 100 + Height = 20 + TabOrder = 6 + OnChange = C_CodeNameChange + end + object MF: TEdit + Tag = 2 + Left = 452 + Top = 88 + Width = 100 + Height = 20 + TabOrder = 7 + OnChange = C_CodeNameChange + end + object CPType: TComboBox + Tag = 2 + Left = 536 + Top = 64 + Width = 68 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 8 + OnChange = TBFindClick + Items.Strings = ( + #27491#21697 + #27425#21697 + #30041#26679 + '') + end + object AOrddefstr1: TEdit + Tag = 2 + Left = 522 + Top = 37 + Width = 100 + Height = 20 + TabOrder = 9 + OnChange = C_CodeNameChange + end + object AOrddefstr4: TEdit + Tag = 2 + Left = 714 + Top = 13 + Width = 100 + Height = 20 + TabOrder = 10 + OnChange = C_CodeNameChange + end + object CheckBox1: TCheckBox + Left = 716 + Top = 40 + Width = 97 + Height = 17 + Caption = #20840#36873 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + OnClick = CheckBox1Click + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 97 + Width = 1124 + Height = 396 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCustomDrawCell = Tv1CustomDrawCell + DataController.DataSource = DataSource1 + 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 + Column = v1Column7 + end + item + Kind = skSum + Column = v1Column8 + end + item + Kind = skSum + Column = v1Column9 + end + item + Kind = skSum + Column = v1Column10 + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column16 + end + item + Kind = skSum + Column = v1Column15 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + OptionsView.IndicatorWidth = 20 + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + OnCustomDrawIndicatorCell = Tv1CustomDrawIndicatorCell + object v1Column17: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'Ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.Alignment = taCenter + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column1: TcxGridDBColumn + Caption = #22238#20179#26102#38388 + DataBinding.FieldName = 'ADefDate1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object v1Column2: TcxGridDBColumn + Caption = #21152#24037#21378 + DataBinding.FieldName = 'AOrddefstr4' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1Column13: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'orderNo' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column14: TcxGridDBColumn + Caption = 'PO#' + DataBinding.FieldName = 'KHConNO' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column3: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'conNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column4: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'AOrddefstr1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column5: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'C_CodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object v1Column6: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'C_Color' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column7: TcxGridDBColumn + Caption = #22238#20179#21305#25968 + DataBinding.FieldName = 'HC_ps' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = cxStyle_fontclBlue + Styles.Footer = cxStyle_fontclBlue + Styles.Header = cxStyle_fontclBlue + Width = 60 + end + object v1Column8: TcxGridDBColumn + Caption = #22238#20179#25968#37327 + DataBinding.FieldName = 'AOrdQty1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = cxStyle_fontclBlue + Styles.Footer = cxStyle_fontclBlue + Styles.Header = cxStyle_fontclBlue + Width = 66 + end + object v1Column18: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'Aorddefstr2' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column9: TcxGridDBColumn + Caption = #26816#39564#21305#25968 + DataBinding.FieldName = 'JY_ps' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = cxStyle_fontclFuchsia + Styles.Footer = cxStyle_fontclFuchsia + Styles.Header = cxStyle_fontclFuchsia + Width = 80 + end + object v1Column10: TcxGridDBColumn + Caption = #26816#39564#25968#37327'(KG)' + DataBinding.FieldName = 'JY_Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = cxStyle_fontclFuchsia + Styles.Footer = cxStyle_fontclFuchsia + Styles.Header = cxStyle_fontclFuchsia + Width = 87 + end + object v1Column16: TcxGridDBColumn + Caption = #20837#24211#21305#25968 + DataBinding.FieldName = 'RK_RollNum' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = cxStyle_fontclGreen + Styles.Footer = cxStyle_fontclGreen + Styles.Header = cxStyle_fontclGreen + Width = 80 + end + object v1Column15: TcxGridDBColumn + Caption = #20837#24211#25968#37327'(KG)' + DataBinding.FieldName = 'RK_Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = cxStyle_fontclGreen + Styles.Footer = cxStyle_fontclGreen + Styles.Header = cxStyle_fontclGreen + Width = 85 + end + object v1Column11: TcxGridDBColumn + Caption = #21046#21333#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 74 + end + object v1Column12: TcxGridDBColumn + Caption = #21046#21333#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 99 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object MovePanel2: TMovePanel + Left = 408 + Top = 188 + Width = 289 + Height = 49 + BevelInner = bvLowered + Caption = #27491#22312#26597#35810#25968#25454#65292#35831#31245#21518#12290#12290#12290 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 968 + Top = 40 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 984 + Top = 40 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 944 + Top = 32 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 920 + Top = 152 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 856 + Top = 144 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 896 + Top = 128 + end + object cxStyleRepository1: TcxStyleRepository + Left = 69 + Top = 130 + object cxStyle1: TcxStyle + AssignedValues = [svColor] + Color = clInactiveCaption + end + object cxStyle2: TcxStyle + AssignedValues = [svColor, svTextColor] + Color = 4707838 + TextColor = clBtnText + end + object cxStyle_gridRow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16311512 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_gridFoot: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridHead: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridGroupBox: TcxStyle + AssignedValues = [svColor, svFont] + Color = clMoneyGreen + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_yellow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + end + object cxStyle_fontBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_fontclFuchsia: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clFuchsia + end + object cxStyle_fontclPurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clPurple + end + object cxStyle_fontclGreen: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clGreen + end + object cxStyle_fontclBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object cxStyle_fontclTeal: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [fsBold] + TextColor = clTeal + end + object cxStyle_fontclOlive: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [fsBold] + TextColor = clOlive + end + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = 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 = 496 + Top = 208 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 448 + Top = 200 + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 752 + Top = 192 + end +end diff --git a/艾登贸易管理/U_HCList.pas b/艾登贸易管理/U_HCList.pas new file mode 100644 index 0000000..ea8c0ab --- /dev/null +++ b/艾登贸易管理/U_HCList.pas @@ -0,0 +1,279 @@ +unit U_HCList; + +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, MovePanel, cxCheckBox, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport; + +type + TfrmHCList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBExport: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + cxGridPopupMenu1: TcxGridPopupMenu; + Label3: TLabel; + Label4: TLabel; + C_CodeName: TEdit; + C_Color: TEdit; + Label1: TLabel; + Label2: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + CDS_Main: TClientDataSet; + Tv1: TcxGridDBTableView; + cxGrid2Level1: TcxGridLevel; + cxGrid2: TcxGrid; + Label5: TLabel; + conNO: TEdit; + Label6: TLabel; + MJID: TEdit; + Label8: TLabel; + KZ: TEdit; + Label9: TLabel; + MF: TEdit; + Label7: TLabel; + CPType: TComboBox; + MovePanel2: TMovePanel; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + Label10: TLabel; + AOrddefstr1: TEdit; + Label11: TLabel; + AOrddefstr4: TEdit; + v1Column11: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + v1Column15: TcxGridDBColumn; + v1Column16: TcxGridDBColumn; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxStyle_gridRow: TcxStyle; + cxStyle_gridFoot: TcxStyle; + cxStyle_gridHead: TcxStyle; + cxStyle_gridGroupBox: TcxStyle; + cxStyle_yellow: TcxStyle; + cxStyle_Red: TcxStyle; + cxStyle_fontBlack: TcxStyle; + cxStyle_fontclFuchsia: TcxStyle; + cxStyle_fontclPurple: TcxStyle; + cxStyle_fontclGreen: TcxStyle; + cxStyle_fontclBlue: TcxStyle; + cxStyle_fontclTeal: TcxStyle; + cxStyle_fontclOlive: TcxStyle; + v1Column17: TcxGridDBColumn; + Tprint: TToolButton; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + ADOQueryPrint: TADOQuery; + CheckBox1: TCheckBox; + v1Column13: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + v1Column18: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure C_CodeNameChange(Sender: TObject); + procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure Tv1CustomDrawIndicatorCell(Sender: TcxGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; + var ADone: Boolean); + procedure CheckBox1Click(Sender: TObject); + private + procedure InitGrid(); + { Private declarations } + public + { Public declarations } + end; + +var + frmHCList: TfrmHCList; + +implementation +uses + U_DataLink,U_Fun; + +{$R *.dfm} + +procedure TfrmHCList.FormDestroy(Sender: TObject); +begin + frmHCList:=nil; +end; + +procedure TfrmHCList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmHCList.FormCreate(Sender: TObject); +begin + cxGrid2.Align:=alClient; + BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp) +end; + +procedure TfrmHCList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + + Close; + sql.Clear; + Filtered:=False; + sql.Add('select A.*,hC_ps=A.AordQty2,JY_ps=(select count(MainID) from WFB_MJJY X where X.APID=A.APID),'); + sql.Add('JY_Qty=(select sum(MJMaoZ) from WFB_MJJY X where X.APID=A.APID), '); + sql.Add('RK_RollNum=(select count(MainID) from CK_BanCP_CR X where X.APID=A.APID and X.CRType=''''),'); + sql.Add('RK_Qty=(select sum(KGQty) from CK_BanCP_CR X where X.APID=A.APID and X.CRType=''''), '); + sql.Add('KHCOnNO=(select KHCOnNo from JYOrdercon_Main X where X.conNO=B.conNO), '); + sql.Add('B.OrderNo,B.ConNO,C.PRTColor,B.MPrtCodeName,B.Mprtspec '); + sql.Add('from JYOrder_sub_anPai A '); + sql.Add('inner join JYOrder_Main B on B.mainID=A.mainID ') ; + sql.Add('inner join JYOrder_Sub C on C.subID=A.subID ') ; + SQL.Add('WHERE ADefDate1>='''+formatdateTime('yyyy-MM-dd',BegDate.DateTime)+''' '); + SQL.Add('AND ADefDate1<'''+formatdateTime('yyyy-MM-dd',enddate.DateTime+1)+''' '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + TBFind.Click; + end; +end; + +procedure TfrmHCList.TBRafreshClick(Sender: TObject); +begin + //BegDate.SetFocus; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + InitGrid(); + MovePanel2.Visible:=False; +end; + +procedure TfrmHCList.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + end; +end; + +procedure TfrmHCList.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption,Tv1,'Ʒֿ'); + Close; +end; + +procedure TfrmHCList.FormShow(Sender: TObject); +begin + + ReadCxGrid(self.Caption,Tv1,'Ʒֿ'); + + //InitGrid(); +end; + +procedure TfrmHCList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then exit; + TcxGridToExcel(self.Caption,cxGrid2); +end; + +procedure TfrmHCList.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 TfrmHCList.C_CodeNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmHCList.Tv1CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); +begin + IF AViewInfo.GridRecord.Values[tv1.GetColumnByFieldName('HC_PS').Index]<>AViewInfo.GridRecord.Values[tv1.GetColumnByFieldName('JY_ps').Index] then + begin + ACanvas.Brush.Color:=clSkyBlue; + end; +end; + +procedure TfrmHCList.Tv1CustomDrawIndicatorCell(Sender: TcxGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; + var ADone: Boolean); +var + FValue: string; + FBounds: TRect; + begin + FBounds := AViewInfo.Bounds; + if (AViewInfo is TcxGridIndicatorRowItemViewInfo) then + begin + ACanvas.FillRect(FBounds); + ACanvas.DrawComplexFrame(FBounds, clBtnHighlight, clBtnShadow, [bBottom, bLeft, bRight], 1); + FValue :=IntToStr(TcxGridIndicatorRowItemViewInfo(AViewInfo).GridRecord.Index+1); + InflateRect(FBounds, -1, -1) ; + ACanvas.Font.Color := clBlack; + ACanvas.Brush.Style := bsClear; + ACanvas.DrawText(FValue, FBounds, cxAlignCenter or cxAlignTop); + ADone := True; + end; + end; + + +procedure TfrmHCList.CheckBox1Click(Sender: TObject); +begin + IF CDS_Main.IsEmpty then exit; + with CDS_Main do + begin + DisableControls; + first; + while not eof do + begin + edit; + fieldbyname('ssel').Value:=checkbox1.Checked; + post; + next; + end; + First; + EnableControls; + end; +end; + +end. diff --git a/艾登贸易管理/U_JBData.dfm b/艾登贸易管理/U_JBData.dfm new file mode 100644 index 0000000..2f0bc9f --- /dev/null +++ b/艾登贸易管理/U_JBData.dfm @@ -0,0 +1,265 @@ +object frmJBData: TfrmJBData + Left = 133 + Top = 13 + Width = 1056 + Height = 704 + Caption = #20132#29677 + Color = clBtnFace + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 13 + object Label1: TLabel + Left = 686 + Top = 139 + Width = 49 + Height = 97 + Caption = 'M' + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -96 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 295 + Top = 25 + Width = 388 + Height = 97 + Caption = #20132#29677#21367#38271 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -96 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Button1: TButton + Left = 291 + Top = 488 + Width = 154 + Height = 97 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -56 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnClick = Button1Click + end + object MJLen: TEdit + Left = 291 + Top = 134 + Width = 390 + Height = 105 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -96 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + end + object Panel3: TPanel + Left = 192 + Top = 248 + Width = 617 + Height = 211 + BevelInner = bvRaised + BevelOuter = bvLowered + ParentColor = True + TabOrder = 2 + object SpeedButton1: TSpeedButton + Left = 411 + Top = 106 + Width = 100 + Height = 100 + Caption = '0' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton2: TSpeedButton + Left = 3 + Top = 2 + Width = 100 + Height = 100 + Caption = '1' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton3: TSpeedButton + Left = 105 + Top = 2 + Width = 100 + Height = 100 + Caption = '2' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton4: TSpeedButton + Left = 207 + Top = 2 + Width = 100 + Height = 100 + Caption = '3' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton5: TSpeedButton + Left = 309 + Top = 2 + Width = 100 + Height = 100 + Caption = '4' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton6: TSpeedButton + Left = 411 + Top = 2 + Width = 100 + Height = 100 + Caption = '5' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton7: TSpeedButton + Left = 3 + Top = 106 + Width = 100 + Height = 100 + Caption = '6' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton8: TSpeedButton + Left = 105 + Top = 106 + Width = 100 + Height = 100 + Caption = '7' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton9: TSpeedButton + Left = 207 + Top = 106 + Width = 100 + Height = 100 + Caption = '8' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton10: TSpeedButton + Left = 309 + Top = 106 + Width = 100 + Height = 100 + Caption = '9' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton12: TSpeedButton + Left = 513 + Top = 2 + Width = 100 + Height = 100 + Caption = #8592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton12Click + end + end + object Button2: TButton + Left = 534 + Top = 488 + Width = 154 + Height = 97 + Caption = #36864#20986 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -56 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = Button2Click + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_RCInspection.ADOLink + Parameters = <> + Left = 384 + Top = 8 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_RCInspection.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 448 + Top = 8 + end +end diff --git a/艾登贸易管理/U_JBData.pas b/艾登贸易管理/U_JBData.pas new file mode 100644 index 0000000..43dfa43 --- /dev/null +++ b/艾登贸易管理/U_JBData.pas @@ -0,0 +1,260 @@ +unit U_JBData; //ʹϵͳһֹࡣ + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, DB, ADODB, StdCtrls, Buttons, ExtCtrls; + +type + TfrmJBData = class(TForm) + Button1: TButton; + MJLen: TEdit; + Label1: TLabel; + ADOQueryCmd: TADOQuery; + Label2: TLabel; + Panel3: TPanel; + SpeedButton1: TSpeedButton; + SpeedButton2: TSpeedButton; + SpeedButton3: TSpeedButton; + SpeedButton4: TSpeedButton; + SpeedButton5: TSpeedButton; + SpeedButton6: TSpeedButton; + SpeedButton7: TSpeedButton; + SpeedButton8: TSpeedButton; + SpeedButton9: TSpeedButton; + SpeedButton10: TSpeedButton; + SpeedButton12: TSpeedButton; + ADOQueryTemp: TADOQuery; + Button2: TButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormShow(Sender: TObject); + procedure SpeedButton1Click(Sender: TObject); + procedure SpeedButton12Click(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + private + { Private declarations } + public + { Public declarations } + end; + +var + frmJBData: TfrmJBData; + +implementation +Uses +U_DataLink,U_Fun,U_ZDYHelp,U_iniParam; + +{$R *.dfm} + +procedure TfrmJBData.FormDestroy(Sender: TObject); +begin + frmJBData:=nil; +end; + +procedure TfrmJBData.FormClose(Sender: TObject; var Action: TCloseAction); +begin + + Action:=caFree; +end; + +procedure TfrmJBData.FormShow(Sender: TObject); +begin + MJLen.SetFocus; +end; + +procedure TfrmJBData.SpeedButton1Click(Sender: TObject); +begin + MJLen.Text:=Trim(MJLen.Text)+Trim(TSpeedButton(Sender).Caption); + MJLen.SelectAll; +end; + +procedure TfrmJBData.SpeedButton12Click(Sender: TObject); +begin + if Trim(MJLen.Text)<>'' then + begin + MJLen.Text:=Copy(Trim(MJLen.Text),1,Length(Trim(MJLen.Text))-1); + MJLen.SelectAll; + end; +end; + +procedure TfrmJBData.Button1Click(Sender: TObject); +var + FFMJLen:Double; + MJIDInt:Integer; + maxno,maxno10,FBanZu,maxno100,maxno200,maxno300:String; +begin + if Trim(MJLen.Text)='' then + begin + Application.MessageBox('Ϊգ','ʾ',0); + MJLen.SetFocus; + exit; + end; + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(Max(Cast(MJID as int)),0) MJIDInt from WFB_MJJY'); + if Trim(SCXFlag)<>'' then + begin + sql.Add(' where JTType='''+Trim(SCXFlag)+''''); + end; + Open; + end; + + MJIDInt:=ADOQueryTemp.fieldbyname('MJIDInt').Value; + maxno100:=Trim(FormatDateTime('yyyyMMdd',SGetServerDateTime(ADOQueryTemp))); + maxno100:=Trim(SCXFlag)+Trim(Copy(maxno100,3,6)); + maxno200:=IntToStr(MJIDInt); + maxno200:=Copy(maxno200,1,7); + if StrToInt(maxno100)>StrToInt(maxno200) then + begin + maxno300:=Trim(maxno100)+'01'; + end else + begin + maxno300:=IntToStr(MJIDInt+1); + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_JYResult where MJID='''+Trim(maxno300)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + Application.MessageBox('δ鲻ܽ࣡','ʾ',0); + Exit; + end; + // ʹϵͳһֹࡣ + if MJIDInt>0 then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_JB where MJID='''+Trim(Inttostr(MJIDInt+1))+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('ѵǼǣ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪִвȷݽ޸ģ','ʾ',32+4)<>IDYES then + begin + MJLen.Text:=''; + MJLen.SetFocus; + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + //潻 + if GetLSNo(ADOQueryCmd,maxno,'JB','WFB_JB',2,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡID쳣','ʾ',0); + Exit; + end; + + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select * from SY_User where UserId='''+Trim(DCode)+''''); + Open; + end; + FBanZu:=Trim(ADOQueryTemp.fieldbyname('BanZu').AsString); + FFMJLen:=StrToFloat(MJLen.Text); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_JB where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('JBID').Value:=Trim(maxno); + FieldByName('MJID').Value:=Trim(maxno300); + FieldByName('MJLen').Value:=FFMJLen; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('BanZu').Value:=Trim(FBanZu); + if Trim(SCXFlag)<>'' then + begin + FieldByName('JTType').Value:=Trim(SCXFlag); + end; + Post; + end; + //潻 + //Ա + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from SY_User where BanZu='''+Trim(FBanZu)+''''); + Open; + end; + with ADOQueryTemp do + begin + First; + while not eof do + begin + if GetLSNo(ADOQueryCmd,maxno10,'BZ','WFB_BanZu',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_BanZu where 1<>1'); + open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('BZID').Value:=Trim(maxno10); + FieldByName('BanZu').Value:=Trim(FBanZu); + FieldByName('MJID').Value:=Trim(maxno300); + // FieldByName('MJID').Value:=Trim(IntToStr(MJIDInt+1)); + FieldByName('MJLen').Value:=StrToFloat(MJLen.Text); + FieldByName('UserId').Value:=Trim(ADOQueryTemp.fieldbyname('UserId').AsString); + FieldByName('UserName').Value:=Trim(ADOQueryTemp.fieldbyname('UserName').AsString); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('JBID').Value:=Trim(maxno); + Post; + end; + Next; + end; + end; + + //Ա + ADOQueryCmd.Connection.CommitTrans; + //Application.MessageBox('Ǽdzɹ!','ʾ',0); + Exit; + except + + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; + end else + begin + Application.MessageBox('ʹϵͳһֹ࣡','ʾ',0); + Exit; + end; + +end; + +procedure TfrmJBData.Button2Click(Sender: TObject); +begin + Close; +end; + +end. diff --git a/艾登贸易管理/U_JYMJIDPRINT.dfm b/艾登贸易管理/U_JYMJIDPRINT.dfm new file mode 100644 index 0000000..b94d7a0 --- /dev/null +++ b/艾登贸易管理/U_JYMJIDPRINT.dfm @@ -0,0 +1,135 @@ +object frmJYMJIDPRINT: TfrmJYMJIDPRINT + Left = 391 + Top = 247 + BorderIcons = [] + BorderStyle = bsToolWindow + Caption = #26816#39564#25253#21578 + ClientHeight = 202 + ClientWidth = 338 + 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 + OnDestroy = FormDestroy + PixelsPerInch = 96 + TextHeight = 12 + object Button1: TButton + Left = 33 + Top = 148 + Width = 60 + Height = 25 + Caption = #25171#21360 + TabOrder = 0 + OnClick = Button1Click + end + object RadioGroup1: TRadioGroup + Left = 28 + Top = 24 + Width = 249 + Height = 117 + ItemIndex = 1 + Items.Strings = ( + #26816#39564#21333#21367#20013#25991#20449#24687#34920'('#32654#26631')' + #26816#39564#21333#21367#33521#25991#20449#24687#34920'('#32654#26631')' + #26816#39564#21333#21367#20013#25991#20449#24687#34920'('#27431#26631')' + #26816#39564#21333#21367#33521#25991#20449#24687#34920'('#27431#26631')') + TabOrder = 1 + end + object Button2: TButton + Left = 129 + Top = 148 + Width = 60 + Height = 25 + Caption = #20851#38381 + TabOrder = 2 + OnClick = Button2Click + end + object Button3: TButton + Left = 217 + Top = 148 + Width = 60 + Height = 25 + Caption = #23548#20986 + TabOrder = 3 + OnClick = Button3Click + end + object ADOQueryTmp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 81 + Top = 33 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 84 + Top = 100 + end + object CDS_T: TClientDataSet + Aggregates = <> + Params = <> + Left = 128 + Top = 100 + end + object CDS_Z: TClientDataSet + Aggregates = <> + Params = <> + Left = 160 + Top = 100 + end + object CDS_E: TClientDataSet + Aggregates = <> + Params = <> + Left = 204 + Top = 100 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = CDS_Main + Left = 76 + Top = 167 + end + object RMDB_T: TRMDBDataSet + Visible = True + DataSet = CDS_T + Left = 140 + Top = 168 + end + object RMDB_Z: TRMDBDataSet + Visible = True + DataSet = CDS_Z + Left = 200 + Top = 168 + end + object RMDB_E: TRMDBDataSet + Visible = True + DataSet = CDS_E + Left = 256 + Top = 168 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 344 + Top = 136 + ReportData = {} + end +end diff --git a/艾登贸易管理/U_JYMJIDPRINT.pas b/艾登贸易管理/U_JYMJIDPRINT.pas new file mode 100644 index 0000000..7044ef4 --- /dev/null +++ b/艾登贸易管理/U_JYMJIDPRINT.pas @@ -0,0 +1,339 @@ +unit U_JYMJIDPRINT; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, RM_Common, RM_Class, RM_e_Xls, RM_GridReport, RM_System, + RM_Dataset, DBClient, DB, ADODB, StdCtrls, ExtCtrls, RM_E_llPDF; + +type + TfrmJYMJIDPRINT = class(TForm) + ADOQueryTmp: TADOQuery; + CDS_Main: TClientDataSet; + CDS_T: TClientDataSet; + CDS_Z: TClientDataSet; + CDS_E: TClientDataSet; + RMDB_Main: TRMDBDataSet; + RMDB_T: TRMDBDataSet; + RMDB_Z: TRMDBDataSet; + RMDB_E: TRMDBDataSet; + RMGridReport1: TRMGridReport; + Button1: TButton; + RadioGroup1: TRadioGroup; + Button2: TButton; +// RMllPDFExport1: TRMllPDFExport; + Button3: TButton; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + private + Procedure Print1(flag1:integer); + { Private declarations } + public + fMJID:string; + Fflag:integer; + { Public declarations } + end; + +var + frmJYMJIDPRINT: TfrmJYMJIDPRINT; + +implementation + uses + U_DataLink,U_Fun,U_JYOrderCDOne, U_CKProductBCPOutList; +{$R *.dfm} +Procedure TfrmJYMJIDPRINT.Print1(flag1:integer); +var + i,j:integer; + fstr1,fPrintFile:string; + Txt,fImagePath:string; + Moudle: THandle; + Makebar:TMakebar; + Mixtext:TMixtext; +begin + + with ADOqueryTmp do + begin + Close; + sql.Clear; + sql.Add('delete TBSubID where DName='''+Trim(DCode)+''''); + ExecSQL; + end; + with ADOqueryTmp do + begin + Close; + sql.Clear; + sql.Add('select * FROM TBSubID where DName='''+Trim(DCode)+''''); + open; + append; + fieldbyname('SubId').Value:=Trim(fMJID); + fieldbyname('Dname').Value:=Trim(DCode); + post; + end; + + + with ADOqueryTmp do + begin + close; + sql.Clear; + sql.Add(' exec P_Get_JYMJID_Main '); + sql.Add(' @MJID='+quotedstr(fMJID)); + if radiogroup1.ItemIndex>1 then + sql.Add(',@flag=''1'' ') + else + sql.Add(',@flag=''0'' '); + sql.Add(',@userID='+quotedstr(trim(DCode))); + open; + end; + SCreateCDS20(ADOqueryTmp,CDS_Main); + SInitCDSData20(ADOqueryTmp,CDS_Main); + + with ADOqueryTmp do + begin + close; + sql.Clear; + sql.Add(' exec P_Get_JYMJID '); + sql.Add(' @MJID='+quotedstr(fMJID)); + sql.Add(',@Flag='+quotedstr('0')); + open; + end; + SCreateCDS20(ADOqueryTmp,CDS_T); + SCreateCDS20(ADOqueryTmp,CDS_Z); + SCreateCDS20(ADOqueryTmp,CDS_E); +// SInitCDSData20(ADOQueryMain,Order_Main); + + +//ֵͷϢ + with ADOqueryTmp do + begin + close; + sql.Clear; + sql.Add(' exec P_Get_JYMJID '); + sql.Add(' @MJID='+quotedstr(fMJID)); + if (radiogroup1.ItemIndex=1) or (radiogroup1.ItemIndex=3) then + sql.Add(',@Flag='+quotedstr('2')) + else + sql.Add(',@Flag='+quotedstr('1')); + open; + end; + with CDS_T do + begin + append; + fieldbyname('N').Value:=1; + post; + while not ADOqueryTmp.eof do + begin + edit; + fieldbyname('H'+inttostr(ADOqueryTmp.fieldbyname('keyNo').AsInteger)).Value:=ADOqueryTmp.fieldbyname('cdName').asstring; + post; + ADOqueryTmp.Next; + i:=i+1; + end; + end; + + + //ֵмεϢ + with ADOqueryTmp do + begin + close; + sql.Clear; + sql.Add(' exec P_Get_JYMJID '); + sql.Add(' @MJID='+quotedstr(fMJID)); + sql.Add(',@Flag='+quotedstr('3')); + open; + end; + i:=1; + j:=1; + with CDS_Z do + begin + for j:=1 to 150 do + begin + append; + fieldbyname('N').Value:=j; + post; + end; + end; + + with CDS_Z do + begin + while not ADOqueryTmp.Eof do + begin + IF Locate('N',ADOqueryTmp.fieldbyname('H').AsInteger,[]) then + begin + Edit; + for i:=2 to 15 do + begin + Fields[i].Value:='----'; + end; + fieldbyname('N1').Value:=ADOqueryTmp.fieldbyname('CDBeg').AsString; + + IF ADOqueryTmp.FieldByName('KouFenQty').AsFloat>0 then + begin + fieldbyname('H'+inttostr(ADOqueryTmp.fieldbyname('keyNo').AsInteger)).Value:=inttostr(ADOqueryTmp.fieldbyname('KouFenQty').AsInteger)+'p'; + end; + IF ADOqueryTmp.FieldByName('CDName').AsString='' then + begin + fieldbyname('E1').Value:='----'; + fieldbyname('E2').Value:='----'; + fieldbyname('E3').Value:=ADOqueryTmp.fieldbyname('CDQty').AsString; + end; + post; + + IF (ADOqueryTmp.FieldByName('koufenType').AsString='1覴') + and (ADOqueryTmp.FieldByName('H1').AsInteger>ADOqueryTmp.FieldByName('H').AsInteger ) then + begin + for i:=ADOqueryTmp.FieldByName('H').AsInteger to ADOqueryTmp.FieldByName('H1').AsInteger do + begin + IF Locate('N',i,[]) then + begin + Edit; + fieldbyname('H'+inttostr(ADOqueryTmp.fieldbyname('keyNo').AsInteger)).Value:='====='; + post; + end; + end; + end; + end; + ADOqueryTmp.Next; + end; + end; + + //ֵܽϢ + + with ADOqueryTmp do + begin + close; + sql.Clear; + sql.Add(' exec P_Get_JYMJID '); + sql.Add(' @MJID='+quotedstr(fMJID)); + sql.Add(',@Flag='+quotedstr('4')); + open; + end; + i:=1; + with CDS_E do + begin + append; + fieldbyname('N').Value:=1; + post; + while not ADOqueryTmp.eof do + begin + edit; + fieldbyname('H'+inttostr(ADOqueryTmp.fieldbyname('keyNo').AsInteger)).Value:=ADOqueryTmp.fieldbyname('num').asstring; + post; + ADOqueryTmp.Next; + i:=i+1; + end; + end; + if (radiogroup1.ItemIndex=0) or (radiogroup1.ItemIndex=2) then + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\鵥Ϣ.rmf'; + if (radiogroup1.ItemIndex=1) or (radiogroup1.ItemIndex=3) then + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\鵥Ϣ(Ӣ).rmf'; + if NOT FileExists(fPrintFile) then + begin + Application.MessageBox(PChar('û'+trim(fPrintFile)),'ʾ',MB_ICONERROR); + exit; + end; + RMGridReport1.LoadFromFile(fPrintFile); + if flag1=0 then + RMGridReport1.ShowReport; + If flag1=1 then + begin + + if not DirectoryExists(pchar('D:\pdfĵ')) then + CreateDirectory(pchar('D:\pdfĵ'),nil); + fstr1:='D:\pdfĵ\'+trim(CDS_Main.fieldbyname('ISHzEng').AsString)+'_'+trim(CDS_Main.fieldbyname('MJID').AsString)+'_'+trim(CDS_Main.fieldbyname('MJXH').AsString)+'.pdf'; + RMGridReport1.PrepareReport; +// RMGridReport1.ExportTo(RMllPDFExport1,fstr1); + end; + // RMGridReport1.PrepareReport; + // RMGridReport1.PrintReport10(); +// RMGridReport1.ExportTo(RMXLSExport1,'C:\111.excel'); +// RMGridReport1.ExportTo(RMllPDFExport1,'C:\111.pdf'); + + +end; + +procedure TfrmJYMJIDPRINT.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=cafree; +end; + +procedure TfrmJYMJIDPRINT.FormDestroy(Sender: TObject); +begin + frmJYMJIDPRINT:=nil; +end; + +procedure TfrmJYMJIDPRINT.Button1Click(Sender: TObject); +begin + Print1(0); +end; + +procedure TfrmJYMJIDPRINT.FormCreate(Sender: TObject); +begin + fMJID:='1504080304'; + Fflag:=0; +end; + +procedure TfrmJYMJIDPRINT.Button2Click(Sender: TObject); +begin + close; +end; + +procedure TfrmJYMJIDPRINT.Button3Click(Sender: TObject); +begin + + IF Fflag=1 then + begin + if frmCKProductBCPOutList.CDS_Main.IsEmpty then Exit; + if frmCKProductBCPOutList.CDS_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + frmCKProductBCPOutList.CDS_Main.DisableControls; + with frmCKProductBCPOutList.CDS_Main do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean then + begin + fMJID:=frmCKProductBCPOutList.CDS_Main.fieldbyname('MJID').AsString; + Print1(1); + end; + Next; + end; + end; + frmCKProductBCPOutList.CDS_Main.EnableControls; + end + else + begin + if frmJYOrderCDOne.Order_Main.IsEmpty then Exit; + if frmJYOrderCDOne.Order_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + frmJYOrderCDOne.Order_Main.DisableControls; + with frmJYOrderCDOne.Order_Main do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean then + begin + fMJID:=frmJYOrderCDOne.Order_Main.fieldbyname('MJID').AsString; + Print1(1); + end; + Next; + end; + end; + frmJYOrderCDOne.Order_Main.EnableControls; + end; +end; + +end. diff --git a/艾登贸易管理/U_JYOrderCDMore.dfm b/艾登贸易管理/U_JYOrderCDMore.dfm new file mode 100644 index 0000000..f38eb36 --- /dev/null +++ b/艾登贸易管理/U_JYOrderCDMore.dfm @@ -0,0 +1,611 @@ +object frmJYOrderCDMore: TfrmJYOrderCDMore + Left = 192 + Top = 166 + Width = 999 + Height = 552 + Caption = #26816#39564#20998#26512 + 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 = 991 + AutoSize = True + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBExport: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBClose: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 991 + Height = 67 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #26816#39564#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 177 + Top = 15 + Width = 53 + Height = 12 + Caption = #35746' '#21333' '#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object TLabel + Left = 322 + Top = 15 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 322 + Top = 39 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 444 + Top = 15 + Width = 47 + Height = 12 + Caption = #20811' '#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 177 + Top = 39 + Width = 54 + Height = 12 + Caption = #32568' '#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 444 + Top = 39 + Width = 52 + Height = 12 + Caption = #20013#25991#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 75 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object RadioGroup1: TRadioGroup + Left = 588 + Top = -5 + Width = 185 + Height = 71 + Columns = 2 + ItemIndex = 0 + Items.Strings = ( + #25353#35746#21333 + #25353#32568#21495) + TabOrder = 2 + OnClick = RadioGroup1Click + end + object OrderNo: TEdit + Tag = 2 + Left = 230 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 3 + OnChange = TBFindClick + OnKeyPress = OrderNoKeyPress + end + object MPRTMF: TEdit + Tag = 2 + Left = 350 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 4 + OnChange = TBFindClick + end + object PRTColor: TEdit + Tag = 2 + Left = 350 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 5 + OnChange = TBFindClick + end + object MPRTKZ: TEdit + Tag = 2 + Left = 498 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 6 + OnChange = TBFindClick + end + object gangno: TEdit + Tag = 2 + Left = 230 + Top = 35 + Width = 77 + Height = 20 + TabOrder = 7 + OnChange = TBFindClick + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 498 + Top = 35 + Width = 77 + Height = 20 + TabOrder = 8 + OnChange = TBFindClick + end + end + object cxGrid1: TcxGrid + Left = 24 + Top = 128 + Width = 961 + Height = 369 + TabOrder = 2 + object Tv1: TcxGridDBTableView + OnMouseUp = Tv1MouseUp + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Column11 + end + item + Kind = skSum + Column = v1Column7 + end + item + Kind = skSum + Column = v1Column8 + end + item + Kind = skSum + Column = v1Column9 + end + item + Kind = skSum + Column = v1Column12 + end + item + Kind = skSum + Column = v1Column13 + end + item + Kind = skSum + Column = v1Column14 + end + item + Kind = skSum + Column = v1Column15 + end + item + Kind = skSum + Column = v1Column16 + end + item + Kind = skSum + Column = v1Column17 + end + item + Kind = skSum + Column = v1Column18 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1Column1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 103 + end + object v1Column2: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'gangno' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 88 + end + object v1Column3: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column5: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Width = 62 + end + object v1Column4: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v1Column6: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + HeaderAlignmentHorz = taCenter + Width = 57 + end + object v1Column18: TcxGridDBColumn + Caption = #32568#25968#37327 + DataBinding.FieldName = 'GangQty' + HeaderAlignmentHorz = taCenter + Width = 55 + end + object v1Column11: TcxGridDBColumn + Caption = #21305#25968#37327 + DataBinding.FieldName = 'JQty' + HeaderAlignmentHorz = taCenter + Width = 53 + end + object v1Column7: TcxGridDBColumn + Caption = #38271#24230 + DataBinding.FieldName = 'MJLen' + HeaderAlignmentHorz = taCenter + Width = 59 + end + object v1Column14: TcxGridDBColumn + Caption = #27491#21697#21305#25968 + DataBinding.FieldName = 'ZPPS' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column12: TcxGridDBColumn + Caption = #27491#21697#25968#37327 + DataBinding.FieldName = 'ZPQty' + HeaderAlignmentHorz = taCenter + Width = 64 + end + object v1Column15: TcxGridDBColumn + Caption = #27425#21697#21305#25968 + DataBinding.FieldName = 'CPPS' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column13: TcxGridDBColumn + Caption = #27425#21697#25968#37327 + DataBinding.FieldName = 'CPQty' + HeaderAlignmentHorz = taCenter + Width = 67 + end + object v1Column16: TcxGridDBColumn + Caption = #22810#25340#21305#25968 + DataBinding.FieldName = 'LYPS' + HeaderAlignmentHorz = taCenter + Width = 61 + end + object v1Column17: TcxGridDBColumn + Caption = #22810#25340#25968#37327 + DataBinding.FieldName = 'LYQty' + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v1Column10: TcxGridDBColumn + Caption = #38271#24230#21333#20301 + DataBinding.FieldName = 'CDUnit' + Width = 60 + end + object v1Column8: TcxGridDBColumn + Caption = #20844#26020#25968 + DataBinding.FieldName = 'MJMaoZ' + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v1Column9: TcxGridDBColumn + Caption = #30133#28857#25968#37327 + DataBinding.FieldName = 'CDQty' + HeaderAlignmentHorz = taCenter + Width = 68 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel4: TPanel + Left = 62 + Top = 180 + Width = 294 + Height = 213 + TabOrder = 3 + Visible = False + object Label11: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 292 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #20107#20214#35828#26126 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 269 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object RichEdit1: TRichEdit + Left = 1 + Top = 24 + Width = 292 + Height = 188 + Align = alClient + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ParentFont = False + TabOrder = 1 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 99 + Width = 991 + Height = 21 + Align = alTop + Style = 9 + TabIndex = 0 + TabOrder = 4 + Tabs.Strings = ( + #25968#37327#32479#35745 + #20010#25968#32479#35745) + OnChange = cxTabControl1Change + ClientRectBottom = 21 + ClientRectRight = 991 + ClientRectTop = 19 + end + object MovePanel2: TMovePanel + Left = 408 + Top = 192 + Width = 289 + Height = 49 + BevelInner = bvLowered + Caption = #27491#22312#26597#35810#25968#25454#65292#35831#31245#21518#12290#12290#12290 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + Visible = False + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 432 + Top = 200 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 464 + Top = 200 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 496 + Top = 200 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 528 + Top = 200 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 368 + Top = 200 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 400 + Top = 200 + end +end diff --git a/艾登贸易管理/U_JYOrderCDMore.pas b/艾登贸易管理/U_JYOrderCDMore.pas new file mode 100644 index 0000000..981c9e4 --- /dev/null +++ b/艾登贸易管理/U_JYOrderCDMore.pas @@ -0,0 +1,362 @@ +unit U_JYOrderCDMore; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus, cxPC, MovePanel; + +type + TfrmJYOrderCDMore = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + TBExport: TToolButton; + Order_Main: TClientDataSet; + Panel4: TPanel; + Label11: TLabel; + Panel10: TPanel; + Image2: TImage; + RichEdit1: TRichEdit; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + RadioGroup1: TRadioGroup; + cxTabControl1: TcxTabControl; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + Label3: TLabel; + Label7: TLabel; + Label8: TLabel; + Label9: TLabel; + Label10: TLabel; + OrderNo: TEdit; + MPRTMF: TEdit; + PRTColor: TEdit; + MPRTKZ: TEdit; + gangno: TEdit; + MPRTCodeName: TEdit; + v1Column11: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + v1Column13: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + v1Column15: TcxGridDBColumn; + v1Column16: TcxGridDBColumn; + v1Column17: TcxGridDBColumn; + v1Column18: TcxGridDBColumn; + MovePanel2: TMovePanel; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure AOrdDefNote4Change(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, + Y: Integer); + procedure Image2Click(Sender: TObject); + procedure Tv1MouseUp(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure RadioGroup1Click(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + private + DQdate:TDateTime; + FLeft,FTop:Integer; + procedure InitGrid(); + procedure InitGrid10(); + procedure InitForm(); + { Private declarations } + public + FFInt:Integer; + { Public declarations } + end; + +var + frmJYOrderCDMore: TfrmJYOrderCDMore; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun; + +{$R *.dfm} + +procedure TfrmJYOrderCDMore.FormDestroy(Sender: TObject); +begin + frmJYOrderCDMore:=nil; +end; + +procedure TfrmJYOrderCDMore.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmJYOrderCDMore.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmJYOrderCDMore.TBCloseClick(Sender: TObject); +begin + Close; + //WriteCxGrid('鱨J',Tv1,'Ⱦ'); +end; + +procedure TfrmJYOrderCDMore.InitGrid(); +var + i:integer; + j,z:Integer; +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec P_JYOrder_HZFX :begdate,:enddate,:PState,:FFsql '); + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + if cxTabControl1.TabIndex=0 then + Parameters.ParamByName('PState').Value:=RadioGroup1.ItemIndex+1 + else + Parameters.ParamByName('PState').Value:=RadioGroup1.ItemIndex+4; + Parameters.ParamByName('FFsql').Value:=''; + Open; + end; + SCreateCDSOnly(ADOQueryMain,Order_Main); + SInitCDSDataOnly(ADOQueryMain,Order_Main); + for i:=18 to Order_Main.FieldCount-1 do + begin + if Tv1.ColumnCount>i then + begin + + end else + Tv1.CreateColumn; + Tv1.Columns[i].Width:=68; + Tv1.Columns[i].DataBinding.FieldName:=Order_Main.Fields[i].FieldName; + Tv1.Columns[i].Caption:=Trim(Order_Main.Fields[i].FieldName); + tv1.Columns[i].Summary.FooterKind:=skSum; + end; + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmJYOrderCDMore.InitGrid10(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec P_JYOrder_HZFX :begdate,:enddate,:PState '); + Parameters.ParamByName('begdate').Value:='2012-01-01'; + Parameters.ParamByName('enddate').Value:='2011-01-01'; + Parameters.ParamByName('PState').Value:=RadioGroup1.ItemIndex+1; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmJYOrderCDMore.InitForm(); +begin + if SGetServerDate(ADOQueryTemp)>StrToDate('2014-07-11') then + begin + ToolBar1.Visible:=False; + Application.MessageBox('ҪϵӦ̣','ʾ',0); + Exit; + end; + InitGrid(); + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + +end; + +procedure TfrmJYOrderCDMore.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + + +procedure TfrmJYOrderCDMore.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + if RadioGroup1.ItemIndex=0 then + SelExportData(Tv1,ADOQueryMain,'') + else + if RadioGroup1.ItemIndex=1 then + SelExportData(Tv1,ADOQueryMain,''); +end; + +procedure TfrmJYOrderCDMore.TBRafreshClick(Sender: TObject); +begin + MovePanel2.Visible:=True; + MovePanel2.Refresh; + InitGrid(); + MovePanel2.Visible:=False; +end; + +procedure TfrmJYOrderCDMore.AOrdDefNote4Change(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFiltersHint(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmJYOrderCDMore.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmJYOrderCDMore.Panel10MouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel4).Perform(WM_SYSCOMMAND,$F012,0); +end; + +procedure TfrmJYOrderCDMore.Image2Click(Sender: TObject); +begin + Panel4.Visible:=False; +end; + +procedure TfrmJYOrderCDMore.Tv1MouseUp(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FLeft:=X; + FTop:=Y; +end; + +procedure TfrmJYOrderCDMore.Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + {Panel4.Left:=FLeft; + Panel4.Top:=FTop+110; + Panel4.Visible:=True; + Panel4.Refresh; + Panel10.Caption:=Trim(TV1.Controller.FocusedColumn.Caption); + RichEdit1.Text:=Order_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString; } +end; + +procedure TfrmJYOrderCDMore.RadioGroup1Click(Sender: TObject); +begin + if RadioGroup1.ItemIndex=0 then + begin + GangNo.Text:=''; + GangNo.ReadOnly:=True; + v1Column2.Visible:=False; + end else + begin + GangNo.ReadOnly:=False; + v1Column2.Visible:=True; + end; + TBRafresh.Click; +end; + +procedure TfrmJYOrderCDMore.cxTabControl1Change(Sender: TObject); +begin + TBRafresh.Click; + if cxTabControl1.TabIndex=0 then + v1Column9.Caption:='õ' + else + v1Column9.Caption:='õ'; +end; + +procedure TfrmJYOrderCDMore.OrderNoKeyPress(Sender: TObject; + var Key: Char); +var + i:Integer; +begin + if Key=#13 then + begin + if Length(Trim(OrderNo.Text))<4 then Exit; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec P_JYOrder_HZFX :begdate,:enddate,:PState,:FFsql '); + Parameters.ParamByName('begdate').Value:='2010-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + if cxTabControl1.TabIndex=0 then + begin + Parameters.ParamByName('PState').Value:=RadioGroup1.ItemIndex+1; + Parameters.ParamByName('FFSql').Value:=' where C.OrderNo like '''+'%'+Trim(OrderNo.Text)+'%'+''''; + end + else + begin + Parameters.ParamByName('PState').Value:=RadioGroup1.ItemIndex+4; + Parameters.ParamByName('FFSql').Value:=' where C.OrderNo like '''+'%'+Trim(OrderNo.Text)+'%'+''''; + end; + + Open; + end; + SCreateCDSOnly(ADOQueryMain,Order_Main); + SInitCDSDataOnly(ADOQueryMain,Order_Main); + for i:=18 to Order_Main.FieldCount-1 do + begin + if Tv1.ColumnCount>i then + begin + + end else + Tv1.CreateColumn; + Tv1.Columns[i].Width:=68; + Tv1.Columns[i].DataBinding.FieldName:=Order_Main.Fields[i].FieldName; + Tv1.Columns[i].Caption:=Trim(Order_Main.Fields[i].FieldName); + tv1.Columns[i].Summary.FooterKind:=skSum; + end; + finally + ADOQueryMain.EnableControls; + end; + MovePanel2.Visible:=False; + end; + +end; + +end. diff --git a/艾登贸易管理/U_JYOrderCDOne.dfm b/艾登贸易管理/U_JYOrderCDOne.dfm new file mode 100644 index 0000000..c65937b --- /dev/null +++ b/艾登贸易管理/U_JYOrderCDOne.dfm @@ -0,0 +1,1715 @@ +object frmJYOrderCDOne: TfrmJYOrderCDOne + Left = 97 + Top = 135 + Width = 1382 + Height = 754 + Caption = #26816#39564#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 = 1366 + Height = 62 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 131 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBExport: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBZF: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20316#24223 + ImageIndex = 48 + Visible = False + OnClick = TBZFClick + end + object TBManage: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #32534#36753 + ImageIndex = 58 + Visible = False + OnClick = TBManageClick + end + object TBBN: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #36716#21333 + ImageIndex = 41 + Visible = False + OnClick = TBBNClick + end + object TBAftChkHX: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #26816#21518#22238#20462 + ImageIndex = 54 + Visible = False + OnClick = TBAftChkHXClick + end + object ToolButton12: TToolButton + Left = 465 + Top = 0 + AutoSize = True + Caption = #25209#37327#20462#25913#25968#37327#21333#20301 + ImageIndex = 57 + OnClick = ToolButton12Click + end + object ToolButton3: TToolButton + Left = 600 + Top = 0 + AutoSize = True + Caption = #25442#31639#31995#25968 + ImageIndex = 57 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton1: TToolButton + Left = 687 + Top = 0 + AutoSize = True + Caption = #25171#21360#21367#26631#31614 + ImageIndex = 96 + OnClick = ToolButton1Click + end + object ToolButton9: TToolButton + Left = 786 + Top = 0 + AutoSize = True + Caption = #25195#25551#25171#21360#21367#26631#31614 + ImageIndex = 96 + Wrap = True + OnClick = ToolButton9Click + end + object ToolButton4: TToolButton + Left = 0 + Top = 30 + AutoSize = True + Caption = #24067#21305#25171#21253 + ImageIndex = 61 + OnClick = ToolButton4Click + end + object ToolButton6: TToolButton + Left = 87 + Top = 30 + AutoSize = True + Caption = #25764#38144#25171#21253 + ImageIndex = 86 + OnClick = ToolButton6Click + end + object ToolButton5: TToolButton + Left = 174 + Top = 30 + AutoSize = True + Caption = #25171#21360#21253#26631#31614 + ImageIndex = 96 + OnClick = ToolButton5Click + end + object ToolButton7: TToolButton + Left = 273 + Top = 30 + AutoSize = True + Caption = #24067#21305#25442#32568 + ImageIndex = 57 + OnClick = ToolButton7Click + end + object ToolButton8: TToolButton + Left = 360 + Top = 30 + AutoSize = True + Caption = #26816#39564#25253#21578 + ImageIndex = 12 + Visible = False + OnClick = ToolButton8Click + end + object ToolButton10: TToolButton + Left = 447 + Top = 30 + AutoSize = True + Caption = #26816#39564#27719#24635#25253#21578 + ImageIndex = 12 + Visible = False + OnClick = ToolButton10Click + end + object ToolButton2: TToolButton + Left = 558 + Top = 30 + AutoSize = True + Caption = #26816#39564#25253#21578 + ImageIndex = 12 + Visible = False + OnClick = ToolButton2Click + end + object ToolButton11: TToolButton + Left = 645 + Top = 30 + AutoSize = True + Caption = #25171#21253#30721#21333 + ImageIndex = 12 + Visible = False + OnClick = ToolButton11Click + end + object TBClose: TToolButton + Left = 732 + Top = 30 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 62 + Width = 1366 + Height = 91 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #26816#39564#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 179 + Top = 15 + Width = 53 + Height = 12 + Caption = #35746' '#21333' '#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object TLabel + Left = 318 + Top = 15 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 318 + Top = 39 + Width = 40 + Height = 12 + Caption = #39068' '#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 444 + Top = 15 + Width = 39 + Height = 12 + Caption = #25171#30721#20154 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 179 + Top = 39 + Width = 54 + Height = 12 + Caption = #32568' '#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 444 + Top = 39 + Width = 39 + Height = 12 + Caption = #21367#26465#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 587 + Top = 17 + Width = 54 + Height = 12 + Caption = #30133' '#28857 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 587 + Top = 39 + Width = 54 + Height = 12 + Caption = #31867' '#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 179 + Top = 65 + Width = 52 + Height = 12 + Caption = #20013#25991#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 587 + Top = 63 + Width = 52 + Height = 12 + Caption = #20837#24211#29366#24577 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 314 + Top = 111 + Width = 39 + Height = 12 + Caption = #21152#24037#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 444 + Top = 111 + Width = 39 + Height = 12 + Caption = #22383#24067#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label14: TLabel + Left = 747 + Top = 17 + Width = 52 + Height = 12 + Caption = #26579#21378#32568#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label16: TLabel + Left = 747 + Top = 62 + Width = 53 + Height = 12 + Caption = #21253' '#26465' '#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label17: TLabel + Left = 747 + Top = 39 + Width = 54 + Height = 12 + Caption = #21253' '#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 1172 + Top = 16 + Width = 52 + Height = 12 + Caption = #25171#21360#20221#25968 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label19: TLabel + Left = 899 + Top = 17 + Width = 21 + Height = 12 + Caption = 'PO#' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label20: TLabel + Left = 899 + Top = 37 + Width = 39 + Height = 12 + Caption = #32568#26465#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label21: TLabel + Left = 899 + Top = 61 + Width = 26 + Height = 12 + Caption = #27454#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label22: TLabel + Left = 1023 + Top = 113 + Width = 52 + Height = 12 + Caption = #26159#21542#21512#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label23: TLabel + Left = 1036 + Top = 16 + Width = 52 + Height = 12 + Caption = #26159#21542#25171#21253 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label26: TLabel + Left = 318 + Top = 65 + Width = 40 + Height = 12 + Caption = #33394' '#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label27: TLabel + Left = 444 + Top = 65 + Width = 39 + Height = 12 + Caption = #33457#22411#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 75 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 232 + Top = 11 + Width = 70 + Height = 20 + TabOrder = 2 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object conNO: TEdit + Tag = 2 + Left = 360 + Top = 11 + Width = 70 + Height = 20 + TabOrder = 3 + OnChange = Aorddefstr1Change + end + object MJID: TEdit + Tag = 2 + Left = 484 + Top = 36 + Width = 70 + Height = 20 + TabOrder = 4 + OnKeyPress = MJIDKeyPress + end + object CDQK: TEdit + Tag = 2 + Left = 644 + Top = 11 + Width = 70 + Height = 20 + TabOrder = 5 + OnChange = Aorddefstr1Change + end + object MJType: TComboBox + Tag = 2 + Left = 644 + Top = 35 + Width = 70 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 6 + OnChange = Aorddefstr1Change + Items.Strings = ( + #27491#21697 + #27425#21697 + #22810#25340 + '') + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 232 + Top = 61 + Width = 70 + Height = 20 + TabOrder = 7 + OnChange = Aorddefstr1Change + end + object MJStr2: TComboBox + Tag = 2 + Left = 644 + Top = 59 + Width = 70 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 8 + OnChange = Aorddefstr1Change + Items.Strings = ( + #26410#20837#24211 + #24050#20837#24211 + #24050#20986#24211 + '' + '' + '' + '') + end + object fromfactoryName: TEdit + Tag = 2 + Left = 356 + Top = 107 + Width = 70 + Height = 20 + TabOrder = 9 + OnChange = Aorddefstr1Change + end + object factoryName: TEdit + Tag = 2 + Left = 485 + Top = 107 + Width = 70 + Height = 20 + TabOrder = 10 + OnChange = Aorddefstr1Change + end + object Filler: TComboBox + Tag = 1 + Left = 484 + Top = 12 + Width = 70 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 11 + OnChange = Aorddefstr1Change + end + object RadioGroup1: TRadioGroup + Left = 1244 + Top = 19 + Width = 137 + Height = 66 + Columns = 3 + ItemIndex = 0 + Items.Strings = ( + #27491#24120 + #22238#20462 + #20840#37096) + TabOrder = 12 + Visible = False + OnClick = RadioGroup1Click + end + object CheckBox1: TCheckBox + Left = 750 + Top = 87 + Width = 131 + Height = 17 + Caption = #26816#39564#25253#21578#33521#25991 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 13 + Visible = False + end + object CheckBox2: TCheckBox + Left = 28 + Top = 64 + Width = 97 + Height = 17 + Caption = #20840#36873 + TabOrder = 14 + OnClick = CheckBox2Click + end + object BAONO: TEdit + Tag = 1 + Left = 800 + Top = 35 + Width = 70 + Height = 20 + TabOrder = 15 + OnChange = OrderNoChange + end + object BAOID: TEdit + Tag = 2 + Left = 800 + Top = 58 + Width = 70 + Height = 20 + TabOrder = 16 + OnChange = OrderNoChange + end + object Mjstr4: TEdit + Tag = 1 + Left = 232 + Top = 36 + Width = 70 + Height = 20 + TabOrder = 17 + OnChange = OrderNoChange + end + object gangNO: TEdit + Tag = 1 + Left = 800 + Top = 11 + Width = 70 + Height = 20 + TabOrder = 18 + OnChange = OrderNoChange + end + object PrtColor: TEdit + Tag = 2 + Left = 360 + Top = 36 + Width = 70 + Height = 20 + TabOrder = 19 + OnChange = OrderNoChange + end + object ComboBox1: TComboBox + Left = 1228 + Top = 12 + Width = 70 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 20 + Text = '1' + Visible = False + Items.Strings = ( + '1' + '2' + '3' + '4') + end + object KHConNO: TEdit + Tag = 2 + Left = 940 + Top = 11 + Width = 70 + Height = 20 + TabOrder = 21 + OnChange = OrderNoChange + end + object APID: TEdit + Tag = 2 + Left = 940 + Top = 34 + Width = 70 + Height = 20 + TabOrder = 22 + OnChange = OrderNoChange + OnKeyPress = APIDKeyPress + end + object PRTKuanNO: TEdit + Tag = 2 + Left = 940 + Top = 58 + Width = 70 + Height = 20 + TabOrder = 23 + OnChange = OrderNoChange + end + object ISHZ: TComboBox + Tag = 2 + Left = 1076 + Top = 107 + Width = 70 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 24 + OnChange = Aorddefstr1Change + Items.Strings = ( + '' + #21512#26684 + #19981#21512#26684 + '' + '' + '' + '') + end + object ISbao: TComboBox + Left = 1088 + Top = 11 + Width = 70 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 25 + OnChange = ISbaoChange + Items.Strings = ( + '' + '' + #24050#25171#21253 + #26410#25171#21253) + end + object SOrddefstr1: TEdit + Tag = 2 + Left = 360 + Top = 62 + Width = 70 + Height = 20 + TabOrder = 26 + OnChange = OrderNoChange + end + object prthx: TEdit + Tag = 2 + Left = 484 + Top = 60 + Width = 70 + Height = 20 + TabOrder = 27 + OnChange = OrderNoChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 153 + Width = 1366 + Height = 466 + Align = alTop + PopupMenu = PopupMenu1 + TabOrder = 2 + object Tv1: TcxGridDBTableView + OnMouseUp = Tv1MouseUp + Navigator.Buttons.CustomButtons = <> + OnCellClick = Tv1CellClick + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Column8 + end + item + Kind = skSum + Column = v1Column9 + end + item + Kind = skCount + Column = v1Column6 + end + item + Kind = skSum + Column = v1Column10 + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column25 + end + item + Kind = skSum + Column = v1Column27 + end + item + Kind = skSum + Column = v1Column28 + end + item + Kind = skSum + Column = v1Column14 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1Column22: TcxGridDBColumn + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 48 + end + object v1Column1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 103 + end + object v1Column2: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'Mjstr4' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 59 + end + object v1Column13: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column4: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 58 + end + object v1Column31: TcxGridDBColumn + Caption = #39068#33394'('#33521#25991')' + DataBinding.FieldName = 'SOrddefstr4' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column37: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'SOrddefstr1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column38: TcxGridDBColumn + Caption = #33457#22411#21495 + DataBinding.FieldName = 'PRTHX' + Options.Editing = False + Width = 60 + end + object v1Column3: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 67 + end + object v1Column5: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 64 + end + object v1Column18: TcxGridDBColumn + Caption = #21152#24037#21378 + DataBinding.FieldName = 'fromfactoryName' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 78 + end + object v1Column19: TcxGridDBColumn + Caption = #22383#24067#21378 + DataBinding.FieldName = 'factoryName' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 70 + end + object v1Column20: TcxGridDBColumn + Caption = #25171#30721#20154 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 73 + end + object v1Column21: TcxGridDBColumn + Caption = #25171#30721#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 94 + end + object v1Column6: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 84 + end + object v1Column32: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'conNO' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column23: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column12: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'MJType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 57 + end + object v1Column27: TcxGridDBColumn + Caption = #30382#37325 + DataBinding.FieldName = 'MJQty3' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 59 + end + object v1Column28: TcxGridDBColumn + Caption = #20928#37325 + DataBinding.FieldName = 'MJQty4' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 53 + end + object v1Column8: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'MJMaoZ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 54 + end + object v1Column10: TcxGridDBColumn + Caption = #21367#38271#24230 + DataBinding.FieldName = 'MJLen' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 56 + end + object v1Column9: TcxGridDBColumn + Caption = #30133#28857#25968#37327 + DataBinding.FieldName = 'CDQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 65 + end + object v1Column11: TcxGridDBColumn + Caption = #38271#24230#21333#20301 + DataBinding.FieldName = 'MJTypeOther' + Options.Editing = False + Width = 58 + end + object v1Column7: TcxGridDBColumn + Caption = #30133#28857#24773#20917 + DataBinding.FieldName = 'CDQK' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object v1Column26: TcxGridDBColumn + Caption = #26816#39564#38376#24133'(cm)' + DataBinding.FieldName = 'MJFK' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column16: TcxGridDBColumn + Caption = #26816#39564#20811#37325'(g/'#13217')' + DataBinding.FieldName = 'MJSJKZ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 105 + end + object v1Column17: TcxGridDBColumn + Caption = #20837#24211#29366#24577 + DataBinding.FieldName = 'MJStr2' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 63 + end + object v1Column25: TcxGridDBColumn + Caption = #36192#36865#25968#37327 + DataBinding.FieldName = 'MJQty2' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 57 + end + object v1Column24: TcxGridDBColumn + Caption = #22238#20462 + DataBinding.FieldName = 'HXFlag' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 48 + end + object v1Column14: TcxGridDBColumn + Caption = #25187#20998 + DataBinding.FieldName = 'KouFenQty' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 50 + end + object v1Column15: TcxGridDBColumn + Caption = #21028#23450 + DataBinding.FieldName = 'PanDing' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column15PropertiesEditValueChanged + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 61 + end + object v1MKXS: TcxGridDBColumn + Caption = #25442#31639#31995#25968 + DataBinding.FieldName = 'MKXS' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column30: TcxGridDBColumn + Caption = #21253#21495 + DataBinding.FieldName = 'baoNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 50 + end + object v1Column29: TcxGridDBColumn + Caption = #21253#26465#30721 + DataBinding.FieldName = 'BaoID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 76 + end + object v1Column33: TcxGridDBColumn + Caption = 'PO#' + DataBinding.FieldName = 'khconNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column34: TcxGridDBColumn + Caption = #32568#26465#30721 + DataBinding.FieldName = 'APID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column35: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'MPRTKuanNO' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column36: TcxGridDBColumn + Caption = #26159#21542#21512#21516 + DataBinding.FieldName = 'ISHZ' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + VisibleForCustomization = False + Width = 50 + end + object v1Column39: TcxGridDBColumn + Caption = #29255#25968 + DataBinding.FieldName = 'MJQty5' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel4: TPanel + Left = 74 + Top = 199 + Width = 294 + Height = 213 + TabOrder = 3 + Visible = False + object Label11: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 292 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #20107#20214#35828#26126 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 269 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object RichEdit1: TRichEdit + Left = 1 + Top = 24 + Width = 292 + Height = 188 + Align = alClient + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + end + end + object MovePanel2: TMovePanel + Left = 400 + Top = 224 + Width = 289 + Height = 49 + BevelInner = bvLowered + Caption = #27491#22312#26597#35810#25968#25454#65292#35831#31245#21518#12290#12290#12290 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + end + object Panel2: TPanel + Left = 496 + Top = 180 + Width = 225 + Height = 117 + Color = clSkyBlue + TabOrder = 5 + Visible = False + object Label15: TLabel + Left = 24 + Top = 36 + Width = 24 + Height = 12 + Caption = #31995#25968 + end + object Label24: TLabel + Left = 24 + Top = 56 + Width = 24 + Height = 12 + Caption = #30382#37325 + end + object Label25: TLabel + Left = 24 + Top = 12 + Width = 48 + Height = 12 + Caption = #25442#31639#31867#22411 + end + object cxCurrencyEdit1: TcxCurrencyEdit + Left = 52 + Top = 32 + Properties.DecimalPlaces = 4 + Properties.DisplayFormat = '0.####' + Properties.Nullstring = '0' + TabOrder = 0 + Width = 121 + end + object Button1: TButton + Left = 32 + Top = 80 + Width = 60 + Height = 25 + Caption = #30830#23450 + TabOrder = 1 + OnClick = Button1Click + end + object Button2: TButton + Left = 128 + Top = 80 + Width = 60 + Height = 25 + Caption = #20851#38381 + TabOrder = 2 + OnClick = Button2Click + end + object cxCurrencyEdit2: TcxCurrencyEdit + Left = 52 + Top = 52 + Properties.DecimalPlaces = 4 + Properties.DisplayFormat = '0.####' + Properties.Nullstring = '0' + TabOrder = 3 + Width = 121 + end + object ComboBox4: TComboBox + Left = 76 + Top = 12 + Width = 97 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 4 + Items.Strings = ( + #38271#24230#25442#31639#20928#37325 + #20928#37325#25442#31639#38271#24230) + end + end + object Panel3: TPanel + Left = 480 + Top = 224 + Width = 249 + Height = 153 + Color = clSkyBlue + TabOrder = 6 + Visible = False + object Check_bq: TCheckBox + Left = 44 + Top = 24 + Width = 65 + Height = 17 + Caption = #21253#26631#31614 + TabOrder = 0 + end + object ComboBox2: TComboBox + Left = 120 + Top = 20 + Width = 70 + Height = 20 + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 1 + Text = '1' + Items.Strings = ( + '1' + '2' + '3' + '4') + end + object ComboBox3: TComboBox + Left = 120 + Top = 52 + Width = 70 + Height = 20 + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 2 + Text = '1' + Visible = False + Items.Strings = ( + '1' + '2' + '3' + '4') + end + object Fbq: TBtnEditA + Left = 64 + Top = 76 + Width = 125 + Height = 20 + TabOrder = 3 + Visible = False + OnBtnClick = FbqBtnClick + end + object check_Fbz: TCheckBox + Left = 44 + Top = 56 + Width = 73 + Height = 17 + Caption = #21253#21103#26631#31614 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 4 + Visible = False + end + object Button3: TButton + Left = 32 + Top = 112 + Width = 75 + Height = 25 + Caption = #25171#21360 + TabOrder = 5 + OnClick = Button3Click + end + object Button4: TButton + Left = 148 + Top = 112 + Width = 75 + Height = 25 + Caption = #20851#38381 + TabOrder = 6 + OnClick = Button4Click + end + end + object Panel5: TPanel + Left = 480 + Top = 204 + Width = 273 + Height = 101 + Color = clSkyBlue + TabOrder = 7 + Visible = False + object Label28: TLabel + Left = 48 + Top = 28 + Width = 48 + Height = 12 + Caption = #25968#37327#21333#20301 + end + object ComboBox5: TComboBox + Left = 100 + Top = 24 + Width = 145 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 0 + Items.Strings = ( + '' + 'M' + 'Y') + end + object Button5: TButton + Left = 32 + Top = 64 + Width = 60 + Height = 25 + Caption = #30830#23450 + TabOrder = 1 + OnClick = Button5Click + end + object Button6: TButton + Left = 172 + Top = 64 + Width = 60 + Height = 25 + Caption = #20851#38381 + TabOrder = 2 + OnClick = Button6Click + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 600 + Top = 184 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 464 + Top = 200 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 496 + Top = 200 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 528 + Top = 200 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 368 + Top = 200 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 400 + Top = 200 + end + object PopupMenu1: TPopupMenu + Left = 488 + Top = 264 + object N1: TMenuItem + Caption = #20840#36873 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #20840#24323 + OnClick = N2Click + end + end + object RM2: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 424 + Top = 256 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 576 + Top = 256 + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 648 + Top = 232 + end + object CDS_CD: TClientDataSet + Aggregates = <> + Params = <> + Left = 480 + Top = 336 + end + object RMCD: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDBCD + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 576 + Top = 304 + ReportData = {} + end + object RMDBCD: TRMDBDataSet + Visible = True + DataSet = CDS_CD + Left = 608 + Top = 304 + end + object CDS_LS: TClientDataSet + Aggregates = <> + Params = <> + Left = 656 + Top = 368 + end + object RM3: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 492 + Top = 300 + ReportData = {} + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 548 + Top = 352 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 908 + Top = 280 + end + object RMDBHZ: TRMDBDataSet + Visible = True + DataSet = CDS_HZ + Left = 836 + Top = 320 + end + object RMDBPRT: TRMDBDataSet + Visible = True + DataSet = CDS_PRT + Left = 940 + Top = 308 + end + object CDS_PRT: TClientDataSet + Aggregates = <> + Params = <> + Left = 868 + Top = 360 + end +end diff --git a/艾登贸易管理/U_JYOrderCDOne.pas b/艾登贸易管理/U_JYOrderCDOne.pas new file mode 100644 index 0000000..2b7f001 --- /dev/null +++ b/艾登贸易管理/U_JYOrderCDOne.pas @@ -0,0 +1,1744 @@ +unit U_JYOrderCDOne; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus, MovePanel, cxTextEdit, cxContainer, cxCurrencyEdit,U_SMLB, BtnEdit, + RM_e_main, RM_e_htm, RM_e_Graphic, RM_e_Jpeg, RM_e_txt, RM_e_csv, + RM_E_llPDF, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; + +type + TfrmJYOrderCDOne = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNo: TEdit; + TBExport: TToolButton; + Order_Main: TClientDataSet; + conNO: TEdit; + Label7: TLabel; + Label8: TLabel; + Label9: TLabel; + Label10: TLabel; + MJID: TEdit; + Label2: TLabel; + CDQK: TEdit; + Panel4: TPanel; + Label11: TLabel; + Panel10: TPanel; + Image2: TImage; + RichEdit1: TRichEdit; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + Label4: TLabel; + MJType: TComboBox; + v1Column13: TcxGridDBColumn; + Label5: TLabel; + MPRTCodeName: TEdit; + v1Column16: TcxGridDBColumn; + Label6: TLabel; + MJStr2: TComboBox; + v1Column17: TcxGridDBColumn; + v1Column18: TcxGridDBColumn; + v1Column19: TcxGridDBColumn; + Label12: TLabel; + Label13: TLabel; + fromfactoryName: TEdit; + factoryName: TEdit; + v1Column20: TcxGridDBColumn; + v1Column21: TcxGridDBColumn; + Filler: TComboBox; + TBManage: TToolButton; + v1Column22: TcxGridDBColumn; + v1Column23: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + TBZF: TToolButton; + ToolButton1: TToolButton; + RM2: TRMGridReport; + RMDB_Main: TRMDBDataSet; + ADOQueryPrint: TADOQuery; + v1Column25: TcxGridDBColumn; + TBAftChkHX: TToolButton; + v1Column24: TcxGridDBColumn; + RadioGroup1: TRadioGroup; + MovePanel2: TMovePanel; + v1Column27: TcxGridDBColumn; + v1Column28: TcxGridDBColumn; + ToolButton2: TToolButton; + v1Column14: TcxGridDBColumn; + CDS_CD: TClientDataSet; + RMCD: TRMGridReport; + RMDBCD: TRMDBDataSet; + CDS_LS: TClientDataSet; + v1Column15: TcxGridDBColumn; + Label14: TLabel; + CheckBox1: TCheckBox; + ToolButton3: TToolButton; + Panel2: TPanel; + Label15: TLabel; + cxCurrencyEdit1: TcxCurrencyEdit; + Button1: TButton; + Button2: TButton; + v1MKXS: TcxGridDBColumn; + CheckBox2: TCheckBox; + v1Column29: TcxGridDBColumn; + v1Column30: TcxGridDBColumn; + ToolButton4: TToolButton; + ToolButton5: TToolButton; + BAONO: TEdit; + BAOID: TEdit; + Label16: TLabel; + Label17: TLabel; + ToolButton6: TToolButton; + ToolButton7: TToolButton; + Mjstr4: TEdit; + gangNO: TEdit; + PrtColor: TEdit; + Label18: TLabel; + ComboBox1: TComboBox; + RM3: TRMGridReport; + v1Column26: TcxGridDBColumn; + v1Column31: TcxGridDBColumn; + ToolButton8: TToolButton; + ToolButton9: TToolButton; + v1Column32: TcxGridDBColumn; + v1Column33: TcxGridDBColumn; + Panel3: TPanel; + Check_bq: TCheckBox; + ComboBox2: TComboBox; + ComboBox3: TComboBox; + Fbq: TBtnEditA; + check_Fbz: TCheckBox; + Button3: TButton; + Button4: TButton; + KHConNO: TEdit; + Label19: TLabel; + v1Column34: TcxGridDBColumn; + APID: TEdit; + Label20: TLabel; + v1Column35: TcxGridDBColumn; + PRTKuanNO: TEdit; + Label21: TLabel; + v1Column36: TcxGridDBColumn; + Label22: TLabel; + ISHZ: TComboBox; + ToolButton10: TToolButton; +// RMllPDFExport1: TRMllPDFExport; + RMXLSExport1: TRMXLSExport; + ISbao: TComboBox; + Label23: TLabel; + ToolButton11: TToolButton; + CDS_HZ: TClientDataSet; + RMDBHZ: TRMDBDataSet; + cxCurrencyEdit2: TcxCurrencyEdit; + Label24: TLabel; + TBBN: TToolButton; + Label25: TLabel; + ComboBox4: TComboBox; + RMDBPRT: TRMDBDataSet; + CDS_PRT: TClientDataSet; + v1Column37: TcxGridDBColumn; + v1Column38: TcxGridDBColumn; + SOrddefstr1: TEdit; + Label26: TLabel; + prthx: TEdit; + Label27: TLabel; + ToolButton12: TToolButton; + Panel5: TPanel; + Label28: TLabel; + ComboBox5: TComboBox; + Button5: TButton; + Button6: TButton; + v1Column39: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, + Y: Integer); + procedure Image2Click(Sender: TObject); + procedure Tv1MouseUp(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBManageClick(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure TBZFClick(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure RadioGroup1Click(Sender: TObject); + procedure TBAftChkHXClick(Sender: TObject); + procedure Aorddefstr1Change(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + procedure PRTColorChange(Sender: TObject); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure ToolButton2Click(Sender: TObject); + procedure v1Column15PropertiesEditValueChanged(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton6Click(Sender: TObject); + procedure ToolButton7Click(Sender: TObject); + procedure ToolButton8Click(Sender: TObject); + procedure ToolButton9Click(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure FbqBtnClick(Sender: TObject); + procedure MJIDKeyPress(Sender: TObject; var Key: Char); + procedure ToolButton10Click(Sender: TObject); + procedure APIDKeyPress(Sender: TObject; var Key: Char); + procedure ISbaoChange(Sender: TObject); + procedure ToolButton11Click(Sender: TObject); + procedure TBBNClick(Sender: TObject); + procedure Button6Click(Sender: TObject); + procedure Button5Click(Sender: TObject); + procedure ToolButton12Click(Sender: TObject); + private + DQdate:TDateTime; + FLeft,FTop:Integer; + procedure InitGrid(); + procedure InitGrid10(); + procedure InitForm(); + function Savedata():Boolean; + procedure GetCDSData(); + procedure GetBGData(); + { Private declarations } + public + FFInt:Integer; + { Public declarations } + end; + +var + frmJYOrderCDOne: TfrmJYOrderCDOne; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun,U_MJEdit, U_CPDBAO, U_CPGangNo, + U_JYMJIDPRINT, U_ZDYHelp, U_ProductOrderListSel; + +{$R *.dfm} + +procedure TfrmJYOrderCDOne.FormDestroy(Sender: TObject); +begin + frmJYOrderCDOne:=nil; +end; + +procedure TfrmJYOrderCDOne.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmJYOrderCDOne.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmJYOrderCDOne.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('鱨JF',Tv1,''); +end; + +procedure TfrmJYOrderCDOne.InitGrid(); +var + i:integer; + j:Integer; +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec P_JYOrder_HZFX20 :begdate,:enddate,:PState,:FFSql '); + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + Parameters.ParamByName('PState').Value:=0; + Parameters.ParamByName('FFSql').Value:=' '; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + TBFind.Click; + end; +end; +procedure TfrmJYOrderCDOne.InitGrid10(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec P_JYOrder_HZFX :begdate,:enddate,:PState '); + Parameters.ParamByName('begdate').Value:='2012-01-01'; + Parameters.ParamByName('enddate').Value:='2011-01-01'; + Parameters.ParamByName('PState').Value:=3; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmJYOrderCDOne.InitForm(); +var + fsj:String; +begin + ReadCxGrid('鱨JF',Tv1,''); + fsj:='select distinct(Filler) name from WFB_MJJY '; + SInitComBoxBySql(ADOQueryCmd,Filler,False,fsj); + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-1; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + //InitGrid(); +end; + +procedure TfrmJYOrderCDOne.TBFindClick(Sender: TObject); +var + fsj,fwhere:String; +begin + if ADOQueryMain.Active=False then Exit; + + fwhere:=SGetFilters(Panel1,1,2); + fsj:=''; + if trim(ISbao.Text)='Ѵ' then + begin + fsj:=fsj+' baoNo>''0'' '; + end else + if trim(ISbao.Text)='δ' then + begin + fsj:=fsj+' baoNo='''' '; + end; + + IF trim(fsj)<>'' then + begin + IF fwhere='' then fwhere:=fsj + else fwhere:=fwhere+' and '+fsj; + end; + + SDofilter(ADOQueryMain,fwhere); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + + +procedure TfrmJYOrderCDOne.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv1,ADOQueryMain,'鱨'); +end; + +procedure TfrmJYOrderCDOne.TBRafreshClick(Sender: TObject); +begin + OrderNo.SetFocus; + MovePanel2.Left:=(self.Width-MovePanel2.Width) div 2; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + InitGrid(); + MovePanel2.Visible:=False; +end; + +procedure TfrmJYOrderCDOne.OrderNoChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmJYOrderCDOne.FormShow(Sender: TObject); +begin + InitForm(); + if Trim(DParameters2)='' then + begin + TBManage.Visible:=True; + TBZF.Visible:=True; + v1Column15.Options.Focusing:=True; + ToolButton3.Visible:=true; + TBBN.Visible:=true; + //TBAftChkHX.Visible:=True; + end; +end; + +procedure TfrmJYOrderCDOne.Panel10MouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel4).Perform(WM_SYSCOMMAND,$F012,0); +end; + +procedure TfrmJYOrderCDOne.Image2Click(Sender: TObject); +begin + Panel4.Visible:=False; +end; + +procedure TfrmJYOrderCDOne.Tv1MouseUp(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FLeft:=X; + FTop:=Y; +end; + +procedure TfrmJYOrderCDOne.Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + Panel4.Left:=FLeft; + Panel4.Top:=FTop+110; + Panel4.Visible:=True; + Panel4.Refresh; + Panel10.Caption:=Trim(TV1.Controller.FocusedColumn.Caption); + RichEdit1.Text:=Order_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString; +end; + +procedure TfrmJYOrderCDOne.TBManageClick(Sender: TObject); +begin + IF Order_Main.IsEmpty then exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where MJID='''+Trim(Order_Main.fieldbyname('MJID').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Order_Main.EnableControls; + Application.MessageBox('Ѳݲɾ!','ʾ',0); + Exit; + end; + try + frmMJEdit:=TfrmMJEdit.Create(Application); + with frmMJEdit do + begin + MJID.Text:=Trim(Self.Order_Main.fieldbyname('MJID').AsString); + with ADOTmp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,AOrddefstr3=(select AOrddefstr3 from JYOrder_Sub_AnPai B where B.APID=A.APID), '); + sql.Add('AOrddefstr2=(select AOrddefstr2 from JYOrder_Sub_AnPai B where B.APID=A.APID) from WFB_MJJY A'); + sql.Add(' where A.MJID='''+Trim(MJID.Text)+''''); + Open; + end; + if ADOTmp.IsEmpty then + begin + MJID.Text:=''; + Label2.Caption:=''; + Label2.Visible:=False; + Application.MessageBox('!','ʾ',0); + Exit; + end; + MJXH.Text:=Trim(ADOTmp.fieldbyname('MJXH').AsString); + MJstr4.Text:=Trim(ADOTmp.fieldbyname('MJstr4').AsString); + MJMaoZ.Text:=Trim(ADOTmp.fieldbyname('MJMaoZ').AsString); + MJLen.Text:=Trim(ADOTmp.fieldbyname('MJLen').AsString); + MJQty1.Text:=Trim(ADOTmp.fieldbyname('MJQty1').AsString); + MJQty2.Text:=Trim(ADOTmp.fieldbyname('MJQty2').AsString); + MJQty4.Text:=Trim(ADOTmp.fieldbyname('MJQty4').AsString); + MJQty5.Text:=Trim(ADOTmp.fieldbyname('MJQty5').AsString); + MJFK.Text:=Trim(ADOTmp.fieldbyname('MJFK').AsString); + MJSJKZ.Text:=Trim(ADOTmp.fieldbyname('MJSJKZ').AsString); + M.Caption:=Trim(Trim(ADOTmp.fieldbyname('MJTypeOther').AsString)); + Ma.Caption:=Trim(Trim(ADOTmp.fieldbyname('MJStr1').AsString)); + if Trim(m.Caption)='' then + begin + m.Caption:=Trim(ADOTmp.fieldbyname('AOrddefstr3').AsString); + end; + if Trim(Ma.Caption)='' then + begin + Ma.Caption:=Trim(ADOTmp.fieldbyname('AOrddefstr2').AsString); + end; + if Trim(Trim(ADOTmp.fieldbyname('MJType').AsString))='Ʒ' then + begin + RadioGroup1.ItemIndex:=0 + end else + if Trim(Trim(ADOTmp.fieldbyname('MJType').AsString))='Ʒ' then + begin + RadioGroup1.ItemIndex:=1; + end else + if Trim(Trim(ADOTmp.fieldbyname('MJType').AsString))='' then + begin + RadioGroup1.ItemIndex:=2; + end; + with ADOTmp do + begin + Close; + sql.Clear; + SQL.Add('select * from WFB_MJJY_CD A where A.MJID='''+Trim(MJID.Text)+''''); + Open; + end; + Label2.Caption:=Trim(MJID.Text); + Label2.Visible:=True; + MJID.Text:=''; + SCreateCDS20(ADOTmp,Order_MJ); + SInitCDSData20(ADOTmp,Order_MJ); + if ShowModal=1 then + begin + + end; + end; + finally + frmMJEdit.Free; + end; +end; + +procedure TfrmJYOrderCDOne.N1Click(Sender: TObject); +begin + SelOKNo(Order_Main,True); +end; + +procedure TfrmJYOrderCDOne.N2Click(Sender: TObject); +begin + SelOKNo(Order_Main,False); +end; + +procedure TfrmJYOrderCDOne.TBZFClick(Sender: TObject); +begin + if Order_Main.Locate('ssel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪϺݲָܻ','ʾ',32+4)<>IDYES then Exit; + Order_Main.DisableControls; + with Order_Main do + begin + First; + while not Eof do + begin + if Order_Main.FieldByName('SSel').AsBoolean=True then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where MJID='''+Trim(Order_Main.fieldbyname('MJID').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Order_Main.EnableControls; + Application.MessageBox('Ѳݲɾ!','ʾ',0); + Exit; + end else + begin + //begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFB_MJJY where MJID='''+Trim(Order_Main.fieldbyname('MJID').AsString)+''''); + sql.Add('delete WFB_MJJY_CD where MJID='''+Trim(Order_Main.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + // end; + end; + Order_Main.Delete; + end else + Next; + end; + end; + Order_Main.EnableControls; + +end; + +procedure TfrmJYOrderCDOne.ToolButton1Click(Sender: TObject); +var + fPrintFile:string; + Txt,fImagePath:string; + Moudle: THandle; + Makebar:TMakebar; + Mixtext:TMixtext; +begin + if Order_Main.IsEmpty then Exit; + if Order_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + Order_Main.DisableControls; + with Order_Main do + begin + First; + while not Eof do + begin + if Order_Main.FieldByName('SSel').AsBoolean=True then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set PrtAgnFlag=1,PrtAgnDate=getdate(),PrtAgnPerson='''+Trim(DName)+''''); + sql.Add(' where MJID='''+Trim(Order_Main.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add('select QtyUnit=A.MJTypeOther,B.orderNo,B.conNo,PRTColorEng=E.Note,B.LBName,B.NLBName,B.customerNoName '); + sql.Add(',khConNo=(select top 1 khConNo from JYOrderCon_Main X where X.ConNO=B.conNO) '); + sql.Add(',MPRTCodeNameEng=ISNULL((select Top 1 F.note from KH_Zdy F where F.zdyname=B.MPRTCodeName and F.Type=''PRTCodeName''),B.MPRTCodeName)'); + sql.Add(',B.MPRTCF,B.MPRTMF,B.MPRTKZ,C.SOrddefstr4,B.MPRTCodeName,B.MPRTSpec,B.MPRTKuanNO,C.*,A.* '); + sql.Add(',Case when A.MJSJKZ*A.MJFK<>0 then Cast(A.MJQty4*1000/A.MJSJKZ/(A.MJFK/100) as int) else 0 end as MQty'); + sql.Add(' from WFB_MJJY A') ; + sql.Add(' inner join JYOrder_Main B On A.Mainid=B.Mainid'); + sql.Add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); + sql.Add(' left join KH_Zdy E on C.PRTColor=E.ZdyName and E.Type=''OrdColor'' '); + // sql.Add(' inner join CK_SXPB_CR D on D.SPId=A.APId '); + SQL.Add(' where A.MJID='''+Trim(Order_Main.fieldbyname('MJID').AsString)+''''); + Open; + end; + try + Moudle:=LoadLibrary('MakeQRBarcode.dll'); + @Makebar:=GetProcAddress(Moudle,'Make'); + @Mixtext:=GetProcAddress(Moudle,'MixText'); + Txt:=Trim(ADOQueryPrint.fieldbyname('MJID').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); + exit; + end; + if Trim(ADOQueryPrint.fieldbyname('LbName').AsString)<>'' then + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\'+Trim(ADOQueryPrint.fieldbyname('LbName').AsString)+'.rmf' + else + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ͨӢıǩ.rmf' ; + // fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\15029.rmf' ; + if FileExists(fPrintFile) then + begin + RMVariables['QRBARCODE']:=fImagePath; + RM2.LoadFromFile(fPrintFile); + Rm2.DefaultCopies:=strtointdef(trim(ComboBox1.Text),1); + // RM2.ShowReport; + RM2.PrintReport; + { IF Trim(ADOQueryPrint.fieldbyname('NLBName').AsString)<>'' then + begin + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\'+Trim(ADOQueryPrint.fieldbyname('NLBName').AsString)+'.rmf'; + if FileExists(fPrintFile) then + begin + RMVariables['QRBARCODE']:=fImagePath; + RM3.LoadFromFile(fPrintFile); + RM3.DefaultCopies:=1; + // RM3.ShowReport; + RM3.PrintReport; + end; + end; } + end + else + begin + Order_Main.EnableControls; + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ǩ.rmf'),'ʾ',0); + Exit; + end; + end; + Next; + end; + end; + Order_Main.EnableControls; +end; + +procedure TfrmJYOrderCDOne.RadioGroup1Click(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmJYOrderCDOne.TBAftChkHXClick(Sender: TObject); +var + fsj,fsj10:String; +begin + if Order_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + Order_Main.DisableControls; + with Order_Main do + begin + First; + while not Eof do + begin + if Order_Main.FieldByName('SSel').AsBoolean=True then + begin + if Trim(fsj)='' then + begin + fsj:=Trim(Order_Main.fieldbyname('SubId').AsString); + end + else + begin + if Trim(fsj)<>Trim(Order_Main.fieldbyname('SubId').AsString) then + begin + Order_Main.EnableControls; + Application.MessageBox('ͬƷһ!','ʾ',0); + Exit; + end; + end; + end; + Next; + end; + end; + Order_Main.EnableControls; + Order_Main.DisableControls; + with Order_Main do + begin + First; + while not Eof do + begin + if Order_Main.FieldByName('SSel').AsBoolean=True then + begin + if Trim(fsj10)='' then + begin + fsj10:=Trim(Order_Main.fieldbyname('AOrddefstr4').AsString); + end + else + begin + if Trim(fsj10)<>Trim(Order_Main.fieldbyname('AOrddefstr4').AsString) then + begin + Order_Main.EnableControls; + Application.MessageBox('ͬȾһ!','ʾ',0); + Exit; + end; + end; + end; + Next; + end; + end; + Order_Main.EnableControls; + +end; +function TfrmJYOrderCDOne.Savedata():Boolean; +var + maxno,LLID:string; + HXPS:Integer; + HXQty,HXMQty:Double; +begin + HXPS:=0; + HXQty:=0; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1 * from Contract_Cloth_LL where OrdSubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and FirstName='''+Trim(Order_Main.fieldbyname('AOrddefstr4').AsString)+''''); + Open; + end; + LLID:=Trim(ADOQueryTemp.fieldbyname('LLID').AsString); + if Trim(LLID)='' then + begin + Result:=False; + Application.MessageBox('ûӦļӹ!','ʾ',0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxno,'HX','Contract_Cloth_BefChkHX',2,1)=False then + begin + Result:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + with Order_Main do + begin + First; + while not Eof do + begin + if Order_Main.FieldByName('SSel').AsBoolean=True then + begin + HXPS:=HXPS+1; + HXQty:=HXQty+Order_Main.FieldByName('MJLen').Value; + end; + Next; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add(''); + Open; + end; + except + end; +end; + +procedure TfrmJYOrderCDOne.Aorddefstr1Change(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmJYOrderCDOne.OrderNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if Length(OrderNo.Text)<4 then Exit; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec P_JYOrder_HZFX20 :begdate,:enddate,:PState,:FFSql '); + Parameters.ParamByName('begdate').Value:='2010-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + Parameters.ParamByName('PState').Value:=3; + Parameters.ParamByName('FFSql').Value:=' where CC.OrderNo like '''+'%'+Trim(OrderNo.Text)+'%'+''''; + //ShowMessage(sql.Text); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + MovePanel2.Visible:=False; + end; + + +end; + +procedure TfrmJYOrderCDOne.PRTColorChange(Sender: TObject); +begin + TBFind.Click; + if Order_Main.IsEmpty=False then + begin + //InitOrderColor(Trim(Order_Main.fieldbyname('MainId').AsString),PRTColor,ADOQueryTemp); + // InitBCGangNo(Trim(Order_Main.fieldbyname('SubId').AsString),AOrdDefStr1,ADOQueryTemp); + end; +end; + +procedure TfrmJYOrderCDOne.Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if Order_Main.IsEmpty=False then + begin + // InitOrderColor(Trim(Order_Main.fieldbyname('MainId').AsString),PRTColor,ADOQueryTemp); + // InitBCGangNo(Trim(Order_Main.fieldbyname('SubId').AsString),AOrdDefStr1,ADOQueryTemp); + // InitRCGangNo(Trim(Order_Main.fieldbyname('SubId').AsString),GangNo,ADOQueryTemp); + end; +end; +procedure TfrmJYOrderCDOne.GetCDSData(); +begin + CDS_CD.FieldByName('MJXH').Value:=CDS_LS.fieldbyname('MJXH').Value; + CDS_CD.FieldByName('GangNo').Value:=CDS_LS.fieldbyname('Aorddefstr1').Value; + CDS_CD.FieldByName('PRTColor').Value:=CDS_LS.fieldbyname('PRTColor').Value; + CDS_CD.FieldByName('PRTEColor').Value:=CDS_LS.fieldbyname('SOrddefstr4').Value; + CDS_CD.FieldByName('MJLen').Value:=CDS_LS.fieldbyname('MJLen').Value; + CDS_CD.FieldByName('MJJZ').Value:=CDS_LS.fieldbyname('MJQty4').Value; + CDS_CD.FieldByName('MJMZ').Value:=CDS_LS.fieldbyname('MJMaoZ').Value; + CDS_CD.FieldByName('MJFK').Value:=CDS_LS.fieldbyname('MJFK').Value; + CDS_CD.FieldByName('KFQtyHZ').Value:=CDS_LS.fieldbyname('KFQtyHZ').Value; + CDS_CD.FieldByName('DengJi').Value:=CDS_LS.fieldbyname('DengJi').Value; + CDS_CD.FieldByName('PanDing').Value:=CDS_LS.fieldbyname('PanDing').Value; + CDS_CD.FieldByName('MJID').Value:=CDS_LS.fieldbyname('MJID').Value; +end; +procedure TfrmJYOrderCDOne.ToolButton2Click(Sender: TObject); +var + fPrintFile:string; +begin + GetBGData(); + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\鱨.rmf' ; + if FileExists(fPrintFile) then + begin + RMCD.LoadFromFile(fPrintFile); + RMVariables['OrderNo']:=Trim(Order_Main.fieldbyname('OrderNo').AsString); + RMVariables['CustomerNoName']:=Trim(Order_Main.fieldbyname('CustomerNoName').AsString); + RMVariables['MPRTCodeName']:=Trim(Order_Main.fieldbyname('MPRTCodeName').AsString); + RMVariables['MPRTMF']:=Trim(Order_Main.fieldbyname('MPRTMF').AsString); + RMVariables['JGC']:=Trim(Order_Main.fieldbyname('AOrddefstr4').AsString); + RMVariables['PBC']:=Trim(Order_Main.fieldbyname('AOrddefstr6').AsString); + RMCD.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\鱨.rmf'),'ʾ',0); + end; +end; +procedure TfrmJYOrderCDOne.GetBGData(); +var + FMJId:string; + i,j,z:Integer; +begin + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select MJXH=Cast(0 as int),GangNo=Cast('''' as varchar(20)),PRTColor=Cast('''' as varchar(20)),MJID=Cast('''' as varchar(20))'); + sql.Add(',PRTEColor=Cast('''' as varchar(20)),MJLen=Cast(0 as decimal(18,2)),MJJZ=Cast(0 as decimal(18,2)),XH=Cast(0 as int)'); + sql.Add(',MJMZ=Cast(0 as decimal(18,2)),MJFK=Cast(0 as decimal(18,2)),KFQtyHZ=Cast(0 as int),DengJi=Cast('''' as varchar(20)),PanDing=Cast('''' as varchar(20))'); + sql.Add(',CDName0=Cast('''' as varchar(20)),CDBeg0=Cast('''' as varchar(20)),KFQty0=Cast(0 as int)'); + sql.Add(',CDName1=Cast('''' as varchar(20)),CDBeg1=Cast('''' as varchar(20)),KFQty1=Cast(0 as int)'); + sql.Add(',CDName2=Cast('''' as varchar(20)),CDBeg2=Cast('''' as varchar(20)),KFQty2=Cast(0 as int)'); + sql.Add(',CDName3=Cast('''' as varchar(20)),CDBeg3=Cast('''' as varchar(20)),KFQty3=Cast(0 as int)'); + sql.Add(',CDName4=Cast('''' as varchar(20)),CDBeg4=Cast('''' as varchar(20)),KFQty4=Cast(0 as int)'); + sql.Add(',CDName5=Cast('''' as varchar(20)),CDBeg5=Cast('''' as varchar(20)),KFQty5=Cast(0 as int)'); + sql.Add(',CDName6=Cast('''' as varchar(20)),CDBeg6=Cast('''' as varchar(20)),KFQty6=Cast(0 as int)'); + sql.Add(',CDName7=Cast('''' as varchar(20)),CDBeg7=Cast('''' as varchar(20)),KFQty7=Cast(0 as int)'); + sql.Add(',CDName8=Cast('''' as varchar(20)),CDBeg8=Cast('''' as varchar(20)),KFQty8=Cast(0 as int)'); + sql.Add(',CDName9=Cast('''' as varchar(20)),CDBeg9=Cast('''' as varchar(20)),KFQty9=Cast(0 as int)'); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_CD); + SInitCDSData20(ADOQueryTemp,CDS_CD); + if CDS_CD.IsEmpty=False then CDS_CD.Delete; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select A.*,Case when isnull(MJType,'''')=''Ʒ'' and KFQtyHZ<26 then ''A'' '); + sql.Add(' when isnull(MJType,'''')=''Ʒ'' and KFQtyHZ>33 then ''C'''); + sql.Add(' when isnull(MJType,'''')=''Ʒ'' and KFQtyHZ>25 and A.KFQtyHZ<34 then ''B'''); + sql.Add(' else MJType end as DengJi'); + sql.Add('from (select A.CDBeg,A.CDName,A.KouFenQty,B.MJXH,C.Aorddefstr1,JS.PRTColor,JS.SOrddefstr4,B.MJID '); + sql.Add(',CDEName=(select Note from KH_Zdy KZ where KZ.ZdyName=A.CDName and KZ.Type=''WFBCD'' )'); + sql.Add(',B.MJLen,B.MJQty4,B.MJMaoZ,B.MJTypeOther,B.MJSJKZ,B.MJFK,B.MJType,B.PanDing'); + sql.Add(',KFQtyHZ=(select Sum(KouFenQty) from WFB_MJJY_CD MCD where MCD.MJID=B.MJID)'); + sql.Add(' from WFB_MJJY B inner join WFB_MJJY_CD A on B.MJID=A.MJID'); + sql.Add(' inner join JYOrder_Sub_AnPai C on B.APID=C.APID'); + sql.Add(' inner join JYOrder_Sub JS on C.SubId=JS.SubId'); + SQL.Add(' where B.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + if Trim(MJType.Text)<>'' then + begin + sql.Add(' and isnull(B.MJType,'''')='''+Trim(MJType.Text)+''''); + end; + + sql.Add(')A order by PRTColor,Cast(Aorddefstr1 as int),MJID,MJXH'); + Open; + end; + //ShowMessage(ADOQueryTemp.SQL.Text); + //ShowMessage(IntToStr(ADOQueryTemp.RecordCount)); + SCreateCDS20(ADOQueryTemp,CDS_LS); + SInitCDSData20(ADOQueryTemp,CDS_LS); + CDS_LS.DisableControls; + with CDS_LS do + begin + First; + while not Eof do + begin + if CDS_CD.IsEmpty then + begin + with CDS_CD do + begin + Append; + GetCDSData(); + if CheckBox1.Checked=True then + FieldByName('CDName0').Value:=CDS_LS.fieldbyname('CDEName').Value + else + FieldByName('CDName0').Value:=CDS_LS.fieldbyname('CDName').Value; + FieldByName('CDBeg0').Value:=CDS_LS.fieldbyname('CDBeg').Value; + FieldByName('KFQty0').Value:=CDS_LS.fieldbyname('KouFenQty').Value; + FieldByName('XH').Value:=0; + Post; + FMJId:=Trim(CDS_LS.fieldbyname('MJID').AsString); + i:=0;//к + j:=0; + z:=0;//к + end; + end else + begin + if Trim(CDS_LS.fieldbyname('MJID').AsString)=FMJId then + begin + i:=i+1; + if i<10 then + begin + with CDS_CD do + begin + Edit; + GetCDSData(); + if CheckBox1.Checked=True then + FieldByName('CDName'+Trim(IntToStr(i))).Value:=CDS_LS.fieldbyname('CDEName').Value + else + FieldByName('CDName'+Trim(IntToStr(i))).Value:=CDS_LS.fieldbyname('CDName').Value; + FieldByName('CDBeg'+Trim(IntToStr(i))).Value:=CDS_LS.fieldbyname('CDBeg').Value; + FieldByName('KFQty'+Trim(IntToStr(i))).Value:=CDS_LS.fieldbyname('KouFenQty').Value; + Post; + end; + end else + begin + i:=0; + with CDS_CD do + begin + Append; + GetCDSData(); + if CheckBox1.Checked=True then + FieldByName('CDName'+Trim(IntToStr(i))).Value:=CDS_LS.fieldbyname('CDEName').Value + else + FieldByName('CDName'+Trim(IntToStr(i))).Value:=CDS_LS.fieldbyname('CDName').Value; + FieldByName('CDBeg'+Trim(IntToStr(i))).Value:=CDS_LS.fieldbyname('CDBeg').Value; + FieldByName('KFQty'+Trim(IntToStr(i))).Value:=CDS_LS.fieldbyname('KouFenQty').Value; + Post; + end; + end; + end else + begin + i:=0; + with CDS_CD do + begin + Append; + GetCDSData(); + if CheckBox1.Checked=True then + FieldByName('CDName'+Trim(IntToStr(i))).Value:=CDS_LS.fieldbyname('CDEName').Value + else + FieldByName('CDName'+Trim(IntToStr(i))).Value:=CDS_LS.fieldbyname('CDName').Value; + FieldByName('CDBeg'+Trim(IntToStr(i))).Value:=CDS_LS.fieldbyname('CDBeg').Value; + FieldByName('KFQty'+Trim(IntToStr(i))).Value:=CDS_LS.fieldbyname('KouFenQty').Value; + Post; + end; + FMJId:=Trim(CDS_LS.fieldbyname('MJID').AsString); + end; + end; + Next; + end; + end; + CDS_LS.EnableControls; +end; + +procedure TfrmJYOrderCDOne.v1Column15PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + with Order_Main do + begin + Edit; + FieldByName('PanDing').Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFB_MJJY Set PanDing='''+Trim(mvalue)+''''); + SQL.Add(' where MJID='''+Trim(Order_Main.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmJYOrderCDOne.Button2Click(Sender: TObject); +begin + Panel2.Visible:=false; +end; + +procedure TfrmJYOrderCDOne.Button1Click(Sender: TObject); +var + i,J:string; +begin + if Order_Main.IsEmpty then Exit; + if Order_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + if trim(ComboBox4.Text)='' then + begin + Application.MessageBox('ͲΪ!','ʾ',0); + Exit; + end; + i:=floattostr(strtofloatdef(trim(cxCurrencyEdit1.Text),0)); + J:= floattostr(strtofloatdef(trim(cxCurrencyEdit2.Text),0)); + try + Order_Main.DisableControls; + ADOQueryCmd.Connection.BeginTrans; + with Order_Main do + begin + First; + while not Eof do + begin + if Order_Main.FieldByName('SSel').AsBoolean=True then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + // sql.Add('Update WFB_MJJY Set MKXs='''+trim(i)+''',MJLen=cast(1.00000* MJQty4 *'''+trim(i)+''' as decimal(18,1)) '); + IF trim(ComboBox4.Text)='Ȼ㾻'then + begin + sql.Add('Update WFB_MJJY Set MKXs='''+trim(i)+''',MJQty3='''+trim(J)+''',MJQty4=cast(1.00000* MJlen *'''+trim(i)+''' as decimal(18,1)) '); + sql.Add('where MJID='''+Trim(Order_Main.fieldbyname('MJID').AsString)+''''); + sql.Add('Update WFB_MJJY Set MJMaoZ=MJQty4+MJQty3 '); + sql.Add('where MJID='''+Trim(Order_Main.fieldbyname('MJID').AsString)+''''); + end; + IF trim(ComboBox4.Text)='ػ㳤'then + begin + sql.Add('Update WFB_MJJY Set MKXs='''+trim(i)+''',MJQty3='''+trim(J)+''',MJlen=cast(1.00000* MJQty4 *'''+trim(i)+''' as decimal(18,0)) '); + sql.Add('where MJID='''+Trim(Order_Main.fieldbyname('MJID').AsString)+''''); + sql.Add('Update WFB_MJJY Set MJMaoZ=MJQty4+MJQty3 '); + sql.Add('where MJID='''+Trim(Order_Main.fieldbyname('MJID').AsString)+''''); + end; + ExecSQL; + end; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Order_Main.EnableControls; + application.MessageBox('ݱɹ','ʾϢ'); + Panel2.Visible:=false; + TBRafresh.Click; + exit; + except + ADOQueryCmd.Connection.RollbackTrans; + Order_Main.EnableControls; + application.MessageBox('ݱʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmJYOrderCDOne.ToolButton3Click(Sender: TObject); +begin + Panel2.Left:=(self.Width-Panel2.Width) div 2; + Panel2.Visible:=true; +end; + +procedure TfrmJYOrderCDOne.CheckBox2Click(Sender: TObject); +begin + SelOKNo(Order_Main,CheckBox2.Checked); +end; + +procedure TfrmJYOrderCDOne.ToolButton4Click(Sender: TObject); +begin + frmCPDBao:=TfrmCPDBao.Create(self); + with frmCPDBao do + begin + show; + + end; +// frmCPDBao.Release; +end; + +procedure TfrmJYOrderCDOne.ToolButton6Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + if Order_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + try + Order_Main.DisableControls; + ADOQueryCmd.Connection.BeginTrans; + with Order_Main do + begin + First; + while not Eof do + begin + if Order_Main.FieldByName('SSel').AsBoolean=True then + begin + IF trim(fieldbyname('mjstr2').AsString)<>'δ' then + begin + ADOQueryCmd.Connection.RollbackTrans; + Order_Main.EnableControls; + application.MessageBox('ⲻܳ!','ʾϢ',MB_ICONERROR); + exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set baoID='''',baoNo='''' '); + sql.Add('where MJID='''+Trim(Order_Main.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Order_Main.EnableControls; + application.MessageBox('ݳɹ','ʾϢ'); + TBRafresh.Click; + exit; + except + ADOQueryCmd.Connection.RollbackTrans; + Order_Main.EnableControls; + application.MessageBox('ݳʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmJYOrderCDOne.ToolButton7Click(Sender: TObject); +begin + frmCPGangNo:=TfrmCPGangNo.Create(self); + with frmCPGangNo do + begin + if showmodal=1 then + begin + // InitGrid(); + end; + end; + frmCPGangNo.Free; +end; + +procedure TfrmJYOrderCDOne.ToolButton8Click(Sender: TObject); +begin + IF Order_Main.IsEmpty then exit; + frmJYMJIDPRINT:=TfrmJYMJIDPRINT.create(self); + with frmJYMJIDPRINT do + begin + fMJID:=trim(Order_Main.fieldbyname('MJID').AsString); + show; + end; +end; + +procedure TfrmJYOrderCDOne.ToolButton9Click(Sender: TObject); +begin + frmSMLB:=TfrmSMLB.create(self); + with frmSMLB do + begin + show; + end; +end; + +procedure TfrmJYOrderCDOne.Button4Click(Sender: TObject); +begin + Panel3.Visible:=false; +end; + +procedure TfrmJYOrderCDOne.Button3Click(Sender: TObject); +var fPrintFile: string; + Txt,fImagePath:string; + Moudle: THandle; + Makebar:TMakebar; + Mixtext:TMixtext; + FBaoID:string; +begin + if Order_Main.IsEmpty then Exit; + if trim(Order_Main.FieldByName('BaoID').AsString)='' then + begin + application.MessageBox('δܴӡ','ʾ'); + exit; + end; + + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add('select A.Baoid,A.BaoNo,A.MJTypeOther as QtyUnit,D.OrderNo,D.conNo,D.customerNoName,D.MprtCodeName,D.Mprtspec,D.OrdPerson1,D.MPRTKuanNO,D.LBName,D.NLBName,'); + sql.Add('PRTColor=DBO.F_Get_Order_SubStr(BaoID,''BNColor''),SOrddefstr1=DBO.F_Get_Order_SubStr(BaoID,''BNSOrddefstr1''),'); + sql.Add('SOrddefstr4=DBO.F_Get_Order_SubStr(BaoID,''BNSOrddefstr4''),PRtHX=DBO.F_Get_Order_SubStr(BaoID,''BNPRtHX''), '); + sql.Add('Mjstr4=DBO.F_Get_Order_SubStr(BaoID,''BNGangNo''), '); + sql.Add('BNMJLENLIST=DBO.F_Get_Order_SubStr(BaoID,''BNMJLENLIST''), '); + sql.Add('PRTkuanNo=DBO.F_Get_Order_SubStr(BaoID,''BNPrtkuanno''),'); + sql.Add('khConNo=(select top 1 khConNo from JYOrderCon_Main X where X.ConNO=D.conNO), '); + sql.Add('MprtCodeNameEng=(select top 1 Note from KH_Zdy X where X.zdyName=D.MprtCodeName), '); + SQL.ADD('count(A.MJID) as JSl,sum(A.MJMaoZ) MJMAOZ,sum(MJQty3) as MJQty3,sum(MJQty4) as MJQty4,SUM(A.MJLen)as MJLen'); + sql.Add('from WFB_MJJY A'); + sql.Add(' inner join JYOrder_Sub C on C.SubID=A.SubID'); + sql.Add(' inner join JYOrder_Main D on D.MainID=A.MainID'); + SQL.Add(' where A.BaoID='''+Trim(Order_Main.fieldbyname('BaoID').AsString)+''''); + SQL.ADD('group by A.Baoid,A.BaoNo,A.MJTypeOther,D.OrderNo,D.conNo,D.customerNoName,D.MprtCodeName,D.Mprtspec,D.OrdPerson1,D.MPRTKuanNO,D.LBName,D.NLBName'); + Open; + end; + + if ADOQueryPrint.RecordCount>1 then + begin + Application.MessageBox('´!','ʾ',0); + Exit; + end; + + try + Moudle:=LoadLibrary('MakeQRBarcode.dll'); + @Makebar:=GetProcAddress(Moudle,'Make'); + @Mixtext:=GetProcAddress(Moudle,'MixText'); + Txt:=trim(ADOQueryPrint.fieldbyname('baoID').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); + exit; + end; + + IF Check_bq.Checked then + begin + if Trim(ADOQueryPrint.fieldbyname('NLBName').AsString)<>'' then + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\'+Trim(ADOQueryPrint.fieldbyname('NLBName').AsString)+'.rmf' + else + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ǩ.rmf'; + + if FileExists(fPrintFile) then + begin + RMVariables['QRBARCODE']:=fImagePath; + RM2.DefaultCopies:=strtointdef(trim(ComboBox2.Text),1); + RM2.LoadFromFile(fPrintFile); + // RM2.ShowReport; + RM2.printReport; + end + else + begin + // Order_Main.EnableControls; + Application.MessageBox(PChar('û'+fPrintFile),'ʾ',0); + Exit; + end; + end; + + IF check_Fbz.Checked then + begin + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\'+Trim(Fbq.Text)+'.rmf' ; + + if FileExists(fPrintFile) then + begin + RMVariables['QRBARCODE']:=fImagePath; + RM2.DefaultCopies:=strtointdef(trim(ComboBox3.Text),1); + RM2.LoadFromFile(fPrintFile); + // RM2.ShowReport; + RM2.printReport; + end + else + begin + // Order_Main.EnableControls; + Application.MessageBox(PChar('û'+fPrintFile),'ʾ',0); + Exit; + end; + end; + +end; + +procedure TfrmJYOrderCDOne.ToolButton5Click(Sender: TObject); +begin + Panel3.Left:=(self.Width-Panel3.Width) div 2; + Panel3.Visible:=true; +end; + +procedure TfrmJYOrderCDOne.FbqBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BAOFFLAG'; + flagname:='ǩ'; + if ShowModal=1 then + begin + Fbq.Text:=trim(ClientDataSet1.fieldbyname('zdyName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmJYOrderCDOne.MJIDKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if Length(MJID.Text)<4 then Exit; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec P_JYOrder_HZFX20 :begdate,:enddate,:PState,:FFSql '); + Parameters.ParamByName('begdate').Value:='2010-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + Parameters.ParamByName('PState').Value:=3; + Parameters.ParamByName('FFSql').Value:=' where A.MJID like '''+'%'+Trim(MJID.Text)+'%'+''''; + //ShowMessage(sql.Text); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + if Order_Main.IsEmpty=False then + begin + //InitOrderColor(Trim(Order_Main.fieldbyname('MainId').AsString),PRTColor,ADOQueryTemp); + // InitBCGangNo(Trim(Order_Main.fieldbyname('SubId').AsString),AOrdDefStr1,ADOQueryTemp); + // InitRCGangNo(Trim(Order_Main.fieldbyname('SubId').AsString),GangNo,ADOQueryTemp); + end; + finally + ADOQueryMain.EnableControls; + end; + MovePanel2.Visible:=False; + end; +end; + +procedure TfrmJYOrderCDOne.ToolButton10Click(Sender: TObject); +var + fPrintFile:string; +begin + if Order_Main.IsEmpty then Exit; + if Order_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + with ADOqueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete TBSubID where DName='''+Trim(DCode)+''''); + ExecSQL; + end; + with ADOqueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * FROM TBSubID where 1=2 '); + open; + end; + ADOqueryCmd.Connection.BeginTrans; + try + Order_Main.DisableControls; + with Order_Main do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean then + begin + ADOQueryCmd.append; + ADOQueryCmd.fieldbyname('SubId').Value:=Trim(fieldbyname('MJID').AsString); + ADOQueryCmd.fieldbyname('Dname').Value:=Trim(DCode); + ADOQueryCmd.post; + end; + Next; + end; + end; + Order_Main.EnableControls; + ADOqueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + end; + with ADOqueryPrint do + begin + close; + sql.Clear; + sql.Add(' exec P_Get_JYMJID_Main '); + sql.Add(' @MJID='+quotedstr('')); + sql.Add(',@flag=''0'' '); + sql.Add(',@userID='+quotedstr(trim(DCode))); + open; + end; + + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\Ϣ.rmf';; + if NOT FileExists(fPrintFile) then + begin + Application.MessageBox(PChar('û'+trim(fPrintFile)),'ʾ',MB_ICONERROR); + exit; + end; + Rm2.LoadFromFile(fPrintFile); + Rm2.ShowReport; +end; + +procedure TfrmJYOrderCDOne.APIDKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if Length(APID.Text)<4 then Exit; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec P_JYOrder_HZFX20 :begdate,:enddate,:PState,:FFSql '); + Parameters.ParamByName('begdate').Value:='2010-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + Parameters.ParamByName('PState').Value:=3; + Parameters.ParamByName('FFSql').Value:=' where B.APID like '''+'%'+Trim(APID.Text)+'%'+''''; + //ShowMessage(sql.Text); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + if Order_Main.IsEmpty=False then + begin + //InitOrderColor(Trim(Order_Main.fieldbyname('MainId').AsString),PRTColor,ADOQueryTemp); + // InitBCGangNo(Trim(Order_Main.fieldbyname('SubId').AsString),AOrdDefStr1,ADOQueryTemp); + // InitRCGangNo(Trim(Order_Main.fieldbyname('SubId').AsString),GangNo,ADOQueryTemp); + end; + finally + ADOQueryMain.EnableControls; + end; + MovePanel2.Visible:=False; + end; +end; + +procedure TfrmJYOrderCDOne.ISbaoChange(Sender: TObject); +begin + Tbfind.Click; +end; + +procedure TfrmJYOrderCDOne.ToolButton11Click(Sender: TObject); +var + fPrintFile,fPrintFile10,FMainID:String; +begin + if Order_Main.IsEmpty then Exit; + + if Order_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ','ʾ',0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete TBSubID where DName='''+Trim(DCode)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('SELECT * FROM TBSubID where 1=2 '); + open; + end; + FMainID:=''; + Order_Main.DisableControls; + try + ADOQueryCmd.Connection.BeginTrans; + with Order_Main do + begin + First; + while not Eof do + begin + If Fieldbyname('Ssel').AsBoolean then + begin + IF FMainID='' then + begin + FMainID:=Trim(Order_Main.fieldbyname('mainID').AsString); + end + else + begin + IF Trim(Order_Main.fieldbyname('mainID').AsString)<>FMainID then + begin + application.MessageBox('ѡIJͬһָʾһӡ','ʾϢ',0); + ADOQueryCmd.Connection.RollbackTrans; + EnableControls; + exit; + end; + end; + ADOQueryCmd.append; + ADOQueryCmd.fieldbyname('SubId').Value:=Trim(Order_Main.fieldbyname('MJID').AsString); + ADOQueryCmd.fieldbyname('Dname').Value:=Trim(DCode); + ADOQueryCmd.post; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + end; + Order_Main.EnableControls; + + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.add('exec P_Do_PrintMd30 '); + sql.add('@mainID='+quotedstr(Trim(''))); + sql.add(',@DName='+quotedstr(Trim(DCode))); + sql.add(',@flag=''0'' '); + Open; + end; + SCreateCDS20(ADOQueryCmd,CDS_HZ); + SInitCDSData20(ADOQueryCmd,CDS_HZ); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.add('exec P_Do_PrintMd30_HZ '); + sql.add('@mainID='+quotedstr(Trim(''))); + sql.add(',@DName='+quotedstr(Trim(DCode))); + sql.add(',@flag=''0'' '); + Open; + end; + SCreateCDS20(ADOQueryCmd,CDS_PRT); + SInitCDSData20(ADOQueryCmd,CDS_PRT); + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\뵥3.rmf'; + if FileExists(fPrintFile) then + begin + RM3.LoadFromFile(fPrintFile); + RM3.ShowReport; + end + else + begin + Application.MessageBox(PChar('û'+fPrintFile),'ʾ',0); + end; + +end; + +procedure TfrmJYOrderCDOne.TBBNClick(Sender: TObject); +var + fmainid,fsubid:string; +begin + IF Order_Main.IsEmpty then exit; + if Order_Main.Locate('ssel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪת','ʾ',32+4)<>IDYES then Exit; + fmainID:=''; + frmProductOrderListSel:=TfrmProductOrderListSel.create(self); + with frmProductOrderListSel do + begin + if showmodal=1 then + begin + fmainID:= Order_Main.fieldbyname('MainID').asstring; + fsubID:= Order_Main.fieldbyname('subID').asstring; + end; + free; + end; + IF trim(fmainID)<>'' then + begin + ADOQueryCmd.Connection.BeginTrans; + Try + with Order_Main do + begin + DisableControls; + First; + while not eof do + begin + IF fieldbyname('ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFB_MJJY Set MainId='''+Trim(FMainid)+''',SubId='''+Trim(FSubId)+''' '); + sql.Add('where MJID='+quotedstr(trim(Order_Main.fieldbyName('MJID').AsString))); + execsql; + end; + end; + next; + end; + first; + EnableControls; + end; + ADOQueryCmd.Connection.CommitTrans; + TBRafresh.Click; + except + Order_Main.EnableControls; + ADOQueryCmd.Connection.RollbackTrans; + end; + end; +end; +procedure TfrmJYOrderCDOne.Button6Click(Sender: TObject); +begin + Panel5.Visible:=false; +end; + +procedure TfrmJYOrderCDOne.Button5Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + if Order_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + if trim(ComboBox5.Text)='' then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; + try + Order_Main.DisableControls; + ADOQueryCmd.Connection.BeginTrans; + with Order_Main do + begin + First; + while not Eof do + begin + if Order_Main.FieldByName('SSel').AsBoolean=True then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set MJTypeOther='''+trim(ComboBox5.Text)+''' '); + sql.Add('where MJID='''+Trim(Order_Main.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Order_Main.EnableControls; + application.MessageBox('ݱɹ','ʾϢ'); + Panel2.Visible:=false; + TBRafresh.Click; + exit; + except + ADOQueryCmd.Connection.RollbackTrans; + Order_Main.EnableControls; + application.MessageBox('ݱʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmJYOrderCDOne.ToolButton12Click(Sender: TObject); +begin + Panel5.Visible:=true; +end; + +end. diff --git a/艾登贸易管理/U_JYResult.dfm b/艾登贸易管理/U_JYResult.dfm new file mode 100644 index 0000000..580b681 --- /dev/null +++ b/艾登贸易管理/U_JYResult.dfm @@ -0,0 +1,527 @@ +object frmJYResult: TfrmJYResult + Left = 134 + Top = 55 + Width = 1079 + Height = 664 + Caption = #26816#39564#32467#26524 + Color = clBtnFace + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 13 + object Label1: TLabel + Left = 63 + Top = 59 + Width = 74 + Height = 35 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 63 + Top = 122 + Width = 74 + Height = 35 + Caption = #21402#24230 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 142 + Top = 204 + Width = 74 + Height = 35 + Caption = #21560#27700 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 867 + Top = 52 + Width = 70 + Height = 35 + Caption = 'g/'#13217 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 880 + Top = 120 + Width = 38 + Height = 35 + Caption = 'mm' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 385 + Top = 204 + Width = 74 + Height = 35 + Caption = #27668#21619 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 625 + Top = 204 + Width = 111 + Height = 35 + Caption = #33394#29282#24230 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object KZ1: TEdit + Left = 142 + Top = 55 + Width = 140 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnClick = KZ1Click + end + object KZ2: TEdit + Left = 288 + Top = 55 + Width = 140 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = KZ2Click + end + object KZ3: TEdit + Left = 434 + Top = 55 + Width = 140 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = KZ3Click + end + object KZ4: TEdit + Left = 580 + Top = 55 + Width = 140 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = KZ4Click + end + object KZ5: TEdit + Left = 726 + Top = 55 + Width = 140 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + OnClick = KZ5Click + end + object HD1: TEdit + Left = 142 + Top = 118 + Width = 140 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + OnClick = HD1Click + end + object HD2: TEdit + Left = 288 + Top = 118 + Width = 140 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + OnClick = HD2Click + end + object HD3: TEdit + Left = 434 + Top = 118 + Width = 140 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + OnClick = HD3Click + end + object HD4: TEdit + Left = 580 + Top = 118 + Width = 140 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + OnClick = HD4Click + end + object HD5: TEdit + Left = 726 + Top = 118 + Width = 140 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + OnClick = HD5Click + end + object XSWater: TComboBox + Left = 216 + Top = 195 + Width = 129 + Height = 56 + Style = csDropDownList + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ItemHeight = 48 + ParentFont = False + TabOrder = 10 + Items.Strings = ( + #22909 + #23578#21487 + #27424#20339) + end + object QiWei: TComboBox + Left = 460 + Top = 195 + Width = 129 + Height = 56 + Style = csDropDownList + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ItemHeight = 48 + ParentFont = False + TabOrder = 11 + Items.Strings = ( + #26377 + #26080) + end + object Button1: TButton + Left = 296 + Top = 514 + Width = 120 + Height = 90 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 12 + OnClick = Button1Click + end + object Button2: TButton + Left = 592 + Top = 514 + Width = 120 + Height = 90 + Caption = #36864#20986 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 13 + OnClick = Button2Click + end + object Panel3: TPanel + Left = 187 + Top = 272 + Width = 618 + Height = 212 + BevelInner = bvRaised + BevelOuter = bvLowered + ParentColor = True + TabOrder = 14 + object SpeedButton1: TSpeedButton + Left = 412 + Top = 108 + Width = 100 + Height = 100 + Caption = '0' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton2: TSpeedButton + Left = 3 + Top = 2 + Width = 100 + Height = 100 + Caption = '1' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton3: TSpeedButton + Left = 105 + Top = 2 + Width = 100 + Height = 100 + Caption = '2' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton4: TSpeedButton + Left = 207 + Top = 2 + Width = 100 + Height = 100 + Caption = '3' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton5: TSpeedButton + Left = 309 + Top = 2 + Width = 100 + Height = 100 + Caption = '4' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton6: TSpeedButton + Left = 411 + Top = 2 + Width = 100 + Height = 100 + Caption = '5' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton7: TSpeedButton + Left = 4 + Top = 108 + Width = 100 + Height = 100 + Caption = '6' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton8: TSpeedButton + Left = 106 + Top = 108 + Width = 100 + Height = 100 + Caption = '7' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton9: TSpeedButton + Left = 208 + Top = 108 + Width = 100 + Height = 100 + Caption = '8' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton10: TSpeedButton + Left = 310 + Top = 108 + Width = 100 + Height = 100 + Caption = '9' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton11: TSpeedButton + Tag = 9 + Left = 514 + Top = 108 + Width = 100 + Height = 100 + Caption = '.' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton12: TSpeedButton + Left = 513 + Top = 2 + Width = 100 + Height = 100 + Caption = #8592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -96 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton12Click + end + end + object SeLD: TComboBox + Left = 737 + Top = 195 + Width = 129 + Height = 56 + Style = csDropDownList + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ItemHeight = 48 + ParentFont = False + TabOrder = 15 + Items.Strings = ( + #22909 + #19981#22909 + #20813#26816) + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 960 + Top = 528 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 984 + Top = 456 + end +end diff --git a/艾登贸易管理/U_JYResult.pas b/艾登贸易管理/U_JYResult.pas new file mode 100644 index 0000000..ad818b0 --- /dev/null +++ b/艾登贸易管理/U_JYResult.pas @@ -0,0 +1,480 @@ +unit U_JYResult; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, DB, ADODB, Buttons, ExtCtrls; + +type + TfrmJYResult = class(TForm) + Label1: TLabel; + KZ1: TEdit; + KZ2: TEdit; + KZ3: TEdit; + KZ4: TEdit; + KZ5: TEdit; + Label2: TLabel; + HD1: TEdit; + HD2: TEdit; + HD3: TEdit; + HD4: TEdit; + HD5: TEdit; + Label3: TLabel; + Label4: TLabel; + Label5: TLabel; + XSWater: TComboBox; + Label6: TLabel; + QiWei: TComboBox; + Button1: TButton; + Button2: TButton; + ADOQueryCmd: TADOQuery; + ADOQueryTemp: TADOQuery; + Panel3: TPanel; + SpeedButton1: TSpeedButton; + SpeedButton2: TSpeedButton; + SpeedButton3: TSpeedButton; + SpeedButton4: TSpeedButton; + SpeedButton5: TSpeedButton; + SpeedButton6: TSpeedButton; + SpeedButton7: TSpeedButton; + SpeedButton8: TSpeedButton; + SpeedButton9: TSpeedButton; + SpeedButton10: TSpeedButton; + SpeedButton11: TSpeedButton; + SpeedButton12: TSpeedButton; + Label7: TLabel; + SeLD: TComboBox; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure KZ1Click(Sender: TObject); + procedure SpeedButton1Click(Sender: TObject); + procedure SpeedButton12Click(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure KZ2Click(Sender: TObject); + procedure KZ3Click(Sender: TObject); + procedure KZ4Click(Sender: TObject); + procedure KZ5Click(Sender: TObject); + procedure HD1Click(Sender: TObject); + procedure HD2Click(Sender: TObject); + procedure HD3Click(Sender: TObject); + procedure HD4Click(Sender: TObject); + procedure HD5Click(Sender: TObject); + private + Fint:Integer; + { Private declarations } + public + { Public declarations } + end; + +var + frmJYResult: TfrmJYResult; + +implementation +uses +U_DataLink,U_Fun,U_iniParam; + +{$R *.dfm} + +procedure TfrmJYResult.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + DataLink_WFBProducttion.ADOLink.Connected:=False; + Action:=caFree; +end; + +procedure TfrmJYResult.FormDestroy(Sender: TObject); +begin + frmJYResult:=nil; +end; + +procedure TfrmJYResult.Button1Click(Sender: TObject); +var + MJIDInt:Integer; + maxno,maxno10,maxno20,FBanZu:String; +begin + if( (Trim(KZ1.Text)<>'') and (Trim(KZ2.Text)<>'') and (Trim(KZ3.Text)<>'') and + (Trim(KZ4.Text)<>'') and (Trim(KZ5.Text)<>'') )=False then + begin + Application.MessageBox('ݲȫ','ʾ',0); + Exit; + end; + if( (Trim(HD1.Text)<>'') and (Trim(HD2.Text)<>'') and (Trim(HD3.Text)<>'') and + (Trim(HD4.Text)<>'') and (Trim(HD5.Text)<>'') )=False then + begin + Application.MessageBox('ݲȫ','ʾ',0); + Exit; + end; + if Trim(XSWater.Text)='' then + begin + Application.MessageBox('ˮΪգ','ʾ',0); + Exit; + end; + if Trim(QiWei.Text)='' then + begin + Application.MessageBox('ζΪգ','ʾ',0); + Exit; + end; + if Trim(SeLD.Text)='' then + begin + Application.MessageBox('ɫζȲΪգ','ʾ',0); + Exit; + end; + DataLink_WFBProducttion.ADOLink.Connected:=False; + DataLink_WFBProducttion.ADOLink.Connected:=True; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select * from WFB_MJJY where Cast(MJID as int)='); + sql.Add('(select Max(Cast(MJID as int) ) from WFB_JYResult'); + if Trim(SCXFlag)<>'' then + begin + sql.Add(' where JTType='''+Trim(SCXFlag)+''''); + end; + sql.Add(')'); + if Trim(SCXFlag)<>'' then + begin + sql.Add(' and JTType='''+Trim(SCXFlag)+''''); + end; + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + with ADOQueryCmd do + begin + close; + SQL.Clear; + SQL.Add('select Top 1* from WFB_JYResult'); + if Trim(SCXFlag)<>'' then + begin + sql.Add(' where JTType='''+Trim(SCXFlag)+''''); + end; + Open; + end; + if ADOQueryCmd.IsEmpty=False then + begin + Application.MessageBox('ϾδӡǩԽ飡','ʾ',0); + Exit; + end; + end; + if Application.MessageBox('ȷҪִвȷݽ޸ģ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(Max(Cast(MJID as int)),0) MJIDInt from WFB_MJJY'); + if Trim(SCXFlag)<>'' then + begin + sql.Add(' where JTType='''+Trim(SCXFlag)+''''); + end; + Open; + end; + // 112091201 20120914 + MJIDInt:=ADOQueryTemp.fieldbyname('MJIDInt').Value; + maxno10:=Trim(FormatDateTime('yyyyMMdd',SGetServerDateTime(ADOQueryTemp))); + maxno10:=Trim(SCXFlag)+Trim(Copy(maxno10,3,6)); + maxno20:=IntToStr(MJIDInt); + maxno20:=Copy(maxno20,1,7); + try + ADOQueryCmd.Connection.BeginTrans; + if MJIDInt>0 then + begin + if StrToInt(maxno10)>StrToInt(maxno20) then + begin + if GetLSNo(ADOQueryCmd,maxno,Trim(SCXFlag),'WFB_MJJY',2,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + end else + maxno:=Trim(IntToStr(MJIDInt+1)) + end else + begin + with ADOQueryTemp do + begin + Close; + SQL.Clear; + SQL.Add('select * from WFB_JB '); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + if GetLSNo(ADOQueryCmd,maxno,Trim(SCXFlag),'WFB_MJJY',2,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(ADOQueryTemp.fieldbyname('MJID').AsString); + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_JYResult where MJID='''+Trim(maxno)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('Ѿ飡','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select * from SY_User where UserId='''+Trim(DCode)+''''); + Open; + end; + FBanZu:=Trim(ADOQueryTemp.fieldbyname('BanZu').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_JYResult where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MJID').Value:=Trim(maxno); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('BanZu').Value:=Trim(FBanZu); + FieldByName('KZ1').Value:=Trim(KZ1.Text); + FieldByName('KZ2').Value:=Trim(KZ2.Text); + FieldByName('KZ3').Value:=Trim(KZ3.Text); + FieldByName('KZ4').Value:=Trim(KZ4.Text); + FieldByName('KZ5').Value:=Trim(KZ5.Text); + FieldByName('HD1').Value:=Trim(HD1.Text); + FieldByName('HD2').Value:=Trim(HD2.Text); + FieldByName('HD3').Value:=Trim(HD3.Text); + FieldByName('HD4').Value:=Trim(HD4.Text); + FieldByName('HD5').Value:=Trim(HD5.Text); + FieldByName('XSWater').Value:=Trim(XSWater.Text); + FieldByName('QiWei').Value:=Trim(QiWei.Text); + FieldByName('SeLD').Value:=Trim(SeLD.Text); + if Trim(SCXFlag)<>'' then + begin + FieldByName('JTType').Value:=Trim(SCXFlag); + end; + Post; + end; + ADOQueryCmd.Connection.CommitTrans; + //Application.MessageBox('ɹ','ʾ',0); + Exit; + except + DataLink_WFBProducttion.ADOLink.Connected:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; + DataLink_WFBProducttion.ADOLink.Connected:=False; +end; + +procedure TfrmJYResult.Button2Click(Sender: TObject); +begin + Close; +end; + +procedure TfrmJYResult.KZ1Click(Sender: TObject); +begin + Fint:=1; +end; + +procedure TfrmJYResult.SpeedButton1Click(Sender: TObject); +begin + if Fint=1 then + begin + KZ1.Text:=Trim(KZ1.Text)+Trim(TSpeedButton(Sender).Caption); + KZ1.SelectAll; + end else + if Fint=2 then + begin + KZ2.Text:=Trim(KZ2.Text)+Trim(TSpeedButton(Sender).Caption); + KZ2.SelectAll; + end else + if Fint=3 then + begin + KZ3.Text:=Trim(KZ3.Text)+Trim(TSpeedButton(Sender).Caption); + KZ3.SelectAll; + end else + if Fint=4 then + begin + KZ4.Text:=Trim(KZ4.Text)+Trim(TSpeedButton(Sender).Caption); + KZ4.SelectAll; + end else + if Fint=5 then + begin + KZ5.Text:=Trim(KZ5.Text)+Trim(TSpeedButton(Sender).Caption); + KZ5.SelectAll; + end else + if Fint=6 then + begin + HD1.Text:=Trim(HD1.Text)+Trim(TSpeedButton(Sender).Caption); + HD1.SelectAll; + end else + if Fint=7 then + begin + HD2.Text:=Trim(HD2.Text)+Trim(TSpeedButton(Sender).Caption); + HD2.SelectAll; + end else + if Fint=8 then + begin + HD3.Text:=Trim(HD3.Text)+Trim(TSpeedButton(Sender).Caption); + HD3.SelectAll; + end else + if Fint=9 then + begin + HD4.Text:=Trim(HD4.Text)+Trim(TSpeedButton(Sender).Caption); + HD4.SelectAll; + end else + if Fint=10 then + begin + HD5.Text:=Trim(HD5.Text)+Trim(TSpeedButton(Sender).Caption); + HD5.SelectAll; + end; +end; + +procedure TfrmJYResult.SpeedButton12Click(Sender: TObject); +begin + if Fint=1 then + begin + if Trim(KZ1.Text)<>'' then + begin + KZ1.Text:=Copy(Trim(KZ1.Text),1,Length(Trim(KZ1.Text))-1); + KZ1.SelectAll; + end; + end else + if Fint=2 then + begin + if Trim(KZ2.Text)<>'' then + begin + KZ2.Text:=Copy(Trim(KZ2.Text),1,Length(Trim(KZ2.Text))-1); + KZ2.SelectAll; + end; + end else + if Fint=3 then + begin + if Trim(KZ3.Text)<>'' then + begin + KZ3.Text:=Copy(Trim(KZ3.Text),1,Length(Trim(KZ3.Text))-1); + KZ3.SelectAll; + end; + end else + if Fint=4 then + begin + if Trim(KZ4.Text)<>'' then + begin + KZ4.Text:=Copy(Trim(KZ4.Text),1,Length(Trim(KZ4.Text))-1); + KZ4.SelectAll; + end; + end else + if Fint=5 then + begin + if Trim(KZ5.Text)<>'' then + begin + KZ5.Text:=Copy(Trim(KZ5.Text),1,Length(Trim(KZ5.Text))-1); + KZ5.SelectAll; + end; + end else + if Fint=6 then + begin + if Trim(HD1.Text)<>'' then + begin + HD1.Text:=Copy(Trim(HD1.Text),1,Length(Trim(HD1.Text))-1); + HD1.SelectAll; + end; + end else + if Fint=7 then + begin + if Trim(HD2.Text)<>'' then + begin + HD2.Text:=Copy(Trim(HD2.Text),1,Length(Trim(HD2.Text))-1); + HD2.SelectAll; + end; + end else + if Fint=8 then + begin + if Trim(HD3.Text)<>'' then + begin + HD3.Text:=Copy(Trim(HD3.Text),1,Length(Trim(HD3.Text))-1); + HD3.SelectAll; + end; + end else + if Fint=9 then + begin + if Trim(HD4.Text)<>'' then + begin + HD4.Text:=Copy(Trim(HD4.Text),1,Length(Trim(HD4.Text))-1); + HD4.SelectAll; + end; + end else + if Fint=10 then + begin + if Trim(HD5.Text)<>'' then + begin + HD5.Text:=Copy(Trim(HD5.Text),1,Length(Trim(HD5.Text))-1); + HD5.SelectAll; + end; + end; +end; + +procedure TfrmJYResult.FormShow(Sender: TObject); +begin + Fint:=1; + KZ1.SetFocus; +end; + +procedure TfrmJYResult.KZ2Click(Sender: TObject); +begin + Fint:=2; +end; + +procedure TfrmJYResult.KZ3Click(Sender: TObject); +begin + Fint:=3; +end; + +procedure TfrmJYResult.KZ4Click(Sender: TObject); +begin + Fint:=4; +end; + +procedure TfrmJYResult.KZ5Click(Sender: TObject); +begin + Fint:=5; +end; + +procedure TfrmJYResult.HD1Click(Sender: TObject); +begin + Fint:=6; +end; + +procedure TfrmJYResult.HD2Click(Sender: TObject); +begin + Fint:=7; +end; + +procedure TfrmJYResult.HD3Click(Sender: TObject); +begin + Fint:=8; +end; + +procedure TfrmJYResult.HD4Click(Sender: TObject); +begin + Fint:=9; +end; + +procedure TfrmJYResult.HD5Click(Sender: TObject); +begin + Fint:=10; +end; + +end. diff --git a/艾登贸易管理/U_JiangLiaoSet.dfm b/艾登贸易管理/U_JiangLiaoSet.dfm new file mode 100644 index 0000000..0fbe367 --- /dev/null +++ b/艾登贸易管理/U_JiangLiaoSet.dfm @@ -0,0 +1,968 @@ +object frmJiangLiaoSet: TfrmJiangLiaoSet + Left = 36 + Top = 5 + Width = 1225 + Height = 754 + Caption = #27974#26009#37197#21046#21333 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 14 + object Label12: TLabel + Left = 664 + Top = 15 + Width = 30 + Height = 14 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1217 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 63 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_WFBProducttion.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 67 + Top = 0 + Caption = #25764#38144 + ImageIndex = 7 + OnClick = ToolButton2Click + end + object TBClose: TToolButton + Left = 130 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 29 + Width = 1217 + Height = 42 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 60 + Height = 14 + Caption = #31614#21457#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 187 + Top = 15 + Width = 21 + Height = 14 + Caption = '---' + end + object Label3: TLabel + Left = 328 + Top = 15 + Width = 45 + Height = 14 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 528 + Top = 15 + Width = 30 + Height = 14 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 688 + Top = 15 + Width = 30 + Height = 14 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 824 + Top = 15 + Width = 60 + Height = 14 + Caption = #37197#27974#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 83 + Top = 11 + Width = 105 + Height = 22 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 201 + Top = 11 + Width = 103 + Height = 22 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 376 + Top = 11 + Width = 137 + Height = 22 + TabOrder = 2 + OnChange = OrderNoChange + end + object CustomNoName: TEdit + Tag = 2 + Left = 560 + Top = 11 + Width = 105 + Height = 22 + TabOrder = 3 + OnChange = OrderNoChange + end + object SWFBColor: TComboBox + Tag = 1 + Left = 721 + Top = 11 + Width = 78 + Height = 22 + Style = csDropDownList + ItemHeight = 14 + TabOrder = 4 + OnChange = OrderNoChange + end + object ZuHeID: TEdit + Tag = 2 + Left = 885 + Top = 11 + Width = 137 + Height = 22 + TabOrder = 5 + OnChange = OrderNoChange + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 71 + Width = 1217 + Height = 24 + Align = alTop + Style = 9 + TabIndex = 0 + TabOrder = 2 + Tabs.Strings = ( + #24453#37197#21046 + #24050#37197#21046) + OnChange = cxTabControl1Change + ClientRectBottom = 24 + ClientRectRight = 1217 + ClientRectTop = 21 + end + object cxGrid4: TcxGrid + Left = 0 + Top = 95 + Width = 1217 + Height = 242 + Align = alClient + TabOrder = 3 + object TvOrdNo: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = TvOrdNoCellClick + DataController.DataSource = DSOrdNo + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBProducttion.SHuangSe + Styles.IncSearch = DataLink_WFBProducttion.SHuangSe + Styles.Selection = DataLink_WFBProducttion.SHuangSe + object vOrderBakColumn1: TcxGridDBColumn + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 39 + end + object vOrderBakColumn2: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 118 + end + object vOrderBakColumn3: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomNoName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 52 + end + object vOrdNoColumn2: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'OrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 69 + end + object vOrdNoColumn3: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 76 + end + object vOrderBakColumn4: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 45 + end + object vOrderBakColumn5: TcxGridDBColumn + Caption = #23457#26680#29366#24577 + DataBinding.FieldName = 'ChkStatus' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 60 + end + object vOrdNoColumn1: TcxGridDBColumn + Caption = #37197#27974#21333#21495 + DataBinding.FieldName = 'ZuHeID' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 117 + end + end + object cxGrid4Level1: TcxGridLevel + GridView = TvOrdNo + end + end + object Panel2: TPanel + Left = 0 + Top = 337 + Width = 1217 + Height = 71 + Align = alBottom + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 4 + object Label4: TLabel + Left = 5 + Top = 41 + Width = 80 + Height = 15 + Caption = #37197#21046#25968#37327#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -15 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 162 + Top = 41 + Width = 18 + Height = 15 + Caption = 'KG' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -15 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label14: TLabel + Left = 5 + Top = 12 + Width = 80 + Height = 15 + Caption = #20135#21697#22411#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -15 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label16: TLabel + Left = 183 + Top = 12 + Width = 48 + Height = 15 + Caption = #23380#30446#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -15 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label17: TLabel + Left = 183 + Top = 41 + Width = 48 + Height = 15 + Caption = #33457#22411#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -15 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 453 + Top = 41 + Width = 80 + Height = 15 + Caption = #37197#21046#25968#37327#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -15 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 610 + Top = 41 + Width = 18 + Height = 15 + Caption = 'KG' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -15 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object MCQty: TEdit + Tag = 2 + Left = 76 + Top = 37 + Width = 84 + Height = 23 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -15 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnChange = MCQtyChange + OnKeyPress = MCQtyKeyPress + end + object WFBCpSpec: TcxButtonEdit + Left = 76 + Top = 10 + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = SWFBCodeNamePropertiesButtonClick + TabOrder = 1 + Width = 84 + end + object WKMS: TcxButtonEdit + Left = 222 + Top = 10 + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = WKMSPropertiesButtonClick + TabOrder = 2 + Width = 58 + end + object SWFBHW: TcxButtonEdit + Left = 222 + Top = 38 + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxButtonEdit2PropertiesButtonClick + TabOrder = 3 + Width = 58 + end + object BtnSave: TButton + Left = 376 + Top = 10 + Width = 54 + Height = 22 + Caption = #20445#23384 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + OnClick = BtnSaveClick + end + object BtnPrint: TButton + Left = 376 + Top = 38 + Width = 55 + Height = 22 + Caption = #25171#21360 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + OnClick = BtnPrintClick + end + object BtnChkNo: TButton + Left = 288 + Top = 38 + Width = 80 + Height = 22 + Caption = #23457#26680#19981#36890#36807 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + OnClick = BtnChkNoClick + end + object BtnChkOk: TButton + Left = 288 + Top = 10 + Width = 80 + Height = 22 + Caption = #23457#26680#36890#36807 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + OnClick = BtnChkOkClick + end + object MCQty10: TEdit + Tag = 2 + Left = 524 + Top = 37 + Width = 84 + Height = 23 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -15 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + OnChange = MCQty10Change + OnKeyPress = MCQtyKeyPress + end + end + object Panel3: TPanel + Left = 0 + Top = 408 + Width = 1217 + Height = 309 + Align = alBottom + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 5 + object Label7: TLabel + Left = 1100 + Top = 51 + Width = 45 + Height = 14 + Caption = #22791#27880#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label8: TLabel + Left = 1100 + Top = 131 + Width = 45 + Height = 14 + Caption = #22791#27880#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label9: TLabel + Left = 1100 + Top = 211 + Width = 45 + Height = 14 + Caption = #22791#27880#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object cxGrid1: TcxGrid + Left = 2 + Top = 2 + Width = 435 + Height = 305 + Align = alLeft + PopupMenu = PopupMenu3 + TabOrder = 0 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DSSub + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Column5 + end + item + Kind = skSum + Column = v1Column4 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object v1Column1: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + SortIndex = 0 + SortOrder = soAscending + Width = 53 + end + object v1Column3: TcxGridDBColumn + Caption = #21407#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 104 + end + object v1Column4: TcxGridDBColumn + Caption = #39044#20272#25968#37327'(kg)' + DataBinding.FieldName = 'YGQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 91 + end + object v1Column2: TcxGridDBColumn + Tag = 2 + Caption = #37197#27604#37327 + DataBinding.FieldName = 'PBQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v1Column5: TcxGridDBColumn + Tag = 2 + Caption = #23454#38469#25968#37327'(kg)' + DataBinding.FieldName = 'SJQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 91 + end + end + object cxGrid1Level4: TcxGridLevel + GridView = Tv1 + end + end + object cxGrid3: TcxGrid + Left = 437 + Top = 2 + Width = 337 + Height = 305 + Align = alLeft + PopupMenu = PopupMenu1 + TabOrder = 1 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DSJYFZ + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column4 + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object v2Column1: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + SortIndex = 0 + SortOrder = soAscending + Width = 59 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #21407#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 112 + end + object v2Column2: TcxGridDBColumn + Caption = #37197#27604#37327 + DataBinding.FieldName = 'PBQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v2Column4: TcxGridDBColumn + Tag = 2 + Caption = #23454#38469#25968#37327'(kg)' + DataBinding.FieldName = 'SJQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 92 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv2 + end + end + object Panel4: TPanel + Left = 774 + Top = 2 + Width = 153 + Height = 305 + Align = alLeft + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 2 + object Panel8: TPanel + Left = 2 + Top = 2 + Width = 149 + Height = 25 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Caption = #22791#27880 + TabOrder = 0 + end + object MCNote: TRichEdit + Left = 2 + Top = 27 + Width = 149 + Height = 276 + Align = alClient + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + Lines.Strings = ( + '') + ParentFont = False + ScrollBars = ssBoth + TabOrder = 1 + end + end + object Panel5: TPanel + Left = 927 + Top = 2 + Width = 154 + Height = 305 + Align = alLeft + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 3 + object Panel6: TPanel + Left = 2 + Top = 2 + Width = 150 + Height = 25 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Caption = #35746#21333#21495 + TabOrder = 0 + end + object OrderNoSL: TRichEdit + Left = 2 + Top = 27 + Width = 150 + Height = 276 + Align = alClient + ScrollBars = ssBoth + TabOrder = 1 + end + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid4 + PopupMenus = <> + Left = 208 + Top = 256 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 144 + Top = 255 + end + object DSOrdNo: TDataSource + DataSet = CDS_Main + Left = 240 + Top = 256 + end + object ADOCmd: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 934 + Top = 469 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 176 + Top = 258 + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 690 + Top = 272 + end + object DSSub: TDataSource + DataSet = CDS_Sub + Left = 586 + Top = 264 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 642 + Top = 264 + end + object PopupMenu3: TPopupMenu + Left = 298 + Top = 525 + object MenuItem3: TMenuItem + Caption = #22686#34892 + OnClick = MenuItem3Click + end + object MenuItem4: TMenuItem + Caption = #21024#34892 + OnClick = MenuItem4Click + end + end + object cxStyleRepository1: TcxStyleRepository + Left = 408 + Top = 8 + object cxStyle1: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -13 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Main + Left = 830 + Top = 488 + 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 = RMDBZY + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 870 + Top = 504 + ReportData = {} + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 966 + Top = 466 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 806 + Top = 392 + end + object cxGridPopupMenu3: TcxGridPopupMenu + PopupMenus = <> + Left = 618 + Top = 460 + end + object RMDBZY: TRMDBDataSet + Visible = True + DataSet = CDS_Sub + Left = 830 + Top = 488 + end + object RMDBFZ: TRMDBDataSet + Visible = True + Left = 806 + Top = 496 + end + object ADOTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 754 + Top = 471 + end + object DSJYFZ: TDataSource + DataSet = CDS_JYFZ + Left = 842 + Top = 575 + end + object CDS_JYFZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 898 + Top = 511 + end + object PopupMenu1: TPopupMenu + Left = 514 + Top = 519 + object MenuItem1: TMenuItem + Caption = #22686#34892 + OnClick = MenuItem1Click + end + object MenuItem2: TMenuItem + Caption = #21024#34892 + OnClick = MenuItem2Click + end + end +end diff --git a/艾登贸易管理/U_JiangLiaoSet.pas b/艾登贸易管理/U_JiangLiaoSet.pas new file mode 100644 index 0000000..43e3835 --- /dev/null +++ b/艾登贸易管理/U_JiangLiaoSet.pas @@ -0,0 +1,1182 @@ +unit U_JiangLiaoSet; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, ADODB, DBClient, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGrid, cxPC, StdCtrls, ComCtrls, ExtCtrls, + ToolWin, cxCheckBox, Menus, cxTextEdit, RM_Common, RM_Class, + RM_GridReport, RM_System, RM_Dataset, RM_e_Xls, cxContainer, cxMaskEdit, + cxButtonEdit; + +type + TfrmJiangLiaoSet = class(TForm) + ToolBar1: TToolBar; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + Label2: TLabel; + Label3: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + OrderNo: TEdit; + cxTabControl1: TcxTabControl; + cxGridPopupMenu1: TcxGridPopupMenu; + CDS_Main: TClientDataSet; + DSOrdNo: TDataSource; + ADOCmd: TADOQuery; + ADOQueryMain: TADOQuery; + cxGridPopupMenu2: TcxGridPopupMenu; + DSSub: TDataSource; + CDS_Sub: TClientDataSet; + ToolButton1: TToolButton; + PopupMenu3: TPopupMenu; + MenuItem3: TMenuItem; + MenuItem4: TMenuItem; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + RMDBMain: TRMDBDataSet; + RM1: TRMGridReport; + ADOQueryPrint: TADOQuery; + RMXLSExport1: TRMXLSExport; + Label10: TLabel; + CustomNoName: TEdit; + Label11: TLabel; + Label12: TLabel; + cxGridPopupMenu3: TcxGridPopupMenu; + TvOrdNo: TcxGridDBTableView; + cxGrid4Level1: TcxGridLevel; + cxGrid4: TcxGrid; + vOrderBakColumn1: TcxGridDBColumn; + vOrderBakColumn2: TcxGridDBColumn; + vOrderBakColumn3: TcxGridDBColumn; + vOrderBakColumn4: TcxGridDBColumn; + vOrderBakColumn5: TcxGridDBColumn; + RMDBZY: TRMDBDataSet; + RMDBFZ: TRMDBDataSet; + SWFBColor: TComboBox; + vOrdNoColumn1: TcxGridDBColumn; + Label18: TLabel; + ZuHeID: TEdit; + vOrdNoColumn2: TcxGridDBColumn; + vOrdNoColumn3: TcxGridDBColumn; + Panel2: TPanel; + Label4: TLabel; + Label5: TLabel; + Label14: TLabel; + Label16: TLabel; + Label17: TLabel; + MCQty: TEdit; + WFBCpSpec: TcxButtonEdit; + WKMS: TcxButtonEdit; + SWFBHW: TcxButtonEdit; + BtnSave: TButton; + BtnPrint: TButton; + BtnChkNo: TButton; + BtnChkOk: TButton; + Panel3: TPanel; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column1: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + cxGrid1Level4: TcxGridLevel; + cxGrid3: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column1: TcxGridDBColumn; + cxGridDBColumn1: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + Label7: TLabel; + Label8: TLabel; + Label9: TLabel; + ADOTemp: TADOQuery; + DSJYFZ: TDataSource; + CDS_JYFZ: TClientDataSet; + PopupMenu1: TPopupMenu; + MenuItem1: TMenuItem; + MenuItem2: TMenuItem; + v1Column2: TcxGridDBColumn; + Panel4: TPanel; + Panel5: TPanel; + Panel8: TPanel; + MCNote: TRichEdit; + Panel6: TPanel; + OrderNoSL: TRichEdit; + ToolButton2: TToolButton; + v2Column2: TcxGridDBColumn; + Label6: TLabel; + Label13: TLabel; + MCQty10: TEdit; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure MenuItem3Click(Sender: TObject); + procedure MenuItem4Click(Sender: TObject); + procedure BtnSaveClick(Sender: TObject); + procedure TvOrdNoCellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure MCQtyKeyPress(Sender: TObject; var Key: Char); + procedure BtnChkOkClick(Sender: TObject); + procedure BtnChkNoClick(Sender: TObject); + procedure BtnPrintClick(Sender: TObject); + procedure MenuItem1Click(Sender: TObject); + procedure MenuItem2Click(Sender: TObject); + procedure SWFBCodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WKMSPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxButtonEdit2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column2PropertiesEditValueChanged(Sender: TObject); + procedure MCQtyChange(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure MCQty10Change(Sender: TObject); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + private + { Private declarations } + ChkInt:Integer; + procedure InitGridMain(); + procedure InitGrid(); + procedure MCData(); + procedure InitGridMainSel(); + public + { Public declarations } + end; + +var + frmJiangLiaoSet: TfrmJiangLiaoSet; + +implementation +uses + U_DataLink,U_Fun,U_GetPGJBOneTwoInList,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmJiangLiaoSet.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmJiangLiaoSet.FormDestroy(Sender: TObject); +begin + frmJiangLiaoSet:=nil; +end; + +procedure TfrmJiangLiaoSet.InitGrid(); +begin + try + ADOTemp.DisableControls; + with ADOTemp do + begin + Close; + SQL.Clear; + if cxTabControl1.TabIndex=0 then + begin + sql.Add('select * from WFBYCL_JiangYe where MCID='''+Trim(CDS_Main.fieldbyname('MCID').AsString)+''''); + end else + sql.Add('select * from WFBYCL_JiangYe where ZuHeID='''+Trim(CDS_Main.fieldbyname('ZuHeID').AsString)+''''); + sql.Add(' and JYType=''ҪҺ'' '); + sql.Add(' order by OrderNo'); + Open; + end; + SCreateCDS20(ADOTemp,CDS_Sub); + SInitCDSData20(ADOTemp,CDS_Sub); + with ADOTemp do + begin + Close; + SQL.Clear; + if cxTabControl1.TabIndex=0 then + begin + sql.Add('select * from WFBYCL_JiangYe where MCID='''+Trim(CDS_Main.fieldbyname('MCID').AsString)+''''); + end else + sql.Add('select * from WFBYCL_JiangYe where ZuHeID='''+Trim(CDS_Main.fieldbyname('ZuHeID').AsString)+''''); + sql.Add(' and JYType=''Һ'' '); + sql.Add(' order by OrderNo'); + Open; + end; + SCreateCDS20(ADOTemp,CDS_JYFZ); + SInitCDSData20(ADOTemp,CDS_JYFZ); + finally + ADOTemp.EnableControls; + end; +end; + +procedure TfrmJiangLiaoSet.InitGridMain(); +begin + //BegDate.SetFocus; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select A.*,OrderNo=(select OrderNo from WFBOrder_Main B where B.MainId=A.MainId), '); + sql.Add(' OrderQty=(select Sum(SOrdQty) from WFBOrder_Sub WS where WS.MainId=A.MainId and WS.SWFBColor=A.SWFBColor),'); + SQL.Add(' OrderUnit=(select OrdUnit from WFBOrder_Main B where B.MainId=A.MainId),'); + sql.Add(' OrderNoSL=dbo.F_Get_WFBOrder_SubStr(A.ZuHeId,''OrderNoSL''),'); + sql.Add(' CustomNoName=(select ZdyName from KH_Zdy B inner join WFBOrder_Main C on B.ZdyNo=C.CustomNo'); + sql.Add(' where C.MainId=A.MainId)'); + sql.Add(' from WFBYCL_MainIdColor_JiangYe A '); + SQL.Add(' inner join WFBOrder_Main C on A.MainId=C.MainId where C.ChkStatus=''ͨ'' '); + if cxTabControl1.TabIndex=0 then + SQL.Add(' and not exists(select * from WFBYCL_JiangYe WJY where WJY.ZuHeId=A.ZuHeId)') + else + if cxTabControl1.TabIndex>0 then + begin + sql.Add('and exists(select * from WFBYCL_JiangYe WJY where WJY.ZuHeId=A.ZuHeId) and A.FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date))+''''); + sql.Add('and A.FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.Date+1))+''''); + end; + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmJiangLiaoSet.InitGridMainSel(); +begin + //BegDate.SetFocus; + { try + ADOTemp.DisableControls; + with ADOTemp do + begin + Filtered:=False; + Close; + SQL.Clear; + SQL.Add(' select A.*,OrderNo=(select OrderNo from WFBOrder_Main B '); + sql.Add(' where B.MainId=A.MainId), '); + sql.Add(' CustomNoName=(select ZdyName from KH_Zdy B inner join WFBOrder_Main C on B.ZdyNo=C.CustomNo'); + sql.Add(' where C.MainId=A.MainId)'); + sql.Add(' from WFBYCL_MainIdColor_JiangYe A '); + sql.Add(' where A.ZuHeId='''+Trim(CDS_Main.fieldbyname('ZuHeId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Sel); + SInitCDSData20(ADOQueryMain,CDS_Sel); + finally + ADOQueryMain.EnableControls; + end; } +end; + +procedure TfrmJiangLiaoSet.ToolButton1Click(Sender: TObject); +begin + InitGridMain(); +end; + +procedure TfrmJiangLiaoSet.FormShow(Sender: TObject); +var + fsj:String; +begin + fsj:='select ZdyName name from KH_Zdy where Type=''WFBColor'' '; + SInitComBoxBySql(ADOTemp,SWFBColor,False,fsj); + EndDate.DateTime:=SGetServerDate(ADOTemp); + BegDate.DateTime:=EndDate.DateTime-30; + ReadCxGrid('New',Tv1,'޷IJ'); + ReadCxGrid('FZ',Tv2,'޷IJ'); + ReadCxGrid('ɫ',TvOrdNo,'޷IJ'); + InitGridMain(); + if Trim(DParameters1)='' then + begin + BtnSave.Visible:=False; + vOrderBakColumn1.Visible:=False; + v1Column1.Options.Focusing:=False; + v1Column2.Options.Focusing:=False; + v2Column1.Options.Focusing:=False; + v1Column5.Options.Focusing:=False; + v2Column4.Options.Focusing:=False; + MCQty.ReadOnly:=True; + MCQty10.ReadOnly:=True; + end else + begin + BtnChkOk.Visible:=False; + BtnChkNo.Visible:=False; + vOrderBakColumn1.Visible:=True; + end; + + //InitGrid(); +end; + +procedure TfrmJiangLiaoSet.cxTabControl1Change(Sender: TObject); +begin + InitGridMain(); + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + InitGrid(); + MCQty.Text:=Trim(CDS_Main.fieldbyname('MCQty').AsString); + MCQty10.Text:=Trim(CDS_Main.fieldbyname('MCQtySJ').AsString); + MCNote.Text:=Trim(CDS_Main.fieldbyname('MCNote').AsString); + if cxTabControl1.TabIndex>0 then + begin + Label7.Visible:=True; + Label8.Visible:=True; + Label9.Visible:=True; + Label7.Caption:='Ƶˣ'+Trim(CDS_Main.fieldbyname('Filler').AsString); + Label8.Caption:='ˣ'+Trim(CDS_Main.fieldbyname('Chker').AsString); + Label9.Caption:='״̬'+Trim(CDS_Main.fieldbyname('ChkStatus').AsString); + end else + begin + Label7.Visible:=False; + Label8.Visible:=False; + Label9.Visible:=False; + end; +end; + +procedure TfrmJiangLiaoSet.OrderNoChange(Sender: TObject); +begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); +end; + +procedure TfrmJiangLiaoSet.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('New',Tv1,'޷IJ'); + WriteCxGrid('FZ',Tv2,'޷IJ'); + WriteCxGrid('ɫ',TvOrdNo,'޷IJ'); +end; + +procedure TfrmJiangLiaoSet.MenuItem3Click(Sender: TObject); +begin + if BtnSave.Visible=False then Exit; + try + frmGetPGJBOneTwoInList:=TfrmGetPGJBOneTwoInList.Create(Application); + with frmGetPGJBOneTwoInList do + begin + if ShowModal=1 then + begin + with ClientDataSet2 do + begin + First; + while not Eof do + begin + with CDS_Sub do + begin + Append; + CDS_Sub.FieldByName('YCLCode').Value:=Trim(ClientDataSet2.fieldbyname('YCLCode').AsString); + CDS_Sub.FieldByName('YCLName').Value:=Trim(ClientDataSet2.fieldbyname('YCLName').AsString); + //CDS_Sub.FieldByName('CRID').Value:=Trim(ClientDataSet2.fieldbyname('CRID').AsString); + Post; + end; + Next; + end; + end; + end; + end; + finally + frmGetPGJBOneTwoInList.Free; + end; +end; + +procedure TfrmJiangLiaoSet.MenuItem4Click(Sender: TObject); +begin + if BtnSave.Visible=False then Exit; + if CDS_Sub.IsEmpty then Exit; + if Trim(CDS_Sub.FieldByName('YJID').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFBYCL_JiangYe where YJID='''+Trim(CDS_Sub.FieldByName('YJID').AsString)+''''); + ExecSQL; + end; + end; + CDS_Sub.Delete; + {if CDS_Sub.IsEmpty=False then + MCQty.Text:=FloatToStr(Tv1.DataController.Summary.FooterSummaryValues[0]) + else + MCQty.Text:='0'; } +end; + +procedure TfrmJiangLiaoSet.BtnSaveClick(Sender: TObject); +var + maxno,FMCQty,FColor,FZuHeId:string; +begin + if ChkInt<>1 then + begin + if Trim(CDS_Main.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + Application.MessageBox('ͨݲ޸ģ','ʾ',0); + Exit; + end; + end else + begin + if Trim(CDS_Main.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + if Application.MessageBox('ͨȷҪ','ʾ',32+4)<>IDYES then + begin + ChkInt:=2; + Exit; + end; + end; + end; + + + if CDS_Main.IsEmpty then Exit; + if CDS_Sub.IsEmpty then Exit; + if CDS_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡݣ','ʾ',0); + Exit; + end; + CDS_Main.DisableControls; + with CDS_Main do + begin + First; + while not Eof do + begin + if CDS_Main.FieldByName('SSel').AsBoolean=True then + begin + if Trim(FColor)='' then + FColor:=Trim(CDS_Main.fieldbyname('SWFBColor').AsString) + else + if Trim(CDS_Main.fieldbyname('SWFBColor').AsString)<>FColor then + begin + CDS_Main.EnableControls; + Application.MessageBox('ɫͬܺϲƣ','ʾ',0); + Exit; + end; + end; + Next; + end; + end; + CDS_Main.EnableControls; + if Trim(MCQty.Text)='' then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + try + BegDate.SetFocus; + ADOCmd.Connection.BeginTrans; + if GetLSNo(ADOCmd,FZuHeId,'ZH','WFBYCL_MainIdColor_JiangYe',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡIDʧܣ','ʾ',0); + Exit; + end; + with CDS_Sub do + begin + First; + while not eof do + begin + if Trim(CDS_Sub.fieldbyname('YJID').AsString)='' then + begin + if GetLSNo(ADOCmd,maxno,'YJ','WFBYCL_JiangYe',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_Sub.fieldbyname('YJID').AsString); + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_JiangYe where YJID='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_Sub.fieldbyname('YJID').AsString)='' then + begin + Append; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('FillTime').Value:=SGetServerDateTime(ADOTemp); + end else + begin + Edit; + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + if Trim(CDS_Sub.fieldbyname('MCID').AsString)<>'' then + begin + FieldByName('MCID').Value:=Trim(CDS_Sub.fieldbyname('MCID').AsString); + FieldByName('MainId').Value:=Trim(CDS_Sub.fieldbyname('MainId').AsString); + FieldByName('SWFBColor').Value:=Trim(CDS_Sub.fieldbyname('SWFBColor').AsString); + end else + begin + FieldByName('MCID').Value:='HB'; + FieldByName('MainId').Value:='HB'; + FieldByName('SWFBColor').Value:='HB'; + end; + + FieldByName('YJID').Value:=Trim(maxno); + FieldByName('JYType').Value:='ҪҺ'; + + FieldByName('YCLCode').Value:=Trim(CDS_Sub.fieldbyname('YCLCode').AsString); + FieldByName('YCLName').Value:=Trim(CDS_Sub.fieldbyname('YCLName').AsString); + If Trim(CDS_Sub.fieldbyname('YGQty').AsString)<>'' then + FieldByName('YGQty').Value:=Trim(CDS_Sub.fieldbyname('YGQty').AsString) + else + FieldByName('YGQty').Value:=0; + If Trim(CDS_Sub.fieldbyname('SJQty').AsString)<>'' then + FieldByName('SJQty').Value:=CDS_Sub.fieldbyname('SJQty').Value + else + FieldByName('SJQty').Value:=0; + If Trim(CDS_Sub.fieldbyname('OrderNo').AsString)<>'' then + FieldByName('OrderNo').Value:=CDS_Sub.fieldbyname('OrderNo').Value + else + FieldByName('OrderNo').Value:=99; + If Trim(CDS_Sub.fieldbyname('PBQty').AsString)<>'' then + FieldByName('PBQty').Value:=CDS_Sub.fieldbyname('PBQty').Value + else + FieldByName('PBQty').Value:=0; + FieldByName('ZuHeId').Value:=Trim(FZuHeId); + Post; + end; + with CDS_Sub do + begin + Edit; + FieldByName('YJID').Value:=Trim(maxno); + Post; + end; + Next; + end; + end; + with CDS_JYFZ do + begin + First; + while not eof do + begin + if Trim(CDS_JYFZ.fieldbyname('YJID').AsString)='' then + begin + if GetLSNo(ADOCmd,maxno,'YF','WFBYCL_JiangYe',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_JYFZ.fieldbyname('YJID').AsString); + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_JiangYe where YJID='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_JYFZ.fieldbyname('YJID').AsString)='' then + begin + Append; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('FillTime').Value:=SGetServerDateTime(ADOTemp); + end else + begin + Edit; + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + if Trim(CDS_JYFZ.fieldbyname('MCID').AsString)<>'' then + begin + FieldByName('MCID').Value:=Trim(CDS_JYFZ.fieldbyname('MCID').AsString); + FieldByName('MainId').Value:=Trim(CDS_JYFZ.fieldbyname('MainId').AsString); + FieldByName('SWFBColor').Value:=Trim(CDS_JYFZ.fieldbyname('SWFBColor').AsString); + end else + begin + FieldByName('MCID').Value:='HB'; + FieldByName('MainId').Value:='HB'; + FieldByName('SWFBColor').Value:='HB'; + end; + FieldByName('YJID').Value:=Trim(maxno); + FieldByName('JYType').Value:='Һ'; + FieldByName('YCLCode').Value:=Trim(CDS_JYFZ.fieldbyname('YCLCode').AsString); + FieldByName('YCLName').Value:=Trim(CDS_JYFZ.fieldbyname('YCLName').AsString); + If Trim(CDS_JYFZ.fieldbyname('SJQty').AsString)<>'' then + FieldByName('SJQty').Value:=CDS_JYFZ.fieldbyname('SJQty').Value + else + FieldByName('SJQty').Value:=0; + If Trim(CDS_JYFZ.fieldbyname('OrderNo').AsString)<>'' then + FieldByName('OrderNo').Value:=CDS_JYFZ.fieldbyname('OrderNo').Value + else + FieldByName('OrderNo').Value:=0; + If Trim(CDS_Sub.fieldbyname('PBQty').AsString)<>'' then + FieldByName('PBQty').Value:=CDS_Sub.fieldbyname('PBQty').Value + else + FieldByName('PBQty').Value:=0; + FieldByName('ZuHeId').Value:=Trim(FZuHeId); + Post; + end; + with CDS_JYFZ do + begin + Edit; + FieldByName('YJID').Value:=Trim(maxno); + Post; + end; + Next; + end; + end; + if Trim(MCQty.Text)='' then + FMCQty:='0' + else + FMCQty:=MCQty.Text; + CDS_Main.DisableControls; + with CDS_Main do + begin + First; + while not Eof do + begin + if CDS_Main.FieldByName('SSel').AsBoolean=True then + begin + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_MainIdColor_JiangYe where MCID='''+Trim(CDS_Main.fieldbyname('MCID').AsString)+''''); + Open; + end; + with ADOCmd do + begin + Edit; + FieldByName('MCQty').Value:=FMCQty; + if Trim(MCQty10.Text)='' then + FieldByName('MCQtySJ').Value:=0 + else + FieldByName('MCQty').Value:=StrToFloat(MCQty10.Text); + FieldByName('MCNote').Value:=Trim(MCNote.Text); + FieldByName('WFBCpSpec').Value:=Trim(WFBCpSpec.Text); + FieldByName('WKMS').Value:=Trim(WKMS.Text); + FieldByName('SWFBHW').Value:=Trim(SWFBHW.Text); + FieldByName('ZuHeId').Value:=Trim(FZuHeId); + if Trim(CDS_Main.fieldbyname('ChkStatus').AsString)='˲ͨ' then + begin + FieldByName('ChkStatus').Value:='޸'; + FieldByName('Chker').Value:=''; + with CDS_Main do + begin + Edit; + FieldByName('ChkStatus').Value:='޸'; + + Post; + end; + end; + if Trim(CDS_Main.fieldbyname('Filler').AsString)='' then + begin + fieldbyname('Filler').Value:=Trim(DName); + fieldbyname('FillTime').Value:=SGetServerDateTime(ADOTemp); + with CDS_Main do + begin + Edit; + FieldByName('Filler').Value:=Trim(DName); + Post; + end; + end else + begin + fieldbyname('Editer').Value:=Trim(DName); + fieldbyname('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + Post; + end; + with CDS_Main do + begin + Edit; + FieldByName('ZuHeId').Value:=Trim(FZuHeId); + Post; + end; + if cxTabControl1.TabIndex=0 then + begin + CDS_Main.Delete; + end else + Next; + end else + Next; + end; + end; + CDS_Main.EnableControls; + + ADOCmd.Connection.CommitTrans; + if ChkInt<>1 then + Application.MessageBox('ɹ','ʾ',0); + InitGrid(); + Exit; + except + ADOCmd.Connection.RollbackTrans; + if ChkInt<>1 then + Application.MessageBox('ʧ!','ʾ',0) + else + Application.MessageBox('쳣!','ʾ',0); + Exit; + end; +end; + +procedure TfrmJiangLiaoSet.TvOrdNoCellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + var + FFHBID,maxno:string; +begin + FFHBID:=Trim(CDS_Main.fieldbyname('ZuHeID').AsString); + maxno:=Trim(CDS_Main.fieldbyname('MCID').AsString); + with ADOTemp do + begin + Close; + SQL.Clear; + if cxTabControl1.TabIndex=0 then + begin + sql.Add('select * from WFBYCL_JiangYe where MCID='''+Trim(maxno)+''''); + end else + sql.Add('select * from WFBYCL_JiangYe where ZuHeID='''+Trim(FFHBID)+''''); + sql.Add(' and JYType=''ҪҺ'' '); + sql.Add(' order by OrderNo'); + Open; + end; + SCreateCDS20(ADOTemp,CDS_Sub); + SInitCDSData20(ADOTemp,CDS_Sub); + with ADOTemp do + begin + Close; + SQL.Clear; + if cxTabControl1.TabIndex=0 then + begin + sql.Add('select * from WFBYCL_JiangYe where MCID='''+Trim(maxno)+''''); + end else + sql.Add('select * from WFBYCL_JiangYe where ZuHeID='''+Trim(FFHBID)+''''); + sql.Add(' and JYType=''Һ'' '); + sql.Add(' order by OrderNo'); + Open; + end; + SCreateCDS20(ADOTemp,CDS_JYFZ); + SInitCDSData20(ADOTemp,CDS_JYFZ); + + with ADOTemp do + begin + Close; + sql.Clear; + SQL.Add('select Top 1*,'); + sql.Add(' OrderNoSL=dbo.F_Get_WFBOrder_SubStr(A.ZuHeId,''OrderNoSL'')'); + if Trim(FFHBID)<>'' then + sql.Add(' from WFBYCL_MainIdColor_JiangYe A where ZuHeId='''+Trim(FFHBID)+'''') + else + sql.Add(' from WFBYCL_MainIdColor_JiangYe A where MCId='''+Trim(CDS_Main.fieldbyname('MCID').AsString)+'''') ; + Open; + end; + MCQty.Text:=Trim(ADOTemp.fieldbyname('MCQty').AsString); + MCQty10.Text:=Trim(ADOTemp.fieldbyname('MCQtySJ').AsString); + MCNote.Text:=Trim(ADOTemp.fieldbyname('MCNote').AsString); + WKMS.Text:=Trim(ADOTemp.fieldbyname('WKMS').AsString); + SWFBHW.Text:=Trim(ADOTemp.fieldbyname('SWFBHW').AsString); + WFBCpSpec.Text:=Trim(ADOTemp.fieldbyname('WFBCpSpec').AsString); + OrderNoSL.Text:=Trim(ADOTemp.fieldbyname('OrderNoSL').AsString); + if cxTabControl1.TabIndex>0 then + begin + Label7.Visible:=True; + Label8.Visible:=True; + Label9.Visible:=True; + Label7.Caption:='Ƶˣ'+Trim(ADOTemp.fieldbyname('Filler').AsString); + Label8.Caption:='ˣ'+Trim(ADOTemp.fieldbyname('Chker').AsString); + Label9.Caption:='״̬'+Trim(ADOTemp.fieldbyname('ChkStatus').AsString); + end else + begin + Label7.Visible:=False; + Label8.Visible:=False; + Label9.Visible:=False; + end; + + + +end; +procedure TfrmJiangLiaoSet.MCData(); +begin + MCQty.Text:=Trim(CDS_Main.fieldbyname('MCQty').AsString); + MCNote.Text:=Trim(CDS_Main.fieldbyname('MCNote').AsString); + if cxTabControl1.TabIndex>0 then + begin + Label7.Visible:=True; + Label8.Visible:=True; + Label9.Visible:=True; + Label7.Caption:='Ƶˣ'+Trim(CDS_Main.fieldbyname('Filler').AsString); + Label8.Caption:='ˣ'+Trim(CDS_Main.fieldbyname('Chker').AsString); + Label9.Caption:='״̬'+Trim(CDS_Main.fieldbyname('ChkStatus').AsString); + end else + begin + Label7.Visible:=False; + Label8.Visible:=False; + Label9.Visible:=False; + end; +end; + +procedure TfrmJiangLiaoSet.MCQtyKeyPress(Sender: TObject; var Key: Char); +begin + if not (Key in['0'..'9','.',#13,#8]) then + begin + Key:=#0; + end; +end; + +procedure TfrmJiangLiaoSet.BtnChkOkClick(Sender: TObject); +begin + if cxTabControl1.TabIndex=0 then Exit; + ChkInt:=1; + // BtnSave.Click; + if ChkInt=2 then Exit; + if Trim(DName)=Trim(CDS_Main.fieldbyname('Filler').AsString) then + begin + Application.MessageBox('Լݣ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪִд˲','ʾ',32+4)<>IDYES then Exit; + try + ADOCmd.Connection.BeginTrans; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBYCL_MainIdColor_JiangYe Set Chker='''+Trim(DName)+''''); + SQL.Add(',ChkTime=getdate(),ChkStatus=''ͨ'' '); + sql.Add('where ZuHeId='''+Trim(CDS_Main.fieldbyname('ZuHeId').AsString)+''''); + ExecSQL; + end; + ADOCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + with CDS_Main do + begin + Edit; + FieldByName('ChkStatus').Value:='ͨ'; + FieldByName('Chker').Value:=Trim(DName); + Post; + end; + MCData(); + ChkInt:=0; + except + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; + +end; + +procedure TfrmJiangLiaoSet.BtnChkNoClick(Sender: TObject); +begin + if cxTabControl1.TabIndex=0 then Exit; + ChkInt:=1; + // BtnSave.Click; + if ChkInt=2 then Exit; + if Trim(DName)=Trim(CDS_Main.fieldbyname('Filler').AsString) then + begin + Application.MessageBox('Լݣ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪִд˲','ʾ',32+4)<>IDYES then Exit; + try + ADOCmd.Connection.BeginTrans; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBYCL_MainIdColor_JiangYe Set Chker='''+Trim(DName)+''''); + SQL.Add(',ChkTime=getdate(),ChkStatus=''˲ͨ'' '); + sql.Add('where ZuHeId='''+Trim(CDS_Main.fieldbyname('ZuHeId').AsString)+''''); + ExecSQL; + end; + ADOCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + with CDS_Main do + begin + Edit; + FieldByName('ChkStatus').Value:='˲ͨ'; + FieldByName('Chker').Value:=Trim(DName); + Post; + end; + MCData(); + except + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TfrmJiangLiaoSet.BtnPrintClick(Sender: TObject); +var + fPrintFile:string; +begin + if Trim(CDS_Main.fieldbyname('ChkStatus').AsString)<>'ͨ' then + begin + Application.MessageBox('δܴͨӡݣ','ʾ',0); + Exit; + end; + with ADOQueryPrint do + begin + close; + sql.Clear; + sql.Add('exec P_Print_JiangYe :ZuHeId'); + Parameters.ParamByName('ZuHeId').Value:=Trim(CDS_Main.fieldbyname('ZuHeId').AsString); + Open; + end; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\õ10.rmf' ; + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\õ.rmf'),'ʾ',0); + end; +end; + +procedure TfrmJiangLiaoSet.MenuItem1Click(Sender: TObject); +begin + if BtnSave.Visible=False then Exit; + try + frmGetPGJBOneTwoInList:=TfrmGetPGJBOneTwoInList.Create(Application); + with frmGetPGJBOneTwoInList do + begin + if ShowModal=1 then + begin + with ClientDataSet2 do + begin + First; + while not Eof do + begin + with CDS_JYFZ do + begin + Append; + CDS_JYFZ.FieldByName('YCLCode').Value:=Trim(ClientDataSet2.fieldbyname('YCLCode').AsString); + CDS_JYFZ.FieldByName('YCLName').Value:=Trim(ClientDataSet2.fieldbyname('YCLName').AsString); + //CDS_Sub.FieldByName('CRID').Value:=Trim(ClientDataSet2.fieldbyname('CRID').AsString); + Post; + end; + Next; + end; + end; + end; + end; + finally + frmGetPGJBOneTwoInList.Free; + end; +end; + +procedure TfrmJiangLiaoSet.MenuItem2Click(Sender: TObject); +begin + if BtnSave.Visible=False then Exit; + if CDS_JYFZ.IsEmpty then Exit; + if Trim(CDS_JYFZ.FieldByName('YJID').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFBYCL_JiangYe where YJID='''+Trim(CDS_JYFZ.FieldByName('YJID').AsString)+''''); + ExecSQL; + end; + end; + CDS_JYFZ.Delete; +end; + +procedure TfrmJiangLiaoSet.SWFBCodeNamePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WFBCpSpec'; + flagname:='Ʒͺ'; + if ShowModal=1 then + begin + Self.WFBCpSpec.Text:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmJiangLiaoSet.WKMSPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WKMS'; + flagname:='Ŀ'; + if ShowModal=1 then + begin + Self.WKMS.Text:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmJiangLiaoSet.cxButtonEdit2PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WFBHX'; + flagname:=''; + if ShowModal=1 then + begin + Self.SWFBHW.Text:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmJiangLiaoSet.v1Column2PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FMCQty:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(MCQty.Text)='' then + begin + FMCQty:='0' + end else + begin + FMCQty:=Trim(MCQty.Text); + end; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + with CDS_Sub do + begin + Edit; + FieldByName('SJQty').Value:=StrToFloat(mvalue)*StrToFloat(FMCQty)/100; + FieldByName('PBQty').Value:=StrToFloat(mvalue); + Post; + end; +end; + +procedure TfrmJiangLiaoSet.MCQtyChange(Sender: TObject); +var + mvalue,FMCQty:string; +begin + if( (MCQty.Focused) and (MCQty.ReadOnly=False) )then + begin + if Trim(MCQty.Text)='' then + begin + FMCQty:='0' + end else + begin + FMCQty:=Trim(MCQty.Text); + end; + CDS_Sub.DisableControls; + with CDS_Sub do + begin + First; + while not Eof do + begin + Edit; + if Trim(fieldbyname('PBQty').AsString)<>'' then + mvalue:=Trim(fieldbyname('PBQty').AsString) + else + mvalue:='0'; + FieldByName('SJQty').Value:=StrToFloat(mvalue)*StrToFloat(FMCQty)/100; + Post; + Next; + end; + end; + CDS_Sub.EnableControls; + end; + +end; + +procedure TfrmJiangLiaoSet.ToolButton2Click(Sender: TObject); +begin + if cxTabControl1.TabIndex=0 then Exit; + if Trim(CDS_Main.FieldByName('ChkStatus').AsString)='ͨ' then Exit; + if Application.MessageBox('ȷҪִд˲?','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBYCL_JiangYe Set ZuHeId=NULL where MCID='''+Trim(CDS_Main.fieldbyname('MCID').AsString)+''''); + sql.Add('Update WFBYCL_MainIdColor_JiangYe Set ZuHeId=NULL where MCID='''+Trim(CDS_Main.fieldbyname('MCID').AsString)+''''); + ExecSQL; + end; + CDS_Main.Delete; + +end; + +procedure TfrmJiangLiaoSet.MCQty10Change(Sender: TObject); +var + mvalue,FMCQty:string; +begin + if( (MCQty10.Focused) and (MCQty10.ReadOnly=False) )then + begin + if Trim(MCQty10.Text)='' then + begin + FMCQty:='0' + end else + begin + FMCQty:=Trim(MCQty10.Text); + end; + CDS_JYFZ.DisableControls; + with CDS_JYFZ do + begin + First; + while not Eof do + begin + Edit; + if Trim(fieldbyname('PBQty').AsString)<>'' then + mvalue:=Trim(fieldbyname('PBQty').AsString) + else + mvalue:='0'; + FieldByName('SJQty').Value:=StrToFloat(mvalue)*StrToFloat(FMCQty)/100; + Post; + Next; + end; + end; + CDS_JYFZ.EnableControls; + end; + +end; + +procedure TfrmJiangLiaoSet.v2Column2PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FMCQty:string; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(MCQty10.Text)='' then + begin + FMCQty:='0' + end else + begin + FMCQty:=Trim(MCQty10.Text); + end; + if Trim(mvalue)='' then + begin + mvalue:='0'; + end; + with CDS_JYFZ do + begin + Edit; + FieldByName('SJQty').Value:=StrToFloat(mvalue)*StrToFloat(FMCQty)/100; + FieldByName('PBQty').Value:=StrToFloat(mvalue); + Post; + end; +end; + +end. diff --git a/艾登贸易管理/U_LabelAdd.dfm b/艾登贸易管理/U_LabelAdd.dfm new file mode 100644 index 0000000..1c74653 --- /dev/null +++ b/艾登贸易管理/U_LabelAdd.dfm @@ -0,0 +1,336 @@ +object frmLabelAdd: TfrmLabelAdd + Left = 317 + Top = 180 + Width = 997 + Height = 612 + BorderIcons = [biMaximize] + Caption = #26631#31614#32534#36753 + Color = clBtnFace + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnCreate = FormCreate + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Panel1: TPanel + Left = 0 + Top = 28 + Width = 413 + Height = 513 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 0 + object Label1: TLabel + Left = 40 + Top = 404 + Width = 60 + Height = 12 + Caption = #23458#25143#21517#31216#65306 + Enabled = False + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label2: TLabel + Left = 31 + Top = 69 + Width = 60 + Height = 12 + Caption = #26631#31614#25991#20214#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label3: TLabel + Left = 31 + Top = 95 + Width = 60 + Height = 12 + Caption = #22791' '#27880#65306 + end + object Label9: TLabel + Left = 32 + Top = 16 + Width = 60 + Height = 12 + Caption = #26631#31614#21517#31216#65306 + Font.Charset = ANSI_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label10: TLabel + Left = 32 + Top = 44 + Width = 60 + Height = 12 + Caption = #26631#31614#31867#22411#65306 + Font.Charset = ANSI_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object customerNo: TBtnEditA + Left = 104 + Top = 400 + Width = 295 + Height = 20 + Enabled = False + ReadOnly = True + TabOrder = 0 + Visible = False + OnBtnClick = customerNoBtnClick + end + object LabelFileName: TBtnEditA + Left = 92 + Top = 65 + Width = 260 + Height = 20 + ReadOnly = True + TabOrder = 1 + OnBtnClick = LabelFileNameBtnClick + end + object beizhu: TMemo + Left = 92 + Top = 92 + Width = 257 + Height = 149 + ScrollBars = ssBoth + TabOrder = 2 + end + object BtOpen: TBitBtn + Left = 353 + Top = 64 + Width = 36 + Height = 19 + Caption = #25171#24320 + TabOrder = 3 + Visible = False + OnClick = BtOpenClick + end + object LabelCaption: TEdit + Left = 92 + Top = 12 + Width = 260 + Height = 20 + TabOrder = 4 + end + object LabelType: TFTComboBox + Tag = 99 + Left = 92 + Top = 37 + Width = 260 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 5 + Text = #20013#25991#26631#31614 + Items.Strings = ( + #20013#25991#26631#31614 + #33521#25991#26631#31614 + #20013#33521#25991#26631#31614) + end + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 981 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar2' + Color = clBtnFace + Flat = True + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 1 + Transparent = False + object Tsave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384#26631#31614 + ImageIndex = 5 + OnClick = TsaveClick + end + object Tclose: TToolButton + Left = 87 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 21 + OnClick = TcloseClick + end + end + object RMPreview1: TRMPreview + Left = 428 + Top = 32 + Width = 553 + Height = 542 + Align = alRight + BevelOuter = bvLowered + Caption = #26631#31614#39044#35272 + TabOrder = 2 + OnDblClick = RMPreview1DblClick + Options.RulerUnit = rmutScreenPixels + Options.RulerVisible = False + Options.DrawBorder = False + Options.BorderPen.Color = clGray + Options.BorderPen.Style = psDash + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + CommandTimeout = 300 + Parameters = <> + Left = 512 + Top = 208 + end + object OpenDialog1: TOpenDialog + Filter = 'RMFl(*.rmf)|*.rmf' + InitialDir = '.' + Left = 200 + Top = 4 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + Preview = RMPreview1 + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 336 + Top = 8 + ReportData = {} + end + object ADOQueryTmp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + CommandTimeout = 300 + Parameters = <> + Left = 528 + Top = 184 + end + object RMGridReportDesigner1: TRMGridReportDesigner + Left = 376 + Top = 8 + end + object RMBarCodeObject1: TRMBarCodeObject + Left = 280 + Top = 4 + end + object RMBMPExport1: TRMBMPExport + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + Left = 408 + Top = 8 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 10 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 440 + Top = 8 + end + object RMDS_Main: TRMDBDataSet + Visible = True + AliasName = #26631#31614#25968#25454 + Left = 498 + Top = 72 + end + object RMDataDictionary1: TRMDataDictionary + FieldFieldNames.TableName = 'TableName' + FieldFieldNames.FieldName = 'FieldName' + FieldFieldNames.FieldAlias = 'FieldAlias' + Left = 562 + Top = 72 + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 352 + Top = 480 + end + object RMGridReport2: 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 = RMDS_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 432 + Top = 368 + ReportData = {} + end + object RMAsBarCodeObject1: TRMAsBarCodeObject + Left = 448 + Top = 48 + end + object RMOLEObject1: TRMOLEObject + Left = 432 + Top = 104 + end + object RMRichObject1: TRMRichObject + Left = 444 + Top = 176 + end + object RMRichObject2: TRMRichObject + Left = 504 + Top = 12 + end + object RMCheckBoxObject1: TRMCheckBoxObject + Left = 564 + Top = 8 + end + object RMCrossObject1: TRMCrossObject + Left = 652 + Top = 16 + end + object RMDialogControls1: TRMDialogControls + Left = 544 + Top = 40 + end +end diff --git a/艾登贸易管理/U_LabelAdd.pas b/艾登贸易管理/U_LabelAdd.pas new file mode 100644 index 0000000..c1d7998 --- /dev/null +++ b/艾登贸易管理/U_LabelAdd.pas @@ -0,0 +1,485 @@ +unit U_LabelAdd; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, BtnEdit, ExtCtrls, DB, ADODB, + RM_System, RM_Common, RM_Class, RM_GridReport, Buttons, FTComboBox, + RM_Preview, RM_e_Xls, RM_e_Graphic, RM_e_bmp, RM_BarCode, + RM_DsgGridReport, RM_Dataset, cxStyles, cxCustomData, cxGraphics, + cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, RM_RichEdit, RM_Ole, RM_AsBarView, + RM_Cross, RM_CheckBox, RM_DialogCtls; + +type + TfrmLabelAdd = class(TForm) + Panel1: TPanel; + Label1: TLabel; + Label2: TLabel; + Label3: TLabel; + customerNo: TBtnEditA; + LabelFileName: TBtnEditA; + beizhu: TMemo; + ToolBar1: TToolBar; + Tsave: TToolButton; + Tclose: TToolButton; + ADOQueryCmd: TADOQuery; + OpenDialog1: TOpenDialog; + RMGridReport1: TRMGridReport; + BtOpen: TBitBtn; + Label9: TLabel; + LabelCaption: TEdit; + Label10: TLabel; + LabelType: TFTComboBox; + ADOQueryTmp: TADOQuery; + RMPreview1: TRMPreview; + RMGridReportDesigner1: TRMGridReportDesigner; + RMBarCodeObject1: TRMBarCodeObject; + RMBMPExport1: TRMBMPExport; + RMXLSExport1: TRMXLSExport; + RMDS_Main: TRMDBDataSet; + RMDataDictionary1: TRMDataDictionary; + ADOQuery1: TADOQuery; + RMGridReport2: TRMGridReport; + RMAsBarCodeObject1: TRMAsBarCodeObject; + RMOLEObject1: TRMOLEObject; + RMRichObject1: TRMRichObject; + RMRichObject2: TRMRichObject; + RMCheckBoxObject1: TRMCheckBoxObject; + RMCrossObject1: TRMCrossObject; + RMDialogControls1: TRMDialogControls; + procedure TcloseClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TsaveClick(Sender: TObject); + procedure LabelFileNameBtnClick(Sender: TObject); + procedure customerNoBtnClick(Sender: TObject); + procedure BtOpenClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure RMPreview1DblClick(Sender: TObject); + private + fIsChg:Boolean; + fFileName:string; + fpathFileName:string; + function SaveData():Boolean; + function EditData():Boolean; + function PostFileToData():boolean; + // function CovFileDate(Fd:_FileTime):TDateTime; + procedure InitWinData(); + procedure InitVarDictionary(); + procedure InitDataSetDictionary(); + + public + fcustomNo:string; + fKeyNo:string; + fWinStatus:integer; + end; + +var + frmLabelAdd: TfrmLabelAdd; + +implementation +uses + U_DataLink,U_Fun; +{$R *.dfm} +///////////////////////////////////////////// +function CovFileDate(Fd:_FileTime):TDateTime; +var + Tct:_SystemTime; + Temp:_FileTime; +begin + FileTimeToLocalFileTime(Fd,Temp); + FileTimeToSystemTime(Temp,Tct); + CovFileDate:=SystemTimeToDateTime(Tct); +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; +///////////////////////////////////////////////////// + //ύļ +////////////////////////////////////////////////////// +function TfrmLabelAdd.PostFileToData():boolean; +var + mFileName:string; + Stream : TMemoryStream; + mfileSize:integer; + mCreationTime:TdateTime; + mWriteTime:TdateTime; +begin + result:=false; + try + // ADOQueryCmd.Connection.BeginTrans ; + try + with ADOQueryCmd do + begin + close; + sql.Clear ; + sql.Add('delete from RT_FileUpdate'); + sql.Add('where FileName='+quotedStr(trim(fFileName))); + execsql; + end; + with ADOQueryCmd do + begin + close; + sql.Clear ; + sql.Add('select * from RT_FileUpdate'); + sql.Add('where FileName='+quotedStr(trim(fFileName))); + Open; + ////////////////////////// + //ȡļϢ + GetFileInfo(fpathFileName,mfileSize,mCreationTime,mWriteTime); + + if RecordCount<=0 then + begin + Append; + fieldByName('FileName').AsString := fFileName; + end + else + begin + edit; + end; + + fieldByName('FileEditDate').Value :=mWriteTime; + fieldByName('FileCreateDate').Value :=mCreationTime; + fieldByName('FileSize').Value :=mfileSize; + fieldByName('Filler').Value :=Dname; + fieldByName('LastEditer').Value :=Dname; + fieldByName('LastEditTime').Value :=DServerDate; + if pos('.rmf',fFileName)>0 then + begin + fieldByName('FilePath').Value :='report'; + fieldByName('FileType').Value :=''; + end + else if pos('.dll',fFileName)>0 then + begin + fieldByName('FilePath').Value :=''; + fieldByName('FileType').Value :='һ'; + end + else + begin + fieldByName('FilePath').Value :=''; + fieldByName('FileType').Value :=''; + end; + // FJStream.LoadFromFile(fpathFileName); + // CompressionStream(FJStream); + //tblobfield(FieldByName('Files')).LoadFromFile(FJStream); + tblobfield(FieldByName('Files')).LoadFromFile(fpathFileName); + //OLEݴݿ + // ADOQueryCmdFileContent.LoadFromFile(fpathFileName); + //ADOQueryCmdFileContent.LoadFromStream(Stream); + + post; + end; + finally + // FJStream.free; + end; + result:=true; + // ADOQueryCmd.Connection.CommitTrans ; + except + // ADOQueryCmd.Connection.RollbackTrans ; + // application.MessageBox(pchar('ύļ['+trim(fFileName)+']ʧ!'),'ʾϢ',MB_ICONERROR); + end; + +end; + +procedure TfrmLabelAdd.TcloseClick(Sender: TObject); +begin + if fIsChg then + begin + if application.MessageBox('ǩƹǷҪ?','ʾϢ',1)=1 then + begin + Tsave.Click ; + end + else + close; + end + else + close; +end; + +procedure TfrmLabelAdd.FormCreate(Sender: TObject); +begin + panel1.Align :=alClient; + fIsChg:=false; +// ClearWinData(panel1); + // InitVarDictionary(); +end; + +procedure TfrmLabelAdd.TsaveClick(Sender: TObject); +begin + if trim(labelCaption.Text)='' then + begin + application.MessageBox('ǩƲΪգ','ʾ'); + labelCaption.SetFocus; + exit; + end; + if trim(LabelFileName.Text)='' then + begin + application.MessageBox('ǩļΪգѡǩ','ʾ'); + LabelFileName.SetFocus; + exit; + end; + fpathFileName:= trim(LabelFileName.Text); + fFileName:=ExtractFileName(fpathFileName); + if fWinStatus=0 then + begin + if SaveData() then + begin + ModalResult:=1; + end; + end + else + begin + if EditData() then + begin + ModalResult:=1; + end; + end; +end; +///////////////////////////////////////////////////////////////////// + //ܣ +///////////////////////////////////////////////////////////////////// +function TfrmLabelAdd.SaveData():Boolean; +begin + ADOQueryCmd.Connection.BeginTrans; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from P_Label'); + sql.Add('where 1<>1'); + Open; + + Append; + fieldByName('CustomerNO').value:=trim(customerno.txtCode); + fieldByName('filler').value:=DName; + fieldByName('filltime').value:=DServerDate; + fieldByName('beizhu').value:= trim(beizhu.text); + + fieldByName('LabelCaption').value:=trim(LabelCaption.text); + fieldByName('LabelType').value:=trim(LabelType.text); + fieldByName('LabelFileName').value:= trim(LabelFileName.text); + //TBlobField(FieldByName('LabelFile')).LoadFromStream(fStream); + RMGridReport1.SaveToBlobField(TBlobField(FieldByName('LabelFile'))); + Post; + end; + + if not postFileToData() then + begin + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ǩģ!','Ϣ',0); + exit; + end; + result:=true; + ADOQueryCmd.Connection.CommitTrans; + except + Result:=false; + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ǩģ!','Ϣ',0); + end; +end; + +///////////////////////////////////////////////////////////////////// + //ܣ +///////////////////////////////////////////////////////////////////// +function TfrmLabelAdd.EditData():Boolean; +begin + ADOQueryCmd.Connection.BeginTrans; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from P_Label'); + sql.Add('where labelId='+fkeyNo); + Open; + Edit; + fieldByName('LabelCaption').value:=trim(LabelCaption.text); + fieldByName('LabelType').value:=trim(LabelType.text); + fieldByName('LabelFileName').value:= trim(LabelFileName.text); + RMGridReport1.SaveToBlobField(TBlobField(FieldByName('LabelFile'))); + fieldByName('Editer').value:=DName; + fieldByName('EditTime').value:=DServerDate; + fieldByName('beizhu').value:= trim(beizhu.text); + Post; + end; + if not postFileToData() then + begin + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ǩģ!','Ϣ',0); + exit; + end; + ADOQueryCmd.Connection.CommitTrans; + result:=true; + except + Result:=false; + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ǩģ!','Ϣ',0); + end; +end; + +procedure TfrmLabelAdd.LabelFileNameBtnClick(Sender: TObject); +begin + if OpenDialog1.Execute() then + begin + LabelFileName.Text:=OpenDialog1.FileName; + RMGridReport1.LoadFromFile(LabelFileName.Text); + RMGridReport1.Preview :=RMPreview1; + RMGridReport1.ShowReport ; + end; +end; + +procedure TfrmLabelAdd.customerNoBtnClick(Sender: TObject); +begin + { + FormGetCust:=TFormGetCust.Create(self); + + if FormGetCust.ShowModal=mrok then + begin + customNo.TxtCode:=trim(FormGetCust.ADOQuery1.Fieldbyname('customno').AsString); + customNo.Text:=trim(FormGetCust.ADOQuery1.Fieldbyname('shortname').AsString); + end; + FormGetCust.Free; + } +{ frmCustHelp:=TfrmCustHelp.create(self); + with frmCustHelp do + begin + if showModal=1 then + begin + customNo.TxtCode:=trim(ADOQueryHelp.Fieldbyname('customno').AsString); + customNo.Text:=trim(ADOQueryHelp.Fieldbyname('shortname').AsString); + end; + free; + end; } +end; + +procedure TfrmLabelAdd.BtOpenClick(Sender: TObject); +begin + with RMGridReport2 do + begin + if trim(LabelFileName.Text)='' then + LoadFromFile(ExtractFilePath(Application.ExeName)+'report/ǩģ.rmf'); + InitDataSetDictionary(); + RMDS_Main.DataSet :=ADOQuery1; + application.ProcessMessages; + + DesignReport() ; + fIsChg:=true; + RMDS_Main.DataSet :=nil; + RMGridReport1.NewReport; + RMGridReport1.LoadFromFile(LabelFileName.Text); + RMGridReport1.ShowReport ; + end; + +end; +//////////////////////////////////////////////////////////// + //ʼ +//////////////////////////////////////////////////////////// +procedure TfrmLabelAdd.InitWinData(); +begin + try + with ADOQueryTmp do + begin + close; + sql.Clear ; + sql.Add('select A.*'); + // sql.Add('customNoName=isnull((select customName from BC_customer where customNO=A.customNo),A.customNo)'); + sql.Add('from P_Label A'); + sql.Add('WHERE LabelId='+fkeyNo); + Open; + if isEmpty then + begin + close; + exit; + end; + + SSetWinData(ADOQueryTmp,panel1); + RMGridReport1.LoadFromBlobField(tblobfield(fieldbyname('labelFile'))); + RMGridReport2.FileName:=trim(fieldByName('labelFileName').AsString); + RMGridReport2.LoadFromBlobField(tblobfield(fieldbyname('labelFile'))); + RMGridReport1.Preview :=RMPreview1; + //RMGridReport1.PrepareReport; + RMGridReport1.ShowReport ; + end; + except + end; +end; + +procedure TfrmLabelAdd.FormShow(Sender: TObject); +begin + if fWinStatus>0 then + InitWinData(); +end; + +procedure TfrmLabelAdd.RMPreview1DblClick(Sender: TObject); +begin + //btOpen.Click ; +end; +//////////////////////////////////////////////////////////// + // +//////////////////////////////////////////////////////////// +procedure TfrmLabelAdd.InitVarDictionary(); +var + i:integer; +begin +{ try + with RMGridReport2 do + begin + Dictionary.Variables.Clear ; + Dictionary.Variables.AddCategory('ͻλϢ'); + with ADOQueryTmp do + begin + close; + sql.clear; + sql.Add('exec P_Label_CustPrintData'); + sql.Add(quotedStr(fCustomNo)); + Open; + for i:=0 to FieldCount-1 do + begin + + Dictionary.Variables.Add(trim(fields[i].FieldName) + ,''); + Dictionary.Variables.AsString[trim(fields[i].FieldName)]:=trim(fields[i].AsString); + end; + end; + end; + finally + + end; } +end; +///////////////////////////////////////////////// + // +///////////////////////////////////////////////// +procedure TfrmLabelAdd.InitDataSetDictionary(); +begin +{ with ADOQuery1 do + begin + close; + sql.Clear ; + sql.Add('exec P_Label_PrintSet'); + sql.Add(quotedStr('')); + //sql.Add(','+quotedStr('')); + //sql.Add(','+quotedStr('')); + //sql.Add(','+quotedStr('')); + //sql.Add(','+quotedStr('')); + OPen; + end; + with RMGridReport2 do + begin + Dictionary.FieldAliases.Clear; + Dictionary.FieldAliases['RMDS_Main']:= 'ǩ'; + Dictionary.FieldAliases['RMDS_Main."barcode"']:='ǩ'; + end; } +end; + +end. diff --git a/艾登贸易管理/U_LabelList.dfm b/艾登贸易管理/U_LabelList.dfm new file mode 100644 index 0000000..8853681 --- /dev/null +++ b/艾登贸易管理/U_LabelList.dfm @@ -0,0 +1,437 @@ +object frmLabelList: TfrmLabelList + Left = 146 + Top = 45 + Width = 1057 + Height = 693 + BorderIcons = [biMaximize] + Caption = #26631#31614#20449#24687 + Color = clBtnFace + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poOwnerFormCenter + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Panel1: TPanel + Left = 12 + Top = 80 + Width = 452 + Height = 561 + BevelOuter = bvNone + TabOrder = 0 + object Panel2: TPanel + Left = 0 + Top = 3 + Width = 452 + Height = 558 + Align = alClient + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 0 + object cxGrid1: TcxGrid + Left = 2 + Top = 2 + Width = 448 + Height = 554 + Align = alClient + TabOrder = 0 + object tv1: TcxGridDBTableView + OnDblClick = tv1DblClick + Navigator.Buttons.CustomButtons = <> + OnCellClick = tv1CellClick + OnFocusedRecordChanged = tv1FocusedRecordChanged + DataController.DataSource = DS_Label + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + object tv1labelId: TcxGridDBColumn + Caption = #26631#31614'ID' + DataBinding.FieldName = 'labelId' + Visible = False + Width = 53 + end + object tv1labeltype: TcxGridDBColumn + Caption = #26631#31614#31867#22411 + DataBinding.FieldName = 'labeltype' + HeaderAlignmentHorz = taCenter + Width = 107 + end + object tv1labelCaption: TcxGridDBColumn + Caption = #26631#31614#21517#31216 + DataBinding.FieldName = 'labelCaption' + HeaderAlignmentHorz = taCenter + Width = 261 + end + object tv1labelFile: TcxGridDBColumn + Caption = #25991#20214#21517 + DataBinding.FieldName = 'labelFile' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 167 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = tv1 + end + end + end + object Panel3: TPanel + Left = 0 + Top = 0 + Width = 452 + Height = 3 + Align = alTop + Caption = 'Panel3' + TabOrder = 1 + Visible = False + object Label1: TLabel + Left = 40 + Top = 13 + Width = 60 + Height = 12 + Caption = #23458#25143#21517#31216#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label2: TLabel + Left = 52 + Top = 35 + Width = 48 + Height = 12 + Caption = #19994#21153#21592#65306 + Visible = False + end + object Label4: TLabel + Left = 40 + Top = 61 + Width = 60 + Height = 12 + Caption = #30005#35805#21495#30721#65306 + end + object Label5: TLabel + Left = 39 + Top = 86 + Width = 60 + Height = 12 + Caption = #20844#21496#21517#31216#65306 + end + object Label6: TLabel + Left = 14 + Top = 108 + Width = 84 + Height = 12 + Caption = #20844#21496#33521#25991#21517#31216#65306 + end + object Label7: TLabel + Left = 61 + Top = 133 + Width = 36 + Height = 12 + Caption = #22320#22336#65306 + end + object Label8: TLabel + Left = 37 + Top = 157 + Width = 60 + Height = 12 + Caption = #33521#25991#22320#22336#65306 + end + object Label3: TLabel + Left = 61 + Top = 192 + Width = 36 + Height = 12 + Caption = #22791#27880#65306 + end + object Note: TMemo + Left = 120 + Top = 175 + Width = 293 + Height = 63 + ScrollBars = ssBoth + TabOrder = 0 + end + object EngAddress: TEdit + Left = 120 + Top = 151 + Width = 294 + Height = 20 + Enabled = False + TabOrder = 1 + end + object ChnAddress: TEdit + Left = 120 + Top = 127 + Width = 293 + Height = 20 + TabOrder = 2 + end + object engFactory: TEdit + Left = 119 + Top = 104 + Width = 295 + Height = 20 + TabOrder = 3 + end + object ChnFactory: TEdit + Left = 119 + Top = 81 + Width = 294 + Height = 20 + TabOrder = 4 + end + object TelePhone: TEdit + Left = 119 + Top = 58 + Width = 294 + Height = 20 + TabOrder = 5 + end + object ywy: TEdit + Tag = 99 + Left = 119 + Top = 31 + Width = 295 + Height = 20 + ReadOnly = True + TabOrder = 6 + Text = 'ywy' + Visible = False + end + object customNo: TBtnEditA + Tag = 1 + Left = 120 + Top = 7 + Width = 295 + Height = 20 + Enabled = False + ReadOnly = True + TabOrder = 7 + OnBtnClick = customNoBtnClick + end + end + end + object RMPreview1: TRMPreview + Left = 488 + Top = 85 + Width = 553 + Height = 569 + Align = alRight + BevelOuter = bvLowered + Caption = 'Insert After' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + ParentShowHint = False + ShowHint = False + TabOrder = 1 + OnDblClick = RMPreview1DblClick + Options.RulerUnit = rmutScreenPixels + Options.RulerVisible = False + Options.DrawBorder = False + Options.BorderPen.Color = clGray + Options.BorderPen.Style = psDash + end + object ToolBar2: TToolBar + Left = 0 + Top = 0 + Width = 1041 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar2' + Color = clBtnFace + Flat = True + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 2 + Transparent = False + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 0 + OnClick = ToolButton1Click + end + object TOK: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #30830#23450 + ImageIndex = 16 + OnClick = TOkClick + end + object Tadd: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686#26631#31614 + ImageIndex = 1 + OnClick = TaddClick + end + object Tupd: TToolButton + Left = 213 + Top = 0 + AutoSize = True + Caption = #20462#25913#26631#31614 + ImageIndex = 54 + OnClick = TupdClick + end + object Tdel: TToolButton + Left = 300 + Top = 0 + AutoSize = True + Caption = #21024#38500#26631#31614 + ImageIndex = 100 + OnClick = TdelClick + end + object Tclose: TToolButton + Left = 387 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TcloseClick + end + end + object Panel4: TPanel + Tag = 2 + Left = 0 + Top = 32 + Width = 1041 + Height = 53 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 3 + object Label9: TLabel + Left = 36 + Top = 20 + Width = 48 + Height = 12 + Caption = #26631#31614#31867#22411 + end + object Label10: TLabel + Left = 280 + Top = 20 + Width = 48 + Height = 12 + Caption = #26631#31614#26631#39064 + end + object LabelCaption: TEdit + Tag = 2 + Left = 332 + Top = 16 + Width = 100 + Height = 20 + TabOrder = 0 + OnChange = LabelTypeChange + end + object LabelType: TFTComboBox + Tag = 99 + Left = 88 + Top = 17 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 1 + OnChange = LabelTypeChange + Items.Strings = ( + '' + #20013#25991#26631#31614 + #33521#25991#26631#31614 + #20013#33521#25991#26631#31614) + end + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + CommandTimeout = 300 + Parameters = <> + Left = 508 + Top = 208 + end + object OpenDialog1: TOpenDialog + Filter = 'RMFl(*.rmf)|*.rmf' + InitialDir = '.' + Left = 316 + Top = 148 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + ModalPreview = False + ShowProgress = False + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + Preview = RMPreview1 + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 436 + Top = 152 + ReportData = {} + end + object ADOQueryTmp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + CommandTimeout = 300 + Parameters = <> + Left = 528 + Top = 184 + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 392 + Top = 228 + end + object DS_Label: TDataSource + DataSet = ADOQueryLabel + Left = 66 + Top = 456 + end + object ADOQueryLabel10: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + CommandTimeout = 300 + Parameters = <> + Left = 234 + Top = 296 + end + object ADOQueryLabel: TClientDataSet + Aggregates = <> + Params = <> + Left = 156 + Top = 267 + end +end diff --git a/艾登贸易管理/U_LabelList.pas b/艾登贸易管理/U_LabelList.pas new file mode 100644 index 0000000..4b6e014 --- /dev/null +++ b/艾登贸易管理/U_LabelList.pas @@ -0,0 +1,606 @@ +unit U_LabelList; + +interface + +uses + Windows, Messages, SysUtils, StrUtils,Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, BtnEdit, ExtCtrls, DB, ADODB, + RM_System, RM_Common, RM_Class, RM_GridReport, Buttons, FTComboBox, + RM_Preview, RM_e_Xls, RM_e_Graphic, RM_e_bmp, RM_BarCode, + RM_DsgGridReport, RM_Dataset, cxStyles, cxCustomData, cxGraphics, + cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, DBClient, cxLookAndFeels, + cxLookAndFeelPainters, cxNavigator; + +type + TfrmLabelList = class(TForm) + Panel1: TPanel; + ADOQueryCmd: TADOQuery; + OpenDialog1: TOpenDialog; + RMGridReport1: TRMGridReport; + ADOQueryTmp: TADOQuery; + RMPreview1: TRMPreview; + ADOQuery1: TADOQuery; + Panel2: TPanel; + cxGrid1: TcxGrid; + tv1: TcxGridDBTableView; + tv1labeltype: TcxGridDBColumn; + tv1labelCaption: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + tv1labelFile: TcxGridDBColumn; + DS_Label: TDataSource; + ADOQueryLabel10: TADOQuery; + Panel3: TPanel; + Note: TMemo; + EngAddress: TEdit; + ChnAddress: TEdit; + engFactory: TEdit; + ChnFactory: TEdit; + TelePhone: TEdit; + ywy: TEdit; + customNo: TBtnEditA; + Label1: TLabel; + Label2: TLabel; + Label4: TLabel; + Label5: TLabel; + Label6: TLabel; + Label7: TLabel; + Label8: TLabel; + Label3: TLabel; + tv1labelId: TcxGridDBColumn; + ToolBar2: TToolBar; + Tadd: TToolButton; + Tupd: TToolButton; + Tdel: TToolButton; + TOK: TToolButton; + Tclose: TToolButton; + Panel4: TPanel; + ToolButton1: TToolButton; + Label9: TLabel; + Label10: TLabel; + LabelCaption: TEdit; + LabelType: TFTComboBox; + ADOQueryLabel: TClientDataSet; + procedure TcloseClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TsaveClick(Sender: TObject); + procedure customNoBtnClick(Sender: TObject); + procedure BtOpenClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure RMPreview1DblClick(Sender: TObject); + procedure TaddClick(Sender: TObject); + procedure TupdClick(Sender: TObject); + procedure tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); + procedure TdelClick(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure TOkClick(Sender: TObject); + procedure tv1DblClick(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure LabelTypeChange(Sender: TObject); + procedure tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + isLoad:Boolean; + function SaveData():Boolean; + function EditData():Boolean; + function IsCheckCustOk():Boolean; + function DeleteData():Boolean; + procedure InitWinData(); + procedure InitVarDictionary(); + procedure InitDataSetDictionary(); + procedure InitGrid(); + procedure OpenLabel(); + procedure SetWinStatus(); + procedure DoFilter(); + public + fSelLabelId,LBName,LBInt,SLBName:String; + fKeyNo:string; + fchg:Boolean; + fIsShowModal:Boolean; + fWinStatus:integer; + end; + +var + frmLabelList: TfrmLabelList; + +implementation +uses + U_DataLink,U_LabelAdd,U_RTFun; +{$R *.dfm} +procedure TfrmLabelList.DoFilter(); +var + filterStr:string; +begin + filterStr:=''; + + if trim(LabelType.Text) <>'' then + begin + filterStr:=' and LabelType like '+quotedStr('%'+trim(LabelType.Text)+'%'); + end; + // + if trim(LabelCaption.Text)<>'' then + begin + filterStr:=filterStr+' and LabelCaption like '+quotedStr('%'+trim(LabelCaption.Text)+'%'); + end; + try + ADOQueryLabel10.DisableControls ; + if trim(filterStr)='' then + begin + ADOQueryLabel.Filtered:=false; + ADOQueryLabel.EnableControls; + exit; + end; + filterStr:=trim(RightBStr(filterStr,length(filterStr)-4)); + with ADOQueryLabel do + begin + filtered:=false; + filter:=filterStr; + filtered:=true; + end; + if ADOQueryLabel10.Active=False then Exit; + SDofilter(ADOQueryLabel10,filterStr); + SCreateCDS20(ADOQueryLabel10,ADOQueryLabel); + SInitCDSData20(ADOQueryLabel10,ADOQueryLabel); + finally + ADOQueryLabel10.EnableControls; + end; +end; +procedure TfrmLabelList.TcloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmLabelList.FormCreate(Sender: TObject); +begin + panel1.Align :=alClient; + // ClearWinData(panel3); + fSelLabelId := ''; + + + +end; + +procedure TfrmLabelList.TsaveClick(Sender: TObject); +begin + if trim(customNO.Text)='' then + begin + application.MessageBox('ͻƲΪ,ѡͻ','ʾ'); + customNo.SetFocus; + exit; + end; + if application.MessageBox('ȷҪ?','ʾϢ',1)=2 then exit; + if fWinStatus=0 then + begin + if not IsCheckCustOk() then exit; + if SaveData() then + begin + fWinStatus:=1; + fchg:=true; + SetWinStatus(); + end; + end + else + begin + if EditData() then + begin + fchg:=true; + application.MessageBox('ɹ!','ʾϢ',0) + end; + end; +end; +///////////////////////////////////////////////////////////////////// + //ܣ +///////////////////////////////////////////////////////////////////// +function TfrmLabelList.SaveData():Boolean; +begin + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from JD_Label'); + sql.Add('where 1<>1'); + Open; + + Append; + fieldByName('customno').value:=trim(customno.txtCode); + fieldByName('ChnFactory').value:=trim(ChnFactory.text); + fieldByName('engFactory').value:=trim(engFactory.text); + fieldByName('TelePhone').value:=trim(TelePhone.text); + fieldByName('ChnAddress').value:=trim(ChnAddress.text); + fieldByName('EngAddress').value:=trim(EngAddress.text); + fieldByName('filler').value:=Dname; + fieldByName('filltime').value:=DServerDate; + fieldByName('note').value:= trim(Note.text); + Post; + end; + result:=true; + except + Result:=false; + application.MessageBox('ǩģ!','Ϣ',0); + end; +end; + +///////////////////////////////////////////////////////////////////// + //ܣ +///////////////////////////////////////////////////////////////////// +function TfrmLabelList.EditData():Boolean; +begin + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from JD_Label'); + sql.Add('where customNo='+fKeyNo); + Open; + + Edit; + fieldByName('customno').value:=trim(customno.txtCode); + fieldByName('ChnFactory').value:=trim(ChnFactory.text); + fieldByName('engFactory').value:=trim(engFactory.text); + fieldByName('TelePhone').value:=trim(TelePhone.text); + fieldByName('ChnAddress').value:=trim(ChnAddress.text); + fieldByName('EngAddress').value:=trim(EngAddress.text); + fieldByName('note').value:= trim(Note.text); + Post; + end; + result:=true; + except + Result:=false; + application.MessageBox('ǩģ!','Ϣ',0); + end; +end; + +procedure TfrmLabelList.customNoBtnClick(Sender: TObject); + begin + { FormGetCust:=TFormGetCust.Create(self); + + if FormGetCust.ShowModal=mrok then + begin + customNo.TxtCode:=trim(FormGetCust.ADOQuery1.Fieldbyname('customno').AsString); + customNo.Text:=trim(FormGetCust.ADOQuery1.Fieldbyname('shortname').AsString); + end; + FormGetCust.Free; } +{ frmCustHelp:=TfrmCustHelp.create(self); + with frmCustHelp do + begin + if showModal=1 then + begin + customNo.TxtCode:=trim(ADOQueryHelp.Fieldbyname('customno').AsString); + customNo.Text:=trim(ADOQueryHelp.Fieldbyname('shortname').AsString); + end; + free; + end; + } +end; + +procedure TfrmLabelList.BtOpenClick(Sender: TObject); +begin + +end; +//////////////////////////////////////////////////////////// + //ʼ +//////////////////////////////////////////////////////////// +procedure TfrmLabelList.InitWinData(); +begin + try + with ADOQueryTmp do + begin + close; + sql.Clear ; + sql.Add('select A.* ,B.customName as customNoName'); + sql.Add('from JD_Label A'); + sql.Add('INNER JOIN BC_customer B ON A.customNO=B.customNo'); + sql.Add('WHERE B.customNo='''+fkeyNo+''''); + Open; + if isEmpty then + begin + close; + exit; + end; + + // SetWinData(ADOQueryTmp,panel3); + { + RMGridReport1.LoadFromBlobField(tblobfield(fieldbyname('labelFile'))); + RMGridReport1.Preview :=RMPreview1; + RMGridReport1.PrepareReport; + RMGridReport1.ShowReport ; + } + end; + except + end; +end; + +procedure TfrmLabelList.FormShow(Sender: TObject); +begin + if fWinStatus=1 then tok.Visible:=false; + InitGrid(); + if Trim(SLBName)<>'' then + begin + ADOQueryLabel.Locate('labelCaption',SLBName,[]); + end; +end; + +procedure TfrmLabelList.RMPreview1DblClick(Sender: TObject); +begin + //btOpen.Click ; +end; +//////////////////////////////////////////////////////////// + // +//////////////////////////////////////////////////////////// +procedure TfrmLabelList.InitVarDictionary(); +var + TmpList:Tstrings; + mm:string; + i:integer; +begin + try + TmpList:=TstringList.Create(); + with ADOQueryTmp do + begin + close; + sql.Clear; + sql.Add('select distinct ItemType from JC_LabelSetItems '); + sql.Add('where valid=''Y'''); + Open; + TmpList.Clear ; + while not Eof do + begin + TmpList.Add(trim(fieldByName('ItemType').AsString)); + Next; + end; + end; + finally + TmpList.Free ; + end; +end; +///////////////////////////////////////////////// + // +///////////////////////////////////////////////// +procedure TfrmLabelList.InitDataSetDictionary(); +begin +{ with ADOQuery1 do + begin + close; + sql.Clear ; + sql.Add('exec P_Get_LabelPrintData'); + sql.Add(quotedStr('')); + sql.Add(','+quotedStr('')); + sql.Add(','+quotedStr('')); + OPen; + end; } +end; + +procedure TfrmLabelList.TaddClick(Sender: TObject); +begin + try + frmLabelAdd:=TfrmLabelAdd.create(self); + with frmLabelAdd do + begin + if showModal =1 then + begin + fchg:=true; + InitGrid(); + end; + end; + finally + frmLabelAdd.Free; + end; +end; + +procedure TfrmLabelList.TupdClick(Sender: TObject); +begin + if ADOQueryLabel.IsEmpty then exit; + try + frmLabelAdd:=TfrmLabelAdd.create(self); + with frmLabelAdd do + begin + fKeyNo:=ADOQueryLabel.fieldByName('LabelId').AsString ; + fWinstatus:=1; + if showModal =1 then + begin + fchg:=true; + InitGrid(); + end; + end; + finally + frmLabelAdd.Free; + end; + +end; +///////////////////////////////////////////// + // +///////////////////////////////////////////// +procedure TfrmLabelList.InitGrid(); +begin + try + isLoad:=false; + ADOQueryLabel10.DisableControls ; + with ADOQueryLabel10 do + begin + close; + sql.Clear ; + sql.Add('select LabelID,labeltype,labelCaption from P_Label'); + sql.Add('where valid=''Y'''); + sql.Add(' order by '); + SQL.Add(' case when labelCaption=''ͨƥװǩ'' then 0 else 9 end'); + sql.Add(' ,labelCaption'); + Open; + end; + SCreateCDS20(ADOQueryLabel10,ADOQueryLabel); + SInitCDSData20(ADOQueryLabel10,ADOQueryLabel); + finally + ADOQueryLabel10.EnableControls; + isLoad:=true; + //DoFilter(); + //OpenLabel(); + end; +end; +//////////////////////////////////////////////////////// + //ܣ򿪱ǩļ +//////////////////////////////////////////////////////// +procedure TfrmLabelList.OpenLabel(); +begin + if ADOQueryLabel.IsEmpty then exit; + + with ADOQuery1 do + begin + close; + sql.clear; + sql.Add('select labelFile from P_Label'); + sql.Add('where LabelID='''+ADOQueryLabel.fieldbyname('LabelID').AsString+''' '); + open; + end; + + with RMGridReport1 do + begin + LoadFromBlobField(tblobfield(ADOQuery1.fieldbyname('labelFile'))); + //Preview :=RMPreview1; + ShowReport ; + end; +end; +procedure TfrmLabelList.tv1FocusedRecordChanged( + Sender: TcxCustomGridTableView; APrevFocusedRecord, + AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); +begin + +end; +////////////////////////////////////////////////////////// + //ܣÿͻıǩǷѴ +///////////////////////////////////////////////////////// +function TfrmLabelList.IsCheckCustOk():Boolean; +begin + try + with ADOQueryTmp do + begin + close; + sql.Clear ; + sql.Add('select count(customNO)as cnt from P_Label'); + sql.Add('where customNO='''+trim(customNO.TxtCode)+''''); + Open; + + if fieldByName('cnt').AsInteger>0 then + begin + Result:=false ; + application.MessageBox('ÿͻǩϢѴ!','Ϣ',0); + end + else + Result:=true; + end; + except + result:=false; + application.MessageBox('ÿͻǩϢǷѴʱ!','Ϣ',0); + end; +end; +///////////////////////////////////////////////////////////// + // +///////////////////////////////////////////////////////////// +function TfrmLabelList.DeleteData():Boolean; +begin + try + with ADOQueryCmd do + begin + close; + sql.clear; + sql.Add('delete P_Label'); + sql.Add('where labelId='+ADOQueryLabel.fieldByName('LabelID').asString); + execSql; + end; + result:=true; + except + result:=false; + application.MessageBox('ɾʧ!','Ϣ',0); + end; +end; +procedure TfrmLabelList.TdelClick(Sender: TObject); +begin + if ADOQueryLabel.IsEmpty then exit; + if application.MessageBox('ȷҪɾ˱ǩ','Ϣ',1)=2 then exit; + if DeleteData() then + begin + fchg:=true; + InitGrid(); + end; +end; +////////////////////////////////////////////////////////// + // +///////////////////////////////////////////////////////// +procedure TfrmLabelList.SetWinStatus(); +begin + case fWinStatus of + 0: + begin + // ToolBar2.Visible :=false; + // tsave.Visible :=true; + customNo.Enabled :=true; + panel3.Enabled :=true; + end; + 1: + begin + // ToolBar2.Visible :=true; + // tsave.Visible :=false; + customNo.Enabled :=false; + panel3.Enabled :=false; + TOK.Visible:=false; + end; + 5: + begin + // ToolBar2.Visible :=false; + // tsave.Visible :=false; + panel1.Enabled :=false; + panel3.Enabled :=false; + end; + end ; +end; + +procedure TfrmLabelList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + {if fIsShowModal then + Application:=MainApplication ; } + Action:=caFree; +end; + +procedure TfrmLabelList.FormDestroy(Sender: TObject); +begin + frmLabelList:=nil; +end; + +procedure TfrmLabelList.TOkClick(Sender: TObject); +begin + if ADOQueryLabel.IsEmpty then exit; + LBName:=Trim(ADOQueryLabel.fieldbyname('labelCaption').AsString); + ModalResult:=1; +end; + +procedure TfrmLabelList.tv1DblClick(Sender: TObject); +begin + TOk.Click ; +end; + +procedure TfrmLabelList.ToolButton1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmLabelList.LabelTypeChange(Sender: TObject); +begin + DoFilter(); +end; + +procedure TfrmLabelList.tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if isLoad then + OpenLabel(); +end; + +end. diff --git a/艾登贸易管理/U_LabelListts.dfm b/艾登贸易管理/U_LabelListts.dfm new file mode 100644 index 0000000..e3cde9d --- /dev/null +++ b/艾登贸易管理/U_LabelListts.dfm @@ -0,0 +1,438 @@ +object frmLabelListts: TfrmLabelListts + Left = 351 + Top = 334 + Width = 1057 + Height = 693 + BorderIcons = [biMaximize] + Caption = #26631#31614#20449#24687 + Color = clBtnFace + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poOwnerFormCenter + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Panel1: TPanel + Left = 12 + Top = 80 + Width = 452 + Height = 561 + BevelOuter = bvNone + TabOrder = 0 + object Panel2: TPanel + Left = 0 + Top = 3 + Width = 452 + Height = 558 + Align = alClient + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 0 + object cxGrid1: TcxGrid + Left = 2 + Top = 2 + Width = 448 + Height = 554 + Align = alClient + TabOrder = 0 + object tv1: TcxGridDBTableView + OnDblClick = tv1DblClick + Navigator.Buttons.CustomButtons = <> + OnCellClick = tv1CellClick + OnFocusedRecordChanged = tv1FocusedRecordChanged + DataController.DataSource = DS_Label + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + object tv1labelId: TcxGridDBColumn + Caption = #26631#31614'ID' + DataBinding.FieldName = 'labelId' + Visible = False + Width = 53 + end + object tv1labeltype: TcxGridDBColumn + Caption = #26631#31614#31867#22411 + DataBinding.FieldName = 'labeltype' + HeaderAlignmentHorz = taCenter + Width = 107 + end + object tv1labelCaption: TcxGridDBColumn + Caption = #26631#31614#21517#31216 + DataBinding.FieldName = 'labelCaption' + HeaderAlignmentHorz = taCenter + Width = 261 + end + object tv1labelFile: TcxGridDBColumn + Caption = #25991#20214#21517 + DataBinding.FieldName = 'labelFile' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 167 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = tv1 + end + end + end + object Panel3: TPanel + Left = 0 + Top = 0 + Width = 452 + Height = 3 + Align = alTop + Caption = 'Panel3' + TabOrder = 1 + Visible = False + object Label1: TLabel + Left = 40 + Top = 13 + Width = 60 + Height = 12 + Caption = #23458#25143#21517#31216#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label2: TLabel + Left = 52 + Top = 35 + Width = 48 + Height = 12 + Caption = #19994#21153#21592#65306 + Visible = False + end + object Label4: TLabel + Left = 40 + Top = 61 + Width = 60 + Height = 12 + Caption = #30005#35805#21495#30721#65306 + end + object Label5: TLabel + Left = 39 + Top = 86 + Width = 60 + Height = 12 + Caption = #20844#21496#21517#31216#65306 + end + object Label6: TLabel + Left = 14 + Top = 108 + Width = 84 + Height = 12 + Caption = #20844#21496#33521#25991#21517#31216#65306 + end + object Label7: TLabel + Left = 61 + Top = 133 + Width = 36 + Height = 12 + Caption = #22320#22336#65306 + end + object Label8: TLabel + Left = 37 + Top = 157 + Width = 60 + Height = 12 + Caption = #33521#25991#22320#22336#65306 + end + object Label3: TLabel + Left = 61 + Top = 192 + Width = 36 + Height = 12 + Caption = #22791#27880#65306 + end + object Note: TMemo + Left = 120 + Top = 175 + Width = 293 + Height = 63 + ScrollBars = ssBoth + TabOrder = 0 + end + object EngAddress: TEdit + Left = 120 + Top = 151 + Width = 294 + Height = 20 + Enabled = False + TabOrder = 1 + end + object ChnAddress: TEdit + Left = 120 + Top = 127 + Width = 293 + Height = 20 + TabOrder = 2 + end + object engFactory: TEdit + Left = 119 + Top = 104 + Width = 295 + Height = 20 + TabOrder = 3 + end + object ChnFactory: TEdit + Left = 119 + Top = 81 + Width = 294 + Height = 20 + TabOrder = 4 + end + object TelePhone: TEdit + Left = 119 + Top = 58 + Width = 294 + Height = 20 + TabOrder = 5 + end + object ywy: TEdit + Tag = 99 + Left = 119 + Top = 31 + Width = 295 + Height = 20 + ReadOnly = True + TabOrder = 6 + Text = 'ywy' + Visible = False + end + object customNo: TBtnEditA + Tag = 1 + Left = 120 + Top = 7 + Width = 295 + Height = 20 + Enabled = False + ReadOnly = True + TabOrder = 7 + OnBtnClick = customNoBtnClick + end + end + end + object RMPreview1: TRMPreview + Left = 488 + Top = 85 + Width = 553 + Height = 569 + Align = alRight + BevelOuter = bvLowered + Caption = 'Insert After' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + ParentShowHint = False + ShowHint = False + TabOrder = 1 + Visible = False + OnDblClick = RMPreview1DblClick + Options.RulerUnit = rmutScreenPixels + Options.RulerVisible = False + Options.DrawBorder = False + Options.BorderPen.Color = clGray + Options.BorderPen.Style = psDash + end + object ToolBar2: TToolBar + Left = 0 + Top = 0 + Width = 1041 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar2' + Color = clBtnFace + Flat = True + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 2 + Transparent = False + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 0 + OnClick = ToolButton1Click + end + object TOK: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #30830#23450 + ImageIndex = 16 + OnClick = TOkClick + end + object Tadd: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686#26631#31614 + ImageIndex = 1 + OnClick = TaddClick + end + object Tupd: TToolButton + Left = 213 + Top = 0 + AutoSize = True + Caption = #20462#25913#26631#31614 + ImageIndex = 54 + OnClick = TupdClick + end + object Tdel: TToolButton + Left = 300 + Top = 0 + AutoSize = True + Caption = #21024#38500#26631#31614 + ImageIndex = 100 + OnClick = TdelClick + end + object Tclose: TToolButton + Left = 387 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TcloseClick + end + end + object Panel4: TPanel + Tag = 2 + Left = 0 + Top = 32 + Width = 1041 + Height = 53 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 3 + object Label9: TLabel + Left = 36 + Top = 20 + Width = 48 + Height = 12 + Caption = #26631#31614#31867#22411 + end + object Label10: TLabel + Left = 280 + Top = 20 + Width = 48 + Height = 12 + Caption = #26631#31614#26631#39064 + end + object LabelCaption: TEdit + Tag = 2 + Left = 332 + Top = 16 + Width = 100 + Height = 20 + TabOrder = 0 + OnChange = LabelTypeChange + end + object LabelType: TFTComboBox + Tag = 99 + Left = 88 + Top = 17 + Width = 100 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 1 + OnChange = LabelTypeChange + Items.Strings = ( + '' + #20013#25991#26631#31614 + #33521#25991#26631#31614 + #20013#33521#25991#26631#31614) + end + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + CommandTimeout = 300 + Parameters = <> + Left = 508 + Top = 208 + end + object OpenDialog1: TOpenDialog + Filter = 'RMFl(*.rmf)|*.rmf' + InitialDir = '.' + Left = 316 + Top = 148 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + ModalPreview = False + ShowProgress = False + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + Preview = RMPreview1 + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 436 + Top = 152 + ReportData = {} + end + object ADOQueryTmp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + CommandTimeout = 300 + Parameters = <> + Left = 528 + Top = 184 + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 392 + Top = 228 + end + object DS_Label: TDataSource + DataSet = ADOQueryLabel + Left = 66 + Top = 456 + end + object ADOQueryLabel10: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + CommandTimeout = 300 + Parameters = <> + Left = 234 + Top = 296 + end + object ADOQueryLabel: TClientDataSet + Aggregates = <> + Params = <> + Left = 156 + Top = 267 + end +end diff --git a/艾登贸易管理/U_LabelListts.pas b/艾登贸易管理/U_LabelListts.pas new file mode 100644 index 0000000..7e624c6 --- /dev/null +++ b/艾登贸易管理/U_LabelListts.pas @@ -0,0 +1,606 @@ +unit U_LabelListts; + +interface + +uses + Windows, Messages, SysUtils, StrUtils,Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, BtnEdit, ExtCtrls, DB, ADODB, + RM_System, RM_Common, RM_Class, RM_GridReport, Buttons, FTComboBox, + RM_Preview, RM_e_Xls, RM_e_Graphic, RM_e_bmp, RM_BarCode, + RM_DsgGridReport, RM_Dataset, cxStyles, cxCustomData, cxGraphics, + cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, DBClient, cxLookAndFeels, + cxLookAndFeelPainters, cxNavigator; + +type + TfrmLabelListts = class(TForm) + Panel1: TPanel; + ADOQueryCmd: TADOQuery; + OpenDialog1: TOpenDialog; + RMGridReport1: TRMGridReport; + ADOQueryTmp: TADOQuery; + RMPreview1: TRMPreview; + ADOQuery1: TADOQuery; + Panel2: TPanel; + cxGrid1: TcxGrid; + tv1: TcxGridDBTableView; + tv1labeltype: TcxGridDBColumn; + tv1labelCaption: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + tv1labelFile: TcxGridDBColumn; + DS_Label: TDataSource; + ADOQueryLabel10: TADOQuery; + Panel3: TPanel; + Note: TMemo; + EngAddress: TEdit; + ChnAddress: TEdit; + engFactory: TEdit; + ChnFactory: TEdit; + TelePhone: TEdit; + ywy: TEdit; + customNo: TBtnEditA; + Label1: TLabel; + Label2: TLabel; + Label4: TLabel; + Label5: TLabel; + Label6: TLabel; + Label7: TLabel; + Label8: TLabel; + Label3: TLabel; + tv1labelId: TcxGridDBColumn; + ToolBar2: TToolBar; + Tadd: TToolButton; + Tupd: TToolButton; + Tdel: TToolButton; + TOK: TToolButton; + Tclose: TToolButton; + Panel4: TPanel; + ToolButton1: TToolButton; + Label9: TLabel; + Label10: TLabel; + LabelCaption: TEdit; + LabelType: TFTComboBox; + ADOQueryLabel: TClientDataSet; + procedure TcloseClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TsaveClick(Sender: TObject); + procedure customNoBtnClick(Sender: TObject); + procedure BtOpenClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure RMPreview1DblClick(Sender: TObject); + procedure TaddClick(Sender: TObject); + procedure TupdClick(Sender: TObject); + procedure tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); + procedure TdelClick(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure TOkClick(Sender: TObject); + procedure tv1DblClick(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure LabelTypeChange(Sender: TObject); + procedure tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + isLoad:Boolean; + function SaveData():Boolean; + function EditData():Boolean; + function IsCheckCustOk():Boolean; + function DeleteData():Boolean; + procedure InitWinData(); + procedure InitVarDictionary(); + procedure InitDataSetDictionary(); + procedure InitGrid(); + procedure OpenLabel(); + procedure SetWinStatus(); + procedure DoFilter(); + public + fSelLabelId,LBName,LBInt,SLBName:String; + fKeyNo:string; + fchg:Boolean; + fIsShowModal:Boolean; + fWinStatus:integer; + end; + +var + frmLabelListts: TfrmLabelListts; + +implementation +uses + U_DataLink,U_LabelAdd,U_RTFun; +{$R *.dfm} +procedure TfrmLabelListts.DoFilter(); +var + filterStr:string; +begin + filterStr:=''; + + if trim(LabelType.Text) <>'' then + begin + filterStr:=' and LabelType like '+quotedStr('%'+trim(LabelType.Text)+'%'); + end; + // + if trim(LabelCaption.Text)<>'' then + begin + filterStr:=filterStr+' and LabelCaption like '+quotedStr('%'+trim(LabelCaption.Text)+'%'); + end; + try + ADOQueryLabel10.DisableControls ; + if trim(filterStr)='' then + begin + ADOQueryLabel.Filtered:=false; + ADOQueryLabel.EnableControls; + exit; + end; + filterStr:=trim(RightBStr(filterStr,length(filterStr)-4)); + with ADOQueryLabel do + begin + filtered:=false; + filter:=filterStr; + filtered:=true; + end; + if ADOQueryLabel10.Active=False then Exit; + SDofilter(ADOQueryLabel10,filterStr); + SCreateCDS20(ADOQueryLabel10,ADOQueryLabel); + SInitCDSData20(ADOQueryLabel10,ADOQueryLabel); + finally + ADOQueryLabel10.EnableControls; + end; +end; +procedure TfrmLabelListts.TcloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmLabelListts.FormCreate(Sender: TObject); +begin + panel1.Align :=alClient; + // ClearWinData(panel3); + fSelLabelId := ''; + + + +end; + +procedure TfrmLabelListts.TsaveClick(Sender: TObject); +begin + if trim(customNO.Text)='' then + begin + application.MessageBox('ͻƲΪ,ѡͻ','ʾ'); + customNo.SetFocus; + exit; + end; + if application.MessageBox('ȷҪ?','ʾϢ',1)=2 then exit; + if fWinStatus=0 then + begin + if not IsCheckCustOk() then exit; + if SaveData() then + begin + fWinStatus:=1; + fchg:=true; + SetWinStatus(); + end; + end + else + begin + if EditData() then + begin + fchg:=true; + application.MessageBox('ɹ!','ʾϢ',0) + end; + end; +end; +///////////////////////////////////////////////////////////////////// + //ܣ +///////////////////////////////////////////////////////////////////// +function TfrmLabelListts.SaveData():Boolean; +begin + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from JD_Label'); + sql.Add('where 1<>1'); + Open; + + Append; + fieldByName('customno').value:=trim(customno.txtCode); + fieldByName('ChnFactory').value:=trim(ChnFactory.text); + fieldByName('engFactory').value:=trim(engFactory.text); + fieldByName('TelePhone').value:=trim(TelePhone.text); + fieldByName('ChnAddress').value:=trim(ChnAddress.text); + fieldByName('EngAddress').value:=trim(EngAddress.text); + fieldByName('filler').value:=Dname; + fieldByName('filltime').value:=DServerDate; + fieldByName('note').value:= trim(Note.text); + Post; + end; + result:=true; + except + Result:=false; + application.MessageBox('ǩģ!','Ϣ',0); + end; +end; + +///////////////////////////////////////////////////////////////////// + //ܣ +///////////////////////////////////////////////////////////////////// +function TfrmLabelListts.EditData():Boolean; +begin + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from JD_Label'); + sql.Add('where customNo='+fKeyNo); + Open; + + Edit; + fieldByName('customno').value:=trim(customno.txtCode); + fieldByName('ChnFactory').value:=trim(ChnFactory.text); + fieldByName('engFactory').value:=trim(engFactory.text); + fieldByName('TelePhone').value:=trim(TelePhone.text); + fieldByName('ChnAddress').value:=trim(ChnAddress.text); + fieldByName('EngAddress').value:=trim(EngAddress.text); + fieldByName('note').value:= trim(Note.text); + Post; + end; + result:=true; + except + Result:=false; + application.MessageBox('ǩģ!','Ϣ',0); + end; +end; + +procedure TfrmLabelListts.customNoBtnClick(Sender: TObject); + begin + { FormGetCust:=TFormGetCust.Create(self); + + if FormGetCust.ShowModal=mrok then + begin + customNo.TxtCode:=trim(FormGetCust.ADOQuery1.Fieldbyname('customno').AsString); + customNo.Text:=trim(FormGetCust.ADOQuery1.Fieldbyname('shortname').AsString); + end; + FormGetCust.Free; } +{ frmCustHelp:=TfrmCustHelp.create(self); + with frmCustHelp do + begin + if showModal=1 then + begin + customNo.TxtCode:=trim(ADOQueryHelp.Fieldbyname('customno').AsString); + customNo.Text:=trim(ADOQueryHelp.Fieldbyname('shortname').AsString); + end; + free; + end; + } +end; + +procedure TfrmLabelListts.BtOpenClick(Sender: TObject); +begin + +end; +//////////////////////////////////////////////////////////// + //ʼ +//////////////////////////////////////////////////////////// +procedure TfrmLabelListts.InitWinData(); +begin + try + with ADOQueryTmp do + begin + close; + sql.Clear ; + sql.Add('select A.* ,B.customName as customNoName'); + sql.Add('from JD_Label A'); + sql.Add('INNER JOIN BC_customer B ON A.customNO=B.customNo'); + sql.Add('WHERE B.customNo='''+fkeyNo+''''); + Open; + if isEmpty then + begin + close; + exit; + end; + + // SetWinData(ADOQueryTmp,panel3); + { + RMGridReport1.LoadFromBlobField(tblobfield(fieldbyname('labelFile'))); + RMGridReport1.Preview :=RMPreview1; + RMGridReport1.PrepareReport; + RMGridReport1.ShowReport ; + } + end; + except + end; +end; + +procedure TfrmLabelListts.FormShow(Sender: TObject); +begin + if fWinStatus=1 then tok.Visible:=false; + InitGrid(); + if Trim(SLBName)<>'' then + begin + ADOQueryLabel.Locate('labelCaption',SLBName,[]); + end; +end; + +procedure TfrmLabelListts.RMPreview1DblClick(Sender: TObject); +begin + //btOpen.Click ; +end; +//////////////////////////////////////////////////////////// + // +//////////////////////////////////////////////////////////// +procedure TfrmLabelListts.InitVarDictionary(); +var + TmpList:Tstrings; + mm:string; + i:integer; +begin + try + TmpList:=TstringList.Create(); + with ADOQueryTmp do + begin + close; + sql.Clear; + sql.Add('select distinct ItemType from JC_LabelSetItems '); + sql.Add('where valid=''Y'''); + Open; + TmpList.Clear ; + while not Eof do + begin + TmpList.Add(trim(fieldByName('ItemType').AsString)); + Next; + end; + end; + finally + TmpList.Free ; + end; +end; +///////////////////////////////////////////////// + // +///////////////////////////////////////////////// +procedure TfrmLabelListts.InitDataSetDictionary(); +begin +{ with ADOQuery1 do + begin + close; + sql.Clear ; + sql.Add('exec P_Get_LabelPrintData'); + sql.Add(quotedStr('')); + sql.Add(','+quotedStr('')); + sql.Add(','+quotedStr('')); + OPen; + end; } +end; + +procedure TfrmLabelListts.TaddClick(Sender: TObject); +begin + try + frmLabelAdd:=TfrmLabelAdd.create(self); + with frmLabelAdd do + begin + if showModal =1 then + begin + fchg:=true; + InitGrid(); + end; + end; + finally + frmLabelAdd.Free; + end; +end; + +procedure TfrmLabelListts.TupdClick(Sender: TObject); +begin + if ADOQueryLabel.IsEmpty then exit; + try + frmLabelAdd:=TfrmLabelAdd.create(self); + with frmLabelAdd do + begin + fKeyNo:=ADOQueryLabel.fieldByName('LabelId').AsString ; + fWinstatus:=1; + if showModal =1 then + begin + fchg:=true; + InitGrid(); + end; + end; + finally + frmLabelAdd.Free; + end; + +end; +///////////////////////////////////////////// + // +///////////////////////////////////////////// +procedure TfrmLabelListts.InitGrid(); +begin + try + isLoad:=false; + ADOQueryLabel10.DisableControls ; + with ADOQueryLabel10 do + begin + close; + sql.Clear ; + sql.Add('select LabelID,labeltype,labelCaption from P_Label'); + sql.Add('where valid=''Y'''); + sql.Add(' order by '); + SQL.Add(' case when labelCaption=''ͨƥװǩ'' then 0 else 9 end'); + sql.Add(' ,labelCaption'); + Open; + end; + SCreateCDS20(ADOQueryLabel10,ADOQueryLabel); + SInitCDSData20(ADOQueryLabel10,ADOQueryLabel); + finally + ADOQueryLabel10.EnableControls; + isLoad:=true; + //DoFilter(); + //OpenLabel(); + end; +end; +//////////////////////////////////////////////////////// + //ܣ򿪱ǩļ +//////////////////////////////////////////////////////// +procedure TfrmLabelListts.OpenLabel(); +begin + if ADOQueryLabel.IsEmpty then exit; + + with ADOQuery1 do + begin + close; + sql.clear; + sql.Add('select labelFile from P_Label'); + sql.Add('where LabelID='''+ADOQueryLabel.fieldbyname('LabelID').AsString+''' '); + open; + end; + + with RMGridReport1 do + begin + LoadFromBlobField(tblobfield(ADOQuery1.fieldbyname('labelFile'))); + //Preview :=RMPreview1; + ShowReport ; + end; +end; +procedure TfrmLabelListts.tv1FocusedRecordChanged( + Sender: TcxCustomGridTableView; APrevFocusedRecord, + AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); +begin + +end; +////////////////////////////////////////////////////////// + //ܣÿͻıǩǷѴ +///////////////////////////////////////////////////////// +function TfrmLabelListts.IsCheckCustOk():Boolean; +begin + try + with ADOQueryTmp do + begin + close; + sql.Clear ; + sql.Add('select count(customNO)as cnt from P_Label'); + sql.Add('where customNO='''+trim(customNO.TxtCode)+''''); + Open; + + if fieldByName('cnt').AsInteger>0 then + begin + Result:=false ; + application.MessageBox('ÿͻǩϢѴ!','Ϣ',0); + end + else + Result:=true; + end; + except + result:=false; + application.MessageBox('ÿͻǩϢǷѴʱ!','Ϣ',0); + end; +end; +///////////////////////////////////////////////////////////// + // +///////////////////////////////////////////////////////////// +function TfrmLabelListts.DeleteData():Boolean; +begin + try + with ADOQueryCmd do + begin + close; + sql.clear; + sql.Add('delete P_Label'); + sql.Add('where labelId='+ADOQueryLabel.fieldByName('LabelID').asString); + execSql; + end; + result:=true; + except + result:=false; + application.MessageBox('ɾʧ!','Ϣ',0); + end; +end; +procedure TfrmLabelListts.TdelClick(Sender: TObject); +begin + if ADOQueryLabel.IsEmpty then exit; + if application.MessageBox('ȷҪɾ˱ǩ','Ϣ',1)=2 then exit; + if DeleteData() then + begin + fchg:=true; + InitGrid(); + end; +end; +////////////////////////////////////////////////////////// + // +///////////////////////////////////////////////////////// +procedure TfrmLabelListts.SetWinStatus(); +begin + case fWinStatus of + 0: + begin + // ToolBar2.Visible :=false; + // tsave.Visible :=true; + customNo.Enabled :=true; + panel3.Enabled :=true; + end; + 1: + begin + // ToolBar2.Visible :=true; + // tsave.Visible :=false; + customNo.Enabled :=false; + panel3.Enabled :=false; + TOK.Visible:=false; + end; + 5: + begin + // ToolBar2.Visible :=false; + // tsave.Visible :=false; + panel1.Enabled :=false; + panel3.Enabled :=false; + end; + end ; +end; + +procedure TfrmLabelListts.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + {if fIsShowModal then + Application:=MainApplication ; } + Action:=caFree; +end; + +procedure TfrmLabelListts.FormDestroy(Sender: TObject); +begin + frmLabelListts:=nil; +end; + +procedure TfrmLabelListts.TOkClick(Sender: TObject); +begin + if ADOQueryLabel.IsEmpty then exit; + LBName:=Trim(ADOQueryLabel.fieldbyname('labelCaption').AsString); + ModalResult:=1; +end; + +procedure TfrmLabelListts.tv1DblClick(Sender: TObject); +begin + TOk.Click ; +end; + +procedure TfrmLabelListts.ToolButton1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmLabelListts.LabelTypeChange(Sender: TObject); +begin + DoFilter(); +end; + +procedure TfrmLabelListts.tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin +// if isLoad then +// OpenLabel(); +end; + +end. diff --git a/艾登贸易管理/U_LabelPrint.dfm b/艾登贸易管理/U_LabelPrint.dfm new file mode 100644 index 0000000..517e74c --- /dev/null +++ b/艾登贸易管理/U_LabelPrint.dfm @@ -0,0 +1,122 @@ +object frmLabelPrint: TfrmLabelPrint + Left = 345 + Top = 212 + BorderIcons = [biSystemMenu] + BorderStyle = bsDialog + Caption = #26631#31614#25171#21360 + ClientHeight = 166 + ClientWidth = 271 + Color = clBtnFace + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnCreate = FormCreate + PixelsPerInch = 96 + TextHeight = 12 + object Button1: TButton + Left = 72 + Top = 80 + Width = 73 + Height = 25 + Caption = #25171#21360 + TabOrder = 0 + OnClick = Button1Click + end + object Panel1: TPanel + Left = 32 + Top = 24 + Width = 193 + Height = 41 + BevelOuter = bvLowered + Caption = #27491#22312#21152#36733#25171#21360#20449#24687'...' + Font.Charset = ANSI_CHARSET + Font.Color = clBlue + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + end + object ADOQueryMain: TADOQuery + Connection = ADOConnection1 + LockType = ltReadOnly + CommandTimeout = 300 + Parameters = <> + Left = 144 + Top = 24 + end + object ADOConnection1: TADOConnection + LoginPrompt = False + Left = 192 + Top = 24 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 10 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 160 + Top = 120 + end + object RMGridReport1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + ShowProgress = False + 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 = RMDS_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 184 + Top = 72 + ReportData = {} + end + object RMBarCodeObject1: TRMBarCodeObject + Left = 128 + Top = 68 + end + object RMBMPExport1: TRMBMPExport + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + Left = 80 + Top = 120 + end + object RMDS_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryMain + Left = 170 + end + object ADOQueryTmp: TADOQuery + Connection = ADOConnection1 + LockType = ltReadOnly + Parameters = <> + Left = 56 + Top = 80 + end + object ADOQueryCust: TADOQuery + Connection = ADOConnection1 + LockType = ltReadOnly + CommandTimeout = 300 + Parameters = <> + Left = 152 + Top = 88 + end +end diff --git a/艾登贸易管理/U_LabelPrint.pas b/艾登贸易管理/U_LabelPrint.pas new file mode 100644 index 0000000..6f531f7 --- /dev/null +++ b/艾登贸易管理/U_LabelPrint.pas @@ -0,0 +1,143 @@ +unit U_LabelPrint; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, DB, ADODB, RM_e_Graphic, RM_e_bmp, RM_BarCode, RM_System, + RM_Common, RM_Class, RM_GridReport, RM_e_Xls, RM_Dataset, StdCtrls, + ExtCtrls; + +type + TfrmLabelPrint = class(TForm) + ADOQueryMain: TADOQuery; + ADOConnection1: TADOConnection; + RMXLSExport1: TRMXLSExport; + RMGridReport1: TRMGridReport; + RMBarCodeObject1: TRMBarCodeObject; + RMBMPExport1: TRMBMPExport; + RMDS_Main: TRMDBDataSet; + ADOQueryTmp: TADOQuery; + Button1: TButton; + ADOQueryCust: TADOQuery; + Panel1: TPanel; + procedure FormCreate(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + private + procedure InitDataSetDictionary(); +// procedure InitVarDictionary(); + procedure OpenLabel(); + public + fLabelId:string; //ǩ¼Id; + fKeyNo:string; // + fCustomNo:string; //ͻ + fLabelCopys:integer; //ӡ + fIsPreviewPrint:Boolean; + FFCDFlag:String; + procedure DoPrintLabel(); + end; + +var + frmLabelPrint: TfrmLabelPrint; + +implementation +uses + U_DataLink; +{$R *.dfm} +//////////////////////////////////////////////////////////////////// + //ӡǩ +//////////////////////////////////////////////////////////////////// +procedure TfrmLabelPrint.DoPrintLabel(); +begin + InitDataSetDictionary(); + OpenLabel(); +end; + +procedure TfrmLabelPrint.FormCreate(Sender: TObject); +begin + try + with ADOConnection1 do + begin + Connected:=false; + ConnectionString:=DConString; + Connected:=true; + end; + Except + application.MessageBox('ݿʧܣ','',mb_Ok+ MB_ICONERROR); + end; +end; +///////////////////////////////////////////////// + //ܣرǩ +///////////////////////////////////////////////// +procedure TfrmLabelPrint.InitDataSetDictionary(); +begin + try + with ADOQueryMain do + begin + close; + sql.Clear ; + sql.Add('select RTrim(AA.XJID) XJID,RTrim(Cast(AA.XJSJKZ as varchar(20))) XJSJKZ,RTrim(cast(Cast(AA.XJFK*10 as int) as varchar(20))) XJFK,RTrim(B.OrderNo)+'''+Trim(FFCDFlag)+''' OrderNo'); + sql.Add(',Rtrim(C.SWFBColor) SWFBColor, YLPB=dbo.F_Get_WFBOrder_SubStr(C.SubId,''YLPBSZ'')'); + sql.Add(',Rtrim(Cast(AA.XJlen as varchar(20))) XJlen,Rtrim(Cast(AA.XJMaoZ as varchar(20))) XJMaoZ'); + sql.Add(',Rtrim(Cast(AA.XJFree as varchar(20))) XJFree,Rtrim(Cast( Cast(AA.XJlen*AA.XJFK/100 as int) as varchar(20))) XJPFM'); + sql.Add(',Rtrim(Cast(Cast(C.SWFBKZ as int) as varchar(20))) SWFBKZ'); + sql.Add(',Rtrim(Cast(Cast(AA.XJJt as int) as varchar(20))) XJJt'); + sql.Add(',RTrim(B.LbEngName) LbEngName'); + sql.Add(',RTrim(C.SWFBCodeName) SWFBCodeName from WFB_XJJY AA '); + sql.add(' inner join WFB_MJJY A on AA.MJID=A.MJID') ; + sql.add(' inner join WFBOrder_Main B on A.MainId=B.MainId'); + sql.Add(' inner join WFBOrder_Sub C on A.SubId=C.SubId'); + sql.Add(' where AA.XJID='''+Trim(fKeyNo)+''''); + OPen; + end; + with RMGridReport1 do + begin + Dictionary.FieldAliases.Clear; + Dictionary.FieldAliases['RMDS_Main']:= 'ǩ'; + // Dictionary.FieldAliases['RMDS_Main."BarCodeNo"']:='ǩ'; + end; + except + application.MessageBox('رǩʱ!','Ϣ',0); + end; +end; +////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////// +procedure TfrmLabelPrint.OpenLabel(); +begin + with ADOQueryTmp do + begin + close; + sql.Clear ; + sql.Add('select labelfile from P_Label A'); + sql.Add('where labelId='''+fLabelId+''''); + Open; + if fieldbyname('labelFile').IsNull then + begin + application.MessageBox('δҵҪӡıǩϢ¼!','ʾϢ',0); + self.Close ; + exit; + end; + RMGridReport1.LoadFromBlobField(tblobfield(fieldbyname('labelFile'))); + // InitVarDictionary(); + //fIsPreviewPrint:=true; + if fIsPreviewPrint then + RMGridReport1.ShowReport + else + RMGridReport1.PrintReport ; + close; + end; + +end; +procedure TfrmLabelPrint.Button1Click(Sender: TObject); +begin + DoPrintLabel(); +end; + +procedure TfrmLabelPrint.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +end. diff --git a/艾登贸易管理/U_MJEdit.dfm b/艾登贸易管理/U_MJEdit.dfm new file mode 100644 index 0000000..7b1c71d --- /dev/null +++ b/艾登贸易管理/U_MJEdit.dfm @@ -0,0 +1,454 @@ +object frmMJEdit: TfrmMJEdit + Left = 204 + Top = 180 + Width = 870 + Height = 500 + Caption = #24067#21305#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 854 + Height = 30 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton3: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton3Click + end + object ToolButton2: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 58 + OnClick = ToolButton2Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + Caption = #20316#24223 + ImageIndex = 48 + OnClick = ToolButton4Click + end + object TBClose: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 30 + Width = 854 + Height = 91 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 25 + Top = 16 + Width = 52 + Height = 12 + Caption = #24067#21305#26465#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 33 + Top = 48 + Width = 7 + Height = 12 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label4: TLabel + Left = 459 + Top = 20 + Width = 24 + Height = 12 + Caption = #27611#37325 + end + object M: TLabel + Left = 428 + Top = 20 + Width = 6 + Height = 12 + Caption = 'M' + OnDblClick = MDblClick + end + object Label6: TLabel + Left = 343 + Top = 20 + Width = 24 + Height = 12 + Caption = #38271#24230 + end + object Ma: TLabel + Left = 296 + Top = 100 + Width = 6 + Height = 12 + Caption = 'M' + end + object Label7: TLabel + Left = 211 + Top = 100 + Width = 24 + Height = 12 + Caption = #21407#30721 + end + object Label5: TLabel + Left = 332 + Top = 104 + Width = 6 + Height = 12 + Caption = 'M' + end + object Label8: TLabel + Left = 563 + Top = 20 + Width = 24 + Height = 12 + Caption = #24133#23485 + end + object Label9: TLabel + Left = 644 + Top = 20 + Width = 12 + Height = 12 + Caption = 'cm' + end + object Label10: TLabel + Left = 540 + Top = 20 + Width = 12 + Height = 12 + Caption = 'Kg' + end + object Label3: TLabel + Left = 563 + Top = 44 + Width = 24 + Height = 12 + Caption = #20811#37325 + end + object Label11: TLabel + Left = 644 + Top = 44 + Width = 24 + Height = 12 + Caption = 'g/'#13217 + end + object Label13: TLabel + Left = 343 + Top = 48 + Width = 24 + Height = 12 + Caption = #36192#36865 + end + object Label12: TLabel + Left = 459 + Top = 48 + Width = 24 + Height = 12 + Caption = #20928#37325 + end + object Label14: TLabel + Left = 540 + Top = 48 + Width = 12 + Height = 12 + Caption = 'Kg' + end + object Label15: TLabel + Left = 231 + Top = 20 + Width = 24 + Height = 12 + Caption = #21367#21495 + end + object Label16: TLabel + Left = 231 + Top = 48 + Width = 24 + Height = 12 + Caption = #32568#21495 + end + object Label17: TLabel + Left = 231 + Top = 72 + Width = 24 + Height = 12 + Caption = #29255#25968 + end + object MJID: TEdit + Left = 80 + Top = 10 + Width = 110 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + OnKeyPress = MJIDKeyPress + end + object MJMaoZ: TEdit + Left = 484 + Top = 16 + Width = 54 + Height = 20 + TabOrder = 1 + end + object MJLen: TEdit + Left = 368 + Top = 16 + Width = 54 + Height = 20 + TabOrder = 2 + end + object RadioGroup1: TRadioGroup + Left = 680 + Top = 3 + Width = 153 + Height = 58 + Columns = 3 + ItemIndex = 0 + Items.Strings = ( + #27491#21697 + #27425#21697) + TabOrder = 3 + end + object MJQty1: TEdit + Left = 236 + Top = 100 + Width = 54 + Height = 20 + TabOrder = 4 + end + object MJFK: TEdit + Left = 588 + Top = 16 + Width = 54 + Height = 20 + TabOrder = 5 + end + object MJSJKZ: TEdit + Left = 588 + Top = 40 + Width = 54 + Height = 20 + TabOrder = 6 + end + object MJQty2: TEdit + Left = 368 + Top = 44 + Width = 54 + Height = 20 + TabOrder = 7 + end + object MJQty4: TEdit + Left = 484 + Top = 44 + Width = 54 + Height = 20 + TabOrder = 8 + end + object MJXH: TEdit + Left = 256 + Top = 16 + Width = 54 + Height = 20 + TabOrder = 9 + end + object MJStr4: TEdit + Left = 256 + Top = 44 + Width = 54 + Height = 20 + TabOrder = 10 + end + object MJQty5: TEdit + Left = 256 + Top = 68 + Width = 54 + Height = 20 + TabOrder = 11 + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 121 + Width = 854 + Height = 341 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = Tv2CDQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_TradeManage.TextSHuangSe + object tv2CDType: TcxGridDBColumn + Caption = #30133#28857#21517#31216 + DataBinding.FieldName = 'CDName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = tv2CDTypePropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = DataLink_TradeManage.Default + Width = 144 + end + object tv2CDWZ: TcxGridDBColumn + Caption = #20301#32622#36215 + DataBinding.FieldName = 'CDBeg' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = tv2CDWZPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = DataLink_TradeManage.Default + Width = 96 + end + object v2Column2: TcxGridDBColumn + Caption = #20301#32622#27490 + DataBinding.FieldName = 'CDend' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.Default + Width = 93 + end + object Tv2CDQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'CDQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = DataLink_TradeManage.Default + Width = 93 + end + object Tv2CDReason: TcxGridDBColumn + Caption = #21407#22240 + DataBinding.FieldName = 'CDReason' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 131 + end + object v2Column1: TcxGridDBColumn + Caption = #25187#20998 + DataBinding.FieldName = 'koufenQty' + HeaderAlignmentHorz = taCenter + Width = 116 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOTmp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 832 + Top = 72 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 200 + end + object ADOCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 832 + Top = 40 + end + object DataSource1: TDataSource + DataSet = Order_MJ + Left = 528 + Top = 200 + end + object Order_MJ: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 200 + end +end diff --git a/艾登贸易管理/U_MJEdit.pas b/艾登贸易管理/U_MJEdit.pas new file mode 100644 index 0000000..69f0d78 --- /dev/null +++ b/艾登贸易管理/U_MJEdit.pas @@ -0,0 +1,595 @@ +unit U_MJEdit; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxTextEdit, DBClient, ADODB, + cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, + cxClasses, cxControls, cxGridCustomView, cxGrid, StdCtrls, ExtCtrls, + ComCtrls, ToolWin, cxButtonEdit; + +type + TfrmMJEdit = class(TForm) + ToolBar1: TToolBar; + ToolButton2: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + MJID: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + tv2CDType: TcxGridDBColumn; + tv2CDWZ: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + Tv2CDQty: TcxGridDBColumn; + Tv2CDReason: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ADOTmp: TADOQuery; + ADOQueryMain: TADOQuery; + ADOCmd: TADOQuery; + DataSource1: TDataSource; + Order_MJ: TClientDataSet; + ToolButton1: TToolButton; + ToolButton3: TToolButton; + Label2: TLabel; + MJMaoZ: TEdit; + Label4: TLabel; + M: TLabel; + Label6: TLabel; + MJLen: TEdit; + RadioGroup1: TRadioGroup; + Ma: TLabel; + Label7: TLabel; + MJQty1: TEdit; + Label5: TLabel; + Label8: TLabel; + MJFK: TEdit; + Label9: TLabel; + Label10: TLabel; + Label3: TLabel; + Label11: TLabel; + MJSJKZ: TEdit; + ToolButton4: TToolButton; + Label13: TLabel; + MJQty2: TEdit; + Label12: TLabel; + Label14: TLabel; + MJQty4: TEdit; + MJXH: TEdit; + Label15: TLabel; + Label16: TLabel; + MJStr4: TEdit; + v2Column1: TcxGridDBColumn; + MJQty5: TEdit; + Label17: TLabel; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure MJIDKeyPress(Sender: TObject; var Key: Char); + procedure tv2CDTypePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure tv2CDWZPropertiesEditValueChanged(Sender: TObject); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure MDblClick(Sender: TObject); + private + { Private declarations } + function SaveData():Boolean; + public + { Public declarations } + end; + +var + frmMJEdit: TfrmMJEdit; + +implementation +uses + U_Fun,U_ZDYHelp,U_DataLink; + +{$R *.dfm} + +procedure TfrmMJEdit.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmMJEdit.FormDestroy(Sender: TObject); +begin + frmMJEdit:=nil; +end; + +procedure TfrmMJEdit.MJIDKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + with ADOTmp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,AOrddefstr3=(select AOrddefstr3 from JYOrder_Sub_AnPai B where B.APID=A.APID), '); + sql.Add('AOrddefstr2=(select AOrddefstr2 from JYOrder_Sub_AnPai B where B.APID=A.APID) from WFB_MJJY A'); + sql.Add(' where A.MJID='''+Trim(MJID.Text)+''''); + Open; + end; + if ADOTmp.IsEmpty then + begin + MJID.Text:=''; + Label2.Caption:=''; + Label2.Visible:=False; + Application.MessageBox('!','ʾ',0); + Exit; + end; + MJXH.Text:=Trim(ADOTmp.fieldbyname('MJXH').AsString); + MJstr4.Text:=Trim(ADOTmp.fieldbyname('MJstr4').AsString); + MJMaoZ.Text:=Trim(ADOTmp.fieldbyname('MJMaoZ').AsString); + MJLen.Text:=Trim(ADOTmp.fieldbyname('MJLen').AsString); + MJQty1.Text:=Trim(ADOTmp.fieldbyname('MJQty1').AsString); + MJQty2.Text:=Trim(ADOTmp.fieldbyname('MJQty2').AsString); + MJQty4.Text:=Trim(ADOTmp.fieldbyname('MJQty4').AsString); + MJQty5.Text:=Trim(ADOTmp.fieldbyname('MJQty5').AsString); + MJFK.Text:=Trim(ADOTmp.fieldbyname('MJFK').AsString); + MJSJKZ.Text:=Trim(ADOTmp.fieldbyname('MJSJKZ').AsString); + M.Caption:=Trim(Trim(ADOTmp.fieldbyname('MJTypeOther').AsString)); + Ma.Caption:=Trim(Trim(ADOTmp.fieldbyname('MJStr1').AsString)); + { if Trim(m.Caption)='' then + begin + m.Caption:=Trim(ADOTmp.fieldbyname('AOrddefstr3').AsString); + end; + if Trim(Ma.Caption)='' then + begin + Ma.Caption:=Trim(ADOTmp.fieldbyname('AOrddefstr2').AsString); + end; } + if Trim(Trim(ADOTmp.fieldbyname('MJType').AsString))='Ʒ' then + begin + RadioGroup1.ItemIndex:=0 + end else + if Trim(Trim(ADOTmp.fieldbyname('MJType').AsString))='Ʒ' then + begin + RadioGroup1.ItemIndex:=1; + end else + if Trim(Trim(ADOTmp.fieldbyname('MJType').AsString))='' then + begin + RadioGroup1.ItemIndex:=2; + end; + with ADOTmp do + begin + Close; + sql.Clear; + SQL.Add('select * from WFB_MJJY_CD A where A.MJID='''+Trim(MJID.Text)+''''); + Open; + end; + Label2.Caption:=Trim(MJID.Text); + Label2.Visible:=True; + MJID.Text:=''; + SCreateCDS20(ADOTmp,Order_MJ); + SInitCDSData20(ADOTmp,Order_MJ); + + end; +end; + +procedure TfrmMJEdit.tv2CDTypePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WFBCD'; + flagname:='õ'; + if ShowModal=1 then + begin + Self.Order_MJ.Edit; + Self.Order_MJ.FieldByName('CDName').value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmMJEdit.tv2CDWZPropertiesEditValueChanged(Sender: TObject); +var + mvalue,CDBeg,CDEnd:string; + FFReal:Double; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + with Order_MJ do + begin + Edit; + FieldByName('CDBeg').Value:=mvalue; + Post; + end; + CDBeg:=Trim(Order_MJ.fieldbyname('CDBeg').AsString); + CDEnd:=Trim(Order_MJ.fieldbyname('CDEnd').AsString); + if (Trim(CDBeg)<>'') and (Trim(CDEnd)<>'') then + begin + if TryStrToFloat(CDBeg,FFReal) and TryStrToFloat(CDBeg,FFReal) then + begin + if StrToFloat(CDEnd)'') and (Trim(CDEnd)<>'') then + begin + if TryStrToFloat(CDBeg,FFReal) and TryStrToFloat(CDBeg,FFReal) then + begin + if StrToFloat(CDEnd)'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFB_MJJY_CD where MCID='''+Trim(Order_MJ.fieldbyname('MCID').AsString)+''''); + ExecSQL; + end; + end; + Order_MJ.Delete; +end; +function TfrmMJEdit.SaveData():Boolean; +var + maxno:String; + FFreal:Double; +begin + try + ADOCmd.Connection.BeginTrans; + ///õ + with Order_MJ do + begin + First; + while not Eof do + begin + if Trim(Order_MJ.fieldbyname('MCID').AsString)='' then + begin + if GetLSNo(ADOTmp,maxno,'MC','WFB_MJJY_CD',5,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_MJ.fieldbyname('MCID').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_MJJY_CD '); + sql.Add(' where MCID='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_MJ.fieldbyname('MCID').AsString)='' then + Append + else + Edit; + FieldByName('MJId').Value:=Trim(Label2.Caption); + FieldByName('MCID').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,Tv2,Order_MJ,'WFB_MJJY_CD',0); + IF trim(Order_MJ.fieldbyname('CDName').AsString)='' then + FieldByName('koufenQty').Value:=0 + else + FieldByName('koufenQty').Value:=Order_MJ.fieldbyname('koufenQty').AsFloat; + Post; + end; + + Order_MJ.Edit; + Order_MJ.FieldByName('MCID').Value:=Trim(maxno); + Order_MJ.FieldByName('MJID').Value:=Trim(Label2.Caption); + Next; + end; + end; + if Trim(MJMaoZ.Text)<>'' then + begin + if TryStrToFloat(MJMaoZ.Text,FFreal)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('Ƿ!','ʾ',0); + Exit; + end; + end; + if Trim(MJLen.Text)<>'' then + begin + if TryStrToFloat(MJLen.Text,FFreal)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȷǷ!','ʾ',0); + Exit; + end; + end; + if Trim(MJSJKZ.Text)<>'' then + begin + if TryStrToFloat(MJSJKZ.Text,FFreal)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('طǷ!','ʾ',0); + Exit; + end; + end; + if Trim(MJQty2.Text)<>'' then + begin + if TryStrToFloat(MJQty2.Text,FFreal)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('Ƿ!','ʾ',0); + Exit; + end; + end; + if Trim(MJQty4.Text)<>'' then + begin + if TryStrToFloat(MJQty4.Text,FFreal)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('طǷ!','ʾ',0); + Exit; + end; + end; + if Trim(MJQty5.Text)<>'' then + begin + if TryStrToFloat(MJQty5.Text,FFreal)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ƬǷ!','ʾ',0); + Exit; + end; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFB_MJJY Set MJTypeOther='''+Trim(M.Caption)+''''); + sql.Add(',MJStr1='''+Trim(Ma.Caption)+''''); + sql.Add(',MJStr4='''+Trim(MJStr4.Text)+''''); + sql.Add(',MJXH='''+Trim(MJXH.Text)+''''); + if Trim(MJLen.Text)<>'' then + begin + sql.Add(',MJLen='+Trim(MJLen.Text)); + end else + begin + sql.Add(',MJLen=0'); + end; + if Trim(MJQty1.Text)<>'' then + begin + sql.Add(',MJQty1='+Trim(MJQty1.Text)); + end else + begin + sql.Add(',MJQty1=0'); + end; + if Trim(MJQty2.Text)<>'' then + begin + sql.Add(',MJQty2='+Trim(MJQty2.Text)); + end else + begin + sql.Add(',MJQty2=0'); + end; + if Trim(MJFK.Text)<>'' then + begin + sql.Add(',MJFK='+Trim(MJFK.Text)); + end else + begin + sql.Add(',MJFK=0'); + end; + if Trim(MJMaoZ.Text)<>'' then + begin + sql.Add(',MJMaoZ='+Trim(MJMaoZ.Text)); + end else + begin + sql.Add(',MJMaoZ=0'); + end; + if Trim(MJSJKZ.Text)<>'' then + begin + sql.Add(',MJSJKZ='+Trim(MJSJKZ.Text)); + end else + begin + sql.Add(',MJSJKZ=0'); + end; + if Trim(MJQty4.Text)<>'' then + begin + sql.Add(',MJQty4='+Trim(MJQty4.Text)); + end else + begin + sql.Add(',MJQty4=0'); + end; + if Trim(MJQty5.Text)<>'' then + begin + sql.Add(',MJQty5='+Trim(MJQty5.Text)); + end else + begin + sql.Add(',MJQty5=0'); + end; + if RadioGroup1.ItemIndex=0 then + begin + sql.Add(',MJType=''Ʒ'' '); + end else + if RadioGroup1.ItemIndex=1 then + begin + sql.Add(',MJType=''Ʒ'' '); + end else + if RadioGroup1.ItemIndex=2 then + begin + sql.Add(',MJType=''ƴ'' '); + end; + sql.Add(' where MJID='''+Trim(Label2.Caption)+''''); + + sql.Add('UPdate CK_BanCP_KC Set KCQtyUnit='''+Trim(M.Caption)+''''); + if Trim(MJLen.Text)<>'' then + begin + sql.Add(',KCQty='+Trim(MJLen.Text)); + end else + begin + sql.Add(',KCQty=0'); + end; + if Trim(MJMaoZ.Text)<>'' then + begin + sql.Add(',KCKGQty='+Trim(MJMaoZ.Text)); + end else + begin + sql.Add(',KCKGQty=0'); + end; + sql.Add(' where MJID='''+Trim(Label2.Caption)+''' and KCQty>0'); + + sql.Add('UPdate CK_BanCP_CR Set QtyUnit='''+Trim(M.Caption)+''''); + if Trim(MJLen.Text)<>'' then + begin + sql.Add(',Qty='+Trim(MJLen.Text)); + end else + begin + sql.Add(',Qty=0'); + end; + if Trim(MJMaoZ.Text)<>'' then + begin + sql.Add(',KGQty='+Trim(MJMaoZ.Text)); + end else + begin + sql.Add(',KGQty=0'); + end; + if RadioGroup1.ItemIndex=0 then + begin + sql.Add(',CPType=''Ʒ'' '); + end else + if RadioGroup1.ItemIndex=1 then + begin + sql.Add(',CPType=''Ʒ'' '); + end else + if RadioGroup1.ItemIndex=2 then + begin + sql.Add(',CPType=''ƴ'' '); + end; + sql.Add(' where MJID='''+Trim(Label2.Caption)+''''); + ExecSQL; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TfrmMJEdit.ToolButton2Click(Sender: TObject); +begin + if Trim(Label2.Caption)='' then Exit; + if SaveData() then + begin + Application.MessageBox('ɹ!','ʾ',0); + Exit; + end; +end; + +procedure TfrmMJEdit.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ƥ',Tv2,'Ⱦ'); +end; + +procedure TfrmMJEdit.FormShow(Sender: TObject); +begin + ReadCxGrid('ƥ',Tv2,'Ⱦ'); +end; + +procedure TfrmMJEdit.ToolButton4Click(Sender: TObject); +begin + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where MJID='''+Trim(Label2.Caption)+''''); + Open; + end; + if ADOTmp.IsEmpty=False then + begin + Application.MessageBox('Ѳݲɾ!','ʾ',0); + Exit; + end else + begin + if Application.MessageBox('ȷҪϺݲָܻ','ʾ',32+4)=IDYES then + begin + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFB_MJJY where MJID='''+Trim(Label2.Caption)+''''); + sql.Add('delete WFB_MJJY_CD where MJID='''+Trim(Label2.Caption)+''''); + ExecSQL; + end; + Label2.Caption:=''; + end; + end; +end; + +procedure TfrmMJEdit.MDblClick(Sender: TObject); +begin + IF trim(M.Caption)='M' then M.Caption:='Y' + ELSE + M.Caption:='M'; +end; + +end. diff --git a/艾登贸易管理/U_MJManage.dfm b/艾登贸易管理/U_MJManage.dfm new file mode 100644 index 0000000..2deb5de --- /dev/null +++ b/艾登贸易管理/U_MJManage.dfm @@ -0,0 +1,1192 @@ +object frmMJManage: TfrmMJManage + Left = 65 + Top = -15 + Width = 1137 + Height = 730 + Caption = #27597#21367#30331#35760 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #40657#20307 + Font.Style = [fsBold] + OldCreateOrder = False + OnClick = FormClick + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 19 + object Panel1: TPanel + Left = 0 + Top = 30 + Width = 1129 + Height = 67 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 0 + object Label1: TLabel + Left = 143 + Top = 23 + Width = 80 + Height = 19 + Caption = #25195#25551#20837#21475 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -19 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 519 + Top = 23 + Width = 80 + Height = 19 + Caption = #25163#24037#24405#20837 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object MainId: TEdit + Left = 224 + Top = 21 + Width = 241 + Height = 27 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnKeyPress = MainIdKeyPress + end + object Edit1: TEdit + Left = 607 + Top = 21 + Width = 241 + Height = 27 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + end + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1129 + Height = 30 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_WFBOrder.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 1 + object TBCD: TToolButton + Left = 0 + Top = 0 + Caption = #30133#28857#31649#29702 + ImageIndex = 132 + OnClick = TBCDClick + end + object TBClose: TToolButton + Left = 83 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel2: TPanel + Left = 0 + Top = 201 + Width = 388 + Height = 492 + Align = alLeft + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 2 + object Panel3: TPanel + Left = 2 + Top = 2 + Width = 384 + Height = 116 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 0 + object Button1: TButton + Left = 0 + Top = 1 + Width = 65 + Height = 57 + Caption = '0' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnClick = Button1Click + end + object Button2: TButton + Left = 64 + Top = 1 + Width = 65 + Height = 57 + Caption = '1' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button2Click + end + object Button3: TButton + Left = 128 + Top = 1 + Width = 65 + Height = 57 + Caption = '2' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Button3Click + end + object Button4: TButton + Left = 192 + Top = 1 + Width = 65 + Height = 57 + Caption = '3' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = Button4Click + end + object Button5: TButton + Left = 256 + Top = 1 + Width = 65 + Height = 57 + Caption = '4' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + OnClick = Button5Click + end + object Button6: TButton + Left = 320 + Top = 1 + Width = 65 + Height = 57 + Caption = '5' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + OnClick = Button6Click + end + object Button7: TButton + Left = 0 + Top = 57 + Width = 65 + Height = 57 + Caption = '6' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + OnClick = Button7Click + end + object Button8: TButton + Left = 64 + Top = 57 + Width = 65 + Height = 57 + Caption = '7' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + OnClick = Button8Click + end + object Button9: TButton + Left = 128 + Top = 57 + Width = 65 + Height = 57 + Caption = '8' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + OnClick = Button9Click + end + object Button10: TButton + Left = 192 + Top = 57 + Width = 65 + Height = 57 + Caption = '9' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + OnClick = Button10Click + end + object Button11: TButton + Left = 256 + Top = 57 + Width = 65 + Height = 57 + Caption = '.' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -48 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + OnClick = Button11Click + end + object Button12: TButton + Left = 320 + Top = 57 + Width = 65 + Height = 57 + Caption = #8592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -53 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + OnClick = Button12Click + end + end + object Panel4: TPanel + Left = 2 + Top = 118 + Width = 384 + Height = 339 + Align = alTop + TabOrder = 1 + object Button13: TButton + Left = 0 + Top = 1 + Width = 65 + Height = 57 + TabOrder = 0 + Visible = False + OnClick = Button13Click + end + object Button14: TButton + Left = 64 + Top = 1 + Width = 65 + Height = 57 + TabOrder = 1 + Visible = False + OnClick = Button14Click + end + object Button15: TButton + Left = 128 + Top = 1 + Width = 65 + Height = 57 + TabOrder = 2 + Visible = False + OnClick = Button15Click + end + object Button16: TButton + Left = 192 + Top = 1 + Width = 65 + Height = 57 + TabOrder = 3 + Visible = False + OnClick = Button16Click + end + object Button17: TButton + Left = 256 + Top = 1 + Width = 65 + Height = 57 + TabOrder = 4 + Visible = False + OnClick = Button17Click + end + object Button18: TButton + Left = 320 + Top = 1 + Width = 65 + Height = 57 + TabOrder = 5 + Visible = False + OnClick = Button18Click + end + object Button19: TButton + Left = 0 + Top = 57 + Width = 65 + Height = 57 + TabOrder = 6 + Visible = False + OnClick = Button19Click + end + object Button20: TButton + Left = 64 + Top = 57 + Width = 65 + Height = 57 + TabOrder = 7 + Visible = False + OnClick = Button20Click + end + object Button21: TButton + Left = 128 + Top = 57 + Width = 65 + Height = 57 + TabOrder = 8 + Visible = False + OnClick = Button21Click + end + object Button22: TButton + Left = 192 + Top = 57 + Width = 65 + Height = 57 + TabOrder = 9 + Visible = False + OnClick = Button22Click + end + object Button23: TButton + Left = 256 + Top = 57 + Width = 65 + Height = 57 + TabOrder = 10 + Visible = False + OnClick = Button23Click + end + object Button24: TButton + Left = 320 + Top = 57 + Width = 65 + Height = 57 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + Visible = False + OnClick = Button24Click + end + object Button25: TButton + Left = 0 + Top = 113 + Width = 65 + Height = 57 + TabOrder = 12 + Visible = False + OnClick = Button25Click + end + object Button26: TButton + Left = 64 + Top = 113 + Width = 65 + Height = 57 + TabOrder = 13 + Visible = False + OnClick = Button26Click + end + object Button27: TButton + Left = 128 + Top = 113 + Width = 65 + Height = 57 + TabOrder = 14 + Visible = False + OnClick = Button27Click + end + object Button28: TButton + Left = 192 + Top = 113 + Width = 65 + Height = 57 + TabOrder = 15 + Visible = False + OnClick = Button28Click + end + object Button29: TButton + Left = 256 + Top = 113 + Width = 65 + Height = 57 + TabOrder = 16 + Visible = False + OnClick = Button29Click + end + object Button30: TButton + Left = 320 + Top = 113 + Width = 65 + Height = 57 + TabOrder = 17 + Visible = False + OnClick = Button30Click + end + object Button31: TButton + Left = 0 + Top = 169 + Width = 65 + Height = 57 + TabOrder = 18 + Visible = False + OnClick = Button31Click + end + object Button32: TButton + Left = 64 + Top = 169 + Width = 65 + Height = 57 + TabOrder = 19 + Visible = False + OnClick = Button32Click + end + object Button33: TButton + Left = 128 + Top = 169 + Width = 65 + Height = 57 + TabOrder = 20 + Visible = False + OnClick = Button33Click + end + object Button34: TButton + Left = 192 + Top = 169 + Width = 65 + Height = 57 + TabOrder = 21 + Visible = False + OnClick = Button34Click + end + object Button35: TButton + Left = 256 + Top = 169 + Width = 65 + Height = 57 + TabOrder = 22 + Visible = False + OnClick = Button35Click + end + object Button36: TButton + Left = 320 + Top = 169 + Width = 65 + Height = 57 + TabOrder = 23 + Visible = False + OnClick = Button36Click + end + object Button39: TButton + Left = 0 + Top = 225 + Width = 65 + Height = 57 + TabOrder = 24 + Visible = False + OnClick = Button39Click + end + object Button40: TButton + Left = 64 + Top = 225 + Width = 65 + Height = 57 + TabOrder = 25 + Visible = False + OnClick = Button40Click + end + object Button41: TButton + Left = 128 + Top = 225 + Width = 65 + Height = 57 + TabOrder = 26 + Visible = False + OnClick = Button41Click + end + object Button42: TButton + Left = 192 + Top = 225 + Width = 65 + Height = 57 + TabOrder = 27 + Visible = False + OnClick = Button42Click + end + object Button43: TButton + Left = 256 + Top = 225 + Width = 65 + Height = 57 + TabOrder = 28 + Visible = False + OnClick = Button43Click + end + object Button44: TButton + Left = 320 + Top = 225 + Width = 65 + Height = 57 + TabOrder = 29 + Visible = False + OnClick = Button44Click + end + object Button45: TButton + Left = 0 + Top = 281 + Width = 65 + Height = 57 + TabOrder = 30 + Visible = False + OnClick = Button45Click + end + object Button46: TButton + Left = 64 + Top = 281 + Width = 65 + Height = 57 + TabOrder = 31 + Visible = False + OnClick = Button46Click + end + object Button47: TButton + Left = 128 + Top = 281 + Width = 65 + Height = 57 + TabOrder = 32 + Visible = False + OnClick = Button47Click + end + object Button48: TButton + Left = 192 + Top = 281 + Width = 65 + Height = 57 + TabOrder = 33 + Visible = False + OnClick = Button48Click + end + object Button49: TButton + Left = 256 + Top = 281 + Width = 65 + Height = 57 + TabOrder = 34 + Visible = False + OnClick = Button49Click + end + object Button50: TButton + Left = 320 + Top = 281 + Width = 65 + Height = 57 + TabOrder = 35 + Visible = False + OnClick = Button50Click + end + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 97 + Width = 1129 + Height = 104 + Align = alTop + TabOrder = 3 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv1CellClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Header = cxStyle1 + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#32534#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 80 + end + object v1Column2: TcxGridDBColumn + Caption = #20195#21495 + DataBinding.FieldName = 'WFBCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 140 + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'WFBFK' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 78 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'WFBKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 93 + end + object v1OrderDate: TcxGridDBColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrderDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 114 + end + object v1Column6: TcxGridDBColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 57 + end + object v1Column1: TcxGridDBColumn + Caption = #20811#37325#19978#38480 + DataBinding.FieldName = 'MJKZD' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle2 + Width = 80 + end + object v1Column3: TcxGridDBColumn + Caption = #20811#37325#19979#38480 + DataBinding.FieldName = 'MJKZX' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle2 + Width = 74 + end + object v1Note: TcxGridDBColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 315 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGrid2: TcxGrid + Left = 388 + Top = 201 + Width = 253 + Height = 492 + Align = alLeft + TabOrder = 4 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv2CellClick + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column1 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = cxStyle1 + object tv2CDType: TcxGridDBColumn + Caption = #30133#28857#31181#31867 + DataBinding.FieldName = 'CDName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 88 + end + object tv2CDWZ: TcxGridDBColumn + Caption = #20301#32622 + DataBinding.FieldName = 'CDBeg' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 69 + end + object Tv2CDQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'CDQtyS' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = Tv2CDQtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 87 + end + object Tv2CDReason: TcxGridDBColumn + Caption = #21407#22240 + DataBinding.FieldName = 'CDReason' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 131 + end + object v2Column1: TcxGridDBColumn + DataBinding.FieldName = 'CDQty' + Visible = False + Width = 55 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGrid3: TcxGrid + Left = 949 + Top = 201 + Width = 180 + Height = 492 + Align = alClient + TabOrder = 5 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv3CellClick + DataController.DataSource = DataSource3 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = cxStyle1 + object cxGridDBColumn1: TcxGridDBColumn + Caption = #24050#32463#30331#35760#30340#27597#21367 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 155 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + object Panel5: TPanel + Left = 641 + Top = 201 + Width = 308 + Height = 492 + Align = alLeft + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 6 + object Label3: TLabel + Left = 49 + Top = 27 + Width = 40 + Height = 19 + Caption = #27611#37325 + end + object Label4: TLabel + Left = 49 + Top = 70 + Width = 40 + Height = 19 + Caption = #38271#24230 + end + object Label5: TLabel + Left = 49 + Top = 114 + Width = 40 + Height = 19 + Caption = #24133#23485 + end + object Label6: TLabel + Left = 49 + Top = 157 + Width = 40 + Height = 19 + Caption = #29677#32452 + end + object Label7: TLabel + Left = 223 + Top = 69 + Width = 31 + Height = 19 + Caption = #65306'M' + end + object Label8: TLabel + Left = 223 + Top = 27 + Width = 42 + Height = 19 + Caption = #65306'Kg' + end + object Label9: TLabel + Left = 223 + Top = 110 + Width = 42 + Height = 19 + Caption = #65306'CM' + end + object Label10: TLabel + Left = 29 + Top = 313 + Width = 80 + Height = 19 + Caption = #23454#38469#20811#37325 + end + object Label11: TLabel + Left = 242 + Top = 312 + Width = 62 + Height = 19 + Caption = #65306'g/'#13217 + end + object Label12: TLabel + Left = 29 + Top = 274 + Width = 80 + Height = 19 + Caption = #30133#28857#25968#37327 + end + object Label13: TLabel + Left = 242 + Top = 272 + Width = 31 + Height = 19 + Caption = #65306'M' + end + object Label14: TLabel + Left = 40 + Top = 368 + Width = 11 + Height = 19 + Visible = False + end + object MJMaoZ: TEdit + Left = 96 + Top = 24 + Width = 121 + Height = 27 + ReadOnly = True + TabOrder = 0 + OnChange = MJMaoZChange + OnClick = MJMaoZClick + end + object MJLen: TEdit + Left = 96 + Top = 67 + Width = 121 + Height = 27 + ReadOnly = True + TabOrder = 1 + OnChange = MJMaoZChange + OnClick = MJLenClick + end + object MJFK: TEdit + Left = 96 + Top = 109 + Width = 121 + Height = 27 + ReadOnly = True + TabOrder = 2 + OnChange = MJMaoZChange + OnClick = MJFKClick + end + object MJBanZu: TEdit + Left = 96 + Top = 152 + Width = 121 + Height = 27 + ReadOnly = True + TabOrder = 3 + OnClick = MJBanZuClick + end + object BTPrint: TButton + Left = 175 + Top = 208 + Width = 89 + Height = 25 + Caption = #25171#21360#26465#30721 + TabOrder = 4 + OnClick = BTPrintClick + end + object Button38: TButton + Left = 223 + Top = 152 + Width = 41 + Height = 28 + Caption = #65294#65294#65294 + Enabled = False + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + OnClick = Button38Click + end + object MJSJKZ: TEdit + Left = 113 + Top = 310 + Width = 121 + Height = 27 + ReadOnly = True + TabOrder = 6 + OnClick = MJSJKZClick + end + object CDQty: TEdit + Tag = 99999 + Left = 113 + Top = 272 + Width = 121 + Height = 27 + ReadOnly = True + TabOrder = 7 + OnClick = MJSJKZClick + end + object BTAdd: TButton + Left = 49 + Top = 208 + Width = 47 + Height = 25 + Caption = #26032#22686 + TabOrder = 8 + OnClick = BTAddClick + end + object BTEdit: TButton + Left = 111 + Top = 208 + Width = 47 + Height = 25 + Caption = #20462#25913 + TabOrder = 9 + Visible = False + OnClick = BTEditClick + end + end + object cxStyleRepository1: TcxStyleRepository + Top = 56 + object cxStyle1: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle2: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Pitch = fpFixed + Font.Style = [fsBold] + TextColor = clDefault + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 296 + Top = 128 + end + object DataSource1: TDataSource + DataSet = Order_MJ + Left = 328 + Top = 128 + end + object Order_MJ: TClientDataSet + Aggregates = <> + Params = <> + Left = 360 + Top = 128 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 400 + Top = 128 + end + object ADOCmd: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + Parameters = <> + Left = 432 + Top = 128 + end + object ADOTmp: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 464 + Top = 128 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 536 + Top = 128 + end + object RM2: 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 496 + Top = 128 + ReportData = {} + end + object DataSource2: TDataSource + DataSet = CDS_MJCD + Left = 448 + Top = 264 + end + object CDS_MJCD: TClientDataSet + Aggregates = <> + Params = <> + Left = 480 + Top = 264 + end + object DataSource3: TDataSource + DataSet = CDS_MJID + Left = 1032 + Top = 256 + end + object CDS_MJID: TClientDataSet + Aggregates = <> + Params = <> + Left = 1000 + Top = 256 + end + object Timer1: TTimer + Interval = 100 + OnTimer = Timer1Timer + Left = 656 + Top = 392 + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 688 + Top = 152 + end +end diff --git a/艾登贸易管理/U_MJManage.pas b/艾登贸易管理/U_MJManage.pas new file mode 100644 index 0000000..5420861 --- /dev/null +++ b/艾登贸易管理/U_MJManage.pas @@ -0,0 +1,1086 @@ +unit U_MJManage; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxCalendar, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, RM_Common, RM_Class, RM_GridReport, + RM_System, RM_Dataset, ADODB, DBClient, cxGridCustomPopupMenu, + cxGridPopupMenu, ExtCtrls, ComCtrls, ToolWin, cxTextEdit, Buttons; +{function CommOpen(fhandle:hwnd;sCommName:PAnsiChar; + IntTime:integer):integer;stdcall;external 'JCYData.DLL'; +function CommClose(sCommName:PAnsiChar):integer;stdcall;external 'JCYData.DLL';} + + +type + TfrmMJManage = class(TForm) + Panel1: TPanel; + MainId: TEdit; + Label1: TLabel; + Label2: TLabel; + Edit1: TEdit; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxGridPopupMenu1: TcxGridPopupMenu; + DataSource1: TDataSource; + Order_MJ: TClientDataSet; + ADOQueryMain: TADOQuery; + ADOCmd: TADOQuery; + ADOTmp: TADOQuery; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + ToolBar1: TToolBar; + TBClose: TToolButton; + Panel2: TPanel; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1OrderDate: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + tv2CDType: TcxGridDBColumn; + tv2CDWZ: TcxGridDBColumn; + Tv2CDQty: TcxGridDBColumn; + Tv2CDReason: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + TBCD: TToolButton; + Panel3: TPanel; + Button1: TButton; + Button2: TButton; + Button3: TButton; + Button4: TButton; + Button5: TButton; + Button6: TButton; + Button7: TButton; + Button8: TButton; + Button9: TButton; + Button10: TButton; + Button11: TButton; + Button12: TButton; + Panel4: TPanel; + Button13: TButton; + Button14: TButton; + Button15: TButton; + Button16: TButton; + Button17: TButton; + Button18: TButton; + Button19: TButton; + Button20: TButton; + Button21: TButton; + Button22: TButton; + Button23: TButton; + Button24: TButton; + Button25: TButton; + Button26: TButton; + Button27: TButton; + Button28: TButton; + Button29: TButton; + Button30: TButton; + Button31: TButton; + Button32: TButton; + Button33: TButton; + Button34: TButton; + Button35: TButton; + Button36: TButton; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + DataSource2: TDataSource; + CDS_MJCD: TClientDataSet; + DataSource3: TDataSource; + CDS_MJID: TClientDataSet; + v2Column1: TcxGridDBColumn; + Button39: TButton; + Button40: TButton; + Button41: TButton; + Button42: TButton; + Button43: TButton; + Button44: TButton; + Button45: TButton; + Button46: TButton; + Button47: TButton; + Button48: TButton; + Button49: TButton; + Button50: TButton; + Panel5: TPanel; + Label3: TLabel; + Label4: TLabel; + Label5: TLabel; + Label6: TLabel; + Label7: TLabel; + Label8: TLabel; + Label9: TLabel; + Label10: TLabel; + Label11: TLabel; + Label12: TLabel; + Label13: TLabel; + MJMaoZ: TEdit; + MJLen: TEdit; + MJFK: TEdit; + MJBanZu: TEdit; + BTPrint: TButton; + Button38: TButton; + MJSJKZ: TEdit; + CDQty: TEdit; + Timer1: TTimer; + Label14: TLabel; + BTAdd: TButton; + BTEdit: TButton; + ADOQueryPrint: TADOQuery; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure MainIdKeyPress(Sender: TObject; var Key: Char); + procedure TBCloseClick(Sender: TObject); + procedure Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBCDClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Button13Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button14Click(Sender: TObject); + procedure Button15Click(Sender: TObject); + procedure Button16Click(Sender: TObject); + procedure Button17Click(Sender: TObject); + procedure Button18Click(Sender: TObject); + procedure Button19Click(Sender: TObject); + procedure Button20Click(Sender: TObject); + procedure Button21Click(Sender: TObject); + procedure Button22Click(Sender: TObject); + procedure Button23Click(Sender: TObject); + procedure Button24Click(Sender: TObject); + procedure Button25Click(Sender: TObject); + procedure Button26Click(Sender: TObject); + procedure Button27Click(Sender: TObject); + procedure Button28Click(Sender: TObject); + procedure Button29Click(Sender: TObject); + procedure Button30Click(Sender: TObject); + procedure Button31Click(Sender: TObject); + procedure Button32Click(Sender: TObject); + procedure Button33Click(Sender: TObject); + procedure Button34Click(Sender: TObject); + procedure Button35Click(Sender: TObject); + procedure Button36Click(Sender: TObject); + procedure Button38Click(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure MJMaoZClick(Sender: TObject); + procedure MJLenClick(Sender: TObject); + procedure MJFKClick(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure Button5Click(Sender: TObject); + procedure Button6Click(Sender: TObject); + procedure Button7Click(Sender: TObject); + procedure Button8Click(Sender: TObject); + procedure Button9Click(Sender: TObject); + procedure Button10Click(Sender: TObject); + procedure Button11Click(Sender: TObject); + procedure MJBanZuClick(Sender: TObject); + procedure MJSJKZClick(Sender: TObject); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure FormClick(Sender: TObject); + procedure Button12Click(Sender: TObject); + procedure Timer1Timer(Sender: TObject); + procedure Button39Click(Sender: TObject); + procedure Button40Click(Sender: TObject); + procedure Button41Click(Sender: TObject); + procedure Button42Click(Sender: TObject); + procedure Button43Click(Sender: TObject); + procedure Button44Click(Sender: TObject); + procedure Button45Click(Sender: TObject); + procedure Button46Click(Sender: TObject); + procedure Button47Click(Sender: TObject); + procedure Button48Click(Sender: TObject); + procedure Button49Click(Sender: TObject); + procedure Button50Click(Sender: TObject); + procedure MJMaoZChange(Sender: TObject); + procedure BTAddClick(Sender: TObject); + procedure BTEditClick(Sender: TObject); + procedure BTPrintClick(Sender: TObject); + procedure Tv2CDQtyPropertiesEditValueChanged(Sender: TObject); + private + { Private declarations } + FInt,PState:Integer; + FColumn:String; + MValue:String; + procedure InitJP(); + procedure InitGrid(); + procedure InitCDGrid(); + procedure InitCDGridID(); + procedure AddCD(Fbtn:TButton); + procedure AddSL(Fbtn:TButton); + function SaveData():Boolean; + procedure BtnStatus(BSInt:Boolean); + public + { Public declarations } + end; + +var + frmMJManage: TfrmMJManage; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmMJManage.FormDestroy(Sender: TObject); +begin + frmMJManage:=nil; +end; + +procedure TfrmMJManage.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + + + + +procedure TfrmMJManage.MainIdKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + InitGrid(); + InitCDGridID(); + ADOQueryMain.First; + SSetWinData(ADOQueryMain,Panel5); + if CDS_MJID.IsEmpty then + begin + SClearData(Panel5,0); + end; + InitCDGrid(); + + end; +end; +procedure TfrmMJManage.InitGrid(); +begin + with ADOQueryMain do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBOrder_Main where MainID='''+Trim(MainId.Text)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_MJ); + SInitCDSData20(ADOQueryMain,Order_MJ); + MainId.Text:=''; +end; +procedure TfrmMJManage.InitCDGrid(); +begin + with ADOQueryMain do + begin + Close; + SQL.Clear; + if PState=1 then + sql.Add('select * from WFB_MJJY_CD where MJID='''' ') + else + sql.Add('select * from WFB_MJJY_CD where MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_MJCD); + SInitCDSData20(ADOQueryMain,CDS_MJCD); + //MainId.Text:=''; +end; +procedure TfrmMJManage.InitCDGridID(); +begin + with ADOQueryMain do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_MJJY where MainID='''+Trim(Order_MJ.fieldbyname('MainId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_MJID); + SInitCDSData20(ADOQueryMain,CDS_MJID); + //MainId.Text:=''; +end; + +procedure TfrmMJManage.TBCloseClick(Sender: TObject); +begin + Close; +end; + +procedure TfrmMJManage.Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + fsj:string; +begin + FInt:=0; + //Tv1.DataController.FocusedRecordIndex; + //fsj:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; +end; + +procedure TfrmMJManage.TBCDClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WFBCD'; + flagname:='޷IJõ'; + if ShowModal=1 then + begin + Self.InitJP(); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmMJManage.FormShow(Sender: TObject); +begin + InitJP(); +end; +procedure TfrmMJManage.InitJP(); +var + AA:array[0..100] of string; + i,j:Integer; +begin + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select ZDYName from KH_Zdy where Type=''WFBCD'' order by ZDYNO '); + Open; + end; + if ADOTmp.IsEmpty then + begin + Application.MessageBox('ûжõ㣡','ʾ',0); + Exit; + end; + with ADOTmp do + begin + First; + i:=0; + while not Eof do + begin + AA[i]:=Trim(fieldbyname('ZDYName').AsString); + i:=i+1; + Next; + end; + end; + i:=i-1; + for j:=0 to 32 do + begin + with Panel4 do + begin + TButton(Controls[j]).Visible:=True; + if Length(AA[j])>3 then + begin + + end; + TButton(Controls[j]).Caption:=AA[j]; + end; + end; +end; + +procedure TfrmMJManage.Button13Click(Sender: TObject); +begin + AddCD(Button13); +end; +procedure TfrmMJManage.AddCD(Fbtn:TButton); +begin + if PState<1 then Exit; + if Order_MJ.IsEmpty then Exit; + with CDS_MJCD do + begin + Append; + FieldByName('cdname').Value:=Trim(TButton(Fbtn).Caption); + Post; + end; +end; +procedure TfrmMJManage.AddSL(Fbtn:TButton); +begin + if PState<1 then Exit; + if Order_MJ.IsEmpty then Exit; + + //if MJMaoZ.Focused then + if FInt=4 then Exit; + if FInt=1 then + begin + MJMaoZ.Text:=Trim(MJMaoZ.Text)+Trim(TButton(Fbtn).Caption); + end else + if FInt=2 then + begin + MJLen.Text:=Trim(MJLen.Text)+Trim(TButton(Fbtn).Caption); + end else + if FInt=3 then + begin + MJFK.Text:=Trim(MJFK.Text)+Trim(TButton(Fbtn).Caption); + end else + if CDS_MJCD.IsEmpty=False then + begin + FColumn:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if Trim(FColumn)<>'' then + begin + with CDS_MJCD do + begin + Edit; + FieldByName(FColumn).Value:=Trim(FieldByName(FColumn).AsString)+Trim(TButton(Fbtn).Caption); + if Trim(fieldbyname('CDQtyS').AsString)<>'' then + Fieldbyname('CDQty').Value:=Trim(fieldbyname('CDQtyS').AsString); + Post; + end; + end; + end; +end; + +procedure TfrmMJManage.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if Tv2.OptionsSelection.CellSelect=True then + begin + if CDS_MJCD.IsEmpty then Exit; + CDS_MJCD.Delete; + end; + +end; + +procedure TfrmMJManage.Button14Click(Sender: TObject); +begin + AddCD(Button14); +end; + +procedure TfrmMJManage.Button15Click(Sender: TObject); +begin + AddCD(Button15); +end; + +procedure TfrmMJManage.Button16Click(Sender: TObject); +begin + AddCD(Button16); +end; + +procedure TfrmMJManage.Button17Click(Sender: TObject); +begin + AddCD(Button17); +end; + +procedure TfrmMJManage.Button18Click(Sender: TObject); +begin + AddCD(Button18); +end; + +procedure TfrmMJManage.Button19Click(Sender: TObject); +begin + AddCD(Button19); +end; + +procedure TfrmMJManage.Button20Click(Sender: TObject); +begin + AddCD(Button20); +end; + +procedure TfrmMJManage.Button21Click(Sender: TObject); +begin + AddCD(Button21); +end; + +procedure TfrmMJManage.Button22Click(Sender: TObject); +begin + AddCD(Button22); +end; + +procedure TfrmMJManage.Button23Click(Sender: TObject); +begin + AddCD(Button23); +end; + +procedure TfrmMJManage.Button24Click(Sender: TObject); +begin + AddCD(Button24); +end; + +procedure TfrmMJManage.Button25Click(Sender: TObject); +begin + AddCD(Button25); +end; + +procedure TfrmMJManage.Button26Click(Sender: TObject); +begin + AddCD(Button26); +end; + +procedure TfrmMJManage.Button27Click(Sender: TObject); +begin + AddCD(Button27); +end; + +procedure TfrmMJManage.Button28Click(Sender: TObject); +begin + AddCD(Button28); +end; + +procedure TfrmMJManage.Button29Click(Sender: TObject); +begin + AddCD(Button29); +end; + +procedure TfrmMJManage.Button30Click(Sender: TObject); +begin + AddCD(Button30); +end; + +procedure TfrmMJManage.Button31Click(Sender: TObject); +begin + AddCD(Button31); +end; + +procedure TfrmMJManage.Button32Click(Sender: TObject); +begin + AddCD(Button32); +end; + +procedure TfrmMJManage.Button33Click(Sender: TObject); +begin + AddCD(Button33); +end; + +procedure TfrmMJManage.Button34Click(Sender: TObject); +begin + AddCD(Button34); +end; + +procedure TfrmMJManage.Button35Click(Sender: TObject); +begin + AddCD(Button35); +end; + +procedure TfrmMJManage.Button36Click(Sender: TObject); +begin + AddCD(Button36); +end; + +procedure TfrmMJManage.Button38Click(Sender: TObject); +begin + FColumn:=''; + FInt:=0; + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WFBBZ'; + flagname:=''; + if ShowModal=1 then + begin + Self.MJBanZu.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmMJManage.Button1Click(Sender: TObject); +begin + AddSL(Button1); +end; + +procedure TfrmMJManage.MJMaoZClick(Sender: TObject); +begin + FInt:=1; + FColumn:=''; +end; + +procedure TfrmMJManage.MJLenClick(Sender: TObject); +begin + FInt:=2; + FColumn:=''; +end; + +procedure TfrmMJManage.MJFKClick(Sender: TObject); +begin + FInt:=3; + FColumn:=''; +end; + +procedure TfrmMJManage.Button2Click(Sender: TObject); +begin + AddSL(Button2); +end; + +procedure TfrmMJManage.Button3Click(Sender: TObject); +begin + AddSL(Button3); +end; + +procedure TfrmMJManage.Button4Click(Sender: TObject); +begin + AddSL(Button4); +end; + +procedure TfrmMJManage.Button5Click(Sender: TObject); +begin + AddSL(Button5); +end; + +procedure TfrmMJManage.Button6Click(Sender: TObject); +begin + AddSL(Button6); +end; + +procedure TfrmMJManage.Button7Click(Sender: TObject); +begin + AddSL(Button7); +end; + +procedure TfrmMJManage.Button8Click(Sender: TObject); +begin + AddSL(Button8); +end; + +procedure TfrmMJManage.Button9Click(Sender: TObject); +begin + AddSL(Button9); +end; + +procedure TfrmMJManage.Button10Click(Sender: TObject); +begin + AddSL(Button10); +end; + +procedure TfrmMJManage.Button11Click(Sender: TObject); +begin + AddSL(Button11); +end; + +procedure TfrmMJManage.MJBanZuClick(Sender: TObject); +begin + FInt:=4; +end; + +procedure TfrmMJManage.MJSJKZClick(Sender: TObject); +begin + FInt:=4; +end; + +procedure TfrmMJManage.Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + FInt:=4; +end; + +procedure TfrmMJManage.Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + FInt:=4; + PState:=0; + InitCDGrid(); + with ADOTmp do + begin + close; + sql.Clear; + sql.Add('select * from WFB_MJJY where MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + SSetWinData(ADOTmp,Panel5); + BtnStatus(False); +end; + +procedure TfrmMJManage.FormClick(Sender: TObject); +begin + FInt:=4; +end; + +procedure TfrmMJManage.Button12Click(Sender: TObject); +var + fsj:string; +begin + if PState<1 then Exit; + if Order_MJ.IsEmpty then Exit; + //if MJMaoZ.Focused then + if FInt=4 then Exit; + if FInt=1 then + begin + if Trim(MJMaoZ.Text)<>'' then + MJMaoZ.Text:=Copy(Trim(MJMaoZ.Text),1,Length(Trim(MJMaoZ.Text))-1); + end else + if FInt=2 then + begin + if Trim(MJLen.Text)<>'' then + MJLen.Text:=Copy(Trim(MJLen.Text),1,Length(Trim(MJLen.Text))-1); + end else + if FInt=3 then + begin + if Trim(MJFK.Text)<>'' then + MJFK.Text:=Copy(Trim(MJFK.Text),1,Length(Trim(MJFK.Text))-1); + end else + begin + FColumn:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if Trim(FColumn)<>'' then + begin + if Trim(CDS_MJCD.FieldByName(FColumn).AsString)<>'' then + begin + with CDS_MJCD do + begin + Edit; + if Length(CDS_MJCD.FieldByName(FColumn).AsString)=1 then + begin + FieldByName(FColumn).Value:=null ; + FieldByName('CDQty').Value:=0; + end + else + begin + FieldByName(FColumn).Value:=Copy(Trim(FieldByName(FColumn).AsString),1,Length(Trim(FieldByName(FColumn).AsString))-1); + FieldByName('CDQty').Value:=FieldByName(FColumn).Value; + end; + Post; + end; + //MValue:=TcxTextEdit(Tv2CDQty).EditingText; + //BTPrint.SetFocus; + end; + + + end; + end; +end; + +procedure TfrmMJManage.Timer1Timer(Sender: TObject); +begin + CDQty.Text:=Tv2.DataController.Summary.FooterSummaryTexts[0]; +end; + +procedure TfrmMJManage.Button39Click(Sender: TObject); +begin + AddCD(Button39); +end; + +procedure TfrmMJManage.Button40Click(Sender: TObject); +begin + AddCD(Button40); +end; + +procedure TfrmMJManage.Button41Click(Sender: TObject); +begin + AddCD(Button41); +end; + +procedure TfrmMJManage.Button42Click(Sender: TObject); +begin + AddCD(Button42); +end; + +procedure TfrmMJManage.Button43Click(Sender: TObject); +begin + AddCD(Button43); +end; + +procedure TfrmMJManage.Button44Click(Sender: TObject); +begin + AddCD(Button44); +end; + +procedure TfrmMJManage.Button45Click(Sender: TObject); +begin + AddCD(Button45); +end; + +procedure TfrmMJManage.Button46Click(Sender: TObject); +begin + AddCD(Button46); +end; + +procedure TfrmMJManage.Button47Click(Sender: TObject); +begin + AddCD(Button47); +end; + +procedure TfrmMJManage.Button48Click(Sender: TObject); +begin + AddCD(Button48); +end; + +procedure TfrmMJManage.Button49Click(Sender: TObject); +begin + AddCD(Button49); +end; + +procedure TfrmMJManage.Button50Click(Sender: TObject); +begin + AddCD(Button50); +end; + +procedure TfrmMJManage.MJMaoZChange(Sender: TObject); +var + KZSX,KZXX:string; +begin + if (Trim(MJMaoZ.Text)<>'') and (Trim(MJLen.Text)<>'') and (Trim(MJFK.Text)<>'') then + begin + MJSJKZ.Text:=FloatToStr(StrToFloat(MJMaoZ.Text)/(StrToFloat(MJLen.Text)*StrToFloat(MJFK.Text)/100)) ; + MJSJKZ.Text:=FloatToStr(SSWR(StrToFloat(MJSJKZ.Text)*1000)); + KZSX:=Trim(Order_MJ.fieldbyname('MJKZD').AsString); + KZXX:=Trim(Order_MJ.fieldbyname('MJKZX').AsString); + if (StrToFloat(MJSJKZ.Text)>=StrToFloat(KZXX)) and (StrToFloat(MJSJKZ.Text)<=StrToFloat(KZSX)) then + begin + Label14.Visible:=True; + Label14.Caption:='ĸ'; + end else + if StrToFloat(MJSJKZ.Text)StrToFloat(KZSX) then + begin + Label14.Visible:=True; + Label14.Caption:='ĸس>'+floattostr(StrToFloat(MJSJKZ.Text)-StrToFloat(KZSX))+'g/O'; + end; + end else + begin + MJSJKZ.Text:=''; + Label14.Caption:=''; + Label14.Visible:=False; + end; + +end; + +function TfrmMJManage.SaveData():Boolean; +var + maxno,FMJID:String; +begin + if PState=1 then + FMJID:='' + else if PState=2 then + FMJID:=Trim(CDS_MJID.fieldbyname('MJID').AsString) + else if PState<1 then Exit; + try + ADOCmd.Connection.BeginTrans; + /// + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from WFB_MJJY where MJId='''+Trim(FMJID)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMJID)='' then + begin + Append; + if GetLSNo(ADOTmp,maxno,'','WFB_MJJY',2,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ˮ쳣','ʾ',0); + exit; + end; + end + else begin + maxno:=Trim(FMJID); + Edit; + end; + FieldByName('MainId').value:=Trim(Order_MJ.fieldbyname('MainId').AsString); + FieldByName('MJID').Value:=Trim(maxno); + FieldByName('MJMaoZ').Value:=Trim(MJMaoZ.Text); + FieldByName('MJLen').Value:=Trim(MJLen.Text); + FieldByName('MJFK').Value:=Trim(MJFK.Text); + FieldByName('MJSJKZ').Value:=Trim(MJSJKZ.Text); + FieldByName('MJBanZu').Value:=Trim(MJBanZu.Text); + if Trim(FMJID)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTmp); + end; + Post; + end; + FMJID:=Trim(maxno); + ///ĸõ + with CDS_MJCD do + begin + First; + while not Eof do + begin + if Trim(CDS_MJCD.fieldbyname('MCID').AsString)='' then + begin + if GetLSNo(ADOTmp,maxno,'MC','WFB_MJJY_CD',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_MJCD.fieldbyname('MCID').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_MJJY_CD '); + sql.Add(' where MCID='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_MJCD.fieldbyname('MCID').AsString)='' then + Append + else + Edit; + FieldByName('MJId').Value:=Trim(FMJID); + FieldByName('MCID').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,Tv2,CDS_MJCD,'WFB_MJJY_CD',0); + Post; + end; + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('MCID').Value:=Trim(maxno); + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + InitCDGridID(); + CDS_MJID.Locate('MJID',FMJID,[]); + PState:=0; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TfrmMJManage.BTAddClick(Sender: TObject); +begin + if PState=1 then + begin + if( (CDS_MJCD.IsEmpty=False) or (Trim(MJMaoZ.Text)<>'') or (Trim(MJLen.Text)<>'') or (Trim(MJFK.Text)<>'') ) then + if Application.MessageBox(PChar(' δӡǷҪ?'+#13+#13+'"(Y)"ǰݽᶪʧ'),'ʾ',32+4)<>IDYES then Exit; + end; + if Order_MJ.IsEmpty then Exit; + PState:=1; + InitCDGrid(); + SClearData(Panel5,0); + {Tv2.OptionsSelection.CellSelect:=True; + MJMaoZ.ReadOnly:=False; + MJLen.ReadOnly:=False; + MJFK.ReadOnly:=False; + Button38.Enabled:=True; } + BtnStatus(True); +end; + +procedure TfrmMJManage.BTEditClick(Sender: TObject); +begin + if CDS_MJID.IsEmpty then Exit; + PState:=2; +end; + +procedure TfrmMJManage.BTPrintClick(Sender: TObject); +var + fPrintFile:string; +begin + if Order_MJ.IsEmpty then Exit; + if Trim(MJMaoZ.Text)='' then + begin + Application.MessageBox('ëزΪգ','ʾ',0); + Exit; + end; + if Trim(MJLen.Text)='' then + begin + Application.MessageBox('ȲΪգ','ʾ',0); + Exit; + end; + if Trim(MJFK.Text)='' then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + if Trim(MJBanZu.Text)='' then + begin + Application.MessageBox('鲻Ϊգ','ʾ',0); + Exit; + end; + if PState=1 then + begin + if Application.MessageBox('ȷҪӡ𣿴ӡݽ޸ģ','ʾ',32+4)<>IDYES then Exit; + end; + if SaveData() then + begin + //Application.MessageBox('ӡɹ','ʾ',0); + BtnStatus(False); + {Tv2.OptionsSelection.CellSelect:=False; + MJMaoZ.ReadOnly:=True; + MJLen.ReadOnly:=True; + MJFK.ReadOnly:=True; + Button38.Enabled:=False;} + end; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select RTrim(A.MJID) MJID,RTrim(A.MJSJKZ) MJSJKZ,RTrim(A.MJFK) MJFK,RTrim(B.OrderNo) OrderNo,RTrim(B.WFBCodeName) WFBCodeName from WFB_MJJY A inner join WFBOrder_Main B on A.MainId=B.MainId'); + sql.Add(' where A.MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ĸǩ.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + RM2.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ĸǩ.rmf'),'ʾ',0); + end; +end; +procedure TfrmMJManage.BtnStatus(BSInt:Boolean); +begin + Tv2.OptionsSelection.CellSelect:=BSInt; + MJMaoZ.ReadOnly:=not BSInt; + MJLen.ReadOnly:=not BSInt; + MJFK.ReadOnly:=not BSInt; + Button38.Enabled:=BSInt; +end; +procedure TfrmMJManage.Tv2CDQtyPropertiesEditValueChanged(Sender: TObject); +var + mvalue:string; +begin + try + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)<>'' then + begin + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('CDQty').Value:=mvalue; + CDS_MJCD.Post; + end else + begin + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('CDQty').Value:=0; + CDS_MJCD.Post; + end; + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('CDQtyS').Value:=mvalue; + except + Application.MessageBox('Ƿ֣','ʾ',0); + end; +end; + +end. diff --git a/艾登贸易管理/U_MJManageNew.dfm b/艾登贸易管理/U_MJManageNew.dfm new file mode 100644 index 0000000..042e7a2 --- /dev/null +++ b/艾登贸易管理/U_MJManageNew.dfm @@ -0,0 +1,1922 @@ +object frmMJManageNew: TfrmMJManageNew + Left = 33 + Top = 83 + Width = 1292 + Height = 773 + Caption = #27597#21367#30331#35760 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #40657#20307 + Font.Style = [fsBold] + OldCreateOrder = False + OnClick = FormClick + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 19 + object Panel1: TPanel + Left = 0 + Top = 30 + Width = 1284 + Height = 48 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 0 + Visible = False + object Label1: TLabel + Left = 143 + Top = 16 + Width = 80 + Height = 19 + Caption = #25195#25551#20837#21475 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -19 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 519 + Top = 16 + Width = 80 + Height = 19 + Caption = #25163#24037#24405#20837 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label15: TLabel + Left = 29 + Top = 32 + Width = 8 + Height = 16 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label16: TLabel + Left = 856 + Top = 16 + Width = 11 + Height = 19 + end + object MainId: TEdit + Left = 224 + Top = 14 + Width = 241 + Height = 27 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnKeyPress = MainIdKeyPress + end + object OrderNo: TEdit + Left = 607 + Top = 14 + Width = 241 + Height = 27 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + end + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1284 + Height = 30 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_RCInspection.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 1 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = ToolButton1Click + end + object TBCD: TToolButton + Left = 63 + Top = 0 + Caption = #30133#28857#31649#29702 + ImageIndex = 132 + OnClick = TBCDClick + end + object TBClose: TToolButton + Left = 146 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 78 + Width = 1284 + Height = 174 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv1CellClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + object v1Column4: TcxGridDBColumn + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 47 + end + object v1Column11: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'SCOrder' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Content = cxStyle4 + Styles.Header = cxStyle4 + Width = 45 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#32534#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 84 + end + object v1Column2: TcxGridDBColumn + Caption = #20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 116 + end + object v1Column12: TcxGridDBColumn + Caption = #23450#21367#38271 + DataBinding.FieldName = 'BigLen' + Options.Focusing = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 54 + end + object v1Column6: TcxGridDBColumn + Caption = #23450#21367#25968 + DataBinding.FieldName = 'BigCount' + Options.Focusing = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 52 + end + object v1PRTMF: TcxGridDBColumn + Caption = #29983#20135#38376#24133 + DataBinding.FieldName = 'BigMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 66 + end + object v1Column5: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 46 + end + object v1Column7: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 46 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'SWFBKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 49 + end + object v1Column13: TcxGridDBColumn + Caption = #32593#23380#30446#25968 + DataBinding.FieldName = 'WKMS' + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 66 + end + object v1Column8: TcxGridDBColumn + Caption = #23433#25490#31859#25968 + DataBinding.FieldName = 'OrderQtyM' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Content = cxStyle3 + Styles.Header = cxStyle3 + Width = 81 + end + object v1Column9: TcxGridDBColumn + Caption = #24050#29983#20135#31859#25968 + DataBinding.FieldName = 'SCMQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Content = cxStyle4 + Styles.Header = cxStyle4 + Width = 92 + end + object v1Column10: TcxGridDBColumn + Caption = #26410#29983#20135#31859#25968 + DataBinding.FieldName = 'WSCMQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Content = cxStyle5 + Styles.Header = cxStyle5 + Width = 95 + end + object v1Column1: TcxGridDBColumn + Caption = #21367#22343#37325#19978#38480 + DataBinding.FieldName = 'KZBig' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 82 + end + object v1Column3: TcxGridDBColumn + Caption = #21367#22343#37325#19979#38480 + DataBinding.FieldName = 'KZSmal' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 80 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGrid2: TcxGrid + Left = 844 + Top = 252 + Width = 242 + Height = 484 + Align = alLeft + TabOrder = 3 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv2CellClick + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column1 + end + item + Kind = skSum + Column = Tv2CDQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = cxStyle1 + object tv2CDType: TcxGridDBColumn + Caption = #30133#28857#31181#31867 + DataBinding.FieldName = 'CDName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 77 + end + object tv2CDWZ: TcxGridDBColumn + Caption = #20301#32622#36215 + DataBinding.FieldName = 'CDBeg' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 56 + end + object v2Column2: TcxGridDBColumn + Caption = #20301#32622#27490 + DataBinding.FieldName = 'CDend' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Width = 58 + end + object Tv2CDQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'CDQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = Tv2CDQtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 47 + end + object Tv2CDReason: TcxGridDBColumn + Caption = #21407#22240 + DataBinding.FieldName = 'CDReason' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 131 + end + object v2Column1: TcxGridDBColumn + DataBinding.FieldName = 'CDQty' + Visible = False + Width = 55 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGrid3: TcxGrid + Left = 1086 + Top = 252 + Width = 127 + Height = 484 + Align = alLeft + TabOrder = 4 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv3CellClick + DataController.DataSource = DataSource3 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = cxStyle1 + object cxGridDBColumn1: TcxGridDBColumn + Caption = #24050#30331#35760#27597#21367 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 120 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + object Panel5: TPanel + Left = 498 + Top = 252 + Width = 346 + Height = 484 + Align = alLeft + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 5 + object Label3: TLabel + Left = 111 + Top = 28 + Width = 60 + Height = 29 + Caption = #27611#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 111 + Top = 92 + Width = 60 + Height = 29 + Caption = #38271#24230 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 111 + Top = 155 + Width = 60 + Height = 29 + Caption = #24133#23485 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 111 + Top = 219 + Width = 60 + Height = 29 + Caption = #29677#32452 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 305 + Top = 95 + Width = 16 + Height = 29 + Caption = 'M' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 305 + Top = 32 + Width = 32 + Height = 29 + Caption = 'Kg' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 305 + Top = 158 + Width = 32 + Height = 29 + Caption = 'CM' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 111 + Top = 345 + Width = 60 + Height = 29 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 281 + Top = 345 + Width = 62 + Height = 29 + Caption = 'g/'#13217 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 111 + Top = 283 + Width = 60 + Height = 29 + Caption = #30133#28857 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 305 + Top = 286 + Width = 16 + Height = 29 + Caption = 'M' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label14: TLabel + Left = 21 + Top = 400 + Width = 180 + Height = 24 + Caption = 'aaaaaaaaaaaaaaa' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object MJMaoZ: TEdit + Left = 173 + Top = 24 + Width = 131 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 0 + OnChange = MJMaoZChange + OnClick = MJMaoZClick + end + object MJLen: TEdit + Left = 173 + Top = 88 + Width = 131 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 1 + OnChange = MJMaoZChange + OnClick = MJLenClick + end + object MJFK: TEdit + Left = 173 + Top = 152 + Width = 131 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 2 + OnChange = MJMaoZChange + OnClick = MJFKClick + end + object MJBanZu: TEdit + Tag = 2 + Left = 173 + Top = 216 + Width = 131 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 3 + OnClick = MJBanZuClick + end + object BTPrint: TButton + Left = 6 + Top = 164 + Width = 90 + Height = 50 + Caption = #25171#21360#26465#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + OnClick = BTPrintClick + end + object Button38: TButton + Left = 304 + Top = 220 + Width = 22 + Height = 28 + Caption = '....' + Enabled = False + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + Visible = False + OnClick = Button38Click + end + object MJSJKZ: TEdit + Left = 178 + Top = 343 + Width = 102 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 6 + OnClick = MJSJKZClick + end + object CDQty: TEdit + Tag = 99999 + Left = 178 + Top = 280 + Width = 124 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 7 + OnClick = MJSJKZClick + end + object BTAdd: TButton + Left = 6 + Top = 25 + Width = 90 + Height = 50 + Caption = #26032#22686 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + OnClick = BTAddClick + end + object BTEdit: TButton + Left = 235 + Top = 404 + Width = 47 + Height = 25 + Caption = #20462#25913 + TabOrder = 9 + Visible = False + OnClick = BTEditClick + end + object Button5: TButton + Left = 6 + Top = 305 + Width = 90 + Height = 50 + Caption = #37325#26032#25171#21360 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + OnClick = Button5Click + end + end + object Panel3: TPanel + Left = 144 + Top = 33 + Width = 657 + Height = 172 + BevelInner = bvRaised + BevelOuter = bvLowered + ParentColor = True + TabOrder = 6 + Visible = False + object SpeedButton1: TSpeedButton + Left = 4 + Top = 3 + Width = 80 + Height = 80 + Caption = '0' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton2: TSpeedButton + Left = 88 + Top = 3 + Width = 80 + Height = 80 + Caption = '1' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton3: TSpeedButton + Left = 172 + Top = 3 + Width = 80 + Height = 80 + Caption = '2' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton4: TSpeedButton + Left = 256 + Top = 3 + Width = 80 + Height = 80 + Caption = '3' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton5: TSpeedButton + Left = 340 + Top = 3 + Width = 80 + Height = 80 + Caption = '4' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton6: TSpeedButton + Left = 4 + Top = 87 + Width = 80 + Height = 80 + Caption = '5' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton7: TSpeedButton + Left = 88 + Top = 87 + Width = 80 + Height = 80 + Caption = '6' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton8: TSpeedButton + Left = 172 + Top = 87 + Width = 80 + Height = 80 + Caption = '7' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton9: TSpeedButton + Left = 256 + Top = 87 + Width = 80 + Height = 80 + Caption = '8' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton10: TSpeedButton + Left = 340 + Top = 87 + Width = 80 + Height = 80 + Caption = '9' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton11: TSpeedButton + Tag = 9 + Left = 424 + Top = 87 + Width = 80 + Height = 80 + Caption = '.' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -53 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton12: TSpeedButton + Left = 424 + Top = 3 + Width = 80 + Height = 80 + Caption = #8592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -53 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton12Click + end + object SpeedButton49: TSpeedButton + Tag = 9 + Left = 536 + Top = 44 + Width = 104 + Height = 80 + Caption = #38544#34255 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton49Click + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 252 + Width = 498 + Height = 484 + Align = alLeft + TabOrder = 7 + object SpeedButton13: TSpeedButton + Left = 3 + Top = 0 + Width = 80 + Height = 80 + Caption = #23567#40657#28857 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton14: TSpeedButton + Left = 85 + Top = 0 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton15: TSpeedButton + Left = 167 + Top = 0 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton16: TSpeedButton + Left = 249 + Top = 0 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton17: TSpeedButton + Left = 331 + Top = 0 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton18: TSpeedButton + Left = 413 + Top = 0 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton19: TSpeedButton + Left = 3 + Top = 82 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton20: TSpeedButton + Left = 85 + Top = 82 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton21: TSpeedButton + Left = 167 + Top = 82 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton22: TSpeedButton + Left = 249 + Top = 82 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton23: TSpeedButton + Left = 331 + Top = 82 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton24: TSpeedButton + Left = 413 + Top = 82 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton25: TSpeedButton + Left = 3 + Top = 165 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton26: TSpeedButton + Left = 85 + Top = 165 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton27: TSpeedButton + Left = 167 + Top = 165 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton28: TSpeedButton + Left = 249 + Top = 165 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton29: TSpeedButton + Left = 331 + Top = 165 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton30: TSpeedButton + Left = 413 + Top = 165 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton31: TSpeedButton + Left = 3 + Top = 248 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton32: TSpeedButton + Left = 85 + Top = 248 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton33: TSpeedButton + Left = 167 + Top = 248 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton34: TSpeedButton + Left = 249 + Top = 248 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton35: TSpeedButton + Left = 331 + Top = 248 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton36: TSpeedButton + Left = 413 + Top = 248 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton37: TSpeedButton + Left = 3 + Top = 332 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton38: TSpeedButton + Left = 85 + Top = 332 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton39: TSpeedButton + Left = 167 + Top = 332 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton40: TSpeedButton + Left = 249 + Top = 332 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton41: TSpeedButton + Left = 331 + Top = 332 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton42: TSpeedButton + Left = 413 + Top = 332 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + end + object Panel6: TPanel + Left = 174 + Top = 263 + Width = 1035 + Height = 428 + TabOrder = 8 + Visible = False + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 1033 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #36873#21333 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 1000 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object Button2: TButton + Left = 144 + Top = 366 + Width = 65 + Height = 51 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button2Click + end + object Button3: TButton + Left = 776 + Top = 366 + Width = 65 + Height = 51 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Button3Click + end + object cxGrid4: TcxGrid + Left = 3 + Top = 25 + Width = 1027 + Height = 330 + TabOrder = 3 + object TvSel: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = TvSelCellClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Styles.Header = cxStyle1 + object cxGridDBColumn2: TcxGridDBColumn + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + Properties.OnChange = cxGridDBColumn2PropertiesChange + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = cxStyle6 + Width = 84 + end + object vSelColumn3: TcxGridDBColumn + Caption = #29983#20135#24207#21495 + DataBinding.FieldName = 'SCOrder' + Options.Focusing = False + Styles.Content = cxStyle4 + Styles.Header = cxStyle4 + Width = 74 + end + object vSelColumn1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle6 + Width = 149 + end + object vSelColumn4: TcxGridDBColumn + Caption = #20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Width = 76 + end + object vSelColumn6: TcxGridDBColumn + Caption = #23450#21367#38271 + DataBinding.FieldName = 'BigLen' + HeaderAlignmentHorz = taCenter + Width = 69 + end + object vSelColumn5: TcxGridDBColumn + Caption = #23450#21367#25968 + DataBinding.FieldName = 'BigCount' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object cxGridDBColumn7: TcxGridDBColumn + Caption = #29983#20135#38376#24133 + DataBinding.FieldName = 'BigFK' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle6 + Styles.Header = cxStyle1 + Width = 71 + end + object vSelColumn7: TcxGridDBColumn + Caption = #32593#23380#30446#25968 + DataBinding.FieldName = 'WKMS' + Width = 66 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle6 + Width = 43 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle6 + Width = 60 + end + object vSelColumn2: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'SWFBKZ' + Styles.Content = cxStyle6 + Width = 38 + end + end + object cxGridLevel3: TcxGridLevel + GridView = TvSel + end + end + end + object MovePanel1: TMovePanel + Left = 26 + Top = 254 + Width = 439 + Height = 299 + BevelInner = bvLowered + Color = clSkyBlue + TabOrder = 9 + Visible = False + object Label17: TLabel + Left = 50 + Top = 47 + Width = 120 + Height = 29 + Caption = #36215#22987#20301#32622 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 237 + Top = 116 + Width = 30 + Height = 29 + Caption = #21040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 353 + Top = 55 + Width = 16 + Height = 29 + Caption = 'M' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label20: TLabel + Left = 353 + Top = 167 + Width = 16 + Height = 29 + Caption = 'M' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label21: TLabel + Left = 51 + Top = 116 + Width = 112 + Height = 29 + Caption = 'Label21' + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Edit1: TEdit + Left = 171 + Top = 47 + Width = 174 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnClick = Edit1Click + end + object Button1: TButton + Left = 73 + Top = 223 + Width = 75 + Height = 49 + Caption = #30830#23450 + TabOrder = 1 + OnClick = Button1Click + end + object Button4: TButton + Left = 299 + Top = 223 + Width = 75 + Height = 49 + Caption = #21462#28040 + TabOrder = 2 + OnClick = Button4Click + end + object Edit2: TEdit + Left = 171 + Top = 157 + Width = 174 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = Edit2Click + OnKeyPress = MainIdKeyPress + end + end + object cxStyleRepository1: TcxStyleRepository + Left = 48 + Top = 40 + object cxStyle1: TcxStyle + AssignedValues = [svColor, svFont] + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle2: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Pitch = fpFixed + Font.Style = [fsBold] + TextColor = clDefault + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 296 + Top = 128 + end + object DataSource1: TDataSource + DataSet = Order_MJ + Left = 328 + Top = 128 + end + object Order_MJ: TClientDataSet + Aggregates = <> + Params = <> + Left = 360 + Top = 128 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_RCInspection.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 400 + Top = 128 + end + object ADOCmd: TADOQuery + Connection = DataLink_RCInspection.ADOLink + Parameters = <> + Left = 432 + Top = 128 + end + object ADOTmp: TADOQuery + Connection = DataLink_RCInspection.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 464 + Top = 128 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 536 + Top = 128 + end + object RM2: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 496 + Top = 128 + ReportData = {} + end + object DataSource2: TDataSource + DataSet = CDS_MJCD + Left = 672 + Top = 136 + end + object CDS_MJCD: TClientDataSet + Aggregates = <> + Params = <> + Left = 632 + Top = 144 + end + object DataSource3: TDataSource + DataSet = CDS_MJID + Left = 1000 + Top = 296 + end + object CDS_MJID: TClientDataSet + Aggregates = <> + Params = <> + Left = 1016 + Top = 312 + end + object Timer1: TTimer + Interval = 100 + OnTimer = Timer1Timer + Left = 944 + Top = 320 + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_RCInspection.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 592 + Top = 136 + end + object cxStyleRepository2: TcxStyleRepository + object cxStyle3: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = clBtnFace + Font.Charset = ANSI_CHARSET + Font.Color = clBlue + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + end + object cxStyleRepository3: TcxStyleRepository + object cxStyle4: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clRed + end + end + object cxStyleRepository4: TcxStyleRepository + object cxStyle5: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + end + object cxStyleRepository5: TcxStyleRepository + object cxStyle6: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid4 + PopupMenus = <> + Left = 624 + Top = 432 + end +end diff --git a/艾登贸易管理/U_MJManageNew.pas b/艾登贸易管理/U_MJManageNew.pas new file mode 100644 index 0000000..85ef37b --- /dev/null +++ b/艾登贸易管理/U_MJManageNew.pas @@ -0,0 +1,1621 @@ +unit U_MJManageNew; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxCalendar, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + 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; +{function CommOpen(fhandle:hwnd;sCommName:PAnsiChar; + IntTime:integer):integer;stdcall;external 'JCYData.DLL'; +function CommClose(sCommName:PAnsiChar):integer;stdcall;external 'JCYData.DLL';} + + +type + TfrmMJManageNew = class(TForm) + Panel1: TPanel; + MainId: TEdit; + Label1: TLabel; + Label2: TLabel; + OrderNo: TEdit; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxGridPopupMenu1: TcxGridPopupMenu; + DataSource1: TDataSource; + Order_MJ: TClientDataSet; + ADOQueryMain: TADOQuery; + ADOCmd: TADOQuery; + ADOTmp: TADOQuery; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + ToolBar1: TToolBar; + TBClose: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + tv2CDType: TcxGridDBColumn; + tv2CDWZ: TcxGridDBColumn; + Tv2CDQty: TcxGridDBColumn; + Tv2CDReason: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + TBCD: TToolButton; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + DataSource2: TDataSource; + CDS_MJCD: TClientDataSet; + DataSource3: TDataSource; + CDS_MJID: TClientDataSet; + v2Column1: TcxGridDBColumn; + Panel5: TPanel; + Label3: TLabel; + Label4: TLabel; + Label5: TLabel; + Label6: TLabel; + Label7: TLabel; + Label8: TLabel; + Label9: TLabel; + Label10: TLabel; + Label11: TLabel; + Label12: TLabel; + Label13: TLabel; + MJMaoZ: TEdit; + MJLen: TEdit; + MJFK: TEdit; + MJBanZu: TEdit; + BTPrint: TButton; + Button38: TButton; + MJSJKZ: TEdit; + CDQty: TEdit; + Timer1: TTimer; + Label14: TLabel; + BTAdd: TButton; + BTEdit: TButton; + ADOQueryPrint: TADOQuery; + Label15: TLabel; + Label16: TLabel; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + ToolButton1: TToolButton; + Button5: TButton; + Panel3: TPanel; + SpeedButton1: TSpeedButton; + SpeedButton2: TSpeedButton; + SpeedButton3: TSpeedButton; + SpeedButton4: TSpeedButton; + SpeedButton5: TSpeedButton; + SpeedButton6: TSpeedButton; + SpeedButton7: TSpeedButton; + SpeedButton8: TSpeedButton; + SpeedButton9: TSpeedButton; + SpeedButton10: TSpeedButton; + SpeedButton11: TSpeedButton; + SpeedButton12: TSpeedButton; + SpeedButton49: TSpeedButton; + ScrollBox1: TScrollBox; + SpeedButton13: TSpeedButton; + SpeedButton14: TSpeedButton; + SpeedButton15: TSpeedButton; + SpeedButton16: TSpeedButton; + SpeedButton17: TSpeedButton; + SpeedButton18: TSpeedButton; + SpeedButton19: TSpeedButton; + SpeedButton20: TSpeedButton; + SpeedButton21: TSpeedButton; + SpeedButton22: TSpeedButton; + SpeedButton23: TSpeedButton; + SpeedButton24: TSpeedButton; + SpeedButton25: TSpeedButton; + SpeedButton26: TSpeedButton; + SpeedButton27: TSpeedButton; + SpeedButton28: TSpeedButton; + SpeedButton29: TSpeedButton; + SpeedButton30: TSpeedButton; + SpeedButton31: TSpeedButton; + SpeedButton32: TSpeedButton; + SpeedButton33: TSpeedButton; + SpeedButton34: TSpeedButton; + SpeedButton35: TSpeedButton; + SpeedButton36: TSpeedButton; + SpeedButton37: TSpeedButton; + SpeedButton38: TSpeedButton; + SpeedButton39: TSpeedButton; + SpeedButton40: TSpeedButton; + SpeedButton41: TSpeedButton; + SpeedButton42: TSpeedButton; + Panel6: TPanel; + Panel10: TPanel; + Image2: TImage; + Button2: TButton; + Button3: TButton; + cxGrid4: TcxGrid; + TvSel: TcxGridDBTableView; + cxGridDBColumn2: TcxGridDBColumn; + vSelColumn1: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridDBColumn7: TcxGridDBColumn; + vSelColumn2: TcxGridDBColumn; + cxGridLevel3: TcxGridLevel; + MovePanel1: TMovePanel; + Label17: TLabel; + Label18: TLabel; + Label19: TLabel; + Label20: TLabel; + Label21: TLabel; + Edit1: TEdit; + Button1: TButton; + Button4: TButton; + Edit2: TEdit; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + cxStyleRepository2: TcxStyleRepository; + cxStyle3: TcxStyle; + cxStyleRepository3: TcxStyleRepository; + cxStyle4: TcxStyle; + v1Column10: TcxGridDBColumn; + cxStyleRepository4: TcxStyleRepository; + cxStyle5: TcxStyle; + cxStyleRepository5: TcxStyleRepository; + cxStyle6: TcxStyle; + v1Column11: TcxGridDBColumn; + vSelColumn3: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + v1Column13: TcxGridDBColumn; + vSelColumn4: TcxGridDBColumn; + vSelColumn5: TcxGridDBColumn; + vSelColumn6: TcxGridDBColumn; + vSelColumn7: TcxGridDBColumn; + cxGridPopupMenu2: TcxGridPopupMenu; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure MainIdKeyPress(Sender: TObject; var Key: Char); + procedure TBCloseClick(Sender: TObject); + procedure Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBCDClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button38Click(Sender: TObject); + procedure MJMaoZClick(Sender: TObject); + procedure MJLenClick(Sender: TObject); + procedure MJFKClick(Sender: TObject); + procedure MJBanZuClick(Sender: TObject); + procedure MJSJKZClick(Sender: TObject); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure FormClick(Sender: TObject); + procedure Button12Click(Sender: TObject); + procedure Timer1Timer(Sender: TObject); + procedure MJMaoZChange(Sender: TObject); + procedure BTAddClick(Sender: TObject); + procedure BTEditClick(Sender: TObject); + procedure BTPrintClick(Sender: TObject); + procedure Tv2CDQtyPropertiesEditValueChanged(Sender: TObject); + procedure SpeedButton1Click(Sender: TObject); + procedure SpeedButton12Click(Sender: TObject); + procedure SpeedButton13Click(Sender: TObject); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, + Y: Integer); + procedure Image2Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure TvSelCellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure cxGridDBColumn2PropertiesChange(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure Edit1Click(Sender: TObject); + procedure Edit2Click(Sender: TObject); + procedure Button5Click(Sender: TObject); + procedure SpeedButton49Click(Sender: TObject); + private + { Private declarations } + FInt,PState,PrintInt,SCInitGrid:Integer; + FColumn:String; + MValue,FCDName:String; + procedure InitJP(); + procedure InitGrid(); + procedure InitCDGrid(); + procedure InitCDGridID(); + procedure AddCD(Fbtn:TButton); + procedure AddSL(Fbtn:TButton); + function SaveData():Boolean; + procedure BtnStatus(BSInt:Boolean); + procedure AddSLNew(Fbtn:TSpeedButton); + procedure AddCDNew(Fbtn:TSpeedButton); + public + { Public declarations } + end; + +var + frmMJManageNew: TfrmMJManageNew; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp,U_iniParam; + +{$R *.dfm} + +procedure TfrmMJManageNew.FormDestroy(Sender: TObject); +begin + frmMJManageNew:=nil; +end; + +procedure TfrmMJManageNew.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + //DataLink_WFBProducttion.ADOLink.Connected:=False; + Action:=caFree; +end; +procedure TfrmMJManageNew.MainIdKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + InitGrid(); + InitCDGridID(); + ADOQueryMain.First; + SSetWinData(ADOQueryMain,Panel5); + if CDS_MJID.IsEmpty then + begin + SClearData(Panel5,0); + end; + InitCDGrid(); + + end; +end; +procedure TfrmMJManageNew.InitGrid(); +begin + with ADOQueryMain do + begin + Close; + SQL.Clear; + //sql.Add('select A.OrderNo,B.* from WFBOrder_Main A inner join WFBOrder_Sub B on A.MainId=B.MainId where A.MainID='''+Trim(MainId.Text)+''''); + { sql.Add('select A.OrderNo,B.* from WFBOrder_Main A inner join WFBOrder_Sub B on A.MainId=B.MainId '); + sql.Add(' inner join WFBOrder_Main_Attachment C on C.MainId=A.MainId'); + sql.Add(' where not exists(select * from WFBOrder_Status D where D.MainId=A.MainId and D.OSFlag10=1)'); } + sql.Add(' exec P_ProductAnPai :begdate,:enddate,:pstate,:WSQl'); + Parameters.ParamByName('begdate').Value:=''; + Parameters.ParamByName('enddate').Value:=''; + Parameters.ParamByName('pstate').Value:=2; + Parameters.ParamByName('WSQl').Value:=''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_MJ); + SInitCDSData20(ADOQueryMain,Order_MJ); + MainId.Text:=''; +end; +procedure TfrmMJManageNew.InitCDGrid(); +begin + with ADOQueryMain do + begin + Close; + SQL.Clear; + if PState=1 then + sql.Add('select * from WFB_MJJY_CD where MJID='''' ') + else + sql.Add('select * from WFB_MJJY_CD where MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_MJCD); + SInitCDSData20(ADOQueryMain,CDS_MJCD); + //MainId.Text:=''; +end; +procedure TfrmMJManageNew.InitCDGridID(); +begin + with ADOQueryMain do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_MJJY where SubID='''+Trim(Order_MJ.fieldbyname('SubID').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_MJID); + SInitCDSData20(ADOQueryMain,CDS_MJID); + //MainId.Text:=''; +end; + +procedure TfrmMJManageNew.TBCloseClick(Sender: TObject); +var + maxno:string; +begin + WriteCxGrid('ĸϢ1',Tv1,'޷IJ'); + WriteCxGrid('ĸϢ2',TvSel,'޷IJ'); + if CDS_MJCD.IsEmpty=False then + begin + if Trim(CDS_MJCD.FieldByName('MCID').AsString)='' then + begin + //try + //ADOCmd.Connection.BeginTrans; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete from WFB_MJJY_CD_Temp where JTType='''+Trim(SCXFlag)+''''); + Execsql; + end; + with CDS_MJCD do + begin + First; + while not Eof do + begin + if GetLSNo(ADOCmd,maxno,'LS','WFB_MJJY_CD_Temp',2,1)=False then + begin + // ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡõʱʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_MJJY_CD_Temp where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MCID').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,Tv2,CDS_MJCD,'WFB_MJJY_CD_Temp',0); + FieldByName('JTType').Value:=Trim(SCXFlag); + Post; + end; + Next; + end; + end; + close; + //ADOCmd.Connection.CommitTrans; + //ModalResult:=1; + //except + //ADOCmd.Connection.RollbackTrans; + //Application.MessageBox('ʱʧܣ','ʾ',0); + //end; + end else + begin + Close; + end; + end else + begin + Close; + end; + + + +end; + +procedure TfrmMJManageNew.Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + fsj:string; +begin + //FInt:=0; + //Tv1.DataController.FocusedRecordIndex; + //fsj:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; +end; + +procedure TfrmMJManageNew.TBCDClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WFBCD'; + flagname:='޷IJõ'; + if ShowModal=1 then + begin + Self.InitJP(); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmMJManageNew.FormShow(Sender: TObject); +begin + ReadCxGrid('ĸϢ1',Tv1,'޷IJ'); + ReadCxGrid('ĸϢ2',TvSel,'޷IJ'); + InitJP(); + InitGrid(); + with ADOTmp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_MJJY_CD_Temp where JTType='''+Trim(SCXFlag)+''''); + Open; + end; + if ADOTmp.IsEmpty=False then + begin + with ADOQueryMain do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_MJJY_CD where MJID='''' '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_MJCD); + SInitCDSData20(ADOQueryMain,CDS_MJCD); + PState:=1; + with ADOTmp do + begin + First; + while not Eof do + begin + with CDS_MJCD do + begin + Append; + FieldByName('CDName').Value:=ADOTmp.fieldbyname('CDName').Value; + FieldByName('CDBeg').Value:=ADOTmp.fieldbyname('CDBeg').Value; + FieldByName('CDEnd').Value:=ADOTmp.fieldbyname('CDEnd').Value; + FieldByName('CDQty').Value:=ADOTmp.fieldbyname('CDQty').Value; + Post; + end; + Next; + end; + end; + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select * from SY_User where UserId='''+Trim(DCode)+''''); + Open; + end; + MJBanZu.Text:=Trim(ADOTmp.fieldbyname('BanZu').AsString); + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFB_MJJY_CD_Temp where JTType='''+Trim(SCXFlag)+''''); + ExecSQL; + end; + end; +end; +procedure TfrmMJManageNew.InitJP(); +var + AA:array[0..100] of string; + i,j:Integer; +begin + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select ZDYName from KH_Zdy where Type=''WFBCD'' order by ZDYNO '); + Open; + end; + if ADOTmp.IsEmpty then + begin + Application.MessageBox('ûжõ㣡','ʾ',0); + Exit; + end; + with ADOTmp do + begin + First; + i:=0; + while not Eof do + begin + AA[i]:=Trim(fieldbyname('ZDYName').AsString); + i:=i+1; + Next; + end; + end; + i:=i-1; + if i>29 then + begin + i:=29; + end; + for j:=0 to i do + begin + with ScrollBox1 do + begin + TSpeedButton(Controls[j]).Visible:=True; + TSpeedButton(Controls[j]).Hint:=AA[j]; + if Length(AA[j])>4 then + begin + TSpeedButton(Controls[j]).Caption:=Copy(Trim(AA[j]),1,4)+#13+Copy(Trim(AA[j]),5,Length(AA[j])-4); + end else + TSpeedButton(Controls[j]).Caption:=AA[j]; + end; + end; +end; + +procedure TfrmMJManageNew.AddCD(Fbtn:TButton); +begin + if PState<1 then Exit; + if Order_MJ.IsEmpty then Exit; + with CDS_MJCD do + begin + Append; + FieldByName('cdname').Value:=Trim(TButton(Fbtn).Caption); + Post; + end; +end; +procedure TfrmMJManageNew.AddCDNew(Fbtn:TSpeedButton); +begin + with CDS_MJCD do + begin + Append; + FieldByName('cdname').Value:=Trim(TSpeedButton(Fbtn).Hint); + Post; + end; +end; +procedure TfrmMJManageNew.AddSL(Fbtn:TButton); +begin + if PState<1 then Exit; + if Order_MJ.IsEmpty then Exit; + + //if MJMaoZ.Focused then + if FInt=4 then Exit; + if FInt=1 then + begin + MJMaoZ.Text:=Trim(MJMaoZ.Text)+Trim(TButton(Fbtn).Caption); + end else + if FInt=2 then + begin + MJLen.Text:=Trim(MJLen.Text)+Trim(TButton(Fbtn).Caption); + end else + if FInt=3 then + begin + MJFK.Text:=Trim(MJFK.Text)+Trim(TButton(Fbtn).Caption); + end else + if CDS_MJCD.IsEmpty=False then + begin + FColumn:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if Trim(FColumn)<>'' then + begin + with CDS_MJCD do + begin + Edit; + FieldByName(FColumn).Value:=Trim(FieldByName(FColumn).AsString)+Trim(TButton(Fbtn).Caption); + if Trim(fieldbyname('CDQtyS').AsString)<>'' then + Fieldbyname('CDQty').Value:=Trim(fieldbyname('CDQtyS').AsString); + Post; + end; + end; + end; +end; +procedure TfrmMJManageNew.AddSLNew(Fbtn:TSpeedButton); +begin + if PState<1 then Exit; + if Order_MJ.IsEmpty then Exit; + + //if MJMaoZ.Focused then + if FInt=4 then Exit; + if FInt=1 then + begin + MJMaoZ.Text:=Trim(MJMaoZ.Text)+Trim(TSpeedButton(Fbtn).Caption); + MJMaoZ.SelectAll; + end else + if FInt=2 then + begin + MJLen.Text:=Trim(MJLen.Text)+Trim(TSpeedButton(Fbtn).Caption); + MJLen.SelectAll; + end else + if FInt=3 then + begin + MJFK.Text:=Trim(MJFK.Text)+Trim(TSpeedButton(Fbtn).Caption); + MJFK.SelectAll; + end else + if FInt=11 then + begin + if TSpeedButton(Fbtn).Tag=9 then Exit; + Edit1.Text:=Trim(Edit1.Text)+Trim(TSpeedButton(Fbtn).Caption); + Edit1.SelectAll; + end else + if FInt=12 then + begin + if TSpeedButton(Fbtn).Tag=9 then Exit; + Edit2.Text:=Trim(Edit2.Text)+Trim(TSpeedButton(Fbtn).Caption); + Edit2.SelectAll; + end;{ else + if CDS_MJCD.IsEmpty=False then + begin + FColumn:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if Trim(FColumn)<>'' then + begin + with CDS_MJCD do + begin + Edit; + FieldByName(FColumn).Value:=Trim(FieldByName(FColumn).AsString)+Trim(TButton(Fbtn).Caption); + if Trim(fieldbyname('CDQtyS').AsString)<>'' then + Fieldbyname('CDQty').Value:=Trim(fieldbyname('CDQtyS').AsString); + Post; + end; + end; + end; } +end; + +procedure TfrmMJManageNew.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + //if Tv2.OptionsSelection.CellSelect=True then + if CDS_MJCD.IsEmpty then Exit; + if CDS_MJCD.FieldByName('MJID').AsString='' then + begin + CDS_MJCD.Delete; + end; +end; + +procedure TfrmMJManageNew.Button38Click(Sender: TObject); +begin + FColumn:=''; + FInt:=0; + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WFBBZ'; + flagname:=''; + if ShowModal=1 then + begin + Self.MJBanZu.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmMJManageNew.MJMaoZClick(Sender: TObject); +begin + FInt:=1; + FColumn:=''; + panel3.Visible:=True; +end; + +procedure TfrmMJManageNew.MJLenClick(Sender: TObject); +begin + FInt:=2; + FColumn:=''; + panel3.Visible:=True; +end; + +procedure TfrmMJManageNew.MJFKClick(Sender: TObject); +begin + FInt:=3; + FColumn:=''; + panel3.Visible:=True; +end; + +procedure TfrmMJManageNew.MJBanZuClick(Sender: TObject); +begin + FInt:=4; +end; + +procedure TfrmMJManageNew.MJSJKZClick(Sender: TObject); +begin + FInt:=4; +end; + +procedure TfrmMJManageNew.Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + //DataLink_WFBProducttion.ADOLink.Connected:=False; + FInt:=4; + // if PState=1 then Exit; + InitCDGridID(); + //InitCDGrid(); + {with ADOTmp do + begin + close; + sql.Clear; + sql.Add('select * from WFB_MJJY where MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + if ADOTmp.IsEmpty then + begin + MJMaoZ.Text:=''; + MJLen.Text:=''; + MJFK.Text:=''; + MJSJKZ.Text:=''; + end else + SSetWinData(ADOTmp,Panel5); } +end; + +procedure TfrmMJManageNew.Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if CDS_MJCD.IsEmpty=False then + begin + if Trim(CDS_MJCD.fieldbyname('MJID').AsString)='' then + begin + Application.MessageBox('δ,!','ʾ',0); + Exit; + end; + end; + + FInt:=4; + PState:=0; + InitCDGrid(); + with ADOTmp do + begin + close; + sql.Clear; + sql.Add('select * from WFB_MJJY where MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + if ADOTmp.IsEmpty then + begin + MJMaoZ.Text:=''; + MJLen.Text:=''; + MJFK.Text:=''; + MJSJKZ.Text:=''; + end else + SSetWinData(ADOTmp,Panel5); + BtnStatus(False); + Label16.Caption:=''; +end; + + +procedure TfrmMJManageNew.FormClick(Sender: TObject); +begin + FInt:=4; +end; + +procedure TfrmMJManageNew.Button12Click(Sender: TObject); +var + fsj:string; +begin + if PState<1 then Exit; + if Order_MJ.IsEmpty then Exit; + //if MJMaoZ.Focused then + if FInt=4 then Exit; + if FInt=1 then + begin + if Trim(MJMaoZ.Text)<>'' then + MJMaoZ.Text:=Copy(Trim(MJMaoZ.Text),1,Length(Trim(MJMaoZ.Text))-1); + end else + if FInt=2 then + begin + if Trim(MJLen.Text)<>'' then + MJLen.Text:=Copy(Trim(MJLen.Text),1,Length(Trim(MJLen.Text))-1); + end else + if FInt=3 then + begin + if Trim(MJFK.Text)<>'' then + MJFK.Text:=Copy(Trim(MJFK.Text),1,Length(Trim(MJFK.Text))-1); + end else + begin + FColumn:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if Trim(FColumn)<>'' then + begin + if Trim(CDS_MJCD.FieldByName(FColumn).AsString)<>'' then + begin + with CDS_MJCD do + begin + Edit; + if Length(CDS_MJCD.FieldByName(FColumn).AsString)=1 then + begin + FieldByName(FColumn).Value:=null ; + FieldByName('CDQty').Value:=0; + end + else + begin + FieldByName(FColumn).Value:=Copy(Trim(FieldByName(FColumn).AsString),1,Length(Trim(FieldByName(FColumn).AsString))-1); + FieldByName('CDQty').Value:=FieldByName(FColumn).Value; + end; + Post; + end; + //MValue:=TcxTextEdit(Tv2CDQty).EditingText; + //BTPrint.SetFocus; + end; + + + end; + end; +end; + +procedure TfrmMJManageNew.Timer1Timer(Sender: TObject); +begin + CDQty.Text:=Tv2.DataController.Summary.FooterSummaryTexts[0]; +end; + +procedure TfrmMJManageNew.MJMaoZChange(Sender: TObject); +var + KZSX,KZXX,FMJMaoZ,FMJLen,FMJFK:string; +begin + if PState=0 then Exit; + if (Trim(MJMaoZ.Text)<>'') and (Trim(MJLen.Text)<>'') and (Trim(MJFK.Text)<>'') then + begin + MJSJKZ.Text:=FloatToStr(StrToFloat(MJMaoZ.Text)/(StrToFloat(MJLen.Text)*StrToFloat(MJFK.Text)/100)) ; + MJSJKZ.Text:=FloatToStr(SSWR(StrToFloat(MJSJKZ.Text)*1000)); + //KZSX:=Trim(Order_MJ.fieldbyname('MJKZD').AsString); + //KZXX:=Trim(Order_MJ.fieldbyname('MJKZX').AsString); + KZSX:=Trim(Order_MJ.fieldbyname('KZBig').AsString); + KZXX:=Trim(Order_MJ.fieldbyname('KZSmal').AsString); + if (StrToFloat(MJSJKZ.Text)>=StrToFloat(KZXX)) and (StrToFloat(MJSJKZ.Text)<=StrToFloat(KZSX)) then + begin + Label14.Visible:=True; + Label14.Caption:='ĸ'; + Label14.Font.Color:=clBlue; + end else + if StrToFloat(MJSJKZ.Text)StrToFloat(KZSX) then + begin + Label14.Visible:=True; + Label14.Caption:='ĸس>'+floattostr(StrToFloat(MJSJKZ.Text)-StrToFloat(KZSX))+'g/O'; + Label14.Font.Color:=clRed; + end; + end else + begin + MJSJKZ.Text:=''; + Label14.Caption:=''; + Label14.Visible:=False; + end; + +end; + +function TfrmMJManageNew.SaveData():Boolean; +var + maxno,FMJID,BZID:String; + FMJLen:Double; + FOrder:Integer; +begin + if PState=1 then + FMJID:='' + else if PState=2 then + FMJID:=Trim(CDS_MJID.fieldbyname('MJID').AsString) + else if PState<1 then Exit; + try + ADOCmd.Connection.BeginTrans; + /// + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from WFB_MJJY where MJId='''+Trim(FMJID)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMJID)='' then + begin + Append; + with ADOTmp do + begin + Close; + sql.Clear; + SQL.Add('select Max(Cast(MJID as int)) as MJIDInt from WFB_JYResult'); + if Trim(SCXFlag)<>'' then + begin + sql.Add(' where JTType='''+Trim(SCXFlag)+''''); + end; + Open; + end; + maxno:=Trim(ADOTmp.fieldbyname('MJIDInt').AsString); + + {if GetLSNo(ADOTmp,maxno,Trim(SCXFlag),'WFB_MJJY',2,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ˮ쳣','ʾ',0); + exit; + end; } + end + else begin + maxno:=Trim(FMJID); + Edit; + end; + FieldByName('MainId').value:=Trim(Order_MJ.fieldbyname('MainId').AsString); + FieldByName('SubId').value:=Trim(Order_MJ.fieldbyname('SubId').AsString); + FieldByName('MJID').Value:=Trim(maxno); + FieldByName('MJMaoZ').Value:=Trim(MJMaoZ.Text); + FieldByName('MJLen').Value:=Trim(MJLen.Text); + FieldByName('MJFK').Value:=Trim(MJFK.Text); + FieldByName('MJSJKZ').Value:=Trim(MJSJKZ.Text); + FieldByName('MJBanZu').Value:=Trim(MJBanZu.Text); + if Trim(FMJID)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTmp); + end; + if Trim(SCXFlag)<>'' then + begin + FieldByName('JTType').Value:=Trim(SCXFlag); + end; + Post; + end; + FMJID:=Trim(maxno); + ///ĸõ + with CDS_MJCD do + begin + First; + while not Eof do + begin + if Trim(CDS_MJCD.fieldbyname('MCID').AsString)='' then + begin + if GetLSNo(ADOTmp,maxno,'MC','WFB_MJJY_CD',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_MJCD.fieldbyname('MCID').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_MJJY_CD '); + sql.Add(' where MCID='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_MJCD.fieldbyname('MCID').AsString)='' then + Append + else + Edit; + FieldByName('MJId').Value:=Trim(FMJID); + FieldByName('MCID').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,Tv2,CDS_MJCD,'WFB_MJJY_CD',0); + Post; + end; + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('MCID').Value:=Trim(maxno); + Next; + end; + end; + //Ա + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from WFB_BanZu where MJID='''+Trim(FMJID)+''''); + sql.Add(' and BanZu='''+Trim(MJBanZu.Text)+''''); + Open; + end; + if ADOTmp.IsEmpty then + begin + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from WFB_BanZu where MJID='''+Trim(FMJID)+''''); + Open; + end; + if ADOTmp.IsEmpty then + begin + FMJLen:=0; + end else + begin + FMJLen:=ADOTmp.fieldbyname('MJLen').Value; + end; + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select * from SY_User where BanZu='''+Trim(MJBanZu.Text)+''''); + Open; + end; + with ADOTmp do + begin + First; + while not eof do + begin + if GetLSNo(ADOCmd,BZID,'BZ','WFB_BanZu',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_BanZu where 1<>1'); + open; + end; + with ADOCmd do + begin + Append; + FieldByName('BZID').Value:=Trim(BZID); + FieldByName('BanZu').Value:=Trim(MJBanZu.Text); + FieldByName('MJID').Value:=Trim(FMJID); + FieldByName('MJLen').Value:=StrToFloat(MJLen.Text)-FMJlen; + FieldByName('UserId').Value:=Trim(ADOTmp.fieldbyname('UserId').AsString); + FieldByName('UserName').Value:=Trim(ADOTmp.fieldbyname('UserName').AsString); + FieldByName('Filler').Value:=Trim(DName); + Post; + end; + Next; + end; + end; + end; + //Ա + with Order_MJ do + begin + Edit; + FieldByName('SCMQty').Value:=FieldByName('SCMQty').Value+Strtofloat(MJLen.Text); + Post; + end; + with Order_MJ do + begin + Edit; + FieldByName('WSCMQty').Value:=FieldByName('OrderQtyM').Value-FieldByName('SCMQty').Value; + Post; + end; + if ((Order_MJ.FieldByName('SCMQty').Value-Order_MJ.FieldByName('OrderQtyM').Value)/Order_MJ.FieldByName('OrderQtyM').Value )>=0 then + begin + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Sub Set SCStatus='''',SCOrder='''' '); + SQL.Add(' where SubId='''+Trim(Order_MJ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOTmp do + begin + Close; + sql.Clear; + SQL.Add('exec P_ProductAnPai_JY'); + Open; + end; + if ADOTmp.IsEmpty=False then + begin + FOrder:=1; + with ADOTmp do + begin + First; + while not Eof do + begin + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Sub Set SCOrder='''+Trim(IntToStr(FOrder))+''''); + SQL.Add(' where SubId='''+Trim(ADOTmp.FieldByName('SubId').Asstring)+''''); + ExecSQL; + end; + FOrder:=FOrder+1; + Next; + end; + end; + SCInitGrid:=1; + end; + end else + begin + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Sub Set SCStatus='''' '); + SQL.Add(' where SubId='''+Trim(Order_MJ.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + InitCDGridID(); + CDS_MJID.Locate('MJID',FMJID,[]); + PState:=0; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TfrmMJManageNew.BTAddClick(Sender: TObject); +begin + + if PState=1 then + begin + if( (CDS_MJCD.IsEmpty=False) or (Trim(MJMaoZ.Text)<>'') or (Trim(MJLen.Text)<>'') or (Trim(MJFK.Text)<>'') ) then + if Application.MessageBox(PChar(' δӡǷҪ?'+#13+#13+'"(Y)"ǰݽᶪʧ'),'ʾ',32+4)<>IDYES then Exit; + end; + if Order_MJ.IsEmpty then Exit; + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select BanZu from SY_User where UserId='''+Trim(DCode)+''''); + Open; + MJBanZu.Text:=Trim(Fieldbyname('BanZu').AsString); + end; + if Trim(MJBanZu.Text)='' then + begin + Application.MessageBox('Ϊգð飡','ʾ',0); + Exit; + end; + PState:=1; + InitCDGrid(); + SClearData(Panel5,0); + {Tv2.OptionsSelection.CellSelect:=True; + MJMaoZ.ReadOnly:=False; + MJLen.ReadOnly:=False; + MJFK.ReadOnly:=False; + Button38.Enabled:=True; } + BtnStatus(True); + + Label16.Caption:=''; +end; + +procedure TfrmMJManageNew.BTEditClick(Sender: TObject); +begin + if CDS_MJID.IsEmpty then Exit; + PState:=2; + Label16.Caption:='޸'; +end; + +procedure TfrmMJManageNew.BTPrintClick(Sender: TObject); +var + fPrintFile,FFMJFK,FFYDFK:string; +begin + if Order_MJ.IsEmpty then Exit; + if FInt=4 then + begin + if CDS_MJID.IsEmpty=False then + begin + Application.MessageBox('Ѵ룿볢ش','ʾ',0); + Exit; + end; + end; + if Trim(MJMaoZ.Text)='' then + begin + Application.MessageBox('ëزΪգ','ʾ',0); + Exit; + end; + if Trim(MJLen.Text)='' then + begin + Application.MessageBox('ȲΪգ','ʾ',0); + Exit; + end; + if Trim(MJFK.Text)='' then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + FFMJFK:=Trim(MJFK.Text); + FFYDFK:=Trim(Order_MJ.fieldbyname('BigMF').AsString); + if ((StrToFloat(FFMJFK)-StrToFloat(FFYDFK))/StrToFloat(FFYDFK))<-0.3 then + begin + Application.MessageBox('¼','ʾ',0); + Exit; + end; + if ((StrToFloat(FFMJFK)-StrToFloat(FFYDFK))/StrToFloat(FFYDFK))>0.3 then + begin + Application.MessageBox('¼','ʾ',0); + Exit; + end; + if Trim(MJBanZu.Text)='' then + begin + Application.MessageBox('鲻Ϊգ','ʾ',0); + Exit; + end; + Panel6.Visible:=True; + { if PState=1 then + begin + if Application.MessageBox('ȷҪӡ𣿴ӡݽ޸ģ','ʾ',32+4)<>IDYES then Exit; + end; + if SaveData() then + begin + BtnStatus(False); + end; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select RTrim(A.MJID) MJID,RTrim(A.MJSJKZ) MJSJKZ,RTrim(A.MJFK) MJFK,RTrim(B.OrderNo) OrderNo,RTrim(B.WFBCodeName) WFBCodeName from WFB_MJJY A inner join WFBOrder_Main B on A.MainId=B.MainId'); + sql.Add(' where A.MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ĸǩ.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + RM2.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ĸǩ.rmf'),'ʾ',0); + end; + Label16.Caption:=''; + BTAdd.Click; } +end; +procedure TfrmMJManageNew.BtnStatus(BSInt:Boolean); +begin + Tv2.OptionsSelection.CellSelect:=BSInt; + MJMaoZ.ReadOnly:=not BSInt; + MJLen.ReadOnly:=not BSInt; + MJFK.ReadOnly:=not BSInt; + Button38.Enabled:=BSInt; +end; +procedure TfrmMJManageNew.Tv2CDQtyPropertiesEditValueChanged(Sender: TObject); +var + mvalue:string; +begin + try + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)<>'' then + begin + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('CDQty').Value:=mvalue; + CDS_MJCD.Post; + end else + begin + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('CDQty').Value:=0; + CDS_MJCD.Post; + end; + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('CDQtyS').Value:=mvalue; + except + Application.MessageBox('Ƿ֣','ʾ',0); + end; +end; + +procedure TfrmMJManageNew.SpeedButton1Click(Sender: TObject); +begin + AddSLNew(TSpeedButton(Sender)); +end; + +procedure TfrmMJManageNew.SpeedButton12Click(Sender: TObject); +var + fsj:string; +begin + if PState<1 then Exit; + if Order_MJ.IsEmpty then Exit; + //if MJMaoZ.Focused then + if FInt=4 then Exit; + if FInt=1 then + begin + if Trim(MJMaoZ.Text)<>'' then + begin + MJMaoZ.Text:=Copy(Trim(MJMaoZ.Text),1,Length(Trim(MJMaoZ.Text))-1); + MJMaoZ.SelectAll; + end; + end else + if FInt=2 then + begin + if Trim(MJLen.Text)<>'' then + begin + MJLen.Text:=Copy(Trim(MJLen.Text),1,Length(Trim(MJLen.Text))-1); + MJLen.SelectAll; + end; + end else + if FInt=3 then + begin + if Trim(MJFK.Text)<>'' then + begin + MJFK.Text:=Copy(Trim(MJFK.Text),1,Length(Trim(MJFK.Text))-1); + MJFK.SelectAll; + end; + end else + if FInt=11 then + begin + if Trim(Edit1.Text)<>'' then + begin + Edit1.Text:=Copy(Trim(Edit1.Text),1,Length(Trim(Edit1.Text))-1); + Edit1.SelectAll; + end; + end else + if FInt=12 then + begin + if Trim(Edit2.Text)<>'' then + begin + Edit2.Text:=Copy(Trim(Edit2.Text),1,Length(Trim(Edit2.Text))-1); + Edit2.SelectAll; + end; + end;{ else + begin + FColumn:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if Trim(FColumn)<>'' then + begin + if Trim(CDS_MJCD.FieldByName(FColumn).AsString)<>'' then + begin + with CDS_MJCD do + begin + Edit; + if Length(CDS_MJCD.FieldByName(FColumn).AsString)=1 then + begin + FieldByName(FColumn).Value:=null ; + FieldByName('CDQty').Value:=0; + end + else + begin + FieldByName(FColumn).Value:=Copy(Trim(FieldByName(FColumn).AsString),1,Length(Trim(FieldByName(FColumn).AsString))-1); + FieldByName('CDQty').Value:=FieldByName(FColumn).Value; + end; + Post; + //Tv2.GetColumnByFieldName(FColumn).Selected:=True; + // Tv2.GetColumnByFieldName(FColumn).FocusWithSelection; + //(Tv2.GetColumnByFieldName(FColumn).Properties as TcxTextEditProperties).AutoSelect:=True; + end; + //MValue:=TcxTextEdit(Tv2CDQty).EditingText; + //BTPrint.SetFocus; + end; + + + end; + end;} +end; + +procedure TfrmMJManageNew.SpeedButton13Click(Sender: TObject); +begin + if PState<1 then Exit; + if Order_MJ.IsEmpty then Exit; + FCDName:=Trim(TSpeedButton(Sender).Hint); + MovePanel1.Visible:=True; + Label21.Caption:=Trim(FCDName); + FInt:=11; + Edit1.SetFocus; + Panel3.Visible:=True; + //AddCDNew(TSpeedButton(Sender)); +end; + +procedure TfrmMJManageNew.Panel10MouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel6).perform(WM_SYSCOMMAND, $F012, 0); +end; + +procedure TfrmMJManageNew.Image2Click(Sender: TObject); +begin + Panel6.Visible:=False; +end; + +procedure TfrmMJManageNew.Button3Click(Sender: TObject); +begin + Panel6.Visible:=False; +end; + +procedure TfrmMJManageNew.Button2Click(Sender: TObject); +var + fPrintFile:String; +begin + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_JYResult where Cast(MJID as int)>'); + sql.Add(' (select isnull(Max(Cast(MJID as int)),0) from WFB_MJJY '); + if Trim(SCXFlag)<>'' then + begin + sql.Add(' where JTType='''+Trim(SCXFlag)+''''); + end; + sql.Add(')'); + if Trim(SCXFlag)<>'' then + begin + sql.Add(' and JTType='''+Trim(SCXFlag)+''''); + end; + Open; + end; + if ADOTmp.IsEmpty then + begin + Application.MessageBox('δ鲻ܴӡǩ','ʾ',0); + Exit; + end; + if Order_MJ.Locate('SSel',True,[])=False then + begin + Application.MessageBox('δѡ¼','ʾ',0); + Exit; + end; + if PState=1 then + begin + if Application.MessageBox('ǷҪӡ룿ӡݽ޸ģ','ʾ',32+4)<>IDYES then Exit; + Panel6.Visible:=False; + end; + + if SaveData() then + begin + BtnStatus(False); + end; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add(' select RTrim(A.MJID) MJID,RTrim(Cast(A.MJSJKZ As varchar(20))) MJSJKZ,RTrim(Cast(A.MJFK as varchar(20))) MJFK,RTrim(B.OrderNo) OrderNo,'); + sql.Add(' RTrim(Cast(A.MJMaoZ As varchar(20))) MJMaoZ,RTrim(Cast(A.MJLen As varchar(20))) MJLen,'); + sql.Add(' Rtrim(C.SWFBColor) SWFBColor,Rtrim(Cast(C.SWFBKZ as varchar(20))) SWFBKZ, YLPB=dbo.F_Get_WFBOrder_SubStr(C.SubId,''YLPBSZ'')'); + sql.Add(',RTrim(C.SWFBCodeName) SWFBCodeName from WFB_MJJY A inner join WFBOrder_Main B on A.MainId=B.MainId'); + sql.Add(' inner join WFBOrder_Sub C on A.SubId=C.SubId'); + sql.Add(' where A.MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + if SCInitGrid=1 then + begin + InitGrid(); + SCInitGrid:=0; + end; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ĸǩ.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + //RM2.ShowReport; + RM2.PrintReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ĸǩ.rmf'),'ʾ',0); + end; + Label16.Caption:=''; + BTAdd.Click; +end; + +procedure TfrmMJManageNew.TvSelCellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + fsj:String; +begin + + { fsj:=Trim(Order_MJ.fieldbyname('SubId').AsString); + Order_MJ.DisableControls; + with Order_MJ do + begin + First; + while not Eof do + begin + if Trim(Order_MJ.fieldbyname('SubId').AsString)<>fsj then + begin + Edit; + FieldByName('SSel').Value:=False; + end; + Next; + end; + end; + Order_MJ.EnableControls; + Order_MJ.Locate('SubId',fsj,[]); } +end; + +procedure TfrmMJManageNew.cxGridDBColumn2PropertiesChange(Sender: TObject); +var + fsj:String; +begin + + fsj:=Trim(Order_MJ.fieldbyname('SubId').AsString); + Order_MJ.DisableControls; + with Order_MJ do + begin + First; + while not Eof do + begin + if Trim(Order_MJ.fieldbyname('SubId').AsString)<>fsj then + begin + Edit; + FieldByName('SSel').Value:=False; + end; + Next; + end; + end; + Order_MJ.EnableControls; + Order_MJ.Locate('SubId',fsj,[]); +end; + +procedure TfrmMJManageNew.Button1Click(Sender: TObject); +begin + + //MovePanel1.Visible:=True; + if Trim(Edit1.Text)='' then + begin + Application.MessageBox('λòΪգ','ʾ',0); + exit; + end; + with CDS_MJCD do + begin + Append; + FieldByName('cdname').Value:=Trim(FCDName); + FieldByName('CDbeg').Value:=Trim(Edit1.Text); + FieldByName('CDEnd').Value:=Trim(Edit2.Text); + if Trim(Edit2.Text)<>'' then + begin + FieldByName('CDQty').Value:=StrToFloat(Edit2.Text)-StrToFloat(Edit1.Text); + end else + begin + FieldByName('CDQty').Value:=0; + end; + Post; + end; + Edit1.Text:=''; + Edit2.Text:=''; + MovePanel1.Visible:=False; +end; + +procedure TfrmMJManageNew.Button4Click(Sender: TObject); +begin + MovePanel1.Visible:=False; +end; + +procedure TfrmMJManageNew.ToolButton1Click(Sender: TObject); +begin + InitGrid(); + InitJP(); +end; + +procedure TfrmMJManageNew.Edit1Click(Sender: TObject); +begin + FInt:=11; + panel3.Visible:=True; +end; + +procedure TfrmMJManageNew.Edit2Click(Sender: TObject); +begin + FInt:=12; + panel3.Visible:=True; +end; + +procedure TfrmMJManageNew.Button5Click(Sender: TObject); +var + fPrintFile:String; +begin + if CDS_MJID.IsEmpty then Exit; + + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set PrtAgnFlag=1,PrtAgnDate=getdate(),PrtAgnPerson='''+Trim(DName)+''''); + sql.Add(' where MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select RTrim(A.MJID) MJID,RTrim(A.MJSJKZ) MJSJKZ,RTrim(A.MJFK) MJFK,RTrim(B.OrderNo)+'' ش'' OrderNo,'); + sql.Add('RTrim(A.MJLen) MJLen,RTrim(A.MJMaoZ) MJMaoZ,'); + sql.Add('Rtrim(C.SWFBColor) SWFBColor,Rtrim(C.SWFBKZ) SWFBKZ, YLPB=dbo.F_Get_WFBOrder_SubStr(C.SubId,''YLPBSZ'')'); + sql.Add(',RTrim(C.SWFBCodeName) SWFBCodeName from WFB_MJJY A inner join WFBOrder_Main B on A.MainId=B.MainId'); + sql.Add(' inner join WFBOrder_Sub C on A.SubId=C.SubId'); + sql.Add(' where A.MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ĸǩ.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + //RM2.ShowReport; + RM2.PrintReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ĸǩ.rmf'),'ʾ',0); + end; + +end; + +procedure TfrmMJManageNew.SpeedButton49Click(Sender: TObject); +begin + Panel3.Visible:=False; +end; + +end. diff --git a/艾登贸易管理/U_MJManageNewFD1.dfm b/艾登贸易管理/U_MJManageNewFD1.dfm new file mode 100644 index 0000000..7b89fda --- /dev/null +++ b/艾登贸易管理/U_MJManageNewFD1.dfm @@ -0,0 +1,2054 @@ +object frmMJManageNewFD: TfrmMJManageNewFD + Left = 89 + Top = 0 + Width = 912 + Height = 705 + Caption = #25104#21697#26816#39564 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClick = FormClick + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1366 + Height = 30 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = ToolButton1Click + end + object TBCD: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #30133#28857#31649#29702 + ImageIndex = 132 + OnClick = TBCDClick + end + object TBClose: TToolButton + Left = 150 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxGrid2: TcxGrid + Left = 817 + Top = 78 + Width = 403 + Height = 571 + Align = alLeft + TabOrder = 1 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv2CellClick + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column1 + end + item + Kind = skSum + Column = Tv2CDQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object tv2CDType: TcxGridDBColumn + Caption = #30133#28857#21517#31216 + DataBinding.FieldName = 'CDName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle4 + Styles.Header = cxStyle4 + Width = 157 + end + object tv2CDWZ: TcxGridDBColumn + Caption = #20301#32622#36215 + DataBinding.FieldName = 'CDBeg' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = cxStyle1 + Styles.Header = cxStyle1 + Width = 82 + end + object v2Column2: TcxGridDBColumn + Caption = #20301#32622#27490 + DataBinding.FieldName = 'CDend' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Styles.Content = cxStyle1 + Styles.Header = cxStyle1 + Width = 81 + end + object Tv2CDQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'CDQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = Tv2CDQtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = cxStyle3 + Styles.Header = cxStyle3 + Width = 76 + end + object Tv2CDReason: TcxGridDBColumn + Caption = #21407#22240 + DataBinding.FieldName = 'CDReason' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 131 + end + object v2Column1: TcxGridDBColumn + DataBinding.FieldName = 'CDQty' + Visible = False + Width = 55 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGrid3: TcxGrid + Left = 1220 + Top = 78 + Width = 146 + Height = 571 + Align = alLeft + TabOrder = 2 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv3CellClick + DataController.DataSource = DataSource3 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = cxStyle4 + Styles.IncSearch = cxStyle4 + Styles.Selection = cxStyle4 + object cxGridDBColumn1: TcxGridDBColumn + Caption = #24050#30331#35760 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle5 + Styles.Header = cxStyle5 + Width = 137 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 78 + Width = 601 + Height = 571 + Align = alLeft + TabOrder = 3 + object SpeedButton13: TSpeedButton + Left = 3 + Top = 0 + Width = 70 + Height = 70 + Caption = #23567#40657#28857 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton14: TSpeedButton + Left = 77 + Top = 0 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton15: TSpeedButton + Left = 151 + Top = 0 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton16: TSpeedButton + Left = 225 + Top = 0 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton17: TSpeedButton + Left = 299 + Top = 0 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton18: TSpeedButton + Left = 373 + Top = 0 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton19: TSpeedButton + Left = 447 + Top = 0 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton20: TSpeedButton + Left = 521 + Top = 0 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton21: TSpeedButton + Left = 3 + Top = 74 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton22: TSpeedButton + Left = 77 + Top = 74 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton23: TSpeedButton + Left = 151 + Top = 74 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton24: TSpeedButton + Left = 225 + Top = 74 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton25: TSpeedButton + Left = 299 + Top = 74 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton26: TSpeedButton + Left = 373 + Top = 74 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton27: TSpeedButton + Left = 447 + Top = 74 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton28: TSpeedButton + Left = 521 + Top = 74 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton29: TSpeedButton + Left = 3 + Top = 148 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton30: TSpeedButton + Left = 77 + Top = 148 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton31: TSpeedButton + Left = 151 + Top = 148 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton32: TSpeedButton + Left = 225 + Top = 148 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton33: TSpeedButton + Left = 299 + Top = 148 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton34: TSpeedButton + Left = 373 + Top = 148 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton35: TSpeedButton + Left = 447 + Top = 148 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton36: TSpeedButton + Left = 521 + Top = 148 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton37: TSpeedButton + Left = 3 + Top = 222 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton38: TSpeedButton + Left = 77 + Top = 222 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton39: TSpeedButton + Left = 151 + Top = 222 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton40: TSpeedButton + Left = 225 + Top = 222 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton41: TSpeedButton + Left = 299 + Top = 222 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton42: TSpeedButton + Left = 373 + Top = 222 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton43: TSpeedButton + Left = 447 + Top = 222 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton44: TSpeedButton + Left = 521 + Top = 222 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton45: TSpeedButton + Left = 3 + Top = 296 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton46: TSpeedButton + Left = 77 + Top = 296 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton47: TSpeedButton + Left = 151 + Top = 296 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton48: TSpeedButton + Left = 225 + Top = 296 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton50: TSpeedButton + Left = 299 + Top = 296 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton51: TSpeedButton + Left = 373 + Top = 296 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton52: TSpeedButton + Left = 447 + Top = 296 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton53: TSpeedButton + Left = 521 + Top = 296 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton54: TSpeedButton + Left = 3 + Top = 370 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton55: TSpeedButton + Left = 77 + Top = 370 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton56: TSpeedButton + Left = 151 + Top = 370 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton57: TSpeedButton + Left = 225 + Top = 370 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton58: TSpeedButton + Left = 299 + Top = 370 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton59: TSpeedButton + Left = 373 + Top = 370 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton60: TSpeedButton + Left = 447 + Top = 370 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton61: TSpeedButton + Left = 521 + Top = 370 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton62: TSpeedButton + Left = 3 + Top = 444 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton63: TSpeedButton + Left = 77 + Top = 444 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton64: TSpeedButton + Left = 151 + Top = 444 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton65: TSpeedButton + Left = 225 + Top = 444 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton66: TSpeedButton + Left = 299 + Top = 444 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton67: TSpeedButton + Left = 373 + Top = 444 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton68: TSpeedButton + Left = 447 + Top = 444 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton69: TSpeedButton + Left = 521 + Top = 444 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton70: TSpeedButton + Left = 3 + Top = 518 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton71: TSpeedButton + Left = 77 + Top = 518 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton72: TSpeedButton + Left = 151 + Top = 518 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton73: TSpeedButton + Left = 225 + Top = 518 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton74: TSpeedButton + Left = 299 + Top = 518 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton75: TSpeedButton + Left = 373 + Top = 518 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton76: TSpeedButton + Left = 447 + Top = 518 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton77: TSpeedButton + Left = 521 + Top = 518 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + end + object MovePanel1: TMovePanel + Left = 136 + Top = 112 + Width = 313 + Height = 281 + BevelInner = bvLowered + Color = clSkyBlue + TabOrder = 4 + Visible = False + object Label17: TLabel + Left = 29 + Top = 24 + Width = 88 + Height = 21 + Caption = #36215#22987#20301#32622 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 178 + Top = 59 + Width = 20 + Height = 19 + Caption = #21040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 264 + Top = 24 + Width = 22 + Height = 21 + Caption = #30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label20: TLabel + Left = 264 + Top = 89 + Width = 22 + Height = 21 + Caption = #30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label21: TLabel + Left = 29 + Top = 89 + Width = 84 + Height = 21 + Caption = 'Label21' + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -21 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 264 + Top = 167 + Width = 22 + Height = 21 + Caption = #30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 29 + Top = 167 + Width = 92 + Height = 21 + Caption = #38271' '#24230 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Edit1: TEdit + Left = 124 + Top = 14 + Width = 131 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnChange = Edit2Change + OnClick = Edit1Click + end + object Button1: TButton + Left = 36 + Top = 221 + Width = 66 + Height = 43 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button1Click + end + object Button4: TButton + Left = 190 + Top = 221 + Width = 64 + Height = 42 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Button4Click + end + object Edit2: TEdit + Left = 124 + Top = 79 + Width = 131 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnChange = Edit2Change + OnClick = Edit1Click + end + object CDQty: TEdit + Left = 124 + Top = 157 + Width = 131 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + end + end + object Panel1: TPanel + Left = 0 + Top = 30 + Width = 1366 + Height = 48 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 5 + object Label1: TLabel + Left = 9 + Top = 16 + Width = 80 + Height = 19 + Caption = #25195#25551#20837#21475 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 280 + Top = 15 + Width = 11 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label16: TLabel + Left = 864 + Top = 13 + Width = 42 + Height = 12 + Caption = 'Label16' + Visible = False + end + object APID: TEdit + Left = 88 + Top = 12 + Width = 185 + Height = 27 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + OnKeyPress = APIDKeyPress + end + object BTAdd: TButton + Left = 739 + Top = 8 + Width = 46 + Height = 25 + Caption = #26032#22686 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + Visible = False + OnClick = BTAddClick + end + object BTEdit: TButton + Left = 819 + Top = 8 + Width = 38 + Height = 25 + Caption = #20462#25913 + TabOrder = 2 + Visible = False + OnClick = BTEditClick + end + end + object Panel3: TPanel + Left = 13 + Top = 394 + Width = 588 + Height = 154 + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 6 + Visible = False + object SpeedButton1: TSpeedButton + Left = 4 + Top = 3 + Width = 70 + Height = 70 + Caption = '0' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton2: TSpeedButton + Left = 78 + Top = 3 + Width = 70 + Height = 70 + Caption = '1' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton3: TSpeedButton + Left = 152 + Top = 3 + Width = 70 + Height = 70 + Caption = '2' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton4: TSpeedButton + Left = 226 + Top = 3 + Width = 70 + Height = 70 + Caption = '3' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton5: TSpeedButton + Left = 300 + Top = 5 + Width = 70 + Height = 70 + Caption = '4' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton6: TSpeedButton + Left = 374 + Top = 5 + Width = 70 + Height = 70 + Caption = '5' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton7: TSpeedButton + Left = 5 + Top = 78 + Width = 70 + Height = 70 + Caption = '6' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton8: TSpeedButton + Left = 79 + Top = 78 + Width = 70 + Height = 70 + Caption = '7' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton9: TSpeedButton + Left = 153 + Top = 80 + Width = 70 + Height = 70 + Caption = '8' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton10: TSpeedButton + Left = 227 + Top = 80 + Width = 70 + Height = 70 + Caption = '9' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton11: TSpeedButton + Tag = 9 + Left = 301 + Top = 80 + Width = 70 + Height = 70 + Caption = '.' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton12: TSpeedButton + Left = 375 + Top = 80 + Width = 70 + Height = 70 + Caption = #8592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton12Click + end + object SpeedButton49: TSpeedButton + Tag = 9 + Left = 456 + Top = 52 + Width = 89 + Height = 69 + Caption = #38544#34255 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton49Click + end + end + object Panel2: TPanel + Left = 601 + Top = 78 + Width = 216 + Height = 571 + Align = alLeft + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 7 + object Label9: TLabel + Left = 174 + Top = 79 + Width = 15 + Height = 22 + Caption = 'M' + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label3: TLabel + Left = 174 + Top = 136 + Width = 26 + Height = 22 + Caption = 'cm' + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label4: TLabel + Left = 174 + Top = 191 + Width = 24 + Height = 22 + Caption = 'Kg' + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label5: TLabel + Left = 17 + Top = 79 + Width = 40 + Height = 23 + Caption = #38271#24230 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label6: TLabel + Left = 17 + Top = 136 + Width = 40 + Height = 23 + Caption = #24133#23485 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label11: TLabel + Left = 17 + Top = 191 + Width = 40 + Height = 23 + Caption = #37325#37327 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label10: TLabel + Left = 17 + Top = 290 + Width = 40 + Height = 23 + Caption = #27491#21697 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label12: TLabel + Left = 114 + Top = 290 + Width = 40 + Height = 22 + Caption = #27425#21697 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label13: TLabel + Left = 174 + Top = 18 + Width = 15 + Height = 22 + Caption = 'M' + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label14: TLabel + Left = 17 + Top = 18 + Width = 40 + Height = 23 + Caption = #21407#30721 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label15: TLabel + Left = 79 + Top = 348 + Width = 5 + Height = 22 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + Visible = False + end + object Label22: TLabel + Left = 174 + Top = 239 + Width = 36 + Height = 22 + Caption = 'g/'#13217 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label23: TLabel + Left = 17 + Top = 238 + Width = 40 + Height = 23 + Caption = #20811#37325 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object MJFK: TEdit + Left = 61 + Top = 127 + Width = 110 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnClick = Edit1Click + end + object MJLen: TEdit + Left = 61 + Top = 70 + Width = 110 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Edit1Click + end + object MJMaoZ: TEdit + Left = 61 + Top = 182 + Width = 110 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Edit1Click + end + object BTPrint: TButton + Left = 56 + Top = 354 + Width = 105 + Height = 70 + Caption = #25171#21360 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = BTPrintClick + end + object Button5: TButton + Left = 56 + Top = 458 + Width = 105 + Height = 70 + Caption = #37325#25171 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + OnClick = Button5Click + end + object Edit3: TEdit + Left = 62 + Top = 280 + Width = 46 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 5 + Text = #8730 + OnClick = Edit3Click + end + object Edit4: TEdit + Left = 156 + Top = 280 + Width = 46 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 6 + OnClick = Edit4Click + end + object MJQty1: TEdit + Left = 61 + Top = 9 + Width = 110 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + OnClick = Edit1Click + end + object MJSJKZ: TEdit + Left = 61 + Top = 229 + Width = 110 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + OnClick = Edit1Click + end + end + object cxStyleRepository1: TcxStyleRepository + Left = 368 + object cxStyle1: TcxStyle + AssignedValues = [svColor, svFont] + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle2: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Pitch = fpFixed + Font.Style = [fsBold] + TextColor = clDefault + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 400 + end + object DataSource1: TDataSource + DataSet = Order_MJ + Left = 616 + end + object Order_MJ: TClientDataSet + Aggregates = <> + Params = <> + Left = 432 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 576 + end + object ADOCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 536 + end + object ADOTmp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 504 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 648 + end + object RM2: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 464 + ReportData = {} + end + object DataSource2: TDataSource + DataSet = CDS_MJCD + Left = 616 + Top = 48 + end + object CDS_MJCD: TClientDataSet + Aggregates = <> + Params = <> + Left = 656 + Top = 48 + end + object DataSource3: TDataSource + DataSet = CDS_MJID + Left = 1000 + Top = 296 + end + object CDS_MJID: TClientDataSet + Aggregates = <> + Params = <> + Left = 1016 + Top = 312 + end + object Timer1: TTimer + Interval = 100 + Left = 944 + Top = 320 + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 688 + Top = 48 + end + object cxStyleRepository2: TcxStyleRepository + object cxStyle3: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = clBtnFace + Font.Charset = ANSI_CHARSET + Font.Color = clBlue + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + end + object cxStyleRepository3: TcxStyleRepository + object cxStyle4: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clRed + end + end + object cxStyleRepository4: TcxStyleRepository + object cxStyle5: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + end + object cxStyleRepository5: TcxStyleRepository + object cxStyle6: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 656 + Top = 467 + end + object ADOQueryMainDSC: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + SQL.Strings = ( + 'select A.*,C.OrderNo,B.SWFBColor,B.SWFBHW,B.SWFBCodeName,' + ' B.SWFBCode,B.SWFBKZ,B.WKMS,B.KZBig,B.KZSmal,' + + ' SCMQty=(select isnull(Sum(MJLen),0) from WFB_MJJY WM wher' + + 'e WM.APId=A.APId and len(WM.MJID)>8),' + + ' Case when A.OrderQtyM-(select isnull(Sum(MJLen),0) from W' + + 'FB_MJJY WM where WM.APId=A.APId )>0 ' + + ' then A.OrderQtyM-(select isnull(Sum(MJLen),0) fr' + + 'om WFB_MJJY WM where WM.APId=A.APId ) else 0 end as WSCMQty' + 'from WFBOrder_Sub_AnPai A ' + 'inner join WFBOrder_Sub B on A.SubId=B.SubId' + 'inner join WFBOrder_Main C on A.MainId=C.MainId' + + 'where C.ChkStatus='#39#23457#26680#36890#36807#39' and RTrim(isnull(A.SCStatus,'#39#39'))<>'#39#24050#23436#25104#39 + + ' ' + 'and isnull(B.AnPaiChkStatus,'#39#39')='#39#23457#26680#36890#36807#39' and A.SCXDFlag=1' + '') + Left = 840 + Top = 144 + end +end diff --git a/艾登贸易管理/U_MJManageNewFD1.pas b/艾登贸易管理/U_MJManageNewFD1.pas new file mode 100644 index 0000000..04b40c1 --- /dev/null +++ b/艾登贸易管理/U_MJManageNewFD1.pas @@ -0,0 +1,1450 @@ +unit U_MJManageNewFD; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxCalendar, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + 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; +{function CommOpen(fhandle:hwnd;sCommName:PAnsiChar; + IntTime:integer):integer;stdcall;external 'JCYData.DLL'; +function CommClose(sCommName:PAnsiChar):integer;stdcall;external 'JCYData.DLL';} + + +type + TfrmMJManageNewFD = class(TForm) + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxGridPopupMenu1: TcxGridPopupMenu; + DataSource1: TDataSource; + Order_MJ: TClientDataSet; + ADOQueryMain: TADOQuery; + ADOCmd: TADOQuery; + ADOTmp: TADOQuery; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + ToolBar1: TToolBar; + TBClose: TToolButton; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + tv2CDType: TcxGridDBColumn; + tv2CDWZ: TcxGridDBColumn; + Tv2CDQty: TcxGridDBColumn; + Tv2CDReason: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + TBCD: TToolButton; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + DataSource2: TDataSource; + CDS_MJCD: TClientDataSet; + DataSource3: TDataSource; + CDS_MJID: TClientDataSet; + v2Column1: TcxGridDBColumn; + Timer1: TTimer; + ADOQueryPrint: TADOQuery; + v2Column2: TcxGridDBColumn; + ToolButton1: TToolButton; + ScrollBox1: TScrollBox; + SpeedButton13: TSpeedButton; + SpeedButton14: TSpeedButton; + SpeedButton15: TSpeedButton; + SpeedButton16: TSpeedButton; + SpeedButton17: TSpeedButton; + SpeedButton18: TSpeedButton; + SpeedButton19: TSpeedButton; + SpeedButton20: TSpeedButton; + SpeedButton21: TSpeedButton; + SpeedButton22: TSpeedButton; + SpeedButton23: TSpeedButton; + SpeedButton24: TSpeedButton; + SpeedButton25: TSpeedButton; + SpeedButton26: TSpeedButton; + SpeedButton27: TSpeedButton; + SpeedButton28: TSpeedButton; + SpeedButton29: TSpeedButton; + SpeedButton30: TSpeedButton; + SpeedButton31: TSpeedButton; + SpeedButton32: TSpeedButton; + SpeedButton33: TSpeedButton; + SpeedButton34: TSpeedButton; + SpeedButton35: TSpeedButton; + SpeedButton36: TSpeedButton; + SpeedButton37: TSpeedButton; + SpeedButton38: TSpeedButton; + SpeedButton39: TSpeedButton; + SpeedButton40: TSpeedButton; + SpeedButton41: TSpeedButton; + SpeedButton42: TSpeedButton; + MovePanel1: TMovePanel; + Label17: TLabel; + Label18: TLabel; + Label19: TLabel; + Label20: TLabel; + Label21: TLabel; + Edit1: TEdit; + Button1: TButton; + Button4: TButton; + Edit2: TEdit; + cxStyleRepository2: TcxStyleRepository; + cxStyle3: TcxStyle; + cxStyleRepository3: TcxStyleRepository; + cxStyle4: TcxStyle; + cxStyleRepository4: TcxStyleRepository; + cxStyle5: TcxStyle; + cxStyleRepository5: TcxStyleRepository; + cxStyle6: TcxStyle; + cxGridPopupMenu2: TcxGridPopupMenu; + ADOQueryMainDSC: TADOQuery; + SpeedButton43: TSpeedButton; + SpeedButton44: TSpeedButton; + SpeedButton45: TSpeedButton; + SpeedButton46: TSpeedButton; + SpeedButton47: TSpeedButton; + SpeedButton48: TSpeedButton; + SpeedButton50: TSpeedButton; + SpeedButton51: TSpeedButton; + SpeedButton52: TSpeedButton; + SpeedButton53: TSpeedButton; + SpeedButton54: TSpeedButton; + SpeedButton55: TSpeedButton; + Panel1: TPanel; + Panel3: TPanel; + SpeedButton1: TSpeedButton; + SpeedButton2: TSpeedButton; + SpeedButton3: TSpeedButton; + SpeedButton4: TSpeedButton; + SpeedButton5: TSpeedButton; + SpeedButton6: TSpeedButton; + SpeedButton7: TSpeedButton; + SpeedButton8: TSpeedButton; + SpeedButton9: TSpeedButton; + SpeedButton10: TSpeedButton; + SpeedButton11: TSpeedButton; + SpeedButton12: TSpeedButton; + SpeedButton49: TSpeedButton; + Label1: TLabel; + APID: TEdit; + Label2: TLabel; + BTAdd: TButton; + BTEdit: TButton; + Label16: TLabel; + SpeedButton56: TSpeedButton; + SpeedButton57: TSpeedButton; + SpeedButton58: TSpeedButton; + SpeedButton59: TSpeedButton; + SpeedButton60: TSpeedButton; + SpeedButton61: TSpeedButton; + SpeedButton62: TSpeedButton; + SpeedButton63: TSpeedButton; + SpeedButton64: TSpeedButton; + SpeedButton65: TSpeedButton; + SpeedButton66: TSpeedButton; + SpeedButton67: TSpeedButton; + SpeedButton68: TSpeedButton; + SpeedButton69: TSpeedButton; + SpeedButton70: TSpeedButton; + SpeedButton71: TSpeedButton; + SpeedButton72: TSpeedButton; + SpeedButton73: TSpeedButton; + SpeedButton74: TSpeedButton; + SpeedButton75: TSpeedButton; + SpeedButton76: TSpeedButton; + SpeedButton77: TSpeedButton; + Label7: TLabel; + CDQty: TEdit; + Label8: TLabel; + Panel2: TPanel; + Label9: TLabel; + MJFK: TEdit; + Label3: TLabel; + MJLen: TEdit; + Label4: TLabel; + MJMaoZ: TEdit; + Label5: TLabel; + Label6: TLabel; + Label11: TLabel; + BTPrint: TButton; + Button5: TButton; + Edit3: TEdit; + Label10: TLabel; + Edit4: TEdit; + Label12: TLabel; + Label13: TLabel; + Label14: TLabel; + MJQty1: TEdit; + Label15: TLabel; + Label22: TLabel; + Label23: TLabel; + MJSJKZ: TEdit; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBCDClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure MJMaoZClick(Sender: TObject); + procedure MJLenClick(Sender: TObject); + procedure MJFKClick(Sender: TObject); + procedure MJBanZuClick(Sender: TObject); + procedure MJSJKZClick(Sender: TObject); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure FormClick(Sender: TObject); + procedure Button12Click(Sender: TObject); + procedure BTAddClick(Sender: TObject); + procedure BTEditClick(Sender: TObject); + procedure BTPrintClick(Sender: TObject); + procedure Tv2CDQtyPropertiesEditValueChanged(Sender: TObject); + procedure SpeedButton1Click(Sender: TObject); + procedure SpeedButton12Click(Sender: TObject); + procedure SpeedButton13Click(Sender: TObject); + procedure cxGridDBColumn2PropertiesChange(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure Button5Click(Sender: TObject); + procedure SpeedButton49Click(Sender: TObject); + procedure APIDKeyPress(Sender: TObject; var Key: Char); + procedure Edit1Click(Sender: TObject); + procedure Edit2Change(Sender: TObject); + procedure Edit3Click(Sender: TObject); + procedure Edit4Click(Sender: TObject); + private + { Private declarations } + FInt,PState,PrintInt,SCInitGrid,FState:Integer; + FColumn,FBanZu,FAPID,FMainId,FSubId:String; + MValue,FCDName:String; + procedure InitJP(); + procedure InitCDGrid(); + procedure InitCDGridID(); + procedure AddCD(Fbtn:TButton); + procedure AddSL(Fbtn:TButton); + function SaveData():Boolean; + procedure BtnStatus(BSInt:Boolean); + procedure AddSLNew(Fbtn:TSpeedButton); + procedure AddCDNew(Fbtn:TSpeedButton); + procedure SavedataCK(); + public + { Public declarations } + end; + +var + frmMJManageNewFD: TfrmMJManageNewFD; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp,U_iniParam; + +{$R *.dfm} + +procedure TfrmMJManageNewFD.FormDestroy(Sender: TObject); +begin + frmMJManageNewFD:=nil; +end; + +procedure TfrmMJManageNewFD.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + //DataLink_WFBProducttion.ADOLink.Connected:=False; + Action:=caFree; +end; +procedure TfrmMJManageNewFD.InitCDGrid(); +begin + with ADOQueryMain do + begin + Close; + SQL.Clear; + if PState=1 then + sql.Add('select * from WFB_MJJY_CD where MJID='''' ') + else + sql.Add('select * from WFB_MJJY_CD where MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_MJCD); + SInitCDSData20(ADOQueryMain,CDS_MJCD); +end; +procedure TfrmMJManageNewFD.InitCDGridID(); +begin + with ADOQueryMain do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_MJJY where APID='''+Trim(FAPID)+''''); + if Trim(SCXFlag)<>'' then + sql.Add(' and JTType='''+Trim(SCXFlag)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_MJID); + SInitCDSData20(ADOQueryMain,CDS_MJID); +end; + +procedure TfrmMJManageNewFD.TBCloseClick(Sender: TObject); +var + maxno:string; +begin + if CDS_MJCD.IsEmpty=False then + begin + if Trim(CDS_MJCD.FieldByName('MCID').AsString)='' then + begin + //try + //ADOCmd.Connection.BeginTrans; + {with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete from WFB_MJJY_CD_Temp where JTType='''+Trim(SCXFlag)+''''); + Execsql; + end; + with CDS_MJCD do + begin + First; + while not Eof do + begin + if GetLSNo(ADOCmd,maxno,'LS','WFB_MJJY_CD_Temp',2,1)=False then + begin + // ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡõʱʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_MJJY_CD_Temp where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MCID').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,Tv2,CDS_MJCD,'WFB_MJJY_CD_Temp',0); + FieldByName('JTType').Value:=Trim(SCXFlag); + Post; + end; + Next; + end; + end; } + close; + //ADOCmd.Connection.CommitTrans; + //ModalResult:=1; + //except + //ADOCmd.Connection.RollbackTrans; + //Application.MessageBox('ʱʧܣ','ʾ',0); + //end; + end else + begin + Close; + end; + end else + begin + Close; + end; + + + +end; + +procedure TfrmMJManageNewFD.Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + fsj:string; +begin + //FInt:=0; + //Tv1.DataController.FocusedRecordIndex; + //fsj:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; +end; + +procedure TfrmMJManageNewFD.TBCDClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WFBCD'; + flagname:='õ'; + fnote:=True; + V1Note.Caption:='Ӣ'; + if ShowModal=1 then + begin + Self.InitJP(); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmMJManageNewFD.FormShow(Sender: TObject); +begin + InitJP(); + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select BanZu from SY_User where UserId='''+Trim(DCode)+''''); + Open; + FBanZu:=Trim(Fieldbyname('BanZu').AsString); + end; + {if Trim(FBanZu)='' then + begin + Application.MessageBox('Ϊգð飡','ʾ',0); + Exit; + end; } + APID.SetFocus; +end; +procedure TfrmMJManageNewFD.InitJP(); +var + AA:array[0..100] of string; + i,j:Integer; +begin + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select ZDYName from KH_Zdy where Type=''WFBCD'' order by ZDYNO '); + Open; + end; + if ADOTmp.IsEmpty then + begin + Application.MessageBox('ûжõ㣡','ʾ',0); + Exit; + end; + with ADOTmp do + begin + First; + i:=0; + while not Eof do + begin + AA[i]:=Trim(fieldbyname('ZDYName').AsString); + i:=i+1; + Next; + end; + end; + i:=i-1; + if i>63 then + begin + i:=63; + end; + for j:=0 to i do + begin + with ScrollBox1 do + begin + TSpeedButton(Controls[j]).Visible:=True; + TSpeedButton(Controls[j]).Hint:=AA[j]; + if Length(AA[j])>4 then + begin + TSpeedButton(Controls[j]).Caption:=Copy(Trim(AA[j]),1,4)+#13+Copy(Trim(AA[j]),5,Length(AA[j])-4); + end else + TSpeedButton(Controls[j]).Caption:=AA[j]; + end; + end; +end; + +procedure TfrmMJManageNewFD.AddCD(Fbtn:TButton); +begin + if PState<1 then Exit; + if Order_MJ.IsEmpty then Exit; + with CDS_MJCD do + begin + Append; + FieldByName('cdname').Value:=Trim(TButton(Fbtn).Caption); + Post; + end; +end; +procedure TfrmMJManageNewFD.AddCDNew(Fbtn:TSpeedButton); +begin + with CDS_MJCD do + begin + Append; + FieldByName('cdname').Value:=Trim(TSpeedButton(Fbtn).Hint); + Post; + end; +end; +procedure TfrmMJManageNewFD.AddSL(Fbtn:TButton); +begin + if PState<1 then Exit; + if Order_MJ.IsEmpty then Exit; + + //if MJMaoZ.Focused then + if FInt=4 then Exit; + if CDS_MJCD.IsEmpty=False then + begin + FColumn:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if Trim(FColumn)<>'' then + begin + with CDS_MJCD do + begin + Edit; + FieldByName(FColumn).Value:=Trim(FieldByName(FColumn).AsString)+Trim(TButton(Fbtn).Caption); + if Trim(fieldbyname('CDQtyS').AsString)<>'' then + Fieldbyname('CDQty').Value:=Trim(fieldbyname('CDQtyS').AsString); + Post; + end; + end; + end; +end; +procedure TfrmMJManageNewFD.AddSLNew(Fbtn:TSpeedButton); +begin + if PState<1 then Exit; + if Trim(FAPID)='' then Exit; + + //if MJMaoZ.Focused then + if FInt=4 then Exit; + if FInt=11 then + begin + if TSpeedButton(Fbtn).Tag=9 then Exit; + Edit1.Text:=Trim(Edit1.Text)+Trim(TSpeedButton(Fbtn).Caption); + Edit1.SelectAll; + end else + if FInt=12 then + begin + if TSpeedButton(Fbtn).Tag=9 then Exit; + Edit2.Text:=Trim(Edit2.Text)+Trim(TSpeedButton(Fbtn).Caption); + Edit2.SelectAll; + end;{ else + if CDS_MJCD.IsEmpty=False then + begin + FColumn:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if Trim(FColumn)<>'' then + begin + with CDS_MJCD do + begin + Edit; + FieldByName(FColumn).Value:=Trim(FieldByName(FColumn).AsString)+Trim(TButton(Fbtn).Caption); + if Trim(fieldbyname('CDQtyS').AsString)<>'' then + Fieldbyname('CDQty').Value:=Trim(fieldbyname('CDQtyS').AsString); + Post; + end; + end; + end; } +end; + +procedure TfrmMJManageNewFD.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + //if Tv2.OptionsSelection.CellSelect=True then + if CDS_MJCD.IsEmpty then Exit; + + if Trim(CDS_MJCD.fieldbyname('MCID').AsString)='' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + CDS_MJCD.Delete; + end; + +end; + +procedure TfrmMJManageNewFD.MJMaoZClick(Sender: TObject); +begin + FInt:=1; + FColumn:=''; + panel3.Visible:=True; +end; + +procedure TfrmMJManageNewFD.MJLenClick(Sender: TObject); +begin + FInt:=2; + FColumn:=''; + panel3.Visible:=True; +end; + +procedure TfrmMJManageNewFD.MJFKClick(Sender: TObject); +begin + FInt:=3; + FColumn:=''; + panel3.Visible:=True; +end; + +procedure TfrmMJManageNewFD.MJBanZuClick(Sender: TObject); +begin + FInt:=4; +end; + +procedure TfrmMJManageNewFD.MJSJKZClick(Sender: TObject); +begin + FInt:=4; +end; + +procedure TfrmMJManageNewFD.Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + //DataLink_WFBProducttion.ADOLink.Connected:=False; + FInt:=4; + // if PState=1 then Exit; + InitCDGridID(); + //InitCDGrid(); + {with ADOTmp do + begin + close; + sql.Clear; + sql.Add('select * from WFB_MJJY where MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + if ADOTmp.IsEmpty then + begin + MJMaoZ.Text:=''; + MJLen.Text:=''; + MJFK.Text:=''; + MJSJKZ.Text:=''; + end else + SSetWinData(ADOTmp,Panel5); } +end; + +procedure TfrmMJManageNewFD.Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if CDS_MJCD.IsEmpty=False then + begin + if Trim(CDS_MJCD.fieldbyname('MJID').AsString)='' then + begin + Application.MessageBox('δ,!','ʾ',0); + Exit; + end; + end; + + FInt:=4; + PState:=0; + InitCDGrid(); + with ADOTmp do + begin + close; + sql.Clear; + sql.Add('select * from WFB_MJJY where MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + MJFK.Text:=Trim(ADOTmp.fieldbyname('MJFK').AsString); + //MJSJKZ.Text:=Trim(ADOTmp.fieldbyname('MJSJKZ').AsString); + MJLen.Text:=Trim(ADOTmp.fieldbyname('MJLen').AsString); + MJQty1.Text:=Trim(ADOTmp.fieldbyname('MJQty1').AsString); + MJMaoZ.Text:=Trim(ADOTmp.fieldbyname('MJMaoZ').AsString); + Label15.Caption:=Trim(CDS_MJID.fieldbyname('MJID').AsString); + if Trim(ADOTmp.fieldbyname('MJType').AsString)='Ʒ' then + begin + Edit3.Text:=''; + Edit4.Text:=''; + end else + begin + Edit4.Text:=''; + Edit3.Text:=''; + end; + BtnStatus(False); + Label16.Caption:=''; +end; + + +procedure TfrmMJManageNewFD.FormClick(Sender: TObject); +begin + FInt:=4; +end; + +procedure TfrmMJManageNewFD.Button12Click(Sender: TObject); +var + fsj:string; +begin + if PState<1 then Exit; + if Trim(FAPID)='' then Exit; + if FInt=4 then Exit; + begin + FColumn:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if Trim(FColumn)<>'' then + begin + if Trim(CDS_MJCD.FieldByName(FColumn).AsString)<>'' then + begin + with CDS_MJCD do + begin + Edit; + if Length(CDS_MJCD.FieldByName(FColumn).AsString)=1 then + begin + FieldByName(FColumn).Value:=null ; + FieldByName('CDQty').Value:=0; + end + else + begin + FieldByName(FColumn).Value:=Copy(Trim(FieldByName(FColumn).AsString),1,Length(Trim(FieldByName(FColumn).AsString))-1); + FieldByName('CDQty').Value:=FieldByName(FColumn).Value; + end; + Post; + end; + end; + + + end; + end; +end; + +function TfrmMJManageNewFD.SaveData():Boolean; +var + maxno,FMJID,BZID:String; + FMJLen:Double; + FOrder:Integer; +begin + if PState=1 then + FMJID:='' + else if PState=2 then + FMJID:=Trim(CDS_MJID.fieldbyname('MJID').AsString) + else if PState<1 then Exit; + try + ADOCmd.Connection.BeginTrans; + /// + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from WFB_MJJY where MJId='''+Trim(FMJID)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMJID)='' then + begin + Append; + if GetLSNo(ADOTmp,maxno,Trim(SCXFlag),'WFB_MJJY',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ˮ쳣','ʾ',0); + exit; + end; + end + else begin + maxno:=Trim(FMJID); + Edit; + end; + FieldByName('MainId').value:=Trim(FMainId); + FieldByName('SubId').value:=Trim(FSubId); + FieldByName('APId').value:=Trim(FAPID); + FieldByName('MJID').Value:=Trim(maxno); + FieldByName('MJStr2').Value:='δ'; + FieldByName('MJBanZu').Value:=Trim(FBanZu); + if Trim(MJLen.Text)<>'' then + begin + FieldByName('MJLen').Value:=StrToFloat(MJLen.Text); + end; + if Trim(MJQty1.Text)<>'' then + begin + FieldByName('MJQty1').Value:=StrToFloat(MJQty1.Text); + end; + if Trim(MJFK.Text)<>'' then + begin + FieldByName('MJFK').Value:=StrToFloat(MJFK.Text); + end; + if Trim(MJMaoZ.Text)<>'' then + begin + FieldByName('MJMaoZ').Value:=StrToFloat(MJMaoZ.Text); + end; + if Trim(MJSJKZ.Text)<>'' then + begin + FieldByName('MJSJKZ').Value:=StrToFloat(MJSJKZ.Text); + end; + if Trim(Edit3.Text)<>'' then + begin + FieldByName('MJType').Value:='Ʒ'; + end; + if Trim(Edit4.Text)<>'' then + begin + FieldByName('MJType').Value:='Ʒ'; + end; + FieldByName('MJTypeOther').Value:=Trim(Label9.Caption); + FieldByName('MJStr1').Value:=Trim(Label13.Caption); + {if Trim(MJSJKZ.Text)<>'' then + begin + FieldByName('MJSJKZ').Value:=StrToFloat(MJSJKZ.Text); + end; } + if Trim(FMJID)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTmp); + end; + if Trim(SCXFlag)<>'' then + begin + FieldByName('JTType').Value:=Trim(SCXFlag); + end; + Post; + + end; + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('UPdate WFB_MJJY Set MJXH=(select max(MJXH)+1 from WFB_MJJY A where A.APID=WFB_MJJY.APID)'); + sql.Add(' where MJID='''+Trim(maxno)+''''); + ExecSQL; + end; + FMJID:=Trim(maxno); + ///ĸõ + with CDS_MJCD do + begin + First; + while not Eof do + begin + if Trim(CDS_MJCD.fieldbyname('MCID').AsString)='' then + begin + if GetLSNo(ADOTmp,maxno,'MC','WFB_MJJY_CD',5,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_MJCD.fieldbyname('MCID').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_MJJY_CD '); + sql.Add(' where MCID='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_MJCD.fieldbyname('MCID').AsString)='' then + Append + else + Edit; + FieldByName('MJId').Value:=Trim(FMJID); + FieldByName('MCID').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,Tv2,CDS_MJCD,'WFB_MJJY_CD',0); + Post; + end; + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('MCID').Value:=Trim(maxno); + Next; + end; + end; + with CDS_MJID do + begin + Append; + FieldByName('MJID').Value:=Trim(FMJID); + Post; + end; + //SavedataCK(); + ADOCmd.Connection.CommitTrans; + Result:=True; + PState:=0; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TfrmMJManageNewFD.BTAddClick(Sender: TObject); +begin + if Trim(Label2.Caption)='' then Exit; + PState:=1; + InitCDGridID(); + InitCDGrid(); + BtnStatus(True); + Label16.Caption:=''; +end; + +procedure TfrmMJManageNewFD.BTEditClick(Sender: TObject); +begin + if CDS_MJID.IsEmpty then Exit; + PState:=2; + Label16.Caption:='޸'; +end; + +procedure TfrmMJManageNewFD.BTPrintClick(Sender: TObject); +var + fPrintFile:String; + mvalue:Double; +begin + if Trim(FAPID)='' then Exit; + if FInt=4 then + begin + if CDS_MJID.IsEmpty=False then + begin + Application.MessageBox('Ѵ룿볢ش','ʾ',0); + Exit; + end; + end; + if Trim(MJLen.Text)='' then + begin + Application.MessageBox('ȲΪ!','ʾ',0); + Exit; + end; + if TryStrToFloat(MJLen.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + {if Trim(MJQty1.Text)='' then + begin + Application.MessageBox('ԭ벻Ϊ!','ʾ',0); + Exit; + end; } + if Trim(MJQty1.Text)<>'' then + begin + if TryStrToFloat(MJQty1.Text,mvalue)=False then + begin + Application.MessageBox('ԭ¼!','ʾ',0); + Exit; + end; + end; + + if Trim(MJFK.Text)<>'' then + begin + if TryStrToFloat(MJFK.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end; + if Trim(MJMaoZ.Text)<>'' then + begin + if TryStrToFloat(MJMaoZ.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end; + if Trim(MJSJKZ.Text)<>'' then + begin + if TryStrToFloat(MJSJKZ.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end; + {if Trim(MJSJKZ.Text)<>'' then + begin + if TryStrToFloat(MJSJKZ.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end; } + if PState=1 then + begin + if Application.MessageBox('ǷҪӡ룿ӡݽ޸ģ','ʾ',32+4)<>IDYES then Exit; + end; + if SaveData() then + begin + //BtnStatus(False); + MJFK.Text:=''; + //MJSJKZ.Text:=''; + MJLen.Text:=''; + MJMaoZ.Text:=''; + MJQty1.Text:=''; + MJSJKZ.Text:=''; + Label15.Caption:=''; + end; + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add('select A.MJID,A.MJXH,Qty=A.MJLen,QtyUnit=A.MJTypeOther,B.orderNo,D.GangNo,PRTColorEng=E.Note,'); + sql.Add(' MPRTCodeNameEng=(select Top 1 F.CYEName from CP_YDang F where F.CYNo=B.OrdDefStr1),C.SLbName'); + sql.Add(',B.MPRTCF,C.SOrddefstr4,C.*,A.* '); + sql.Add(' from WFB_MJJY A') ; + sql.Add(' inner join JYOrder_Main B On A.Mainid=B.Mainid'); + sql.Add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); + sql.Add(' inner join KH_Zdy E on C.PRTColor=E.ZdyName and E.Type=''OrdColor'' '); + sql.Add(' inner join JYOrder_Sub_AnPai D on A.APId=D.APId '); + SQL.Add(' where A.MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + if Trim(ADOQueryPrint.fieldbyname('SLbName').AsString)<>'' then + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\'+Trim(ADOQueryPrint.fieldbyname('SLbName').AsString)+'.rmf' + else + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ͨӢıǩ.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + //RM2.ShowReport; + RM2.PrintReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ǩ.rmf'),'ʾ',0); + end; + Label16.Caption:=''; + BTAdd.Click; +end; +procedure TfrmMJManageNewFD.SavedataCK(); +var + CRID:Integer; + MaxCkNo,MaxCkSubNo:String; +begin + //if Trim(Cds_Main.fieldbyname('SubType').AsString)='' then + //////////////////////////////////////////////////////////////浽Ʒֿ//////////////////////////////////////////////// + with ADOCmd do + begin + Close; + sql.Clear; + SQL.add('Update CK_BanCP_CRID Set CRID=CRID+1'); + sql.Add('select * from CK_BanCP_CRID'); + Open; + end; + CRID:=ADOCmd.fieldbyname('CRID').Value; + if GetLSNo(ADOCmd,MaxCkNo,'JR','CK_BanCP_CR',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡƷֿʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(FSubId); + FieldByName('APID').Value:=Trim(FAPID); + FieldByName('MJID').Value:=Trim(CDS_MJID.fieldbyname('MJId').AsString); + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('CRTime').Value:=SGetServerDateTime(ADOTmp); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + //FieldByName('JTType').Value:=Trim(XJFlag); + FieldByName('CRID').Value:=CRID; + if Trim(MJMaoZ.Text)<>'' then + begin + FieldByName('KGQty').Value:=StrToFloat(MJMaoZ.Text); + end; + if Trim(MJLen.Text)<>'' then + begin + FieldByName('Qty').Value:=StrToFloat(MJLen.Text); + end; + FieldByName('QtyUnit').Value:=Trim(Label9.Caption); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('FillTime').Value:=SGetServerDateTime(ADOTmp); + if Trim(Edit3.Text)<>'' then + begin + FieldByName('CPType').Value:='Ʒ'; + end; + if Trim(Edit4.Text)<>'' then + begin + FieldByName('CPType').Value:='Ʒ'; + end; + Post; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_KC where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('CRID').Value:=CRID; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('MJID').Value:=Trim(CDS_MJID.fieldbyname('MJID').AsString); + if Trim(MJMaoZ.Text)<>'' then + begin + FieldByName('KCKGQty').Value:=StrToFloat(MJMaoZ.Text); + end; + if Trim(MJLen.Text)<>'' then + begin + FieldByName('KCQty').Value:=StrToFloat(MJLen.Text); + end; + FieldByName('KCQtyUnit').Value:=Trim(Label9.Caption); + Post; + end; +end; +procedure TfrmMJManageNewFD.BtnStatus(BSInt:Boolean); +begin + // Tv2.OptionsSelection.CellSelect:=BSInt; +end; +procedure TfrmMJManageNewFD.Tv2CDQtyPropertiesEditValueChanged(Sender: TObject); +var + mvalue:string; +begin + try + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)<>'' then + begin + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('CDQty').Value:=mvalue; + CDS_MJCD.Post; + end else + begin + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('CDQty').Value:=0; + CDS_MJCD.Post; + end; + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('CDQtyS').Value:=mvalue; + except + Application.MessageBox('Ƿ֣','ʾ',0); + end; +end; + +procedure TfrmMJManageNewFD.SpeedButton1Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TSpeedButton(Sender).Hint); + if Trim(fsj)='' then Exit; + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=fsj+Trim(TSpeedButton(Sender).Caption); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; + +procedure TfrmMJManageNewFD.SpeedButton12Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + if Trim(fsj)='' then Exit; + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=Copy(fsj,1,Length(fsj)-1); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; + +procedure TfrmMJManageNewFD.SpeedButton13Click(Sender: TObject); +var + i:Integer; +begin + if Trim(Label2.Caption)='' then Exit; + if Label2.Visible=False then Exit; + {with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select * from Order_JYResult where APID='''+Trim(FAPID)+''''); + Open; + end; + if ADOTmp.IsEmpty then + begin + Application.MessageBox('ŷδ¼,ܼ!','ʾ',0); + Exit; + end; } + if Trim(CDS_MJCD.fieldbyname('MJID').AsString)<>'' then + begin + BTAdd.Click; + end; + if Trim(Label15.Caption)<>'' then + begin + MJFK.Text:=''; + //MJSJKZ.Text:=''; + MJLen.Text:=''; + MJMaoZ.Text:=''; + MJQty1.Text:=''; + MJSJKZ.Text:=''; + Label15.Caption:=''; + + end; + if Trim(FAPID)='' then Exit; + FCDName:=Trim(TSpeedButton(Sender).Hint); + MovePanel1.Visible:=True; + Label21.Caption:=Trim(FCDName); + FInt:=11; + Edit1.SetFocus; + //CDQty.SetFocus; + Panel3.Visible:=True; + with Panel3 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim(Edit1.Name); + end; + end; + end; + +end; + +procedure TfrmMJManageNewFD.cxGridDBColumn2PropertiesChange(Sender: TObject); +var + fsj:String; +begin + + fsj:=Trim(Order_MJ.fieldbyname('SubId').AsString); + Order_MJ.DisableControls; + with Order_MJ do + begin + First; + while not Eof do + begin + if Trim(Order_MJ.fieldbyname('SubId').AsString)<>fsj then + begin + Edit; + FieldByName('SSel').Value:=False; + end; + Next; + end; + end; + Order_MJ.EnableControls; + Order_MJ.Locate('SubId',fsj,[]); +end; + +procedure TfrmMJManageNewFD.Button1Click(Sender: TObject); +var + mvalue:Double; +begin + { if Trim(Edit1.Text)='' then + begin + Application.MessageBox('λòΪգ','ʾ',0); + exit; + end; } + if Trim(Edit1.Text)<>'' then + begin + if Trim(Edit2.Text)<>'' then + begin + if StrToFloat(Edit2.Text)'' then + begin + if TryStrToFloat(CDQty.Text,mvalue)=False then + begin + Application.MessageBox('Ƿ!','ʾ',0); + Exit; + end; + end; + with CDS_MJCD do + begin + Append; + FieldByName('cdname').Value:=Trim(FCDName); + FieldByName('CDbeg').Value:=Trim(Edit1.Text); + FieldByName('CDEnd').Value:=Trim(Edit2.Text); + if Trim(CDQty.Text)<>'' then + begin + FieldByName('CDQty').Value:=StrToFloat(CDQty.Text); + end else + begin + FieldByName('CDQty').Value:=0; + end; + {if Trim(Edit2.Text)<>'' then + begin + FieldByName('CDQty').Value:=StrToFloat(Edit2.Text)-StrToFloat(Edit1.Text); + end else + begin + FieldByName('CDQty').Value:=0; + end; } + + Post; + end; + Edit1.Text:=''; + Edit2.Text:=''; + CDQty.Text:=''; + MovePanel1.Visible:=False; + Panel3.Visible:=False; +end; + +procedure TfrmMJManageNewFD.Button4Click(Sender: TObject); +begin + Edit1.Text:=''; + Edit2.Text:=''; + CDQty.Text:=''; + MovePanel1.Visible:=False; + Panel3.Visible:=False; +end; + +procedure TfrmMJManageNewFD.ToolButton1Click(Sender: TObject); +begin + //InitGrid(); + InitJP(); +end; + +procedure TfrmMJManageNewFD.Button5Click(Sender: TObject); +var + fPrintFile:String; +begin + if CDS_MJID.IsEmpty then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set PrtAgnFlag=1,PrtAgnDate=getdate(),PrtAgnPerson='''+Trim(DName)+''''); + sql.Add(' where MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add('select A.MJID,A.MJXH,Qty=A.MJLen,QtyUnit=A.MJTypeOther,B.orderNo,D.GangNo,PRTColorEng=E.Note,'); + sql.Add(' MPRTCodeNameEng=(select Top 1 F.CYEName from CP_YDang F where F.CYNo=B.OrdDefStr1),C.SLbName'); + sql.Add(',B.MPRTCF,C.SOrddefstr4,C.*,A.* '); + sql.Add(' from WFB_MJJY A') ; + sql.Add(' inner join JYOrder_Main B On A.Mainid=B.Mainid'); + sql.Add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); + sql.Add(' inner join KH_Zdy E on C.PRTColor=E.ZdyName and E.Type=''OrdColor'' '); + sql.Add(' inner join JYOrder_Sub_AnPai D on A.APId=D.APId '); + SQL.Add(' where A.MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + if Trim(ADOQueryPrint.fieldbyname('SLbName').AsString)<>'' then + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\'+Trim(ADOQueryPrint.fieldbyname('SLbName').AsString)+'.rmf' + else + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ͨӢıǩ.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + //RM2.ShowReport; + RM2.PrintReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ǩ.rmf'),'ʾ',0); + end; + +end; + +procedure TfrmMJManageNewFD.SpeedButton49Click(Sender: TObject); +begin + Panel3.Visible:=False; +end; + +procedure TfrmMJManageNewFD.APIDKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub_AnPai where APID='''+Trim(APID.Text)+''''); + Open; + end; + if ADOTmp.IsEmpty=False then + begin + Label2.Visible:=True; + Label2.Caption:=Trim(ADOTmp.fieldbyname('GangNo').AsString); + FAPID:=Trim(APID.Text); + FMainId:=Trim(ADOTmp.fieldbyname('MainId').AsString); + FSubId:=Trim(ADOTmp.fieldbyname('SubId').AsString); + Label9.Caption:=Trim(ADOTmp.fieldbyname('AOrddefstr3').AsString); + Label13.Caption:=Trim(ADOTmp.fieldbyname('AOrddefstr2').AsString); + Label19.Caption:=Trim(Label9.Caption); + Label20.Caption:=Trim(Label9.Caption); + Label7.Caption:=Trim(Label9.Caption); + end else + begin + Application.MessageBox('!','ʾ',0); + Label2.Visible:=False; + Label2.Caption:=''; + APID.Text:=''; + FAPID:=''; + FMainId:=''; + FSubId:=''; + Exit; + end; + {if Trim(SCXFlag)<>Trim(ADOTmp.fieldbyname('AOrdDefNote29').AsString) then + begin + APID.Text:=''; + if Application.MessageBox('̨뵱ǰ̨һ,'+#13+'Ƿ飿','ʾ',32+4)<>IDYES then + begin + Label2.Visible:=False; + Label2.Caption:=''; + FAPID:=''; + FMainId:=''; + FSubId:=''; + Exit; + end; + + end; } + APID.Text:=''; + BTAdd.Click; + end; +end; + +procedure TfrmMJManageNewFD.Edit1Click(Sender: TObject); +var + i:Integer; +begin + Panel3.Visible:=True; + with Panel3 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim(TEdit(Sender).Name); + end; + end; + end; +end; + +procedure TfrmMJManageNewFD.Edit2Change(Sender: TObject); +var + mvalue:Double; +begin + if Trim(Edit1.Text)<>'' then + begin + if TryStrToFloat(Edit1.Text,mvalue)=False then + begin + Application.MessageBox('Ƿ!','ʾ',0); + Exit; + end; + end else + begin + Exit; + end; + if Trim(Edit2.Text)<>'' then + begin + if TryStrToFloat(Edit2.Text,mvalue)=False then + begin + Application.MessageBox('Ƿ!','ʾ',0); + Exit; + end; + end else + begin + Exit; + end; + CDQty.Text:=FloatToStr(StrToFloat(Edit2.Text)-StrToFloat(Edit1.Text)); +end; + +procedure TfrmMJManageNewFD.Edit3Click(Sender: TObject); +begin + if Trim(Edit3.Text)='' then + begin + Edit3.Text:=''; + Edit4.Text:=''; + end else + begin + Edit3.Text:=''; + Edit4.Text:=''; + end; +end; + +procedure TfrmMJManageNewFD.Edit4Click(Sender: TObject); +begin + if Trim(Edit4.Text)='' then + begin + Edit4.Text:=''; + Edit3.Text:=''; + end else + begin + Edit4.Text:=''; + Edit3.Text:=''; + end; +end; + +end. diff --git a/艾登贸易管理/U_MJManageNewFDNew.dfm b/艾登贸易管理/U_MJManageNewFDNew.dfm new file mode 100644 index 0000000..23d820a --- /dev/null +++ b/艾登贸易管理/U_MJManageNewFDNew.dfm @@ -0,0 +1,2823 @@ +object frmMJManageNewFDNewSF: TfrmMJManageNewFDNewSF + Left = 27 + Top = 115 + Width = 1366 + Height = 735 + Caption = #25104#21697#26816#39564 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClick = FormClick + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object cxGrid3: TcxGrid + Left = 899 + Top = 81 + Width = 451 + Height = 616 + Align = alClient + TabOrder = 0 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv3CellClick + DataController.DataSource = DataSource3 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = v3Column2 + end + item + Kind = skSum + Column = v3Column4 + end + item + Kind = skSum + Column = v3Column5 + end + item + Format = #21367#25968':0' + Kind = skCount + Column = cxGridDBColumn1 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = cxStyle4 + Styles.IncSearch = cxStyle4 + Styles.Selection = cxStyle4 + object cxGridDBColumn1: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Styles.Content = cxStyle5 + Styles.Header = cxStyle5 + Width = 113 + end + object v3Column1: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Styles.Content = cxStyle4 + Styles.Header = cxStyle4 + Width = 40 + end + object v3Column2: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'MJLen' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Styles.Content = cxStyle3 + Styles.Header = cxStyle3 + Width = 42 + end + object v3Column4: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'MJMaoZ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Styles.Content = cxStyle5 + Styles.Footer = cxStyle5 + Styles.Header = cxStyle5 + Width = 50 + end + object v3Column5: TcxGridDBColumn + Caption = #20928#37325 + DataBinding.FieldName = 'MJQty4' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Styles.Content = cxStyle3 + Styles.Footer = cxStyle3 + Styles.Header = cxStyle3 + Width = 50 + end + object v3Column3: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'MJType' + Options.Editing = False + Options.Sorting = False + Styles.Content = cxStyle5 + Styles.Header = cxStyle5 + Width = 40 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 81 + Width = 405 + Height = 616 + Align = alLeft + TabOrder = 1 + object SpeedButton13: TSpeedButton + Left = 7 + Top = 3 + Width = 50 + Height = 50 + Caption = #23567#40657#28857 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton14: TSpeedButton + Left = 63 + Top = 3 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton15: TSpeedButton + Left = 119 + Top = 3 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton16: TSpeedButton + Left = 175 + Top = 3 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton17: TSpeedButton + Left = 231 + Top = 3 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton18: TSpeedButton + Left = 287 + Top = 3 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton21: TSpeedButton + Left = 343 + Top = 3 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton22: TSpeedButton + Left = 7 + Top = 61 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton23: TSpeedButton + Left = 63 + Top = 61 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton24: TSpeedButton + Left = 119 + Top = 61 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton25: TSpeedButton + Left = 175 + Top = 61 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton26: TSpeedButton + Left = 231 + Top = 61 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton29: TSpeedButton + Left = 287 + Top = 61 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton30: TSpeedButton + Left = 343 + Top = 61 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton31: TSpeedButton + Left = 7 + Top = 119 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton32: TSpeedButton + Left = 63 + Top = 119 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton33: TSpeedButton + Left = 119 + Top = 119 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton34: TSpeedButton + Left = 175 + Top = 119 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton37: TSpeedButton + Left = 231 + Top = 119 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton38: TSpeedButton + Left = 287 + Top = 119 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton39: TSpeedButton + Left = 343 + Top = 119 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton40: TSpeedButton + Left = 7 + Top = 177 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton41: TSpeedButton + Left = 63 + Top = 177 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton42: TSpeedButton + Left = 119 + Top = 177 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton45: TSpeedButton + Left = 175 + Top = 177 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton46: TSpeedButton + Left = 231 + Top = 177 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton47: TSpeedButton + Left = 287 + Top = 177 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton48: TSpeedButton + Left = 343 + Top = 177 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton50: TSpeedButton + Left = 7 + Top = 235 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton51: TSpeedButton + Left = 63 + Top = 235 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton54: TSpeedButton + Left = 119 + Top = 235 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton55: TSpeedButton + Left = 175 + Top = 235 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton56: TSpeedButton + Left = 231 + Top = 235 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton57: TSpeedButton + Left = 287 + Top = 235 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton58: TSpeedButton + Left = 343 + Top = 235 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton59: TSpeedButton + Left = 7 + Top = 291 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton62: TSpeedButton + Left = 63 + Top = 291 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton63: TSpeedButton + Left = 119 + Top = 291 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton64: TSpeedButton + Left = 175 + Top = 291 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton65: TSpeedButton + Left = 231 + Top = 291 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton66: TSpeedButton + Left = 287 + Top = 291 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton67: TSpeedButton + Left = 343 + Top = 291 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton70: TSpeedButton + Left = 7 + Top = 347 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton71: TSpeedButton + Left = 63 + Top = 347 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton72: TSpeedButton + Left = 119 + Top = 347 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton73: TSpeedButton + Left = 175 + Top = 347 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton74: TSpeedButton + Left = 231 + Top = 347 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton75: TSpeedButton + Left = 287 + Top = 347 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton19: TSpeedButton + Left = 343 + Top = 347 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton20: TSpeedButton + Left = 7 + Top = 403 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton27: TSpeedButton + Left = 63 + Top = 403 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton28: TSpeedButton + Left = 119 + Top = 403 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton35: TSpeedButton + Left = 175 + Top = 403 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton36: TSpeedButton + Left = 231 + Top = 403 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton43: TSpeedButton + Left = 287 + Top = 403 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton44: TSpeedButton + Left = 343 + Top = 403 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton52: TSpeedButton + Left = 7 + Top = 459 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton53: TSpeedButton + Left = 63 + Top = 459 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton60: TSpeedButton + Left = 119 + Top = 459 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton61: TSpeedButton + Left = 175 + Top = 459 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton68: TSpeedButton + Left = 231 + Top = 459 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton69: TSpeedButton + Left = 287 + Top = 459 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton76: TSpeedButton + Left = 343 + Top = 459 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton77: TSpeedButton + Left = 7 + Top = 515 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton78: TSpeedButton + Left = 63 + Top = 515 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton79: TSpeedButton + Left = 119 + Top = 515 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton80: TSpeedButton + Left = 175 + Top = 515 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton81: TSpeedButton + Left = 231 + Top = 515 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton82: TSpeedButton + Left = 287 + Top = 515 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton83: TSpeedButton + Left = 343 + Top = 515 + Width = 50 + Height = 50 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + end + object Panel2: TPanel + Left = 405 + Top = 81 + Width = 200 + Height = 616 + Align = alLeft + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 2 + object Label9: TLabel + Left = 160 + Top = 113 + Width = 15 + Height = 22 + Caption = 'M' + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + OnClick = Label9Click + end + object Label3: TLabel + Left = 160 + Top = 326 + Width = 26 + Height = 22 + Caption = 'cm' + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label4: TLabel + Left = 160 + Top = 237 + Width = 28 + Height = 22 + Caption = 'KG' + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label5: TLabel + Left = 19 + Top = 109 + Width = 40 + Height = 23 + Caption = #38271#24230 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label6: TLabel + Left = 19 + Top = 322 + Width = 40 + Height = 23 + Caption = #20840#24133 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label11: TLabel + Left = 19 + Top = 241 + Width = 40 + Height = 23 + Caption = #27611#37325 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label10: TLabel + Left = 19 + Top = 491 + Width = 40 + Height = 23 + Caption = #27491#21697 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label12: TLabel + Left = 104 + Top = 491 + Width = 40 + Height = 22 + Caption = #27425#21697 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label13: TLabel + Left = 358 + Top = 54 + Width = 15 + Height = 22 + Caption = 'M' + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label14: TLabel + Left = 207 + Top = 58 + Width = 60 + Height = 23 + Caption = #21407#25968#37327 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + Visible = False + end + object Label15: TLabel + Left = 81 + Top = 274 + Width = 5 + Height = 22 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + Visible = False + end + object Label22: TLabel + Left = 160 + Top = 365 + Width = 36 + Height = 22 + Caption = 'g/'#13217 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label23: TLabel + Left = 19 + Top = 364 + Width = 40 + Height = 23 + Caption = #20811#37325 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label27: TLabel + Left = 19 + Top = 281 + Width = 40 + Height = 23 + Caption = #36192#36865 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label28: TLabel + Left = 299 + Top = 298 + Width = 40 + Height = 22 + Caption = #22810#25340 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label26: TLabel + Left = 21 + Top = 542 + Width = 40 + Height = 22 + Caption = #20986#32440 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label29: TLabel + Left = 204 + Top = 14 + Width = 58 + Height = 23 + Caption = #26588' '#21495 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + Visible = False + end + object Label30: TLabel + Left = 19 + Top = 153 + Width = 40 + Height = 23 + Caption = #30382#37325 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label31: TLabel + Left = 160 + Top = 197 + Width = 28 + Height = 22 + Caption = 'KG' + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label32: TLabel + Left = 19 + Top = 197 + Width = 40 + Height = 23 + Caption = #20928#37325 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label33: TLabel + Left = 160 + Top = 153 + Width = 28 + Height = 22 + Caption = 'KG' + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label34: TLabel + Left = 104 + Top = 538 + Width = 40 + Height = 22 + Caption = #20221#25968 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label36: TLabel + Left = 19 + Top = 21 + Width = 40 + Height = 23 + Caption = #21367#21495 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label37: TLabel + Left = 19 + Top = 65 + Width = 40 + Height = 23 + Caption = #32568#21495 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label38: TLabel + Left = 19 + Top = 404 + Width = 40 + Height = 23 + Caption = #31995#25968 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label40: TLabel + Left = 19 + Top = 448 + Width = 40 + Height = 23 + Caption = #29255#25968 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object MJFK: TEdit + Left = 63 + Top = 313 + Width = 90 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + OnChange = MJFKChange + OnClick = Edit1Click + OnKeyPress = MJstr3KeyPress + end + object MJLen: TEdit + Left = 63 + Top = 100 + Width = 90 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnChange = MJLenChange + OnClick = Edit1Click + OnExit = MJLenExit + OnKeyPress = MJstr3KeyPress + end + object MJMaoZ: TEdit + Left = 63 + Top = 232 + Width = 90 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + OnChange = MJMaoZChange + OnClick = Edit1Click + OnExit = MJMaoZExit + OnKeyPress = MJstr3KeyPress + end + object BTPrint: TButton + Left = 11 + Top = 580 + Width = 80 + Height = 45 + Caption = #25552#20132 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + OnClick = BTPrintClick + end + object Button5: TButton + Left = 111 + Top = 580 + Width = 80 + Height = 45 + Caption = #37325#25171 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 15 + Visible = False + OnClick = Button5Click + end + object Edit3: TEdit + Left = 60 + Top = 485 + Width = 40 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 11 + Text = #8730 + OnClick = Edit3Click + OnKeyPress = MJstr3KeyPress + end + object Edit4: TEdit + Left = 142 + Top = 485 + Width = 40 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 12 + OnClick = Edit4Click + OnKeyPress = MJstr3KeyPress + end + object MJQty1: TEdit + Left = 261 + Top = 49 + Width = 90 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + Visible = False + OnClick = Edit1Click + OnKeyPress = MJstr3KeyPress + end + object MJSJKZ: TEdit + Left = 63 + Top = 355 + Width = 90 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + OnChange = MJFKChange + OnClick = Edit1Click + OnKeyPress = MJstr3KeyPress + end + object MJQty2: TEdit + Left = 63 + Top = 272 + Width = 90 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + OnChange = MJQty2Change + OnClick = Edit1Click + OnKeyPress = MJstr3KeyPress + end + object Edit5: TEdit + Left = 344 + Top = 288 + Width = 39 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 13 + OnClick = Edit5Click + OnKeyPress = MJstr3KeyPress + end + object Edit6: TEdit + Left = 60 + Top = 532 + Width = 40 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 14 + Text = #8730 + OnClick = Edit6Click + OnKeyPress = MJstr3KeyPress + end + object MJstr3: TEdit + Left = 261 + Top = 9 + Width = 90 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + Visible = False + OnClick = Edit1Click + OnKeyPress = MJstr3KeyPress + end + object MJQty3: TEdit + Left = 63 + Top = 144 + Width = 90 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Edit1Click + OnExit = MJQty3Exit + OnKeyPress = MJstr3KeyPress + end + object MJQty4: TEdit + Left = 63 + Top = 188 + Width = 90 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnChange = MJQty4Change + OnClick = Edit1Click + OnExit = MJQty4Exit + OnKeyPress = MJQty4KeyPress + end + object ComboBox1: TComboBox + Left = 142 + Top = 530 + Width = 40 + Height = 40 + Style = csDropDownList + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = 'Times New Roman' + Font.Style = [fsBold] + ItemHeight = 32 + ItemIndex = 0 + ParentFont = False + TabOrder = 16 + Text = '1' + Items.Strings = ( + '1' + '2' + '3' + '4') + end + object MJStr4: TEdit + Left = 63 + Top = 56 + Width = 90 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + OnKeyPress = MJstr3KeyPress + end + object mjxh: TEdit + Left = 63 + Top = 12 + Width = 89 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 17 + end + object MKXS: TEdit + Left = 63 + Top = 396 + Width = 90 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 18 + OnClick = Edit1Click + OnExit = MJQty3Exit + OnKeyPress = MJstr3KeyPress + end + object MJQty5: TEdit + Left = 63 + Top = 440 + Width = 90 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 19 + OnClick = Edit1Click + end + end + object Panel3: TPanel + Left = 6 + Top = 426 + Width = 383 + Height = 231 + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 3 + Visible = False + object SpeedButton1: TSpeedButton + Left = 4 + Top = 3 + Width = 70 + Height = 70 + Caption = '0' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton2: TSpeedButton + Left = 78 + Top = 3 + Width = 70 + Height = 70 + Caption = '1' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton3: TSpeedButton + Left = 152 + Top = 3 + Width = 70 + Height = 70 + Caption = '2' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton4: TSpeedButton + Left = 226 + Top = 3 + Width = 70 + Height = 70 + Caption = '3' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton5: TSpeedButton + Left = 4 + Top = 75 + Width = 70 + Height = 70 + Caption = '4' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton6: TSpeedButton + Left = 78 + Top = 75 + Width = 70 + Height = 70 + Caption = '5' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton7: TSpeedButton + Left = 152 + Top = 75 + Width = 70 + Height = 70 + Caption = '6' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton8: TSpeedButton + Left = 226 + Top = 75 + Width = 70 + Height = 70 + Caption = '7' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton9: TSpeedButton + Left = 4 + Top = 150 + Width = 70 + Height = 70 + Caption = '8' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton10: TSpeedButton + Left = 78 + Top = 150 + Width = 70 + Height = 70 + Caption = '9' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton11: TSpeedButton + Tag = 9 + Left = 152 + Top = 150 + Width = 70 + Height = 70 + Caption = '.' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton12: TSpeedButton + Left = 226 + Top = 150 + Width = 70 + Height = 70 + Caption = #8592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton12Click + end + object SpeedButton49: TSpeedButton + Tag = 9 + Left = 303 + Top = 81 + Width = 65 + Height = 57 + Caption = #38544#34255 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton49Click + end + end + object Panel4: TPanel + Left = 0 + Top = 0 + Width = 1350 + Height = 81 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 4 + object Panel5: TPanel + Left = 2 + Top = 2 + Width = 1346 + Height = 77 + Align = alClient + TabOrder = 0 + object Panel6: TPanel + Left = 1 + Top = 31 + Width = 1344 + Height = 48 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 0 + object Label1: TLabel + Left = 9 + Top = 16 + Width = 80 + Height = 19 + Caption = #25195#25551#20837#21475 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 653 + Top = 15 + Width = 42 + Height = 20 + Caption = #32568#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label16: TLabel + Left = 1088 + Top = 13 + Width = 42 + Height = 12 + Caption = 'Label16' + Visible = False + end + object Label24: TLabel + Left = 357 + Top = 15 + Width = 63 + Height = 20 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label25: TLabel + Left = 509 + Top = 15 + Width = 42 + Height = 20 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label35: TLabel + Left = 813 + Top = 15 + Width = 80 + Height = 19 + Caption = #33258#21160#21462#20540 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label39: TLabel + Left = 949 + Top = 15 + Width = 40 + Height = 19 + Caption = #37325#25171 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object APID: TEdit + Left = 88 + Top = 12 + Width = 185 + Height = 27 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + OnClick = APIDClick + OnKeyPress = APIDKeyPress + end + object BTAdd: TButton + Left = 1211 + Top = 8 + Width = 46 + Height = 25 + Caption = #26032#22686 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + Visible = False + OnClick = BTAddClick + end + object BTEdit: TButton + Left = 1160 + Top = 8 + Width = 33 + Height = 25 + Caption = #20462#25913 + TabOrder = 2 + Visible = False + OnClick = BTEditClick + end + object Button3: TButton + Left = 212 + Top = 21 + Width = 63 + Height = 25 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + OnClick = Button3Click + end + object Edit7: TEdit + Left = 784 + Top = 12 + Width = 28 + Height = 27 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 4 + Text = #8730 + Visible = False + OnClick = Edit7Click + end + object Button6: TButton + Left = 272 + Top = 13 + Width = 63 + Height = 25 + Caption = #36873#25321 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + Visible = False + OnClick = Button6Click + end + object Edit8: TEdit + Left = 920 + Top = 12 + Width = 28 + Height = 27 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 6 + OnClick = Edit8Click + end + end + object ToolBar1: TToolBar + Left = 1 + Top = 1 + Width = 1344 + Height = 30 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 1 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = ToolButton1Click + end + object TBCD: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #30133#28857#31649#29702 + ImageIndex = 132 + OnClick = TBCDClick + end + object TBClose: TToolButton + Left = 150 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + end + end + object MovePanel1: TMovePanel + Left = 11 + Top = 84 + Width = 391 + Height = 337 + BevelInner = bvLowered + Color = clSkyBlue + TabOrder = 5 + Visible = False + object Label17: TLabel + Left = 29 + Top = 24 + Width = 68 + Height = 16 + Caption = #36215#22987#20301#32622 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 178 + Top = 27 + Width = 17 + Height = 16 + Caption = #21040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 8 + Top = 0 + Width = 11 + Height = 19 + Caption = 'M' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label20: TLabel + Left = 272 + Top = 25 + Width = 11 + Height = 19 + Caption = 'M' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label21: TLabel + Left = 293 + Top = 25 + Width = 63 + Height = 16 + Caption = 'Label21' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 178 + Top = 61 + Width = 11 + Height = 19 + Caption = 'M' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 29 + Top = 61 + Width = 70 + Height = 16 + Caption = #38271' '#24230 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Edit1: TEdit + Left = 100 + Top = 14 + Width = 73 + Height = 32 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnChange = Edit2Change + OnClick = Edit1Click + end + object Button1: TButton + Left = 172 + Top = 277 + Width = 66 + Height = 43 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button1Click + end + object Button4: TButton + Left = 278 + Top = 277 + Width = 64 + Height = 42 + Caption = #20851#38381 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Button4Click + end + object Edit2: TEdit + Left = 196 + Top = 15 + Width = 73 + Height = 32 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnChange = Edit2Change + OnClick = Edit1Click + end + object CDQty: TEdit + Left = 100 + Top = 51 + Width = 73 + Height = 32 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + OnClick = Edit1Click + end + object RadioGroup1: TRadioGroup + Left = 0 + Top = 83 + Width = 389 + Height = 185 + Columns = 2 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [] + Items.Strings = ( + '0-3"' + '3"-6"' + '6"-9"' + #8805'9"' + #30772#27934 + '1'#31859#20869#36830#32493#20986#29616#29781#30133) + ParentFont = False + TabOrder = 5 + end + object Button2: TButton + Left = 14 + Top = 277 + Width = 75 + Height = 42 + Caption = #21462#28040#36873#25321 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + OnClick = Button2Click + end + end + object Panel7: TPanel + Left = 605 + Top = 81 + Width = 294 + Height = 616 + Align = alLeft + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 6 + object cxGrid2: TcxGrid + Left = 2 + Top = 2 + Width = 290 + Height = 287 + Align = alClient + TabOrder = 0 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv2CellClick + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column1 + end + item + Kind = skSum + Column = Tv2CDQty + end + item + Kind = skSum + Column = v2Column3 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Footer = cxStyle3 + object tv2CDType: TcxGridDBColumn + Caption = #30133#28857#21517#31216 + DataBinding.FieldName = 'CDName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle4 + Styles.Header = cxStyle4 + Width = 75 + end + object tv2CDWZ: TcxGridDBColumn + Caption = #20301#32622#36215 + DataBinding.FieldName = 'CDBeg' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = cxStyle1 + Styles.Header = cxStyle1 + Width = 52 + end + object v2Column2: TcxGridDBColumn + Caption = #20301#32622#27490 + DataBinding.FieldName = 'CDend' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Styles.Content = cxStyle1 + Styles.Header = cxStyle1 + Width = 51 + end + object Tv2CDQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'CDQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = Tv2CDQtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = cxStyle3 + Styles.Header = cxStyle3 + Width = 55 + end + object Tv2CDReason: TcxGridDBColumn + Caption = #21407#22240 + DataBinding.FieldName = 'CDReason' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 60 + end + object v2Column1: TcxGridDBColumn + DataBinding.FieldName = 'CDQty' + Visible = False + Width = 60 + end + object v2Column3: TcxGridDBColumn + Caption = #25187#20998 + DataBinding.FieldName = 'KouFenQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = cxStyle5 + Styles.Header = cxStyle5 + Width = 53 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object Panel8: TPanel + Left = 2 + Top = 289 + Width = 290 + Height = 41 + Align = alBottom + Caption = 'A<=25 2533' + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + Visible = False + end + object AOrdDefNote1: TRichEdit + Left = 2 + Top = 330 + Width = 290 + Height = 284 + Align = alBottom + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ScrollBars = ssVertical + TabOrder = 2 + end + end + object cxStyleRepository1: TcxStyleRepository + Left = 608 + Top = 8 + object cxStyle1: TcxStyle + AssignedValues = [svColor, svFont] + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle2: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Pitch = fpFixed + Font.Style = [fsBold] + TextColor = clDefault + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 400 + end + object DataSource1: TDataSource + DataSet = Order_MJ + Left = 672 + end + object Order_MJ: TClientDataSet + Aggregates = <> + Params = <> + Left = 560 + Top = 8 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 576 + end + object ADOCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 536 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 648 + end + object RM2: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 464 + ReportData = {} + end + object DataSource2: TDataSource + DataSet = CDS_MJCD + Left = 696 + end + object CDS_MJCD: TClientDataSet + Aggregates = <> + Params = <> + Left = 744 + end + object DataSource3: TDataSource + DataSet = CDS_MJID + Left = 1000 + Top = 296 + end + object CDS_MJID: TClientDataSet + Aggregates = <> + Params = <> + Left = 1016 + Top = 312 + end + object Timer1: TTimer + Interval = 100 + Left = 944 + Top = 320 + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 720 + end + object cxStyleRepository2: TcxStyleRepository + object cxStyle3: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = clBtnFace + Font.Charset = ANSI_CHARSET + Font.Color = clBlue + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + end + object cxStyleRepository3: TcxStyleRepository + object cxStyle4: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clRed + end + end + object cxStyleRepository4: TcxStyleRepository + object cxStyle5: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + end + object cxStyleRepository5: TcxStyleRepository + object cxStyle6: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 616 + Top = 587 + end + object ADOQueryMainDSC: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + SQL.Strings = ( + 'select A.*,C.OrderNo,B.SWFBColor,B.SWFBHW,B.SWFBCodeName,' + ' B.SWFBCode,B.SWFBKZ,B.WKMS,B.KZBig,B.KZSmal,' + + ' SCMQty=(select isnull(Sum(MJLen),0) from WFB_MJJY WM wher' + + 'e WM.APId=A.APId and len(WM.MJID)>8),' + + ' Case when A.OrderQtyM-(select isnull(Sum(MJLen),0) from W' + + 'FB_MJJY WM where WM.APId=A.APId )>0 ' + + ' then A.OrderQtyM-(select isnull(Sum(MJLen),0) fr' + + 'om WFB_MJJY WM where WM.APId=A.APId ) else 0 end as WSCMQty' + 'from WFBOrder_Sub_AnPai A ' + 'inner join WFBOrder_Sub B on A.SubId=B.SubId' + 'inner join WFBOrder_Main C on A.MainId=C.MainId' + + 'where C.ChkStatus='#39#23457#26680#36890#36807#39' and RTrim(isnull(A.SCStatus,'#39#39'))<>'#39#24050#23436#25104#39 + + ' ' + 'and isnull(B.AnPaiChkStatus,'#39#39')='#39#23457#26680#36890#36807#39' and A.SCXDFlag=1' + '') + Left = 840 + Top = 144 + end + object RM3: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 468 + Top = 20 + ReportData = {} + end + object ADOTmp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 343 + Top = 15 + end +end diff --git a/艾登贸易管理/U_MJManageNewFDNew.pas b/艾登贸易管理/U_MJManageNewFDNew.pas new file mode 100644 index 0000000..b7d4927 --- /dev/null +++ b/艾登贸易管理/U_MJManageNewFDNew.pas @@ -0,0 +1,2328 @@ +unit U_MJManageNewFDNew; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxCalendar, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + 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; +{function CommOpen(fhandle:hwnd;sCommName:PAnsiChar; + IntTime:integer):integer;stdcall;external 'JCYData.DLL'; +function CommClose(sCommName:PAnsiChar):integer;stdcall;external 'JCYData.DLL'; + function CommOpen(fhandle:hwnd;sCommName:PAnsiChar; + IntTime:integer;IsMessage:integer):integer;stdcall;external 'JCYData.DLL'; + function CommClose(sCommName:PAnsiChar):integer;stdcall;external 'JCYData.DLL'; + function CommOpen(fhandle:hwnd;sCommName:PAnsiChar; + IntTime:integer;IsMessage:integer):integer;stdcall;external 'JZCRS323C.DLL'; + function CommClose(sCommName:PAnsiChar):integer;stdcall;external 'JZCRS323C.DLL'; + + function GetCommData(fhandle:hwnd;var defnum1,defnum2:double;var fisjz:integer):integer;stdcall;external 'JZCRS323C.DLL'; + + function CommOpen1301(fhandle:hwnd;sCommName:PAnsiChar; + IntTime:integer;IsMessage:integer):integer;stdcall;external 'JZCRS323C.DLL'; + function CommClose1301(sCommName:PAnsiChar):integer;stdcall;external 'JZCRS323C.DLL'; + + function GetCommData1301(fhandle:hwnd;var defnum1,defnum2:double;var fisjz:integer):integer;stdcall;external 'JZCRS323C.DLL'; } + + +type + TfrmMJManageNewFDNewSF = class(TForm) + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxGridPopupMenu1: TcxGridPopupMenu; + DataSource1: TDataSource; + Order_MJ: TClientDataSet; + ADOQueryMain: TADOQuery; + ADOCmd: TADOQuery; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + DataSource2: TDataSource; + CDS_MJCD: TClientDataSet; + DataSource3: TDataSource; + CDS_MJID: TClientDataSet; + Timer1: TTimer; + ADOQueryPrint: TADOQuery; + ScrollBox1: TScrollBox; + SpeedButton13: TSpeedButton; + SpeedButton14: TSpeedButton; + SpeedButton15: TSpeedButton; + SpeedButton16: TSpeedButton; + SpeedButton17: TSpeedButton; + SpeedButton18: TSpeedButton; + SpeedButton21: TSpeedButton; + SpeedButton22: TSpeedButton; + SpeedButton23: TSpeedButton; + SpeedButton24: TSpeedButton; + SpeedButton25: TSpeedButton; + SpeedButton26: TSpeedButton; + SpeedButton29: TSpeedButton; + SpeedButton30: TSpeedButton; + SpeedButton31: TSpeedButton; + SpeedButton32: TSpeedButton; + SpeedButton33: TSpeedButton; + SpeedButton34: TSpeedButton; + SpeedButton37: TSpeedButton; + SpeedButton38: TSpeedButton; + SpeedButton39: TSpeedButton; + SpeedButton40: TSpeedButton; + SpeedButton41: TSpeedButton; + SpeedButton42: TSpeedButton; + cxStyleRepository2: TcxStyleRepository; + cxStyle3: TcxStyle; + cxStyleRepository3: TcxStyleRepository; + cxStyle4: TcxStyle; + cxStyleRepository4: TcxStyleRepository; + cxStyle5: TcxStyle; + cxStyleRepository5: TcxStyleRepository; + cxStyle6: TcxStyle; + cxGridPopupMenu2: TcxGridPopupMenu; + ADOQueryMainDSC: TADOQuery; + SpeedButton45: TSpeedButton; + SpeedButton46: TSpeedButton; + SpeedButton47: TSpeedButton; + SpeedButton48: TSpeedButton; + SpeedButton50: TSpeedButton; + SpeedButton51: TSpeedButton; + SpeedButton54: TSpeedButton; + SpeedButton55: TSpeedButton; + SpeedButton56: TSpeedButton; + SpeedButton57: TSpeedButton; + SpeedButton58: TSpeedButton; + SpeedButton59: TSpeedButton; + SpeedButton62: TSpeedButton; + SpeedButton63: TSpeedButton; + SpeedButton64: TSpeedButton; + SpeedButton65: TSpeedButton; + SpeedButton66: TSpeedButton; + SpeedButton67: TSpeedButton; + SpeedButton70: TSpeedButton; + SpeedButton71: TSpeedButton; + SpeedButton72: TSpeedButton; + SpeedButton73: TSpeedButton; + SpeedButton74: TSpeedButton; + SpeedButton75: TSpeedButton; + Panel2: TPanel; + Label9: TLabel; + MJFK: TEdit; + Label3: TLabel; + MJLen: TEdit; + Label4: TLabel; + MJMaoZ: TEdit; + Label5: TLabel; + Label6: TLabel; + Label11: TLabel; + BTPrint: TButton; + Button5: TButton; + Edit3: TEdit; + Label10: TLabel; + Edit4: TEdit; + Label12: TLabel; + Label13: TLabel; + Label14: TLabel; + MJQty1: TEdit; + Label15: TLabel; + Label22: TLabel; + Label23: TLabel; + MJSJKZ: TEdit; + Panel3: TPanel; + SpeedButton1: TSpeedButton; + SpeedButton2: TSpeedButton; + SpeedButton3: TSpeedButton; + SpeedButton4: TSpeedButton; + SpeedButton5: TSpeedButton; + SpeedButton6: TSpeedButton; + SpeedButton7: TSpeedButton; + SpeedButton8: TSpeedButton; + SpeedButton9: TSpeedButton; + SpeedButton10: TSpeedButton; + SpeedButton11: TSpeedButton; + SpeedButton12: TSpeedButton; + SpeedButton49: TSpeedButton; + v3Column1: TcxGridDBColumn; + v3Column2: TcxGridDBColumn; + v3Column3: TcxGridDBColumn; + Label27: TLabel; + MJQty2: TEdit; + Label28: TLabel; + Edit5: TEdit; + Label26: TLabel; + Edit6: TEdit; + Label29: TLabel; + MJstr3: TEdit; + Label30: TLabel; + MJQty3: TEdit; + Label31: TLabel; + Label32: TLabel; + MJQty4: TEdit; + Label33: TLabel; + Panel4: TPanel; + MovePanel1: TMovePanel; + Label17: TLabel; + Label18: TLabel; + Label19: TLabel; + Label20: TLabel; + Label21: TLabel; + Label7: TLabel; + Label8: TLabel; + Edit1: TEdit; + Button1: TButton; + Button4: TButton; + Edit2: TEdit; + CDQty: TEdit; + RadioGroup1: TRadioGroup; + Button2: TButton; + Panel5: TPanel; + Panel6: TPanel; + Label1: TLabel; + Label2: TLabel; + Label16: TLabel; + Label24: TLabel; + Label25: TLabel; + APID: TEdit; + BTAdd: TButton; + BTEdit: TButton; + ToolBar1: TToolBar; + ToolButton1: TToolButton; + TBCD: TToolButton; + TBClose: TToolButton; + Panel7: TPanel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + tv2CDType: TcxGridDBColumn; + tv2CDWZ: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + Tv2CDQty: TcxGridDBColumn; + Tv2CDReason: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Panel8: TPanel; + Button3: TButton; + AOrdDefNote1: TRichEdit; + Label34: TLabel; + ComboBox1: TComboBox; + Edit7: TEdit; + Label35: TLabel; + SpeedButton19: TSpeedButton; + SpeedButton20: TSpeedButton; + SpeedButton27: TSpeedButton; + SpeedButton28: TSpeedButton; + SpeedButton35: TSpeedButton; + SpeedButton36: TSpeedButton; + SpeedButton43: TSpeedButton; + SpeedButton44: TSpeedButton; + SpeedButton52: TSpeedButton; + SpeedButton53: TSpeedButton; + SpeedButton60: TSpeedButton; + SpeedButton61: TSpeedButton; + SpeedButton68: TSpeedButton; + SpeedButton69: TSpeedButton; + SpeedButton76: TSpeedButton; + SpeedButton77: TSpeedButton; + SpeedButton78: TSpeedButton; + SpeedButton79: TSpeedButton; + SpeedButton80: TSpeedButton; + SpeedButton81: TSpeedButton; + SpeedButton82: TSpeedButton; + SpeedButton83: TSpeedButton; + v3Column4: TcxGridDBColumn; + Button6: TButton; + Label36: TLabel; + MJStr4: TEdit; + Label37: TLabel; + v3Column5: TcxGridDBColumn; + Label38: TLabel; + RM3: TRMGridReport; + Label39: TLabel; + Edit8: TEdit; + mjxh: TEdit; + ADOTmp: TADOQuery; + MKXS: TEdit; + MJQty5: TEdit; + Label40: TLabel; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBCDClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure MJMaoZClick(Sender: TObject); + procedure MJLenClick(Sender: TObject); + procedure MJFKClick(Sender: TObject); + procedure MJBanZuClick(Sender: TObject); + procedure MJSJKZClick(Sender: TObject); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure FormClick(Sender: TObject); + procedure Button12Click(Sender: TObject); + procedure BTAddClick(Sender: TObject); + procedure BTEditClick(Sender: TObject); + procedure BTPrintClick(Sender: TObject); + procedure Tv2CDQtyPropertiesEditValueChanged(Sender: TObject); + procedure SpeedButton1Click(Sender: TObject); + procedure SpeedButton12Click(Sender: TObject); + procedure SpeedButton13Click(Sender: TObject); + procedure cxGridDBColumn2PropertiesChange(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure Button5Click(Sender: TObject); + procedure SpeedButton49Click(Sender: TObject); + procedure APIDKeyPress(Sender: TObject; var Key: Char); + procedure Edit1Click(Sender: TObject); + procedure Edit2Change(Sender: TObject); + procedure Edit3Click(Sender: TObject); + procedure Edit4Click(Sender: TObject); + procedure Edit5Click(Sender: TObject); + procedure Edit6Click(Sender: TObject); + procedure MJstr3KeyPress(Sender: TObject; var Key: Char); + procedure MJQty3Exit(Sender: TObject); + procedure MJMaoZExit(Sender: TObject); + procedure Label9Click(Sender: TObject); + procedure MJLenExit(Sender: TObject); + procedure MJQty4Exit(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure MJQty4Change(Sender: TObject); + procedure MJMaoZChange(Sender: TObject); + procedure APIDClick(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure MJFKChange(Sender: TObject); + procedure Edit7Click(Sender: TObject); + procedure Button6Click(Sender: TObject); + procedure MJQty4KeyPress(Sender: TObject; var Key: Char); + procedure MKXSChange(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure MJQty2Change(Sender: TObject); + procedure Edit8Click(Sender: TObject); + procedure MJLenChange(Sender: TObject); + private + { Private declarations } + FInt,PState,PrintInt,SCInitGrid,FState,FCK:Integer; + FColumn,FBanZu,FAPID,FMainId,FSubId,FFFMJID:String; + MValue,FCDName:String; + isCommopen,IsJsMessage:boolean; + fxsType:string; + procedure InitJP(); + procedure InitCDGrid(); + procedure InitCDGridID(); + procedure AddCD(Fbtn:TButton); + procedure AddSL(Fbtn:TButton); + function SaveData():Boolean; + procedure BtnStatus(BSInt:Boolean); + procedure AddSLNew(Fbtn:TSpeedButton); + procedure AddCDNew(Fbtn:TSpeedButton); + procedure SavedataCK(); + procedure PrtData(FMJID:String); + procedure OpenCom(DllName:string); + procedure CloseCom(DllName:string); + procedure On1201(Var Message:Tmessage);Message 1201; + // procedure On1301(Var Message:Tmessage);Message 1301; + public + fmanage:string; + { Public declarations } + + end; + +var + frmMJManageNewFDNewSF: TfrmMJManageNewFDNewSF; + newh,newh1:hwnd; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp,U_iniParam, U_ClothHCList; + +{$R *.dfm} +procedure TfrmMJManageNewFDNewSF.CloseCom(DllName:string); +type + TMyFunc = function(sCommName:PAnsiChar): HWND; stdcall; +var + Tf1: TMyFunc; + Tp1: TFarProc; + Th1:Thandle; +begin + Th1 := LoadLibrary(Pchar(trim(DllName))); + if Th1 > 0 then + begin + try + Tp1 := GetProcAddress(Th1, 'CommClose'); + if Tp1 <> nil then + begin + Tf1 := TMyFunc(Tp1); + newh1:=Tf1('Comm1'); + end + else + begin + + end; + finally + // FreeLibrary(Th1); + end; + end + else + begin + application.MessageBox(Pchar('Ҳ '+trim(DllName)+' ļ'),'ʾ'); + end; +end; + +procedure TfrmMJManageNewFDNewSF.OpenCom(DllName:string); +type + TMyFunc = function(fhandle:hwnd;sCommName:PAnsiChar; + IntTime:integer;IsMessage:integer): HWND; stdcall; +var + Tf:TMyFunc; + Tp:TFarProc; + Th:Thandle; +begin + // closeCom(FComFile); + Th := LoadLibrary(Pchar(trim(DllName))); + if Th > 0 then + begin + try + Tp := GetProcAddress(Th, 'CommOpen'); + if Tp <> nil then + begin + Tf := TMyFunc(Tp); + newh:=Tf(self.Handle,'Comm1',500,1); + if newh<1 then + begin + application.MessageBox(Pchar('򿪴ʧܣ'),'ʾ'); + end + else + IsCommOpen:=true; + end + else + begin + IsCommOpen:=false; + end; + finally + // FreeLibrary(Th); + end; + end + else + begin + IsCommOpen:=false; + application.MessageBox(Pchar('Ҳ '+trim(DllName)+' ļ'),'ʾ'); + end; +end; + +procedure TfrmMJManageNewFDNewSF.FormDestroy(Sender: TObject); +begin + frmMJManageNewFDNewSF:=nil; +end; +procedure TfrmMJManageNewFDNewSF.On1201(Var Message:Tmessage); +var + i1,i2:integer; + unitname:string; + fdata:double; +begin + i1:=message.WParam; + i2:=message.LParam; + IF IsJsMessage then + begin + IF trim(Edit7.Text)='' then + begin + MJLen.Text:= format('%.0f',[i1 /100000]); + IF i2=0 then Label9.Caption:='M' else Label9.Caption:='Y'; + end; + end; + +{ + //Edit1.Text:= floattostr(i1 *i2 /100000 ); + IF IsJsMessage then + MJMaoZ.Text:= floattostr(i1 *i2 /100000 ); } +end; + +procedure TfrmMJManageNewFDNewSF.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + //DataLink_WFBProducttion.ADOLink.Connected:=False; + + if isCommopen then + begin + closeCom(JCYDLL); + + end; + Action:=caFree; +end; +procedure TfrmMJManageNewFDNewSF.InitCDGrid(); +begin + with ADOQueryMain do + begin + Close; + SQL.Clear; + if PState=1 then + sql.Add('select * from WFB_MJJY_CD where MJID='''' ') + else + sql.Add('select * from WFB_MJJY_CD where MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_MJCD); + SInitCDSData20(ADOQueryMain,CDS_MJCD); +end; +procedure TfrmMJManageNewFDNewSF.InitCDGridID(); +begin + with ADOQueryMain do + begin + Close; + SQL.Clear; + sql.Add('select A.*'); + sql.Add('from WFB_MJJY A where APID='''+Trim(FAPID)+''''); + if Trim(SCXFlag)<>'' then + sql.Add(' and JTType='''+Trim(SCXFlag)+''''); + + sql.Add(' and Filler='''+Trim(DName)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_MJID); + SInitCDSData20(ADOQueryMain,CDS_MJID); +end; + +procedure TfrmMJManageNewFDNewSF.TBCloseClick(Sender: TObject); +var + maxno:string; +begin + if CDS_MJCD.IsEmpty=False then + begin + if Trim(CDS_MJCD.FieldByName('MCID').AsString)='' then + begin + //try + //ADOCmd.Connection.BeginTrans; + {with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete from WFB_MJJY_CD_Temp where JTType='''+Trim(SCXFlag)+''''); + Execsql; + end; + with CDS_MJCD do + begin + First; + while not Eof do + begin + if GetLSNo(ADOCmd,maxno,'LS','WFB_MJJY_CD_Temp',2,1)=False then + begin + // ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡõʱʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_MJJY_CD_Temp where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MCID').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,Tv2,CDS_MJCD,'WFB_MJJY_CD_Temp',0); + FieldByName('JTType').Value:=Trim(SCXFlag); + Post; + end; + Next; + end; + end; } + close; + //ADOCmd.Connection.CommitTrans; + //ModalResult:=1; + //except + //ADOCmd.Connection.RollbackTrans; + //Application.MessageBox('ʱʧܣ','ʾ',0); + //end; + end else + begin + Close; + end; + end else + begin + Close; + end; + + + +end; + +procedure TfrmMJManageNewFDNewSF.Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + fsj:string; +begin + //FInt:=0; + //Tv1.DataController.FocusedRecordIndex; + //fsj:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; +end; + +procedure TfrmMJManageNewFDNewSF.TBCDClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WFBCD'; + flagname:='õ'; + fnote:=True; + V1Note.Caption:='Ӣ'; + if ShowModal=1 then + begin + Self.InitJP(); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmMJManageNewFDNewSF.FormShow(Sender: TObject); +begin + InitJP(); + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select BanZu from SY_User where UserId='''+Trim(DCode)+''''); + Open; + FBanZu:=Trim(Fieldbyname('BanZu').AsString); + end; + {if Trim(FBanZu)='' then + begin + Application.MessageBox('Ϊգð飡','ʾ',0); + Exit; + end; } + APID.SetFocus; + {if CommOpen(frmMJManageNewFDNewSF.Handle,pchar(PortNoStr),500,1)<1 then + begin + FCK:=1; + showmessage('ڴʧ!'); + end else + begin + FCk:=9; + end; } + IF trim(Edit7.Text)=''then + IsJsMessage:=true; + + IF trim(fmanage)<>'Ȩ' then + begin + OpenCom(JCYDLL); + Edit7.Visible:=true; + Label35.Visible:=true; + end; +end; +procedure TfrmMJManageNewFDNewSF.InitJP(); +var + AA:array[0..100] of string; + i,j:Integer; +begin + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select ZDYName from KH_Zdy where Type=''WFBCD'' order by ZDYNO '); + Open; + end; + if ADOTmp.IsEmpty then + begin + Application.MessageBox('ûжõ㣡','ʾ',0); + Exit; + end; + with ADOTmp do + begin + First; + i:=0; + while not Eof do + begin + AA[i]:=Trim(fieldbyname('ZDYName').AsString); + i:=i+1; + Next; + end; + end; + i:=i-1; + if i>69 then + begin + i:=69; + end; + for j:=0 to i do + begin + with ScrollBox1 do + begin + TSpeedButton(Controls[j]).Visible:=True; + TSpeedButton(Controls[j]).Hint:=AA[j]; + if Length(AA[j])>4 then + begin + TSpeedButton(Controls[j]).Caption:=Copy(Trim(AA[j]),1,4)+#13+Copy(Trim(AA[j]),5,Length(AA[j])-4); + end else + TSpeedButton(Controls[j]).Caption:=AA[j]; + end; + end; +end; + +procedure TfrmMJManageNewFDNewSF.AddCD(Fbtn:TButton); +begin + if PState<1 then Exit; + if Order_MJ.IsEmpty then Exit; + with CDS_MJCD do + begin + Append; + FieldByName('cdname').Value:=Trim(TButton(Fbtn).Caption); + Post; + end; +end; +procedure TfrmMJManageNewFDNewSF.AddCDNew(Fbtn:TSpeedButton); +begin + with CDS_MJCD do + begin + Append; + FieldByName('cdname').Value:=Trim(TSpeedButton(Fbtn).Hint); + Post; + end; +end; +procedure TfrmMJManageNewFDNewSF.AddSL(Fbtn:TButton); +begin + if PState<1 then Exit; + if Order_MJ.IsEmpty then Exit; + + //if MJMaoZ.Focused then + if FInt=4 then Exit; + if CDS_MJCD.IsEmpty=False then + begin + FColumn:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if Trim(FColumn)<>'' then + begin + with CDS_MJCD do + begin + Edit; + FieldByName(FColumn).Value:=Trim(FieldByName(FColumn).AsString)+Trim(TButton(Fbtn).Caption); + if Trim(fieldbyname('CDQtyS').AsString)<>'' then + Fieldbyname('CDQty').Value:=Trim(fieldbyname('CDQtyS').AsString); + Post; + end; + end; + end; +end; +procedure TfrmMJManageNewFDNewSF.AddSLNew(Fbtn:TSpeedButton); +begin + if PState<1 then Exit; + if Trim(FAPID)='' then Exit; + + //if MJMaoZ.Focused then + if FInt=4 then Exit; + if FInt=11 then + begin + if TSpeedButton(Fbtn).Tag=9 then Exit; + Edit1.Text:=Trim(Edit1.Text)+Trim(TSpeedButton(Fbtn).Caption); + Edit1.SelectAll; + end else + if FInt=12 then + begin + if TSpeedButton(Fbtn).Tag=9 then Exit; + Edit2.Text:=Trim(Edit2.Text)+Trim(TSpeedButton(Fbtn).Caption); + Edit2.SelectAll; + end;{ else + if CDS_MJCD.IsEmpty=False then + begin + FColumn:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if Trim(FColumn)<>'' then + begin + with CDS_MJCD do + begin + Edit; + FieldByName(FColumn).Value:=Trim(FieldByName(FColumn).AsString)+Trim(TButton(Fbtn).Caption); + if Trim(fieldbyname('CDQtyS').AsString)<>'' then + Fieldbyname('CDQty').Value:=Trim(fieldbyname('CDQtyS').AsString); + Post; + end; + end; + end; } +end; + +procedure TfrmMJManageNewFDNewSF.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + //if Tv2.OptionsSelection.CellSelect=True then + if CDS_MJCD.IsEmpty then Exit; + + if Trim(CDS_MJCD.fieldbyname('MCID').AsString)='' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + CDS_MJCD.Delete; + end; + +end; + +procedure TfrmMJManageNewFDNewSF.MJMaoZClick(Sender: TObject); +begin + FInt:=1; + FColumn:=''; + panel3.Visible:=True; +end; + +procedure TfrmMJManageNewFDNewSF.MJLenClick(Sender: TObject); +begin + FInt:=2; + FColumn:=''; + panel3.Visible:=True; +end; + +procedure TfrmMJManageNewFDNewSF.MJFKClick(Sender: TObject); +begin + FInt:=3; + FColumn:=''; + panel3.Visible:=True; +end; + +procedure TfrmMJManageNewFDNewSF.MJBanZuClick(Sender: TObject); +begin + FInt:=4; +end; + +procedure TfrmMJManageNewFDNewSF.MJSJKZClick(Sender: TObject); +begin + FInt:=4; +end; + +procedure TfrmMJManageNewFDNewSF.Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + + FInt:=4; + InitCDGridID(); + +end; + +procedure TfrmMJManageNewFDNewSF.Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if CDS_MJCD.IsEmpty=False then + begin + if Trim(CDS_MJCD.fieldbyname('MJID').AsString)='' then + begin + Application.MessageBox('δ,!','ʾ',0); + Exit; + end; + end; + + FInt:=4; + // PState:=0; + PState:=2; + InitCDGrid(); + with ADOTmp do + begin + close; + sql.Clear; + sql.Add('select * from WFB_MJJY where MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + MJFK.Text:=Trim(ADOTmp.fieldbyname('MJFK').AsString); + MJSJKZ.Text:=Trim(ADOTmp.fieldbyname('MJSJKZ').AsString); + MJstr4.Text:=Trim(ADOTmp.fieldbyname('MJstr4').AsString); + MJXH.Text:=Trim(ADOTmp.fieldbyname('MJXH').AsString); + MJQty1.Text:=Trim(ADOTmp.fieldbyname('MJQty1').AsString); + MJQty2.Text:=Trim(ADOTmp.fieldbyname('MJQty2').AsString); + MJQty3.Text:=Trim(ADOTmp.fieldbyname('MJQty3').AsString); + MJQty4.Text:=Trim(ADOTmp.fieldbyname('MJQty4').AsString); + MJQty5.Text:=Trim(ADOTmp.fieldbyname('MJQty5').AsString); + MJMaoZ.Text:=Trim(ADOTmp.fieldbyname('MJMaoZ').AsString); + Label15.Caption:=Trim(CDS_MJID.fieldbyname('MJID').AsString); + MJLen.Text:=Trim(ADOTmp.fieldbyname('MJLen').AsString); + if Trim(ADOTmp.fieldbyname('MJType').AsString)='Ʒ' then + begin + Edit3.Text:=''; + Edit4.Text:=''; + Edit5.Text:=''; + end else + if Trim(ADOTmp.fieldbyname('MJType').AsString)='Ʒ' then + begin + Edit4.Text:=''; + Edit3.Text:=''; + Edit5.Text:=''; + end else + if Trim(ADOTmp.fieldbyname('MJType').AsString)='' then + begin + Edit4.Text:=''; + Edit3.Text:=''; + Edit5.Text:=''; + end; + BtnStatus(False); + Label16.Caption:=''; +end; + + +procedure TfrmMJManageNewFDNewSF.FormClick(Sender: TObject); +begin + FInt:=4; +end; + +procedure TfrmMJManageNewFDNewSF.Button12Click(Sender: TObject); +var + fsj:string; +begin + if PState<1 then Exit; + if Trim(FAPID)='' then Exit; + if FInt=4 then Exit; + begin + FColumn:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if Trim(FColumn)<>'' then + begin + if Trim(CDS_MJCD.FieldByName(FColumn).AsString)<>'' then + begin + with CDS_MJCD do + begin + Edit; + if Length(CDS_MJCD.FieldByName(FColumn).AsString)=1 then + begin + FieldByName(FColumn).Value:=null ; + FieldByName('CDQty').Value:=0; + end + else + begin + FieldByName(FColumn).Value:=Copy(Trim(FieldByName(FColumn).AsString),1,Length(Trim(FieldByName(FColumn).AsString))-1); + FieldByName('CDQty').Value:=FieldByName(FColumn).Value; + end; + Post; + end; + end; + + + end; + end; +end; + +function TfrmMJManageNewFDNewSF.SaveData():Boolean; +var + maxno,FMJID,BZID,strsql:String; + FMJLen:Double; + FOrder:Integer; +begin + if PState=1 then + FMJID:='' + else + if PState=2 then + FMJID:=Trim(CDS_MJID.fieldbyname('MJID').AsString) + else + if PState<1 then Exit; + try + + ADOCmd.Connection.BeginTrans; + + /// + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from WFB_MJJY where MJId='''+Trim(FMJID)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMJID)='' then + begin + Append; + if GetLSNo(ADOTmp,maxno,Trim(SCXFlag),'WFB_MJJY',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ˮ쳣','ʾ',0); + exit; + end; + end + else + begin + maxno:=Trim(FMJID); + Edit; + end; + FieldByName('MainId').value:=Trim(FMainId); + FieldByName('SubId').value:=Trim(FSubId); + FieldByName('APId').value:=Trim(FAPID); + FieldByName('MJID').Value:=Trim(maxno); + FieldByName('MJStr2').Value:='δ'; + FieldByName('MJBanZu').Value:=Trim(FBanZu); + FieldByName('MJstr3').Value:=Trim(MJstr3.Text); + FieldByName('MJstr4').Value:=Trim(MJstr4.Text); + FieldByName('mjxh').Value:=strtointdef(trim(mjxh.Text),0); + + FieldByName('MJTypeOther').Value:=Trim(Label9.Caption); + FieldByName('MJStr1').Value:=Trim(Label13.Caption); + FieldByName('MJLen').Value:=StrToFloatdef(trim(MJLen.Text),0); + FieldByName('MJQty1').Value:=StrToFloatdef(trim(MJQty1.Text),0); + FieldByName('MJQty2').Value:=StrToFloatdef(trim(MJQty2.Text),0); + FieldByName('MJQty3').Value:=StrToFloatdef(trim(MJQty3.Text),0); + FieldByName('MJQty4').Value:=StrToFloatdef(trim(MJQty4.Text),0); + FieldByName('MJQty5').Value:=StrToFloatdef(trim(MJQty5.Text),0); + FieldByName('MKXS').Value:=StrToFloatdef(trim(MKXS.Text),0); + + FieldByName('MJFK').Value:=StrToFloatdef(trim(MJFK.Text),0); + FieldByName('MJSJKZ').Value:=StrToFloatdef(trim(MJSJKZ.Text),0); + FieldByName('MJMaoZ').Value:=StrToFloatdef(trim(MJMaoZ.Text),0); + FieldByName('baoNO').Value:=''; + FieldByName('baoID').Value:=''; + if Trim(Edit3.Text)<>'' then + begin + FieldByName('MJType').Value:='Ʒ'; + end; + if Trim(Edit4.Text)<>'' then + begin + FieldByName('MJType').Value:='Ʒ'; + end; + if Trim(Edit5.Text)<>'' then + begin + FieldByName('MJType').Value:='ƴ'; + end; + + FieldByName('MJStr1').Value:=Trim(Label13.Caption); + if Trim(FMJID)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTmp); + end; + if Trim(SCXFlag)<>'' then + begin + FieldByName('JTType').Value:=Trim(SCXFlag); + end; + FieldByName('MJTypeOther').Value:=Trim(Label9.Caption); + Post; + end; + if PState=1 then + begin + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('update WFB_MJJY SET mjxh=1+isnull((select cast (max(mjxh) as int) from WFB_MJJY X where X.subID=WFB_MJJY.subID and X.MJstr4=WFB_MJJY.Mjstr4 and X.MJID<>WFB_MJJY.MJID),0)'); + sql.Add('where MJID='''+Trim(maxno)+''''); + execsql; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select MJXH from WFB_MJJY'); + sql.Add('where MJID='''+Trim(maxno)+''''); + open; + If not IsEmpty then + begin + MJXH.Text:=fieldbyname('mjxh').AsString; + end; + end; + end; + + FMJID:=Trim(maxno); + FFFMJID:=Trim(maxno); + ///ĸõ + with CDS_MJCD do + begin + First; + while not Eof do + begin + if Trim(CDS_MJCD.fieldbyname('MCID').AsString)='' then + begin + if GetLSNo(ADOTmp,maxno,'MC','WFB_MJJY_CD',5,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_MJCD.fieldbyname('MCID').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_MJJY_CD '); + sql.Add(' where MCID='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_MJCD.fieldbyname('MCID').AsString)='' then + Append + else + Edit; + FieldByName('MJId').Value:=Trim(FMJID); + FieldByName('MCID').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,Tv2,CDS_MJCD,'WFB_MJJY_CD',0); + FieldByName('KouFenType').Value:=CDS_MJCD.fieldbyname('KouFenType').Value; + Post; + end; + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('MCID').Value:=Trim(maxno); + Next; + end; + end; + { with CDS_MJID do + begin + Append; + FieldByName('MJID').Value:=Trim(FMJID); + Post; + end; } + ADOCmd.Connection.CommitTrans; + Result:=True; + PState:=0; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TfrmMJManageNewFDNewSF.BTAddClick(Sender: TObject); +begin + if Trim(Label24.Caption)='' then Exit; + PState:=1; + InitCDGridID(); + InitCDGrid(); + BtnStatus(True); + Label16.Caption:=''; +end; + +procedure TfrmMJManageNewFDNewSF.BTEditClick(Sender: TObject); +begin + if CDS_MJID.IsEmpty then Exit; + PState:=2; + Label16.Caption:='޸'; +end; + +procedure TfrmMJManageNewFDNewSF.BTPrintClick(Sender: TObject); +var + fPrintFile:String; + mvalue:Double; + i:Integer; +begin + + if Trim(FAPID)='' then Exit; + if FInt=4 then + begin + if CDS_MJID.IsEmpty=False then + begin + Application.MessageBox('Ѵ룿볢ش','ʾ',0); + Exit; + end; + end; + + + IF trim(Label9.Caption)='' then + begin + Application.MessageBox('ȵλΪ!','ʾ',0); + Exit; + end; + { IF strtofloatdef(trim(MJLen.Text),0)=0 then + begin + Application.MessageBox('ȲΪ!','ʾ',0); + Exit; + end; } +{ if Trim(MJMaoZ.Text)='' then + begin + Application.MessageBox('Ϊ!','ʾ',0); + Exit; + end; } +{ if TryStrToFloat(MJLen.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; } + {if Trim(MJQty1.Text)='' then + begin + Application.MessageBox('ԭ벻Ϊ!','ʾ',0); + Exit; + end; } + if Trim(MJQty1.Text)<>'' then + begin + if TryStrToFloat(MJQty1.Text,mvalue)=False then + begin + Application.MessageBox('ԭ¼!','ʾ',0); + Exit; + end; + end; + + if Trim(MJFK.Text)<>'' then + begin + if TryStrToFloat(MJFK.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end; + if Trim(MJMaoZ.Text)<>'' then + begin + if TryStrToFloat(MJMaoZ.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end; + if Trim(MJSJKZ.Text)<>'' then + begin + if TryStrToFloat(MJSJKZ.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end; + if Trim(MJQty2.Text)<>'' then + begin + if TryStrToFloat(MJQty2.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end; + if strtofloatdef(trim(MJQty4.Text),0)<0.00 then + begin + application.MessageBox('С0','ʾϢ',0); + exit; + end; + if strtofloatdef(trim(MJLen.Text),0)<0.00 then + begin + application.MessageBox('ȲС0','ʾϢ',0); + exit; + end; + + {if Trim(MJSJKZ.Text)<>'' then + begin + if TryStrToFloat(MJSJKZ.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end; } + if PState=1 then + begin + // if Application.MessageBox('ǷҪӡ룿ӡݽ޸ģ','ʾ',32+4)<>IDYES then Exit; + end; + if SaveData() then + begin + //BtnStatus(False); + //MJFK.Text:=''; + //MJSJKZ.Text:=''; + MJLen.Text:=''; + MJMaoZ.Text:=''; + MJQty1.Text:=''; + MJQty2.Text:=''; + //MJSJKZ.Text:=''; + Label15.Caption:=''; + //MJQty3.Text:=''; + MJQty4.Text:=''; + Edit3.Text:=''; + Edit4.Text:=''; + Edit5.Text:=''; + + MJXH.Text:=inttostr(strTointdef(trim(MJXH.Text),0)+1); + end; + if Trim(Edit6.Text)='' then + begin + PrtData(FFFMJID); + end; + + Label16.Caption:=''; + BTAdd.Click; + MJLen.SetFocus; +end; +procedure TfrmMJManageNewFDNewSF.PrtData(FMJID:String); +var + fPrintFile:String; + Txt,fImagePath:string; + Moudle: THandle; + Makebar:TMakebar; + Mixtext:TMixtext; +begin + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add('select QtyUnit=A.MJTypeOther,B.orderNo,B.conNo,PRTColorEng=E.Note,B.LBName,B.NLBName,B.customerNoName '); + sql.Add(',khConNo=(select top 1 khConNo from JYOrderCon_Main X where X.ConNO=B.conNO) '); + sql.Add(',MPRTCodeNameEng=ISNULL((select Top 1 F.note from KH_Zdy F where F.zdyname=B.MPRTCodeName and F.Type=''PRTCodeName''),B.MPRTCodeName)'); + sql.Add(',B.MPRTCF,B.MPRTMF,B.MPRTKZ,C.SOrddefstr4,B.MPRTCodeName,B.MPRTSpec,B.MPRTKuanNO,C.*,A.* '); + sql.Add(',Case when A.MJSJKZ*A.MJFK<>0 then Cast(A.MJQty4*1000/A.MJSJKZ/(A.MJFK/100) as int) else 0 end as MQty'); + sql.Add(' from WFB_MJJY A') ; + sql.Add(' inner join JYOrder_Main B On A.Mainid=B.Mainid'); + sql.Add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); + sql.Add(' left join KH_Zdy E on C.PRTColor=E.ZdyName and E.Type=''OrdColor'' '); + // sql.Add(' inner join CK_SXPB_CR D on D.SPId=A.APId '); + SQL.Add(' where A.MJID='''+Trim(FMJID)+''''); + Open; + end; + + try + Moudle:=LoadLibrary('MakeQRBarcode.dll'); + @Makebar:=GetProcAddress(Moudle,'Make'); + @Mixtext:=GetProcAddress(Moudle,'MixText'); + Txt:=Trim(ADOQueryPrint.fieldbyname('MJID').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); + exit; + end; + + if Trim(ADOQueryPrint.fieldbyname('LBName').AsString)<>'' then + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\'+Trim(ADOQueryPrint.fieldbyname('LBName').AsString)+'.rmf' + else + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ͨӢıǩ.rmf' ; + if FileExists(fPrintFile) then + begin + RMVariables['QRBARCODE']:=fImagePath; + RM2.LoadFromFile(fPrintFile); + Rm2.DefaultCopies:=strtointdef(trim(ComboBox1.Text),1); + // RM2.ShowReport; + RM2.PrintReport; + + { IF Trim(ADOQueryPrint.fieldbyname('NLBName').AsString)<>'' then + begin + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\'+Trim(ADOQueryPrint.fieldbyname('NLBName').AsString)+'.rmf'; + if FileExists(fPrintFile) then + begin + RMVariables['QRBARCODE']:=fImagePath; + RM3.LoadFromFile(fPrintFile); + RM3.DefaultCopies:=1; + //RM2.ShowReport; + RM3.PrintReport; + end; + end; } + end + else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\'+Trim(ADOQueryPrint.fieldbyname('LBName').AsString)),'ʾ',0); + end; +end; +procedure TfrmMJManageNewFDNewSF.SavedataCK(); +var + CRID:Integer; + MaxCkNo,MaxCkSubNo:String; +begin + //if Trim(Cds_Main.fieldbyname('SubType').AsString)='' then + //////////////////////////////////////////////////////////////浽Ʒֿ//////////////////////////////////////////////// + with ADOCmd do + begin + Close; + sql.Clear; + SQL.add('Update CK_BanCP_CRID Set CRID=CRID+1'); + sql.Add('select * from CK_BanCP_CRID'); + Open; + end; + CRID:=ADOCmd.fieldbyname('CRID').Value; + if GetLSNo(ADOCmd,MaxCkNo,'JR','CK_BanCP_CR',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡƷֿʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(FSubId); + FieldByName('APID').Value:=Trim(FAPID); + FieldByName('MJID').Value:=Trim(CDS_MJID.fieldbyname('MJId').AsString); + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('CRTime').Value:=SGetServerDateTime(ADOTmp); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + //FieldByName('JTType').Value:=Trim(XJFlag); + FieldByName('CRID').Value:=CRID; + if Trim(MJMaoZ.Text)<>'' then + begin + FieldByName('KGQty').Value:=StrToFloat(MJMaoZ.Text); + end; + if Trim(MJLen.Text)<>'' then + begin + FieldByName('Qty').Value:=StrToFloat(MJLen.Text); + end; + FieldByName('QtyUnit').Value:=Trim(Label9.Caption); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('FillTime').Value:=SGetServerDateTime(ADOTmp); + if Trim(Edit3.Text)<>'' then + begin + FieldByName('CPType').Value:='Ʒ'; + end; + if Trim(Edit4.Text)<>'' then + begin + FieldByName('CPType').Value:='Ʒ'; + end; + Post; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_KC where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('CRID').Value:=CRID; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('MJID').Value:=Trim(CDS_MJID.fieldbyname('MJID').AsString); + if Trim(MJMaoZ.Text)<>'' then + begin + FieldByName('KCKGQty').Value:=StrToFloat(MJMaoZ.Text); + end; + if Trim(MJLen.Text)<>'' then + begin + FieldByName('KCQty').Value:=StrToFloat(MJLen.Text); + end; + FieldByName('KCQtyUnit').Value:=Trim(Label9.Caption); + Post; + end; +end; +procedure TfrmMJManageNewFDNewSF.BtnStatus(BSInt:Boolean); +begin + // Tv2.OptionsSelection.CellSelect:=BSInt; +end; +procedure TfrmMJManageNewFDNewSF.Tv2CDQtyPropertiesEditValueChanged(Sender: TObject); +var + mvalue:string; +begin + try + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)<>'' then + begin + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('CDQty').Value:=mvalue; + CDS_MJCD.Post; + end else + begin + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('CDQty').Value:=0; + CDS_MJCD.Post; + end; + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('CDQtyS').Value:=mvalue; + except + Application.MessageBox('Ƿ֣','ʾ',0); + end; +end; + +procedure TfrmMJManageNewFDNewSF.SpeedButton1Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TSpeedButton(Sender).Hint); + if Trim(fsj)='' then Exit; + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=fsj+Trim(TSpeedButton(Sender).Caption); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; + +procedure TfrmMJManageNewFDNewSF.SpeedButton12Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + if Trim(fsj)='' then Exit; + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=Copy(fsj,1,Length(fsj)-1); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; + +procedure TfrmMJManageNewFDNewSF.SpeedButton13Click(Sender: TObject); +var + i:Integer; +begin + if Trim(Label24.Caption)='' then Exit; + if Label24.Visible=False then Exit; + {with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select * from Order_JYResult where APID='''+Trim(FAPID)+''''); + Open; + end; + if ADOTmp.IsEmpty then + begin + Application.MessageBox('ŷδ¼,ܼ!','ʾ',0); + Exit; + end; } + if Trim(CDS_MJCD.fieldbyname('MJID').AsString)<>'' then + begin + BTAdd.Click; + end; + if Trim(Label15.Caption)<>'' then + begin + //MJFK.Text:=''; + //MJSJKZ.Text:=''; + MJLen.Text:=''; + MJMaoZ.Text:=''; + MJQty1.Text:=''; + //MJSJKZ.Text:=''; + Label15.Caption:=''; + + end; + if Trim(FAPID)='' then Exit; + FCDName:=Trim(TSpeedButton(Sender).Hint); + MovePanel1.Visible:=True; + Label21.Caption:=Trim(FCDName); + FInt:=11; + Edit1.SetFocus; + //CDQty.SetFocus; + Panel3.Visible:=True; + PState:=1; + with Panel3 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim(Edit1.Name); + end; + end; + end; + +end; + +procedure TfrmMJManageNewFDNewSF.cxGridDBColumn2PropertiesChange(Sender: TObject); +var + fsj:String; +begin + + fsj:=Trim(Order_MJ.fieldbyname('SubId').AsString); + Order_MJ.DisableControls; + with Order_MJ do + begin + First; + while not Eof do + begin + if Trim(Order_MJ.fieldbyname('SubId').AsString)<>fsj then + begin + Edit; + FieldByName('SSel').Value:=False; + end; + Next; + end; + end; + Order_MJ.EnableControls; + Order_MJ.Locate('SubId',fsj,[]); +end; + +procedure TfrmMJManageNewFDNewSF.Button1Click(Sender: TObject); +var + mvalue:Double; +begin + { if Trim(Edit1.Text)='' then + begin + Application.MessageBox('λòΪգ','ʾ',0); + exit; + end; } + if Trim(Edit1.Text)<>'' then + begin + if Trim(Edit2.Text)<>'' then + begin + if StrToFloat(Edit2.Text)'' then + begin + if TryStrToFloat(CDQty.Text,mvalue)=False then + begin + Application.MessageBox('Ƿ!','ʾ',0); + Exit; + end; + end; + with CDS_MJCD do + begin + Append; + FieldByName('cdname').Value:=Trim(FCDName); + FieldByName('CDbeg').Value:=Trim(Edit1.Text); + FieldByName('CDEnd').Value:=Trim(Edit2.Text); + FieldByName('KouFenQty').Value:=0; + if RadioGroup1.ItemIndex>-1 then + FieldByName('KouFenType').Value:=RadioGroup1.Items.Strings[RadioGroup1.ItemIndex]; + if RadioGroup1.ItemIndex>-1 then + begin + if RadioGroup1.ItemIndex<3 then + begin + FieldByName('KouFenQty').Value:=RadioGroup1.ItemIndex+1; + end + else + begin + FieldByName('KouFenQty').Value:=4; + end; + end; + IF Trim(FCDName)='' then + FieldByName('KouFenQty').Value:=0; + FieldByName('CDQty').Value:=StrToFloatdef(trim(CDQty.Text),0); + {if Trim(Edit2.Text)<>'' then + begin + FieldByName('CDQty').Value:=StrToFloat(Edit2.Text)-StrToFloat(Edit1.Text); + end else + begin + FieldByName('CDQty').Value:=0; + end; } + + Post; + end; + Edit1.Text:=''; + Edit2.Text:=''; + CDQty.Text:=''; + MovePanel1.Visible:=False; + Panel3.Visible:=False; +end; + +procedure TfrmMJManageNewFDNewSF.Button4Click(Sender: TObject); +begin + Edit1.Text:=''; + Edit2.Text:=''; + CDQty.Text:=''; + MovePanel1.Visible:=False; + Panel3.Visible:=False; +end; + +procedure TfrmMJManageNewFDNewSF.ToolButton1Click(Sender: TObject); +begin + //InitGrid(); + InitJP(); +end; + +procedure TfrmMJManageNewFDNewSF.Button5Click(Sender: TObject); +var + fPrintFile:String; + i:Integer; + mvalue:Double; +begin + if CDS_MJID.IsEmpty then Exit; + IF trim(Label9.Caption)='' then + begin + Application.MessageBox('ȵλΪ!','ʾ',0); + Exit; + end; +{ IF strtofloatdef(trim(MJLen.Text),0)=0 then + begin + // Application.MessageBox('ȲΪ!','ʾ',0); + Exit; + end; } +{ if Trim(MJMaoZ.Text)='' then + begin + Application.MessageBox('Ϊ!','ʾ',0); + Exit; + end; } +{ if TryStrToFloat(MJLen.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; } + {if Trim(MJQty1.Text)='' then + begin + Application.MessageBox('ԭ벻Ϊ!','ʾ',0); + Exit; + end; } + if Trim(MJQty1.Text)<>'' then + begin + if TryStrToFloat(MJQty1.Text,mvalue)=False then + begin + Application.MessageBox('ԭ¼!','ʾ',0); + Exit; + end; + end; + + if Trim(MJFK.Text)<>'' then + begin + if TryStrToFloat(MJFK.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end; + if Trim(MJMaoZ.Text)<>'' then + begin + if TryStrToFloat(MJMaoZ.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end; + if Trim(MJSJKZ.Text)<>'' then + begin + if TryStrToFloat(MJSJKZ.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end; + if Trim(MJQty2.Text)<>'' then + begin + if TryStrToFloat(MJQty2.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end; + if strtofloatdef(trim(MJQty4.Text),0)<0.00 then + begin + application.MessageBox('С0','ʾϢ',0); + exit; + end; + if strtofloatdef(trim(MJLen.Text),0)<0.00 then + begin + application.MessageBox('ȲС0','ʾϢ',0); + exit; + end; + + if SaveData() then + begin + //BtnStatus(False); + //MJFK.Text:=''; + //MJSJKZ.Text:=''; + MJLen.Text:=''; + MJMaoZ.Text:=''; + MJQty1.Text:=''; + MJQty2.Text:=''; + //MJSJKZ.Text:=''; + Label15.Caption:=''; + //MJQty3.Text:=''; + MJQty4.Text:=''; + Edit3.Text:=''; + Edit4.Text:=''; + Edit5.Text:=''; + FInt:=0; + + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select '); + sql.Add('maxRoll=1+isnull((select cast (max(mjxh) as int) from WFB_MJJY X where X.subID=A.OrdsubIDCK and X.MJStr4=A.gangNO),0)'); + sql.Add('from CK_SXPB_CR A'); + // SQL.Add('inner join JYOrder_Main B on A.OrdMainIDCK=B.MainId'); + sql.Add('where SPID='''+Trim(FAPID)+''''); + Open; + end; + if ADOTmp.IsEmpty=False then + begin + MJXH.Text:= Trim(ADOTmp.fieldbyname('maxRoll').AsString); + end; + + + end; + if Trim(Edit6.Text)='' then + begin + PrtData(FFFMJID); + end; + + Label16.Caption:=''; + BTAdd.Click; + Edit8.Text:=''; + Button5.Visible:=false; + MJLen.SetFocus; +end; + +procedure TfrmMJManageNewFDNewSF.SpeedButton49Click(Sender: TObject); +begin + Panel3.Visible:=False; +end; + +procedure TfrmMJManageNewFDNewSF.APIDKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + fxsType:=''; + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.MPRTBZNote,B.MPRTYaoFeng,B.MPRTTangJin,B.MPRTJiBenNote,B.MPRTTeBieNote,B.xs,B.xsType,B.MPRTKaiJian '); + sql.Add(',B.MPRTMF,B.MPRTKZ,B.OrderNo,B.PiZhong,B.OrderNO as OrderNOM, '); + // SQL.Add('OrderNoM=(select OrderNo from JYOrder_Main X where X.Mainid=A.OrdMainIDCK),'); + //SQL.Add('PRTColor=(select PRTColor from JYOrder_Sub X where X.Subid=A.OrdsubIDCK), '); + // sql.Add('PiZhong=(select PiZhong from JYOrder_Main X where X.Mainid=A.OrdMainIDCK),'); + sql.Add('maxRoll=1+isnull((select cast (max(mjxh) as int) from WFB_MJJY X where X.subID=A.subID ),0)'); + sql.Add('from JYOrder_sub A'); + SQL.Add('inner join JYOrder_Main B on A.mainID=B.MainId'); + sql.Add('where A.subID='''+Trim(APID.Text)+''''); + Open; + end; + if ADOTmp.IsEmpty=False then + begin + { Label2.Visible:=True; + Label2.Caption:=Trim(ADOTmp.fieldbyname('AOrddefStr1').AsString); } + Label24.Visible:=True; + Label24.Caption:=Trim(ADOTmp.fieldbyname('OrderNoM').AsString); + Label25.Visible:=True; + Label25.Caption:=Trim(ADOTmp.fieldbyname('PRTHX').AsString); + FAPID:=Trim(APID.Text); + FMainId:=Trim(ADOTmp.fieldbyname('mainID').AsString); + FSubId:=Trim(ADOTmp.fieldbyname('SubID').AsString); + MJXH.Text:= Trim(ADOTmp.fieldbyname('maxRoll').AsString); + MKXS.Text:=Trim(ADOTmp.fieldbyname('Xs').AsString); + // MJstr4.Text:=Trim(ADOTmp.fieldbyname('gangNo').AsString); + fxsType:=Trim(ADOTmp.fieldbyname('xsType').AsString); + //AOrdDefNote1.Text:=Trim(ADOTmp.fieldbyname('AOrdDefNote1').AsString); + AOrdDefNote1.Text:='װҪ:'+Trim(ADOTmp.fieldbyname('MPRTBZNote').AsString)+#13 + +':'+Trim(ADOTmp.fieldbyname('MPRTYaoFeng').AsString)+#13 + +'̽:'+Trim(ADOTmp.fieldbyname('MPRTTangJin').AsString)+#13 + +':'+Trim(ADOTmp.fieldbyname('MPRTKaiJian').AsString)+#13 + +'ŷ:'+Trim(ADOTmp.fieldbyname('MPRTMF').AsString)+#13 + +':'+Trim(ADOTmp.fieldbyname('MPRTKZ').AsString)+#13 + +'Ҫ:'+Trim(ADOTmp.fieldbyname('MPRTJiBenNote').AsString)+#13 + +'رʾ:'+Trim(ADOTmp.fieldbyname('MPRTTeBieNote').AsString); + MJQty3.Text:=Trim(ADOTmp.fieldbyname('PiZhong').AsString); + { if Trim(ADOTmp.fieldbyname('AOrddefstr3').AsString)='KG' OR + Trim(ADOTmp.fieldbyname('AOrddefstr3').AsString)='G' OR + Trim(ADOTmp.fieldbyname('AOrddefstr3').AsString)='' OR + Trim(ADOTmp.fieldbyname('AOrddefstr3').AsString)='' then + begin + Label4.Caption:=Trim(ADOTmp.fieldbyname('AOrddefstr3').AsString); + end;} + if Trim(ADOTmp.fieldbyname('orderUnit').AsString)<>'' then + begin + Label9.Caption:=Trim(ADOTmp.fieldbyname('orderUnit').AsString); + Label19.Caption:=Label9.Caption; + Label20.Caption:=Label9.Caption; + Label7.Caption:=Label9.Caption; + end; + // Label13.Caption:=Trim(ADOTmp.fieldbyname('AOrddefstr2').AsString); + { if ADOTmp.FieldByName('SPMF').AsFloat>0 then + MJFK.Text:=Trim(ADOTmp.fieldbyname('SPMF').AsString); + if ADOTmp.FieldByName('SPKZ').AsFloat>0 then + MJSJKZ.Text:=Trim(ADOTmp.fieldbyname('SPKZ').AsString); } + // Label19.Caption:=Trim(Label9.Caption); + // Label20.Caption:=Trim(Label9.Caption); + // Label7.Caption:=Trim(Label9.Caption); + end else + begin + Application.MessageBox('!','ʾ',0); + Label2.Visible:=False; + Label2.Caption:=''; + APID.Text:=''; + FAPID:=''; + FMainId:=''; + FSubId:=''; + AOrdDefNote1.Text:=''; + Exit; + end; + {if Trim(SCXFlag)<>Trim(ADOTmp.fieldbyname('AOrdDefNote29').AsString) then + begin + APID.Text:=''; + if Application.MessageBox('̨뵱ǰ̨һ,'+#13+'Ƿ飿','ʾ',32+4)<>IDYES then + begin + Label2.Visible:=False; + Label2.Caption:=''; + FAPID:=''; + FMainId:=''; + FSubId:=''; + Exit; + end; + + end; } + APID.Text:=''; + BTAdd.Click; + MJLen.SetFocus; + end; +end; + +procedure TfrmMJManageNewFDNewSF.Edit1Click(Sender: TObject); +var + i:Integer; +begin + Panel3.Visible:=True; + with Panel3 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim(TEdit(Sender).Name); + end; + end; + end; +end; + +procedure TfrmMJManageNewFDNewSF.Edit2Change(Sender: TObject); +var + mvalue:Double; +begin + if Trim(Edit1.Text)<>'' then + begin + if TryStrToFloat(Edit1.Text,mvalue)=False then + begin + Application.MessageBox('Ƿ!','ʾ',0); + Exit; + end; + end else + begin + Exit; + end; + if Trim(Edit2.Text)<>'' then + begin + if TryStrToFloat(Edit2.Text,mvalue)=False then + begin + Application.MessageBox('Ƿ!','ʾ',0); + Exit; + end; + end else + begin + Exit; + end; + CDQty.Text:=FloatToStr(StrToFloat(Edit2.Text)-StrToFloat(Edit1.Text)); +end; + +procedure TfrmMJManageNewFDNewSF.Edit3Click(Sender: TObject); +begin + if Trim(Edit3.Text)='' then + begin + Edit3.Text:=''; + Edit4.Text:=''; + Edit5.Text:=''; + end else + begin + Edit3.Text:=''; + Edit4.Text:=''; + Edit5.Text:=''; + end; +end; + +procedure TfrmMJManageNewFDNewSF.Edit4Click(Sender: TObject); +begin + if Trim(Edit4.Text)='' then + begin + Edit4.Text:=''; + Edit3.Text:=''; + Edit5.Text:=''; + end else + begin + Edit4.Text:=''; + Edit3.Text:=''; + Edit5.Text:=''; + end; +end; + +procedure TfrmMJManageNewFDNewSF.Edit5Click(Sender: TObject); +begin + if Trim(Edit5.Text)='' then + begin + Edit5.Text:=''; + Edit3.Text:=''; + Edit4.Text:=''; + end else + begin + Edit5.Text:=''; + Edit3.Text:=''; + Edit4.Text:=''; + end; +end; + +procedure TfrmMJManageNewFDNewSF.Edit6Click(Sender: TObject); +begin + if Trim(Edit6.Text)='' then + begin + Edit6.Text:=''; + end else + begin + Edit6.Text:=''; + end; +end; + +procedure TfrmMJManageNewFDNewSF.MJstr3KeyPress(Sender: TObject; + var Key: Char); +begin + if Key = #13 then + begin + Key := #0; + SelectNext(ActiveControl as TWinControl, True, True); + end; +end; + +procedure TfrmMJManageNewFDNewSF.MJQty3Exit(Sender: TObject); +begin + { if (trim(MJMaoZ.Text)='') and (trim(MJQty4.Text)='') then exit; + if (trim(MJMaoZ.Text)='') and (trim(MJQty3.Text)='') then exit; + if (trim(MJQty4.Text)='') and (trim(MJQty3.Text)='') then exit; + + if (trim(MJQty3.Text)='') then exit; + + if (trim(MJQty4.Text)<>'') then + begin + MJMaoZ.Text:=floattostr(strtofloatdef(trim(MJQty3.Text),0)+strtofloatdef(trim(MJQty4.Text),0) ); + exit; + end; + } +end; + +procedure TfrmMJManageNewFDNewSF.MJMaoZExit(Sender: TObject); +begin +{ if (trim(MJMaoZ.Text)='') and (trim(MJQty4.Text)='') then exit; + if (trim(MJMaoZ.Text)='') and (trim(MJQty3.Text)='') then exit; + if (trim(MJQty4.Text)='') and (trim(MJQty3.Text)='') then exit; + + if (trim(MJQty3.Text)='') then exit; + + if (trim(MJMaoZ.Text)<>'') then + begin + MJQty4.Text:=floattostr(strtofloatdef(trim(MJMaoZ.Text),0)-strtofloatdef(trim(MJQty3.Text),0) ); + exit; + end; } +end; + +procedure TfrmMJManageNewFDNewSF.Label9Click(Sender: TObject); +begin + if trim(Label9.Caption)='M' then + begin + Label9.Caption:='Y'; + Label19.Caption:='Y'; + Label20.Caption:='Y'; + Label7.Caption:='Y'; + end + else + begin + Label9.Caption:='M'; + Label19.Caption:='M'; + Label20.Caption:='M'; + Label7.Caption:='M'; + end; +end; + +procedure TfrmMJManageNewFDNewSF.MJLenExit(Sender: TObject); +begin + MJQty3.OnExit(self); +end; + +procedure TfrmMJManageNewFDNewSF.MJQty4Exit(Sender: TObject); +begin + if (trim(MJMaoZ.Text)='') and (trim(MJQty4.Text)='') then exit; + if (trim(MJMaoZ.Text)='') and (trim(MJQty3.Text)='') then exit; + if (trim(MJQty4.Text)='') and (trim(MJQty3.Text)='') then exit; + + if (trim(MJQty3.Text)='') then exit; + + if (trim(MJQty4.Text)<>'') then + begin + MJMaoZ.Text:=floattostr(strtofloatdef(trim(MJQty3.Text),0)+strtofloatdef(trim(MJQty4.Text),0) ); + exit; + end; +end; + +procedure TfrmMJManageNewFDNewSF.Button2Click(Sender: TObject); +begin + RadioGroup1.ItemIndex:=-1; +end; + +procedure TfrmMJManageNewFDNewSF.MJQty4Change(Sender: TObject); +var + FReal:Double; +begin + + if Trim(MJQty4.Text)='' then + begin + // MJLen.Text:=''; + MJMaoZ.Text:=''; + Exit; + end; + if TryStrToFloat(MJQty4.Text,FReal)=False then Exit; + if Trim(MJQty3.Text)<>'' then + begin + if TryStrToFloat(MJQty3.Text,FReal)=True then + MJMaoZ.Text:=FloatToStr(StrToFloat(MJQty4.Text)+StrToFloat(MJQty3.Text)); + end else + begin + MJMaoZ.Text:=MJQty4.Text; + end; + + IF trim(fxsType)='ػ㳤'then + begin + MJLen.Text:=format('%.0f',[StrToFloatdef(trim(MJQty4.Text),0)* StrToFloatdef(trim(MKXS.Text),0)]); + // MJMaoZ.Text:=FloatToStr(StrToFloatdef(trim(MJQty4.Text),0)+StrToFloatdef(trim(MJQty3.Text),0)); + end; + +end; + +procedure TfrmMJManageNewFDNewSF.MJMaoZChange(Sender: TObject); +var + FReal:Double; +begin + // if StrToFloat(MJSJKZ.Text)*StrToFloat(MJFK.Text)=0 then Exit; + if Trim(MJMaoZ.Text)='' then + begin + //MJLen.Text:=''; + MJQty4.Text:=''; + Exit; + end; + if TryStrToFloat(MJMaoZ.Text,FReal)=False then Exit; + if Trim(MJQty3.Text)<>'' then + begin + if TryStrToFloat(MJQty3.Text,FReal)=False then Exit; + MJQty4.Text:=FloatToStr(StrToFloat(MJMaoZ.Text)-StrToFloat(MJQty3.Text)); + end else + begin + MJQty4.Text:=MJMaoZ.Text; + end; +end; + +procedure TfrmMJManageNewFDNewSF.APIDClick(Sender: TObject); +var + i:Integer; +begin + Panel3.Visible:=True; + with Panel3 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim(TEdit(Sender).Name); + end; + end; + end; +end; + + +procedure TfrmMJManageNewFDNewSF.Button3Click(Sender: TObject); +begin + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.MPRTBZNote,B.MPRTYaoFeng,B.MPRTTangJin,B.MPRTJiBenNote,B.MPRTTeBieNote, '); + sql.add('B.MPRTKaiJian,B.MPRTMF,B.MPRTKZ,'); + SQL.Add('OrderNoM=(select OrderNo from JYOrder_Main B where B.Mainid=A.MainId),'); + SQL.Add('PRTColor=(select PRTColor from JYOrder_Sub B where B.Subid=A.Subid), '); + sql.Add('PiZhong=(select PiZhong from JYOrder_Main B where B.Mainid=A.MainId),'); + sql.Add('maxRoll=1+isnull((select cast (max(mjxh) as int) from WFB_MJJY X where X.subID=A.subID),0)'); + sql.Add('from JYOrder_Sub_AnPai A'); + SQL.Add(' inner join JYOrder_Main B on A.MainId=B.MainId'); + sql.Add('where APID='''+Trim(APID.Text)+''''); + Open; + end; + if ADOTmp.IsEmpty=False then + begin + Label2.Visible:=True; + Label2.Caption:=Trim(ADOTmp.fieldbyname('AOrddefStr1').AsString); + Label24.Visible:=True; + Label24.Caption:=Trim(ADOTmp.fieldbyname('OrderNoM').AsString); + Label25.Visible:=True; + Label25.Caption:=Trim(ADOTmp.fieldbyname('PRTColor').AsString); + FAPID:=Trim(APID.Text); + FMainId:=Trim(ADOTmp.fieldbyname('MainId').AsString); + FSubId:=Trim(ADOTmp.fieldbyname('SubId').AsString); + MJXH.Text:=Trim(ADOTmp.fieldbyname('maxRoll').AsString); + AOrdDefNote1.Text:='װҪ:'+Trim(ADOTmp.fieldbyname('MPRTBZNote').AsString)+#13 + +':'+Trim(ADOTmp.fieldbyname('MPRTYaoFeng').AsString)+#13 + +'̽:'+Trim(ADOTmp.fieldbyname('MPRTTangJin').AsString)+#13 + +':'+Trim(ADOTmp.fieldbyname('MPRTKaiJian').AsString)+#13 + +'ŷ:'+Trim(ADOTmp.fieldbyname('MPRTMF').AsString)+#13 + +':'+Trim(ADOTmp.fieldbyname('MPRTKZ').AsString)+#13 + +'Ҫ:'+Trim(ADOTmp.fieldbyname('MPRTJiBenNote').AsString)+#13 + +'رʾ:'+Trim(ADOTmp.fieldbyname('MPRTTeBieNote').AsString); + MJQty3.Text:=Trim(ADOTmp.fieldbyname('PiZhong').AsString); + Label13.Caption:=Trim(ADOTmp.fieldbyname('AOrddefstr2').AsString); + MJFK.Text:=Trim(ADOTmp.fieldbyname('JYMF').AsString); + MJSJKZ.Text:=Trim(ADOTmp.fieldbyname('JYKZ').AsString); + MKXS.Text:=Trim(ADOTmp.fieldbyname('ZSXS').AsString); + MJstr4.Text:=Trim(ADOTmp.fieldbyname('AOrddefstr1').AsString); + if Trim(ADOTmp.fieldbyname('AOrddefstr3').AsString)<>'' then + begin + Label9.Caption:=Trim(ADOTmp.fieldbyname('AOrddefstr3').AsString); + Label19.Caption:=Label9.Caption; + Label20.Caption:=Label9.Caption; + Label7.Caption:=Label9.Caption; + end; + end else + begin + Application.MessageBox('!','ʾ',0); + Label2.Visible:=False; + Label2.Caption:=''; + APID.Text:=''; + FAPID:=''; + FMainId:=''; + FSubId:=''; + AOrdDefNote1.Text:=''; + MJStr4.Text:=''; + Exit; + end; + // MJXH.Text:='1'; + APID.Text:=''; + BTAdd.Click; + MJMaoZ.SetFocus; +end; + +procedure TfrmMJManageNewFDNewSF.MJFKChange(Sender: TObject); +var + FReal:Double; +begin + // if StrToFloat(MJSJKZ.Text)*StrToFloat(MJFK.Text)=0 then Exit; + + if TryStrToFloat(MJQty4.Text,FReal)=False then Exit; + if Trim(MJSJKZ.Text)='' then Exit; + if TryStrToFloat(MJSJKZ.Text,FReal)=False then + begin + Exit; + end; + if Trim(MJFK.Text)='' then Exit; + if TryStrToFloat(MJFK.Text,FReal)=False then + begin + Exit; + end; + if StrToFloat(MJSJKZ.Text)*StrToFloat(MJFK.Text)=0 then Exit; + { IF trim(MKXS.Text)='' then + begin + if Trim(Label9.Caption)='M' then + begin + //MJLen.Text:=FloatToStr(StrToFloat(MJQty4.Text)*1000*100/StrToFloat(MJSJKZ.Text)/StrToFloat(MJFK.Text)); + MJLen.Text:=format('%.1f',[StrToFloat(MJQty4.Text)*1000*100/StrToFloat(MJSJKZ.Text)/StrToFloat(MJFK.Text)]); + end else + begin + MJLen.Text:=format('%.1f',[StrToFloat(MJQty4.Text)*1000*100/StrToFloat(MJSJKZ.Text)/StrToFloat(MJFK.Text)*1.0936]); + //MJLen.Text:=FloatToStr(StrToFloat(MJQty4.Text)*1000*100/StrToFloat(MJSJKZ.Text)/StrToFloat(MJFK.Text)*1.0936); + // MJLen.Text:=floatToStr(Round(StrToFloat(MJQty4.Text)*1000*100/StrToFloat(MJSJKZ.Text)/StrToFloat(MJFK.Text)*1.0936)); + end; + end;} +end; + +procedure TfrmMJManageNewFDNewSF.Edit7Click(Sender: TObject); +begin + if Trim(Edit7.Text)='' then + begin + Edit7.Text:=''; + if not IsCommOpen then OpenCom(JCYDLL); + IsJsMessage:=true; + end + else + begin + Edit7.Text:=''; + IsJsMessage:=true; + end; +end; + +procedure TfrmMJManageNewFDNewSF.Button6Click(Sender: TObject); +begin + frmClothHCList:=TfrmClothHCList.create(self); + with frmClothHCList do + begin + fType:='10'; + if showmodal=1 then + begin + APID.Text:=trim(Order_Main.fieldbyname('APID').asstring); + Button3.Click; + end; + free; + end; +end; + +procedure TfrmMJManageNewFDNewSF.MJQty4KeyPress(Sender: TObject; + var Key: Char); +begin + IF key=#13 then + begin + BTPrint.Click; + end; +end; + +procedure TfrmMJManageNewFDNewSF.MKXSChange(Sender: TObject); +begin +// MJLen.Text:=format('%.1f',[StrToFloatdef(trim(MJQty4.Text),0)* StrToFloatdef(trim(MKXS.Text),0)]); + MJQty4.Text:=format('%.1f',[StrToFloatdef(trim(MJLen.Text),0)* StrToFloatdef(trim(MKXS.Text),0)]); + +// MJQty4.Text:=FloatToStr(StrToFloat(MJMaoZ.Text)-StrToFloat(MJQty3.Text)); + MJMaoZ.Text:=FloatToStr(StrToFloat(MJQty4.Text)+StrToFloat(MJQty3.Text)); +end; + +procedure TfrmMJManageNewFDNewSF.FormCreate(Sender: TObject); +begin + IsCommopen:=false; + IsJsMessage:=false; +end; + +procedure TfrmMJManageNewFDNewSF.MJQty2Change(Sender: TObject); +var + FReal:double; +begin + IF trim(MKXS.Text)<>'' then + begin + if TryStrToFloat(MKXS.Text,FReal)=true then + begin + MJLen.Text:=format('%.1f',[StrToFloatdef(trim(MJQty4.Text),0)* StrToFloatdef(trim(MKXS.Text),0)]); + MJLen.Text:=format('%.1f',[StrToFloatdef(trim(MJLen.Text),0)- StrToFloatdef(trim(MJQty2.Text),0)]); + end; + end + else + begin + if Trim(MJSJKZ.Text)='' then Exit; + if TryStrToFloat(MJSJKZ.Text,FReal)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + if Trim(MJFK.Text)='' then Exit; + if TryStrToFloat(MJFK.Text,FReal)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + if StrToFloat(MJSJKZ.Text)*StrToFloat(MJFK.Text)=0 then Exit; + if Trim(Label9.Caption)='M' then + begin + //MJLen.Text:=FloatToStr(StrToFloat(MJQty4.Text)*1000*100/StrToFloat(MJSJKZ.Text)/StrToFloat(MJFK.Text)); + MJLen.Text:=format('%.1f',[StrToFloat(MJQty4.Text)*1000*100/StrToFloat(MJSJKZ.Text)/StrToFloat(MJFK.Text)]); + MJLen.Text:=format('%.1f',[StrToFloatdef(trim(MJLen.Text),0)- StrToFloatdef(trim(MJQty2.Text),0)]); + end else + begin + MJLen.Text:=format('%.1f',[StrToFloat(MJQty4.Text)*1000*100/StrToFloat(MJSJKZ.Text)/StrToFloat(MJFK.Text)*1.0936]); + MJLen.Text:=format('%.1f',[StrToFloatdef(trim(MJLen.Text),0)- StrToFloatdef(trim(MJQty2.Text),0)]); + //MJLen.Text:=FloatToStr(StrToFloat(MJQty4.Text)*1000*100/StrToFloat(MJSJKZ.Text)/StrToFloat(MJFK.Text)*1.0936); + // MJLen.Text:=floatToStr(Round(StrToFloat(MJQty4.Text)*1000*100/StrToFloat(MJSJKZ.Text)/StrToFloat(MJFK.Text)*1.0936)); + end; + end; +end; + +procedure TfrmMJManageNewFDNewSF.Edit8Click(Sender: TObject); +begin + if Trim(Edit8.Text)='' then + begin + Edit8.Text:=''; + Button5.Visible:=true; + end + else + begin + Edit8.Text:=''; + Button5.Visible:=false; + end; +end; + +procedure TfrmMJManageNewFDNewSF.MJLenChange(Sender: TObject); +begin + IF trim(fxsType)='Ȼ㾻'then + begin + MJQty4.Text:=format('%.1f',[StrToFloatdef(trim(MJLen.Text),0)* StrToFloatdef(trim(MKXS.Text),0)]); + MJMaoZ.Text:=FloatToStr(StrToFloatdef(trim(MJQty4.Text),0)+StrToFloatdef(trim(MJQty3.Text),0)); + end; +end; + +end. diff --git a/艾登贸易管理/U_MJManageNewFDNew1.dfm b/艾登贸易管理/U_MJManageNewFDNew1.dfm new file mode 100644 index 0000000..8e5c0f5 --- /dev/null +++ b/艾登贸易管理/U_MJManageNewFDNew1.dfm @@ -0,0 +1,1967 @@ +object frmMJManageNewFDNew: TfrmMJManageNewFDNew + Left = 68 + Top = -26 + Width = 1280 + Height = 754 + HorzScrollBar.Position = 85 + Caption = #25104#21697#26816#39564 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClick = FormClick + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = -85 + Top = 0 + Width = 1365 + Height = 30 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = ToolButton1Click + end + object TBCD: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #30133#28857#31649#29702 + ImageIndex = 132 + OnClick = TBCDClick + end + object TBClose: TToolButton + Left = 150 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxGrid2: TcxGrid + Left = 626 + Top = 78 + Width = 330 + Height = 620 + Align = alLeft + TabOrder = 1 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv2CellClick + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column1 + end + item + Kind = skSum + Column = Tv2CDQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object tv2CDType: TcxGridDBColumn + Caption = #30133#28857#21517#31216 + DataBinding.FieldName = 'CDName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle4 + Styles.Header = cxStyle4 + Width = 98 + end + object tv2CDWZ: TcxGridDBColumn + Caption = #20301#32622#36215 + DataBinding.FieldName = 'CDBeg' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = cxStyle1 + Styles.Header = cxStyle1 + Width = 76 + end + object v2Column2: TcxGridDBColumn + Caption = #20301#32622#27490 + DataBinding.FieldName = 'CDend' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Styles.Content = cxStyle1 + Styles.Header = cxStyle1 + Width = 75 + end + object Tv2CDQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'CDQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = Tv2CDQtyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = cxStyle3 + Styles.Header = cxStyle3 + Width = 73 + end + object Tv2CDReason: TcxGridDBColumn + Caption = #21407#22240 + DataBinding.FieldName = 'CDReason' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 131 + end + object v2Column1: TcxGridDBColumn + DataBinding.FieldName = 'CDQty' + Visible = False + Width = 55 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGrid3: TcxGrid + Left = 956 + Top = 78 + Width = 324 + Height = 620 + Align = alLeft + TabOrder = 2 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv3CellClick + DataController.DataSource = DataSource3 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = cxStyle4 + Styles.IncSearch = cxStyle4 + Styles.Selection = cxStyle4 + object cxGridDBColumn1: TcxGridDBColumn + Caption = #21367#26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle5 + Styles.Header = cxStyle5 + Width = 146 + end + object v3Column3: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'MJType' + Options.Editing = False + Styles.Content = cxStyle5 + Styles.Header = cxStyle5 + Width = 48 + end + object v3Column1: TcxGridDBColumn + Caption = #21367#21495 + DataBinding.FieldName = 'MJXH' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = cxStyle4 + Styles.Header = cxStyle4 + Width = 49 + end + object v3Column2: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'MJLen' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = cxStyle3 + Styles.Header = cxStyle3 + Width = 60 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + object ScrollBox1: TScrollBox + Left = -85 + Top = 78 + Width = 483 + Height = 620 + Align = alLeft + TabOrder = 3 + object SpeedButton13: TSpeedButton + Left = 7 + Top = 3 + Width = 70 + Height = 70 + Caption = #23567#40657#28857 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton14: TSpeedButton + Left = 86 + Top = 3 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton15: TSpeedButton + Left = 166 + Top = 3 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton16: TSpeedButton + Left = 245 + Top = 3 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton17: TSpeedButton + Left = 325 + Top = 3 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton18: TSpeedButton + Left = 404 + Top = 3 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton21: TSpeedButton + Left = 7 + Top = 77 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton22: TSpeedButton + Left = 86 + Top = 77 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton23: TSpeedButton + Left = 166 + Top = 77 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton24: TSpeedButton + Left = 245 + Top = 77 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton25: TSpeedButton + Left = 325 + Top = 77 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton26: TSpeedButton + Left = 404 + Top = 77 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton29: TSpeedButton + Left = 7 + Top = 151 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton30: TSpeedButton + Left = 86 + Top = 151 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton31: TSpeedButton + Left = 166 + Top = 151 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton32: TSpeedButton + Left = 245 + Top = 151 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton33: TSpeedButton + Left = 325 + Top = 151 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton34: TSpeedButton + Left = 404 + Top = 151 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton37: TSpeedButton + Left = 7 + Top = 225 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton38: TSpeedButton + Left = 86 + Top = 225 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton39: TSpeedButton + Left = 166 + Top = 225 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton40: TSpeedButton + Left = 245 + Top = 225 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton41: TSpeedButton + Left = 325 + Top = 225 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton42: TSpeedButton + Left = 404 + Top = 225 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton45: TSpeedButton + Left = 7 + Top = 299 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton46: TSpeedButton + Left = 86 + Top = 299 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton47: TSpeedButton + Left = 166 + Top = 299 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton48: TSpeedButton + Left = 245 + Top = 299 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton50: TSpeedButton + Left = 325 + Top = 299 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton51: TSpeedButton + Left = 404 + Top = 299 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton54: TSpeedButton + Left = 7 + Top = 373 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton55: TSpeedButton + Left = 86 + Top = 373 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton56: TSpeedButton + Left = 166 + Top = 373 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton57: TSpeedButton + Left = 245 + Top = 373 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton58: TSpeedButton + Left = 325 + Top = 373 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton59: TSpeedButton + Left = 404 + Top = 373 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton62: TSpeedButton + Left = 7 + Top = 447 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton63: TSpeedButton + Left = 86 + Top = 447 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton64: TSpeedButton + Left = 166 + Top = 447 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton65: TSpeedButton + Left = 245 + Top = 447 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton66: TSpeedButton + Left = 325 + Top = 447 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton67: TSpeedButton + Left = 404 + Top = 447 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton70: TSpeedButton + Left = 7 + Top = 521 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton71: TSpeedButton + Left = 86 + Top = 521 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton72: TSpeedButton + Left = 166 + Top = 521 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton73: TSpeedButton + Left = 245 + Top = 521 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton74: TSpeedButton + Left = 325 + Top = 521 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton75: TSpeedButton + Left = 404 + Top = 521 + Width = 70 + Height = 70 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + end + object MovePanel1: TMovePanel + Left = 1 + Top = 112 + Width = 313 + Height = 281 + BevelInner = bvLowered + Color = clSkyBlue + TabOrder = 4 + Visible = False + object Label17: TLabel + Left = 29 + Top = 24 + Width = 88 + Height = 21 + Caption = #36215#22987#20301#32622 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 178 + Top = 59 + Width = 20 + Height = 19 + Caption = #21040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 264 + Top = 24 + Width = 22 + Height = 21 + Caption = #30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label20: TLabel + Left = 264 + Top = 89 + Width = 22 + Height = 21 + Caption = #30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label21: TLabel + Left = 29 + Top = 89 + Width = 84 + Height = 21 + Caption = 'Label21' + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -21 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 264 + Top = 167 + Width = 22 + Height = 21 + Caption = #30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 29 + Top = 167 + Width = 92 + Height = 21 + Caption = #38271' '#24230 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Edit1: TEdit + Left = 124 + Top = 14 + Width = 131 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnChange = Edit2Change + OnClick = Edit1Click + end + object Button1: TButton + Left = 36 + Top = 221 + Width = 66 + Height = 43 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button1Click + end + object Button4: TButton + Left = 190 + Top = 221 + Width = 64 + Height = 42 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Button4Click + end + object Edit2: TEdit + Left = 124 + Top = 79 + Width = 131 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnChange = Edit2Change + OnClick = Edit1Click + end + object CDQty: TEdit + Left = 124 + Top = 157 + Width = 131 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + end + end + object Panel1: TPanel + Left = -85 + Top = 30 + Width = 1365 + Height = 48 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 5 + object Label1: TLabel + Left = 9 + Top = 16 + Width = 80 + Height = 19 + Caption = #25195#25551#20837#21475 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 592 + Top = 15 + Width = 42 + Height = 20 + Caption = #32568#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label16: TLabel + Left = 1088 + Top = 13 + Width = 42 + Height = 12 + Caption = 'Label16' + Visible = False + end + object Label24: TLabel + Left = 296 + Top = 15 + Width = 63 + Height = 20 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label25: TLabel + Left = 448 + Top = 15 + Width = 42 + Height = 20 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object APID: TEdit + Left = 88 + Top = 12 + Width = 185 + Height = 27 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + OnKeyPress = APIDKeyPress + end + object BTAdd: TButton + Left = 1211 + Top = 8 + Width = 46 + Height = 25 + Caption = #26032#22686 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + Visible = False + OnClick = BTAddClick + end + object BTEdit: TButton + Left = 1155 + Top = 8 + Width = 38 + Height = 25 + Caption = #20462#25913 + TabOrder = 2 + Visible = False + OnClick = BTEditClick + end + end + object Panel2: TPanel + Left = 398 + Top = 78 + Width = 228 + Height = 620 + Align = alLeft + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 6 + object Label9: TLabel + Left = 182 + Top = 79 + Width = 15 + Height = 22 + Caption = 'M' + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label3: TLabel + Left = 182 + Top = 136 + Width = 26 + Height = 22 + Caption = 'cm' + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label4: TLabel + Left = 182 + Top = 191 + Width = 24 + Height = 22 + Caption = 'Kg' + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label5: TLabel + Left = 25 + Top = 79 + Width = 40 + Height = 23 + Caption = #38271#24230 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label6: TLabel + Left = 25 + Top = 136 + Width = 40 + Height = 23 + Caption = #24133#23485 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label11: TLabel + Left = 25 + Top = 191 + Width = 40 + Height = 23 + Caption = #37325#37327 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label10: TLabel + Left = 25 + Top = 341 + Width = 40 + Height = 23 + Caption = #27491#21697 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label12: TLabel + Left = 122 + Top = 341 + Width = 40 + Height = 22 + Caption = #27425#21697 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label13: TLabel + Left = 182 + Top = 18 + Width = 15 + Height = 22 + Caption = 'M' + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label14: TLabel + Left = 25 + Top = 18 + Width = 40 + Height = 23 + Caption = #21407#30721 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label15: TLabel + Left = 87 + Top = 348 + Width = 5 + Height = 22 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + Visible = False + end + object Label22: TLabel + Left = 182 + Top = 239 + Width = 36 + Height = 22 + Caption = 'g/'#13217 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label23: TLabel + Left = 25 + Top = 238 + Width = 40 + Height = 23 + Caption = #20811#37325 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label27: TLabel + Left = 25 + Top = 287 + Width = 40 + Height = 23 + Caption = #36192#36865 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label28: TLabel + Left = 25 + Top = 392 + Width = 40 + Height = 22 + Caption = #30041#26679 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label26: TLabel + Left = 121 + Top = 392 + Width = 40 + Height = 22 + Caption = #20986#32440 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object MJFK: TEdit + Left = 69 + Top = 127 + Width = 110 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnClick = Edit1Click + end + object MJLen: TEdit + Left = 69 + Top = 70 + Width = 110 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Edit1Click + end + object MJMaoZ: TEdit + Left = 69 + Top = 182 + Width = 110 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Edit1Click + end + object BTPrint: TButton + Left = 11 + Top = 456 + Width = 83 + Height = 54 + Caption = #25171#21360 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = BTPrintClick + end + object Button5: TButton + Left = 131 + Top = 456 + Width = 83 + Height = 54 + Caption = #37325#25171 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + OnClick = Button5Click + end + object Edit3: TEdit + Left = 70 + Top = 331 + Width = 46 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 5 + Text = #8730 + OnClick = Edit3Click + end + object Edit4: TEdit + Left = 164 + Top = 331 + Width = 46 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 6 + OnClick = Edit4Click + end + object MJQty1: TEdit + Left = 69 + Top = 9 + Width = 110 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + OnClick = Edit1Click + end + object MJSJKZ: TEdit + Left = 69 + Top = 229 + Width = 110 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + OnClick = Edit1Click + end + object MJQty2: TEdit + Left = 69 + Top = 278 + Width = 110 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + OnClick = Edit1Click + end + object Edit5: TEdit + Left = 70 + Top = 382 + Width = 46 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 10 + OnClick = Edit5Click + end + object Edit6: TEdit + Left = 166 + Top = 382 + Width = 46 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 11 + Text = #8730 + OnClick = Edit6Click + end + end + object Panel3: TPanel + Left = -43 + Top = 402 + Width = 383 + Height = 231 + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 7 + Visible = False + object SpeedButton1: TSpeedButton + Left = 4 + Top = 3 + Width = 70 + Height = 70 + Caption = '0' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton2: TSpeedButton + Left = 78 + Top = 3 + Width = 70 + Height = 70 + Caption = '1' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton3: TSpeedButton + Left = 152 + Top = 3 + Width = 70 + Height = 70 + Caption = '2' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton4: TSpeedButton + Left = 226 + Top = 3 + Width = 70 + Height = 70 + Caption = '3' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton5: TSpeedButton + Left = 4 + Top = 75 + Width = 70 + Height = 70 + Caption = '4' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton6: TSpeedButton + Left = 78 + Top = 75 + Width = 70 + Height = 70 + Caption = '5' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton7: TSpeedButton + Left = 152 + Top = 75 + Width = 70 + Height = 70 + Caption = '6' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton8: TSpeedButton + Left = 226 + Top = 75 + Width = 70 + Height = 70 + Caption = '7' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton9: TSpeedButton + Left = 4 + Top = 150 + Width = 70 + Height = 70 + Caption = '8' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton10: TSpeedButton + Left = 78 + Top = 150 + Width = 70 + Height = 70 + Caption = '9' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton11: TSpeedButton + Tag = 9 + Left = 152 + Top = 150 + Width = 70 + Height = 70 + Caption = '.' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton12: TSpeedButton + Left = 226 + Top = 150 + Width = 70 + Height = 70 + Caption = #8592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton12Click + end + object SpeedButton49: TSpeedButton + Tag = 9 + Left = 303 + Top = 81 + Width = 65 + Height = 57 + Caption = #38544#34255 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton49Click + end + end + object cxStyleRepository1: TcxStyleRepository + Left = 368 + object cxStyle1: TcxStyle + AssignedValues = [svColor, svFont] + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle2: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Pitch = fpFixed + Font.Style = [fsBold] + TextColor = clDefault + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 400 + end + object DataSource1: TDataSource + DataSet = Order_MJ + Left = 616 + end + object Order_MJ: TClientDataSet + Aggregates = <> + Params = <> + Left = 432 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 576 + end + object ADOCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 536 + end + object ADOTmp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 504 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 648 + end + object RM2: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 464 + ReportData = {} + end + object DataSource2: TDataSource + DataSet = CDS_MJCD + Left = 816 + end + object CDS_MJCD: TClientDataSet + Aggregates = <> + Params = <> + Left = 768 + end + object DataSource3: TDataSource + DataSet = CDS_MJID + Left = 1000 + Top = 296 + end + object CDS_MJID: TClientDataSet + Aggregates = <> + Params = <> + Left = 1016 + Top = 312 + end + object Timer1: TTimer + Interval = 100 + Left = 944 + Top = 320 + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 720 + end + object cxStyleRepository2: TcxStyleRepository + object cxStyle3: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = clBtnFace + Font.Charset = ANSI_CHARSET + Font.Color = clBlue + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + end + object cxStyleRepository3: TcxStyleRepository + object cxStyle4: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clRed + end + end + object cxStyleRepository4: TcxStyleRepository + object cxStyle5: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + end + object cxStyleRepository5: TcxStyleRepository + object cxStyle6: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 616 + Top = 587 + end + object ADOQueryMainDSC: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + SQL.Strings = ( + 'select A.*,C.OrderNo,B.SWFBColor,B.SWFBHW,B.SWFBCodeName,' + ' B.SWFBCode,B.SWFBKZ,B.WKMS,B.KZBig,B.KZSmal,' + + ' SCMQty=(select isnull(Sum(MJLen),0) from WFB_MJJY WM wher' + + 'e WM.APId=A.APId and len(WM.MJID)>8),' + + ' Case when A.OrderQtyM-(select isnull(Sum(MJLen),0) from W' + + 'FB_MJJY WM where WM.APId=A.APId )>0 ' + + ' then A.OrderQtyM-(select isnull(Sum(MJLen),0) fr' + + 'om WFB_MJJY WM where WM.APId=A.APId ) else 0 end as WSCMQty' + 'from WFBOrder_Sub_AnPai A ' + 'inner join WFBOrder_Sub B on A.SubId=B.SubId' + 'inner join WFBOrder_Main C on A.MainId=C.MainId' + + 'where C.ChkStatus='#39#23457#26680#36890#36807#39' and RTrim(isnull(A.SCStatus,'#39#39'))<>'#39#24050#23436#25104#39 + + ' ' + 'and isnull(B.AnPaiChkStatus,'#39#39')='#39#23457#26680#36890#36807#39' and A.SCXDFlag=1' + '') + Left = 840 + Top = 144 + end +end diff --git a/艾登贸易管理/U_MJManageNewFDNew1.pas b/艾登贸易管理/U_MJManageNewFDNew1.pas new file mode 100644 index 0000000..837a689 --- /dev/null +++ b/艾登贸易管理/U_MJManageNewFDNew1.pas @@ -0,0 +1,1532 @@ +unit U_MJManageNewFDNew; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxCalendar, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + 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; +{function CommOpen(fhandle:hwnd;sCommName:PAnsiChar; + IntTime:integer):integer;stdcall;external 'JCYData.DLL'; +function CommClose(sCommName:PAnsiChar):integer;stdcall;external 'JCYData.DLL';} + + +type + TfrmMJManageNewFDNew = class(TForm) + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxGridPopupMenu1: TcxGridPopupMenu; + DataSource1: TDataSource; + Order_MJ: TClientDataSet; + ADOQueryMain: TADOQuery; + ADOCmd: TADOQuery; + ADOTmp: TADOQuery; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + ToolBar1: TToolBar; + TBClose: TToolButton; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + tv2CDType: TcxGridDBColumn; + tv2CDWZ: TcxGridDBColumn; + Tv2CDQty: TcxGridDBColumn; + Tv2CDReason: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + TBCD: TToolButton; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + DataSource2: TDataSource; + CDS_MJCD: TClientDataSet; + DataSource3: TDataSource; + CDS_MJID: TClientDataSet; + v2Column1: TcxGridDBColumn; + Timer1: TTimer; + ADOQueryPrint: TADOQuery; + v2Column2: TcxGridDBColumn; + ToolButton1: TToolButton; + ScrollBox1: TScrollBox; + SpeedButton13: TSpeedButton; + SpeedButton14: TSpeedButton; + SpeedButton15: TSpeedButton; + SpeedButton16: TSpeedButton; + SpeedButton17: TSpeedButton; + SpeedButton18: TSpeedButton; + SpeedButton21: TSpeedButton; + SpeedButton22: TSpeedButton; + SpeedButton23: TSpeedButton; + SpeedButton24: TSpeedButton; + SpeedButton25: TSpeedButton; + SpeedButton26: TSpeedButton; + SpeedButton29: TSpeedButton; + SpeedButton30: TSpeedButton; + SpeedButton31: TSpeedButton; + SpeedButton32: TSpeedButton; + SpeedButton33: TSpeedButton; + SpeedButton34: TSpeedButton; + SpeedButton37: TSpeedButton; + SpeedButton38: TSpeedButton; + SpeedButton39: TSpeedButton; + SpeedButton40: TSpeedButton; + SpeedButton41: TSpeedButton; + SpeedButton42: TSpeedButton; + MovePanel1: TMovePanel; + Label17: TLabel; + Label18: TLabel; + Label19: TLabel; + Label20: TLabel; + Label21: TLabel; + Edit1: TEdit; + Button1: TButton; + Button4: TButton; + Edit2: TEdit; + cxStyleRepository2: TcxStyleRepository; + cxStyle3: TcxStyle; + cxStyleRepository3: TcxStyleRepository; + cxStyle4: TcxStyle; + cxStyleRepository4: TcxStyleRepository; + cxStyle5: TcxStyle; + cxStyleRepository5: TcxStyleRepository; + cxStyle6: TcxStyle; + cxGridPopupMenu2: TcxGridPopupMenu; + ADOQueryMainDSC: TADOQuery; + SpeedButton45: TSpeedButton; + SpeedButton46: TSpeedButton; + SpeedButton47: TSpeedButton; + SpeedButton48: TSpeedButton; + SpeedButton50: TSpeedButton; + SpeedButton51: TSpeedButton; + SpeedButton54: TSpeedButton; + SpeedButton55: TSpeedButton; + Panel1: TPanel; + Label1: TLabel; + APID: TEdit; + Label2: TLabel; + BTAdd: TButton; + BTEdit: TButton; + Label16: TLabel; + SpeedButton56: TSpeedButton; + SpeedButton57: TSpeedButton; + SpeedButton58: TSpeedButton; + SpeedButton59: TSpeedButton; + SpeedButton62: TSpeedButton; + SpeedButton63: TSpeedButton; + SpeedButton64: TSpeedButton; + SpeedButton65: TSpeedButton; + SpeedButton66: TSpeedButton; + SpeedButton67: TSpeedButton; + SpeedButton70: TSpeedButton; + SpeedButton71: TSpeedButton; + SpeedButton72: TSpeedButton; + SpeedButton73: TSpeedButton; + SpeedButton74: TSpeedButton; + SpeedButton75: TSpeedButton; + Label7: TLabel; + CDQty: TEdit; + Label8: TLabel; + Panel2: TPanel; + Label9: TLabel; + MJFK: TEdit; + Label3: TLabel; + MJLen: TEdit; + Label4: TLabel; + MJMaoZ: TEdit; + Label5: TLabel; + Label6: TLabel; + Label11: TLabel; + BTPrint: TButton; + Button5: TButton; + Edit3: TEdit; + Label10: TLabel; + Edit4: TEdit; + Label12: TLabel; + Label13: TLabel; + Label14: TLabel; + MJQty1: TEdit; + Label15: TLabel; + Label22: TLabel; + Label23: TLabel; + MJSJKZ: TEdit; + Panel3: TPanel; + SpeedButton1: TSpeedButton; + SpeedButton2: TSpeedButton; + SpeedButton3: TSpeedButton; + SpeedButton4: TSpeedButton; + SpeedButton5: TSpeedButton; + SpeedButton6: TSpeedButton; + SpeedButton7: TSpeedButton; + SpeedButton8: TSpeedButton; + SpeedButton9: TSpeedButton; + SpeedButton10: TSpeedButton; + SpeedButton11: TSpeedButton; + SpeedButton12: TSpeedButton; + SpeedButton49: TSpeedButton; + v3Column1: TcxGridDBColumn; + v3Column2: TcxGridDBColumn; + Label24: TLabel; + Label25: TLabel; + v3Column3: TcxGridDBColumn; + Label27: TLabel; + MJQty2: TEdit; + Label28: TLabel; + Edit5: TEdit; + Label26: TLabel; + Edit6: TEdit; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBCDClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure MJMaoZClick(Sender: TObject); + procedure MJLenClick(Sender: TObject); + procedure MJFKClick(Sender: TObject); + procedure MJBanZuClick(Sender: TObject); + procedure MJSJKZClick(Sender: TObject); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure FormClick(Sender: TObject); + procedure Button12Click(Sender: TObject); + procedure BTAddClick(Sender: TObject); + procedure BTEditClick(Sender: TObject); + procedure BTPrintClick(Sender: TObject); + procedure Tv2CDQtyPropertiesEditValueChanged(Sender: TObject); + procedure SpeedButton1Click(Sender: TObject); + procedure SpeedButton12Click(Sender: TObject); + procedure SpeedButton13Click(Sender: TObject); + procedure cxGridDBColumn2PropertiesChange(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure Button5Click(Sender: TObject); + procedure SpeedButton49Click(Sender: TObject); + procedure APIDKeyPress(Sender: TObject; var Key: Char); + procedure Edit1Click(Sender: TObject); + procedure Edit2Change(Sender: TObject); + procedure Edit3Click(Sender: TObject); + procedure Edit4Click(Sender: TObject); + procedure Edit5Click(Sender: TObject); + procedure Edit6Click(Sender: TObject); + private + { Private declarations } + FInt,PState,PrintInt,SCInitGrid,FState:Integer; + FColumn,FBanZu,FAPID,FMainId,FSubId:String; + MValue,FCDName:String; + procedure InitJP(); + procedure InitCDGrid(); + procedure InitCDGridID(); + procedure AddCD(Fbtn:TButton); + procedure AddSL(Fbtn:TButton); + function SaveData():Boolean; + procedure BtnStatus(BSInt:Boolean); + procedure AddSLNew(Fbtn:TSpeedButton); + procedure AddCDNew(Fbtn:TSpeedButton); + procedure SavedataCK(); + public + { Public declarations } + end; + +var + frmMJManageNewFDNew: TfrmMJManageNewFDNew; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp,U_iniParam; + +{$R *.dfm} + +procedure TfrmMJManageNewFDNew.FormDestroy(Sender: TObject); +begin + frmMJManageNewFDNew:=nil; +end; + +procedure TfrmMJManageNewFDNew.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + //DataLink_WFBProducttion.ADOLink.Connected:=False; + Action:=caFree; +end; +procedure TfrmMJManageNewFDNew.InitCDGrid(); +begin + with ADOQueryMain do + begin + Close; + SQL.Clear; + if PState=1 then + sql.Add('select * from WFB_MJJY_CD where MJID='''' ') + else + sql.Add('select * from WFB_MJJY_CD where MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_MJCD); + SInitCDSData20(ADOQueryMain,CDS_MJCD); +end; +procedure TfrmMJManageNewFDNew.InitCDGridID(); +begin + with ADOQueryMain do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_MJJY where APID='''+Trim(FAPID)+''''); + if Trim(SCXFlag)<>'' then + sql.Add(' and JTType='''+Trim(SCXFlag)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_MJID); + SInitCDSData20(ADOQueryMain,CDS_MJID); +end; + +procedure TfrmMJManageNewFDNew.TBCloseClick(Sender: TObject); +var + maxno:string; +begin + if CDS_MJCD.IsEmpty=False then + begin + if Trim(CDS_MJCD.FieldByName('MCID').AsString)='' then + begin + //try + //ADOCmd.Connection.BeginTrans; + {with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete from WFB_MJJY_CD_Temp where JTType='''+Trim(SCXFlag)+''''); + Execsql; + end; + with CDS_MJCD do + begin + First; + while not Eof do + begin + if GetLSNo(ADOCmd,maxno,'LS','WFB_MJJY_CD_Temp',2,1)=False then + begin + // ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡõʱʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_MJJY_CD_Temp where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MCID').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,Tv2,CDS_MJCD,'WFB_MJJY_CD_Temp',0); + FieldByName('JTType').Value:=Trim(SCXFlag); + Post; + end; + Next; + end; + end; } + close; + //ADOCmd.Connection.CommitTrans; + //ModalResult:=1; + //except + //ADOCmd.Connection.RollbackTrans; + //Application.MessageBox('ʱʧܣ','ʾ',0); + //end; + end else + begin + Close; + end; + end else + begin + Close; + end; + + + +end; + +procedure TfrmMJManageNewFDNew.Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + fsj:string; +begin + //FInt:=0; + //Tv1.DataController.FocusedRecordIndex; + //fsj:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; +end; + +procedure TfrmMJManageNewFDNew.TBCDClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WFBCD'; + flagname:='õ'; + fnote:=True; + V1Note.Caption:='Ӣ'; + if ShowModal=1 then + begin + Self.InitJP(); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmMJManageNewFDNew.FormShow(Sender: TObject); +begin + InitJP(); + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select BanZu from SY_User where UserId='''+Trim(DCode)+''''); + Open; + FBanZu:=Trim(Fieldbyname('BanZu').AsString); + end; + {if Trim(FBanZu)='' then + begin + Application.MessageBox('Ϊգð飡','ʾ',0); + Exit; + end; } + APID.SetFocus; +end; +procedure TfrmMJManageNewFDNew.InitJP(); +var + AA:array[0..100] of string; + i,j:Integer; +begin + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select ZDYName from KH_Zdy where Type=''WFBCD'' order by ZDYNO '); + Open; + end; + if ADOTmp.IsEmpty then + begin + Application.MessageBox('ûжõ㣡','ʾ',0); + Exit; + end; + with ADOTmp do + begin + First; + i:=0; + while not Eof do + begin + AA[i]:=Trim(fieldbyname('ZDYName').AsString); + i:=i+1; + Next; + end; + end; + i:=i-1; + if i>63 then + begin + i:=63; + end; + for j:=0 to i do + begin + with ScrollBox1 do + begin + TSpeedButton(Controls[j]).Visible:=True; + TSpeedButton(Controls[j]).Hint:=AA[j]; + if Length(AA[j])>4 then + begin + TSpeedButton(Controls[j]).Caption:=Copy(Trim(AA[j]),1,4)+#13+Copy(Trim(AA[j]),5,Length(AA[j])-4); + end else + TSpeedButton(Controls[j]).Caption:=AA[j]; + end; + end; +end; + +procedure TfrmMJManageNewFDNew.AddCD(Fbtn:TButton); +begin + if PState<1 then Exit; + if Order_MJ.IsEmpty then Exit; + with CDS_MJCD do + begin + Append; + FieldByName('cdname').Value:=Trim(TButton(Fbtn).Caption); + Post; + end; +end; +procedure TfrmMJManageNewFDNew.AddCDNew(Fbtn:TSpeedButton); +begin + with CDS_MJCD do + begin + Append; + FieldByName('cdname').Value:=Trim(TSpeedButton(Fbtn).Hint); + Post; + end; +end; +procedure TfrmMJManageNewFDNew.AddSL(Fbtn:TButton); +begin + if PState<1 then Exit; + if Order_MJ.IsEmpty then Exit; + + //if MJMaoZ.Focused then + if FInt=4 then Exit; + if CDS_MJCD.IsEmpty=False then + begin + FColumn:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if Trim(FColumn)<>'' then + begin + with CDS_MJCD do + begin + Edit; + FieldByName(FColumn).Value:=Trim(FieldByName(FColumn).AsString)+Trim(TButton(Fbtn).Caption); + if Trim(fieldbyname('CDQtyS').AsString)<>'' then + Fieldbyname('CDQty').Value:=Trim(fieldbyname('CDQtyS').AsString); + Post; + end; + end; + end; +end; +procedure TfrmMJManageNewFDNew.AddSLNew(Fbtn:TSpeedButton); +begin + if PState<1 then Exit; + if Trim(FAPID)='' then Exit; + + //if MJMaoZ.Focused then + if FInt=4 then Exit; + if FInt=11 then + begin + if TSpeedButton(Fbtn).Tag=9 then Exit; + Edit1.Text:=Trim(Edit1.Text)+Trim(TSpeedButton(Fbtn).Caption); + Edit1.SelectAll; + end else + if FInt=12 then + begin + if TSpeedButton(Fbtn).Tag=9 then Exit; + Edit2.Text:=Trim(Edit2.Text)+Trim(TSpeedButton(Fbtn).Caption); + Edit2.SelectAll; + end;{ else + if CDS_MJCD.IsEmpty=False then + begin + FColumn:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if Trim(FColumn)<>'' then + begin + with CDS_MJCD do + begin + Edit; + FieldByName(FColumn).Value:=Trim(FieldByName(FColumn).AsString)+Trim(TButton(Fbtn).Caption); + if Trim(fieldbyname('CDQtyS').AsString)<>'' then + Fieldbyname('CDQty').Value:=Trim(fieldbyname('CDQtyS').AsString); + Post; + end; + end; + end; } +end; + +procedure TfrmMJManageNewFDNew.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + //if Tv2.OptionsSelection.CellSelect=True then + if CDS_MJCD.IsEmpty then Exit; + + if Trim(CDS_MJCD.fieldbyname('MCID').AsString)='' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + CDS_MJCD.Delete; + end; + +end; + +procedure TfrmMJManageNewFDNew.MJMaoZClick(Sender: TObject); +begin + FInt:=1; + FColumn:=''; + panel3.Visible:=True; +end; + +procedure TfrmMJManageNewFDNew.MJLenClick(Sender: TObject); +begin + FInt:=2; + FColumn:=''; + panel3.Visible:=True; +end; + +procedure TfrmMJManageNewFDNew.MJFKClick(Sender: TObject); +begin + FInt:=3; + FColumn:=''; + panel3.Visible:=True; +end; + +procedure TfrmMJManageNewFDNew.MJBanZuClick(Sender: TObject); +begin + FInt:=4; +end; + +procedure TfrmMJManageNewFDNew.MJSJKZClick(Sender: TObject); +begin + FInt:=4; +end; + +procedure TfrmMJManageNewFDNew.Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + //DataLink_WFBProducttion.ADOLink.Connected:=False; + FInt:=4; + // if PState=1 then Exit; + InitCDGridID(); + //InitCDGrid(); + {with ADOTmp do + begin + close; + sql.Clear; + sql.Add('select * from WFB_MJJY where MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + if ADOTmp.IsEmpty then + begin + MJMaoZ.Text:=''; + MJLen.Text:=''; + MJFK.Text:=''; + MJSJKZ.Text:=''; + end else + SSetWinData(ADOTmp,Panel5); } +end; + +procedure TfrmMJManageNewFDNew.Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if CDS_MJCD.IsEmpty=False then + begin + if Trim(CDS_MJCD.fieldbyname('MJID').AsString)='' then + begin + Application.MessageBox('δ,!','ʾ',0); + Exit; + end; + end; + + FInt:=4; + PState:=0; + InitCDGrid(); + with ADOTmp do + begin + close; + sql.Clear; + sql.Add('select * from WFB_MJJY where MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + MJFK.Text:=Trim(ADOTmp.fieldbyname('MJFK').AsString); + //MJSJKZ.Text:=Trim(ADOTmp.fieldbyname('MJSJKZ').AsString); + MJLen.Text:=Trim(ADOTmp.fieldbyname('MJLen').AsString); + MJQty1.Text:=Trim(ADOTmp.fieldbyname('MJQty1').AsString); + MJQty2.Text:=Trim(ADOTmp.fieldbyname('MJQty2').AsString); + MJMaoZ.Text:=Trim(ADOTmp.fieldbyname('MJMaoZ').AsString); + Label15.Caption:=Trim(CDS_MJID.fieldbyname('MJID').AsString); + if Trim(ADOTmp.fieldbyname('MJType').AsString)='Ʒ' then + begin + Edit3.Text:=''; + Edit4.Text:=''; + Edit5.Text:=''; + end else + if Trim(ADOTmp.fieldbyname('MJType').AsString)='Ʒ' then + begin + Edit4.Text:=''; + Edit3.Text:=''; + Edit5.Text:=''; + end else + if Trim(ADOTmp.fieldbyname('MJType').AsString)='' then + begin + Edit4.Text:=''; + Edit3.Text:=''; + Edit5.Text:=''; + end; + BtnStatus(False); + Label16.Caption:=''; +end; + + +procedure TfrmMJManageNewFDNew.FormClick(Sender: TObject); +begin + FInt:=4; +end; + +procedure TfrmMJManageNewFDNew.Button12Click(Sender: TObject); +var + fsj:string; +begin + if PState<1 then Exit; + if Trim(FAPID)='' then Exit; + if FInt=4 then Exit; + begin + FColumn:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if Trim(FColumn)<>'' then + begin + if Trim(CDS_MJCD.FieldByName(FColumn).AsString)<>'' then + begin + with CDS_MJCD do + begin + Edit; + if Length(CDS_MJCD.FieldByName(FColumn).AsString)=1 then + begin + FieldByName(FColumn).Value:=null ; + FieldByName('CDQty').Value:=0; + end + else + begin + FieldByName(FColumn).Value:=Copy(Trim(FieldByName(FColumn).AsString),1,Length(Trim(FieldByName(FColumn).AsString))-1); + FieldByName('CDQty').Value:=FieldByName(FColumn).Value; + end; + Post; + end; + end; + + + end; + end; +end; + +function TfrmMJManageNewFDNew.SaveData():Boolean; +var + maxno,FMJID,BZID:String; + FMJLen:Double; + FOrder:Integer; +begin + if PState=1 then + FMJID:='' + else if PState=2 then + FMJID:=Trim(CDS_MJID.fieldbyname('MJID').AsString) + else if PState<1 then Exit; + try + ADOCmd.Connection.BeginTrans; + /// + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from WFB_MJJY where MJId='''+Trim(FMJID)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMJID)='' then + begin + Append; + if GetLSNo(ADOTmp,maxno,Trim(SCXFlag),'WFB_MJJY',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ˮ쳣','ʾ',0); + exit; + end; + end + else begin + maxno:=Trim(FMJID); + Edit; + end; + FieldByName('MainId').value:=Trim(FMainId); + FieldByName('SubId').value:=Trim(FSubId); + FieldByName('APId').value:=Trim(FAPID); + FieldByName('MJID').Value:=Trim(maxno); + FieldByName('MJStr2').Value:='δ'; + FieldByName('MJBanZu').Value:=Trim(FBanZu); + if Trim(MJLen.Text)<>'' then + begin + FieldByName('MJLen').Value:=StrToFloat(MJLen.Text); + end; + if Trim(MJQty1.Text)<>'' then + begin + FieldByName('MJQty1').Value:=StrToFloat(MJQty1.Text); + end; + if Trim(MJQty2.Text)<>'' then + begin + FieldByName('MJQty2').Value:=StrToFloat(MJQty2.Text); + end; + if Trim(MJFK.Text)<>'' then + begin + FieldByName('MJFK').Value:=StrToFloat(MJFK.Text); + end; + if Trim(MJMaoZ.Text)<>'' then + begin + FieldByName('MJMaoZ').Value:=StrToFloat(MJMaoZ.Text); + end; + if Trim(MJSJKZ.Text)<>'' then + begin + FieldByName('MJSJKZ').Value:=StrToFloat(MJSJKZ.Text); + end; + if Trim(Edit3.Text)<>'' then + begin + FieldByName('MJType').Value:='Ʒ'; + end; + if Trim(Edit4.Text)<>'' then + begin + FieldByName('MJType').Value:='Ʒ'; + end; + if Trim(Edit5.Text)<>'' then + begin + FieldByName('MJType').Value:=''; + end; + FieldByName('MJTypeOther').Value:=Trim(Label9.Caption); + FieldByName('MJStr1').Value:=Trim(Label13.Caption); + {if Trim(MJSJKZ.Text)<>'' then + begin + FieldByName('MJSJKZ').Value:=StrToFloat(MJSJKZ.Text); + end; } + if Trim(FMJID)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTmp); + end; + if Trim(SCXFlag)<>'' then + begin + FieldByName('JTType').Value:=Trim(SCXFlag); + end; + Post; + + end; + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('UPdate WFB_MJJY Set MJXH=(select max(MJXH)+1 from WFB_MJJY A where A.APID=WFB_MJJY.APID'); + if Trim(Edit3.Text)<>'' then + begin + sql.Add(' and A.MJType=''Ʒ'' )'); + end; + if Trim(Edit4.Text)<>'' then + begin + sql.Add(' and A.MJType=''Ʒ'' )'); + end; + if Trim(Edit5.Text)<>'' then + begin + sql.Add(' and A.MJType='''' )'); + end; + sql.Add(' where MJID='''+Trim(maxno)+''''); + ExecSQL; + end; + FMJID:=Trim(maxno); + ///ĸõ + with CDS_MJCD do + begin + First; + while not Eof do + begin + if Trim(CDS_MJCD.fieldbyname('MCID').AsString)='' then + begin + if GetLSNo(ADOTmp,maxno,'MC','WFB_MJJY_CD',5,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_MJCD.fieldbyname('MCID').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_MJJY_CD '); + sql.Add(' where MCID='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_MJCD.fieldbyname('MCID').AsString)='' then + Append + else + Edit; + FieldByName('MJId').Value:=Trim(FMJID); + FieldByName('MCID').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,Tv2,CDS_MJCD,'WFB_MJJY_CD',0); + Post; + end; + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('MCID').Value:=Trim(maxno); + Next; + end; + end; + with CDS_MJID do + begin + Append; + FieldByName('MJID').Value:=Trim(FMJID); + Post; + end; + //SavedataCK(); + ADOCmd.Connection.CommitTrans; + Result:=True; + PState:=0; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TfrmMJManageNewFDNew.BTAddClick(Sender: TObject); +begin + if Trim(Label2.Caption)='' then Exit; + PState:=1; + InitCDGridID(); + InitCDGrid(); + BtnStatus(True); + Label16.Caption:=''; +end; + +procedure TfrmMJManageNewFDNew.BTEditClick(Sender: TObject); +begin + if CDS_MJID.IsEmpty then Exit; + PState:=2; + Label16.Caption:='޸'; +end; + +procedure TfrmMJManageNewFDNew.BTPrintClick(Sender: TObject); +var + fPrintFile:String; + mvalue:Double; +begin + if Trim(FAPID)='' then Exit; + if FInt=4 then + begin + if CDS_MJID.IsEmpty=False then + begin + Application.MessageBox('Ѵ룿볢ش','ʾ',0); + Exit; + end; + end; + if Trim(MJLen.Text)='' then + begin + Application.MessageBox('ȲΪ!','ʾ',0); + Exit; + end; + if TryStrToFloat(MJLen.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + {if Trim(MJQty1.Text)='' then + begin + Application.MessageBox('ԭ벻Ϊ!','ʾ',0); + Exit; + end; } + if Trim(MJQty1.Text)<>'' then + begin + if TryStrToFloat(MJQty1.Text,mvalue)=False then + begin + Application.MessageBox('ԭ¼!','ʾ',0); + Exit; + end; + end; + + if Trim(MJFK.Text)<>'' then + begin + if TryStrToFloat(MJFK.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end; + if Trim(MJMaoZ.Text)<>'' then + begin + if TryStrToFloat(MJMaoZ.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end; + if Trim(MJSJKZ.Text)<>'' then + begin + if TryStrToFloat(MJSJKZ.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end; + if Trim(MJQty2.Text)<>'' then + begin + if TryStrToFloat(MJQty2.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end; + {if Trim(MJSJKZ.Text)<>'' then + begin + if TryStrToFloat(MJSJKZ.Text,mvalue)=False then + begin + Application.MessageBox('¼!','ʾ',0); + Exit; + end; + end; } + if PState=1 then + begin + if Application.MessageBox('ǷҪӡ룿ӡݽ޸ģ','ʾ',32+4)<>IDYES then Exit; + end; + if SaveData() then + begin + //BtnStatus(False); + MJFK.Text:=''; + //MJSJKZ.Text:=''; + MJLen.Text:=''; + MJMaoZ.Text:=''; + MJQty1.Text:=''; + MJQty2.Text:=''; + MJSJKZ.Text:=''; + Label15.Caption:=''; + Edit3.Text:=''; + + end; + if Trim(Edit6.Text)='' then + begin + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add('select A.MJID,A.MJXH,QtyUnit=A.MJTypeOther,B.orderNo,GangNo=D.AOrddefStr1,PRTColorEng=E.Note '); + sql.Add(',case when MJQty2>0 then Cast(MJLen as varchar(20))+''+''+Cast(MJQty2 as varchar(20)) else Cast(MJLen as varchar(20)) end as Qty '); + sql.Add(',MPRTCodeNameEng=(select Top 1 F.CYEName from CP_YDang F where F.CYNo=B.OrdDefStr1),C.SLbName'); + sql.Add(',B.MPRTCF,C.SOrddefstr4,C.*,A.* '); + sql.Add(' from WFB_MJJY A') ; + sql.Add(' inner join JYOrder_Main B On A.Mainid=B.Mainid'); + sql.Add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); + sql.Add(' left join KH_Zdy E on C.PRTColor=E.ZdyName and E.Type=''OrdColor'' '); + sql.Add(' inner join JYOrder_Sub_AnPai D on A.APId=D.APId '); + SQL.Add(' where A.MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + if Trim(ADOQueryPrint.fieldbyname('SLbName').AsString)<>'' then + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\'+Trim(ADOQueryPrint.fieldbyname('SLbName').AsString)+'.rmf' + else + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ͨӢıǩ.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + //RM2.ShowReport; + RM2.PrintReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ǩ.rmf'),'ʾ',0); + end; + end; + + Label16.Caption:=''; + BTAdd.Click; +end; +procedure TfrmMJManageNewFDNew.SavedataCK(); +var + CRID:Integer; + MaxCkNo,MaxCkSubNo:String; +begin + //if Trim(Cds_Main.fieldbyname('SubType').AsString)='' then + //////////////////////////////////////////////////////////////浽Ʒֿ//////////////////////////////////////////////// + with ADOCmd do + begin + Close; + sql.Clear; + SQL.add('Update CK_BanCP_CRID Set CRID=CRID+1'); + sql.Add('select * from CK_BanCP_CRID'); + Open; + end; + CRID:=ADOCmd.fieldbyname('CRID').Value; + if GetLSNo(ADOCmd,MaxCkNo,'JR','CK_BanCP_CR',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡƷֿʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(FSubId); + FieldByName('APID').Value:=Trim(FAPID); + FieldByName('MJID').Value:=Trim(CDS_MJID.fieldbyname('MJId').AsString); + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('CRTime').Value:=SGetServerDateTime(ADOTmp); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + //FieldByName('JTType').Value:=Trim(XJFlag); + FieldByName('CRID').Value:=CRID; + if Trim(MJMaoZ.Text)<>'' then + begin + FieldByName('KGQty').Value:=StrToFloat(MJMaoZ.Text); + end; + if Trim(MJLen.Text)<>'' then + begin + FieldByName('Qty').Value:=StrToFloat(MJLen.Text); + end; + FieldByName('QtyUnit').Value:=Trim(Label9.Caption); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('FillTime').Value:=SGetServerDateTime(ADOTmp); + if Trim(Edit3.Text)<>'' then + begin + FieldByName('CPType').Value:='Ʒ'; + end; + if Trim(Edit4.Text)<>'' then + begin + FieldByName('CPType').Value:='Ʒ'; + end; + Post; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_KC where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('CRID').Value:=CRID; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('MJID').Value:=Trim(CDS_MJID.fieldbyname('MJID').AsString); + if Trim(MJMaoZ.Text)<>'' then + begin + FieldByName('KCKGQty').Value:=StrToFloat(MJMaoZ.Text); + end; + if Trim(MJLen.Text)<>'' then + begin + FieldByName('KCQty').Value:=StrToFloat(MJLen.Text); + end; + FieldByName('KCQtyUnit').Value:=Trim(Label9.Caption); + Post; + end; +end; +procedure TfrmMJManageNewFDNew.BtnStatus(BSInt:Boolean); +begin + // Tv2.OptionsSelection.CellSelect:=BSInt; +end; +procedure TfrmMJManageNewFDNew.Tv2CDQtyPropertiesEditValueChanged(Sender: TObject); +var + mvalue:string; +begin + try + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)<>'' then + begin + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('CDQty').Value:=mvalue; + CDS_MJCD.Post; + end else + begin + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('CDQty').Value:=0; + CDS_MJCD.Post; + end; + CDS_MJCD.Edit; + CDS_MJCD.FieldByName('CDQtyS').Value:=mvalue; + except + Application.MessageBox('Ƿ֣','ʾ',0); + end; +end; + +procedure TfrmMJManageNewFDNew.SpeedButton1Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TSpeedButton(Sender).Hint); + if Trim(fsj)='' then Exit; + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=fsj+Trim(TSpeedButton(Sender).Caption); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; + +procedure TfrmMJManageNewFDNew.SpeedButton12Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + if Trim(fsj)='' then Exit; + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=Copy(fsj,1,Length(fsj)-1); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; + +procedure TfrmMJManageNewFDNew.SpeedButton13Click(Sender: TObject); +var + i:Integer; +begin + if Trim(Label2.Caption)='' then Exit; + if Label2.Visible=False then Exit; + {with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select * from Order_JYResult where APID='''+Trim(FAPID)+''''); + Open; + end; + if ADOTmp.IsEmpty then + begin + Application.MessageBox('ŷδ¼,ܼ!','ʾ',0); + Exit; + end; } + if Trim(CDS_MJCD.fieldbyname('MJID').AsString)<>'' then + begin + BTAdd.Click; + end; + if Trim(Label15.Caption)<>'' then + begin + MJFK.Text:=''; + //MJSJKZ.Text:=''; + MJLen.Text:=''; + MJMaoZ.Text:=''; + MJQty1.Text:=''; + MJSJKZ.Text:=''; + Label15.Caption:=''; + + end; + if Trim(FAPID)='' then Exit; + FCDName:=Trim(TSpeedButton(Sender).Hint); + MovePanel1.Visible:=True; + Label21.Caption:=Trim(FCDName); + FInt:=11; + Edit1.SetFocus; + //CDQty.SetFocus; + Panel3.Visible:=True; + with Panel3 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim(Edit1.Name); + end; + end; + end; + +end; + +procedure TfrmMJManageNewFDNew.cxGridDBColumn2PropertiesChange(Sender: TObject); +var + fsj:String; +begin + + fsj:=Trim(Order_MJ.fieldbyname('SubId').AsString); + Order_MJ.DisableControls; + with Order_MJ do + begin + First; + while not Eof do + begin + if Trim(Order_MJ.fieldbyname('SubId').AsString)<>fsj then + begin + Edit; + FieldByName('SSel').Value:=False; + end; + Next; + end; + end; + Order_MJ.EnableControls; + Order_MJ.Locate('SubId',fsj,[]); +end; + +procedure TfrmMJManageNewFDNew.Button1Click(Sender: TObject); +var + mvalue:Double; +begin + { if Trim(Edit1.Text)='' then + begin + Application.MessageBox('λòΪգ','ʾ',0); + exit; + end; } + if Trim(Edit1.Text)<>'' then + begin + if Trim(Edit2.Text)<>'' then + begin + if StrToFloat(Edit2.Text)'' then + begin + if TryStrToFloat(CDQty.Text,mvalue)=False then + begin + Application.MessageBox('Ƿ!','ʾ',0); + Exit; + end; + end; + with CDS_MJCD do + begin + Append; + FieldByName('cdname').Value:=Trim(FCDName); + FieldByName('CDbeg').Value:=Trim(Edit1.Text); + FieldByName('CDEnd').Value:=Trim(Edit2.Text); + if Trim(CDQty.Text)<>'' then + begin + FieldByName('CDQty').Value:=StrToFloat(CDQty.Text); + end else + begin + FieldByName('CDQty').Value:=0; + end; + {if Trim(Edit2.Text)<>'' then + begin + FieldByName('CDQty').Value:=StrToFloat(Edit2.Text)-StrToFloat(Edit1.Text); + end else + begin + FieldByName('CDQty').Value:=0; + end; } + + Post; + end; + Edit1.Text:=''; + Edit2.Text:=''; + CDQty.Text:=''; + MovePanel1.Visible:=False; + Panel3.Visible:=False; +end; + +procedure TfrmMJManageNewFDNew.Button4Click(Sender: TObject); +begin + Edit1.Text:=''; + Edit2.Text:=''; + CDQty.Text:=''; + MovePanel1.Visible:=False; + Panel3.Visible:=False; +end; + +procedure TfrmMJManageNewFDNew.ToolButton1Click(Sender: TObject); +begin + //InitGrid(); + InitJP(); +end; + +procedure TfrmMJManageNewFDNew.Button5Click(Sender: TObject); +var + fPrintFile:String; +begin + if CDS_MJID.IsEmpty then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set PrtAgnFlag=1,PrtAgnDate=getdate(),PrtAgnPerson='''+Trim(DName)+''''); + sql.Add(' where MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add('select A.MJID,A.MJXH,QtyUnit=A.MJTypeOther,B.orderNo,GangNo=D.AOrddefStr1,PRTColorEng=E.Note,'); + sql.Add(' MPRTCodeNameEng=(select Top 1 F.CYEName from CP_YDang F where F.CYNo=B.OrdDefStr1),C.SLbName'); + sql.Add(',case when MJQty2>0 then Cast(MJLen as varchar(20))+''+''+Cast(MJQty2 as varchar(20)) else Cast(MJLen as varchar(20)) end as Qty '); + sql.Add(',B.MPRTCF,C.SOrddefstr4,C.*,A.* '); + sql.Add(' from WFB_MJJY A') ; + sql.Add(' inner join JYOrder_Main B On A.Mainid=B.Mainid'); + sql.Add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); + sql.Add(' left join KH_Zdy E on C.PRTColor=E.ZdyName and E.Type=''OrdColor'' '); + sql.Add(' inner join JYOrder_Sub_AnPai D on A.APId=D.APId '); + SQL.Add(' where A.MJID='''+Trim(CDS_MJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + if Trim(ADOQueryPrint.fieldbyname('SLbName').AsString)<>'' then + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\'+Trim(ADOQueryPrint.fieldbyname('SLbName').AsString)+'.rmf' + else + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ͨӢıǩ.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + //RM2.ShowReport; + RM2.PrintReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ǩ.rmf'),'ʾ',0); + end; + +end; + +procedure TfrmMJManageNewFDNew.SpeedButton49Click(Sender: TObject); +begin + Panel3.Visible:=False; +end; + +procedure TfrmMJManageNewFDNew.APIDKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + with ADOTmp do + begin + Close; + sql.Clear; + sql.Add('select A.*, '); + SQL.Add('OrderNoM=(select OrderNo from JYOrder_Main B where B.Mainid=A.MainId),'); + SQL.Add('PRTColor=(select PRTColor from JYOrder_Sub B where B.Subid=A.Subid) '); + sql.Add('from JYOrder_Sub_AnPai A'); + sql.Add('where APID='''+Trim(APID.Text)+''''); + Open; + end; + if ADOTmp.IsEmpty=False then + begin + Label2.Visible:=True; + Label2.Caption:=Trim(ADOTmp.fieldbyname('AOrddefStr1').AsString); + Label24.Visible:=True; + Label24.Caption:=Trim(ADOTmp.fieldbyname('OrderNoM').AsString); + Label25.Visible:=True; + Label25.Caption:=Trim(ADOTmp.fieldbyname('PRTColor').AsString); + FAPID:=Trim(APID.Text); + FMainId:=Trim(ADOTmp.fieldbyname('MainId').AsString); + FSubId:=Trim(ADOTmp.fieldbyname('SubId').AsString); + Label9.Caption:=Trim(ADOTmp.fieldbyname('AOrddefstr3').AsString); + Label13.Caption:=Trim(ADOTmp.fieldbyname('AOrddefstr2').AsString); + Label19.Caption:=Trim(Label9.Caption); + Label20.Caption:=Trim(Label9.Caption); + Label7.Caption:=Trim(Label9.Caption); + end else + begin + Application.MessageBox('!','ʾ',0); + Label2.Visible:=False; + Label2.Caption:=''; + APID.Text:=''; + FAPID:=''; + FMainId:=''; + FSubId:=''; + Exit; + end; + {if Trim(SCXFlag)<>Trim(ADOTmp.fieldbyname('AOrdDefNote29').AsString) then + begin + APID.Text:=''; + if Application.MessageBox('̨뵱ǰ̨һ,'+#13+'Ƿ飿','ʾ',32+4)<>IDYES then + begin + Label2.Visible:=False; + Label2.Caption:=''; + FAPID:=''; + FMainId:=''; + FSubId:=''; + Exit; + end; + + end; } + APID.Text:=''; + BTAdd.Click; + end; +end; + +procedure TfrmMJManageNewFDNew.Edit1Click(Sender: TObject); +var + i:Integer; +begin + Panel3.Visible:=True; + with Panel3 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim(TEdit(Sender).Name); + end; + end; + end; +end; + +procedure TfrmMJManageNewFDNew.Edit2Change(Sender: TObject); +var + mvalue:Double; +begin + if Trim(Edit1.Text)<>'' then + begin + if TryStrToFloat(Edit1.Text,mvalue)=False then + begin + Application.MessageBox('Ƿ!','ʾ',0); + Exit; + end; + end else + begin + Exit; + end; + if Trim(Edit2.Text)<>'' then + begin + if TryStrToFloat(Edit2.Text,mvalue)=False then + begin + Application.MessageBox('Ƿ!','ʾ',0); + Exit; + end; + end else + begin + Exit; + end; + CDQty.Text:=FloatToStr(StrToFloat(Edit2.Text)-StrToFloat(Edit1.Text)); +end; + +procedure TfrmMJManageNewFDNew.Edit3Click(Sender: TObject); +begin + if Trim(Edit3.Text)='' then + begin + Edit3.Text:=''; + Edit4.Text:=''; + Edit5.Text:=''; + end else + begin + Edit3.Text:=''; + Edit4.Text:=''; + Edit5.Text:=''; + end; +end; + +procedure TfrmMJManageNewFDNew.Edit4Click(Sender: TObject); +begin + if Trim(Edit4.Text)='' then + begin + Edit4.Text:=''; + Edit3.Text:=''; + Edit5.Text:=''; + end else + begin + Edit4.Text:=''; + Edit3.Text:=''; + Edit5.Text:=''; + end; +end; + +procedure TfrmMJManageNewFDNew.Edit5Click(Sender: TObject); +begin + if Trim(Edit5.Text)='' then + begin + Edit5.Text:=''; + Edit3.Text:=''; + Edit4.Text:=''; + end else + begin + Edit5.Text:=''; + Edit3.Text:=''; + Edit4.Text:=''; + end; +end; + +procedure TfrmMJManageNewFDNew.Edit6Click(Sender: TObject); +begin + if Trim(Edit6.Text)='' then + begin + Edit6.Text:=''; + end else + begin + Edit6.Text:=''; + end; +end; + +end. diff --git a/艾登贸易管理/U_ModulePromptList.dfm b/艾登贸易管理/U_ModulePromptList.dfm new file mode 100644 index 0000000..cbdab77 --- /dev/null +++ b/艾登贸易管理/U_ModulePromptList.dfm @@ -0,0 +1,179 @@ +object frmModulePromptList: TfrmModulePromptList + Left = 126 + Top = 142 + Width = 1065 + Height = 547 + Caption = #25105#30340#31649#23478 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1049 + AutoSize = True + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1049 + Height = 41 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Panel2: TPanel + Left = 664 + Top = 2 + Width = 383 + Height = 37 + Align = alRight + BevelOuter = bvNone + Caption = #25552#31034#65306#21452#20987#25171#24320#22788#29702#20449#24687#30028#38754 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 73 + Width = 1049 + Height = 436 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + 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> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_TradeManage.FontBlue + object v1Column5: TcxGridDBColumn + Caption = #24453#22788#29702#20107#39033 + DataBinding.FieldName = 'ModuleName' + HeaderAlignmentHorz = taCenter + Width = 235 + end + object v1Column1: TcxGridDBColumn + Caption = #22788#29702#20154 + DataBinding.FieldName = 'DName' + HeaderAlignmentHorz = taCenter + Width = 107 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 1128 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 936 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1000 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1040 + Top = 8 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 1168 + Top = 8 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 815 + Top = 7 + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 506 + Top = 195 + end +end diff --git a/艾登贸易管理/U_ModulePromptList.pas b/艾登贸易管理/U_ModulePromptList.pas new file mode 100644 index 0000000..cd44210 --- /dev/null +++ b/艾登贸易管理/U_ModulePromptList.pas @@ -0,0 +1,223 @@ +unit U_ModulePromptList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, + RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, + cxTextEdit, cxPC; + +type + TfrmModulePromptList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Order_Main: TClientDataSet; + cxGridPopupMenu2: TcxGridPopupMenu; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column5: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1Column1: TcxGridDBColumn; + Panel2: TPanel; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure cxPageControl1Change(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + fDConString_link1:string; + procedure InitGrid(); + procedure InitForm(); + procedure InitDllEvt(FromFile:String;FormID:Integer;Para:String;FormType:Integer; Title: String; + Def1: String; Def2: String; Def3: String; Def4: String; Def5: String; + Def6: String; Def7: String; Def8: String; Def9: String; Def10: string); + { Private declarations } + public + { Public declarations } + userID,username:string; + end; + +var + frmModulePromptList: TfrmModulePromptList; + +implementation +uses + U_DataLink,U_Fun; +type + TMyF = function( + App: TApplication; //Ӧó (Delphi) + FormH: HWND; //ڵĸھ (PB) + FormID: Integer; //ҪdllйܴId; ֻһܴڣFormIDĬΪ0 + Language: Integer; //0=Delphi; 1=PB + WinStyle: Integer; //0=Ӵ; 1ͨ (PBжΪͨ) + UID: PChar; //ûId + UName: PChar; //û + Para: PChar; + Title: PChar; + Defstr1: PChar; + Defstr2: PChar; + Defstr3: PChar; + Defstr4: PChar; + Defstr5: PChar; + Defstr6: PChar; + Defstr7: PChar; + Defstr8: PChar; + Defstr9: PChar; + Defstr10: PChar; + Datalink: PChar + ): HWND; stdcall; +var + TP: FARPROC; + Tf: TMyF; +{$R *.dfm} + +procedure TfrmModulePromptList.FormDestroy(Sender: TObject); +begin + frmModulePromptList:=nil; +end; + +procedure TfrmModulePromptList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmModulePromptList.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('б',Tv1,'ҵĹܼ'); +end; + +procedure TfrmModulePromptList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + SQL.Add(' exec P_Chk_Tishi :DName,:DCode'); + Parameters.ParamByName('DName').Value:=Trim(DName); + Parameters.ParamByName('DCode').Value:=Trim(DCode); + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + +end; + +procedure TfrmModulePromptList.InitForm(); +begin + fDConString_link1:=Trim(DConString); + ReadCxGrid('б',Tv1,'ҵĹܼ'); + InitGrid(); +end; + +procedure TfrmModulePromptList.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmModulePromptList.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmModulePromptList.cxPageControl1Change(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmModulePromptList.InitDllEvt(FromFile:String;FormID:Integer;Para:String;FormType:Integer; Title: String; + Def1: String; Def2: String; Def3: String; Def4: String; Def5: String; + Def6: String; Def7: String; Def8: String; Def9: String; Def10: string); +var + Th: HMODULE; +begin + Th := LoadLibrary(PChar(FromFile)); + if Th > 0 then + begin + TP := GetProcAddress(Th, 'GetDllForm'); + if TP <> nil then + begin + Tf := TMyF(Tp); + Tf(Application, 0, FormID, 0, FormType, PChar(DCode), PChar(DName), PChar(Para), PChar(Title), + PChar(Def1), PChar(Def2),PChar(Def3),PChar(Def4),PChar(Def5), + PChar(Def6),PChar(Def7),PChar(Def8),PChar(Def9),PChar(Def10), + pchar(fDConString_link1)); + end; + end + else + begin + Application.MessageBox(PChar('򲻿ļ' + FromFile + ''), '', MB_ICONERROR); + end; +end; + + +procedure TfrmModulePromptList.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from SY_ModuleSub where ModuleId='''+Trim(Order_Main.fieldbyname('ModuleId').AsString)+''''); + sql.Add(' and ModuleSubId='''+Trim(Order_Main.fieldbyname('ModuleSubId').AsString)+''''); + Open; + end; + IF (trim(Order_Main.FieldByName('ModuleId').AsString)='05' ) and (trim(Order_Main.FieldByName('ModuleSubId').AsString)='04' ) then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrder_Sub_AnPai SET Aordflag10=1 where Aordflag10=0 '); + execsql; + end; + end; + IF not ADOQueryTemp.IsEmpty then + begin + InitDllEvt(Trim(ADOQueryTemp.FieldByName('formFile').AsString), + ADOQueryTemp.FieldByName('FormID').AsInteger, + Trim(ADOQueryTemp.FieldByName('FormPara').AsString), + ADOQueryTemp.FieldByName('FormType').AsInteger, + Trim(ADOQueryTemp.FieldByName('Formname').AsString), + + Trim(ADOQueryTemp.FieldByName('FormPara1').AsString), + Trim(ADOQueryTemp.FieldByName('FormPara2').AsString), + Trim(ADOQueryTemp.FieldByName('FormPara3').AsString), + Trim(ADOQueryTemp.FieldByName('FormPara4').AsString), + Trim(ADOQueryTemp.FieldByName('FormPara5').AsString), + + Trim(ADOQueryTemp.FieldByName('FormPara6').AsString), + Trim(ADOQueryTemp.FieldByName('FormPara7').AsString), + Trim(ADOQueryTemp.FieldByName('FormPara8').AsString), + Trim(ADOQueryTemp.FieldByName('FormPara9').AsString), + Trim(ADOQueryTemp.FieldByName('FormPara10').AsString), + ); + end; +end; + +end. diff --git a/艾登贸易管理/U_OrderAttachment.dfm b/艾登贸易管理/U_OrderAttachment.dfm new file mode 100644 index 0000000..78503bc --- /dev/null +++ b/艾登贸易管理/U_OrderAttachment.dfm @@ -0,0 +1,666 @@ +object frmOrderAttachment: TfrmOrderAttachment + Left = 123 + Top = 69 + Width = 1019 + Height = 650 + Caption = #29983#20135#35745#21010#21333 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Panel1: TPanel + Left = 0 + Top = 29 + Width = 1011 + Height = 300 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 0 + object Label1: TLabel + Left = 44 + Top = 11 + Width = 69 + Height = 16 + Caption = #23458' '#25143#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 44 + Top = 39 + Width = 68 + Height = 16 + Caption = #29983#20135#32447#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 372 + Top = 11 + Width = 69 + Height = 16 + Caption = #32534' '#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 372 + Top = 39 + Width = 68 + Height = 16 + Caption = #35746#21333#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 44 + Top = 70 + Width = 85 + Height = 16 + Caption = #21253#35013#35201#27714#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 60 + Top = 95 + Width = 36 + Height = 12 + Caption = #21253#35013#65306 + end + object Label12: TLabel + Left = 60 + Top = 119 + Width = 36 + Height = 12 + Caption = #21787#22836#65306 + end + object Label13: TLabel + Left = 44 + Top = 141 + Width = 85 + Height = 16 + Caption = #36136#37327#35201#27714#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label14: TLabel + Left = 60 + Top = 173 + Width = 36 + Height = 12 + Caption = #24067#38754#65306 + end + object Label15: TLabel + Left = 60 + Top = 195 + Width = 36 + Height = 12 + Caption = #25163#24863#65306 + end + object Label16: TLabel + Left = 60 + Top = 217 + Width = 36 + Height = 12 + Caption = #21560#27700#65306 + end + object Label17: TLabel + Left = 188 + Top = 217 + Width = 48 + Height = 12 + Caption = #33394#29282#24230#65306 + end + object Label18: TLabel + Left = 300 + Top = 217 + Width = 36 + Height = 12 + Caption = #20998#20999#65306 + end + object Label19: TLabel + Left = 44 + Top = 244 + Width = 85 + Height = 16 + Caption = #20132#36135#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label20: TLabel + Left = 583 + Top = 175 + Width = 85 + Height = 16 + Caption = #31614#21457#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label21: TLabel + Left = 583 + Top = 239 + Width = 68 + Height = 16 + Caption = #31614#21457#20154#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 583 + Top = 8 + Width = 51 + Height = 16 + Caption = #22791#27880#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 735 + Top = 216 + Width = 111 + Height = 35 + Caption = #22791#27880#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 912 + Top = 47 + Width = 41 + Height = 12 + Hint = 'clRed' + AutoSize = False + Color = clRed + ParentColor = False + OnClick = Label8Click + end + object Label9: TLabel + Left = 912 + Top = 63 + Width = 41 + Height = 12 + Hint = 'clOlive' + AutoSize = False + Color = clOlive + ParentColor = False + OnClick = Label8Click + end + object Label10: TLabel + Left = 912 + Top = 79 + Width = 41 + Height = 12 + Hint = 'clBlue' + AutoSize = False + Color = clBlue + ParentColor = False + OnClick = Label8Click + end + object Label22: TLabel + Left = 912 + Top = 95 + Width = 41 + Height = 12 + Hint = 'clFuchsia' + AutoSize = False + Color = clFuchsia + ParentColor = False + OnClick = Label8Click + end + object Label24: TLabel + Left = 912 + Top = 110 + Width = 41 + Height = 12 + Hint = 'clBlack' + AutoSize = False + Color = clBlack + ParentColor = False + OnClick = Label8Click + end + object Customnoname: TEdit + Left = 106 + Top = 8 + Width = 99 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 0 + end + object SCXName: TEdit + Left = 106 + Top = 36 + Width = 99 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 1 + end + object OrderCode: TEdit + Left = 438 + Top = 8 + Width = 119 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 2 + end + object OrderNo: TEdit + Left = 438 + Top = 36 + Width = 119 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 3 + end + object ADefStr3: TEdit + Tag = 9 + Left = 94 + Top = 92 + Width = 247 + Height = 20 + TabOrder = 4 + OnDblClick = ADefStr3DblClick + end + object ADefStr4: TEdit + Tag = 9 + Left = 94 + Top = 116 + Width = 463 + Height = 20 + TabOrder = 5 + OnDblClick = ADefStr4DblClick + end + object ADefStr5: TEdit + Tag = 9 + Left = 94 + Top = 170 + Width = 247 + Height = 20 + TabOrder = 6 + OnDblClick = ADefStr5DblClick + end + object ADefStr6: TEdit + Tag = 9 + Left = 94 + Top = 192 + Width = 79 + Height = 20 + TabOrder = 7 + OnDblClick = ADefStr6DblClick + end + object ADefStr7: TEdit + Tag = 9 + Left = 94 + Top = 214 + Width = 79 + Height = 20 + TabOrder = 8 + OnDblClick = ADefStr7DblClick + end + object ADefStr8: TEdit + Tag = 9 + Left = 238 + Top = 214 + Width = 47 + Height = 20 + TabOrder = 9 + OnDblClick = ADefStr8DblClick + end + object ADefStr9: TEdit + Tag = 9 + Left = 334 + Top = 214 + Width = 223 + Height = 20 + TabOrder = 10 + OnDblClick = ADefStr9DblClick + end + object QFDate: TDateTimePicker + Tag = 9 + Left = 583 + Top = 197 + Width = 126 + Height = 24 + Date = 41143.565024953710000000 + Time = 41143.565024953710000000 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + end + object QFPerson: TEdit + Tag = 9 + Left = 585 + Top = 258 + Width = 127 + Height = 24 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 12 + end + object BegRKDate: TDateTimePicker + Left = 94 + Top = 264 + Width = 143 + Height = 24 + Date = 41143.565024953710000000 + Time = 41143.565024953710000000 + ShowCheckbox = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 13 + end + object ADefStr10: TRichEdit + Tag = 9 + Left = 584 + Top = 29 + Width = 321 + Height = 121 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 14 + end + end + object cxGrid5: TcxGrid + Left = 0 + Top = 329 + Width = 1011 + Height = 284 + Align = alClient + TabOrder = 1 + object TvSub: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = TvSubColumn1 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object vSubColumn3: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'XHNO' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 31 + end + object vSubColumn4: TcxGridDBColumn + Caption = #20135#21697#20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.FonePurple + Width = 92 + end + object vSubColumn6: TcxGridDBColumn + Caption = #21407#26009#37197#27604 + DataBinding.FieldName = 'YLPBStr' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.FonePurple + Width = 72 + end + object vSubColumn7: TcxGridDBColumn + Caption = #32593#23380#30446#25968 + DataBinding.FieldName = 'WKMS' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.FonePurple + Width = 70 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 64 + end + object vSubColumn5: TcxGridDBColumn + Caption = #33457#32441 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 58 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #24133#23485'(cm)' + DataBinding.FieldName = 'FSWFBFK' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 69 + end + object vSubColumn1: TcxGridDBColumn + Caption = #20811#37325'g/'#13217 + DataBinding.FieldName = 'SWFBKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 73 + end + object TvSubColumn1: TcxGridDBColumn + Caption = #35746#36141#25968#37327'(KG)' + DataBinding.FieldName = 'OrdQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 92 + end + object vSubColumn8: TcxGridDBColumn + Caption = #21367#22343#37325#19979#38480 + DataBinding.FieldName = 'KZSmal' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.FonePurple + Width = 73 + end + object vSubColumn9: TcxGridDBColumn + Caption = #21367#22343#37325#19978#38480 + DataBinding.FieldName = 'KZBig' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.FonePurple + Width = 70 + end + end + object cxGridLevel4: TcxGridLevel + GridView = TvSub + end + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1011 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_WFBProducttion.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 2 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + Visible = False + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object DataSource1: TDataSource + DataSet = CDS_Sub + Left = 368 + Top = 448 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 352 + Top = 480 + end + object ADOTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 456 + Top = 445 + end + object ADOCmd: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 496 + Top = 445 + end + object ADOQuery1: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 536 + Top = 445 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid5 + PopupMenus = <> + Left = 248 + Top = 464 + end + object ADOQuery2: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 616 + Top = 453 + end +end diff --git a/艾登贸易管理/U_OrderAttachment.pas b/艾登贸易管理/U_OrderAttachment.pas new file mode 100644 index 0000000..7c91ac3 --- /dev/null +++ b/艾登贸易管理/U_OrderAttachment.pas @@ -0,0 +1,543 @@ +unit U_OrderAttachment; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, cxStyles, cxCustomData, cxGraphics, + cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, cxButtonEdit, + cxTextEdit, cxGridLevel, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, + ComCtrls, ToolWin, DBClient, ADODB, cxGridCustomPopupMenu, + cxGridPopupMenu; + +type + TfrmOrderAttachment = class(TForm) + Panel1: TPanel; + Label1: TLabel; + Customnoname: TEdit; + Label2: TLabel; + SCXName: TEdit; + Label3: TLabel; + OrderCode: TEdit; + Label4: TLabel; + OrderNo: TEdit; + Label5: TLabel; + Label11: TLabel; + ADefStr3: TEdit; + Label12: TLabel; + ADefStr4: TEdit; + Label13: TLabel; + Label14: TLabel; + ADefStr5: TEdit; + Label15: TLabel; + ADefStr6: TEdit; + Label16: TLabel; + ADefStr7: TEdit; + Label17: TLabel; + ADefStr8: TEdit; + Label18: TLabel; + ADefStr9: TEdit; + Label19: TLabel; + cxGrid5: TcxGrid; + TvSub: TcxGridDBTableView; + vSubColumn3: TcxGridDBColumn; + vSubColumn4: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + TvSubColumn1: TcxGridDBColumn; + cxGridLevel4: TcxGridLevel; + Label20: TLabel; + Label21: TLabel; + QFDate: TDateTimePicker; + QFPerson: TEdit; + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + vSubColumn1: TcxGridDBColumn; + DataSource1: TDataSource; + CDS_Sub: TClientDataSet; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + ADOQuery1: TADOQuery; + vSubColumn5: TcxGridDBColumn; + vSubColumn6: TcxGridDBColumn; + vSubColumn7: TcxGridDBColumn; + BegRKDate: TDateTimePicker; + cxGridPopupMenu1: TcxGridPopupMenu; + vSubColumn8: TcxGridDBColumn; + vSubColumn9: TcxGridDBColumn; + Label6: TLabel; + ADefStr10: TRichEdit; + ADOQuery2: TADOQuery; + Label7: TLabel; + Label8: TLabel; + Label9: TLabel; + Label10: TLabel; + Label22: TLabel; + Label24: TLabel; + procedure ADefStr3DblClick(Sender: TObject); + procedure ADefStr4DblClick(Sender: TObject); + procedure ADefStr5DblClick(Sender: TObject); + procedure ADefStr6DblClick(Sender: TObject); + procedure ADefStr9DblClick(Sender: TObject); + procedure ADefStr7DblClick(Sender: TObject); + procedure ADefStr8DblClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure Label8Click(Sender: TObject); + private + { Private declarations } + procedure SaveJiangYe(); + public + + { Public declarations } + FAMainId:string; + end; + +var + frmOrderAttachment: TfrmOrderAttachment; + +implementation +uses + U_DataLink,U_ZDYHelp,U_Fun,U_GetPGJBInList,U_ZDYHelpSel; + +{$R *.dfm} + +procedure TfrmOrderAttachment.ADefStr3DblClick(Sender: TObject); +begin + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='CPBZ'; + flagname:='װ'; + if ShowModal=1 then + begin + Self.ADefStr3.Text:=Self.ADefStr3.Text+Trim(ReturnStr); + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmOrderAttachment.ADefStr4DblClick(Sender: TObject); +begin + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='CPMT'; + flagname:='ͷ'; + if ShowModal=1 then + begin + Self.ADefStr4.Text:=Self.ADefStr4.Text+Trim(ReturnStr); + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmOrderAttachment.ADefStr5DblClick(Sender: TObject); +begin + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='CPBM'; + flagname:=''; + if ShowModal=1 then + begin + Self.ADefStr5.Text:=Self.ADefStr5.Text+Trim(ReturnStr); + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmOrderAttachment.ADefStr6DblClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CPFeel'; + flagname:='ָ'; + if ShowModal=1 then + begin + Self.ADefStr6.Text:=Trim(ClientDataSet1.fieldbyname('zdyname').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderAttachment.ADefStr9DblClick(Sender: TObject); +begin + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='CPFX'; + flagname:=''; + if ShowModal=1 then + begin + Self.ADefStr9.Text:=Self.ADefStr9.Text+Trim(ReturnStr); + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmOrderAttachment.ADefStr7DblClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CPXS'; + flagname:='ˮ'; + if ShowModal=1 then + begin + Self.ADefStr7.Text:=Trim(ClientDataSet1.fieldbyname('zdyname').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderAttachment.ADefStr8DblClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CPSLD'; + flagname:='ɫζ'; + if ShowModal=1 then + begin + Self.ADefStr8.Text:=Trim(ClientDataSet1.fieldbyname('zdyname').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderAttachment.FormShow(Sender: TObject); +begin + ReadCxGrid('޷IJƻ1',TvSub,'ָʾ'); + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add(' exec P_WFBOrder_ListAtt :begdate,:endate,:MainId'); + ADOQuery1.Parameters.ParamByName('MainId').Value:=Trim(FAMainId); + ADOQuery1.Parameters.ParamByName('begdate').Value:=''; + ADOQuery1.Parameters.ParamByName('endate').Value:=''; + Open; + end; + // SCreateCDS20(ADOQuery1,Order_Sub); + //SInitCDSData20(ADOQuery1,Order_Sub); + + SCSHDataWTag(ADOQuery1,Panel1); + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from WFBOrder_Main_Attachment where MainId='''+Trim(FAMainId)+''''); + Open; + end; + if ADOQuery1.IsEmpty then + begin + Label7.Caption:='δ'; + Label7.Font.Color:=clRed; + with ADOQuery1 do + begin + close; + sql.Clear; + sql.Add('select Top 1* from WFBOrder_Main_Attachment '); + Open; + end; + if ADOQuery1.IsEmpty=False then + begin + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from WFBOrder_Main_Attachment order by FillTime desc '); + Open; + end; + with ADOQuery1 do + begin + ADefStr3.Text:=Trim(fieldbyname('ADefStr3').AsString); + ADefStr4.Text:=Trim(fieldbyname('ADefStr4').AsString); + ADefStr5.Text:=Trim(fieldbyname('ADefStr5').AsString); + ADefStr6.Text:=Trim(fieldbyname('ADefStr6').AsString); + ADefStr7.Text:=Trim(fieldbyname('ADefStr7').AsString); + ADefStr8.Text:=Trim(fieldbyname('ADefStr8').AsString); + ADefStr9.Text:=Trim(fieldbyname('ADefStr9').AsString); + + end; + end; + end else + begin + Label7.Caption:=''; + Label7.Font.Color:=clBlue; + if Trim(ADOQuery1.fieldbyname('ADefStr11').AsString)='clBlue' then + begin + ADefStr10.Font.Color:=clBlue; + end else + if Trim(ADOQuery1.fieldbyname('ADefStr11').AsString)='clRed' then + begin + ADefStr10.Font.Color:=clRed; + end else + if Trim(ADOQuery1.fieldbyname('ADefStr11').AsString)='clOlive' then + begin + ADefStr10.Font.Color:=clOlive; + end else + if Trim(ADOQuery1.fieldbyname('ADefStr11').AsString)='clFuchsia' then + begin + ADefStr10.Font.Color:=clFuchsia; + end else + begin + ADefStr10.Font.Color:=clBlack; + end; + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBOrder_Main_Attachment where MainId='''+Trim(FAMainId)+''''); + Open; + end; + if ADOCmd.IsEmpty then + begin + QFPerson.Text:=Trim(DName); + QFDate.DateTime:=SGetServerDate(ADOQuery1); + end; + with ADOQuery1 do + begin + Close; + SQL.Clear; + SQL.Add('select A.*,Case when OrdUnit=''K'' then A.SOrdQty'); + SQL.Add(' else A.SOrdQty*A.SWFBKZ*1.00/1000 end as OrdQty,'); + sql.Add(' Case when B.OrderType=''Ʒ'' then A.SWFBFK2 else A.SWFBFK end as FSWFBFK, '); + sql.add('YLPBStr=dbo.F_Get_WFBOrder_SubStr(A.SubId,''YLPB'')'); + SQL.Add('from WFBOrder_Sub A'); + SQL.Add('inner join WFBOrder_Main B on A.MainId=B.MainId'); + sql.Add(' where A.MainId='''+Trim(FAMainId)+''''); + Open; + end; + SCreateCDS20(ADOQuery1,CDS_Sub); + SInitCDSData20(ADOQuery1,CDS_Sub); +end; + +procedure TfrmOrderAttachment.TBSaveClick(Sender: TObject); +var + maxnno:String; +begin + try + ADOCmd.Connection.BeginTrans; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBOrder_Main_Attachment where MainId='''+Trim(FAMainId)+''''); + Open; + end; + with ADOCmd do + begin + if ADOCmd.IsEmpty then + begin + Append; + FieldByName('Filler').Value:=Trim(DName); + end else + begin + Edit; + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOQuery1); + end; + FieldByName('MainId').value:=Trim(FAMainId); + FieldByName('ADefStr11').Value:=Trim(ADefStr10.Hint); + SSetsavedata(ADOCmd,'WFBOrder_Main_Attachment',Panel1,9); + Post; + end; + with CDS_Sub do + begin + First; + while not Eof do + begin + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFBOrder_Sub where SubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+''''); + Open; + end; + with ADOCmd do + begin + Edit; + if Trim(CDS_Sub.fieldbyname('SOrderMQty').AsString)<>'' then + FieldByName('SOrderMQty').Value:=CDS_Sub.fieldbyname('SOrderMQty').AsString; + FieldByName('SNote').Value:=CDS_Sub.fieldbyname('SNote').AsString; + Post; + end; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + SaveJiangYe(); + Application.MessageBox('ɹ','ʾ',0); + Label7.Caption:=''; + Label7.Font.Color:=clBlue; + except + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; +procedure TfrmOrderAttachment.SaveJiangYe(); +var + maxno,maxnosub:string; +begin + try + ADOCmd.Connection.BeginTrans; + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select A.MainId,A.SWFBColor from WFBOrder_Sub A inner join WFBOrder_Main_Attachment B'); + sql.Add(' on A.MainId=B.MainId where A.MainId='''+Trim(FAMainId)+''''); + sql.Add(' group by A.MainId,A.SWFBColor'); + Open; + end; + with ADOQuery1 do + begin + First; + while not Eof do + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_MainIdColor_JiangYe where MainId='''+Trim(FAMainId)+''''); + sql.Add(' and SWFBColor='''+Trim(ADOQuery1.fieldbyname('SWFBColor').AsString)+''''); + Open; + end; + if ADOTemp.IsEmpty then + begin + if GetLSNo(ADOCmd,maxno,'MC','WFBYCL_MainIdColor_JiangYe',2,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡϱʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + close; + sql.Clear; + sql.Add('select * from WFBYCL_MainIdColor_JiangYe where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MCID').Value:=Trim(maxno); + FieldByName('MainId').Value:=Trim(FAMainId); + FieldByName('SWFBColor').Value:=Trim(ADOQuery1.fieldbyname('SWFBColor').AsString); + Post; + end; + end else + begin + maxno:=Trim(ADOTemp.fieldbyname('MCID').AsString); + end; + with ADOQuery2 do + begin + Close; + sql.Clear; + sql.Add('exec P_JiangLiaoListMainIdColor :MainId,:SWFBColor,:WSQl'); + Parameters.ParamByName('MainId').Value:=Trim(FAMainId); + Parameters.ParamByName('SWFBColor').Value:=Trim(ADOQuery1.fieldbyname('SWFBColor').AsString); + Parameters.ParamByName('WSQl').Value:=''; + Open; + end; + with ADOQuery2 do + begin + First; + while not Eof do + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_JiangYe where MainId='''+Trim(FAMainId)+''''); + sql.Add(' and SWFBColor='''+Trim(ADOQuery1.fieldbyname('SWFBColor').AsString)+''''); + sql.Add(' and YCLCode='''+Trim(ADOQuery2.fieldbyname('YCLCode').AsString)+''''); + Open; + end; + if Trim(ADOTemp.fieldbyname('YJID').AsString)='' then + begin + if GetLSNo(ADOCmd,maxnosub,'YJ','WFBYCL_JiangYe',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡϱʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxnosub:=Trim(ADOTemp.fieldbyname('YJID').AsString); + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_JiangYe where YJID='''+Trim(maxnosub)+''''); + open; + end; + with ADOCmd do + begin + if Trim(ADOTemp.fieldbyname('YJID').AsString)='' then + Append + else + Edit; + FieldByName('MCID').Value:=Trim(maxno); + FieldByName('YJID').Value:=Trim(maxnosub); + FieldByName('MainId').Value:=Trim(FAMainId); + FieldByName('SWFBColor').Value:=Trim(ADOQuery1.fieldbyname('SWFBColor').AsString); + FieldByName('YCLCode').Value:=Trim(ADOQuery2.fieldbyname('YCLCode').AsString); + FieldByName('YCLName').Value:=Trim(ADOQuery2.fieldbyname('YCLName').AsString); + FieldByName('YGQty').Value:=Trim(ADOQuery2.fieldbyname('YGQty').AsString); + Post; + end; + Next; + end; + end; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + except + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ϱʧܣ','ʾ',0); + end; +end; +procedure TfrmOrderAttachment.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('޷IJƻ1',TvSub,'ָʾ'); + Close; +end; + +procedure TfrmOrderAttachment.Label8Click(Sender: TObject); +begin + ADefStr10.Font.Color:=TLabel(Sender).Color; + ADefStr10.Hint:=TLabel(Sender).Hint; +end; + +end. diff --git a/艾登贸易管理/U_OrderInPut.dfm b/艾登贸易管理/U_OrderInPut.dfm new file mode 100644 index 0000000..6ca958c --- /dev/null +++ b/艾登贸易管理/U_OrderInPut.dfm @@ -0,0 +1,1722 @@ +object frmOrderInPut: TfrmOrderInPut + Left = 399 + Top = 259 + Width = 1193 + Height = 660 + Caption = #25351#31034#21333#24405#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1177 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 29 + Width = 1177 + Height = 308 + Align = alTop + BevelInner = bvNone + BevelOuter = bvNone + Color = clBtnFace + Ctl3D = False + ParentColor = False + ParentCtl3D = False + TabOrder = 1 + object Label1: TLabel + Left = 31 + Top = 19 + Width = 66 + Height = 12 + Caption = #35746' '#21333' '#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 413 + Top = 503 + Width = 67 + Height = 12 + Caption = #26579' '#21378#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label10: TLabel + Left = 209 + Top = 19 + Width = 66 + Height = 12 + Caption = #21512' '#21516' '#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 568 + Top = 19 + Width = 65 + Height = 12 + Caption = #25490#21333#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label14: TLabel + Left = 383 + Top = 19 + Width = 67 + Height = 12 + Caption = #23458' '#25143#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 50 + Top = 502 + Width = 67 + Height = 12 + Caption = #38376' '#24133#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label13: TLabel + Left = 228 + Top = 502 + Width = 67 + Height = 12 + Caption = #20811' '#37325#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label2: TLabel + Left = 383 + Top = 46 + Width = 65 + Height = 12 + Caption = #26159#21542#39564#36135#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 550 + Top = 483 + Width = 67 + Height = 12 + Caption = #35268' '#26684#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label5: TLabel + Left = 31 + Top = 73 + Width = 67 + Height = 12 + Caption = #33337' '#26679#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 31 + Top = 124 + Width = 66 + Height = 12 + Caption = #21152' '#24037' '#21378#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 437 + Top = 510 + Width = 67 + Height = 12 + Caption = #25197' '#24230#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label8: TLabel + Left = 686 + Top = 530 + Width = 61 + Height = 12 + Caption = 'PH '#20540#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label15: TLabel + Left = 598 + Top = 503 + Width = 65 + Height = 12 + Caption = #21518#25972#29702#21378#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label16: TLabel + Left = 240 + Top = 503 + Width = 66 + Height = 12 + Caption = #22383' '#24067' '#21378#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label17: TLabel + Left = 62 + Top = 503 + Width = 65 + Height = 12 + Caption = #21407#26009#24037#21378#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label18: TLabel + Left = 510 + Top = 480 + Width = 65 + Height = 12 + Caption = #25253#20851#21517#31216#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label19: TLabel + Left = 31 + Top = 149 + Width = 65 + Height = 12 + Caption = #21253#35013#35201#27714#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label20: TLabel + Left = 281 + Top = 494 + Width = 67 + Height = 12 + Caption = #30701' '#30721#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label21: TLabel + Left = 313 + Top = 486 + Width = 67 + Height = 12 + Caption = #33337' '#26679#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label22: TLabel + Left = 323 + Top = 520 + Width = 67 + Height = 12 + Caption = #23553' '#26465#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label23: TLabel + Left = 31 + Top = 220 + Width = 65 + Height = 12 + Caption = #36136#37327#35201#27714#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label24: TLabel + Left = 31 + Top = 97 + Width = 65 + Height = 12 + Caption = #25968#37327#35201#27714#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label25: TLabel + Left = 31 + Top = 46 + Width = 65 + Height = 12 + Caption = #20132#36135#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label26: TLabel + Left = 192 + Top = 483 + Width = 65 + Height = 12 + Caption = #20135#21697#32534#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label27: TLabel + Left = 498 + Top = 487 + Width = 65 + Height = 12 + Caption = #25968#37327#28322#30701#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label28: TLabel + Left = 86 + Top = 482 + Width = 67 + Height = 12 + Caption = #24178' '#30952#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label29: TLabel + Left = 264 + Top = 482 + Width = 67 + Height = 12 + Caption = #28287' '#30952#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label30: TLabel + Left = 437 + Top = 482 + Width = 65 + Height = 12 + Caption = #27838#33394#29282#24230#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label31: TLabel + Left = 623 + Top = 482 + Width = 65 + Height = 12 + Caption = #27700#27927#29282#24230#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label32: TLabel + Left = 27 + Top = 485 + Width = 66 + Height = 12 + Caption = #25239' '#36215' '#29699#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label33: TLabel + Left = 383 + Top = 525 + Width = 91 + Height = 12 + Caption = #38750#27695#28418#33394#29282#24230#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label34: TLabel + Left = 779 + Top = 474 + Width = 66 + Height = 12 + Caption = #38459' '#29123' '#24615#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label35: TLabel + Left = 401 + Top = 502 + Width = 67 + Height = 12 + Caption = #27454' '#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label36: TLabel + Left = 741 + Top = 19 + Width = 13 + Height = 84 + Caption = #26631#13#10' '#13#10#31614#13#10#13#10#20869#13#10#13#10#23481 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnDblClick = Label36DblClick + end + object Label37: TLabel + Left = 742 + Top = 154 + Width = 13 + Height = 84 + Caption = #21787#13#10#13#10#22836#13#10#13#10#20869#13#10#13#10#23481 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + OnDblClick = Label37DblClick + end + object Label38: TLabel + Left = 225 + Top = 488 + Width = 67 + Height = 12 + Caption = #28907' '#37329#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label39: TLabel + Left = 28 + Top = 515 + Width = 65 + Height = 12 + Caption = #22383#24067#20132#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label40: TLabel + Left = 206 + Top = 515 + Width = 65 + Height = 12 + Caption = #36827#20179#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label41: TLabel + Left = 998 + Top = 490 + Width = 66 + Height = 12 + Caption = #36319' '#21333' '#21592#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label43: TLabel + Left = 209 + Top = 46 + Width = 66 + Height = 12 + Caption = #19994' '#21153' '#21592#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label45: TLabel + Left = 575 + Top = 521 + Width = 65 + Height = 12 + Caption = #25104#20221#27604#20363#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label46: TLabel + Left = 739 + Top = 316 + Width = 65 + Height = 12 + Caption = #20462#25913#22791#27880#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label47: TLabel + Left = 140 + Top = 486 + Width = 67 + Height = 12 + Caption = #32568' '#26679#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label48: TLabel + Left = 103 + Top = 494 + Width = 67 + Height = 12 + Caption = #27491' '#30721#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label49: TLabel + Left = 943 + Top = 316 + Width = 65 + Height = 12 + Caption = #20462#25913#27425#25968#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label42: TLabel + Left = 568 + Top = 46 + Width = 65 + Height = 12 + Caption = #20844#21496#25260#22836#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 912 + Top = 24 + Width = 26 + Height = 12 + Caption = #22270#26679 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label44: TLabel + Left = 383 + Top = 73 + Width = 65 + Height = 12 + Caption = #33337#26679#26631#31614#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object OrderNo: TEdit + Tag = 2 + Left = 96 + Top = 16 + Width = 98 + Height = 18 + TabOrder = 0 + end + object ConNo: TEdit + Tag = 2 + Left = 274 + Top = 16 + Width = 98 + Height = 18 + TabOrder = 1 + OnKeyPress = ConNoKeyPress + end + object RanFactory: TBtnEditC + Tag = 2 + Left = 96 + Top = 121 + Width = 277 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 2 + OnBtnUpClick = RanFactoryBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object OrdDate: TDateTimePicker + Tag = 2 + Left = 630 + Top = 15 + Width = 101 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 3 + end + object CustomerNoName: TBtnEditC + Tag = 2 + Left = 451 + Top = 15 + Width = 98 + Height = 20 + Hint = 'CustomerNo/'#23458#25143 + TabOrder = 4 + OnBtnUpClick = CustomerNoNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTMF: TBtnEditC + Tag = 2 + Left = 112 + Top = 506 + Width = 98 + Height = 20 + Hint = 'MPRTMF/'#38376#24133 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 5 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTKZ: TBtnEditC + Tag = 2 + Left = 223 + Top = 570 + Width = 98 + Height = 20 + Hint = 'MPRTKZ/'#20811#37325 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 6 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTCodeName: TBtnEditC + Tag = 2 + Left = 429 + Top = 595 + Width = 98 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 7 + Visible = False + OnBtnUpClick = MPRTCodeNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTSpec: TBtnEditC + Tag = 2 + Left = 675 + Top = 469 + Width = 98 + Height = 20 + Hint = 'MPRTSpec/'#35268#26684 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 8 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTDuiSeGY: TBtnEditC + Tag = 2 + Left = 131 + Top = 549 + Width = 98 + Height = 20 + Hint = 'MPRTDuiSeGY/'#23545#33394#20809#28304 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 9 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTSL: TBtnEditC + Tag = 2 + Left = 295 + Top = 589 + Width = 98 + Height = 20 + Hint = 'MPRTSL/'#32553#29575 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 10 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTNiuDu: TBtnEditC + Tag = 2 + Left = 96 + Top = 95 + Width = 278 + Height = 20 + Hint = 'MPRTNiuDu/'#25968#37327#35201#27714 + TabOrder = 11 + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTPH: TBtnEditC + Tag = 2 + Left = 684 + Top = 504 + Width = 91 + Height = 20 + Hint = 'MPRTPH/PH'#20540 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 12 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object HZLFactory: TBtnEditC + Tag = 2 + Left = 778 + Top = 489 + Width = 98 + Height = 20 + Hint = 'Factory/'#21518#25972#29702#21378 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 13 + Visible = False + OnBtnUpClick = YCLFactoryBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object PBFactory: TBtnEditC + Tag = 2 + Left = 368 + Top = 533 + Width = 98 + Height = 20 + Hint = 'Factory/'#22383#24067#21378 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 14 + Visible = False + OnBtnUpClick = YCLFactoryBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object YCLFactory: TBtnEditC + Tag = 2 + Left = 112 + Top = 523 + Width = 98 + Height = 20 + Hint = 'Factory/'#21407#26009#24037#21378 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 15 + Visible = False + OnBtnUpClick = YCLFactoryBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTZHName: TEdit + Tag = 2 + Left = 704 + Top = 552 + Width = 277 + Height = 18 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 16 + Visible = False + end + object MPRTKaiJian: TBtnEditC + Tag = 2 + Left = 382 + Top = 543 + Width = 43 + Height = 20 + Hint = 'MPRTKaiJian/'#24320#21098 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 17 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTChuanY: TBtnEditC + Tag = 2 + Left = 581 + Top = 584 + Width = 98 + Height = 20 + Hint = 'MPRTChuanY/'#33337#26679 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 18 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTYaoFeng: TBtnEditC + Tag = 2 + Left = 1150 + Top = 464 + Width = 96 + Height = 20 + Hint = 'MPRTYaoFeng/'#23553#26465#25346#38057 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 19 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTJiBenNote: TBtnEditC + Tag = 2 + Left = 96 + Top = 69 + Width = 276 + Height = 20 + Hint = 'MPRTJiBenNote/'#33337' '#26679 + TabOrder = 20 + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTTeBieNote: TBtnEditC + Tag = 2 + Left = 288 + Top = 451 + Width = 278 + Height = 20 + Hint = 'MPRTTeBieNote/'#21253#35013#29305#21035#25552#31034 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 21 + Visible = False + OnBtnUpClick = MPRTSCTeBieNoteBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object DLYDate: TDateTimePicker + Tag = 2 + Left = 96 + Top = 42 + Width = 100 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 22 + end + object MPRTCode: TBtnEditC + Tag = 2 + Left = 295 + Top = 463 + Width = 98 + Height = 20 + Hint = 'MPRTCode/'#20135#21697#32534#21495 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 23 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTQtyNote: TBtnEditC + Tag = 2 + Left = 833 + Top = 581 + Width = 98 + Height = 20 + Hint = 'MPRTQtyNote/'#25968#37327#35828#26126 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 24 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTColorLaoDu1: TBtnEditC + Tag = 2 + Left = 160 + Top = 454 + Width = 98 + Height = 20 + Hint = 'MPRTColorLaoDu1/'#24178#30952 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 25 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTColorLaoDu2: TBtnEditC + Tag = 2 + Left = 592 + Top = 566 + Width = 98 + Height = 20 + Hint = 'MPRTColorLaoDu2/'#28287#30952 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 26 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTColorLaoDu3: TBtnEditC + Tag = 2 + Left = 572 + Top = 457 + Width = 98 + Height = 20 + Hint = 'MPRTColorLaoDu3/'#27838#33394#29282#24230 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 27 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTColorLaoDu4: TBtnEditC + Tag = 2 + Left = 890 + Top = 514 + Width = 91 + Height = 20 + Hint = 'MPRTColorLaoDu4/'#27700#27927#29282#24230 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 28 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTKQiQiu: TBtnEditC + Tag = 2 + Left = 93 + Top = 481 + Width = 98 + Height = 20 + Hint = 'MPRTKQiQiu/'#25239#36215#29699 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 29 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTDingPoLv: TBtnEditC + Tag = 2 + Left = 511 + Top = 530 + Width = 85 + Height = 20 + Hint = 'MPRTDingPoLv/'#39030#30772#29575 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 30 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTZuRanXing: TBtnEditC + Tag = 2 + Left = 847 + Top = 470 + Width = 98 + Height = 20 + Hint = 'MPRTZuRanXing/'#38459#29123#24615 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 31 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTKuanNO: TBtnEditC + Tag = 2 + Left = 593 + Top = 545 + Width = 98 + Height = 20 + Hint = 'MPRTKuanNO/'#27454#21495 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 32 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTTangJin: TBtnEditC + Tag = 2 + Left = 1090 + Top = 505 + Width = 96 + Height = 20 + Hint = 'MPRTTangJin/'#28907#37329 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ReadOnly = True + TabOrder = 33 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object OrdDefDate1: TDateTimePicker + Tag = 2 + Left = 24 + Top = 547 + Width = 100 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 34 + Visible = False + end + object OrdDefDate2: TDateTimePicker + Tag = 2 + Left = 218 + Top = 545 + Width = 100 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 35 + Visible = False + end + object OrdPerson1: TBtnEditC + Tag = 2 + Left = 817 + Top = 508 + Width = 98 + Height = 20 + Hint = 'OrdPerson1/'#36319#21333#21592 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 36 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object OrdPerson2: TBtnEditC + Tag = 2 + Left = 274 + Top = 42 + Width = 98 + Height = 20 + Hint = 'OrdPerson2/'#19994#21153#21592 + TabOrder = 37 + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object LBNameNote: TMemo + Tag = 2 + Left = 768 + Top = 16 + Width = 130 + Height = 130 + TabOrder = 38 + Visible = False + end + object MaiTouNote: TMemo + Tag = 2 + Left = 769 + Top = 149 + Width = 130 + Height = 130 + TabOrder = 39 + Visible = False + end + object SYRName: TBtnEditC + Tag = 2 + Left = 630 + Top = 42 + Width = 99 + Height = 20 + Hint = 'SYRName/'#20844#21496#21488#22836 + TabOrder = 40 + OnBtnUpClick = SYRNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTBZNote: TMemo + Tag = 2 + Left = 96 + Top = 147 + Width = 633 + Height = 70 + Hint = 'MPRTBZNote/'#21253#35013#35201#27714 + ScrollBars = ssVertical + TabOrder = 41 + OnDblClick = MPRTBZNoteDblClick + end + object MPRTSCTeBieNote: TMemo + Tag = 2 + Left = 96 + Top = 223 + Width = 633 + Height = 70 + Hint = 'MPRTSCTeBieNote/'#36136#37327#35201#27714 + ScrollBars = ssVertical + TabOrder = 42 + OnDblClick = MPRTSCTeBieNoteDblClick + end + object CPCFBi: TEdit + Tag = 2 + Left = 704 + Top = 581 + Width = 98 + Height = 18 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 43 + Visible = False + end + object orddefnote1: TMemo + Tag = 2 + Left = 737 + Top = 332 + Width = 220 + Height = 105 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ScrollBars = ssVertical + TabOrder = 44 + Visible = False + end + object orddefstr1: TBtnEditC + Tag = 2 + Left = 451 + Top = 43 + Width = 98 + Height = 20 + Hint = 'orddefstr1/'#39564#36135 + ReadOnly = True + TabOrder = 45 + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object orddefstr2: TEdit + Tag = 2 + Left = 465 + Top = 570 + Width = 53 + Height = 18 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 46 + Visible = False + end + object orddefstr4: TBtnEditC + Tag = 2 + Left = 118 + Top = 450 + Width = 43 + Height = 20 + Hint = 'ZMTYPE/'#27491#30721 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 47 + Visible = False + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object orddefstr3: TEdit + Tag = 2 + Left = 61 + Top = 450 + Width = 53 + Height = 18 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 48 + Visible = False + end + object EditCnt: TcxCurrencyEdit + Tag = 2 + Left = 1080 + Top = 340 + Properties.DecimalPlaces = 0 + Properties.DisplayFormat = '#' + Style.BorderStyle = ebsSingle + TabOrder = 49 + Visible = False + Width = 73 + end + object Files: TcxDBImage + Left = 913 + Top = 48 + DataBinding.DataField = 'FilesOther' + DataBinding.DataSource = DSIMage + Properties.GraphicClassName = 'TJPEGImage' + Properties.ReadOnly = True + Properties.ShowFocusRect = False + Style.BorderStyle = ebsSingle + TabOrder = 50 + Visible = False + Height = 225 + Width = 236 + end + object FileName: TcxButton + Left = 1080 + Top = 20 + Width = 57 + Height = 25 + Hint = 'Filesother' + Caption = #21152#36733#22270#29255 + TabOrder = 51 + Visible = False + OnClick = FileNameClick + LookAndFeel.Kind = lfOffice11 + end + object orddefnote2: TMemo + Tag = 2 + Left = 452 + Top = 72 + Width = 277 + Height = 69 + ScrollBars = ssVertical + TabOrder = 52 + end + object KHLevel: TEdit + Tag = 2 + Left = 946 + Top = 4 + Width = 98 + Height = 18 + TabOrder = 53 + Visible = False + OnKeyPress = ConNoKeyPress + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 337 + Width = 1177 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 2 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #19968#38190#26367#25442 + ImageIndex = 104 + OnClick = ToolButton3Click + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 366 + Width = 1177 + Height = 255 + Align = alClient + TabOrder = 3 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + Column = v1PRTOrderQty + end + item + Format = '0' + Position = spFooter + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1XHNo: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'XHNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 35 + end + object v1PRTCode: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'PRTCode' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1PRTCodePropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1PRTCodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'PRTCodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1PRTCodeNamePropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1Column6: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'PRTspec' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'PRTMF' + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.AssignedValues.DisplayFormat = True + HeaderAlignmentHorz = taCenter + Width = 96 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'PRTKZ' + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.AssignedValues.DisplayFormat = True + HeaderAlignmentHorz = taCenter + Width = 78 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1PRTColorPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 84 + end + object v1Column3: TcxGridDBColumn + Caption = #39068#33394'('#33521#25991')' + DataBinding.FieldName = 'SOrddefstr4' + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FonePurple + Width = 115 + end + object Tv1Column2: TcxGridDBColumn + Caption = #39068#33394#33521#25991 + DataBinding.FieldName = 'SOrdDefStr4' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1PRTHX: TcxGridDBColumn + Caption = #23610#23544 + DataBinding.FieldName = 'SOrddefstr5' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1PRTHXPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 69 + end + object v1SOrddefstr2: TcxGridDBColumn + Caption = #30830#35748#33394#21345 + DataBinding.FieldName = 'SOrddefstr2' + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 87 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.AssignedValues.DisplayFormat = True + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FontBlue + Width = 82 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1OrderUnitPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FontBlue + Width = 77 + end + object v1Column2: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsEditFixedList + Properties.Items.Strings = ( + 'RMB' + '$') + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column4: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PrtPrice' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column5: TcxGridDBColumn + Caption = #27719#29575 + DataBinding.FieldName = 'huilv' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'SOrdDefNote1' + HeaderAlignmentHorz = taCenter + Width = 129 + end + object Tv1Column1: TcxGridDBColumn + Caption = #21152#24037#21333#20215 + DataBinding.FieldName = 'PrtJGPrice' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column3: TcxGridDBColumn + Caption = #26465#24418#30721 + DataBinding.FieldName = 'PRTKW' + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 936 + Top = 245 + end + object ADOCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 1020 + Top = 277 + end + object DataSource1: TDataSource + DataSet = Order_Sub + Left = 1016 + Top = 368 + end + object Order_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 1000 + Top = 352 + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 964 + Top = 269 + end + object ADOQueryImage: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 996 + Top = 49 + end + object DSIMage: TDataSource + DataSet = ADOQueryImage + Left = 972 + Top = 57 + end +end diff --git a/艾登贸易管理/U_OrderInPut.pas b/艾登贸易管理/U_OrderInPut.pas new file mode 100644 index 0000000..af94fd5 --- /dev/null +++ b/艾登贸易管理/U_OrderInPut.pas @@ -0,0 +1,1649 @@ +unit U_OrderInPut; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, + cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, cxMemo, + cxRichEdit, ComCtrls, cxContainer, cxTextEdit, cxMaskEdit, cxButtonEdit, + StdCtrls, ToolWin, DBClient, ADODB, ExtCtrls, BtnEdit, cxCalendar, StrUtils, + cxCurrencyEdit, cxImage, Menus, cxLookAndFeelPainters, cxButtons, cxDBEdit, + cxDropDownEdit, cxLookAndFeels, 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 + TfrmOrderInPut = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ScrollBox1: TScrollBox; + Label1: TLabel; + OrderNo: TEdit; + Label7: TLabel; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + v1PRTColor: TcxGridDBColumn; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + DataSource1: TDataSource; + Order_Sub: TClientDataSet; + ADOQuery1: TADOQuery; + v1PRTOrderQty: TcxGridDBColumn; + Label10: TLabel; + ConNo: TEdit; + RanFactory: TBtnEditC; + v1XHNo: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1SOrddefstr2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + ToolButton3: TToolButton; + v1PRTHX: TcxGridDBColumn; + Label3: TLabel; + Label14: TLabel; + Label12: TLabel; + Label13: TLabel; + OrdDate: TDateTimePicker; + CustomerNoName: TBtnEditC; + MPRTMF: TBtnEditC; + MPRTKZ: TBtnEditC; + Label2: TLabel; + MPRTCodeName: TBtnEditC; + Label6: TLabel; + MPRTSpec: TBtnEditC; + Label5: TLabel; + MPRTDuiSeGY: TBtnEditC; + Label11: TLabel; + MPRTSL: TBtnEditC; + Label9: TLabel; + MPRTNiuDu: TBtnEditC; + Label8: TLabel; + MPRTPH: TBtnEditC; + Label15: TLabel; + HZLFactory: TBtnEditC; + Label16: TLabel; + PBFactory: TBtnEditC; + Label17: TLabel; + YCLFactory: TBtnEditC; + Label18: TLabel; + MPRTZHName: TEdit; + Label19: TLabel; + Label20: TLabel; + MPRTKaiJian: TBtnEditC; + Label21: TLabel; + MPRTChuanY: TBtnEditC; + Label22: TLabel; + MPRTYaoFeng: TBtnEditC; + Label23: TLabel; + MPRTJiBenNote: TBtnEditC; + Label24: TLabel; + MPRTTeBieNote: TBtnEditC; + Label25: TLabel; + DLYDate: TDateTimePicker; + Label26: TLabel; + MPRTCode: TBtnEditC; + Label27: TLabel; + MPRTQtyNote: TBtnEditC; + Label28: TLabel; + Label29: TLabel; + Label30: TLabel; + Label31: TLabel; + MPRTColorLaoDu1: TBtnEditC; + MPRTColorLaoDu2: TBtnEditC; + MPRTColorLaoDu3: TBtnEditC; + MPRTColorLaoDu4: TBtnEditC; + Label32: TLabel; + Label33: TLabel; + Label34: TLabel; + MPRTKQiQiu: TBtnEditC; + MPRTDingPoLv: TBtnEditC; + MPRTZuRanXing: TBtnEditC; + Label35: TLabel; + MPRTKuanNO: TBtnEditC; + Label36: TLabel; + Label37: TLabel; + Label38: TLabel; + MPRTTangJin: TBtnEditC; + Label39: TLabel; + OrdDefDate1: TDateTimePicker; + Label40: TLabel; + OrdDefDate2: TDateTimePicker; + Label41: TLabel; + OrdPerson1: TBtnEditC; + Label43: TLabel; + OrdPerson2: TBtnEditC; + LBNameNote: TMemo; + MaiTouNote: TMemo; + SYRName: TBtnEditC; + MPRTBZNote: TMemo; + MPRTSCTeBieNote: TMemo; + CPCFBi: TEdit; + Label45: TLabel; + v1Column1: TcxGridDBColumn; + Label46: TLabel; + orddefnote1: TMemo; + orddefstr1: TBtnEditC; + Label47: TLabel; + orddefstr2: TEdit; + orddefstr4: TBtnEditC; + orddefstr3: TEdit; + Label48: TLabel; + Label49: TLabel; + EditCnt: TcxCurrencyEdit; + v1PRTCodeName: TcxGridDBColumn; + v1PRTCode: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + Label42: TLabel; + Label4: TLabel; + FileName: TcxButton; + Files: TcxDBImage; + ADOQueryImage: TADOQuery; + DSIMage: TDataSource; + Label44: TLabel; + orddefnote2: TMemo; + v1Column2: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + Tv1Column1: TcxGridDBColumn; + KHLevel: TEdit; + Tv1Column2: TcxGridDBColumn; + Tv1Column3: TcxGridDBColumn; + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure v1PRTColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure RanFactoryBtnUpClick(Sender: TObject); + procedure CustomerNoNameBtnUpClick(Sender: TObject); + procedure CustomerNoNameBtnDnClick(Sender: TObject); + procedure MPRTCodeNameBtnUpClick(Sender: TObject); + procedure NoteDblClick(Sender: TObject); + procedure v1OrderUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1PriceUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure OrdDefStr2BtnUpClick(Sender: TObject); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + procedure ToolButton3Click(Sender: TObject); + procedure YCLFactoryBtnUpClick(Sender: TObject); + procedure MPRTSCTeBieNoteBtnUpClick(Sender: TObject); + procedure Label36DblClick(Sender: TObject); + procedure Label37DblClick(Sender: TObject); + procedure SYRNameBtnUpClick(Sender: TObject); + procedure MPRTBZNoteDblClick(Sender: TObject); + procedure MPRTSCTeBieNoteDblClick(Sender: TObject); + procedure v1PRTCodeNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure FileNameClick(Sender: TObject); + procedure v1PRTCodePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1PRTHXPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + private + procedure InitData(); + procedure ZDYHelp(FButn: TcxButtonEdit; LType: string); + function SaveData(): Boolean; + function SaveDataSubOne(): Boolean; + function SaveDataMain(): Boolean; + function SaveDataSubMore(): Boolean; + procedure CJEWM(); + procedure InitImage(); + { Private declarations } + public + PState, CopyInt, PriceFlag: Integer; + FMainId, FFMainId, FOrderNo: string; + FXS: Integer; + { Public declarations } + end; + +var + frmOrderInPut: TfrmOrderInPut; + newh: hwnd; + +implementation + +uses + U_DataLink, U_ZDYHelp, U_Fun, U_ZDYHelpSel, U_ZdyAttachment, U_ZdyAttachCP, + U_ZdyAttachGYS_help, U_ZdyCMZ_Sel, U_ZdyYS_Sel; + +{$R *.dfm} + +procedure TfrmOrderInPut.InitImage(); +begin +// IF Order_Sub.IsEmpty then exit; + with ADOQueryImage do + begin + close; + sql.Clear; + sql.Add('select * from TP_File A'); + sql.Add('where TFid=' + quotedstr(trim(OrderNO.Text))); + open; + end; +end; + +procedure TfrmOrderInPut.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid(self.Caption + TV1.Name, Tv1, 'ָʾ'); +end; + +procedure TfrmOrderInPut.InitData(); +begin + with ADOQuery1 do + begin + Close; + SQL.Clear; +// sql.Add(' select * from JYOrder_Sub where 1=1 '); + if PState = 1 then + begin +// sql.Add(' select * from JYOrder_Sub where 1=1 '); +// sql.Add(' and MainId=''' + Trim(FMainId) + ''''); + { SQL.Add('select PRTPrice=( case when AA.PRTPrice>0 then AA.PRTPrice else AA.PRTPriceC end ),AA.* from('); + sql.Add(' select A.*,PRTPriceC=(( case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=B.CustomerNoName)=''һ'' then (select fprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=B.CustomerNoName)='''' then (select Sprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=B.CustomerNoName)='''' then (select Tprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add(' (select DZprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) end end end ))'); + sql.Add('from JYOrder_Sub A '); + sql.Add(' inner join JYOrder_Main B on A.mainid=B.mainid '); + sql.Add('where 1=1 and A.MainId=''' + Trim(FMainId) + ''' )AA'); }//ѯ۸ + sql.Add(' select PRTPrice=(( case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=B.CustomerNoName)=''ƴ'' then (select DZprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=B.CustomerNoName)='''' then (select Sprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=B.CustomerNoName)='''' then (select Tprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add('(select fprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) end end end )),A.*'); + sql.Add('from JYOrder_Sub A '); + sql.Add(' inner join JYOrder_Main B on A.mainid=B.mainid '); + sql.Add('where 1=1 and A.MainId=''' + Trim(FMainId) + ''' '); +// ShowMessage(sql.text); + end; + if PState = 0 then + begin + sql.Add(' select * from JYOrder_Sub where 1=1 '); + sql.Add(' and 1<>1'); + end; + Open; + end; + SCreateCDS20(ADOQuery1, Order_Sub); + SInitCDSData20(ADOQuery1, Order_Sub); + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where MainId=''' + Trim(FMainId) + ''''); + Open; + end; + SCSHDataNew(ADOQuery1, ScrollBox1, 2); + if PState = 0 then + begin + OrdDate.DateTime := SGetServerDateTime(ADOTemp); + DlyDate.DateTime := OrdDate.DateTime; + OrdDefDate1.DateTime := OrdDate.DateTime; + OrdDefDate2.DateTime := OrdDate.DateTime; + OrdPerson2.Text := trim(dName); + end + else + begin + end; + if CopyInt = 99 then + begin + PState := 0; + FMainId := ''; + OrderNo.Text := ''; + orddefnote1.Text := ''; + OrdPerson2.Text := trim(dName); + with Order_Sub do + begin + First; + while not Eof do + begin + Edit; + FieldByName('MainId').Value := ''; + FieldByName('SubId').Value := ''; + Fieldbyname('SLBName').value := null; + Post; + Next; + end; + end; + end; + InitImage(); +end; + +procedure TfrmOrderInPut.ZDYHelp(FButn: TcxButtonEdit; LType: string); +begin + +end; + +procedure TfrmOrderInPut.FormShow(Sender: TObject); +begin + readCxGrid(self.Caption + TV1.Name, Tv1, 'ָʾ'); + InitData(); +end; + +procedure TfrmOrderInPut.CJEWM(); +var + Txt, fImagePath, maxNo: string; + Moudle: THandle; + Makebar: TMakebar; + Mixtext: TMixtext; +begin + try + Moudle := LoadLibrary('MakeQRBarcode.dll'); + @Makebar := GetProcAddress(Moudle, 'Make'); + @Mixtext := GetProcAddress(Moudle, 'MixText'); + Txt := Trim(order_Sub.fieldbyname('Subid').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); + + with ADOCmd do + begin + Close; + SQL.Clear; + SQL.Add('select * from TP_File '); + sql.Add('where TFID=' + quotedstr(trim(Txt))); + sql.Add('and TFType=''EWM'''); + open; + if isempty then + begin + append; + fieldbyname('TFID').Value := trim(Txt); + fieldbyname('WBID').Value := trim(order_Sub.fieldbyname('Mainid').AsString); + fieldbyname('TFType').Value := 'EWM'; + fieldbyname('FillTime').Value := SGetServerDateTime(ADOTemp); + tblobfield(FieldByName('Filesother')).LoadFromFile(fImagePath); + post; + end; + end; + except + application.MessageBox('ʧܣ', 'ʾϢ', MB_ICONERROR); + order_Sub.EnableControls; + exit; + end; +end; + +function TfrmOrderInPut.SaveData(): Boolean; +var + maxno: string; +begin + try + ADOCmd.Connection.BeginTrans; + if Trim(FMainId) = '' then + begin + if GetLSNo(ADOCmd, maxno, 'JM', 'JYOrder_Main', 3, 1) = False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!', 'ʾ', 0); + Exit; + end; + end + else + begin + maxno := Trim(FMainId); + end; + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from JYOrder_Main where MainId=''' + Trim(FMainId) + ''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMainId) = '' then + begin + Append; + end + else + begin + Edit; + end; + FieldByName('MainId').Value := Trim(maxno); + SSetsaveSqlNew(ADOCmd, 'JYOrder_Main', ScrollBox1, 2); + if Trim(FMainId) = '' then + begin + FieldByName('Filler').Value := Trim(DName); + FieldByName('Filltime').Value := SGetServerDateTime(ADOTemp); + end + else + begin + FieldByName('Editer').Value := Trim(DName); + FieldByName('EditTime').Value := SGetServerDateTime(ADOTemp); + end; + FieldByName('LBNameNote').Value := Trim(LBNameNote.Text); + FieldByName('MaiTouNote').Value := MaiTouNote.Text; + FieldByName('editcnt').Value := strtointdef(trim(editcnt.Text), 0); + Post; + end; + + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where orderno=''' + Trim(OrderNo.Text) + ''''); + Open; + end; + if ADOCmd.RecordCount > 1 then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ָʾظ!', 'ʾ', 0); + Exit; + end; + FMainId := Trim(maxno); + ///ӱ + with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString) = '' then + begin + if GetLSNo(ADOCmd, maxno, 'JS', 'JYOrder_Sub', 4, 1) = False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ', 'ʾ', 0); + Exit; + end; + end + else + begin + maxno := Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrder_Sub where MainId=''' + Trim(FMainId) + ''''); + sql.Add(' and SubId=''' + Trim(maxno) + ''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString) = '' then + begin + Append; + end + else + Edit; + FieldByName('MainId').Value := Trim(FMainId); + FieldByName('SubId').Value := Trim(maxno); + RTSetSaveDataCDS(ADOCmd, Tv1, Order_Sub, 'JYOrder_Sub', 0); + fieldbyname('PRTMF').Value := Order_Sub.fieldbyname('PRTMF').AsFloat; + fieldbyname('PRTKZ').Value := Order_Sub.fieldbyname('PRTKZ').asfloat; + if Trim(fieldbyname('PRTOrderQty').AsString) = '' then + begin + fieldbyname('PRTOrderQty').Value := 0 + end; + if Trim(fieldbyname('PRTPrice').AsString) = '' then + begin + fieldbyname('PRTPrice').Value := 0 + end; + FieldByName('Sorddefstr10').Value := Order_Sub.FieldByName('Sorddefstr10').AsString; +// FieldByName('khOrderNO').Value:=trim(Order_Sub.FieldByName('khOrderNO').AsString); + FieldByName('PRTprice').Value := Order_Sub.FieldByName('PRTprice').AsFloat; + FieldByName('huilv').Value := Order_Sub.FieldByName('huilv').AsFloat; + // FieldByName('orderNo').Value:=trim(orderNo.text); + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value := Trim(maxno); + Order_Sub.FieldByName('Mainid').Value := Trim(FMainId); + CJEWM(); + Next; + end; + end; + {if Trim(Order_Sub.FieldByName('PRTPrice').AsString)<>'' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add('where MainId='''+Trim(FMainId)+''''); + SQL.Add(' and CRType=''ӦտǼ'' '); + SQL.Add(' and YFType=''Զ'' '); + Open; + end; + if ADOTemp.RecordCount=1 then + begin + + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR set Price='+Order_Sub.FieldByName('PRTPrice').AsString); + sql.Add(',BZType='''+Trim(Order_Sub.FieldByName('PriceUnit').AsString)+''''); + SQL.Add(' where YFID='''+Trim(ADOTemp.fieldbyname('YFID').AsString)+''''); + ExecSQL; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty*HuiLv'); + SQL.Add(' where YFID='''+Trim(ADOTemp.fieldbyname('YFID').AsString)+''''); + ExecSQL; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_KC Set KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' ,KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+ADOTemp.fieldbyname('CRID').AsString); + ExecSQL; + end; + end; + + end; } + ADOCmd.Connection.CommitTrans; + Result := True; + except + Result := False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ', 'ʾ', 0); + end; +end; + +function TfrmOrderInPut.SaveDataMain(): Boolean; +var + maxno: string; +begin + try + ADOCmd.Connection.BeginTrans; + /// + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from JYOrder_Main where MainId=''' + Trim(FMainId) + ''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMainId) = '' then + begin + Append; + maxno := Trim(FFMainId); + end + else + begin + maxno := Trim(FMainId); + Edit; + end; + FieldByName('MainId').Value := Trim(maxno); + SSetsaveSqlNew(ADOCmd, 'JYOrder_Main', ScrollBox1, 2); + if PState = 1 then + begin + FieldByName('OrdUpDate').Value := SGetServerDateTime(ADOTemp); + end; + if Trim(FMainId) = '' then + begin + FieldByName('Filler').Value := Trim(DName); + end + else + begin + FieldByName('Editer').Value := Trim(DName); + FieldByName('EditTime').Value := SGetServerDateTime(ADOTemp); + end; + Post; + end; + FMainId := Trim(maxno); + ADOCmd.Connection.CommitTrans; + Result := True; + except + Result := False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ', 'ʾ', 0); + end; +end; + +function TfrmOrderInPut.SaveDataSubOne(): Boolean; +var + maxno: string; +begin + try + ADOCmd.Connection.BeginTrans; + ///ӱ + with Order_Sub do + begin + //First; + //while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString) = '' then + begin + if GetLSNo(ADOTemp, maxno, 'JS', 'JYOrder_Sub', 4, 1) = False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ', 'ʾ', 0); + Exit; + end; + end + else + begin + maxno := Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrder_Sub where MainId=''' + Trim(FMainId) + ''''); + sql.Add(' and SubId=''' + Trim(maxno) + ''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString) = '' then + Append + else + Edit; + FieldByName('MainId').Value := Trim(FMainId); + FieldByName('SubId').Value := Trim(maxno); + RTSetSaveDataCDS(ADOCmd, Tv1, Order_Sub, 'JYOrder_Sub', 0); + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value := Trim(maxno); + //Order_Sub.Post; + //Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result := True; + except + Result := False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('쳣', 'ʾ', 0); + end; +end; + +function TfrmOrderInPut.SaveDataSubMore(): Boolean; +var + maxno: string; +begin + try + ADOCmd.Connection.BeginTrans; + ///ӱ + with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString) = '' then + begin + if GetLSNo(ADOTemp, maxno, 'JS', 'JYOrder_Sub', 4, 1) = False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ', 'ʾ', 0); + Exit; + end; + end + else + begin + maxno := Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrder_Sub where MainId=''' + Trim(FMainId) + ''''); + sql.Add(' and SubId=''' + Trim(maxno) + ''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString) = '' then + Append + else + Edit; + FieldByName('MainId').Value := Trim(FMainId); + FieldByName('SubId').Value := Trim(maxno); + RTSetSaveDataCDS(ADOCmd, Tv1, Order_Sub, 'JYOrder_Sub', 0); + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value := Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result := True; + except + Result := False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('쳣', 'ʾ', 0); + end; +end; + +procedure TfrmOrderInPut.TBSaveClick(Sender: TObject); +begin + OrdDate.SetFocus; + if Trim(OrderNo.Text) = '' then + begin + Application.MessageBox('ָʾŲΪգ', 'ʾ', 0); + Exit; + end; +// if Order_Sub.Locate('PriceUnit', null, []) = True then +// begin +// Application.MessageBox('ֲΪ!', 'ʾ', 0); +// Exit; +// end; +// if Order_Sub.Locate('PriceUnit', '', []) = True then +// begin +// Application.MessageBox('ֲΪ!', 'ʾ', 0); +// Exit; +// end; + if order_Sub.Locate('OrderUnit', null, []) = true then + begin + application.messagebox('λΪ', 'ʾ'); + exit; + end; + + if Order_Sub.IsEmpty then + begin + Application.MessageBox('ϸΪ!', 'ʾ', 0); + Exit; + end; + + if PState = 1 then + begin + if Trim(OrderNo.Text) <> Trim(FOrderNo) then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where MainId=''' + Trim(FMainId) + ''''); + Open; + end; + if ADOTemp.IsEmpty = False then + begin + Application.MessageBox('ѲݣܸĶ!', 'ʾ', 0); + Exit; + end; + end; + end; + if SaveData() then + begin + Application.MessageBox('ɹ', 'ʾ', 0); + ModalResult := 1; + end; +end; + +procedure TfrmOrderInPut.v1PRTColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin +// try +// frmZDYHelp := TfrmZDYHelp.Create(Application); +// with frmZDYHelp do +// begin +// flag := 'OrdColor'; +// flagname := 'ɫ'; +// V1Name.Caption := ''; +// V1Note.Caption := 'Ӣ'; +// // MainType:=Trim(DName); +// fnote := True; +// if ShowModal = 1 then +// begin +// Self.Order_Sub.Edit; +// Self.Order_Sub.FieldByName('PRTColor').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); +// Self.Order_Sub.FieldByName('SOrddefstr4').Value := Trim(ClientDataSet1.fieldbyname('Note').AsString); +// end; +// end; +// finally +// frmZDYHelp.Free; +// end; +// frmZdyYS_sel := TfrmZdyYS_sel.create(self); +// with frmZdyYS_sel do +// begin +// if showmodal = 1 then +// begin +// with Order_Sub do +// begin +// Edit; +// FieldByName('PRTColor').value := CDS_HZ.fieldbyname('CodeName').AsString; +// Post; +// end; +// end; +// free; +// end; + frmZdyYS_sel := TfrmZdyYS_sel.create(self); + with frmZdyYS_sel do + begin + if showmodal = 1 then + begin + CDS_HZ.First; + while not CDS_HZ.Eof do + begin + if CDS_HZ.fieldbyname('ssel').AsBoolean then + begin + with Order_Sub do + begin + Edit; + FieldByName('PRTColor').value := CDS_HZ.fieldbyname('CodeName').AsString; + Post; + end; + end; + CDS_HZ.Next; + end; + + end; + free; + end; +end; + +procedure TfrmOrderInPut.ToolButton1Click(Sender: TObject); +var + i: Integer; +begin + if Trim(OrderNo.Text) = '' then + begin + Application.MessageBox('ŲΪ!', 'ʾ', 0); + Exit; + end; + i := Order_Sub.RecordCount; + i := i + 1; + CopyAddRow(Tv1, Order_Sub); + with Order_Sub do + begin + Edit; + FieldByName('XHNO').Value := IntToStr(i); + FieldByName('PRTColor').Value := ''; + FieldByName('PRTOrderQty').Value := null; + FieldByName('PRTPrice').Value := 0; + FieldByName('SOrddefstr4').Value := null; + FieldByName('SOrddefstr2').Value := null; + FieldByName('SOrddefstr10').Value := null; + Post; + end; +end; + +procedure TfrmOrderInPut.ToolButton2Click(Sender: TObject); +begin + if Order_Sub.IsEmpty then + Exit; + + if Trim(Order_Sub.fieldbyname('SubId').AsString) <> '' then + begin + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete TP_File where WBID=''' + Trim(Order_Sub.fieldbyname('SubId').AsString) + ''' and TFType=''EWM'' '); + ExecSQL; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Sub where SubId=''' + Trim(Order_Sub.fieldbyname('SubId').AsString) + ''''); + ExecSQL; + end; + end; + Order_Sub.Delete; +end; + +procedure TfrmOrderInPut.RanFactoryBtnUpClick(Sender: TObject); +begin + frmZdyAttachGYS_help := TfrmZdyAttachGYS_help.create(self); + with frmZdyAttachGYS_help do + begin + if showmodal = 1 then + begin + RanFactory.Text := trim(cds_hz.fieldbyname('zdyName').asstring); + end; + free; + end; +end; + +procedure TfrmOrderInPut.CustomerNoNameBtnUpClick(Sender: TObject); +begin +{ try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CustomerNoName'; + flagname:='ͻ'; + if Trim(DParameters1)<>'Ȩ' then + MainType:=Trim(DName); + if ShowModal=1 then + begin + CustomerNoName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + CustomerNoName.TxtCode:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; } + try + frmZdyAttachment := TfrmZdyAttachment.Create(Application); + with frmZdyAttachment do + begin + if ShowModal = 1 then + begin + CustomerNoName.Text := Trim(CDS_HZ.fieldbyname('zdyName').AsString); + CustomerNoName.TxtCode := Trim(CDS_HZ.fieldbyname('ZDYCode').AsString); + KHLevel.Text := Trim(CDS_HZ.fieldbyname('DEFStr6').AsString); + if KHLevel.Text = '' then + begin + KHLevel.Text := 'һ'; + end; + end; + end; + finally + frmZdyAttachment.Free; + end; + if Trim(CustomerNoName.Text) <> '' then + begin + + with Order_Sub do + begin + First; + while not Eof do + begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + if PState = 1 then + begin + sql.Add(' select PRTPrice=(( case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')=''ƴ'' then (select DZprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')='''' then '); + SQL.Add('case when ((left(''' + Order_Sub.FieldByName('SOrddefstr5').AsString + ''',1)=''A'' ) or (''' + Order_Sub.FieldByName('SOrddefstr5').AsString + '''=''CXXL'')) then (select Sprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else (select Seprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) end else'); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')='''' then (select Tprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add('(select fprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) end end end ))'); + sql.Add('from JYOrder_Sub A '); + sql.Add(' inner join JYOrder_Main B on A.mainid=B.mainid '); + sql.Add('where A.MainId=''' + Trim(FMainId) + ''' and A.PRTCode=''' + Order_Sub.FieldByName('Prtcode').AsString + ''' '); + end; + if PState = 0 then + begin + sql.Add(' select PRTPrice=(( case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')=''ƴ'' then (select DZprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')='''' then '); + SQL.Add('case when ((left(''' + Order_Sub.FieldByName('SOrddefstr5').AsString + ''',1)=''A'' ) or (''' + Order_Sub.FieldByName('SOrddefstr5').AsString + '''=''CXXL'')) then (select Sprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else (select Seprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) end else'); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')='''' then (select Tprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add('(select fprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) end end end ))'); + sql.Add('from JYOrder_Sub A '); + sql.Add(' inner join JYOrder_Main B on A.mainid=B.mainid '); + sql.Add('where A.PRTCode=''' + Order_Sub.FieldByName('Prtcode').AsString + ''' '); + end; +// ShowMessage(sql.text); + Open; + end; + + with ADOCmd do + begin +// if Trim(Order_Sub.fieldbyname('SubId').AsString) = '' then +// begin +// Append; +// end +// else + Order_Sub.Edit; + Order_Sub.fieldbyname('PrtPrice').Value := ADOQuery1.fieldbyname('PRTPrice').AsFloat; + Order_Sub.Post; + end; + + Next; + end; + end; + +// Order_Sub.Edit; +// Order_Sub.fieldbyname('PrtPrice').Value := ADOQuery1.fieldbyname('PRTPrice').AsFloat; +// Order_Sub.Post; + tv1.Controller.EditingController.ShowEdit(); + end; +end; + +procedure TfrmOrderInPut.CustomerNoNameBtnDnClick(Sender: TObject); +begin + TBtnEditC(Sender).Text := ''; + TBtnEditC(Sender).TxtCode := ''; +end; + +procedure TfrmOrderInPut.MPRTCodeNameBtnUpClick(Sender: TObject); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'MPRTCodeName'; + flagname := 'Ʒ'; + //fnote:=True; + //V1Note.Caption:='Ʒ'; + if ShowModal = 1 then + begin + MPRTCodeName.Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + //MPRTCode.Text:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPut.NoteDblClick(Sender: TObject); +begin + {try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='OrdNote'; + flagname:='עҪ'; + if ShowModal=1 then + begin + Note.Text:=Note.Text+frmZDYHelpSel.ReturnStr; + end; + end; + finally + frmZDYHelpSel.Free; + end;} +end; + +procedure TfrmOrderInPut.v1OrderUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'OrderUnit'; + flagname := 'λ'; + if ShowModal = 1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('OrderUnit').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPut.v1PriceUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'PriceUnit'; + flagname := '۸λ'; + if (Trim(DParameters1) <> 'Ȩ') then // and (Trim(DParameters1)<>'ϲȨ') + begin + TBAdd.Visible := False; + TBEdit.Visible := False; + TBDel.Visible := False; + end; + + if ShowModal = 1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PriceUnit').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPut.OrdDefStr2BtnUpClick(Sender: TObject); +var + fsj: string; + FWZ: Integer; +begin + fsj := Trim(TEdit(Sender).Hint); + FWZ := Pos('/', fsj); + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := Copy(fsj, 1, FWZ - 1); + flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); + if Trim(flag) = 'OrdDefStr2' then + begin + V1Name.Caption := ''; + V1Note.Caption := 'Ӣ'; + fnote := True; + end; + if ShowModal = 1 then + begin + TEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + if Trim(flag) = 'MPRTCode' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1 * from JYOrder_Main where MPRTCode=''' + Trim(ClientDataSet1.fieldbyname('ZDYName').AsString) + ''''); + sql.Add(' order by FillTime desc'); + Open; + end; + MPRTCodeName.Text := ADOTemp.fieldbyname('MPRTCodeName').AsString; + MPRTMF.Text := ADOTemp.fieldbyname('MPRTMF').AsString; + MPRTKZ.Text := ADOTemp.fieldbyname('MPRTKZ').AsString; + MPRTSpec.Text := ADOTemp.fieldbyname('MPRTSpec').AsString; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPut.ConNoKeyPress(Sender: TObject; var Key: Char); +var + ConMainId: string; +begin + if Key = #13 then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrderCon_Main where ConNo like ''' + '%' + Trim(ConNo.Text) + '%' + ''''); + Open; + end; + + if ADOTemp.IsEmpty then + begin + Application.MessageBox('ͬŲڣȷϺԣ', 'ʾ', 0); + Exit; + end; + + if ADOTemp.RecordCount > 1 then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrderCon_Main where ConNo=''' + Trim(ConNo.Text) + ''''); + Open; + end; + if ADOTemp.IsEmpty then + Exit; + end + else if ADOTemp.RecordCount = 1 then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrderCon_Main where ConNo like ''' + '%' + Trim(ConNo.Text) + '%' + ''''); + Open; + end; + end; + begin + ConNo.Text := Trim(ADOTemp.fieldbyname('ConNo').AsString); + //OrdDefStr1.Text:=Trim(ADOTemp.fieldbyname('ConDefStr1').AsString); + MPRTChuanY.Text := Trim(ADOTemp.fieldbyname('ChuanYangNote').AsString); + MPRTQtyNote.Text := Trim(ADOTemp.fieldbyname('QtyNote').AsString); + CustomerNoName.Text := Trim(ADOTemp.fieldbyname('CustomerNoName').AsString); + CustomerNoName.TxtCode := Trim(ADOTemp.fieldbyname('CustomerNo').AsString); + DLYDate.DateTime := ADOTemp.fieldbyname('DLYDate').Value; + ConMainId := Trim(ADOTemp.fieldbyname('MainId').AsString); + // ConGS:=Trim(ADOTemp.fieldbyname('SYRName').AsString); + //OrdDefStr2.Text:=Trim(ADOTemp.fieldbyname('ConDefStr2').AsString); + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select A.* '); //,ColorName=(select ZdyName from KH_Zdy B where B.Note=A.PRTColor and B.Type=''OrdColor'' ) + SQL.Add(' from JYOrderCon_Sub A where MainId=''' + Trim(ConMainId) + ''''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + with Order_Sub do + begin + Append; + FieldByName('PRTCode').Value := Trim(ADOTemp.fieldbyname('PRTCode').AsString); + FieldByName('PRTCodeName').Value := Trim(ADOTemp.fieldbyname('PRTCodeName').AsString); + FieldByName('PRTspec').Value := Trim(ADOTemp.fieldbyname('PRTspec').AsString); + FieldByName('PRTColor').Value := Trim(ADOTemp.fieldbyname('PRTColor').AsString); + FieldByName('SOrdDefStr4').Value := Trim(ADOTemp.fieldbyname('SOrdDefStr4').AsString); + FieldByName('SOrdDefStr3').Value := Trim(ADOTemp.fieldbyname('SOrdDefStr3').AsString); + FieldByName('PRTOrderQty').Value := Trim(ADOTemp.fieldbyname('PRTOrderQty').AsString); + FieldByName('OrderUnit').Value := Trim(ADOTemp.fieldbyname('OrderUnit').AsString); + FieldByName('PRTPrice').Value := Trim(ADOTemp.fieldbyname('PRTPrice').AsString); + FieldByName('PriceUnit').Value := Trim(ADOTemp.fieldbyname('PriceUnit').AsString); + FieldByName('PRTHX').Value := Trim(ADOTemp.fieldbyname('PRTHX').AsString); + FieldByName('XHNO').Value := Trim(ADOTemp.fieldbyname('XHNO').AsString); + FieldByName('Sorddefstr10').Value := Trim(ADOTemp.fieldbyname('SUBID').AsString); + FieldByName('huilv').Value := Trim(ADOTemp.fieldbyname('huilv').AsString); + FieldByName('Sorddefstr5').Value := Trim(ADOTemp.fieldbyname('Sorddefstr5').AsString); +// FieldByName('PRTECodeName').Value := Trim(ADOTemp.fieldbyname('PRTECodeName').AsString); + Post; + end; + Next; + end; + end; + end; + + end; +end; + +procedure TfrmOrderInPut.ToolButton3Click(Sender: TObject); +begin + if Order_Sub.IsEmpty then + Exit; + OneKeyPost(Tv1, Order_Sub); +end; + +procedure TfrmOrderInPut.YCLFactoryBtnUpClick(Sender: TObject); +var + fsj: string; + FWZ: Integer; +begin + fsj := Trim(TEdit(Sender).Hint); + FWZ := Pos('/', fsj); + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := Copy(fsj, 1, FWZ - 1); + flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); + MainType := TEdit(Sender).Name; + if ShowModal = 1 then + begin + TEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPut.MPRTSCTeBieNoteBtnUpClick(Sender: TObject); +var + fsj: string; + FWZ: Integer; +begin + fsj := Trim(TEdit(Sender).Hint); + FWZ := Pos('/', fsj); + try + frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag := Copy(fsj, 1, FWZ - 1); + flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); + if ShowModal = 1 then + begin + TEdit(Sender).Text := ReturnStr; + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmOrderInPut.Label36DblClick(Sender: TObject); +begin + try + frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag := 'LbNameNote'; + flagname := 'ǩ'; + if ShowModal = 1 then + begin + ClientDataSet1.DisableControls; + //LBNameNote.Text:=''; + with ClientDataSet1 do + begin + First; + while not Eof do + begin + if ClientDataSet1.FieldByName('SSel').AsBoolean = True then + begin + if Trim(Self.LBNameNote.Text) = '' then + begin + Self.LBNameNote.Text := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end + else + begin + Self.LBNameNote.Text := Self.LBNameNote.Text + #13 + #10 + Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + + end; + Next; + end; + end; + ClientDataSet1.EnableControls; + end; + end; + finally + end; +end; + +procedure TfrmOrderInPut.Label37DblClick(Sender: TObject); +begin + try + frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag := 'MaitouNote'; + flagname := 'ͷ'; + if ShowModal = 1 then + begin + ClientDataSet1.DisableControls; + with ClientDataSet1 do + begin + First; + while not Eof do + begin + if ClientDataSet1.FieldByName('SSel').AsBoolean = True then + begin + if Trim(Self.MaitouNote.Text) = '' then + begin + Self.MaitouNote.Text := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end + else + begin + Self.MaitouNote.Text := Self.MaitouNote.Text + #13 + #10 + Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + + end; + Next; + end; + end; + ClientDataSet1.EnableControls; + end; + end; + finally + end; +end; + +procedure TfrmOrderInPut.SYRNameBtnUpClick(Sender: TObject); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'OrdDefStr2'; + flagname := '˾̧ͷ'; + V1Name.Caption := ''; + V1Note.Caption := 'Ӣ'; + fnote := True; + { if Trim(DParameters1)<>'Ȩ' then + begin + TBAdd.Visible:=False; + TBEdit.Visible:=false; + TBDel.Visible:=false; + TBSave.Visible:=false; + end; } + if ShowModal = 1 then + begin + SYRName.Text := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPut.MPRTBZNoteDblClick(Sender: TObject); +var + fsj: string; + FWZ: Integer; + i: integer; +begin + fsj := Trim(TMemo(Sender).Hint); + FWZ := Pos('/', fsj); + i := 0; + try + frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag := Copy(fsj, 1, FWZ - 1); + flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); + if ShowModal = 1 then + begin + MPRTBZNote.Lines.Clear; + with ClientDataSet1 do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean = True then + begin + i := i + 1; + MPRTBZNote.Lines.Add(inttostr(i) + '.' + FieldByName('ZDYName').AsString) + end; + Next; + end; + end; + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmOrderInPut.MPRTSCTeBieNoteDblClick(Sender: TObject); +var + fsj: string; + FWZ: Integer; + i: integer; +begin + fsj := Trim(TMemo(Sender).Hint); + FWZ := Pos('/', fsj); + i := 0; + try + frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag := Copy(fsj, 1, FWZ - 1); + flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); + if ShowModal = 1 then + begin + MPRTSCTeBieNote.Lines.Clear; + with ClientDataSet1 do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean = True then + begin + i := i + 1; + MPRTSCTeBieNote.Lines.Add(inttostr(i) + '.' + FieldByName('ZDYName').AsString) + end; + Next; + end; + end; + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmOrderInPut.v1PRTCodeNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'MPRTCodeName'; + flagname := 'Ʒ'; + if ShowModal = 1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PRTCodeName').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPut.FileNameClick(Sender: TObject); +begin + { IF trim(OrderNo.Text)='' then + begin + application.MessageBox('ŲΪգ','ʾϢ',MB_ICONERROR); + exit; + end; + + try + FormGetPic := TFormGetPic.Create(Application); + with FormGetPic do + begin + // fkeyNO:=trim(Order_Sub.fieldbyname('subID').AsString); + fkeyNO:=trim(OrderNo.Text); + pat1:=TCXbutton(Sender).Name; + pic1:=TCXbutton(Sender).Hint; + FTFType:='ORDERTY'; + // pat1:='PatFile1'; +// pic1:='Picture1'; + IF ShowModal = 1 then + begin + // self.Timage(Tbutton(Sender).Hint).Picture.Assign(FormGetPic.Image2.Picture.Bitmap); + OrderNo.Enabled:=false; + end; + + Release; + end; + Initimage(); + except + if FormGetPic<>nil then FormGetPic.Release; + end; } +end; + +procedure TfrmOrderInPut.v1PRTCodePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZdyAttachCP := TfrmZdyAttachCP.Create(Application); + with frmZdyAttachCP do + begin + + if ShowModal = 1 then + begin + Order_Sub.Edit; + Order_Sub.fieldbyname('PRTCode').Value := Trim(CDS_HZ.fieldbyname('ZDYCode').AsString); + Order_Sub.fieldbyname('PRTCodeName').Value := Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + Order_Sub.fieldbyname('prtspec').Value := Trim(CDS_HZ.fieldbyname('DEFstr1').AsString); + Order_Sub.fieldbyname('PRTColor').Value := Trim(CDS_HZ.fieldbyname('CYys').AsString); + // Order_Sub.fieldbyname('prtmf').Value:=Trim(CDS_HZ.fieldbyname('DEFstr7').AsString); + // Order_Sub.fieldbyname('prtkz').Value:=Trim(CDS_HZ.fieldbyname('DEFstr8').AsString); + if KHLevel.Text = 'ƴ' then + begin + Order_Sub.fieldbyname('PrtPrice').Value := CDS_HZ.fieldbyname('DZPrice').AsFloat; + end + else if KHLevel.Text = '' then + begin + if ((LeftStr((Order_Sub.fieldbyname('SOrddefstr5').AsString), 1) = 'A') or ((Order_Sub.fieldbyname('SOrddefstr5').AsString) = 'CXXL')) then + begin + Order_Sub.fieldbyname('PrtPrice').Value := CDS_HZ.fieldbyname('SPrice').AsFloat; + end + else + begin + Order_Sub.fieldbyname('PrtPrice').Value := CDS_HZ.fieldbyname('SePrice').AsFloat; + end; + end + else if KHLevel.Text = '' then + begin + Order_Sub.fieldbyname('PrtPrice').Value := CDS_HZ.fieldbyname('TPrice').AsFloat; + end + else + begin + Order_Sub.fieldbyname('PrtPrice').Value := CDS_HZ.fieldbyname('FPrice').AsFloat; + end; + Order_Sub.Post; + end; + end; + finally + frmZdyAttachCP.Free; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmOrderInPut.v1PRTHXPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + frmZdyCMZ_sel := TfrmZdyCMZ_sel.create(self); + with frmZdyCMZ_sel do + begin + if showmodal = 1 then + begin + with order_sub do + begin + Edit; + FieldByName('SOrddefstr5').value := cdssub.fieldbyname('SizeSpec').AsString; + Post; + end; + end; + free; + end; + if Trim(CustomerNoName.Text) <> '' then + begin + + with Order_Sub do + begin + First; + while not Eof do + begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + if PState = 1 then + begin + sql.Add(' select PRTPrice=(( case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')=''һ'' then (select fprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')='''' then '); + SQL.Add('case when ((left(''' + Order_Sub.FieldByName('SOrddefstr5').AsString + ''',1)=''A'' ) or (''' + Order_Sub.FieldByName('SOrddefstr5').AsString + '''=''CXXL'')) then (select Sprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else (select Seprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) end else'); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')='''' then (select Tprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add('(select DZprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) end end end ))'); + sql.Add('from JYOrder_Sub A '); + sql.Add(' inner join JYOrder_Main B on A.mainid=B.mainid '); + sql.Add('where A.MainId=''' + Trim(FMainId) + ''' and A.PRTCode=''' + Order_Sub.FieldByName('Prtcode').AsString + ''' '); + end; + if PState = 0 then + begin + sql.Add(' select PRTPrice=(( case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')=''һ'' then (select fprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')='''' then '); + SQL.Add('case when ((left(''' + Order_Sub.FieldByName('SOrddefstr5').AsString + ''',1)=''A'' ) or (''' + Order_Sub.FieldByName('SOrddefstr5').AsString + '''=''CXXL'')) then (select Sprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else (select Seprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) end else'); + sql.Add(' case when (select DEFStr6 from KH_Zdy_Attachment X where X.ZDYName=''' + Trim(CustomerNoName.Text) + ''')='''' then (select Tprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) else '); + sql.Add('(select DZprice from KH_Zdy_Attachment X where X.zdycode=A.PRTCode ) end end end ))'); + sql.Add('from JYOrder_Sub A '); + sql.Add(' inner join JYOrder_Main B on A.mainid=B.mainid '); + sql.Add('where A.PRTCode=''' + Order_Sub.FieldByName('Prtcode').AsString + ''' '); + end; +// ShowMessage(sql.text); + Open; + end; + + with ADOCmd do + begin + Order_Sub.Edit; + Order_Sub.fieldbyname('PrtPrice').Value := ADOQuery1.fieldbyname('PRTPrice').AsFloat; + Order_Sub.Post; + end; + + Next; + end; + end; + + tv1.Controller.EditingController.ShowEdit(); + end; +end; + +end. + diff --git a/艾登贸易管理/U_OrderInPutJZC.dfm b/艾登贸易管理/U_OrderInPutJZC.dfm new file mode 100644 index 0000000..5d28697 --- /dev/null +++ b/艾登贸易管理/U_OrderInPutJZC.dfm @@ -0,0 +1,727 @@ +object frmOrderInPutJZC: TfrmOrderInPutJZC + Left = 152 + Top = 74 + Width = 950 + Height = 656 + Caption = #25351#31034#21333#24405#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 942 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 29 + Width = 942 + Height = 300 + Align = alTop + BevelInner = bvNone + BevelOuter = bvNone + Color = clBtnFace + Ctl3D = False + ParentColor = False + ParentCtl3D = False + TabOrder = 1 + object Label1: TLabel + Left = 26 + Top = 15 + Width = 66 + Height = 12 + Caption = #35746' '#21333' '#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 694 + Top = 15 + Width = 65 + Height = 12 + Caption = #21046#21333#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 247 + Top = 15 + Width = 66 + Height = 12 + Caption = #21512' '#21516' '#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label14: TLabel + Left = 470 + Top = 15 + Width = 67 + Height = 12 + Caption = #23458' '#25143#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 26 + Top = 44 + Width = 65 + Height = 12 + Caption = #20013#25991#21517#31216#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 247 + Top = 44 + Width = 67 + Height = 12 + Caption = #35268' '#26684#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 470 + Top = 44 + Width = 67 + Height = 12 + Caption = #38376' '#24133#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 694 + Top = 44 + Width = 67 + Height = 12 + Caption = #20811' '#37325#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 26 + Top = 69 + Width = 106 + Height = 12 + Caption = #24037#33402#35201#27714#35201#27714'>>>>' + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 26 + Top = 92 + Width = 66 + Height = 12 + Caption = #33394' '#29282' '#24230#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 694 + Top = 92 + Width = 68 + Height = 12 + Caption = 'PH '#20540#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 470 + Top = 92 + Width = 67 + Height = 12 + Caption = #25197' '#24230#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 247 + Top = 92 + Width = 67 + Height = 12 + Caption = #32553' '#29575#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 26 + Top = 117 + Width = 110 + Height = 12 + Caption = #21378' '#21830'>>>>' + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object OrderNo: TEdit + Tag = 2 + Left = 97 + Top = 12 + Width = 136 + Height = 18 + TabOrder = 0 + end + object OrdDate: TDateTimePicker + Tag = 2 + Left = 762 + Top = 11 + Width = 136 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 1 + end + object ConNo: TEdit + Tag = 2 + Left = 317 + Top = 12 + Width = 136 + Height = 18 + TabOrder = 2 + OnKeyPress = ConNoKeyPress + end + object CustomerNoName: TBtnEditC + Tag = 2 + Left = 538 + Top = 11 + Width = 136 + Height = 20 + Hint = 'CustomerNo' + ReadOnly = True + TabOrder = 3 + OnBtnUpClick = CustomerNoNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTCodeName: TBtnEditC + Tag = 2 + Left = 97 + Top = 40 + Width = 136 + Height = 20 + Hint = 'MPRTCode' + ReadOnly = True + TabOrder = 4 + OnBtnUpClick = MPRTCodeNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTSpec: TBtnEditC + Tag = 2 + Left = 317 + Top = 40 + Width = 136 + Height = 20 + Hint = 'MPRTSpec/'#35268#26684 + TabOrder = 5 + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTMF: TBtnEditC + Tag = 2 + Left = 538 + Top = 40 + Width = 136 + Height = 20 + Hint = 'MPRTMF/'#38376#24133 + TabOrder = 6 + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTKZ: TBtnEditC + Tag = 2 + Left = 762 + Top = 40 + Width = 136 + Height = 20 + Hint = 'MPRTKZ/'#20811#37325 + TabOrder = 7 + OnBtnUpClick = OrdDefStr2BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object BtnEditC1: TBtnEditC + Tag = 2 + Left = 97 + Top = 88 + Width = 136 + Height = 20 + Hint = 'MPRTCode' + ReadOnly = True + TabOrder = 8 + OnBtnUpClick = MPRTCodeNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object BtnEditC2: TBtnEditC + Tag = 2 + Left = 317 + Top = 88 + Width = 136 + Height = 20 + Hint = 'MPRTCode' + ReadOnly = True + TabOrder = 9 + OnBtnUpClick = MPRTCodeNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object BtnEditC3: TBtnEditC + Tag = 2 + Left = 538 + Top = 88 + Width = 136 + Height = 20 + Hint = 'MPRTCode' + ReadOnly = True + TabOrder = 10 + OnBtnUpClick = MPRTCodeNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object BtnEditC4: TBtnEditC + Tag = 2 + Left = 762 + Top = 88 + Width = 136 + Height = 20 + Hint = 'MPRTCode' + ReadOnly = True + TabOrder = 11 + OnBtnUpClick = MPRTCodeNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object cxGrid2: TcxGrid + Left = 26 + Top = 137 + Width = 207 + Height = 105 + TabOrder = 12 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + object Tv2Column1: TcxGridDBColumn + Caption = #21407#26009#21378 + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 203 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGrid3: TcxGrid + Left = 247 + Top = 137 + Width = 207 + Height = 105 + TabOrder = 13 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + object cxGridDBColumn1: TcxGridDBColumn + Caption = #22383#24067#21378 + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 203 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + object cxGrid4: TcxGrid + Left = 470 + Top = 137 + Width = 207 + Height = 105 + TabOrder = 14 + object Tv4: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + object cxGridDBColumn2: TcxGridDBColumn + Caption = #26579#21378 + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 203 + end + end + object cxGridLevel3: TcxGridLevel + GridView = Tv4 + end + end + object cxGrid5: TcxGrid + Left = 694 + Top = 137 + Width = 207 + Height = 105 + TabOrder = 15 + object Tv5: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + object cxGridDBColumn3: TcxGridDBColumn + Caption = #21152#24037#21378 + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 203 + end + end + object cxGridLevel4: TcxGridLevel + GridView = Tv5 + end + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 329 + Width = 942 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 2 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #19968#38190#26367#25442 + ImageIndex = 104 + OnClick = ToolButton3Click + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 358 + Width = 942 + Height = 261 + Align = alClient + TabOrder = 3 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + Column = v1PRTOrderQty + end + item + Format = '0' + Position = spFooter + Column = v1PRTPrice + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + object v1XHNo: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'XHNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 35 + end + object v1SOrddefstr1: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'SOrddefstr1' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 85 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = False + Properties.OnButtonClick = v1PRTColorPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 103 + end + object v1Column3: TcxGridDBColumn + Caption = #39068#33394'('#33521#25991')' + DataBinding.FieldName = 'SOrddefstr4' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FonePurple + Width = 88 + end + object v1Column4: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 54 + end + object v1SOrddefstr2: TcxGridDBColumn + Caption = #30830#35748#33394#21345 + DataBinding.FieldName = 'SOrddefstr2' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 76 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1OrderUnitPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 66 + end + object v1PRTPrice: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PRTPrice' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 68 + end + object v1PriceUnit: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'PriceUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1PriceUnitPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 76 + end + object v1Column2: TcxGridDBColumn + Caption = #20215#26684#26465#27454 + DataBinding.FieldName = 'SOrddefstr3' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FonePurple + Width = 86 + end + object v1Column1: TcxGridDBColumn + Caption = #26631#31614#35774#32622 + DataBinding.FieldName = 'SLbName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v1Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 134 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1008 + Top = 181 + end + object ADOCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 1008 + Top = 141 + end + object DataSource1: TDataSource + DataSet = Order_Sub + Left = 1016 + Top = 368 + end + object Order_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 1000 + Top = 352 + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 1016 + Top = 125 + end +end diff --git a/艾登贸易管理/U_OrderInPutJZC.pas b/艾登贸易管理/U_OrderInPutJZC.pas new file mode 100644 index 0000000..e1755dd --- /dev/null +++ b/艾登贸易管理/U_OrderInPutJZC.pas @@ -0,0 +1,1090 @@ +unit U_OrderInPutJZC; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer, + cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB, + ExtCtrls, BtnEdit, cxCalendar,StrUtils; + +type + TfrmOrderInPutJZC = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ScrollBox1: TScrollBox; + Label1: TLabel; + Label3: TLabel; + OrderNo: TEdit; + OrdDate: TDateTimePicker; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + v1PRTColor: TcxGridDBColumn; + v1PRTPrice: TcxGridDBColumn; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + DataSource1: TDataSource; + Order_Sub: TClientDataSet; + ADOQuery1: TADOQuery; + v1PRTOrderQty: TcxGridDBColumn; + Label10: TLabel; + ConNo: TEdit; + Label14: TLabel; + CustomerNoName: TBtnEditC; + v1XHNo: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1SOrddefstr1: TcxGridDBColumn; + v1PriceUnit: TcxGridDBColumn; + v1SOrddefstr2: TcxGridDBColumn; + Label2: TLabel; + MPRTCodeName: TBtnEditC; + Label6: TLabel; + MPRTSpec: TBtnEditC; + Label12: TLabel; + MPRTMF: TBtnEditC; + Label13: TLabel; + MPRTKZ: TBtnEditC; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + ToolButton3: TToolButton; + v1Column4: TcxGridDBColumn; + Label4: TLabel; + Label5: TLabel; + BtnEditC1: TBtnEditC; + Label7: TLabel; + BtnEditC2: TBtnEditC; + Label9: TLabel; + BtnEditC3: TBtnEditC; + Label11: TLabel; + BtnEditC4: TBtnEditC; + cxGrid2: TcxGrid; + cxGridLevel1: TcxGridLevel; + Tv2: TcxGridDBTableView; + Tv2Column1: TcxGridDBColumn; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + cxGrid4: TcxGrid; + Tv4: TcxGridDBTableView; + cxGridDBColumn2: TcxGridDBColumn; + cxGridLevel3: TcxGridLevel; + cxGrid5: TcxGrid; + Tv5: TcxGridDBTableView; + cxGridDBColumn3: TcxGridDBColumn; + cxGridLevel4: TcxGridLevel; + Label8: TLabel; + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure JGFactoryNameBtnUpClick(Sender: TObject); + procedure CustomerNoNameBtnUpClick(Sender: TObject); + procedure CustomerNoNameBtnDnClick(Sender: TObject); + procedure v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure OrdDefStr3BtnUpClick(Sender: TObject); + procedure MPRTCodeNameBtnUpClick(Sender: TObject); + procedure NoteDblClick(Sender: TObject); + procedure v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PriceUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure jKeyPress(Sender: TObject; var Key: Char); + procedure OrdDefStr2BtnUpClick(Sender: TObject); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + procedure ToolButton3Click(Sender: TObject); + private + procedure InitData(); + procedure ZDYHelp(FButn:TcxButtonEdit;LType:string); + function SaveData():Boolean; + function SaveDataSubOne():Boolean; + function SaveDataMain():Boolean; + function SaveDataSubMore():Boolean; + { Private declarations } + public + PState,CopyInt,PriceFlag:Integer; + FMainId,FFMainId,FOrderNo:String; + FXS:Integer; + { Public declarations } + end; + +var + frmOrderInPutJZC: TfrmOrderInPutJZC; + newh:hwnd; +implementation +uses + U_DataLink,U_ZDYHelp,U_Fun,U_ZDYHelpSel; + +{$R *.dfm} + +procedure TfrmOrderInPutJZC.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ָʾ¼',Tv1,'ָʾ'); +end; + +procedure TfrmOrderInPutJZC.InitData(); +begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add(' select * from JYOrder_Sub '); + if PState=1 then + begin + sql.Add('where MainId='''+Trim(FMainId)+''''); + end; + if PState=0 then + begin + sql.Add(' where 1<>1'); + end; + Open; + end; + SCreateCDS20(ADOQuery1,Order_Sub); + SInitCDSData20(ADOQuery1,Order_Sub); + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + SCSHDataNew(ADOQuery1,ScrollBox1,2); + if PState=0 then + begin + OrdDate.DateTime:=SGetServerDateTime(ADOTemp); + DlyDate.DateTime:=SGetServerDateTime(ADOTemp); + OrdPerson1.Text:=Trim(DName); + end else + begin + end; + if CopyInt=99 then + begin + PState:=0; + FMainId:=''; + OrdPerson1.Text:=Trim(DName); + OrderNo.Text:=''; + with Order_Sub do + begin + First; + while not Eof do + begin + Edit; + FieldByName('MainId').Value:=''; + FieldByName('SubId').Value:=''; + Post; + Next; + end; + end; + end; +end; + +procedure TfrmOrderInPutJZC.ZDYHelp(FButn:TcxButtonEdit;LType:string); +var + FType,ZDYName,FText:String; +begin +end; + +procedure TfrmOrderInPutJZC.FormShow(Sender: TObject); +begin + readCxGrid('ָʾ¼',Tv1,'ָʾ'); + if PriceFlag=99 then + begin + v1PRTPrice.Visible:=False; + v1PRTPrice.Hidden:=True; + end; + InitData(); +end; + +function TfrmOrderInPutJZC.SaveData():Boolean; +var + maxno:String; +begin + try + ADOCmd.Connection.BeginTrans; + /// + if Trim(FMainId)='' then + begin + if GetLSNo(ADOCmd,maxno,'JM','JYOrder_Main',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(FMainId); + end; + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from JYOrder_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMainId)='' then + begin + Append; + end + else begin + Edit; + end; + FieldByName('MainId').Value:=Trim(maxno); + SSetsaveSqlNew(ADOCmd,'JYOrder_Main',ScrollBox1,2); + if Trim(FMainId)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + FieldByName('Note').Value:=Trim(Note.Text); + Post; + end; + FMainId:=Trim(maxno); + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Main where orderno='''+Trim(OrderNo.Text)+''''); + Open; + end; + if ADOCmd.RecordCount>1 then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ظ!','ʾ',0); + Exit; + end; + ///ӱ + with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOCmd,maxno,'JS','JYOrder_Sub',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add(' and SubId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + RTSetSaveDataCDS(ADOCmd,Tv1,Order_Sub,'JYOrder_Sub',0); + if Trim(fieldbyname('PRTOrderQty').AsString)='' then + begin + fieldbyname('PRTOrderQty').Value:=0 + end; + if Trim(fieldbyname('PRTPrice').AsString)='' then + begin + fieldbyname('PRTPrice').Value:=0 + end; + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + {if Trim(Order_Sub.FieldByName('PRTPrice').AsString)<>'' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR '); + sql.Add('where MainId='''+Trim(FMainId)+''''); + SQL.Add(' and CRType=''ӦտǼ'' '); + SQL.Add(' and YFType=''Զ'' '); + Open; + end; + if ADOTemp.RecordCount=1 then + begin + + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR set Price='+Order_Sub.FieldByName('PRTPrice').AsString); + sql.Add(',BZType='''+Trim(Order_Sub.FieldByName('PriceUnit').AsString)+''''); + SQL.Add(' where YFID='''+Trim(ADOTemp.fieldbyname('YFID').AsString)+''''); + ExecSQL; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty*HuiLv'); + SQL.Add(' where YFID='''+Trim(ADOTemp.fieldbyname('YFID').AsString)+''''); + ExecSQL; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_KC Set KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' ,KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+ADOTemp.fieldbyname('CRID').AsString); + ExecSQL; + end; + end; + + end; } + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; +function TfrmOrderInPutJZC.SaveDataMain():Boolean; +var + maxno:String; +begin + try + ADOCmd.Connection.BeginTrans; + /// + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from JYOrder_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMainId)='' then + begin + Append; + maxno:=Trim(FFMainId); + end + else begin + maxno:=Trim(FMainId); + Edit; + end; + FieldByName('MainId').Value:=Trim(maxno); + SSetsaveSqlNew(ADOCmd,'JYOrder_Main',ScrollBox1,2); + if PState=1 then + begin + FieldByName('OrdUpDate').Value:=SGetServerDateTime(ADOTemp); + end; + if Trim(FMainId)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + Post; + end; + FMainId:=Trim(maxno); + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; +function TfrmOrderInPutJZC.SaveDataSubOne():Boolean; +var + maxno:String; +begin + try + ADOCmd.Connection.BeginTrans; + ///ӱ + with Order_Sub do + begin + //First; + //while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'JS','JYOrder_Sub',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add(' and SubId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + RTSetSaveDataCDS(ADOCmd,Tv1,Order_Sub,'JYOrder_Sub',0); + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxno); + //Order_Sub.Post; + //Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; +function TfrmOrderInPutJZC.SaveDataSubMore():Boolean; +var + maxno:String; +begin + try + ADOCmd.Connection.BeginTrans; + ///ӱ + with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'JS','JYOrder_Sub',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add(' and SubId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + RTSetSaveDataCDS(ADOCmd,Tv1,Order_Sub,'JYOrder_Sub',0); + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +procedure TfrmOrderInPutJZC.TBSaveClick(Sender: TObject); +begin + OrdDate.SetFocus; + if Trim(OrderNo.Text)='' then + begin + Application.MessageBox('ŲΪգ','ʾ',0); + Exit; + end; + if Trim(OrdDefStr1.Text)='' then + begin + Application.MessageBox('˾ŲΪգ','ʾ',0); + Exit; + end; + if Order_Sub.Locate('PRTColor',null,[])=True then + begin + Application.MessageBox('ɫΪ!','ʾ',0); + Exit; + end; + if Order_Sub.Locate('SOrddefstr4',null,[])=True then + begin + Application.MessageBox('ӢɫΪ!','ʾ',0); + Exit; + end; + if Order_Sub.Locate('SLbName',null,[])=True then + begin + Application.MessageBox('ǩΪ!','ʾ',0); + Exit; + end; + if Order_Sub.IsEmpty then + begin + Application.MessageBox('ϸΪ!','ʾ',0); + Exit; + end; + if PState=1 then + begin + if Trim(OrderNo.Text)<>Trim(FOrderNo) then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where MainId='''+Trim(FMainId)+''''); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + Application.MessageBox('ѲݣܸĶ!','ʾ',0); + Exit; + end; + end; + end; + + if SaveData() then + begin + Application.MessageBox('ɹ','ʾ',0); + end; +end; + +procedure TfrmOrderInPutJZC.v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdColor'; + flagname:='ɫ'; + V1Name.Caption:=''; + V1Note.Caption:='Ӣ'; + MainType:=Trim(DName); + fnote:=True; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PRTColor').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.Order_Sub.FieldByName('SOrddefstr4').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutJZC.ToolButton1Click(Sender: TObject); +var + i:Integer; +begin + if Trim(OrderNo.Text)='' then + begin + Application.MessageBox('ŲΪ!','ʾ',0); + Exit; + end; + i:=Order_Sub.RecordCount; + i:=i+1; + CopyAddRow(Tv1,Order_Sub); + with Order_Sub do + begin + Edit; + FieldByName('XHNO').Value:=IntToStr(i); + if i<9 then + FieldByName('SOrddefstr1').Value:='0'+Trim(IntToStr(i)) + else + FieldByName('SOrddefstr1').Value:=Trim(IntToStr(i)); + FieldByName('PRTColor').Value:=''; + FieldByName('PRTOrderQty').Value:=null; + //FieldByName('PRTPrice').Value:=null; + // FieldByName('SOrddefstr1').Value:=null; + FieldByName('SOrddefstr2').Value:=null; + Post; + end; +end; + +procedure TfrmOrderInPutJZC.ToolButton2Click(Sender: TObject); +begin + if Order_Sub.IsEmpty then Exit; + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LLMX where OrdSubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + Application.MessageBox('ϲɾ!','ʾ',0); + Exit; + end; + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub_AnPai where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + Application.MessageBox('ѻزֲɾ!','ʾ',0); + Exit; + end; + if Trim(Order_Sub.fieldbyname('SubId').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Sub where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; + Order_Sub.Delete; + { if Order_Sub.IsEmpty then + begin + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(FMainId)+''''); + ExecSQL; + end; + end; } +end; + +procedure TfrmOrderInPutJZC.JGFactoryNameBtnUpClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='RKPlace'; + flagname:='Ⱦ'; + if ShowModal=1 then + begin + JGFactoryName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + JGFactoryName.TxtCode:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutJZC.CustomerNoNameBtnUpClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CustomerNoName'; + flagname:='ͻ'; + if Trim(DParameters1)<>'Ȩ' then + MainType:=Trim(DName); + if ShowModal=1 then + begin + CustomerNoName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + CustomerNoName.TxtCode:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutJZC.CustomerNoNameBtnDnClick(Sender: TObject); +begin + TBtnEditC(Sender).Text:=''; + TBtnEditC(Sender).TxtCode:=''; +end; + +procedure TfrmOrderInPutJZC.v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +type + TMyFunc = function(App:Tapplication; FormH:hwnd; FormID:integer; + Language: integer; WinStyle:integer; + GCode: Pchar; GName: Pchar; DataBase:Pchar;Title:PChar; + Parameters1:PChar;Parameters2:PChar;Parameters3:PChar;Parameters4:PChar; + Parameters5:PChar;Parameters6:PChar;Parameters7:PChar;Parameters8:PChar; + Parameters9:PChar;Parameters10:PChar;DataBaseStr:PChar):hwnd;stdcall; +var + Tf: TMyFunc; + Tp: TFarProc; + Th:Thandle; + LabInt,labname:String; +begin + //if PPInt=2 then Exit; + Ddatabase:=StringOfChar(' ', 32); + Th := LoadLibrary('LabelSet.dll'); + if Th > 0 then + begin + try + Tp := GetProcAddress(Th, 'GetDllForm'); + if Tp <> nil then + begin + Tf := TMyFunc(Tp); + newh:=Tf(Application,0,2,0,0, + PChar(DCode), + PChar(DName), + PChar(Ddatabase), + PChar('ǩģ'), + PChar(''), + PChar(''), + '','','','','','','','',PChar(DConString) + ); + if Trim(PChar(Ddatabase))<>'' then + begin + Ddatabase:=Trim(PChar(Ddatabase)); + LabInt:=Trim( LeftBStr(Ddatabase,Pos('|',Ddatabase)-1) ) ; + labname:=Trim(RightBStr(Ddatabase,Length(Ddatabase)-Pos('|',Ddatabase) ) ); + with Order_Sub do + begin + Edit; + FieldByName('SLbName').Value:=labname; + FieldByName('SLbInt').Value:=LabInt; + end; + end; + end + else + begin + ShowMessage('ӡִд'); + end; + finally + // FreeLibrary(); + end; + end + else + begin + ShowMessage('Ҳ'+Trim('LabelSet.dll')); + end; + +end; + +procedure TfrmOrderInPutJZC.OrdDefStr3BtnUpClick(Sender: TObject); +begin +try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='maitou'; + flagname:='ͷ'; + if ShowModal=1 then + begin + OrdDefStr3.Text:=OrdDefStr3.Text+frmZDYHelpSel.ReturnStr; + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmOrderInPutJZC.MPRTCodeNameBtnUpClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='MPRTCodeName'; + flagname:='Ʒ'; + if ShowModal=1 then + begin + MPRTCodeName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + MPRTCodeName.TxtCode:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutJZC.NoteDblClick(Sender: TObject); +begin + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='OrdNote'; + flagname:='עҪ'; + if ShowModal=1 then + begin + Note.Text:=Note.Text+frmZDYHelpSel.ReturnStr; + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmOrderInPutJZC.v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('OrderUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutJZC.v1PriceUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PriceUnit'; + flagname:='۸λ'; + if Trim(DParameters1)<>'Ȩ' then + begin + TBAdd.Visible:=False; + TBEdit.Visible:=False; + TBDel.Visible:=False; + end; + + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PriceUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutJZC.jKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from CP_YDang where CYNo like '''+'%'+Trim(OrdDefStr1.Text)+'%'+''''); + Open; + end; + if ADOTemp.RecordCount=1 then + begin + MPRTCodeName.Text:=Trim(ADOTemp.fieldbyname('CYName').AsString); + MPRTCF.Text:=Trim(ADOTemp.fieldbyname('CYECF').AsString); + MPRTSpec.Text:=Trim(ADOTemp.fieldbyname('CYSpec').AsString); + MPRTMF.Text:=Trim(ADOTemp.fieldbyname('CYMF').AsString); + MPRTKZ.Text:=Trim(ADOTemp.fieldbyname('CYKZ').AsString); + end else + if ADOTemp.RecordCount>1 then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from CP_YDang where CYNo='''+Trim(OrdDefStr1.Text)+''''); + Open; + end; + if ADOTemp.RecordCount=1 then + begin + MPRTCodeName.Text:=Trim(ADOTemp.fieldbyname('CYName').AsString); + MPRTCF.Text:=Trim(ADOTemp.fieldbyname('CYECF').AsString); + MPRTSpec.Text:=Trim(ADOTemp.fieldbyname('CYSpec').AsString); + MPRTMF.Text:=Trim(ADOTemp.fieldbyname('CYMF').AsString); + MPRTKZ.Text:=Trim(ADOTemp.fieldbyname('CYKZ').AsString); + end; + end; + + end; +end; + +procedure TfrmOrderInPutJZC.OrdDefStr2BtnUpClick(Sender: TObject); +var + fsj:string; + FWZ:Integer; +begin + fsj:=Trim(TEdit(Sender).Hint); + FWZ:=Pos('/',fsj); + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Copy(fsj,1,FWZ-1); + flagname:=Copy(fsj,FWZ+1,Length(fsj)-fwz); + if Trim(flag)='OrdDefStr2' then + begin + //flag:='OrdDefStr2'; + V1Name.Caption:=''; + V1Note.Caption:='Ӣ'; + fnote:=True; + end; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutJZC.ConNoKeyPress(Sender: TObject; var Key: Char); +var + ConMainId:string; +begin + if Key=#13 then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrderCon_Main where ConNo like '''+'%'+Trim(ConNo.Text)+'%'+''''); + Open; + end; + if ADOTemp.RecordCount>1 then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrderCon_Main where ConNo='''+Trim(ConNo.Text)+''''); + Open; + end; + if ADOTemp.IsEmpty then Exit; + end else + if ADOTemp.RecordCount=1 then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrderCon_Main where ConNo like '''+'%'+Trim(ConNo.Text)+'%'+''''); + Open; + end; + end; + begin + ConNo.Text:=Trim(ADOTemp.fieldbyname('ConNo').AsString); + OrdDefStr1.Text:=Trim(ADOTemp.fieldbyname('ConDefStr1').AsString); + MPRTCF.Text:=Trim(ADOTemp.fieldbyname('MPRTCF').AsString); + MPRTSpec.Text:=Trim(ADOTemp.fieldbyname('MPRTSpec').AsString); + MPRTMF.Text:=Trim(ADOTemp.fieldbyname('MPRTMF').AsString); + MPRTKZ.Text:=Trim(ADOTemp.fieldbyname('MPRTKZ').AsString); + CustomerNoName.Text:=Trim(ADOTemp.fieldbyname('CustomerNoName').AsString); + CustomerNoName.TxtCode:=Trim(ADOTemp.fieldbyname('CustomerNo').AsString); + ConMainId:=Trim(ADOTemp.fieldbyname('MainId').AsString); + // ConGS:=Trim(ADOTemp.fieldbyname('SYRName').AsString); + OrdDefStr2.Text:=Trim(ADOTemp.fieldbyname('ConDefStr2').AsString); + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select A.*,ColorName=(select ZdyName from KH_Zdy B where B.Note=A.PRTColor and B.Type=''OrdColor'' ) '); + SQL.Add(' from JYOrderCon_Sub A where MainId='''+Trim(ConMainId)+''''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + with Order_Sub do + begin + Append; + FieldByName('PRTColor').Value:=Trim(ADOTemp.fieldbyname('PRTColor').AsString); + FieldByName('SOrdDefStr4').Value:=Trim(ADOTemp.fieldbyname('SOrdDefStr4').AsString); + FieldByName('SOrdDefStr3').Value:=Trim(ADOTemp.fieldbyname('SOrdDefStr3').AsString); + FieldByName('PRTOrderQty').Value:=Trim(ADOTemp.fieldbyname('PRTOrderQty').AsString); + FieldByName('OrderUnit').Value:=Trim(ADOTemp.fieldbyname('OrderUnit').AsString); + FieldByName('PRTPrice').Value:=Trim(ADOTemp.fieldbyname('PRTPrice').AsString); + FieldByName('PriceUnit').Value:=Trim(ADOTemp.fieldbyname('PriceUnit').AsString); + FieldByName('PRTHX').Value:=Trim(ADOTemp.fieldbyname('PRTHX').AsString); + FieldByName('XHNO').Value:=Trim(ADOTemp.fieldbyname('XHNO').AsString); + Post; + end; + Next; + end; + end; + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from CP_YDang where CYNO='''+Trim(OrdDefStr1.Text)+''''); + Open; + end; + MPRTCodeName.Text:=Trim(ADOTemp.fieldbyname('CYName').AsString); + {with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from KH_Zdy where Note='''+Trim(ConGS)+''' and type=''OrdDefStr2'' '); + Open; + end; + OrdDefStr2.Text:=Trim(ADOTemp.fieldbyname('ZdyName').AsString); } + end; + + end; +end; + +procedure TfrmOrderInPutJZC.ToolButton3Click(Sender: TObject); +begin + if Order_Sub.IsEmpty then Exit; + OneKeyPost(Tv1,Order_Sub); +end; + +end. diff --git a/艾登贸易管理/U_OrderInPutNew.dfm b/艾登贸易管理/U_OrderInPutNew.dfm new file mode 100644 index 0000000..628c497 --- /dev/null +++ b/艾登贸易管理/U_OrderInPutNew.dfm @@ -0,0 +1,2155 @@ +object frmOrderInPutNew: TfrmOrderInPutNew + Left = 58 + Top = 45 + Width = 1185 + Height = 670 + Caption = #25351#31034#21333#24405#20837 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnClose = FormClose + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1177 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_WFBProducttion.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 29 + Width = 1177 + Height = 295 + Align = alTop + BevelInner = bvNone + BevelOuter = bvNone + Color = clBtnFace + Ctl3D = False + ParentColor = False + ParentCtl3D = False + TabOrder = 1 + object Label1: TLabel + Left = 24 + Top = 15 + Width = 60 + Height = 12 + Caption = #32534' '#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 955 + Top = 47 + Width = 67 + Height = 12 + Caption = #20195' '#21495#65306 + Enabled = False + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label3: TLabel + Left = 927 + Top = 15 + Width = 65 + Height = 12 + Caption = #19979#21333#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 469 + Top = 49 + Width = 52 + Height = 12 + Caption = #29983#20135#32447#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 708 + Top = 47 + Width = 52 + Height = 12 + Caption = #32593#32467#26500#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 956 + Top = 148 + Width = 15 + Height = 98 + Caption = #27880#13#10#13#10#24847#13#10#13#10#20107#13#10#13#10#39033 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 469 + Top = 15 + Width = 53 + Height = 12 + Caption = #23458' '#25143#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 708 + Top = 15 + Width = 52 + Height = 12 + Caption = #21040#36798#28207#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 972 + Top = 51 + Width = 39 + Height = 12 + Caption = #20811#37325#65306 + Enabled = False + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label10: TLabel + Left = 1004 + Top = 51 + Width = 67 + Height = 12 + Caption = #33457' '#32441#65306 + Enabled = False + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label11: TLabel + Left = 1020 + Top = 48 + Width = 23 + Height = 15 + Caption = 'g/'#13217 + Enabled = False + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label14: TLabel + Left = 982 + Top = 51 + Width = 53 + Height = 12 + Caption = #24133' '#23485#65306 + Enabled = False + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label15: TLabel + Left = 1018 + Top = 47 + Width = 18 + Height = 15 + Caption = 'cm' + Enabled = False + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label16: TLabel + Left = 24 + Top = 45 + Width = 65 + Height = 12 + Caption = #39044#20272#25968#37327#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label17: TLabel + Left = 252 + Top = 49 + Width = 65 + Height = 12 + Caption = #35745#20215#21333#20301#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 23 + Top = 68 + Width = 1140 + Height = 12 + Caption = + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -' + Enabled = False + Font.Charset = GB2312_CHARSET + Font.Color = clFuchsia + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label20: TLabel + Left = 23 + Top = 116 + Width = 1146 + Height = 12 + Caption = + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + Font.Charset = GB2312_CHARSET + Font.Color = clFuchsia + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label21: TLabel + Left = 25 + Top = 88 + Width = 34 + Height = 12 + Caption = 'ETA'#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label22: TLabel + Left = 257 + Top = 90 + Width = 34 + Height = 12 + Caption = 'ETD'#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label23: TLabel + Left = 491 + Top = 89 + Width = 39 + Height = 12 + Caption = #35013#26588#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label24: TLabel + Left = 711 + Top = 88 + Width = 53 + Height = 12 + Caption = #20837' '#24211#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label25: TLabel + Left = 966 + Top = 89 + Width = 39 + Height = 12 + Caption = #29983#20135#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label26: TLabel + Left = 221 + Top = 88 + Width = 13 + Height = 15 + Caption = #22825 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label27: TLabel + Left = 165 + Top = 88 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label28: TLabel + Left = 238 + Top = 88 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label29: TLabel + Left = 455 + Top = 88 + Width = 13 + Height = 15 + Caption = #22825 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label30: TLabel + Left = 400 + Top = 88 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label31: TLabel + Left = 472 + Top = 88 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 936 + Top = 88 + Width = 13 + Height = 15 + Caption = #22825 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label32: TLabel + Left = 881 + Top = 88 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label33: TLabel + Left = 950 + Top = 88 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 23 + Top = 278 + Width = 1152 + Height = 12 + Caption = + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + Font.Charset = GB2312_CHARSET + Font.Color = clFuchsia + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label7: TLabel + Left = 766 + Top = 140 + Width = 15 + Height = 98 + Caption = #25171#13#10#13#10#21253#13#10#13#10#35814#13#10#13#10#32454 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label40: TLabel + Left = 23 + Top = 140 + Width = 15 + Height = 98 + Caption = #35814#13#10#13#10#13#10#13#10#13#10#13#10#21333 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label41: TLabel + Left = 252 + Top = 15 + Width = 66 + Height = 12 + Caption = #35746' '#21333' '#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object OrderNo: TEdit + Left = 314 + Top = 13 + Width = 115 + Height = 18 + Enabled = False + TabOrder = 0 + end + object OrderDate: TDateTimePicker + Left = 993 + Top = 12 + Width = 120 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + Enabled = False + TabOrder = 1 + end + object WFBCodeName: TcxButtonEdit + Left = 962 + Top = 43 + Enabled = False + ParentShowHint = False + Properties.BeepOnError = True + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = WFBCodeNamePropertiesButtonClick + Properties.OnChange = WFBCodeNamePropertiesChange + ShowHint = False + TabOrder = 2 + Visible = False + OnKeyDown = WFBCodeNameKeyDown + Width = 111 + end + object SCXName: TcxButtonEdit + Left = 519 + Top = 45 + Hint = 'FactoryNo1' + BeepOnEnter = False + Enabled = False + ParentShowHint = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = SCXNamePropertiesButtonClick + Properties.OnChange = SCXNamePropertiesChange + ShowHint = False + TabOrder = 3 + OnKeyDown = WFBCodeNameKeyDown + Width = 130 + end + object WJGName: TcxButtonEdit + Left = 757 + Top = 42 + Hint = 'FactoryNo2' + BeepOnEnter = False + Enabled = False + ParentShowHint = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = WJGNamePropertiesButtonClick + Properties.OnChange = WJGNamePropertiesChange + ShowHint = False + TabOrder = 4 + OnKeyDown = WFBCodeNameKeyDown + Width = 117 + end + object CustomNoName: TcxButtonEdit + Left = 519 + Top = 12 + Hint = 'CustomerNo' + BeepOnEnter = False + Enabled = False + ParentShowHint = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = CustomNoNamePropertiesButtonClick + Properties.OnChange = CustomNoNamePropertiesChange + ShowHint = False + TabOrder = 5 + OnKeyDown = WFBCodeNameKeyDown + Width = 129 + end + object Note: TRichEdit + Left = 973 + Top = 126 + Width = 140 + Height = 152 + Enabled = False + TabOrder = 6 + end + object ArrivalPortName: TcxButtonEdit + Left = 757 + Top = 12 + BeepOnEnter = False + Enabled = False + ParentShowHint = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = ArrivalPortNamePropertiesButtonClick + Properties.OnChange = ArrivalPortNamePropertiesChange + ShowHint = False + TabOrder = 7 + OnKeyDown = WFBCodeNameKeyDown + Width = 117 + end + object WFBKZ: TEdit + Left = 962 + Top = 48 + Width = 101 + Height = 18 + Enabled = False + TabOrder = 8 + Visible = False + OnChange = OrdQtyChange + OnKeyPress = OrdQtyKeyPress + end + object WFBHW: TEdit + Left = 990 + Top = 48 + Width = 48 + Height = 18 + Enabled = False + TabOrder = 9 + Visible = False + end + object WFBFK: TEdit + Left = 967 + Top = 48 + Width = 92 + Height = 18 + Enabled = False + TabOrder = 10 + Visible = False + OnKeyPress = OrdQtyKeyPress + end + object OrdQty: TEdit + Left = 86 + Top = 42 + Width = 62 + Height = 18 + Enabled = False + ReadOnly = True + TabOrder = 11 + OnKeyPress = OrdQtyKeyPress + end + object OrdUnit: TComboBox + Left = 149 + Top = 42 + Width = 53 + Height = 20 + Style = csDropDownList + Ctl3D = False + Enabled = False + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 12 + ParentCtl3D = False + ParentFont = False + TabOrder = 12 + OnChange = OrdQtyChange + Items.Strings = ( + #13199 + #13217) + end + object ETADate: TDateTimePicker + Left = 57 + Top = 85 + Width = 104 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + Enabled = False + TabOrder = 13 + OnChange = ETADateChange + end + object ETDDate: TDateTimePicker + Left = 291 + Top = 85 + Width = 104 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + Enabled = False + TabOrder = 14 + end + object ZGDate: TDateTimePicker + Left = 527 + Top = 85 + Width = 123 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + Enabled = False + TabOrder = 15 + end + object BegRKDate: TDateTimePicker + Left = 762 + Top = 85 + Width = 115 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + Enabled = False + TabOrder = 16 + OnChange = BegRKDateChange + end + object BegSCDate: TDateTimePicker + Left = 1000 + Top = 85 + Width = 113 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + Enabled = False + TabOrder = 17 + end + object Day1: TEdit + Left = 184 + Top = 87 + Width = 35 + Height = 18 + Enabled = False + TabOrder = 18 + OnChange = Day1Change + OnKeyPress = OrdQtyKeyPress + end + object Day2: TEdit + Left = 418 + Top = 87 + Width = 35 + Height = 18 + Enabled = False + TabOrder = 19 + OnChange = Day2Change + OnKeyPress = OrdQtyKeyPress + end + object Day3: TEdit + Left = 899 + Top = 87 + Width = 35 + Height = 18 + Enabled = False + TabOrder = 20 + OnChange = Day3Change + OnKeyPress = OrdQtyKeyPress + end + object cxGrid4: TcxGrid + Left = 784 + Top = 128 + Width = 169 + Height = 151 + PopupMenu = PopupMenu1 + TabOrder = 21 + object TVDB: TcxGridDBTableView + PopupMenu = PopupMenu1 + OnKeyPress = TVZDYKeyPress + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TVZDYCellDblClick + DataController.DataSource = DataSource3 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + object cxGridDBColumn1: TcxGridDBColumn + Caption = #21253#25968#37327 + DataBinding.FieldName = 'BSL' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.handBlack + Width = 48 + end + object VDBColumn1: TcxGridDBColumn + Caption = #21367#25968#37327 + DataBinding.FieldName = 'JSL' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 49 + end + object VDBColumn2: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'DBUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 55 + end + end + object cxGridLevel3: TcxGridLevel + GridView = TVDB + end + end + object cxGrid5: TcxGrid + Left = 40 + Top = 127 + Width = 722 + Height = 154 + PopupMenu = PopupMenu1 + TabOrder = 22 + object TvSub: TcxGridDBTableView + PopupMenu = PopupMenu2 + OnKeyPress = TVZDYKeyPress + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = TvSubColumn1 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBProducttion.SHuangSe + Styles.IncSearch = DataLink_WFBProducttion.SHuangSe + Styles.Selection = DataLink_WFBProducttion.SHuangSe + object vSubColumn3: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'XHNO' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 31 + end + object vSubColumn9: TcxGridDBColumn + Tag = 9 + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 37 + end + object vSubColumn4: TcxGridDBColumn + Caption = #20135#21697#20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = vSubColumn4PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.FonePurple + Width = 82 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 48 + end + object vSubColumn2: TcxGridDBColumn + Caption = #33457#32441 + DataBinding.FieldName = 'SWFBHW' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = vSubColumn2PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 51 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #20811#37325'g/'#13217 + DataBinding.FieldName = 'SWFBKZ' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 64 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #24133#23485'cm' + DataBinding.FieldName = 'SWFBFK' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 52 + end + object TvSubColumn1: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'SOrdQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = TvSubColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 61 + end + object vSubColumn5: TcxGridDBColumn + Caption = #32593#23380#30446#25968 + DataBinding.FieldName = 'WKMS' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = vSubColumn5PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 64 + end + object vSubColumn6: TcxGridDBColumn + Caption = #21367#22343#37325#19979#38480 + DataBinding.FieldName = 'KZSmal' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 75 + end + object vSubColumn7: TcxGridDBColumn + Caption = #21367#22343#37325#19978#38480 + DataBinding.FieldName = 'KZBig' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 73 + end + end + object cxGridLevel4: TcxGridLevel + GridView = TvSub + end + end + object PanZDY: TPanel + Left = 907 + Top = 120 + Width = 151 + Height = 153 + TabOrder = 23 + Visible = False + object CXGridZDY: TcxGrid + Left = 3 + Top = 4 + Width = 142 + Height = 113 + TabOrder = 0 + object TVZDY: TcxGridDBTableView + OnKeyPress = TVZDYKeyPress + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TVZDYCellDblClick + DataController.DataSource = DataSource2 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + object VHelpZDYName: TcxGridDBColumn + DataBinding.FieldName = 'ZDYName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.handBlack + Width = 129 + IsCaptionAssigned = True + end + end + object CXGridZDYLevel1: TcxGridLevel + GridView = TVZDY + end + end + object Button1: TButton + Left = 40 + Top = 120 + Width = 65 + Height = 25 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button1Click + end + end + object OrderCode: TEdit + Left = 83 + Top = 13 + Width = 118 + Height = 18 + Enabled = False + TabOrder = 24 + end + object BZ: TcxButtonEdit + Left = 314 + Top = 45 + BeepOnEnter = False + Enabled = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = BZPropertiesButtonClick + Properties.OnChange = BZPropertiesChange + TabOrder = 25 + OnKeyDown = WFBCodeNameKeyDown + Width = 118 + end + end + object ScrollBox2: TScrollBox + Left = 0 + Top = 324 + Width = 1177 + Height = 309 + Align = alClient + BevelInner = bvNone + BevelOuter = bvNone + Ctl3D = False + ParentCtl3D = False + TabOrder = 2 + object cxGrid3: TcxGrid + Left = 809 + Top = 31 + Width = 366 + Height = 276 + Align = alLeft + TabOrder = 0 + object Tv3: TcxGridDBBandedTableView + PopupMenu = PopupMenu4 + OnMouseDown = Tv3MouseDown + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSourceQ + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'YCLCode' + Column = v3Column1 + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Bands = < + item + Caption = #20854#23427 + Styles.Header = DataLink_WFBProducttion.TextSHuangSe + Width = 400 + end> + object v3Column1: TcxGridDBBandedColumn + Caption = #29289#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v3Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 51 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v3Column2: TcxGridDBBandedColumn + Caption = #35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 41 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object v3Column3: TcxGridDBBandedColumn + Caption = #24211#23384 + DataBinding.FieldName = 'YLKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 45 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object v3Column4: TcxGridDBBandedColumn + Caption = #29992#37327 + DataBinding.FieldName = 'YLQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v3Column4PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 49 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object v3Column5: TcxGridDBBandedColumn + Caption = #21333#20301 + DataBinding.FieldName = 'YLUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 37 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object v3Column6: TcxGridDBBandedColumn + Caption = #30003#36141#25968#37327 + DataBinding.FieldName = 'SGQty' + HeaderAlignmentHorz = taCenter + Width = 62 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object v3Column7: TcxGridDBBandedColumn + Caption = #21069#21333#24211#23384 + DataBinding.FieldName = 'YCLYJKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 48 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object v3Column8: TcxGridDBBandedColumn + Tag = 2 + Caption = #19981#36275 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 32 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object v3Column9: TcxGridDBBandedColumn + Tag = 9 + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + HeaderAlignmentHorz = taCenter + Width = 35 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + object cxGrid2: TcxGrid + Left = 425 + Top = 31 + Width = 384 + Height = 276 + Align = alLeft + TabOrder = 1 + object Tv2: TcxGridDBBandedTableView + PopupMenu = PopupMenu4 + OnMouseDown = Tv2MouseDown + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSourceF + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'YCLCode' + Column = v2Column1 + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Bands = < + item + Caption = #36741#21161#21407#26009 + Styles.Header = DataLink_WFBProducttion.FonePurple + Width = 428 + end> + object v2Column1: TcxGridDBBandedColumn + Caption = #21407#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 63 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v2Column2: TcxGridDBBandedColumn + Caption = #32791#29575#8240 + DataBinding.FieldName = 'YLSHQ' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 39 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object v2Column3: TcxGridDBBandedColumn + Caption = #29992#37327'KG' + DataBinding.FieldName = 'YLQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 41 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object v2Column4: TcxGridDBBandedColumn + Caption = #24211#23384 + DataBinding.FieldName = 'YLKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 35 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object v2Column5: TcxGridDBBandedColumn + Caption = #35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 58 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object v2Column6: TcxGridDBBandedColumn + Caption = #30003#36141#25968#37327 + DataBinding.FieldName = 'SGQty' + HeaderAlignmentHorz = taCenter + Width = 70 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object v2Column7: TcxGridDBBandedColumn + Caption = #21069#21333#24211#23384 + DataBinding.FieldName = 'YCLYJKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 56 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object v2Column8: TcxGridDBBandedColumn + Tag = 2 + Caption = #19981#36275 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Width = 32 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object v2Column9: TcxGridDBBandedColumn + Tag = 9 + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 34 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 31 + Width = 425 + Height = 276 + Align = alLeft + TabOrder = 2 + object Tv1: TcxGridDBBandedTableView + PopupMenu = PopupMenu4 + OnMouseDown = Tv1MouseDown + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSourceZ + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'YCLCode' + Column = v1Column1 + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Bands = < + item + Caption = #20027#35201#21407#26009 + Styles.Header = DataLink_WFBProducttion.FontBlue + Width = 487 + end> + object v1Column1: TcxGridDBBandedColumn + Caption = #21407#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v1Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 72 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v1Column2: TcxGridDBBandedColumn + Caption = #37197#27604'%' + DataBinding.FieldName = 'YLPB' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 38 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object v1Column3: TcxGridDBBandedColumn + Caption = #25439#32791'%' + DataBinding.FieldName = 'YLSH' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column3PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 40 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object v1Column4: TcxGridDBBandedColumn + Caption = #29992#37327'KG' + DataBinding.FieldName = 'YLQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 44 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object v1Column5: TcxGridDBBandedColumn + Caption = #24211#23384 + DataBinding.FieldName = 'YLKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 40 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object v1Column6: TcxGridDBBandedColumn + Caption = #35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 56 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object v1Column7: TcxGridDBBandedColumn + Caption = #30003#36141#25968#37327 + DataBinding.FieldName = 'SGQty' + HeaderAlignmentHorz = taCenter + Width = 65 + Position.BandIndex = 0 + Position.ColIndex = 9 + Position.RowIndex = 0 + end + object v1Column8: TcxGridDBBandedColumn + Caption = #21069#21333#24211#23384 + DataBinding.FieldName = 'YCLYJKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 58 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object v1Column9: TcxGridDBBandedColumn + Tag = 2 + Caption = #19981#36275 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Content = DataLink_WFBProducttion.FoneRed + Width = 39 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object v1Column10: TcxGridDBBandedColumn + Tag = 9 + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 35 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 0 + Width = 1175 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_WFBProducttion.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 3 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + object TBPrint: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #25171#21360#35831#36141#21333 + ImageIndex = 96 + OnClick = TBPrintClick + end + end + object Panel1: TPanel + Left = 1152 + Top = -16 + Width = 825 + Height = 297 + TabOrder = 4 + Visible = False + object cxGrid6: TcxGrid + Left = 11 + Top = 32 + Width = 299 + Height = 209 + PopupMenu = PopupMenu1 + TabOrder = 0 + object Tvsel: TcxGridDBTableView + PopupMenu = PopupMenu3 + OnKeyPress = TVZDYKeyPress + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DSSel + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + object vselColumn1: TcxGridDBColumn + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.FonePurple + Width = 42 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 61 + end + object cxGridDBColumn7: TcxGridDBColumn + Caption = #33457#32441 + DataBinding.FieldName = 'SWFBHW' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = vSubColumn2PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.FonePurple + Width = 51 + end + object cxGridDBColumn8: TcxGridDBColumn + Caption = #20811#37325'g/'#13217 + DataBinding.FieldName = 'SWFBKZ' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.handBlack + Width = 72 + end + object cxGridDBColumn9: TcxGridDBColumn + Caption = #24133#23485'cm' + DataBinding.FieldName = 'SWFBFK' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 52 + end + end + object cxGridLevel5: TcxGridLevel + GridView = Tvsel + end + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 823 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #36873#21333 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 789 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object Button2: TButton + Left = 64 + Top = 251 + Width = 65 + Height = 25 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Button2Click + end + object Button3: TButton + Left = 168 + Top = 251 + Width = 49 + Height = 25 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = Button3Click + end + object cxGrid7: TcxGrid + Left = 312 + Top = 32 + Width = 505 + Height = 257 + TabOrder = 4 + object TVKCSel: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource4 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'DefStr1' + end + item + Format = 'DefStr2' + Column = v1ShortName + end + item + Format = 'RollUnit' + Column = v1UnitName + end + item + Format = 'YCLCode' + Column = v1P_ChnName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Quantity + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_WFBProducttion.Default + object TVKCSelColumn1: TcxGridDBColumn + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taRightJustify + Width = 39 + end + object v1P_ChnName: TcxGridDBColumn + Tag = 2 + Caption = #29289#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 80 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 63 + end + object v1ShortName: TcxGridDBColumn + Caption = #20379#24212#21830 + DataBinding.FieldName = 'GYSName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 68 + end + object v1Quantity: TcxGridDBColumn + Tag = 2 + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'KCQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 70 + end + object VKCSelColumn2: TcxGridDBColumn + Caption = #39044#35745#29992#37327 + DataBinding.FieldName = 'YJYL' + HeaderAlignmentHorz = taCenter + Width = 57 + end + object VKCSelColumn1: TcxGridDBColumn + Caption = #39044#35745#24211#23384 + DataBinding.FieldName = 'YJKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 65 + end + object v1UnitName: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'KCUint' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 45 + end + end + object cxGridLevel6: TcxGridLevel + GridView = TVKCSel + end + end + end + end + object ADOTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 704 + Top = 309 + end + object DataSourceZ: TDataSource + DataSet = Order_SubZ + Left = 296 + Top = 440 + end + object Order_SubZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 256 + Top = 440 + end + object DataSource2: TDataSource + DataSet = ADOZDY + Left = 760 + Top = 8 + end + object ADOZDY: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 728 + Top = 5 + end + object CDS_ZDY: TClientDataSet + Aggregates = <> + Params = <> + Left = 800 + Top = 8 + end + object ADOQuery1: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 784 + Top = 309 + end + object PopupMenu1: TPopupMenu + Left = 544 + Top = 253 + object N1: TMenuItem + Caption = #22686#34892 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #21024#34892 + OnClick = N2Click + end + end + object DataSource3: TDataSource + DataSet = CDS_DB + Left = 544 + Top = 200 + end + object CDS_DB: TClientDataSet + Aggregates = <> + Params = <> + Left = 480 + Top = 224 + end + object Order_SubF: TClientDataSet + Aggregates = <> + Params = <> + Left = 696 + Top = 496 + end + object DataSourceF: TDataSource + DataSet = Order_SubF + Left = 656 + Top = 496 + end + object Order_SubQ: TClientDataSet + Aggregates = <> + Params = <> + Left = 1096 + Top = 440 + end + object DataSourceQ: TDataSource + DataSet = Order_SubQ + Left = 1096 + Top = 472 + end + object ADOQueryQG: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 480 + Top = 309 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryQG + Left = 448 + Top = 320 + end + object RM2: 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 392 + Top = 312 + ReportData = {} + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 456 + Top = 312 + end + object PopupMenu2: TPopupMenu + Left = 128 + Top = 237 + object MenuItem1: TMenuItem + Caption = #22686#34892 + OnClick = MenuItem1Click + end + object MenuItem2: TMenuItem + Caption = #21024#34892 + OnClick = MenuItem2Click + end + object N3: TMenuItem + Caption = #20840#36873 + OnClick = N3Click + end + object N4: TMenuItem + Caption = #20840#24323 + OnClick = N4Click + end + end + object DataSource1: TDataSource + DataSet = CDS_Sub + Left = 112 + Top = 200 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 96 + Top = 232 + end + object DSSel: TDataSource + DataSet = CDS_Sel + Left = 440 + Top = 376 + end + object CDS_Sel: TClientDataSet + Aggregates = <> + Params = <> + Left = 424 + Top = 408 + end + object ADOCMD: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 688 + Top = 309 + end + object PopupMenu3: TPopupMenu + Left = 528 + Top = 445 + object MenuItem3: TMenuItem + Caption = #20840#36873 + OnClick = MenuItem3Click + end + object MenuItem4: TMenuItem + Caption = #20840#24323 + OnClick = MenuItem4Click + end + end + object CDS_KCSel: TClientDataSet + Aggregates = <> + Params = <> + Left = 712 + Top = 432 + end + object DataSource4: TDataSource + DataSet = CDS_KCSel + Left = 672 + Top = 432 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 160 + Top = 454 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 160 + Top = 494 + end + object cxGridPopupMenu3: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 160 + Top = 534 + end + object cxGridPopupMenu4: TcxGridPopupMenu + Grid = cxGrid4 + PopupMenus = <> + Left = 120 + Top = 502 + end + object cxGridPopupMenu5: TcxGridPopupMenu + Grid = cxGrid5 + PopupMenus = <> + Left = 120 + Top = 465 + end + object PopupMenu4: TPopupMenu + Left = 216 + Top = 477 + object MenuItem7: TMenuItem + Caption = #20840#36873 + OnClick = MenuItem7Click + end + object MenuItem8: TMenuItem + Caption = #20840#24323 + OnClick = MenuItem8Click + end + end +end diff --git a/艾登贸易管理/U_OrderInPutNew.pas b/艾登贸易管理/U_OrderInPutNew.pas new file mode 100644 index 0000000..078d860 --- /dev/null +++ b/艾登贸易管理/U_OrderInPutNew.pas @@ -0,0 +1,2945 @@ +unit U_OrderInPutNew; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer, + cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB, + ExtCtrls, BtnEdit, cxCalendar, cxGridBandedTableView, + cxGridDBBandedTableView, Menus, RM_Common, RM_Class, RM_e_Xls, + RM_GridReport, RM_System, RM_Dataset, cxCheckBox, cxGridCustomPopupMenu, + cxGridPopupMenu; + +type + TfrmOrderInPutNew = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ScrollBox1: TScrollBox; + Label1: TLabel; + Label2: TLabel; + Label3: TLabel; + OrderNo: TEdit; + OrderDate: TDateTimePicker; + Label5: TLabel; + Label6: TLabel; + Label8: TLabel; + ADOTemp: TADOQuery; + DataSourceZ: TDataSource; + Order_SubZ: TClientDataSet; + DataSource2: TDataSource; + ADOZDY: TADOQuery; + CDS_ZDY: TClientDataSet; + WFBCodeName: TcxButtonEdit; + SCXName: TcxButtonEdit; + WJGName: TcxButtonEdit; + ADOQuery1: TADOQuery; + Label12: TLabel; + CustomNoName: TcxButtonEdit; + Note: TRichEdit; + Label13: TLabel; + ArrivalPortName: TcxButtonEdit; + Label9: TLabel; + WFBKZ: TEdit; + Label10: TLabel; + WFBHW: TEdit; + Label11: TLabel; + Label14: TLabel; + WFBFK: TEdit; + Label15: TLabel; + Label16: TLabel; + OrdQty: TEdit; + OrdUnit: TComboBox; + Label17: TLabel; + Label19: TLabel; + Label20: TLabel; + Label21: TLabel; + ETADate: TDateTimePicker; + Label22: TLabel; + ETDDate: TDateTimePicker; + Label23: TLabel; + ZGDate: TDateTimePicker; + Label24: TLabel; + BegRKDate: TDateTimePicker; + Label25: TLabel; + BegSCDate: TDateTimePicker; + Day1: TEdit; + Label26: TLabel; + Label27: TLabel; + Label28: TLabel; + Day2: TEdit; + Label29: TLabel; + Label30: TLabel; + Label31: TLabel; + Day3: TEdit; + Label18: TLabel; + Label32: TLabel; + Label33: TLabel; + Label4: TLabel; + Label7: TLabel; + cxGrid4: TcxGrid; + TVDB: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridLevel3: TcxGridLevel; + VDBColumn1: TcxGridDBColumn; + VDBColumn2: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + DataSource3: TDataSource; + CDS_DB: TClientDataSet; + Order_SubF: TClientDataSet; + DataSourceF: TDataSource; + Order_SubQ: TClientDataSet; + DataSourceQ: TDataSource; + ScrollBox2: TScrollBox; + cxGrid3: TcxGrid; + Tv3: TcxGridDBBandedTableView; + v3Column1: TcxGridDBBandedColumn; + v3Column2: TcxGridDBBandedColumn; + v3Column3: TcxGridDBBandedColumn; + v3Column4: TcxGridDBBandedColumn; + v3Column5: TcxGridDBBandedColumn; + cxGridLevel2: TcxGridLevel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBBandedTableView; + v2Column1: TcxGridDBBandedColumn; + v2Column2: TcxGridDBBandedColumn; + v2Column3: TcxGridDBBandedColumn; + v2Column4: TcxGridDBBandedColumn; + v2Column5: TcxGridDBBandedColumn; + cxGridLevel1: TcxGridLevel; + cxGrid1: TcxGrid; + Tv1: TcxGridDBBandedTableView; + v1Column1: TcxGridDBBandedColumn; + v1Column2: TcxGridDBBandedColumn; + v1Column3: TcxGridDBBandedColumn; + v1Column4: TcxGridDBBandedColumn; + v1Column5: TcxGridDBBandedColumn; + v1Column6: TcxGridDBBandedColumn; + cxGrid1Level1: TcxGridLevel; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + TBPrint: TToolButton; + v1Column7: TcxGridDBBandedColumn; + v2Column6: TcxGridDBBandedColumn; + v3Column6: TcxGridDBBandedColumn; + v1Column8: TcxGridDBBandedColumn; + v2Column7: TcxGridDBBandedColumn; + v3Column7: TcxGridDBBandedColumn; + v1Column9: TcxGridDBBandedColumn; + v2Column8: TcxGridDBBandedColumn; + v3Column8: TcxGridDBBandedColumn; + ADOQueryQG: TADOQuery; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + RMXLSExport1: TRMXLSExport; + Label40: TLabel; + cxGrid5: TcxGrid; + TvSub: TcxGridDBTableView; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridLevel4: TcxGridLevel; + PanZDY: TPanel; + CXGridZDY: TcxGrid; + TVZDY: TcxGridDBTableView; + VHelpZDYName: TcxGridDBColumn; + CXGridZDYLevel1: TcxGridLevel; + Button1: TButton; + TvSubColumn1: TcxGridDBColumn; + PopupMenu2: TPopupMenu; + MenuItem1: TMenuItem; + MenuItem2: TMenuItem; + DataSource1: TDataSource; + CDS_Sub: TClientDataSet; + vSubColumn2: TcxGridDBColumn; + Label41: TLabel; + OrderCode: TEdit; + vSubColumn3: TcxGridDBColumn; + Panel1: TPanel; + cxGrid6: TcxGrid; + Tvsel: TcxGridDBTableView; + cxGridDBColumn6: TcxGridDBColumn; + cxGridDBColumn7: TcxGridDBColumn; + cxGridDBColumn8: TcxGridDBColumn; + cxGridDBColumn9: TcxGridDBColumn; + cxGridLevel5: TcxGridLevel; + vselColumn1: TcxGridDBColumn; + Panel10: TPanel; + Image2: TImage; + Button2: TButton; + Button3: TButton; + DSSel: TDataSource; + CDS_Sel: TClientDataSet; + ADOCMD: TADOQuery; + vSubColumn4: TcxGridDBColumn; + PopupMenu3: TPopupMenu; + MenuItem3: TMenuItem; + MenuItem4: TMenuItem; + vSubColumn5: TcxGridDBColumn; + vSubColumn6: TcxGridDBColumn; + vSubColumn7: TcxGridDBColumn; + BZ: TcxButtonEdit; + cxGrid7: TcxGrid; + TVKCSel: TcxGridDBTableView; + v1P_ChnName: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + v1ShortName: TcxGridDBColumn; + v1Quantity: TcxGridDBColumn; + v1UnitName: TcxGridDBColumn; + cxGridLevel6: TcxGridLevel; + TVKCSelColumn1: TcxGridDBColumn; + VKCSelColumn1: TcxGridDBColumn; + CDS_KCSel: TClientDataSet; + DataSource4: TDataSource; + VKCSelColumn2: TcxGridDBColumn; + vSubColumn9: TcxGridDBColumn; + v1Column10: TcxGridDBBandedColumn; + N3: TMenuItem; + N4: TMenuItem; + cxGridPopupMenu1: TcxGridPopupMenu; + cxGridPopupMenu2: TcxGridPopupMenu; + cxGridPopupMenu3: TcxGridPopupMenu; + cxGridPopupMenu4: TcxGridPopupMenu; + cxGridPopupMenu5: TcxGridPopupMenu; + v2Column9: TcxGridDBBandedColumn; + v3Column9: TcxGridDBBandedColumn; + PopupMenu4: TPopupMenu; + MenuItem7: TMenuItem; + MenuItem8: TMenuItem; + procedure TBCloseClick(Sender: TObject); + procedure TVZDYCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button1Click(Sender: TObject); + procedure WFBCodeNameKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); + procedure TVZDYKeyPress(Sender: TObject; var Key: Char); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure CustomNoNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure CustomNoNamePropertiesChange(Sender: TObject); + procedure ArrivalPortNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure SCXNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WJGNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WFBCodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WFBCodeNamePropertiesChange(Sender: TObject); + procedure ArrivalPortNamePropertiesChange(Sender: TObject); + procedure SCXNamePropertiesChange(Sender: TObject); + procedure WJGNamePropertiesChange(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure Day1Change(Sender: TObject); + procedure OrdQtyKeyPress(Sender: TObject; var Key: Char); + procedure Day2Change(Sender: TObject); + procedure Day3Change(Sender: TObject); + procedure ETADateChange(Sender: TObject); + procedure BegRKDateChange(Sender: TObject); + procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv3MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure v1Column2PropertiesEditValueChanged(Sender: TObject); + procedure v1Column3PropertiesEditValueChanged(Sender: TObject); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure OrdQtyChange(Sender: TObject); + procedure v3Column4PropertiesEditValueChanged(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v3Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure MenuItem1Click(Sender: TObject); + procedure MenuItem2Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure vSubColumn2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBColumn2PropertiesEditValueChanged(Sender: TObject); + procedure TvSubColumn1PropertiesEditValueChanged(Sender: TObject); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, + Y: Integer); + procedure Image2Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure vSubColumn4PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure MenuItem3Click(Sender: TObject); + procedure MenuItem4Click(Sender: TObject); + procedure vSubColumn5PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure BZPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure BZPropertiesChange(Sender: TObject); + procedure TBChkOkClick(Sender: TObject); + procedure TBChkNoClick(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure N3Click(Sender: TObject); + procedure N4Click(Sender: TObject); + procedure MenuItem7Click(Sender: TObject); + procedure MenuItem8Click(Sender: TObject); + private + MInt,ChkInt,CloInt:Integer; + + procedure InitData(); + procedure ZDYHelp(FButn:TcxButtonEdit;LType:string); + function SaveData():Boolean; + procedure DelOrderSub(FOrder_Sub:TClientDataSet); + procedure SELYCL(SCDS_Sub:TClientDataSet); + procedure EditYCL(SCDS_Sub:TClientDataSet); + function SaveData10():Boolean; + procedure SaveYCL(SCDS_Sub:TClientDataSet); + procedure YLUpdate(); + procedure UpMainId(); + function SaveDataMain():Boolean; + + function SaveDataSub():Boolean; + function SaveDataDB():Boolean; + function SaveDataPB():Boolean; + procedure SELYCLKC(SCDS_Sub:TClientDataSet); + procedure OnlyUpYCLData(); + procedure YCLPBIDUPdate(SOrder_SubZ:TClientDataSet); + procedure SelAll(SCDS_Sub:TClientDataSet;FSEL:Boolean); + { Private declarations } + public + PState,BState,CopyInt:Integer; + FMainId:String; + FXS:Integer; + { Public declarations } + end; + +var + frmOrderInPutNew: TfrmOrderInPutNew; + +implementation +uses + U_DataLink,U_ZDYHelp,U_Fun,U_GetPGJBInList; + +{$R *.dfm} + +procedure TfrmOrderInPutNew.TBCloseClick(Sender: TObject); +begin + WriteCxBandedGrid('',Tv1,'޷IJ'); + WriteCxBandedGrid('ϸ',Tv2,'޷IJ'); + WriteCxBandedGrid('',Tv3,'޷IJ'); + WriteCxGrid('ӱ',TvSub,'޷IJ'); + WriteCxGrid('',TVDB,'޷IJ'); + {if PState<>3 then + begin + if Application.MessageBox('ǷҪݣ','ʾ',32+4)=IDYES then + begin + CloInt:=1; + TBSave.Click; + Exit; + end; + end; } + Close; + +end; + +procedure TfrmOrderInPutNew.InitData(); +var + i:Integer; +begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add(' exec P_WFBOrder_List :begdate,:endate,:MainId'); + if PState>0 then + begin + ADOQuery1.Parameters.ParamByName('MainId').Value:=Trim(FMainId); + ADOQuery1.Parameters.ParamByName('begdate').Value:=''; + ADOQuery1.Parameters.ParamByName('endate').Value:=''; + end; + if PState=0 then + begin + ADOQuery1.Parameters.ParamByName('MainId').Value:=''; + ADOQuery1.Parameters.ParamByName('begdate').Value:=''; + ADOQuery1.Parameters.ParamByName('endate').Value:=''; + end; + Open; + end; + // SCreateCDS20(ADOQuery1,Order_Sub); + //SInitCDSData20(ADOQuery1,Order_Sub); + SCSHData(ADOQuery1,ScrollBox1,0); + if PState=0 then + begin + OrderDate.DateTime:=StrToDate(FormatDateTime('yyyy-MM-dd',SGetServerDateTime(ADOTemp))); + ETADate.DateTime:=OrderDate.DateTime; + ETDDate.DateTime:=OrderDate.DateTime; + ZGDate.DateTime:=OrderDate.DateTime; + BegRKDate.DateTime:=OrderDate.DateTime; + BegSCDate.DateTime:=OrderDate.DateTime; + ETADate.Checked:=False; + ETDDate.Checked:=False; + ZGDate.Checked:=False; + BegRKDate.Checked:=False; + BegSCDate.Checked:=False; + end; + if Trim(DParameters1)<>'' then + begin + {BegRKDate.Enabled:=False; + Day3.Enabled:=False; + BegSCDate.Enabled:=False; + //Note.Enabled:=False; + cxGrid4.Enabled:=False; + {MJKZX.Enabled:=False; + MJKZD.Enabled:=False; + XJKZX.Enabled:=False; + XJKZD.Enabled:=False;} + {SCXName.Enabled:=False; + WJGName.Enabled:=False; + ScrollBox2.Enabled:=False; } + end; + if PState=4 then + begin + BegRKDate.Enabled:=True; + Day3.Enabled:=True; + BegSCDate.Enabled:=True; + //Note.Enabled:=False; + cxGrid4.Enabled:=True; + {MJKZX.Enabled:=True; + MJKZD.Enabled:=True; + XJKZX.Enabled:=True; + XJKZD.Enabled:=True; } + SCXName.Enabled:=True; + WJGName.Enabled:=True; + ScrollBox2.Enabled:=True; + end; + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select * from WFB_DB where MainId='''+Trim(FMainId)+''''); + Open; + end; + SCreateCDS20(ADOQuery1,CDS_DB); + SInitCDSData20(ADOQuery1,CDS_DB); + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select * from WFBOrder_Sub where MainId='''+Trim(FMainId)+''''); + Open; + end; + SCreateCDS20(ADOQuery1,CDS_Sub); + SInitCDSData20(ADOQuery1,CDS_Sub); + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select A.*,Case when A.YLQty-A.YCLYJkc>=0 then A.YLQty-A.YCLYJkc else null end as BZ from WFBYCL_PB A where MainId='''+Trim(FMainId)+''''); + sql.Add(' and PBType=''Ҫ'' '); + Open; + end; + SCreateCDS20(ADOQuery1,Order_SubZ); + SInitCDSData20(ADOQuery1,Order_SubZ); + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select A.*,Case when A.YLQty-A.YCLYJkc>=0 then A.YLQty-A.YCLYJkc else null end as BZ from WFBYCL_PB A where MainId='''+Trim(FMainId)+''''); + sql.Add(' and PBType='''' '); + Open; + end; + SCreateCDS20(ADOQuery1,Order_SubF); + SInitCDSData20(ADOQuery1,Order_SubF); + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select A.*,Case when A.YLQty-A.YCLYJkc>=0 then A.YLQty-A.YCLYJkc else null end as BZ from WFBYCL_PB A where MainId='''+Trim(FMainId)+''''); + sql.Add(' and PBType='''' '); + Open; + end; + SCreateCDS20(ADOQuery1,Order_SubQ); + SInitCDSData20(ADOQuery1,Order_SubQ); + PanZDY.Visible:=False; + if PState=4 then + begin + PState:=0; + FMainId:='999999'; + //OrderNo.Text:=''; + WFBCodeName.Text:=''; + WFBCodeName.Hint:=''; + PanZDY.Visible:=False; + with CDS_DB do + begin + First; + while not Eof do + begin + Edit; + FieldByName('DBID').Value:=''; + Post; + Next; + end; + end; + with Order_SubZ do + begin + First; + while not Eof do + begin + Edit; + FieldByName('PBID').Value:=''; + FieldByName('YLKC').Value:=0; + FieldByName('YCLYJKC').Value:=0; + FieldByName('BZ').Value:=0; + FieldByName('SGQty').Value:=0; + Post; + Next; + end; + end; + v1Column1.Options.Focusing:=True; + with Order_SubF do + begin + First; + while not Eof do + begin + Edit; + FieldByName('PBID').Value:=''; + FieldByName('YLKC').Value:=0; + FieldByName('YCLYJKC').Value:=0; + FieldByName('BZ').Value:=0; + FieldByName('SGQty').Value:=0; + Post; + Next; + end; + end; + v2Column1.Options.Focusing:=True; + with Order_SubQ do + begin + First; + while not Eof do + begin + Edit; + FieldByName('PBID').Value:=''; + FieldByName('YLKC').Value:=0; + FieldByName('YCLYJKC').Value:=0; + FieldByName('BZ').Value:=0; + FieldByName('SGQty').Value:=0; + Post; + Next; + end; + end; + v3Column1.Options.Focusing:=True; + end; +end; + +procedure TfrmOrderInPutNew.ZDYHelp(FButn:TcxButtonEdit;LType:string); +var + FType,ZDYName,FText:String; +begin + PanZDY.Visible:=True; + PanZDY.Left:=FButn.Left; + PanZDY.Top:=FButn.Top+FButn.Height; + with ADOZDY do + begin + Filtered:=False; + Close; + SQL.Clear; + SQL.Add('select RTrim(ZDYNo) ZDYNo,RTrim(ZDYName) ZDYName from KH_ZDY where Type='''+Trim(LType)+''''); + Open; + end; + FText:=Trim(FButn.Text); + if FText<>'' then + SDofilter(ADOZDY,' ZDYName like '+QuotedStr('%'+Trim(FText)+'%')) + else + SDofilter(ADOZDY,''); + VHelpZDYName.Summary.GroupFormat:=Trim(FButn.Name); +end; + +procedure TfrmOrderInPutNew.TVZDYCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + FName:string; +begin + if ADOZDY.IsEmpty then Exit; + FName:=Trim(VHelpZDYName.Summary.GroupFormat); + TcxButtonEdit(FindComponent(FName)).Text:=Trim(ADOZDY.fieldbyname('ZDYName').AsString); + TcxButtonEdit(FindComponent(FName)).Hint:=Trim(ADOZDY.fieldbyname('ZDYNO').AsString); + PanZDY.Visible:=False; +end; + +procedure TfrmOrderInPutNew.Button1Click(Sender: TObject); +begin + PanZDY.Visible:=False; +end; + +procedure TfrmOrderInPutNew.WFBCodeNameKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if (key=vk_return) or (Key=vk_Down) then + begin + if ADOZDY.Active then + CXGridZDY.SetFocus; + end; +end; + +procedure TfrmOrderInPutNew.TVZDYKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if ADOZDY.IsEmpty then Exit; + TcxButtonEdit(FindComponent(VHelpZDYName.Summary.GroupFormat)).Text:=Trim(ADOZDY.fieldbyname('ZDYName').AsString); + TcxButtonEdit(FindComponent(VHelpZDYName.Summary.GroupFormat)).Hint:=Trim(ADOZDY.fieldbyname('ZDYNO').AsString); + PanZDY.Visible:=False; + ADOZDY.Active:=False; + end; +end; + +procedure TfrmOrderInPutNew.FormShow(Sender: TObject); +var + fsj:string; +begin + {if Trim(DParameters1)='' then + begin + TBSave.Visible:=False; + //TBChkOk.Visible:=True; + TBChkNo.Visible:=True; + end else + begin + TBSave.Visible:=True; + TBChkOk.Visible:=False; + TBChkNo.Visible:=False; + end; } + fsj:=FormatDateTime('yyyy-MM-dd',SGetServerDate(ADOTemp)); + if ( (Trim(FMainId)='') or (CopyInt=1)) then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Count(*) As SL from WFBOrder_Main where OrderDate='''+Trim(fsj)+''''); + sql.Add(' and MainId not like ''%FZ'' '); + Open; + end; + if ADOTemp.IsEmpty then + begin + fsj:=fsj+'-1' + end else + fsj:=fsj+'-'+Trim(IntToStr(ADOTemp.fieldbyname('SL').AsInteger+1)); + OrderCode.Text:=Trim(fsj); + end; + InitData(); + ReadCxBandedGrid('',Tv1,'޷IJ'); + ReadCxBandedGrid('ϸ',Tv2,'޷IJ'); + ReadCxBandedGrid('',Tv3,'޷IJ'); + ReadCxGrid('ӱ',TvSub,'޷IJ'); + ReadCxGrid('',TVDB,'޷IJ'); +end; +function TfrmOrderInPutNew.SaveDataMain():Boolean; +var + maxno,FSubId:String; +begin + try + Result:=False; + ADOCmd.Connection.BeginTrans; + /// + if Trim(FMainId)='' then + begin + if GetLSNo(ADOTemp,maxno,'','WFBOrder_Main',2,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ˮ쳣','ʾ',0); + exit; + end; + end + else begin + maxno:=Trim(FMainId); + end; + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from WFBOrder_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMainId)='' then + begin + Append; + end + else + begin + Edit; + end; + FieldByName('MainId').Value:=Trim(maxno); + FieldByName('OrderType').Value:=''; + FieldByName('OrderNo').Value:='11'; + SSetsaveSql(ADOCmd,'WFBOrder_Main',ScrollBox1,0); + if PState=2 then + begin + FieldByName('Chker').Value:=Trim(DName); + FieldByName('ChkTime').Value:=SGetServerDateTime(ADOTemp); + if ChkInt=1 then + FieldByName('ChkStatus').Value:='ͨ' + else if ChkInt=2 then + FieldByName('ChkStatus').Value:='˲ͨ'; + end; + if Trim(FMainId)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + if Trim(FMainId)<>'' then + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + end; + Post; + end; + FMainId:=Trim(maxno); + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +function TfrmOrderInPutNew.SaveDataSub():Boolean; +var + maxno,FSubId:String; +begin + try + Result:=False; + ADOCmd.Connection.BeginTrans; + ///굥 + + with CDS_Sub do + begin + First; + while not Eof do + begin + if Trim(CDS_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOCmd,maxno,'','WFBOrder_Sub',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBOrder_Sub '); + sql.Add(' where SubId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + FieldByName('SWFBCode').Value:=Trim(CDS_Sub.fieldbyname('SWFBCode').AsString); + SSetSaveDataCDSNew(ADOCmd,TvSub,CDS_Sub,'WFBOrder_Sub',0); + Post; + end; + CDS_Sub.Edit; + CDS_Sub.FieldByName('SubId').Value:=Trim(maxno); + //CDS_Sub.Post; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ӱʧܣ','ʾ',0); + end; +end; +function TfrmOrderInPutNew.SaveDataDB():Boolean; +var + maxno,FSubId:String; +begin + try + Result:=False; + ADOCmd.Connection.BeginTrans; + ///ϸ + if Trim(CDS_DB.fieldbyname('DBId').AsString)='' then + begin + if GetLSNo(ADOCmd,maxno,'DB','WFB_DB',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_DB.fieldbyname('DBId').AsString); + end; + with CDS_DB do + begin + First; + while not Eof do + begin + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_DB '); + sql.Add(' where DBId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_DB.fieldbyname('DBId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('DBId').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,TVDB,CDS_DB,'WFB_DB',0); + Post; + end; + CDS_DB.Edit; + CDS_DB.FieldByName('DBId').Value:=Trim(maxno); + //CDS_DB.Post; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; +function TfrmOrderInPutNew.SaveDataPB():Boolean; +var + maxno,FSubId:String; +begin + try + Result:=False; + ADOCmd.Connection.BeginTrans; + //Ҫԭ + + if not Order_SubZ.IsEmpty then + begin + with Order_SubZ do + begin + First; + while not Eof do + begin + if Trim(Order_SubZ.fieldbyname('PBId').AsString)='' then + begin + if GetLSNo(ADOCmd,maxno,'PB','WFBYCL_PB',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_SubZ.fieldbyname('PBId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PB '); + sql.Add(' where PBId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_SubZ.fieldbyname('PBId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + FieldByName('CRId').Value:=Trim(Order_SubZ.fieldbyname('CRID').AsString); + FieldByName('PBType').Value:='Ҫ'; + // SSetSaveDataCDSNew(); + SSetSaveDataCDSBandNew(ADOCmd,TV1,Order_SubZ,'WFBYCL_PB',0); + Post; + end; + Order_SubZ.Edit; + Order_SubZ.FieldByName('PBId').Value:=Trim(maxno); + //Order_SubZ.Post; + Next; + end; + end; + end; + //渨ԭ + + if not Order_SubF.IsEmpty then + begin + with Order_SubF do + begin + First; + while not Eof do + begin + if Trim(Order_SubF.fieldbyname('PBId').AsString)='' then + begin + if GetLSNo(ADOCmd,maxno,'PB','WFBYCL_PB',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_SubF.fieldbyname('PBId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PB '); + sql.Add(' where PBId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_SubF.fieldbyname('PBId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + FieldByName('PBType').Value:=''; + FieldByName('CRId').Value:=Trim(Order_SubF.fieldbyname('CRID').AsString); + // SSetSaveDataCDSNew(); + SSetSaveDataCDSBandNew(ADOCmd,TV2,Order_SubF,'WFBYCL_PB',0); + Post; + end; + Order_SubF.Edit; + Order_SubF.FieldByName('PBId').Value:=Trim(maxno); + Order_SubF.Post; + Next; + end; + end; + end; + //ԭ + + if not Order_SubQ.IsEmpty then + begin + with Order_SubQ do + begin + First; + while not Eof do + begin + if Trim(Order_SubQ.fieldbyname('PBId').AsString)='' then + begin + if GetLSNo(ADOCmd,maxno,'PB','WFBYCL_PB',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_SubQ.fieldbyname('PBId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PB '); + sql.Add(' where PBId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_SubQ.fieldbyname('PBId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + FieldByName('PBType').Value:=''; + FieldByName('CRId').Value:=Trim(Order_SubQ.fieldbyname('CRID').AsString); + // SSetSaveDataCDSNew(); + SSetSaveDataCDSBandNew(ADOCmd,TV3,Order_SubQ,'WFBYCL_PB',0); + Post; + end; + Order_SubQ.Edit; + Order_SubQ.FieldByName('PBId').Value:=Trim(maxno); + Order_SubQ.Post; + Next; + end; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȱʧܣ','ʾ',0); + end; +end; +function TfrmOrderInPutNew.SaveData():Boolean; +var + maxno,FSubId,FFS:String; + wz:Integer; +begin + try + Result:=False; + SaveDataMain(); + SaveDataSub(); + SaveDataDB(); + SaveDataPB(); + wz:=Pos('F',FMainId); + FFS:=Copy(FMainId,wz,4); + if ((CopyInt=1) or (FFS='FZ')) then + begin + UpMainId(); + end; + CopyInt:=0; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; +function TfrmOrderInPutNew.SaveData10():Boolean; +var + maxno,FSubId:String; + +begin + try + Result:=False; + SaveDataMain(); + SaveDataDB(); + SaveDataSub(); + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; +procedure TfrmOrderInPutNew.TBSaveClick(Sender: TObject); +begin + OrderDate.SetFocus; + if Trim(OrderNo.Text)='' then + begin + Application.MessageBox('ŲΪգ','ʾ',0); + Exit; + end; + if Trim(OrdUnit.Text)='' then + begin + Application.MessageBox('λΪգ','ʾ',0); + Exit; + end; + {if Trim(WFBCodeName.Hint)='' then + begin + Application.MessageBox('δ壡','ʾ',0); + Exit; + end; } + if CDS_DB.Locate('BSL',null,[]) then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + if CDS_DB.Locate('JSL',null,[]) then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('SWFBCodeName',null,[]) then + begin + Application.MessageBox('ƷŲΪգ','ʾ',0); + Exit; + end; + if Order_SubZ.Locate('YLKC;YCLYJKC;BZ',VarArrayOf([0,0,0]),[]) then + begin + Application.MessageBox('ָϣ','ʾ',0); + Exit; + end; + if Order_SubF.Locate('YLKC;YCLYJKC;BZ',VarArrayOf([0,0,0]),[]) then + begin + Application.MessageBox('ָϣ','ʾ',0); + Exit; + end; + if Order_SubQ.Locate('YLKC;YCLYJKC;BZ',VarArrayOf([0,0,0]),[]) then + begin + Application.MessageBox('ָϣ','ʾ',0); + Exit; + end; + YLUpdate(); + if SaveData()=True then + begin + if ChkInt>0 then + begin + Application.MessageBox('ɹ!','ʾ',0); + end else + Application.MessageBox('ɹ','ʾ',0); + if CloInt=1 then ModalResult:=1; + end; + +end; +procedure TfrmOrderInPutNew.SaveYCL(SCDS_Sub:TClientDataSet); +var + maxno,maxnosub:string; +begin + try + ADOCmd.Connection.BeginTrans; + with frmGetPGJBInList.ClientDataSet2 do + begin + First; + while not Eof do + begin + if GetLSNo(ADOCmd,maxno,'PB','WFBYCL_PB',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_PB where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + if MInt=1 then + begin + FieldByName('PBType').Value:='Ҫ'; + end else + if MInt=2 then + begin + FieldByName('PBType').Value:=''; + end else + if MInt=3 then + begin + FieldByName('PBType').Value:=''; + end; + FieldByName('YCLCode').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('YCLCode').AsString); + FieldByName('YCLName').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('YCLCode').AsString); + FieldByName('YCLSpec').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('YCLCode').AsString); + FieldByName('YLKC').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('QuantityKC').AsString); + FieldByName('YLUnit').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('CRUnit').AsString); + FieldByName('CRID').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('CRID').AsString); + FieldByName('YCLYJKC').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('YJKC').AsString); + Post; + end; + with SCDS_Sub do + begin + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + Post; + end; + with Self.CDS_Sel do + begin + First; + while not Eof do + begin + if GetLSNo(ADOCmd,maxnosub,'PS','WFBYCL_PBSub',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_PBSub where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(CDS_Sel.fieldbyname('SubId').AsString); + FieldByName('PBId').Value:=Trim(maxno); + FieldByName('PSId').Value:=Trim(maxnosub); + Post; + end; + Next; + end; + end; + Next; + end; + end; + except + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; +procedure TfrmOrderInPutNew.SELYCL(SCDS_Sub:TClientDataSet); +var + maxno,maxnosub:string; +begin + try + frmGetPGJBInList:=TfrmGetPGJBInList.Create(Application); + with frmGetPGJBInList do + begin + if ShowModal=1 then + begin + try ADOCmd.Connection.BeginTrans; + with ClientDataSet2 do + begin + First; + while not Eof do + begin + with SCDS_Sub do + begin + Append; + SCDS_Sub.FieldByName('YCLCode').Value:=Trim(ClientDataSet2.fieldbyname('YCLCode').AsString); + SCDS_Sub.FieldByName('YCLName').Value:=Trim(ClientDataSet2.fieldbyname('YCLName').AsString); + SCDS_Sub.FieldByName('YCLSpec').Value:=Trim(ClientDataSet2.fieldbyname('YCLSpec').AsString); + SCDS_Sub.FieldByName('YLKC').Value:=Trim(ClientDataSet2.fieldbyname('QuantityKC').AsString); + SCDS_Sub.FieldByName('YLUnit').Value:=Trim(ClientDataSet2.fieldbyname('CRUnit').AsString); + SCDS_Sub.FieldByName('CRID').Value:=Trim(ClientDataSet2.fieldbyname('CRID').AsString); + SCDS_Sub.FieldByName('YCLYJKC').Value:=Trim(ClientDataSet2.fieldbyname('YJKC').AsString); + Post; + end; + + if GetLSNo(ADOCmd,maxno,'PB','WFBYCL_PB',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_PB where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + if MInt=1 then + begin + FieldByName('PBType').Value:='Ҫ'; + end else + if MInt=2 then + begin + FieldByName('PBType').Value:=''; + end else + if MInt=3 then + begin + FieldByName('PBType').Value:=''; + end; + FieldByName('YCLCode').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('YCLCode').AsString); + FieldByName('YCLName').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('YCLName').AsString); + FieldByName('YCLSpec').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('YCLSpec').AsString); + FieldByName('YLKC').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('QuantityKC').AsString); + FieldByName('YLUnit').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('CRUnit').AsString); + FieldByName('CRID').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('CRID').AsString); + FieldByName('YCLYJKC').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('YJKC').AsString); + Post; + end; + with SCDS_Sub do + begin + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + Post; + end; + with Self.CDS_Sel do + begin + First; + while not Eof do + begin + if Self.CDS_Sel.FieldByName('SSel').AsBoolean=True then + begin + if GetLSNo(ADOCmd,maxnosub,'PS','WFBYCL_PBSub',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_PBSub where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(CDS_Sel.fieldbyname('SubId').AsString); + FieldByName('PBId').Value:=Trim(maxno); + FieldByName('PSId').Value:=Trim(maxnosub); + Post; + end; + end; + Next; + end; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + Exit; + end; + //Self.SaveYCL(SCDS_Sub); + end; + end; + finally + frmGetPGJBInList.Free; + end; +end; +procedure TfrmOrderInPutNew.SELYCLKC(SCDS_Sub:TClientDataSet); +var + maxno,maxnosub:string; + YLPB,YLSH:Double; +begin + + try ADOCmd.Connection.BeginTrans; + with CDS_KCSel do + begin + First; + while not Eof do + begin + if CDS_KCSel.FieldByName('SSel').AsBoolean=True then + begin + if MInt=1 then + begin + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1* from WFBYCL_PB where YCLCode='''+Trim(CDS_KCSel.fieldbyname('YCLCode').AsString)+''''); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1* from WFBYCL_PB where YCLCode='''+Trim(CDS_KCSel.fieldbyname('YCLCode').AsString)+''''); + SQL.Add('and YLPB>0 order by FillTime desc'); + Open; + end; + if Trim(ADOTemp.fieldbyname('YLPB').AsString)<>'' then + YLPB:=ADOTemp.fieldbyname('YLPB').Value + else + YLPB:=0; + if Trim(ADOTemp.fieldbyname('YLSH').AsString)<>'' then + YLSH:=ADOTemp.fieldbyname('YLSH').Value + else + YLSH:=0; + end else + begin + YLPB:=0; + YLSH:=0; + end; + end; + with SCDS_Sub do + begin + Append; + SCDS_Sub.FieldByName('YCLCode').Value:=Trim(CDS_KCSel.fieldbyname('YCLCode').AsString); + SCDS_Sub.FieldByName('YCLName').Value:=Trim(CDS_KCSel.fieldbyname('YCLName').AsString); + SCDS_Sub.FieldByName('YCLSpec').Value:=Trim(CDS_KCSel.fieldbyname('YCLSpec').AsString); + SCDS_Sub.FieldByName('YLKC').Value:=Trim(CDS_KCSel.fieldbyname('KCQty').AsString); + SCDS_Sub.FieldByName('YLUnit').Value:=Trim(CDS_KCSel.fieldbyname('KCUint').AsString); + SCDS_Sub.FieldByName('CRID').Value:=Trim(CDS_KCSel.fieldbyname('CRID').AsString); + SCDS_Sub.FieldByName('YCLYJKC').Value:=Trim(CDS_KCSel.fieldbyname('YJKC').AsString); + if MInt=1 then + begin + SCDS_Sub.FieldByName('YLPB').Value:=YLPB; + SCDS_Sub.FieldByName('YLSH').Value:=YLSH; + end; + Post; + end; + // + if GetLSNo(ADOCmd,maxno,'PB','WFBYCL_PB',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_PB where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + if MInt=1 then + begin + FieldByName('PBType').Value:='Ҫ'; + end else + if MInt=2 then + begin + FieldByName('PBType').Value:=''; + end else + if MInt=3 then + begin + FieldByName('PBType').Value:=''; + end; + FieldByName('YCLCode').Value:=Trim(CDS_KCSel.fieldbyname('YCLCode').AsString); + FieldByName('YCLName').Value:=Trim(CDS_KCSel.fieldbyname('YCLName').AsString); + FieldByName('YCLSpec').Value:=Trim(CDS_KCSel.fieldbyname('YCLSpec').AsString); + FieldByName('YLKC').Value:=Trim(CDS_KCSel.fieldbyname('KCQty').AsString); + FieldByName('YLUnit').Value:=Trim(CDS_KCSel.fieldbyname('KCUint').AsString); + FieldByName('CRID').Value:=Trim(CDS_KCSel.fieldbyname('CRID').AsString); + FieldByName('YCLYJKC').Value:=Trim(CDS_KCSel.fieldbyname('YJKC').AsString); + Post; + end; + with SCDS_Sub do + begin + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + Post; + end; + // + //ֱ + with Self.CDS_Sel do + begin + First; + while not Eof do + begin + if Self.CDS_Sel.FieldByName('SSel').AsBoolean=True then + begin + if GetLSNo(ADOCmd,maxnosub,'PS','WFBYCL_PBSub',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_PBSub where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(CDS_Sel.fieldbyname('SubId').AsString); + FieldByName('PBId').Value:=Trim(maxno); + FieldByName('PSId').Value:=Trim(maxnosub); + Post; + end; + end; + Next; + end; + end; + //ֱ + if MInt=1 then + OnlyUpYCLData(); + end; + + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + except + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + Exit; + end; +end; + +procedure TfrmOrderInPutNew.EditYCL(SCDS_Sub:TClientDataSet); +begin + try + frmGetPGJBInList:=TfrmGetPGJBInList.Create(Application); + with frmGetPGJBInList do + begin + if ShowModal=1 then + begin + with ClientDataSet2 do + begin + //First; + // while not Eof do + //begin + with SCDS_Sub do + begin + Edit; + SCDS_Sub.FieldByName('YCLCode').Value:=Trim(ClientDataSet2.fieldbyname('YCLCode').AsString); + SCDS_Sub.FieldByName('YCLName').Value:=Trim(ClientDataSet2.fieldbyname('YCLName').AsString); + SCDS_Sub.FieldByName('YCLSpec').Value:=Trim(ClientDataSet2.fieldbyname('YCLSpec').AsString); + //SCDS_Sub.FieldByName('GYSName').Value:=Trim(ClientDataSet2.fieldbyname('GYSName').AsString); + //SCDS_Sub.FieldByName('GYS').Value:=Trim(ClientDataSet2.fieldbyname('GYS').AsString); + SCDS_Sub.FieldByName('YLKC').Value:=Trim(ClientDataSet2.fieldbyname('QuantityKC').AsString); + //CDS_Sub.FieldByName('Qty').Value:=Trim(ClientDataSet2.fieldbyname('QtyKC').AsString); + SCDS_Sub.FieldByName('YLUnit').Value:=Trim(ClientDataSet2.fieldbyname('CRUnit').AsString); + SCDS_Sub.FieldByName('CRID').Value:=Trim(ClientDataSet2.fieldbyname('CRID').AsString); + SCDS_Sub.FieldByName('YCLYJKC').Value:=Trim(ClientDataSet2.fieldbyname('YJKC').AsString); + if SCDS_Sub.FieldByName('YLQty').Value-ClientDataSet2.fieldbyname('YJKC').Value>=0 then + SCDS_Sub.FieldByName('BZ').Value:=SCDS_Sub.FieldByName('YLQty').Value- + ClientDataSet2.fieldbyname('YJKC').Value + else + SCDS_Sub.FieldByName('BZ').Value:=null; + //SCDS_Sub.FieldByName('YCLType').Value:=Trim(ClientDataSet2.fieldbyname('YCLType').AsString); + //SCDS_Sub.FieldByName('YCLPrice').Value:=Trim(ClientDataSet2.fieldbyname('YCLPrice').AsString); + //SCDS_Sub.FieldByName('KCPlace').Value:=Trim(ClientDataSet2.fieldbyname('KCPlace').AsString); + //CDS_Sub.FieldByName('DepotShow').Value:=Trim(ClientDataSet2.fieldbyname('DepotShow').AsString); + //Post; + end; + // Next; + //end; + end; + end; + end; + finally + frmGetPGJBInList.Free; + end; +end; +procedure TfrmOrderInPutNew.ToolButton1Click(Sender: TObject); + +begin + if CDS_Sub.IsEmpty=True then + begin + Application.MessageBox('굥Ϊգ','ʾ',0); + Exit; + end; + OrderDate.SetFocus; + if Trim(OrderNo.Text)='' then + begin + Application.MessageBox('ŲΪգ','ʾ',0); + Exit; + end; + {if Trim(WFBCodeName.Text)='' then + begin + Application.MessageBox('ŲΪգ','ʾ',0); + Exit; + end; + if Trim(WFBCodeName.Hint)='' then + begin + Application.MessageBox('δ壡','ʾ',0); + Exit; + end; } + SaveData10(); + Panel1.Visible:=True; + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from WFBOrder_Sub where MainId='''+Trim(FMainId)+''''); + Open; + {if MInt=1 then + begin + SELYCL(Order_SubZ); + end else + if MInt=2 then + begin + SELYCL(Order_SubF); + end else + if MInt=3 then + begin + SELYCL(Order_SubQ); } + end; + SCreateCDS20(ADOQuery1,CDS_Sel); + SInitCDSData20(ADOQuery1,CDS_Sel); + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add(' exec P_YCLKC_ListKCDD :KCType '); + if MInt=1 then + begin + Parameters.ParamByName('KCType').Value:='Ҫ'; + end else + if MInt=2 then + begin + Parameters.ParamByName('KCType').Value:=''; + end else + if MInt=3 then + begin + Parameters.ParamByName('KCType').Value:=''; + end; + open; + end; + SCreateCDS20(ADOQuery1,CDS_KCSel); + SInitCDSData20(ADOQuery1,CDS_KCSel); +end; + +procedure TfrmOrderInPutNew.ToolButton2Click(Sender: TObject); +begin + if MInt=1 then + begin + DelOrderSub(Order_SubZ); + end else + if MInt=2 then + begin + DelOrderSub(Order_SubF); + end else + if MInt=3 then + begin + DelOrderSub(Order_SubQ); + end; +end; +procedure TfrmOrderInPutNew.DelOrderSub(FOrder_Sub:TClientDataSet); +begin + if FOrder_Sub.IsEmpty then Exit; + if Trim(FOrder_Sub.fieldbyname('PBID').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFBYCL_PB where PBID='''+Trim(FOrder_Sub.fieldbyname('PBID').AsString)+''''); + sql.Add('delete WFBYCL_PBSub where PBID='''+Trim(FOrder_Sub.fieldbyname('PBID').AsString)+''''); + ExecSQL; + end; + end; + FOrder_Sub.Delete; +end; + +procedure TfrmOrderInPutNew.CustomNoNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('CustomNoName'); + flagname:='ͻ'; + if ShowModal=1 then + begin + Self.FXS:=99; + CustomNoName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + CustomNoName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutNew.CustomNoNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(CustomNoName,'CustomNoName'); +end; + +procedure TfrmOrderInPutNew.ArrivalPortNamePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('ArrivalPort'); + flagname:=''; + if ShowModal=1 then + begin + Self.FXS:=99; + ArrivalPortName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + ArrivalPortName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutNew.SCXNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('SCXName'); + flagname:=''; + if ShowModal=1 then + begin + Self.FXS:=99; + SCXName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + SCXName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutNew.WJGNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('WJGName'); + flagname:='ṹ'; + if ShowModal=1 then + begin + Self.FXS:=99; + WJGName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + WJGName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutNew.WFBCodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim(WFBCodeName.Name); + flagname:=''; + if ShowModal=1 then + begin + Self.FXS:=99; + WFBCodeName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + WFBCodeName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutNew.WFBCodeNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(WFBCodeName,Trim(WFBCodeName.Name)); +end; + +procedure TfrmOrderInPutNew.ArrivalPortNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(ArrivalPortName,'ArrivalPort'); +end; + +procedure TfrmOrderInPutNew.SCXNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(SCXName,Trim(SCXName.Name)); +end; + +procedure TfrmOrderInPutNew.WJGNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(WJGName,Trim(WJGName.Name)); +end; + +procedure TfrmOrderInPutNew.N1Click(Sender: TObject); +begin + + with CDS_DB do + begin + Append; + FieldByName('DBUnit').Value:='/'; + Post; + end; +end; + +procedure TfrmOrderInPutNew.N2Click(Sender: TObject); +begin + if CDS_DB.IsEmpty then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFB_DB where DBID='''+Trim(CDS_DB.fieldbyname('DBID').AsString)+''''); + ExecSQL; + end; + CDS_DB.Delete; +end; + +procedure TfrmOrderInPutNew.Day1Change(Sender: TObject); +var + DayL:string; +begin + if trim(Day1.Text)='' then DayL:='0' + else DayL:=Trim(Day1.Text); + ETDDate.DateTime:=ETADate.Date-strtoint(DayL); +end; + +procedure TfrmOrderInPutNew.OrdQtyKeyPress(Sender: TObject; var Key: Char); +begin + if not (Key in['0'..'9','.',#8,#13]) then + begin + key:=#0; + end; +end; + +procedure TfrmOrderInPutNew.Day2Change(Sender: TObject); +var + DayL:string; +begin + if trim(Day2.Text)='' then DayL:='0' + else DayL:=Trim(Day2.Text); + ZGDate.DateTime:=ETDDate.Date-strtoint(DayL); +end; +procedure TfrmOrderInPutNew.Day3Change(Sender: TObject); +var + DayL:string; +begin + if trim(Day3.Text)='' then DayL:='0' + else DayL:=Trim(Day3.Text); + BegSCDate.DateTime:=BegRKDate.Date-strtoint(DayL); +end; +procedure TfrmOrderInPutNew.ETADateChange(Sender: TObject); +begin + if Trim(Day1.Text)<>'' then + begin + ETDDate.DateTime:=ETADate.Date-strtoint(Day1.Text); + end; + if Trim(Day2.Text)<>'' then + begin + ZGDate.DateTime:=ETDDate.Date-strtoint(Day2.Text); + end; +end; + +procedure TfrmOrderInPutNew.BegRKDateChange(Sender: TObject); +begin + if Trim(Day3.Text)<>'' then + begin + BegSCDate.DateTime:=BegRKDate.Date-strtoint(Day3.Text); + end; +end; + +procedure TfrmOrderInPutNew.Tv1MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + MInt:=1; + Tv1.Bands[0].Caption:='Ҫԭϡ'; + Tv2.Bands[0].Caption:='ԭ'; + Tv3.Bands[0].Caption:=''; + Tv1.Bands[0].Styles.Header.TextColor:=clBlue; + Tv2.Bands[0].Styles.Header.TextColor:=clBlack; + Tv3.Bands[0].Styles.Header.TextColor:=clBlack; +end; + +procedure TfrmOrderInPutNew.Tv2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + MInt:=2; + Tv1.Bands[0].Caption:='Ҫԭ'; + Tv2.Bands[0].Caption:='ԭϡ'; + Tv3.Bands[0].Caption:=''; + Tv1.Bands[0].Styles.Header.TextColor:=clBlack; + Tv2.Bands[0].Styles.Header.TextColor:=clBlue; + Tv3.Bands[0].Styles.Header.TextColor:=clBlack; +end; + +procedure TfrmOrderInPutNew.Tv3MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + MInt:=3; + Tv1.Bands[0].Caption:='Ҫԭ'; + Tv2.Bands[0].Caption:='ԭ'; + Tv3.Bands[0].Caption:=''; + Tv1.Bands[0].Styles.Header.TextColor:=clBlack; + Tv2.Bands[0].Styles.Header.TextColor:=clBlack; + Tv3.Bands[0].Styles.Header.TextColor:=clBlue; +end; + +procedure TfrmOrderInPutNew.v1Column2PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,YLSH,DHSL,YLQty:Double; + FOrdQty,FKZ:String; +begin + if Trim(TcxTextEdit(Sender).EditingText)<>'' then + mvalue:=TcxTextEdit(Sender).EditingValue + else + mvalue:=0; + with Order_SubZ do + begin + Edit; + FieldByName('YLPB').Value:=mvalue; + Post; + end; + //KO + YLUpdate(); +end; +procedure TfrmOrderInPutNew.OnlyUpYCLData(); +var + mvalue,YLSH,DHSL,YLQty:Double; + FOrdQty,FKZ:String; +begin + YLQty:=0; + if Trim(Order_SubZ.fieldbyname('YLPB').AsString)<>'' then + mvalue:=Order_SubZ.fieldbyname('YLPB').Value + else + mvalue:=0; //KO + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add(' select A.* from WFBYCL_PBSub A '); + //SQL.Add(' inner join WFBYCL_PB B on B.PBID=A.PBID '); + sql.Add(' where A.PBID='''+Trim(Order_SubZ.fieldbyname('PBID').AsString)+''''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + CDS_Sub.Locate('SubId',Trim(ADOTemp.fieldbyname('SubId').AsString),[]); + if Trim(CDS_Sub.fieldbyname('SOrdQty').AsString)='' then + FOrdQty:='0' + else + FOrdQty:=Trim(CDS_Sub.fieldbyname('SOrdQty').AsString); + if Trim(OrdUnit.Text)='K' then + begin + if Trim(Order_SubZ.fieldbyname('YLSH').AsString)='' then + begin + YLSH:=0; + end else + YLSH:=StrToFloat(Order_SubZ.fieldbyname('YLSH').AsString); + YLQty:=YLQty+StrToFloat(FOrdQty)*mvalue/100*(1+YLSH/100); + end else + if Trim(OrdUnit.Text)='O' then + begin + if Trim(CDS_Sub.fieldbyname('SWFBKZ').AsString)='' then + begin + FKZ:='0'; + end else + FKZ:=Trim(CDS_Sub.fieldbyname('SWFBKZ').AsString); + DHSL:=StrToFloat(FOrdQty)*strtofloat(FKZ)/1000; + if Trim(Order_SubZ.fieldbyname('YLSH').AsString)='' then + begin + YLSH:=0; + end else + YLSH:=StrToFloat(Order_SubZ.fieldbyname('YLSH').AsString); + YLQty:=YLQty+DHSL*mvalue/100*(1+YLSH/100); + end; + Next; + end; + with Order_SubZ do + begin + Edit; + FieldByName('YLQty').Value:=YLQty; + if YLQty-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=YLQty-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + end; + end; +end; + +procedure TfrmOrderInPutNew.v1Column3PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,YLSH,DHSL,YLQty,YLPB:Double; + FOrdQty,FKZ:String; +begin + if Trim(TcxTextEdit(Sender).EditingText)<>'' then + mvalue:=TcxTextEdit(Sender).EditingValue + else + mvalue:=0; + with Order_SubZ do + begin + Edit; + FieldByName('YLSH').Value:=mvalue; + Post; + end; + //KO + YLUpdate(); +end; + +procedure TfrmOrderInPutNew.v2Column2PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,YLSHQ,DHSL,YLQty,YLPB:Double; + FOrdQty,FKZ:String; +begin + if Trim(TcxTextEdit(Sender).EditingText)<>'' then + mvalue:=TcxTextEdit(Sender).EditingValue + else + mvalue:=0; + with Order_SubF do + begin + Edit; + FieldByName('YLSHQ').Value:=mvalue; + Post; + end; + //KO + YLUpdate(); +end; + +procedure TfrmOrderInPutNew.OrdQtyChange(Sender: TObject); +begin + YLUpdate(); +end; +procedure TfrmOrderInPutNew.YLUpdate(); +var + mvalue,YLSH,DHSL,YLQty,YLPB,YLSHQ:Double; + FOrdQty,FKZ:String; +begin + YLQty:=0; + with Order_SubZ do + begin + if Order_SubZ.IsEmpty=False then + begin + First; + while not Eof do + begin + YLQty:=0; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PBSub where PBID='''+Trim(Order_SubZ.fieldbyname('PBID').AsString)+''''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + CDS_Sub.Locate('SubId',Trim(ADOTemp.fieldbyname('SubId').AsString),[]); + if Trim(CDS_Sub.fieldbyname('SOrdQty').AsString)='' then + FOrdQty:='0' + else + FOrdQty:=Trim(CDS_Sub.fieldbyname('SOrdQty').AsString); + if Trim(OrdUnit.Text)='K' then + begin + if Trim(Order_SubZ.fieldbyname('YLPB').AsString)='' then + begin + YLPB:=0; + end else + YLPB:=StrToFloat(Order_SubZ.fieldbyname('YLPB').AsString); + if Trim(Order_SubZ.fieldbyname('YLSH').AsString)='' then + begin + YLSH:=0; + end else + YLSH:=StrToFloat(Order_SubZ.fieldbyname('YLSH').AsString); + YLQty:=YLQty+StrToFloat(FOrdQty)*YLPB/100*(1+YLSH/100); + end else + if Trim(OrdUnit.Text)='O' then + begin + if Trim(CDS_Sub.fieldbyname('SWFBKZ').AsString)='' then + begin + FKZ:='0'; + end else + FKZ:=Trim(CDS_Sub.fieldbyname('SWFBKZ').AsString); + DHSL:=StrToFloat(FOrdQty)*strtofloat(FKZ)/1000; + if Trim(Order_SubZ.fieldbyname('YLPB').AsString)='' then + begin + YLPB:=0; + end else + YLPB:=StrToFloat(Order_SubZ.fieldbyname('YLPB').AsString); + if Trim(Order_SubZ.fieldbyname('YLSH').AsString)='' then + begin + YLSH:=0; + end else + YLSH:=StrToFloat(Order_SubZ.fieldbyname('YLSH').AsString); + YLQty:=YLQty+DHSL*YLPB/100*(1+YLSH/100); + end; + Next; + end; + with Order_SubZ do + begin + Edit; + FieldByName('YLQty').Value:=YLQty; + if YLQty-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=YLQty-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + end; + end; + Next; + end; + end; + + end; + if Order_SubF.IsEmpty=False then + begin + with Order_SubF do + begin + First; + while not Eof do + begin + YLQty:=0; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PBSub where PBID='''+Trim(Order_SubF.fieldbyname('PBID').AsString)+''''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + CDS_Sub.Locate('SubId',Trim(ADOTemp.fieldbyname('SubId').AsString),[]); + if Trim(CDS_Sub.fieldbyname('SOrdQty').AsString)='' then + FOrdQty:='0' + else + FOrdQty:=Trim(CDS_Sub.fieldbyname('SOrdQty').AsString); + if Trim(OrdUnit.Text)='K' then + begin + if Trim(Order_SubF.fieldbyname('YLSHQ').AsString)='' then + begin + YLSHQ:=0; + end else + YLSHQ:=StrToFloat(Order_SubF.fieldbyname('YLSHQ').AsString); + YLQty:=YLQty+StrToFloat(FOrdQty)*(YLSHQ*1.00/1000); + end else + if Trim(OrdUnit.Text)='O' then + begin + if Trim(CDS_Sub.fieldbyname('SWFBKZ').AsString)='' then + begin + FKZ:='0'; + end else + FKZ:=Trim(CDS_Sub.fieldbyname('SWFBKZ').AsString); + DHSL:=StrToFloat(FOrdQty)*strtofloat(FKZ)/1000; + if Trim(Order_SubF.fieldbyname('YLSHQ').AsString)='' then + begin + YLSHQ:=0; + end else + YLSHQ:=StrToFloat(Order_SubF.fieldbyname('YLSHQ').AsString); + YLQty:=YLQty+DHSL*(YLSHQ*1.00/1000); + end; + Next; + end; + with Order_SubF do + begin + Edit; + FieldByName('YLQty').Value:=YLQty; + if YLQty-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=YLQty-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + end; + end; + Next; + end; + end; + end; +end; +procedure TfrmOrderInPutNew.v3Column4PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:Double; +begin + mvalue:=TcxTextEdit(Sender).EditingValue; + with Order_SubQ do + begin + Edit; + FieldByName('YLQty').Value:=mvalue; + if mvalue-fieldbyname('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=mvalue-fieldbyname('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + end; +end; + +procedure TfrmOrderInPutNew.TBPrintClick(Sender: TObject); +var + fPrintFile:String; +begin + with ADOQueryQG do + begin + Close; + sql.Clear; + sql.Add(' exec P_Print_SGD :OrderNo'); + Parameters.ParamByName('OrderNo').Value:=Trim(OrderNo.Text); + Open; + end; + if ADOQueryQG.IsEmpty then Exit; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\빺.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + RMVariables['dyr']:=Trim(DName); + RM2.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\빺.rmf'),'ʾ',0); + end; +end; + +procedure TfrmOrderInPutNew.v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + EditYCL(Order_SubZ); +end; + +procedure TfrmOrderInPutNew.v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + EditYCL(Order_SubF); +end; + +procedure TfrmOrderInPutNew.v3Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + EditYCL(Order_SubQ); +end; + +procedure TfrmOrderInPutNew.MenuItem1Click(Sender: TObject); +var + i:Integer; +begin + CopyAddRow(TvSub,CDS_Sub); + i:=CDS_Sub.RecordCount; + with CDS_Sub do + begin + Edit; + FieldByName('MainId').Value:=''; + FieldByName('SubId').Value:=''; + FieldByName('SWFBColor').Value:=''; + FieldByName('SWFBCode').Value:=''; + FieldByName('SWFBCodeName').Value:=''; + FieldByName('SOrdQty').Value:=0; + FieldByName('XHNO').Value:=IntToStr(i); + Post; + end; + OrdQty.Text:=floattostr(TvSub.DataController.Summary.FooterSummaryValues[0]); +end; + +procedure TfrmOrderInPutNew.MenuItem2Click(Sender: TObject); +var + mvalue,YLSH,DHSL,YLQty,YLPB,YLSHQ:Double; + FOrdQty,FKZ:String; +begin + if CDS_Sub.IsEmpty then Exit; + if Trim(CDS_Sub.fieldbyname('SubID').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_PBSub where SubId='''+Trim(CDS_Sub.fieldbyname('SubID').AsString)+''''); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + with ADOCMD do + begin + Close; + sql.Clear; + sql.Add('delete WFBYCL_PBSub where SubId='''+Trim(CDS_Sub.fieldbyname('SubID').AsString)+''''); + sql.Add('delete WFBOrder_Sub where SubID='''+Trim(CDS_Sub.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PB where MainId='''+Trim(FMainId)+''' '); + sql.Add(' and not exists(select * from WFBYCL_PBSub A where A.PBId=WFBYCL_PB.PBID and A.MainId='''+Trim(FMainId)+''' )'); + open; + end; + with ADOTemp do + begin + ADOTemp.First; + while not ADOTemp.Eof do + begin + if Trim(ADOTemp.fieldbyname('PBID').AsString)<>'' then + begin + if Order_SubZ.IsEmpty=False then + begin + if Order_SubZ.Locate('PBID',Trim(ADOTemp.fieldbyname('PBID').AsString),[]) then + Order_SubZ.Delete; + end; + if Order_SubF.IsEmpty=False then + begin + if Order_SubF.Locate('PBID',Trim(ADOTemp.fieldbyname('PBID').AsString),[]) then + Order_SubF.Delete; + end; + if Order_SubQ.IsEmpty=False then + begin + if Order_SubQ.Locate('PBID',Trim(ADOTemp.fieldbyname('PBID').AsString),[]) then + Order_SubQ.Delete; + end; + end; + ADOTemp.Next; + end; + end; + with ADOCMD do + begin + Close; + SQL.Clear; + sql.Add(' delete WFBYCL_PB where not exists(select * from WFBYCL_PBSub A where A.PBId=WFBYCL_PB.PBID )'); + SQL.Add(' and MainId='''+Trim(FMainId)+''''); + ExecSQL; + end; + + end else + begin + with ADOCmd do + begin + close; + sql.Clear; + sql.Add('delete WFBOrder_Sub where SubID='''+Trim(CDS_Sub.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + end; + CDS_Sub.Delete; + //YLUpdate(); + if CDS_Sub.isempty=False then + OrdQty.Text:=floattostr(TvSub.DataController.Summary.FooterSummaryValues[0]); + YLUpdate(); +end; + +procedure TfrmOrderInPutNew.cxGridDBColumn3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WFBColor'; + flagname:='ɫ'; + if ShowModal=1 then + begin + with Self.CDS_Sub do + begin + Edit; + FieldByName('SWFBColor').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + //Post; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutNew.vSubColumn2PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WFBHX'; + flagname:=''; + if ShowModal=1 then + begin + with Self.CDS_Sub do + begin + Edit; + FieldByName('SWFBHW').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + //Post; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutNew.cxGridDBColumn2PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,YLSH,DHSL,YLQty,YLPB,YLSHQ:Double; + FOrdQty,FKZ:String; +begin + FKZ:=TcxTextEdit(Sender).EditingText; + with CDS_Sub do + begin + Edit; + if Trim(FKZ)='' then + FieldByName('SWFBKZ').Value:='0' + else + FieldByName('SWFBKZ').Value:=FKZ; + Post; + end; + YLUpdate(); +end; + +procedure TfrmOrderInPutNew.TvSubColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,YLSH,DHSL,YLQty,YLPB,YLSHQ:Double; + FOrdQty,FKZ:String; +begin + FOrdQty:=TcxTextEdit(Sender).EditingText; + with CDS_Sub do + begin + Edit; + if Trim(FOrdQty)='' then + FieldByName('SOrdQty').Value:='0' + else + FieldByName('SOrdQty').Value:=FOrdQty; + Post; + end; + OrdQty.Text:=floattostr(TvSub.DataController.Summary.FooterSummaryValues[0]); + YLUpdate(); +end; + +procedure TfrmOrderInPutNew.Panel10MouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel1).perform(WM_SYSCOMMAND, $F012, 0); +end; + +procedure TfrmOrderInPutNew.Image2Click(Sender: TObject); +begin + Panel1.Visible:=False; +end; + +procedure TfrmOrderInPutNew.Button3Click(Sender: TObject); +begin + Panel1.Visible:=False; +end; + +procedure TfrmOrderInPutNew.Button2Click(Sender: TObject); +begin + if CDS_Sel.Locate('ssel',True,[])=False then + begin + Application.MessageBox('ûѡݣ','ʾ',0); + Exit; + end; + if MInt=1 then + begin + SELYCLKC(Order_SubZ); + end else + if MInt=2 then + begin + SELYCLKC(Order_SubF); + end else + if MInt=3 then + begin + SELYCLKC(Order_SubQ); + end; + Panel1.Visible:=False; +end; + +procedure TfrmOrderInPutNew.FormClose(Sender: TObject; + var Action: TCloseAction); +var + maxno,FFS:string; + wz:Integer; +begin + WriteCxBandedGrid('',Tv1,'޷IJ'); + WriteCxBandedGrid('ϸ',Tv2,'޷IJ'); + WriteCxBandedGrid('',Tv3,'޷IJ'); + WriteCxGrid('ӱ',TvSub,'޷IJ'); + WriteCxGrid('',TVDB,'޷IJ'); + { if CopyInt=1 then + begin + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFBOrder_Main where MainId='''+Trim(FMainId)+''''); + sql.Add('delete WFBOrder_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add('delete WFB_DB where MainId='''+Trim(FMainId)+''''); + sql.Add('delete WFBYCL_PB where MainId='''+Trim(FMainId)+''''); + sql.Add('delete WFBYCL_PBSub where MainId='''+Trim(FMainId)+''''); + ExecSQL; + end; + end; + wz:=Pos('F',FMainId); + FFS:=Copy(FMainId,wz,4); + if ((CopyInt=1) or (FFS='FZ')) then + begin + UpMainId(); + end;} +end; +procedure TfrmOrderInPutNew.UpMainId(); +var + maxno:string; +begin + try + ADOCmd.Connection.BeginTrans; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PBSub where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + if GetLSNo(ADOCmd,maxno,'PS','WFBYCL_PBSub',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBYCL_PBSub Set PSID='''+Trim(maxno)+''''); + SQL.Add(' where PSID='''+Trim(ADOTemp.fieldbyname('PSID').AsString)+''''); + ExecSQL; + end; + Next; + end; + end; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PB where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + if GetLSNo(ADOCmd,maxno,'PB','WFBYCL_PB',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBYCL_PB Set PBID='''+Trim(maxno)+''''); + SQL.Add(' where PBID='''+Trim(ADOTemp.fieldbyname('PBID').AsString)+''''); + sql.Add('UPdate WFBYCL_PBSub Set PBID='''+Trim(maxno)+''''); + SQL.Add(' where PBID='''+Trim(ADOTemp.fieldbyname('PBID').AsString)+''''); + ExecSQL; + end; + Next; + end; + end; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBOrder_Sub where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + if GetLSNo(ADOCmd,maxno,'','WFBOrder_Sub',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Sub Set SubID='''+Trim(maxno)+''''); + SQL.Add(' where SubID='''+Trim(ADOTemp.fieldbyname('SubID').AsString)+''''); + sql.Add('UPdate WFBYCL_PBSub Set SubID='''+Trim(maxno)+''''); + SQL.Add(' where SubID='''+Trim(ADOTemp.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + Next; + end; + end; + if GetLSNo(ADOCmd,maxno,'','WFBOrder_Main',2,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Main Set MainID='''+Trim(maxno)+''''); + SQL.Add(' where MainID='''+Trim(FMainId)+''''); + sql.Add('Update WFBOrder_Sub Set MainID='''+Trim(maxno)+''''); + SQL.Add(' where MainID='''+Trim(FMainId)+''''); + sql.Add('Update WFB_DB Set MainID='''+Trim(maxno)+''''); + SQL.Add(' where MainID='''+Trim(FMainId)+''''); + sql.Add('UPdate WFBYCL_PB Set MainID='''+Trim(maxno)+''''); + SQL.Add(' where MainID='''+Trim(FMainId)+''''); + sql.Add('UPdate WFBYCL_PBSub Set MainID='''+Trim(maxno)+''''); + SQL.Add(' where MainID='''+Trim(FMainId)+''''); + ExecSQL; + end; + FMainId:=Trim(maxno); + ADOCmd.Connection.CommitTrans; + except + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ˮʧܣ','ʾ',0); + end; +end; +procedure TfrmOrderInPutNew.vSubColumn4PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim(WFBCodeName.Name); + flagname:=''; + if ShowModal=1 then + begin + CDS_Sub.Edit; + CDS_Sub.FieldByName('SWFBCodeName').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + CDS_Sub.FieldByName('SWFBCode').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1* from WFBOrder_Sub where SWFBCode='''+Trim(CDS_Sub.fieldbyname('SWFBCode').AsString)+''''); + Open; + end; + if ADOTemp.IsEmpty then Exit; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1* from WFBOrder_Sub where SWFBCode='''+Trim(CDS_Sub.fieldbyname('SWFBCode').AsString)+''''); + sql.Add(' order by SFillTIme Desc'); + Open; + end; + with CDS_Sub do + begin + Edit; + FieldByName('SWFBColor').Value:=ADOTemp.fieldbyname('SWFBColor').Value; + FieldByName('SWFBHW').Value:=ADOTemp.fieldbyname('SWFBHW').Value; + FieldByName('SWFBKZ').Value:=ADOTemp.fieldbyname('SWFBKZ').Value; + FieldByName('SWFBFK').Value:=ADOTemp.fieldbyname('SWFBFK').Value; + FieldByName('SOrdPrice').Value:=ADOTemp.fieldbyname('SOrdPrice').Value; + FieldByName('WKMS').Value:=ADOTemp.fieldbyname('WKMS').Value; + FieldByName('KZSmal').Value:=ADOTemp.fieldbyname('KZSmal').Value; + FieldByName('KZBig').Value:=ADOTemp.fieldbyname('KZBig').Value; + //Post; + end; +end; + +procedure TfrmOrderInPutNew.MenuItem3Click(Sender: TObject); +begin + CDS_Sel.DisableControls; + with CDS_Sel do + begin + First; + while not Eof do + begin + Edit; + FieldByName('SSel').Value:=True; + Post; + Next; + end; + end; + CDS_Sel.EnableControls; +end; + +procedure TfrmOrderInPutNew.MenuItem4Click(Sender: TObject); +begin + CDS_Sel.DisableControls; + with CDS_Sel do + begin + First; + while not Eof do + begin + Edit; + FieldByName('SSel').Value:=False; + Post; + Next; + end; + end; + CDS_Sel.EnableControls; +end; + +procedure TfrmOrderInPutNew.vSubColumn5PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('WKMS'); + flagname:='Ŀ'; + if ShowModal=1 then + begin + Self.CDS_Sub.Edit; + CDS_Sub.FieldByName('WKMS').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutNew.BZPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('JJDW'); + flagname:='Ƽ۵λ'; + if ShowModal=1 then + begin + Self.FXS:=99; + BZ.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + // BZ.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutNew.BZPropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(BZ,'JJDW'); +end; + +procedure TfrmOrderInPutNew.TBChkOkClick(Sender: TObject); +begin + ChkInt:=1; + TBSave.Click; +end; + +procedure TfrmOrderInPutNew.TBChkNoClick(Sender: TObject); +begin + ChkInt:=2; + TBSave.Click; +end; + +procedure TfrmOrderInPutNew.Button4Click(Sender: TObject); +begin + if CDS_Sub.IsEmpty then exit; + if( (Order_SubZ.IsEmpty) and (Order_SubF.IsEmpty) and (Order_SubQ.IsEmpty) )then Exit; + if Trim(OrderNo.Text)='' then + begin + Application.MessageBox('ŲΪգ','ʾ',0); + Exit; + end; + SaveData10(); + if CDS_Sub.Locate('SSel',True,[])=False then + begin + Application.MessageBox('굥δѡݣܸ£','ʾ',0); + Exit; + end; + if Order_SubZ.Locate('SSel',True,[])=False then + begin + if Order_SubF.Locate('SSel',True,[])=False then + if Order_SubZ.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ԭϱδѡݣܸ£','ʾ',0); + Exit; + end; + end; + try + ADOCMD.Connection.BeginTrans; + YCLPBIDUPdate(Order_SubZ); + YCLPBIDUPdate(Order_SubF); + YCLPBIDUPdate(Order_SubQ); + ADOCMD.Connection.CommitTrans; + YLUpdate(); + Application.MessageBox('³ɹ','ʾ',0); + Exit; + except + ADOCMD.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; +procedure TfrmOrderInPutNew.YCLPBIDUPdate(SOrder_SubZ:TClientDataSet); +var + maxno:String; +begin + with CDS_Sub do + begin + First; + while not Eof do + begin + if CDS_Sub.FieldByName('SSel').AsBoolean=True then + begin + with SOrder_SubZ do + begin + First; + while not Eof do + begin + if SOrder_SubZ.FieldByName('SSel').AsBoolean=True then + begin + with ADOCMD do + begin + Close; + sql.Clear; + sql.Add('delete WFBYCL_PBSub where SubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+''''); + sql.Add(' and PBID='''+Trim(SOrder_SubZ.fieldbyname('PBID').AsString)+''''); + ExecSQL; + end; + if GetLSNo(ADOCMD,maxno,'PS','WFBYCL_PBSub',4,1)=False then + begin + ADOCMD.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOCMD do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_PBSub where 1<>1'); + Open; + end; + with ADOCMD do + begin + Append; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(CDS_Sub.fieldbyname('SubId').AsString); + FieldByName('PBID').Value:=Trim(SOrder_SubZ.fieldbyname('PBID').AsString); + FieldByName('PSID').Value:=Trim(maxno); + Post; + end; + end; + Next; + end; + end; + end; + Next; + end; + end; +end; + +procedure TfrmOrderInPutNew.N3Click(Sender: TObject); +begin + SelAll(CDS_Sub,True); +end; +procedure TfrmOrderInPutNew.SelAll(SCDS_Sub:TClientDataSet;FSEL:Boolean); +begin + if SCDS_Sub.IsEmpty then exit; + with SCDS_Sub do + begin + First; + while not eof do + begin + Edit; + FieldByName('SSel').Value:=FSEL; + post; + Next; + end; + end; +end; + +procedure TfrmOrderInPutNew.N4Click(Sender: TObject); +begin + SelAll(CDS_Sub,False); +end; + +procedure TfrmOrderInPutNew.MenuItem7Click(Sender: TObject); +begin + if MInt=1 then + begin + SelAll(Order_SubZ,True); + end else + if MInt=2 then + begin + SelAll(Order_SubF,True); + end else + if MInt=3 then + begin + SelAll(Order_SubQ,True); + end; +end; + +procedure TfrmOrderInPutNew.MenuItem8Click(Sender: TObject); +begin + if MInt=1 then + begin + SelAll(Order_SubZ,False); + end else + if MInt=2 then + begin + SelAll(Order_SubF,False); + end else + if MInt=3 then + begin + SelAll(Order_SubQ,False); + end; +end; + +end. diff --git a/艾登贸易管理/U_OrderInPutZP.dfm b/艾登贸易管理/U_OrderInPutZP.dfm new file mode 100644 index 0000000..2fa390e --- /dev/null +++ b/艾登贸易管理/U_OrderInPutZP.dfm @@ -0,0 +1,1788 @@ +object frmOrderInPutZP: TfrmOrderInPutZP + Left = 28 + Top = 34 + Width = 1192 + Height = 705 + Caption = #25351#31034#21333#24405#20837'('#21046#21697')' + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1184 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_WFBOrder.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 29 + Width = 1184 + Height = 320 + Align = alTop + BevelInner = bvNone + BevelOuter = bvNone + Color = clBtnFace + Ctl3D = False + ParentColor = False + ParentCtl3D = False + TabOrder = 1 + object Label1: TLabel + Left = 24 + Top = 15 + Width = 65 + Height = 12 + Caption = #35746#21333#32534#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 248 + Top = 15 + Width = 39 + Height = 12 + Caption = #20195#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 883 + Top = 15 + Width = 65 + Height = 12 + Caption = #19979#21333#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 919 + Top = 184 + Width = 52 + Height = 12 + Caption = #29983#20135#32447#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 919 + Top = 248 + Width = 52 + Height = 12 + Caption = #32593#32467#26500#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 24 + Top = 172 + Width = 15 + Height = 98 + Caption = #27880#13#10#13#10#24847#13#10#13#10#20107#13#10#13#10#39033 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 467 + Top = 15 + Width = 39 + Height = 12 + Caption = #23458#25143#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 677 + Top = 15 + Width = 52 + Height = 12 + Caption = #21040#36798#28207#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 936 + Top = 83 + Width = 39 + Height = 12 + Caption = #33457#32441#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label14: TLabel + Left = 461 + Top = 43 + Width = 53 + Height = 12 + Caption = #24133' '#23485#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label15: TLabel + Left = 609 + Top = 39 + Width = 18 + Height = 15 + Caption = 'cm' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label16: TLabel + Left = 24 + Top = 43 + Width = 65 + Height = 12 + Caption = #21512#35745#25968#37327#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label17: TLabel + Left = 777 + Top = 81 + Width = 39 + Height = 12 + Caption = #21333#20215#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 24 + Top = 100 + Width = 1068 + Height = 12 + Caption = + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - ' + Font.Charset = GB2312_CHARSET + Font.Color = clFuchsia + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label20: TLabel + Left = 23 + Top = 148 + Width = 1068 + Height = 12 + Caption = + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - ' + Font.Charset = GB2312_CHARSET + Font.Color = clFuchsia + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label21: TLabel + Left = 25 + Top = 120 + Width = 34 + Height = 12 + Caption = 'ETA'#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label22: TLabel + Left = 257 + Top = 122 + Width = 34 + Height = 12 + Caption = 'ETD'#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label23: TLabel + Left = 491 + Top = 121 + Width = 39 + Height = 12 + Caption = #35013#26588#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label24: TLabel + Left = 679 + Top = 120 + Width = 53 + Height = 12 + Caption = #20837' '#24211#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label25: TLabel + Left = 934 + Top = 121 + Width = 39 + Height = 12 + Caption = #29983#20135#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label26: TLabel + Left = 221 + Top = 120 + Width = 13 + Height = 15 + Caption = #22825 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label27: TLabel + Left = 165 + Top = 120 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label28: TLabel + Left = 238 + Top = 120 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label29: TLabel + Left = 455 + Top = 120 + Width = 13 + Height = 15 + Caption = #22825 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label30: TLabel + Left = 400 + Top = 120 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label31: TLabel + Left = 472 + Top = 120 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 904 + Top = 120 + Width = 13 + Height = 15 + Caption = #22825 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label32: TLabel + Left = 849 + Top = 120 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label33: TLabel + Left = 918 + Top = 120 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label34: TLabel + Left = 679 + Top = 185 + Width = 91 + Height = 12 + Caption = #27597#21367#20811#37325#33539#22260#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label35: TLabel + Left = 866 + Top = 184 + Width = 23 + Height = 15 + Caption = 'g/'#13217 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label36: TLabel + Left = 810 + Top = 184 + Width = 14 + Height = 12 + Caption = '--' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label37: TLabel + Left = 679 + Top = 249 + Width = 91 + Height = 12 + Caption = #23567#21367#20811#37325#33539#22260#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label38: TLabel + Left = 866 + Top = 248 + Width = 23 + Height = 15 + Caption = 'g/'#13217 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label39: TLabel + Left = 810 + Top = 248 + Width = 14 + Height = 12 + Caption = '--' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 23 + Top = 281 + Width = 1068 + Height = 12 + Caption = + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - ' + Font.Charset = GB2312_CHARSET + Font.Color = clFuchsia + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label7: TLabel + Left = 431 + Top = 172 + Width = 15 + Height = 98 + Caption = #25171#13#10#13#10#21253#13#10#13#10#35814#13#10#13#10#32454 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label40: TLabel + Left = 24 + Top = 81 + Width = 65 + Height = 12 + Caption = #35746#36135#25968#37327#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label41: TLabel + Left = 204 + Top = 77 + Width = 11 + Height = 20 + Caption = '*' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label42: TLabel + Left = 332 + Top = 77 + Width = 11 + Height = 20 + Caption = '*' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label43: TLabel + Left = 473 + Top = 81 + Width = 53 + Height = 12 + Caption = #24133' '#23485#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label44: TLabel + Left = 560 + Top = 77 + Width = 11 + Height = 20 + Caption = '*' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label45: TLabel + Left = 611 + Top = 79 + Width = 18 + Height = 15 + Caption = 'cm' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 642 + Top = 81 + Width = 39 + Height = 12 + Caption = #20811#37325#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 736 + Top = 78 + Width = 23 + Height = 15 + Caption = 'g/'#13217 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label46: TLabel + Left = 23 + Top = 63 + Width = 1068 + Height = 12 + Caption = + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - ' + Font.Charset = GB2312_CHARSET + Font.Color = clFuchsia + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object OrderNo: TEdit + Left = 86 + Top = 13 + Width = 115 + Height = 18 + TabOrder = 0 + end + object OrderDate: TDateTimePicker + Left = 947 + Top = 11 + Width = 125 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 1 + end + object WFBCodeName: TcxButtonEdit + Left = 292 + Top = 11 + ParentShowHint = False + Properties.BeepOnError = True + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = WFBCodeNamePropertiesButtonClick + Properties.OnChange = WFBCodeNamePropertiesChange + ShowHint = False + TabOrder = 2 + OnKeyDown = WFBCodeNameKeyDown + Width = 132 + end + object SCXName: TcxButtonEdit + Left = 972 + Top = 180 + Hint = 'FactoryNo1' + BeepOnEnter = False + ParentShowHint = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = SCXNamePropertiesButtonClick + Properties.OnChange = SCXNamePropertiesChange + ShowHint = False + TabOrder = 3 + OnKeyDown = WFBCodeNameKeyDown + Width = 100 + end + object WJGName: TcxButtonEdit + Left = 972 + Top = 243 + Hint = 'FactoryNo2' + BeepOnEnter = False + ParentShowHint = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = WJGNamePropertiesButtonClick + Properties.OnChange = WJGNamePropertiesChange + ShowHint = False + TabOrder = 4 + OnKeyDown = WFBCodeNameKeyDown + Width = 100 + end + object CustomNoName: TcxButtonEdit + Left = 505 + Top = 11 + Hint = 'CustomerNo' + BeepOnEnter = False + ParentShowHint = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = CustomNoNamePropertiesButtonClick + Properties.OnChange = CustomNoNamePropertiesChange + ShowHint = False + TabOrder = 5 + OnKeyDown = WFBCodeNameKeyDown + Width = 129 + end + object Note: TRichEdit + Left = 43 + Top = 168 + Width = 366 + Height = 113 + TabOrder = 6 + end + object ArrivalPortName: TcxButtonEdit + Left = 726 + Top = 11 + BeepOnEnter = False + ParentShowHint = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = ArrivalPortNamePropertiesButtonClick + Properties.OnChange = ArrivalPortNamePropertiesChange + ShowHint = False + TabOrder = 7 + OnKeyDown = WFBCodeNameKeyDown + Width = 117 + end + object WFBHW: TEdit + Left = 972 + Top = 80 + Width = 98 + Height = 18 + TabOrder = 8 + end + object WFBFK: TEdit + Left = 510 + Top = 40 + Width = 92 + Height = 18 + TabOrder = 9 + Visible = False + OnKeyPress = OrdQtyKeyPress + end + object OrdQty: TEdit + Left = 86 + Top = 40 + Width = 62 + Height = 18 + Enabled = False + TabOrder = 10 + OnChange = OrdQtyChange + OnKeyPress = OrdQtyKeyPress + end + object OrdUnit: TComboBox + Left = 149 + Top = 40 + Width = 53 + Height = 20 + Style = csDropDownList + Ctl3D = False + Enabled = False + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 12 + ParentCtl3D = False + ParentFont = False + TabOrder = 11 + OnChange = OrdQtyChange + Items.Strings = ( + #13199 + #13217) + end + object OrdPrice: TEdit + Left = 815 + Top = 78 + Width = 53 + Height = 18 + TabOrder = 12 + OnKeyPress = OrdQtyKeyPress + end + object ETADate: TDateTimePicker + Left = 57 + Top = 117 + Width = 104 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 13 + OnChange = ETADateChange + end + object ETDDate: TDateTimePicker + Left = 291 + Top = 117 + Width = 104 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + Enabled = False + TabOrder = 14 + end + object ZGDate: TDateTimePicker + Left = 527 + Top = 117 + Width = 104 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + Enabled = False + TabOrder = 15 + end + object BegRKDate: TDateTimePicker + Left = 730 + Top = 117 + Width = 115 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 16 + OnChange = BegRKDateChange + end + object BegSCDate: TDateTimePicker + Left = 968 + Top = 117 + Width = 104 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + Enabled = False + TabOrder = 17 + end + object Day1: TEdit + Left = 184 + Top = 119 + Width = 35 + Height = 18 + TabOrder = 18 + OnChange = Day1Change + OnKeyPress = OrdQtyKeyPress + end + object Day2: TEdit + Left = 418 + Top = 119 + Width = 35 + Height = 18 + TabOrder = 19 + OnChange = Day2Change + OnKeyPress = OrdQtyKeyPress + end + object Day3: TEdit + Left = 867 + Top = 119 + Width = 35 + Height = 18 + TabOrder = 20 + OnChange = Day3Change + OnKeyPress = OrdQtyKeyPress + end + object MJKZX: TEdit + Left = 769 + Top = 182 + Width = 39 + Height = 18 + TabOrder = 21 + OnKeyPress = OrdQtyKeyPress + end + object MJKZD: TEdit + Left = 825 + Top = 182 + Width = 39 + Height = 18 + TabOrder = 22 + OnKeyPress = OrdQtyKeyPress + end + object XJKZX: TEdit + Left = 769 + Top = 246 + Width = 39 + Height = 18 + TabOrder = 23 + OnKeyPress = OrdQtyKeyPress + end + object XJKZD: TEdit + Left = 825 + Top = 246 + Width = 39 + Height = 18 + TabOrder = 24 + OnKeyPress = OrdQtyKeyPress + end + object cxGrid4: TcxGrid + Left = 454 + Top = 168 + Width = 213 + Height = 113 + PopupMenu = PopupMenu1 + TabOrder = 25 + object TVDB: TcxGridDBTableView + OnKeyPress = TVZDYKeyPress + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TVZDYCellDblClick + DataController.DataSource = DataSource3 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + object cxGridDBColumn1: TcxGridDBColumn + Caption = #21253#25968#37327 + DataBinding.FieldName = 'BSL' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.handBlack + Width = 61 + end + object VDBColumn1: TcxGridDBColumn + Caption = #21367#25968#37327 + DataBinding.FieldName = 'JSL' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 65 + end + object VDBColumn2: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'DBUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 78 + end + end + object cxGridLevel3: TcxGridLevel + GridView = TVDB + end + end + object WFBBZQty1: TEdit + Left = 86 + Top = 78 + Width = 62 + Height = 18 + TabOrder = 26 + OnChange = WFBBZQty1Change + OnKeyPress = OrdQtyKeyPress + end + object WFBBZUnit1: TcxButtonEdit + Left = 150 + Top = 77 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = WFBBZUnit1PropertiesButtonClick + Properties.OnChange = WFBBZUnit1PropertiesChange + TabOrder = 27 + OnKeyDown = WFBCodeNameKeyDown + Width = 52 + end + object WFBBZQty2: TEdit + Left = 217 + Top = 78 + Width = 62 + Height = 18 + TabOrder = 28 + OnChange = WFBBZQty1Change + OnKeyPress = OrdQtyKeyPress + end + object WFBBZUnit2: TcxButtonEdit + Left = 281 + Top = 77 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = WFBBZUnit2PropertiesButtonClick + Properties.OnChange = WFBBZUnit2PropertiesChange + TabOrder = 29 + OnKeyDown = WFBCodeNameKeyDown + Width = 52 + end + object WFBBZQty3: TEdit + Left = 345 + Top = 78 + Width = 62 + Height = 18 + TabOrder = 30 + OnChange = WFBBZQty1Change + OnKeyPress = OrdQtyKeyPress + end + object WFBBZUnit3: TcxButtonEdit + Left = 409 + Top = 77 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = WFBBZUnit3PropertiesButtonClick + Properties.OnChange = WFBBZUnit3PropertiesChange + TabOrder = 31 + OnKeyDown = WFBCodeNameKeyDown + Width = 52 + end + object WFBFK2: TEdit + Left = 573 + Top = 78 + Width = 36 + Height = 18 + TabOrder = 32 + OnChange = WFBBZQty1Change + OnKeyPress = OrdQtyKeyPress + end + object WFBFK1: TEdit + Left = 525 + Top = 78 + Width = 36 + Height = 18 + TabOrder = 33 + OnChange = WFBBZQty1Change + OnKeyPress = OrdQtyKeyPress + end + object WFBKZ: TEdit + Left = 680 + Top = 78 + Width = 55 + Height = 18 + TabOrder = 34 + OnChange = WFBBZQty1Change + OnKeyPress = OrdQtyKeyPress + end + object BZ: TcxButtonEdit + Left = 869 + Top = 77 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = BZPropertiesButtonClick + Properties.OnChange = BZPropertiesChange + TabOrder = 35 + OnKeyDown = WFBCodeNameKeyDown + Width = 52 + end + object PanZDY: TPanel + Left = 707 + Top = 104 + Width = 151 + Height = 153 + TabOrder = 36 + Visible = False + object CXGridZDY: TcxGrid + Left = 3 + Top = 4 + Width = 142 + Height = 113 + TabOrder = 0 + object TVZDY: TcxGridDBTableView + OnKeyPress = TVZDYKeyPress + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TVZDYCellDblClick + DataController.DataSource = DataSource2 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + object VHelpZDYName: TcxGridDBColumn + DataBinding.FieldName = 'ZDYName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.handBlack + Width = 129 + IsCaptionAssigned = True + end + end + object CXGridZDYLevel1: TcxGridLevel + GridView = TVZDY + end + end + object Button1: TButton + Left = 40 + Top = 120 + Width = 65 + Height = 25 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button1Click + end + end + end + object ScrollBox2: TScrollBox + Left = 0 + Top = 349 + Width = 1184 + Height = 319 + Align = alClient + BevelInner = bvNone + BevelOuter = bvNone + Ctl3D = False + ParentCtl3D = False + TabOrder = 2 + object cxGrid3: TcxGrid + Left = 809 + Top = 31 + Width = 366 + Height = 286 + Align = alLeft + TabOrder = 0 + object Tv3: TcxGridDBBandedTableView + OnMouseDown = Tv3MouseDown + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSourceQ + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'YCLCode' + Column = v3Column1 + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Bands = < + item + Caption = #20854#23427 + Styles.Header = DataLink_WFBOrder.TextSHuangSe + Width = 400 + end> + object v3Column1: TcxGridDBBandedColumn + Caption = #29289#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v3Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 55 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object v3Column2: TcxGridDBBandedColumn + Caption = #35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 44 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v3Column3: TcxGridDBBandedColumn + Caption = #24211#23384 + DataBinding.FieldName = 'YLKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 48 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object v3Column4: TcxGridDBBandedColumn + Caption = #29992#37327 + DataBinding.FieldName = 'YLQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v3Column4PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object v3Column5: TcxGridDBBandedColumn + Caption = #21333#20301 + DataBinding.FieldName = 'YLUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 40 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object v3Column6: TcxGridDBBandedColumn + Caption = #30003#36141#25968#37327 + DataBinding.FieldName = 'SGQty' + HeaderAlignmentHorz = taCenter + Width = 66 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object v3Column7: TcxGridDBBandedColumn + Caption = #21069#21333#24211#23384 + DataBinding.FieldName = 'YCLYJKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object v3Column8: TcxGridDBBandedColumn + Tag = 2 + Caption = #19981#36275 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 34 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + object cxGrid2: TcxGrid + Left = 425 + Top = 31 + Width = 384 + Height = 286 + Align = alLeft + TabOrder = 1 + object Tv2: TcxGridDBBandedTableView + OnMouseDown = Tv2MouseDown + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSourceF + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'YCLCode' + Column = v2Column1 + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Bands = < + item + Caption = #36741#21161#21407#26009 + Styles.Header = DataLink_WFBOrder.FonePurple + Width = 428 + end> + object v2Column1: TcxGridDBBandedColumn + Caption = #21407#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 68 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object v2Column2: TcxGridDBBandedColumn + Caption = #32791#29575#8240 + DataBinding.FieldName = 'YLSHQ' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 41 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object v2Column3: TcxGridDBBandedColumn + Caption = #29992#37327'KG' + DataBinding.FieldName = 'YLQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 42 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object v2Column4: TcxGridDBBandedColumn + Caption = #24211#23384 + DataBinding.FieldName = 'YLKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 40 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object v2Column5: TcxGridDBBandedColumn + Caption = #35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 60 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v2Column6: TcxGridDBBandedColumn + Caption = #30003#36141#25968#37327 + DataBinding.FieldName = 'SGQty' + HeaderAlignmentHorz = taCenter + Width = 74 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object v2Column7: TcxGridDBBandedColumn + Caption = #21069#21333#24211#23384 + DataBinding.FieldName = 'YCLYJKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 58 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object v2Column8: TcxGridDBBandedColumn + Tag = 2 + Caption = #19981#36275 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Width = 34 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 31 + Width = 425 + Height = 286 + Align = alLeft + TabOrder = 2 + object Tv1: TcxGridDBBandedTableView + OnMouseDown = Tv1MouseDown + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSourceZ + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'YCLCode' + Column = v1Column1 + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Bands = < + item + Caption = #20027#35201#21407#26009 + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 487 + end> + object v1Column1: TcxGridDBBandedColumn + Caption = #21407#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v1Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 69 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object v1Column2: TcxGridDBBandedColumn + Caption = #37197#27604'%' + DataBinding.FieldName = 'YLPB' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 37 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object v1Column3: TcxGridDBBandedColumn + Caption = #25439#32791'%' + DataBinding.FieldName = 'YLSH' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column3PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 39 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object v1Column4: TcxGridDBBandedColumn + Caption = #29992#37327'KG' + DataBinding.FieldName = 'YLQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 41 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object v1Column5: TcxGridDBBandedColumn + Caption = #24211#23384 + DataBinding.FieldName = 'YLKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 41 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object v1Column6: TcxGridDBBandedColumn + Caption = #35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 54 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v1Column7: TcxGridDBBandedColumn + Caption = #30003#36141#25968#37327 + DataBinding.FieldName = 'SGQty' + HeaderAlignmentHorz = taCenter + Width = 64 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object v1Column8: TcxGridDBBandedColumn + Caption = #21069#21333#24211#23384 + DataBinding.FieldName = 'YCLYJKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 55 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object v1Column9: TcxGridDBBandedColumn + Tag = 2 + Caption = #19981#36275 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Content = DataLink_WFBOrder.FoneRed + Width = 37 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 0 + Width = 1182 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_WFBOrder.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 3 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + object TBPrint: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #25171#21360#35831#36141#21333 + ImageIndex = 96 + OnClick = TBPrintClick + end + end + end + object ADOTemp: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 968 + Top = 325 + end + object ADOCmd: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + Parameters = <> + Left = 744 + Top = 309 + end + object DataSourceZ: TDataSource + DataSet = Order_SubZ + Left = 296 + Top = 440 + end + object Order_SubZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 256 + Top = 440 + end + object DataSource2: TDataSource + DataSet = ADOZDY + Left = 760 + Top = 8 + end + object ADOZDY: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 728 + Top = 5 + end + object CDS_ZDY: TClientDataSet + Aggregates = <> + Params = <> + Left = 800 + Top = 8 + end + object ADOQuery1: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + Parameters = <> + Left = 784 + Top = 309 + end + object PopupMenu1: TPopupMenu + Left = 328 + Top = 229 + object N1: TMenuItem + Caption = #22686#34892 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #21024#34892 + OnClick = N2Click + end + end + object DataSource3: TDataSource + DataSet = CDS_DB + Left = 352 + Top = 200 + end + object CDS_DB: TClientDataSet + Aggregates = <> + Params = <> + Left = 304 + Top = 240 + end + object Order_SubF: TClientDataSet + Aggregates = <> + Params = <> + Left = 456 + Top = 440 + end + object DataSourceF: TDataSource + DataSet = Order_SubF + Left = 488 + Top = 440 + end + object Order_SubQ: TClientDataSet + Aggregates = <> + Params = <> + Left = 800 + Top = 448 + end + object DataSourceQ: TDataSource + DataSet = Order_SubQ + Left = 832 + Top = 448 + end + object ADOQueryQG: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 224 + Top = 309 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryQG + Left = 288 + Top = 312 + end + object RM2: 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 320 + Top = 312 + ReportData = {} + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 256 + Top = 312 + end +end diff --git a/艾登贸易管理/U_OrderInPutZP.pas b/艾登贸易管理/U_OrderInPutZP.pas new file mode 100644 index 0000000..1a467d6 --- /dev/null +++ b/艾登贸易管理/U_OrderInPutZP.pas @@ -0,0 +1,1849 @@ +unit U_OrderInPutZP; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer, + cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB, + ExtCtrls, BtnEdit, cxCalendar, cxGridBandedTableView, + cxGridDBBandedTableView, Menus, RM_Common, RM_Class, RM_e_Xls, + RM_GridReport, RM_System, RM_Dataset; + +type + TfrmOrderInPutZP = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ScrollBox1: TScrollBox; + Label1: TLabel; + Label2: TLabel; + Label3: TLabel; + OrderNo: TEdit; + OrderDate: TDateTimePicker; + Label5: TLabel; + Label6: TLabel; + Label8: TLabel; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + DataSourceZ: TDataSource; + Order_SubZ: TClientDataSet; + DataSource2: TDataSource; + ADOZDY: TADOQuery; + CDS_ZDY: TClientDataSet; + WFBCodeName: TcxButtonEdit; + SCXName: TcxButtonEdit; + WJGName: TcxButtonEdit; + ADOQuery1: TADOQuery; + Label12: TLabel; + CustomNoName: TcxButtonEdit; + Note: TRichEdit; + Label13: TLabel; + ArrivalPortName: TcxButtonEdit; + Label10: TLabel; + WFBHW: TEdit; + Label14: TLabel; + WFBFK: TEdit; + Label15: TLabel; + Label16: TLabel; + OrdQty: TEdit; + OrdUnit: TComboBox; + Label17: TLabel; + OrdPrice: TEdit; + Label19: TLabel; + Label20: TLabel; + Label21: TLabel; + ETADate: TDateTimePicker; + Label22: TLabel; + ETDDate: TDateTimePicker; + Label23: TLabel; + ZGDate: TDateTimePicker; + Label24: TLabel; + BegRKDate: TDateTimePicker; + Label25: TLabel; + BegSCDate: TDateTimePicker; + Day1: TEdit; + Label26: TLabel; + Label27: TLabel; + Label28: TLabel; + Day2: TEdit; + Label29: TLabel; + Label30: TLabel; + Label31: TLabel; + Day3: TEdit; + Label18: TLabel; + Label32: TLabel; + Label33: TLabel; + Label34: TLabel; + MJKZX: TEdit; + Label35: TLabel; + Label36: TLabel; + MJKZD: TEdit; + Label37: TLabel; + XJKZX: TEdit; + Label38: TLabel; + Label39: TLabel; + XJKZD: TEdit; + Label4: TLabel; + Label7: TLabel; + cxGrid4: TcxGrid; + TVDB: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridLevel3: TcxGridLevel; + VDBColumn1: TcxGridDBColumn; + VDBColumn2: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + DataSource3: TDataSource; + CDS_DB: TClientDataSet; + Order_SubF: TClientDataSet; + DataSourceF: TDataSource; + Order_SubQ: TClientDataSet; + DataSourceQ: TDataSource; + ScrollBox2: TScrollBox; + cxGrid3: TcxGrid; + Tv3: TcxGridDBBandedTableView; + v3Column1: TcxGridDBBandedColumn; + v3Column2: TcxGridDBBandedColumn; + v3Column3: TcxGridDBBandedColumn; + v3Column4: TcxGridDBBandedColumn; + v3Column5: TcxGridDBBandedColumn; + cxGridLevel2: TcxGridLevel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBBandedTableView; + v2Column1: TcxGridDBBandedColumn; + v2Column2: TcxGridDBBandedColumn; + v2Column3: TcxGridDBBandedColumn; + v2Column4: TcxGridDBBandedColumn; + v2Column5: TcxGridDBBandedColumn; + cxGridLevel1: TcxGridLevel; + cxGrid1: TcxGrid; + Tv1: TcxGridDBBandedTableView; + v1Column1: TcxGridDBBandedColumn; + v1Column2: TcxGridDBBandedColumn; + v1Column3: TcxGridDBBandedColumn; + v1Column4: TcxGridDBBandedColumn; + v1Column5: TcxGridDBBandedColumn; + v1Column6: TcxGridDBBandedColumn; + cxGrid1Level1: TcxGridLevel; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + TBPrint: TToolButton; + v1Column7: TcxGridDBBandedColumn; + v2Column6: TcxGridDBBandedColumn; + v3Column6: TcxGridDBBandedColumn; + v1Column8: TcxGridDBBandedColumn; + v2Column7: TcxGridDBBandedColumn; + v3Column7: TcxGridDBBandedColumn; + v1Column9: TcxGridDBBandedColumn; + v2Column8: TcxGridDBBandedColumn; + v3Column8: TcxGridDBBandedColumn; + ADOQueryQG: TADOQuery; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + RMXLSExport1: TRMXLSExport; + Label40: TLabel; + WFBBZQty1: TEdit; + WFBBZUnit1: TcxButtonEdit; + Label41: TLabel; + WFBBZQty2: TEdit; + WFBBZUnit2: TcxButtonEdit; + Label42: TLabel; + WFBBZQty3: TEdit; + WFBBZUnit3: TcxButtonEdit; + Label43: TLabel; + Label44: TLabel; + WFBFK2: TEdit; + WFBFK1: TEdit; + Label45: TLabel; + Label9: TLabel; + Label11: TLabel; + WFBKZ: TEdit; + BZ: TcxButtonEdit; + Label46: TLabel; + PanZDY: TPanel; + CXGridZDY: TcxGrid; + TVZDY: TcxGridDBTableView; + VHelpZDYName: TcxGridDBColumn; + CXGridZDYLevel1: TcxGridLevel; + Button1: TButton; + procedure TBCloseClick(Sender: TObject); + procedure TVZDYCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button1Click(Sender: TObject); + procedure WFBCodeNameKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); + procedure TVZDYKeyPress(Sender: TObject; var Key: Char); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure CustomNoNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure CustomNoNamePropertiesChange(Sender: TObject); + procedure ArrivalPortNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure SCXNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WJGNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WFBCodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WFBCodeNamePropertiesChange(Sender: TObject); + procedure ArrivalPortNamePropertiesChange(Sender: TObject); + procedure SCXNamePropertiesChange(Sender: TObject); + procedure WJGNamePropertiesChange(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure Day1Change(Sender: TObject); + procedure OrdQtyKeyPress(Sender: TObject; var Key: Char); + procedure Day2Change(Sender: TObject); + procedure Day3Change(Sender: TObject); + procedure ETADateChange(Sender: TObject); + procedure BegRKDateChange(Sender: TObject); + procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv3MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure v1Column2PropertiesEditValueChanged(Sender: TObject); + procedure v1Column3PropertiesEditValueChanged(Sender: TObject); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure OrdQtyChange(Sender: TObject); + procedure v3Column4PropertiesEditValueChanged(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v3Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WFBBZUnit1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WFBBZUnit2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WFBBZUnit3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WFBBZUnit1PropertiesChange(Sender: TObject); + procedure WFBBZUnit2PropertiesChange(Sender: TObject); + procedure WFBBZUnit3PropertiesChange(Sender: TObject); + procedure BZPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure BZPropertiesChange(Sender: TObject); + procedure WFBBZQty1Change(Sender: TObject); + private + MInt:Integer; + procedure InitData(); + procedure ZDYHelp(FButn:TcxButtonEdit;LType:string); + function SaveData():Boolean; + procedure DelOrderSub(FOrder_Sub:TClientDataSet); + procedure SELYCL(SCDS_Sub:TClientDataSet); + procedure EditYCL(SCDS_Sub:TClientDataSet); + { Private declarations } + public + PState,BState:Integer; + FMainId:String; + FXS:Integer; + OrderType:String; + { Public declarations } + end; + +var + frmOrderInPutZP: TfrmOrderInPutZP; + +implementation +uses + U_DataLink,U_ZDYHelp,U_Fun,U_GetPGJBInList; + +{$R *.dfm} + +procedure TfrmOrderInPutZP.TBCloseClick(Sender: TObject); +begin + if PState<>3 then + begin + if Application.MessageBox('ǷҪݣ','ʾ',32+4)=IDYES then + begin + TBSave.Click; + Exit; + end; + end; + Close; + WriteCxBandedGrid('',Tv1,'޷IJ'); + WriteCxBandedGrid('ϸ',Tv2,'޷IJ'); + WriteCxBandedGrid('',Tv3,'޷IJ'); + +end; + +procedure TfrmOrderInPutZP.InitData(); +var + i:Integer; +begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add(' exec P_WFBOrder_List :begdate,:endate,:MainId'); + if PState>0 then + begin + ADOQuery1.Parameters.ParamByName('MainId').Value:=Trim(FMainId); + ADOQuery1.Parameters.ParamByName('begdate').Value:=''; + ADOQuery1.Parameters.ParamByName('endate').Value:=''; + end; + if PState=0 then + begin + ADOQuery1.Parameters.ParamByName('MainId').Value:='999999'; + ADOQuery1.Parameters.ParamByName('begdate').Value:=''; + ADOQuery1.Parameters.ParamByName('endate').Value:=''; + end; + Open; + end; + // SCreateCDS20(ADOQuery1,Order_Sub); + //SInitCDSData20(ADOQuery1,Order_Sub); + SCSHData(ADOQuery1,ScrollBox1,0); + if PState=0 then + begin + OrderDate.DateTime:=StrToDate(FormatDateTime('yyyy-MM-dd',SGetServerDateTime(ADOTemp))); + ETADate.DateTime:=OrderDate.DateTime; + ETDDate.DateTime:=OrderDate.DateTime; + ZGDate.DateTime:=OrderDate.DateTime; + BegRKDate.DateTime:=OrderDate.DateTime; + BegSCDate.DateTime:=OrderDate.DateTime; + ETADate.Checked:=False; + ETDDate.Checked:=False; + ZGDate.Checked:=False; + BegRKDate.Checked:=False; + BegSCDate.Checked:=False; + end; + if Trim(DParameters1)<>'' then + begin + BegRKDate.Enabled:=False; + Day3.Enabled:=False; + BegSCDate.Enabled:=False; + //Note.Enabled:=False; + cxGrid4.Enabled:=False; + MJKZX.Enabled:=False; + MJKZD.Enabled:=False; + XJKZX.Enabled:=False; + XJKZD.Enabled:=False; + SCXName.Enabled:=False; + WJGName.Enabled:=False; + ScrollBox2.Enabled:=False; + end; + if PState=4 then + begin + BegRKDate.Enabled:=True; + Day3.Enabled:=True; + BegSCDate.Enabled:=True; + //Note.Enabled:=False; + cxGrid4.Enabled:=True; + MJKZX.Enabled:=True; + MJKZD.Enabled:=True; + XJKZX.Enabled:=True; + XJKZD.Enabled:=True; + SCXName.Enabled:=True; + WJGName.Enabled:=True; + ScrollBox2.Enabled:=True; + end; + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select * from WFB_DB where MainId='''+Trim(FMainId)+''''); + Open; + end; + SCreateCDS20(ADOQuery1,CDS_DB); + SInitCDSData20(ADOQuery1,CDS_DB); + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select A.*,Case when A.YLQty-A.YCLYJkc>=0 then A.YLQty-A.YCLYJkc else null end as BZ from WFBYCL_PB A where MainId='''+Trim(FMainId)+''''); + sql.Add(' and PBType=''Ҫ'' '); + Open; + end; + SCreateCDS20(ADOQuery1,Order_SubZ); + SInitCDSData20(ADOQuery1,Order_SubZ); + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select A.*,Case when A.YLQty-A.YCLYJkc>=0 then A.YLQty-A.YCLYJkc else null end as BZ from WFBYCL_PB A where MainId='''+Trim(FMainId)+''''); + sql.Add(' and PBType='''' '); + Open; + end; + SCreateCDS20(ADOQuery1,Order_SubF); + SInitCDSData20(ADOQuery1,Order_SubF); + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select A.*,Case when A.YLQty-A.YCLYJkc>=0 then A.YLQty-A.YCLYJkc else null end as BZ from WFBYCL_PB A where MainId='''+Trim(FMainId)+''''); + sql.Add(' and PBType='''' '); + Open; + end; + SCreateCDS20(ADOQuery1,Order_SubQ); + SInitCDSData20(ADOQuery1,Order_SubQ); + PanZDY.Visible:=False; + if PState=4 then + begin + PState:=0; + FMainId:='999999'; + //OrderNo.Text:=''; + WFBCodeName.Text:=''; + WFBCodeName.Hint:=''; + PanZDY.Visible:=False; + with CDS_DB do + begin + First; + while not Eof do + begin + Edit; + FieldByName('DBID').Value:=''; + Post; + Next; + end; + end; + with Order_SubZ do + begin + First; + while not Eof do + begin + Edit; + FieldByName('PBID').Value:=''; + FieldByName('YLKC').Value:=0; + FieldByName('YCLYJKC').Value:=0; + FieldByName('BZ').Value:=0; + FieldByName('SGQty').Value:=0; + Post; + Next; + end; + end; + v1Column1.Options.Focusing:=True; + with Order_SubF do + begin + First; + while not Eof do + begin + Edit; + FieldByName('PBID').Value:=''; + FieldByName('YLKC').Value:=0; + FieldByName('YCLYJKC').Value:=0; + FieldByName('BZ').Value:=0; + FieldByName('SGQty').Value:=0; + Post; + Next; + end; + end; + v2Column1.Options.Focusing:=True; + with Order_SubQ do + begin + First; + while not Eof do + begin + Edit; + FieldByName('PBID').Value:=''; + FieldByName('YLKC').Value:=0; + FieldByName('YCLYJKC').Value:=0; + FieldByName('BZ').Value:=0; + FieldByName('SGQty').Value:=0; + Post; + Next; + end; + end; + v3Column1.Options.Focusing:=True; + end; +end; + +procedure TfrmOrderInPutZP.ZDYHelp(FButn:TcxButtonEdit;LType:string); +var + FType,ZDYName,FText:String; +begin + PanZDY.Visible:=True; + PanZDY.Left:=FButn.Left; + PanZDY.Top:=FButn.Top+FButn.Height; + with ADOZDY do + begin + Filtered:=False; + Close; + SQL.Clear; + SQL.Add('select RTrim(ZDYNo) ZDYNo,RTrim(ZDYName) ZDYName from KH_ZDY where Type='''+Trim(LType)+''''); + Open; + end; + FText:=Trim(FButn.Text); + if FText<>'' then + SDofilter(ADOZDY,' ZDYName like '+QuotedStr('%'+Trim(FText)+'%')) + else + SDofilter(ADOZDY,''); + VHelpZDYName.Summary.GroupFormat:=Trim(FButn.Name); +end; + +procedure TfrmOrderInPutZP.TVZDYCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + FName:string; +begin + if ADOZDY.IsEmpty then Exit; + FName:=Trim(VHelpZDYName.Summary.GroupFormat); + TcxButtonEdit(FindComponent(FName)).Text:=Trim(ADOZDY.fieldbyname('ZDYName').AsString); + TcxButtonEdit(FindComponent(FName)).Hint:=Trim(ADOZDY.fieldbyname('ZDYNO').AsString); + PanZDY.Visible:=False; +end; + +procedure TfrmOrderInPutZP.Button1Click(Sender: TObject); +begin + PanZDY.Visible:=False; +end; + +procedure TfrmOrderInPutZP.WFBCodeNameKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if (key=vk_return) or (Key=vk_Down) then + begin + if ADOZDY.Active then + CXGridZDY.SetFocus; + end; +end; + +procedure TfrmOrderInPutZP.TVZDYKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if ADOZDY.IsEmpty then Exit; + TcxButtonEdit(FindComponent(VHelpZDYName.Summary.GroupFormat)).Text:=Trim(ADOZDY.fieldbyname('ZDYName').AsString); + TcxButtonEdit(FindComponent(VHelpZDYName.Summary.GroupFormat)).Hint:=Trim(ADOZDY.fieldbyname('ZDYNO').AsString); + PanZDY.Visible:=False; + ADOZDY.Active:=False; + end; +end; + +procedure TfrmOrderInPutZP.FormShow(Sender: TObject); +begin + {if Trim(DParameters1)='1' then + begin + Label12.Visible:=False; + CustomNoName.Visible:=False; + end else + begin + Label12.Visible:=True; + CustomNoName.Visible:=True; + end; } + InitData(); + ReadCxBandedGrid('',Tv1,'޷IJ'); + ReadCxBandedGrid('ϸ',Tv2,'޷IJ'); + ReadCxBandedGrid('',Tv3,'޷IJ'); +end; + +function TfrmOrderInPutZP.SaveData():Boolean; +var + maxno:String; +begin + try + ADOCmd.Connection.BeginTrans; + /// + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from WFBOrder_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMainId)='999999' then + begin + Append; + if GetLSNo(ADOTemp,maxno,'','WFBOrder_Main',2,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ˮ쳣','ʾ',0); + exit; + end; + end + else begin + maxno:=Trim(FMainId); + Edit; + end; + FieldByName('MainId').Value:=Trim(maxno); + FieldByName('OrderType').Value:=Trim(OrderType); + SSetsaveSql(ADOCmd,'WFBOrder_Main',ScrollBox1,0); + if PState=2 then + begin + FieldByName('Chker').Value:=Trim(DName); + FieldByName('ChkTime').Value:=SGetServerDateTime(ADOTemp); + end; + if Trim(FMainId)='999999' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + if PState=1 then + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + end; + Post; + end; + FMainId:=Trim(maxno); + ///ϸ + with CDS_DB do + begin + First; + while not Eof do + begin + if Trim(CDS_DB.fieldbyname('DBId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'DB','WFB_DB',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_DB.fieldbyname('DBId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_DB '); + sql.Add(' where DBId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_DB.fieldbyname('DBId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('DBId').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,TVDB,CDS_DB,'WFB_DB',0); + Post; + end; + CDS_DB.Edit; + CDS_DB.FieldByName('DBId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + //Ҫԭ + if not Order_SubZ.IsEmpty then + begin + with Order_SubZ do + begin + First; + while not Eof do + begin + if Trim(Order_SubZ.fieldbyname('PBId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'PB','WFBYCL_PB',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_SubZ.fieldbyname('PBId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PB '); + sql.Add(' where PBId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_SubZ.fieldbyname('PBId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + FieldByName('CRId').Value:=Trim(Order_SubZ.fieldbyname('CRID').AsString); + FieldByName('PBType').Value:='Ҫ'; + // SSetSaveDataCDSNew(); + SSetSaveDataCDSBandNew(ADOCmd,TV1,Order_SubZ,'WFBYCL_PB',0); + Post; + end; + Order_SubZ.Edit; + Order_SubZ.FieldByName('PBId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + end; + //渨ԭ + if not Order_SubF.IsEmpty then + begin + with Order_SubF do + begin + First; + while not Eof do + begin + if Trim(Order_SubF.fieldbyname('PBId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'PB','WFBYCL_PB',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_SubF.fieldbyname('PBId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PB '); + sql.Add(' where PBId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_SubF.fieldbyname('PBId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + FieldByName('PBType').Value:=''; + FieldByName('CRId').Value:=Trim(Order_SubF.fieldbyname('CRID').AsString); + // SSetSaveDataCDSNew(); + SSetSaveDataCDSBandNew(ADOCmd,TV2,Order_SubF,'WFBYCL_PB',0); + Post; + end; + Order_SubF.Edit; + Order_SubF.FieldByName('PBId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + end; + //ԭ + if not Order_SubQ.IsEmpty then + begin + with Order_SubQ do + begin + First; + while not Eof do + begin + if Trim(Order_SubQ.fieldbyname('PBId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'PB','WFBYCL_PB',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_SubQ.fieldbyname('PBId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PB '); + sql.Add(' where PBId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_SubQ.fieldbyname('PBId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + FieldByName('PBType').Value:=''; + FieldByName('CRId').Value:=Trim(Order_SubQ.fieldbyname('CRID').AsString); + // SSetSaveDataCDSNew(); + SSetSaveDataCDSBandNew(ADOCmd,TV3,Order_SubQ,'WFBYCL_PB',0); + Post; + end; + Order_SubQ.Edit; + Order_SubQ.FieldByName('PBId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + end; + + ///ӱ + {with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'OS','Order_Sub',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from Order_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add(' and SubId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,Tv1,Order_Sub,'Order_Sub',0); + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; } + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TfrmOrderInPutZP.TBSaveClick(Sender: TObject); +begin + OrderDate.SetFocus; + if Trim(OrderNo.Text)='' then + begin + Application.MessageBox('ŲΪգ','ʾ',0); + Exit; + end; + if Trim(WFBCodeName.Text)='' then + begin + Application.MessageBox('ŲΪգ','ʾ',0); + Exit; + end; + if Trim(WFBCodeName.Hint)='' then + begin + Application.MessageBox('δ壡','ʾ',0); + Exit; + end; + {if Order_Sub.IsEmpty then + begin + Application.MessageBox('ϸΪգ','ʾ',0); + Exit; + end; } + if CDS_DB.Locate('BSL',null,[]) then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + if CDS_DB.Locate('JSL',null,[]) then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + if Order_SubZ.Locate('YLKC;YCLYJKC;BZ',VarArrayOf([0,0,0]),[]) then + begin + Application.MessageBox('ָϣ','ʾ',0); + Exit; + end; + if Order_SubF.Locate('YLKC;YCLYJKC;BZ',VarArrayOf([0,0,0]),[]) then + begin + Application.MessageBox('ָϣ','ʾ',0); + Exit; + end; + if Order_SubQ.Locate('YLKC;YCLYJKC;BZ',VarArrayOf([0,0,0]),[]) then + begin + Application.MessageBox('ָϣ','ʾ',0); + Exit; + end; + if SaveData() then + begin + Application.MessageBox('ɹ','ʾ',0); + end; +end; +procedure TfrmOrderInPutZP.SELYCL(SCDS_Sub:TClientDataSet); +begin + try + frmGetPGJBInList:=TfrmGetPGJBInList.Create(Application); + with frmGetPGJBInList do + begin + if ShowModal=1 then + begin + with ClientDataSet2 do + begin + First; + while not Eof do + begin + with SCDS_Sub do + begin + Append; + SCDS_Sub.FieldByName('YCLCode').Value:=Trim(ClientDataSet2.fieldbyname('YCLCode').AsString); + SCDS_Sub.FieldByName('YCLName').Value:=Trim(ClientDataSet2.fieldbyname('YCLName').AsString); + SCDS_Sub.FieldByName('YCLSpec').Value:=Trim(ClientDataSet2.fieldbyname('YCLSpec').AsString); + //SCDS_Sub.FieldByName('GYSName').Value:=Trim(ClientDataSet2.fieldbyname('GYSName').AsString); + //SCDS_Sub.FieldByName('GYS').Value:=Trim(ClientDataSet2.fieldbyname('GYS').AsString); + SCDS_Sub.FieldByName('YLKC').Value:=Trim(ClientDataSet2.fieldbyname('QuantityKC').AsString); + //CDS_Sub.FieldByName('Qty').Value:=Trim(ClientDataSet2.fieldbyname('QtyKC').AsString); + SCDS_Sub.FieldByName('YLUnit').Value:=Trim(ClientDataSet2.fieldbyname('CRUnit').AsString); + SCDS_Sub.FieldByName('CRID').Value:=Trim(ClientDataSet2.fieldbyname('CRID').AsString); + SCDS_Sub.FieldByName('YCLYJKC').Value:=Trim(ClientDataSet2.fieldbyname('YJKC').AsString); + //SCDS_Sub.FieldByName('YCLType').Value:=Trim(ClientDataSet2.fieldbyname('YCLType').AsString); + //SCDS_Sub.FieldByName('YCLPrice').Value:=Trim(ClientDataSet2.fieldbyname('YCLPrice').AsString); + //SCDS_Sub.FieldByName('KCPlace').Value:=Trim(ClientDataSet2.fieldbyname('KCPlace').AsString); + //CDS_Sub.FieldByName('DepotShow').Value:=Trim(ClientDataSet2.fieldbyname('DepotShow').AsString); + Post; + end; + Next; + end; + end; + end; + end; + finally + frmGetPGJBInList.Free; + end; +end; + +procedure TfrmOrderInPutZP.EditYCL(SCDS_Sub:TClientDataSet); +begin + try + frmGetPGJBInList:=TfrmGetPGJBInList.Create(Application); + with frmGetPGJBInList do + begin + if ShowModal=1 then + begin + with ClientDataSet2 do + begin + //First; + // while not Eof do + //begin + with SCDS_Sub do + begin + Edit; + SCDS_Sub.FieldByName('YCLCode').Value:=Trim(ClientDataSet2.fieldbyname('YCLCode').AsString); + SCDS_Sub.FieldByName('YCLName').Value:=Trim(ClientDataSet2.fieldbyname('YCLName').AsString); + SCDS_Sub.FieldByName('YCLSpec').Value:=Trim(ClientDataSet2.fieldbyname('YCLSpec').AsString); + //SCDS_Sub.FieldByName('GYSName').Value:=Trim(ClientDataSet2.fieldbyname('GYSName').AsString); + //SCDS_Sub.FieldByName('GYS').Value:=Trim(ClientDataSet2.fieldbyname('GYS').AsString); + SCDS_Sub.FieldByName('YLKC').Value:=Trim(ClientDataSet2.fieldbyname('QuantityKC').AsString); + //CDS_Sub.FieldByName('Qty').Value:=Trim(ClientDataSet2.fieldbyname('QtyKC').AsString); + SCDS_Sub.FieldByName('YLUnit').Value:=Trim(ClientDataSet2.fieldbyname('CRUnit').AsString); + SCDS_Sub.FieldByName('CRID').Value:=Trim(ClientDataSet2.fieldbyname('CRID').AsString); + SCDS_Sub.FieldByName('YCLYJKC').Value:=Trim(ClientDataSet2.fieldbyname('YJKC').AsString); + if SCDS_Sub.FieldByName('YLQty').Value-ClientDataSet2.fieldbyname('YJKC').Value>=0 then + SCDS_Sub.FieldByName('BZ').Value:=SCDS_Sub.FieldByName('YLQty').Value- + ClientDataSet2.fieldbyname('YJKC').Value + else + SCDS_Sub.FieldByName('BZ').Value:=null; + //SCDS_Sub.FieldByName('YCLType').Value:=Trim(ClientDataSet2.fieldbyname('YCLType').AsString); + //SCDS_Sub.FieldByName('YCLPrice').Value:=Trim(ClientDataSet2.fieldbyname('YCLPrice').AsString); + //SCDS_Sub.FieldByName('KCPlace').Value:=Trim(ClientDataSet2.fieldbyname('KCPlace').AsString); + //CDS_Sub.FieldByName('DepotShow').Value:=Trim(ClientDataSet2.fieldbyname('DepotShow').AsString); + //Post; + end; + // Next; + //end; + end; + end; + end; + finally + frmGetPGJBInList.Free; + end; +end; +procedure TfrmOrderInPutZP.ToolButton1Click(Sender: TObject); +begin + if MInt=1 then + begin + SELYCL(Order_SubZ); + end else + if MInt=2 then + begin + SELYCL(Order_SubF); + end else + if MInt=3 then + begin + SELYCL(Order_SubQ); + end; +end; + +procedure TfrmOrderInPutZP.ToolButton2Click(Sender: TObject); +begin + if MInt=1 then + begin + DelOrderSub(Order_SubZ); + end else + if MInt=2 then + begin + DelOrderSub(Order_SubF); + end else + if MInt=3 then + begin + DelOrderSub(Order_SubQ); + end; +end; +procedure TfrmOrderInPutZP.DelOrderSub(FOrder_Sub:TClientDataSet); +begin + if FOrder_Sub.IsEmpty then Exit; + if Trim(FOrder_Sub.fieldbyname('PBID').AsString)<>'' then + begin + if Application.MessageBox('ڴɾѱݣ','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFBYCL_PB where PBID='''+Trim(FOrder_Sub.fieldbyname('PBID').AsString)+''''); + ExecSQL; + end; + end; + FOrder_Sub.Delete; +end; + +procedure TfrmOrderInPutZP.CustomNoNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('CustomNoName'); + flagname:='ͻ'; + if ShowModal=1 then + begin + Self.FXS:=99; + CustomNoName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + CustomNoName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZP.CustomNoNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(CustomNoName,'CustomNoName'); +end; + +procedure TfrmOrderInPutZP.ArrivalPortNamePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('ArrivalPort'); + flagname:=''; + if ShowModal=1 then + begin + Self.FXS:=99; + ArrivalPortName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + ArrivalPortName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZP.SCXNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('SCXName'); + flagname:=''; + if ShowModal=1 then + begin + Self.FXS:=99; + SCXName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + SCXName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZP.WJGNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('WJGName'); + flagname:='ṹ'; + if ShowModal=1 then + begin + Self.FXS:=99; + WJGName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + WJGName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZP.WFBCodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim(WFBCodeName.Name); + flagname:=''; + if ShowModal=1 then + begin + Self.FXS:=99; + WFBCodeName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + WFBCodeName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZP.WFBCodeNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(WFBCodeName,Trim(WFBCodeName.Name)); +end; + +procedure TfrmOrderInPutZP.ArrivalPortNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(ArrivalPortName,'ArrivalPort'); +end; + +procedure TfrmOrderInPutZP.SCXNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(SCXName,Trim(SCXName.Name)); +end; + +procedure TfrmOrderInPutZP.WJGNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(WJGName,Trim(WJGName.Name)); +end; + +procedure TfrmOrderInPutZP.N1Click(Sender: TObject); +begin + + with CDS_DB do + begin + Append; + FieldByName('DBUnit').Value:='/'; + Post; + end; +end; + +procedure TfrmOrderInPutZP.N2Click(Sender: TObject); +begin + if CDS_DB.IsEmpty then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFB_DB where DBID='''+Trim(CDS_DB.fieldbyname('DBID').AsString)+''''); + ExecSQL; + end; + CDS_DB.Delete; +end; + +procedure TfrmOrderInPutZP.Day1Change(Sender: TObject); +var + DayL:string; +begin + if trim(Day1.Text)='' then DayL:='0' + else DayL:=Trim(Day1.Text); + ETDDate.DateTime:=ETADate.Date-strtoint(DayL); +end; + +procedure TfrmOrderInPutZP.OrdQtyKeyPress(Sender: TObject; var Key: Char); +begin + if not (Key in['0'..'9','.',#8,#13]) then + begin + key:=#0; + end; +end; + +procedure TfrmOrderInPutZP.Day2Change(Sender: TObject); +var + DayL:string; +begin + if trim(Day2.Text)='' then DayL:='0' + else DayL:=Trim(Day2.Text); + ZGDate.DateTime:=ETDDate.Date-strtoint(DayL); +end; +procedure TfrmOrderInPutZP.Day3Change(Sender: TObject); +var + DayL:string; +begin + if trim(Day3.Text)='' then DayL:='0' + else DayL:=Trim(Day3.Text); + BegSCDate.DateTime:=BegRKDate.Date-strtoint(DayL); +end; +procedure TfrmOrderInPutZP.ETADateChange(Sender: TObject); +begin + if Trim(Day1.Text)<>'' then + begin + ETDDate.DateTime:=ETADate.Date-strtoint(Day1.Text); + end; + if Trim(Day2.Text)<>'' then + begin + ZGDate.DateTime:=ETDDate.Date-strtoint(Day2.Text); + end; +end; + +procedure TfrmOrderInPutZP.BegRKDateChange(Sender: TObject); +begin + if Trim(Day3.Text)<>'' then + begin + BegSCDate.DateTime:=BegRKDate.Date-strtoint(Day3.Text); + end; +end; + +procedure TfrmOrderInPutZP.Tv1MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + MInt:=1; + Tv1.Bands[0].Caption:='Ҫԭϡ'; + Tv2.Bands[0].Caption:='ԭ'; + Tv3.Bands[0].Caption:=''; + Tv1.Bands[0].Styles.Header.TextColor:=clBlue; + Tv2.Bands[0].Styles.Header.TextColor:=clBlack; + Tv3.Bands[0].Styles.Header.TextColor:=clBlack; +end; + +procedure TfrmOrderInPutZP.Tv2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + MInt:=2; + Tv1.Bands[0].Caption:='Ҫԭ'; + Tv2.Bands[0].Caption:='ԭϡ'; + Tv3.Bands[0].Caption:=''; + Tv1.Bands[0].Styles.Header.TextColor:=clBlack; + Tv2.Bands[0].Styles.Header.TextColor:=clBlue; + Tv3.Bands[0].Styles.Header.TextColor:=clBlack; +end; + +procedure TfrmOrderInPutZP.Tv3MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + MInt:=3; + Tv1.Bands[0].Caption:='Ҫԭ'; + Tv2.Bands[0].Caption:='ԭ'; + Tv3.Bands[0].Caption:=''; + Tv1.Bands[0].Styles.Header.TextColor:=clBlack; + Tv2.Bands[0].Styles.Header.TextColor:=clBlack; + Tv3.Bands[0].Styles.Header.TextColor:=clBlue; +end; + +procedure TfrmOrderInPutZP.v1Column2PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,YLSH,DHSL:Double; +begin + if Trim(OrdQty.Text)='' then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + mvalue:=TcxTextEdit(Sender).EditingValue; //KO + if Trim(OrdUnit.Text)='K' then + begin + if Trim(Order_SubZ.fieldbyname('YLSH').AsString)='' then + begin + YLSH:=0; + end else + YLSH:=StrToFloat(Order_SubZ.fieldbyname('YLSH').AsString); + with Order_SubZ do + begin + Edit; + FieldByName('YLQty').Value:=StrToFloat(OrdQty.Text)*mvalue/100*(1+YLSH/100); + if StrToFloat(OrdQty.Text)*mvalue/100*(1+YLSH/100)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=StrToFloat(OrdQty.Text)*mvalue/100*(1+YLSH/100)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + FieldByName('YLPB').Value:=mvalue; + Post; + end; + end else + if Trim(OrdUnit.Text)='O' then + begin + if Trim(WFBKZ.Text)='' then + begin + Application.MessageBox('زΪգ','ʾ',0); + Exit; + end; + {if Trim(WFBfk.Text)='' then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end;} + DHSL:=StrToFloat(OrdQty.Text)*strtofloat(WFBKZ.Text)/1000; + if Trim(Order_SubZ.fieldbyname('YLSH').AsString)='' then + begin + YLSH:=0; + end else + YLSH:=StrToFloat(Order_SubZ.fieldbyname('YLSH').AsString); + with Order_SubZ do + begin + Edit; + FieldByName('YLQty').Value:=DHSL*mvalue/100*(1+YLSH/100); + if DHSL*mvalue/100*(1+YLSH/100)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=DHSL*mvalue/100*(1+YLSH/100)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + FieldByName('YLPB').Value:=mvalue; + Post; + end; + + end; +end; + + +procedure TfrmOrderInPutZP.v1Column3PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,YLPB,DHSL:Double; +begin + if Trim(OrdQty.Text)='' then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + mvalue:=TcxTextEdit(Sender).EditingValue; //KO + if Trim(OrdUnit.Text)='K' then + begin + if Trim(Order_SubZ.fieldbyname('YLPB').AsString)='' then + begin + YLPB:=0; + end else + YLPB:=StrToFloat(Order_SubZ.fieldbyname('YLPB').AsString); + with Order_SubZ do + begin + Edit; + FieldByName('YLQty').Value:=StrToFloat(OrdQty.Text)*YLPB/100*(1+mvalue/100); + if StrToFloat(OrdQty.Text)*YLPB/100*(1+mvalue/100)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=StrToFloat(OrdQty.Text)*YLPB/100*(1+mvalue/100)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + FieldByName('YLSH').Value:=mvalue; + Post; + end; + end else + begin + if Trim(WFBKZ.Text)='' then + begin + Application.MessageBox('زΪգ','ʾ',0); + Exit; + end; + {if Trim(WFBfk.Text)='' then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end;} + DHSL:=StrToFloat(OrdQty.Text)*strtofloat(WFBKZ.Text)/1000; + if Trim(Order_SubZ.fieldbyname('YLPB').AsString)='' then + begin + YLPB:=0; + end else + YLPB:=StrToFloat(Order_SubZ.fieldbyname('YLPB').AsString); + with Order_SubZ do + begin + Edit; + FieldByName('YLQty').Value:=DHSL*YLPB/100*(1+mvalue/100); + if DHSL*YLPB/100*(1+mvalue/100)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=DHSL*YLPB/100*(1+mvalue/100)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + FieldByName('YLSH').Value:=mvalue; + Post; + end; + end; +end; + +procedure TfrmOrderInPutZP.v2Column2PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,DHSL:Double; +begin + if Trim(OrdQty.Text)='' then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + mvalue:=TcxTextEdit(Sender).EditingValue; //KO + if Trim(OrdUnit.Text)='K' then + begin + with Order_SubF do + begin + Edit; + FieldByName('YLQty').Value:=StrToFloat(OrdQty.Text)*(mvalue/1000); + if StrToFloat(OrdQty.Text)*(mvalue/1000)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=StrToFloat(OrdQty.Text)*(mvalue/1000)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + FieldByName('YLSHQ').Value:=mvalue; + Post; + end; + end else + begin + if Trim(WFBKZ.Text)='' then + begin + Application.MessageBox('زΪգ','ʾ',0); + Exit; + end; + DHSL:=StrToFloat(OrdQty.Text)*strtofloat(WFBKZ.Text)/1000; + with Order_SubF do + begin + Edit; + FieldByName('YLQty').Value:=DHSL*(mvalue/1000); + if DHSL*(mvalue/1000)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=DHSL*(mvalue/1000)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + FieldByName('YLSHQ').Value:=mvalue; + Post; + end; + end; +end; + +procedure TfrmOrderInPutZP.OrdQtyChange(Sender: TObject); +var + YLPB,YLSH,DHSL:Double; +begin + if Trim(OrdQty.Text)='' then Exit; + if Trim(OrdUnit.Text)='K' then + DHSL:=StrToFloat(OrdQty.Text) + else + if Trim(OrdUnit.Text)='O' then + begin + if Trim(WFBKZ.Text)='' then Exit; + DHSL:=StrToFloat(OrdQty.Text)*strtofloat(WFBKZ.Text)/1000; + end; + if not Order_SubZ.IsEmpty then + begin + with Order_SubZ do + begin + Order_SubZ.DisableControls; + First; + while not Eof do + begin + Edit; + if Trim(fieldbyname('YLPB').AsString)='' then + YLPB:=0 + else + YLPB:=StrToFloat(fieldbyname('YLPB').AsString); + if Trim(fieldbyname('YLSH').AsString)='' then + YLSH:=0 + else + YLSH:=StrToFloat(fieldbyname('YLSH').AsString); + FieldByName('YLQty').Value:=DHSL*YLPB/100*(1+YLSH/100); + if DHSL*YLPB/100*(1+YLSH/100)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=DHSL*YLPB/100*(1+YLSH/100)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + Next; + end; + Order_SubZ.EnableControls; + First; + end; + end; + if not Order_SubF.IsEmpty then + begin + with Order_SubF do + begin + Order_SubF.DisableControls; + First; + while not Eof do + begin + Edit; + if Trim(fieldbyname('YLSHQ').AsString)='' then + YLSH:=0 + else + YLSH:=StrToFloat(fieldbyname('YLSHQ').AsString); + FieldByName('YLQty').Value:=DHSL*(YLSH/1000); + if DHSL*(YLSH/1000)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=DHSL*(YLSH/1000)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + Next; + end; + Order_SubF.EnableControls; + First; + end; + end; +end; +procedure TfrmOrderInPutZP.v3Column4PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:Double; +begin + mvalue:=TcxTextEdit(Sender).EditingValue; + with Order_SubQ do + begin + Edit; + FieldByName('YLQty').Value:=mvalue; + if mvalue-fieldbyname('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=mvalue-fieldbyname('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + end; +end; + +procedure TfrmOrderInPutZP.TBPrintClick(Sender: TObject); +var + fPrintFile:String; +begin + with ADOQueryQG do + begin + Close; + sql.Clear; + sql.Add(' exec P_Print_SGD :OrderNo'); + Parameters.ParamByName('OrderNo').Value:=Trim(OrderNo.Text); + Open; + end; + if ADOQueryQG.IsEmpty then Exit; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\빺.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + RMVariables['dyr']:=Trim(DName); + RM2.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\빺.rmf'),'ʾ',0); + end; +end; + +procedure TfrmOrderInPutZP.v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + EditYCL(Order_SubZ); +end; + +procedure TfrmOrderInPutZP.v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + EditYCL(Order_SubF); +end; + +procedure TfrmOrderInPutZP.v3Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + EditYCL(Order_SubQ); +end; + +procedure TfrmOrderInPutZP.WFBBZUnit1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('WFBBZUnitD'); + flagname:='װ'; + if ShowModal=1 then + begin + Self.FXS:=99; + WFBBZUnit1.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + WFBBZUnit1.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZP.WFBBZUnit2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('WFBBZUnitZ'); + flagname:='аװ'; + if ShowModal=1 then + begin + Self.FXS:=99; + WFBBZUnit2.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + WFBBZUnit2.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZP.WFBBZUnit3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('WFBBZUnitX'); + flagname:='Сװ'; + if ShowModal=1 then + begin + Self.FXS:=99; + WFBBZUnit3.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + WFBBZUnit3.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZP.WFBBZUnit1PropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(WFBBZUnit1,'WFBBZUnitD'); +end; + +procedure TfrmOrderInPutZP.WFBBZUnit2PropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(WFBBZUnit2,'WFBBZUnitZ'); +end; + +procedure TfrmOrderInPutZP.WFBBZUnit3PropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(WFBBZUnit3,'WFBBZUnitX'); +end; + +procedure TfrmOrderInPutZP.BZPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('BZ'); + flagname:='۵λ'; + if ShowModal=1 then + begin + Self.FXS:=99; + BZ.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + BZ.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZP.BZPropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(BZ,'BZ'); +end; + +procedure TfrmOrderInPutZP.WFBBZQty1Change(Sender: TObject); +var + FQty1,FQty2,FQty3,FFK1,FFK2,FKZ1,YLPB,YLSH,DHSL:Double; +begin + if Trim(WFBBZQty1.Text)<>'' then + begin + FQty1:=StrToFloat(WFBBZQty1.Text); + end else + begin + FQty1:=1; + end; + if Trim(WFBBZQty2.Text)<>'' then + begin + FQty2:=StrToFloat(WFBBZQty2.Text); + end else + begin + FQty2:=1; + end; + if Trim(WFBBZQty3.Text)<>'' then + begin + FQty3:=StrToFloat(WFBBZQty3.Text); + end else + begin + FQty3:=1; + end; + if Trim(WFBFK1.Text)<>'' then + begin + FFK1:=StrToFloat(WFBFK1.Text); + end else + begin + FFK1:=0; + end; + if Trim(WFBFK2.Text)<>'' then + begin + FFK2:=StrToFloat(WFBFK2.Text); + end else + begin + FFK2:=0; + end; + if Trim(WFBKZ.Text)<>'' then + begin + FKZ1:=StrToFloat(WFBKZ.Text); + end else + begin + FKZ1:=0; + end; + if Trim(WFBKZ.Text)='' then + begin + OrdQty.Text:=FloatToStr(FQty1*FQty2*FQty3*FFK1*FFK2/10000); + OrdUnit.ItemIndex:=OrdUnit.Items.IndexOf('O'); + end else + begin + OrdQty.Text:=FloatToStr(FQty1*FQty2*FQty3*FFK1*FFK2/10000*FKZ1/1000); + OrdUnit.ItemIndex:=OrdUnit.Items.IndexOf('K'); + end; + if Trim(OrdQty.Text)='' then Exit; + if Trim(OrdUnit.Text)='K' then + DHSL:=StrToFloat(OrdQty.Text) + else + if Trim(OrdUnit.Text)='O' then + begin + if Trim(WFBKZ.Text)='' then Exit; + DHSL:=StrToFloat(OrdQty.Text)*strtofloat(WFBKZ.Text)/1000; + end; + if not Order_SubZ.IsEmpty then + begin + with Order_SubZ do + begin + Order_SubZ.DisableControls; + First; + while not Eof do + begin + Edit; + if Trim(fieldbyname('YLPB').AsString)='' then + YLPB:=0 + else + YLPB:=StrToFloat(fieldbyname('YLPB').AsString); + if Trim(fieldbyname('YLSH').AsString)='' then + YLSH:=0 + else + YLSH:=StrToFloat(fieldbyname('YLSH').AsString); + FieldByName('YLQty').Value:=DHSL*YLPB/100*(1+YLSH/100); + if DHSL*YLPB/100*(1+YLSH/100)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=DHSL*YLPB/100*(1+YLSH/100)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + Next; + end; + Order_SubZ.EnableControls; + First; + end; + end; + if not Order_SubF.IsEmpty then + begin + with Order_SubF do + begin + Order_SubF.DisableControls; + First; + while not Eof do + begin + Edit; + if Trim(fieldbyname('YLSHQ').AsString)='' then + YLSH:=0 + else + YLSH:=StrToFloat(fieldbyname('YLSHQ').AsString); + FieldByName('YLQty').Value:=DHSL*(YLSH/1000); + if DHSL*(YLSH/1000)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=DHSL*(YLSH/1000)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + Next; + end; + Order_SubF.EnableControls; + First; + end; + end; +end; + +end. diff --git a/艾登贸易管理/U_OrderInPutZPLNew.dfm b/艾登贸易管理/U_OrderInPutZPLNew.dfm new file mode 100644 index 0000000..3041725 --- /dev/null +++ b/艾登贸易管理/U_OrderInPutZPLNew.dfm @@ -0,0 +1,2224 @@ +object frmOrderInPutZPLNew: TfrmOrderInPutZPLNew + Left = 55 + Top = 75 + Width = 1185 + Height = 678 + Caption = #25351#31034#21333#24405#20837'('#21046#21697')' + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnClose = FormClose + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Label17: TLabel + Left = 667 + Top = 47 + Width = 40 + Height = 12 + Caption = '>>'#25240#21472 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1177 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_WFBProducttion.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ScrollBox2: TScrollBox + Left = 0 + Top = 339 + Width = 1177 + Height = 302 + Align = alClient + BevelInner = bvNone + BevelOuter = bvNone + Ctl3D = False + ParentCtl3D = False + TabOrder = 1 + object cxGrid3: TcxGrid + Left = 809 + Top = 31 + Width = 366 + Height = 269 + Align = alLeft + TabOrder = 0 + object Tv3: TcxGridDBBandedTableView + PopupMenu = PopupMenu4 + OnMouseDown = Tv3MouseDown + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSourceQ + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'YCLCode' + Column = v3Column1 + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Bands = < + item + Caption = #20854#23427 + Styles.Header = DataLink_WFBProducttion.TextSHuangSe + Width = 400 + end> + object v3Column1: TcxGridDBBandedColumn + Caption = #29289#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v3Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 50 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v3Column2: TcxGridDBBandedColumn + Caption = #35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 41 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object v3Column3: TcxGridDBBandedColumn + Caption = #24211#23384 + DataBinding.FieldName = 'YLKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 44 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object v3Column4: TcxGridDBBandedColumn + Caption = #29992#37327 + DataBinding.FieldName = 'YLQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v3Column4PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 48 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object v3Column5: TcxGridDBBandedColumn + Caption = #21333#20301 + DataBinding.FieldName = 'YLUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 36 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object v3Column6: TcxGridDBBandedColumn + Caption = #30003#36141#25968#37327 + DataBinding.FieldName = 'SGQty' + HeaderAlignmentHorz = taCenter + Width = 61 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object v3Column7: TcxGridDBBandedColumn + Caption = #21069#21333#24211#23384 + DataBinding.FieldName = 'YCLYJKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 48 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object v3Column8: TcxGridDBBandedColumn + Tag = 2 + Caption = #19981#36275 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 31 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object v3Column9: TcxGridDBBandedColumn + Tag = 9 + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 41 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + object cxGrid2: TcxGrid + Left = 425 + Top = 31 + Width = 384 + Height = 269 + Align = alLeft + TabOrder = 1 + object Tv2: TcxGridDBBandedTableView + PopupMenu = PopupMenu4 + OnMouseDown = Tv2MouseDown + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSourceF + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'YCLCode' + Column = v2Column1 + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Bands = < + item + Caption = #36741#21161#21407#26009 + Styles.Header = DataLink_WFBProducttion.FonePurple + Width = 428 + end> + object v2Column1: TcxGridDBBandedColumn + Caption = #21407#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 60 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v2Column2: TcxGridDBBandedColumn + Caption = #32791#29575#8240 + DataBinding.FieldName = 'YLSHQ' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 37 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object v2Column3: TcxGridDBBandedColumn + Caption = #29992#37327'KG' + DataBinding.FieldName = 'YLQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 39 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object v2Column4: TcxGridDBBandedColumn + Caption = #24211#23384 + DataBinding.FieldName = 'YLKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 36 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object v2Column5: TcxGridDBBandedColumn + Caption = #35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 56 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object v2Column6: TcxGridDBBandedColumn + Caption = #30003#36141#25968#37327 + DataBinding.FieldName = 'SGQty' + HeaderAlignmentHorz = taCenter + Width = 68 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object v2Column7: TcxGridDBBandedColumn + Caption = #21069#21333#24211#23384 + DataBinding.FieldName = 'YCLYJKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 52 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object v2Column8: TcxGridDBBandedColumn + Tag = 2 + Caption = #19981#36275 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Width = 31 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object v2Column9: TcxGridDBBandedColumn + Tag = 9 + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 49 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 31 + Width = 425 + Height = 269 + Align = alLeft + TabOrder = 2 + object Tv1: TcxGridDBBandedTableView + PopupMenu = PopupMenu4 + OnMouseDown = Tv1MouseDown + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSourceZ + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'YCLCode' + Column = v1Column1 + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Bands = < + item + Caption = #20027#35201#21407#26009 + Styles.Header = DataLink_WFBProducttion.FontBlue + Width = 487 + end> + object v1Column1: TcxGridDBBandedColumn + Caption = #21407#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v1Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 70 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v1Column2: TcxGridDBBandedColumn + Caption = #37197#27604'%' + DataBinding.FieldName = 'YLPB' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 38 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object v1Column3: TcxGridDBBandedColumn + Caption = #25439#32791'%' + DataBinding.FieldName = 'YLSH' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column3PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 40 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object v1Column4: TcxGridDBBandedColumn + Caption = #29992#37327'KG' + DataBinding.FieldName = 'YLQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 42 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object v1Column5: TcxGridDBBandedColumn + Caption = #24211#23384 + DataBinding.FieldName = 'YLKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 40 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object v1Column6: TcxGridDBBandedColumn + Caption = #35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 56 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object v1Column7: TcxGridDBBandedColumn + Caption = #30003#36141#25968#37327 + DataBinding.FieldName = 'SGQty' + HeaderAlignmentHorz = taCenter + Width = 65 + Position.BandIndex = 0 + Position.ColIndex = 9 + Position.RowIndex = 0 + end + object v1Column8: TcxGridDBBandedColumn + Caption = #21069#21333#24211#23384 + DataBinding.FieldName = 'YCLYJKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object v1Column9: TcxGridDBBandedColumn + Tag = 2 + Caption = #19981#36275 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Content = DataLink_WFBProducttion.FoneRed + Width = 38 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object v1Column10: TcxGridDBBandedColumn + Tag = 9 + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 41 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 0 + Width = 1175 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_WFBProducttion.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 3 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + object TBPrint: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #25171#21360#35831#36141#21333 + ImageIndex = 96 + OnClick = TBPrintClick + end + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 29 + Width = 1177 + Height = 310 + Align = alTop + BevelInner = bvNone + BevelOuter = bvNone + Color = clBtnFace + Ctl3D = False + ParentColor = False + ParentCtl3D = False + TabOrder = 2 + object Label1: TLabel + Left = 197 + Top = 15 + Width = 66 + Height = 12 + Caption = #35746' '#21333' '#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 533 + Top = 127 + Width = 53 + Height = 12 + Caption = #20195' '#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label3: TLabel + Left = 538 + Top = 15 + Width = 65 + Height = 12 + Caption = #19979#21333#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 375 + Top = 15 + Width = 53 + Height = 12 + Caption = #23458' '#25143#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 375 + Top = 46 + Width = 52 + Height = 12 + Caption = #21040#36798#28207#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label16: TLabel + Left = 16 + Top = 45 + Width = 65 + Height = 12 + Caption = #39044#20272#25968#37327#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 14 + Top = 68 + Width = 1140 + Height = 12 + Caption = + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + Font.Charset = GB2312_CHARSET + Font.Color = clFuchsia + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label20: TLabel + Left = 14 + Top = 116 + Width = 1146 + Height = 12 + Caption = + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + Font.Charset = GB2312_CHARSET + Font.Color = clFuchsia + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label21: TLabel + Left = 25 + Top = 88 + Width = 34 + Height = 12 + Caption = 'ETA'#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label22: TLabel + Left = 257 + Top = 90 + Width = 34 + Height = 12 + Caption = 'ETD'#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label23: TLabel + Left = 491 + Top = 89 + Width = 39 + Height = 12 + Caption = #35013#26588#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label24: TLabel + Left = 733 + Top = 88 + Width = 53 + Height = 12 + Caption = #20837' '#24211#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label25: TLabel + Left = 988 + Top = 89 + Width = 39 + Height = 12 + Caption = #29983#20135#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label26: TLabel + Left = 221 + Top = 88 + Width = 13 + Height = 15 + Caption = #22825 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label27: TLabel + Left = 165 + Top = 88 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label28: TLabel + Left = 238 + Top = 88 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label29: TLabel + Left = 455 + Top = 88 + Width = 13 + Height = 15 + Caption = #22825 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label30: TLabel + Left = 400 + Top = 88 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label31: TLabel + Left = 472 + Top = 88 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 958 + Top = 88 + Width = 13 + Height = 15 + Caption = #22825 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label32: TLabel + Left = 903 + Top = 88 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label33: TLabel + Left = 972 + Top = 88 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 14 + Top = 294 + Width = 1146 + Height = 12 + Caption = + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + Font.Charset = GB2312_CHARSET + Font.Color = clFuchsia + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label5: TLabel + Left = 22 + Top = 141 + Width = 15 + Height = 126 + Caption = #35814#13#10#13#10#13#10#13#10#13#10#13#10#13#10#13#10#21333 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 971 + Top = 126 + Width = 60 + Height = 14 + Caption = #25171#21253#35814#32454 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 197 + Top = 46 + Width = 65 + Height = 12 + Caption = #35745#20215#21333#20301#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 762 + Top = 14 + Width = 52 + Height = 12 + Caption = #29983#20135#32447#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 762 + Top = 46 + Width = 52 + Height = 12 + Caption = #32593#32467#26500#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label14: TLabel + Left = 17 + Top = 15 + Width = 67 + Height = 12 + Caption = #32534' '#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label35: TLabel + Left = 907 + Top = 5 + Width = 15 + Height = 56 + Caption = #27880#13#10#24847#13#10#20107#13#10#39033 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 538 + Top = 47 + Width = 67 + Height = 12 + Caption = #25439' '#32791#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 602 + Top = 47 + Width = 26 + Height = 12 + Caption = #28857#26029 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label15: TLabel + Left = 671 + Top = 47 + Width = 26 + Height = 12 + Caption = #25240#21472 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label34: TLabel + Left = 741 + Top = 47 + Width = 7 + Height = 12 + Caption = '%' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object OrderNo: TEdit + Left = 259 + Top = 13 + Width = 103 + Height = 18 + Enabled = False + TabOrder = 0 + end + object OrderDate: TDateTimePicker + Left = 604 + Top = 11 + Width = 144 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + Enabled = False + TabOrder = 1 + end + object WFBCodeName: TcxButtonEdit + Left = 581 + Top = 123 + ParentShowHint = False + Properties.BeepOnError = True + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = WFBCodeNamePropertiesButtonClick + Properties.OnChange = WFBCodeNamePropertiesChange + ShowHint = False + TabOrder = 2 + Visible = False + OnKeyDown = WFBCodeNameKeyDown + Width = 97 + end + object CustomNoName: TcxButtonEdit + Left = 426 + Top = 11 + Hint = 'CustomerNo' + BeepOnEnter = False + Enabled = False + ParentShowHint = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = CustomNoNamePropertiesButtonClick + Properties.OnChange = CustomNoNamePropertiesChange + ShowHint = False + TabOrder = 3 + OnKeyDown = WFBCodeNameKeyDown + Width = 100 + end + object ArrivalPortName: TcxButtonEdit + Left = 426 + Top = 43 + BeepOnEnter = False + Enabled = False + ParentShowHint = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = ArrivalPortNamePropertiesButtonClick + Properties.OnChange = ArrivalPortNamePropertiesChange + ShowHint = False + TabOrder = 4 + OnKeyDown = WFBCodeNameKeyDown + Width = 100 + end + object OrdQty: TEdit + Left = 79 + Top = 43 + Width = 49 + Height = 18 + Enabled = False + ReadOnly = True + TabOrder = 5 + OnChange = OrdQtyChange + OnKeyPress = OrdQtyKeyPress + end + object OrdUnit: TComboBox + Left = 129 + Top = 43 + Width = 51 + Height = 20 + Style = csDropDownList + Ctl3D = False + Enabled = False + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 12 + ParentCtl3D = False + ParentFont = False + TabOrder = 6 + OnChange = OrdQtyChange + Items.Strings = ( + #13199 + #13217) + end + object ETADate: TDateTimePicker + Left = 57 + Top = 85 + Width = 104 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + Enabled = False + TabOrder = 7 + OnChange = ETADateChange + end + object ETDDate: TDateTimePicker + Left = 291 + Top = 85 + Width = 104 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + Enabled = False + TabOrder = 8 + end + object ZGDate: TDateTimePicker + Left = 527 + Top = 85 + Width = 104 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + Enabled = False + TabOrder = 9 + end + object BegRKDate: TDateTimePicker + Left = 784 + Top = 85 + Width = 115 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + Enabled = False + TabOrder = 10 + OnChange = BegRKDateChange + end + object BegSCDate: TDateTimePicker + Left = 1022 + Top = 85 + Width = 104 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + Enabled = False + TabOrder = 11 + end + object Day1: TEdit + Left = 184 + Top = 87 + Width = 35 + Height = 18 + Enabled = False + TabOrder = 12 + OnChange = Day1Change + OnKeyPress = OrdQtyKeyPress + end + object Day2: TEdit + Left = 418 + Top = 87 + Width = 35 + Height = 18 + Enabled = False + TabOrder = 13 + OnChange = Day2Change + OnKeyPress = OrdQtyKeyPress + end + object Day3: TEdit + Left = 921 + Top = 87 + Width = 35 + Height = 18 + Enabled = False + TabOrder = 14 + OnChange = Day3Change + OnKeyPress = OrdQtyKeyPress + end + object cxGrid5: TcxGrid + Left = 41 + Top = 126 + Width = 922 + Height = 172 + TabOrder = 15 + object TvSub: TcxGridDBTableView + PopupMenu = PopupMenu2 + OnKeyPress = TVZDYKeyPress + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = TvSubColumn1 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBProducttion.SHuangSe + Styles.IncSearch = DataLink_WFBProducttion.SHuangSe + Styles.Selection = DataLink_WFBProducttion.SHuangSe + object vSubColumn16: TcxGridDBColumn + Tag = 9 + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 38 + end + object vSubColumn3: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'XHNO' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 34 + end + object vSubColumn11: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'SubType' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.Items.Strings = ( + #28857#26029 + #25240#21472) + Properties.OnEditValueChanged = vSubColumn11PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 41 + end + object vSubColumn12: TcxGridDBColumn + Caption = #20135#21697#20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = vSubColumn12PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.FonePurple + Width = 69 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 48 + end + object vSubColumn2: TcxGridDBColumn + Caption = #33457#32441 + DataBinding.FieldName = 'SWFBHW' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = vSubColumn2PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 41 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #20811#37325'g/'#13217 + DataBinding.FieldName = 'SWFBKZ' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 63 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #38271#24230'cm' + DataBinding.FieldName = 'SWFBFK1' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn4PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 46 + end + object vSubColumn4: TcxGridDBColumn + Caption = #23485#24230'cm' + DataBinding.FieldName = 'SWFBFK2' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = vSubColumn4PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 46 + end + object vSubColumn5: TcxGridDBColumn + Caption = #22823#25968#37327 + DataBinding.FieldName = 'SWFBBZQty1' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = vSubColumn5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 46 + end + object vSubColumn6: TcxGridDBColumn + Caption = #22823#21333#20301 + DataBinding.FieldName = 'SWFBBZUnit1' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = vSubColumn6PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 45 + end + object vSubColumn7: TcxGridDBColumn + Caption = #20013#25968#37327 + DataBinding.FieldName = 'SWFBBZQty2' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = vSubColumn7PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 45 + end + object vSubColumn8: TcxGridDBColumn + Caption = #20013#21333#20301 + DataBinding.FieldName = 'SWFBBZUnit2' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = vSubColumn8PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 45 + end + object vSubColumn9: TcxGridDBColumn + Caption = #23567#25968#37327 + DataBinding.FieldName = 'SWFBBZQty3' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = vSubColumn9PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 48 + end + object vSubColumn10: TcxGridDBColumn + Caption = #23567#21333#20301 + DataBinding.FieldName = 'SWFBBZUnit3' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = vSubColumn10PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 44 + end + object TvSubColumn1: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'SOrdQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 48 + end + object vSubColumn13: TcxGridDBColumn + Caption = #32593#23380#30446#25968 + DataBinding.FieldName = 'WKMS' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = vSubColumn13PropertiesButtonClick + Styles.Header = DataLink_WFBProducttion.Default + Width = 60 + end + object vSubColumn15: TcxGridDBColumn + Caption = #21367#22343#37325#19979#38480 + DataBinding.FieldName = 'KZSmal' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 77 + end + object vSubColumn14: TcxGridDBColumn + Caption = #21367#22343#37325#19978#38480 + DataBinding.FieldName = 'KZBig' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 69 + end + end + object cxGridLevel4: TcxGridLevel + GridView = TvSub + end + end + object cxGrid4: TcxGrid + Left = 968 + Top = 141 + Width = 160 + Height = 154 + Enabled = False + TabOrder = 16 + object TVDB: TcxGridDBTableView + PopupMenu = PopupMenu1 + OnKeyPress = TVZDYKeyPress + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TVZDYCellDblClick + DataController.DataSource = DataSource3 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + object cxGridDBColumn1: TcxGridDBColumn + Caption = #21253#25968#37327 + DataBinding.FieldName = 'BSL' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.handBlack + Width = 48 + end + object VDBColumn1: TcxGridDBColumn + Caption = #21367#25968#37327 + DataBinding.FieldName = 'JSL' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 46 + end + object VDBColumn2: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'DBUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 57 + end + end + object cxGridLevel3: TcxGridLevel + GridView = TVDB + end + end + object Note: TRichEdit + Left = 923 + Top = 2 + Width = 203 + Height = 63 + Enabled = False + TabOrder = 17 + end + object SCXName: TcxButtonEdit + Left = 810 + Top = 10 + Hint = 'FactoryNo1' + BeepOnEnter = False + Enabled = False + ParentShowHint = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = SCXNamePropertiesButtonClick + Properties.OnChange = SCXNamePropertiesChange + ShowHint = False + TabOrder = 18 + OnKeyDown = WFBCodeNameKeyDown + Width = 88 + end + object WJGName: TcxButtonEdit + Left = 810 + Top = 43 + Hint = 'FactoryNo2' + BeepOnEnter = False + Enabled = False + ParentShowHint = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = WJGNamePropertiesButtonClick + Properties.OnChange = WJGNamePropertiesChange + ShowHint = False + TabOrder = 19 + OnKeyDown = WFBCodeNameKeyDown + Width = 88 + end + object PanZDY: TPanel + Left = 974 + Top = 133 + Width = 151 + Height = 153 + TabOrder = 20 + Visible = False + object CXGridZDY: TcxGrid + Left = 3 + Top = 4 + Width = 142 + Height = 113 + TabOrder = 0 + object TVZDY: TcxGridDBTableView + OnKeyPress = TVZDYKeyPress + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TVZDYCellDblClick + DataController.DataSource = DataSource2 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + object VHelpZDYName: TcxGridDBColumn + DataBinding.FieldName = 'ZDYName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.handBlack + Width = 129 + IsCaptionAssigned = True + end + end + object CXGridZDYLevel1: TcxGridLevel + GridView = TVZDY + end + end + object Button1: TButton + Left = 40 + Top = 120 + Width = 65 + Height = 25 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button1Click + end + end + object OrderCode: TEdit + Left = 79 + Top = 13 + Width = 103 + Height = 18 + Enabled = False + TabOrder = 21 + end + object BZ: TcxButtonEdit + Left = 259 + Top = 43 + BeepOnEnter = False + Enabled = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = cxButtonEdit1PropertiesButtonClick + Properties.OnChange = cxButtonEdit1PropertiesChange + TabOrder = 22 + OnKeyDown = WFBCodeNameKeyDown + Width = 105 + end + object DD: TEdit + Left = 629 + Top = 44 + Width = 40 + Height = 18 + Enabled = False + TabOrder = 23 + OnChange = DDChange + OnKeyPress = OrdQtyKeyPress + end + object ZD: TEdit + Left = 699 + Top = 44 + Width = 40 + Height = 18 + Enabled = False + TabOrder = 24 + OnChange = ZDChange + OnKeyPress = OrdQtyKeyPress + end + end + object Panel1: TPanel + Left = 1160 + Top = 344 + Width = 825 + Height = 297 + TabOrder = 3 + Visible = False + object cxGrid6: TcxGrid + Left = 11 + Top = 32 + Width = 299 + Height = 209 + PopupMenu = PopupMenu1 + TabOrder = 0 + object Tvsel: TcxGridDBTableView + PopupMenu = PopupMenu3 + OnKeyPress = TVZDYKeyPress + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DSSel + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + object vselColumn1: TcxGridDBColumn + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.FonePurple + Width = 42 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 61 + end + object cxGridDBColumn7: TcxGridDBColumn + Caption = #33457#32441 + DataBinding.FieldName = 'SWFBHW' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = vSubColumn2PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.FonePurple + Width = 51 + end + object cxGridDBColumn8: TcxGridDBColumn + Caption = #20811#37325'g/'#13217 + DataBinding.FieldName = 'SWFBKZ' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.handBlack + Width = 72 + end + object cxGridDBColumn9: TcxGridDBColumn + Caption = #24133#23485'cm' + DataBinding.FieldName = 'SWFBFK' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 52 + end + end + object cxGridLevel5: TcxGridLevel + GridView = Tvsel + end + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 823 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #36873#21333 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 789 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object Button2: TButton + Left = 64 + Top = 251 + Width = 65 + Height = 25 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Button2Click + end + object Button3: TButton + Left = 168 + Top = 251 + Width = 49 + Height = 25 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = Button3Click + end + object cxGrid7: TcxGrid + Left = 312 + Top = 32 + Width = 505 + Height = 257 + TabOrder = 4 + object TVKCSel: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource4 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'DefStr1' + end + item + Format = 'DefStr2' + Column = v1ShortName + end + item + Format = 'RollUnit' + Column = v1UnitName + end + item + Format = 'YCLCode' + Column = v1P_ChnName + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Quantity + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = DataLink_WFBProducttion.Default + object TVKCSelColumn1: TcxGridDBColumn + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taRightJustify + Width = 39 + end + object v1P_ChnName: TcxGridDBColumn + Tag = 2 + Caption = #29289#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 80 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 63 + end + object v1ShortName: TcxGridDBColumn + Caption = #20379#24212#21830 + DataBinding.FieldName = 'GYSName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 68 + end + object v1Quantity: TcxGridDBColumn + Tag = 2 + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'KCQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 70 + end + object VKCSelColumn2: TcxGridDBColumn + Caption = #39044#35745#29992#37327 + DataBinding.FieldName = 'YJYL' + HeaderAlignmentHorz = taCenter + Width = 57 + end + object VKCSelColumn1: TcxGridDBColumn + Caption = #39044#35745#24211#23384 + DataBinding.FieldName = 'YJKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 65 + end + object v1UnitName: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'KCUint' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 45 + end + end + object cxGridLevel6: TcxGridLevel + GridView = TVKCSel + end + end + end + object ADOTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 704 + Top = 309 + end + object ADOCmd: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 744 + Top = 309 + end + object DataSourceZ: TDataSource + DataSet = Order_SubZ + Left = 296 + Top = 440 + end + object Order_SubZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 256 + Top = 440 + end + object DataSource2: TDataSource + DataSet = ADOZDY + Left = 760 + end + object ADOZDY: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 728 + Top = 65533 + end + object CDS_ZDY: TClientDataSet + Aggregates = <> + Params = <> + Left = 800 + end + object ADOQuery1: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 784 + Top = 309 + end + object PopupMenu1: TPopupMenu + Left = 544 + Top = 253 + object N1: TMenuItem + Caption = #22686#34892 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #21024#34892 + OnClick = N2Click + end + end + object DataSource3: TDataSource + DataSet = CDS_DB + Left = 544 + Top = 200 + end + object CDS_DB: TClientDataSet + Aggregates = <> + Params = <> + Left = 480 + Top = 224 + end + object Order_SubF: TClientDataSet + Aggregates = <> + Params = <> + Left = 744 + Top = 488 + end + object DataSourceF: TDataSource + DataSet = Order_SubF + Left = 728 + Top = 512 + end + object Order_SubQ: TClientDataSet + Aggregates = <> + Params = <> + Left = 800 + Top = 448 + end + object DataSourceQ: TDataSource + DataSet = Order_SubQ + Left = 832 + Top = 448 + end + object ADOQueryQG: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 480 + Top = 309 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryQG + Left = 448 + Top = 320 + end + object RM2: 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 392 + Top = 312 + ReportData = {} + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 456 + Top = 312 + end + object PopupMenu2: TPopupMenu + Left = 128 + Top = 237 + object MenuItem1: TMenuItem + Caption = #22686#34892 + OnClick = MenuItem1Click + end + object MenuItem2: TMenuItem + Caption = #21024#34892 + OnClick = MenuItem2Click + end + object N3: TMenuItem + Caption = #20840#36873 + OnClick = N3Click + end + object N4: TMenuItem + Caption = #20840#24323 + OnClick = N4Click + end + end + object DataSource1: TDataSource + DataSet = CDS_Sub + Left = 112 + Top = 200 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 96 + Top = 232 + end + object DSSel: TDataSource + DataSet = CDS_Sel + Left = 440 + Top = 376 + end + object CDS_Sel: TClientDataSet + Aggregates = <> + Params = <> + Left = 424 + Top = 408 + end + object PopupMenu3: TPopupMenu + Left = 432 + Top = 477 + object MenuItem3: TMenuItem + Caption = #20840#36873 + OnClick = MenuItem3Click + end + object MenuItem4: TMenuItem + Caption = #20840#24323 + OnClick = MenuItem4Click + end + end + object DataSource4: TDataSource + DataSet = CDS_KCSel + Left = 672 + Top = 432 + end + object CDS_KCSel: TClientDataSet + Aggregates = <> + Params = <> + Left = 712 + Top = 432 + end + object cxGridPopupMenu5: TcxGridPopupMenu + Grid = cxGrid5 + PopupMenus = <> + Left = 120 + Top = 465 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 160 + Top = 454 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 160 + Top = 494 + end + object cxGridPopupMenu3: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 160 + Top = 534 + end + object cxGridPopupMenu4: TcxGridPopupMenu + Grid = cxGrid4 + PopupMenus = <> + Left = 120 + Top = 502 + end + object PopupMenu4: TPopupMenu + Left = 96 + Top = 461 + object MenuItem7: TMenuItem + Caption = #20840#36873 + OnClick = MenuItem7Click + end + object MenuItem8: TMenuItem + Caption = #20840#24323 + OnClick = MenuItem8Click + end + end +end diff --git a/艾登贸易管理/U_OrderInPutZPLNew.pas b/艾登贸易管理/U_OrderInPutZPLNew.pas new file mode 100644 index 0000000..9e05447 --- /dev/null +++ b/艾登贸易管理/U_OrderInPutZPLNew.pas @@ -0,0 +1,3706 @@ +unit U_OrderInPutZPLNew; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer, + cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB, + ExtCtrls, BtnEdit, cxCalendar, cxGridBandedTableView, + cxGridDBBandedTableView, Menus, RM_Common, RM_Class, RM_e_Xls, + RM_GridReport, RM_System, RM_Dataset, cxCheckBox, cxDropDownEdit, + cxGridCustomPopupMenu, cxGridPopupMenu; + +type + TfrmOrderInPutZPLNew = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + DataSourceZ: TDataSource; + Order_SubZ: TClientDataSet; + DataSource2: TDataSource; + ADOZDY: TADOQuery; + CDS_ZDY: TClientDataSet; + ADOQuery1: TADOQuery; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + DataSource3: TDataSource; + CDS_DB: TClientDataSet; + Order_SubF: TClientDataSet; + DataSourceF: TDataSource; + Order_SubQ: TClientDataSet; + DataSourceQ: TDataSource; + ScrollBox2: TScrollBox; + cxGrid3: TcxGrid; + Tv3: TcxGridDBBandedTableView; + v3Column1: TcxGridDBBandedColumn; + v3Column2: TcxGridDBBandedColumn; + v3Column3: TcxGridDBBandedColumn; + v3Column4: TcxGridDBBandedColumn; + v3Column5: TcxGridDBBandedColumn; + cxGridLevel2: TcxGridLevel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBBandedTableView; + v2Column1: TcxGridDBBandedColumn; + v2Column2: TcxGridDBBandedColumn; + v2Column3: TcxGridDBBandedColumn; + v2Column4: TcxGridDBBandedColumn; + v2Column5: TcxGridDBBandedColumn; + cxGridLevel1: TcxGridLevel; + cxGrid1: TcxGrid; + Tv1: TcxGridDBBandedTableView; + v1Column1: TcxGridDBBandedColumn; + v1Column2: TcxGridDBBandedColumn; + v1Column3: TcxGridDBBandedColumn; + v1Column4: TcxGridDBBandedColumn; + v1Column5: TcxGridDBBandedColumn; + v1Column6: TcxGridDBBandedColumn; + cxGrid1Level1: TcxGridLevel; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + TBPrint: TToolButton; + v1Column7: TcxGridDBBandedColumn; + v2Column6: TcxGridDBBandedColumn; + v3Column6: TcxGridDBBandedColumn; + v1Column8: TcxGridDBBandedColumn; + v2Column7: TcxGridDBBandedColumn; + v3Column7: TcxGridDBBandedColumn; + v1Column9: TcxGridDBBandedColumn; + v2Column8: TcxGridDBBandedColumn; + v3Column8: TcxGridDBBandedColumn; + ADOQueryQG: TADOQuery; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + RMXLSExport1: TRMXLSExport; + PopupMenu2: TPopupMenu; + MenuItem1: TMenuItem; + MenuItem2: TMenuItem; + DataSource1: TDataSource; + CDS_Sub: TClientDataSet; + DSSel: TDataSource; + CDS_Sel: TClientDataSet; + ScrollBox1: TScrollBox; + Label1: TLabel; + Label2: TLabel; + Label3: TLabel; + Label12: TLabel; + Label13: TLabel; + Label16: TLabel; + Label19: TLabel; + Label20: TLabel; + Label21: TLabel; + Label22: TLabel; + Label23: TLabel; + Label24: TLabel; + Label25: TLabel; + Label26: TLabel; + Label27: TLabel; + Label28: TLabel; + Label29: TLabel; + Label30: TLabel; + Label31: TLabel; + Label18: TLabel; + Label32: TLabel; + Label33: TLabel; + Label4: TLabel; + Label5: TLabel; + Label7: TLabel; + Label9: TLabel; + Label6: TLabel; + Label8: TLabel; + OrderNo: TEdit; + OrderDate: TDateTimePicker; + WFBCodeName: TcxButtonEdit; + CustomNoName: TcxButtonEdit; + ArrivalPortName: TcxButtonEdit; + OrdQty: TEdit; + OrdUnit: TComboBox; + ETADate: TDateTimePicker; + ETDDate: TDateTimePicker; + ZGDate: TDateTimePicker; + BegRKDate: TDateTimePicker; + BegSCDate: TDateTimePicker; + Day1: TEdit; + Day2: TEdit; + Day3: TEdit; + cxGrid5: TcxGrid; + TvSub: TcxGridDBTableView; + vSubColumn3: TcxGridDBColumn; + vSubColumn11: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + vSubColumn2: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + vSubColumn4: TcxGridDBColumn; + vSubColumn5: TcxGridDBColumn; + vSubColumn6: TcxGridDBColumn; + vSubColumn7: TcxGridDBColumn; + vSubColumn8: TcxGridDBColumn; + vSubColumn9: TcxGridDBColumn; + vSubColumn10: TcxGridDBColumn; + TvSubColumn1: TcxGridDBColumn; + cxGridLevel4: TcxGridLevel; + cxGrid4: TcxGrid; + TVDB: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + VDBColumn1: TcxGridDBColumn; + VDBColumn2: TcxGridDBColumn; + cxGridLevel3: TcxGridLevel; + Note: TRichEdit; + SCXName: TcxButtonEdit; + WJGName: TcxButtonEdit; + PanZDY: TPanel; + CXGridZDY: TcxGrid; + TVZDY: TcxGridDBTableView; + VHelpZDYName: TcxGridDBColumn; + CXGridZDYLevel1: TcxGridLevel; + Button1: TButton; + Label14: TLabel; + OrderCode: TEdit; + vSubColumn12: TcxGridDBColumn; + PopupMenu3: TPopupMenu; + MenuItem3: TMenuItem; + MenuItem4: TMenuItem; + BZ: TcxButtonEdit; + Label35: TLabel; + vSubColumn13: TcxGridDBColumn; + vSubColumn14: TcxGridDBColumn; + vSubColumn15: TcxGridDBColumn; + Panel1: TPanel; + cxGrid6: TcxGrid; + Tvsel: TcxGridDBTableView; + vselColumn1: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridDBColumn7: TcxGridDBColumn; + cxGridDBColumn8: TcxGridDBColumn; + cxGridDBColumn9: TcxGridDBColumn; + cxGridLevel5: TcxGridLevel; + Panel10: TPanel; + Image2: TImage; + Button2: TButton; + Button3: TButton; + cxGrid7: TcxGrid; + TVKCSel: TcxGridDBTableView; + TVKCSelColumn1: TcxGridDBColumn; + v1P_ChnName: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + v1ShortName: TcxGridDBColumn; + v1Quantity: TcxGridDBColumn; + VKCSelColumn2: TcxGridDBColumn; + VKCSelColumn1: TcxGridDBColumn; + v1UnitName: TcxGridDBColumn; + cxGridLevel6: TcxGridLevel; + DataSource4: TDataSource; + CDS_KCSel: TClientDataSet; + v1Column10: TcxGridDBBandedColumn; + vSubColumn16: TcxGridDBColumn; + v2Column9: TcxGridDBBandedColumn; + v3Column9: TcxGridDBBandedColumn; + cxGridPopupMenu5: TcxGridPopupMenu; + cxGridPopupMenu1: TcxGridPopupMenu; + cxGridPopupMenu2: TcxGridPopupMenu; + cxGridPopupMenu3: TcxGridPopupMenu; + cxGridPopupMenu4: TcxGridPopupMenu; + N3: TMenuItem; + N4: TMenuItem; + Label10: TLabel; + Label11: TLabel; + DD: TEdit; + Label15: TLabel; + ZD: TEdit; + Label17: TLabel; + Label34: TLabel; + PopupMenu4: TPopupMenu; + MenuItem7: TMenuItem; + MenuItem8: TMenuItem; + procedure TBCloseClick(Sender: TObject); + procedure TVZDYCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button1Click(Sender: TObject); + procedure WFBCodeNameKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); + procedure TVZDYKeyPress(Sender: TObject; var Key: Char); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure CustomNoNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure CustomNoNamePropertiesChange(Sender: TObject); + procedure ArrivalPortNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure SCXNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WJGNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WFBCodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WFBCodeNamePropertiesChange(Sender: TObject); + procedure ArrivalPortNamePropertiesChange(Sender: TObject); + procedure SCXNamePropertiesChange(Sender: TObject); + procedure WJGNamePropertiesChange(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure Day1Change(Sender: TObject); + procedure OrdQtyKeyPress(Sender: TObject; var Key: Char); + procedure Day2Change(Sender: TObject); + procedure Day3Change(Sender: TObject); + procedure ETADateChange(Sender: TObject); + procedure BegRKDateChange(Sender: TObject); + procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv3MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure v1Column2PropertiesEditValueChanged(Sender: TObject); + procedure v1Column3PropertiesEditValueChanged(Sender: TObject); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure OrdQtyChange(Sender: TObject); + procedure v3Column4PropertiesEditValueChanged(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v3Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure MenuItem1Click(Sender: TObject); + procedure MenuItem2Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure vSubColumn2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBColumn2PropertiesEditValueChanged(Sender: TObject); + procedure TvSubColumn1PropertiesEditValueChanged(Sender: TObject); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, + Y: Integer); + procedure Image2Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure vSubColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure vSubColumn8PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure vSubColumn10PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure BZPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure BZPropertiesChange(Sender: TObject); + procedure cxGridDBColumn4PropertiesEditValueChanged(Sender: TObject); + procedure vSubColumn4PropertiesEditValueChanged(Sender: TObject); + procedure vSubColumn5PropertiesEditValueChanged(Sender: TObject); + procedure vSubColumn7PropertiesEditValueChanged(Sender: TObject); + procedure vSubColumn9PropertiesEditValueChanged(Sender: TObject); + procedure vSubColumn12PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure MenuItem3Click(Sender: TObject); + procedure MenuItem4Click(Sender: TObject); + procedure cxButtonEdit1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxButtonEdit1PropertiesChange(Sender: TObject); + procedure vSubColumn13PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure TBChkOkClick(Sender: TObject); + procedure TBChkNoClick(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure N3Click(Sender: TObject); + procedure N4Click(Sender: TObject); + procedure DDChange(Sender: TObject); + procedure ZDChange(Sender: TObject); + procedure vSubColumn11PropertiesEditValueChanged(Sender: TObject); + procedure MenuItem7Click(Sender: TObject); + procedure MenuItem8Click(Sender: TObject); + private + MInt,ChkInt,CloInt:Integer; + procedure InitData(); + procedure ZDYHelp(FButn:TcxButtonEdit;LType:string); + function SaveData():Boolean; + procedure DelOrderSub(FOrder_Sub:TClientDataSet); + procedure SELYCL(SCDS_Sub:TClientDataSet); + procedure EditYCL(SCDS_Sub:TClientDataSet); + function SaveData10():Boolean; + procedure SaveYCL(SCDS_Sub:TClientDataSet); + procedure YLUpdate(); + procedure UpMainId(); + procedure YCLDataUPdate(); + procedure SELYCLKC(SCDS_Sub:TClientDataSet); + procedure OnlyUpYCLData(); + procedure YCLPBIDUPdate(SOrder_SubZ:TClientDataSet); + procedure SelAll(SCDS_Sub:TClientDataSet;FSEL:Boolean); + { Private declarations } + public + PState,BState,CopyInt:Integer; + FMainId,OrderType:String; + FXS:Integer; + { Public declarations } + end; + +var + frmOrderInPutZPLNew: TfrmOrderInPutZPLNew; + +implementation +uses + U_DataLink,U_ZDYHelp,U_Fun,U_GetPGJBInList; + +{$R *.dfm} + +procedure TfrmOrderInPutZPLNew.TBCloseClick(Sender: TObject); +begin + WriteCxBandedGrid('1',Tv1,'޷IJ'); + WriteCxBandedGrid('ϸ1',Tv2,'޷IJ'); + WriteCxBandedGrid('1',Tv3,'޷IJ'); + WriteCxGrid('ӱ1',TvSub,'޷IJ'); + WriteCxGrid('1',TVDB,'޷IJ'); + { if PState<>3 then + begin + if Application.MessageBox('ǷҪݣ','ʾ',32+4)=IDYES then + begin + CloInt:=1; + TBSave.Click; + Exit; + end; + end; } + Close; + + +end; +procedure TfrmOrderInPutZPLNew.SelAll(SCDS_Sub:TClientDataSet;FSEL:Boolean); +begin + if SCDS_Sub.IsEmpty then exit; + with SCDS_Sub do + begin + First; + while not eof do + begin + Edit; + FieldByName('SSel').Value:=FSEL; + post; + Next; + end; + end; +end; + +procedure TfrmOrderInPutZPLNew.InitData(); +var + i:Integer; +begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add(' exec P_WFBOrder_List :begdate,:endate,:MainId'); + if PState>0 then + begin + ADOQuery1.Parameters.ParamByName('MainId').Value:=Trim(FMainId); + ADOQuery1.Parameters.ParamByName('begdate').Value:=''; + ADOQuery1.Parameters.ParamByName('endate').Value:=''; + end; + if PState=0 then + begin + ADOQuery1.Parameters.ParamByName('MainId').Value:='999999'; + ADOQuery1.Parameters.ParamByName('begdate').Value:=''; + ADOQuery1.Parameters.ParamByName('endate').Value:=''; + end; + Open; + end; + // SCreateCDS20(ADOQuery1,Order_Sub); + //SInitCDSData20(ADOQuery1,Order_Sub); + SCSHData(ADOQuery1,ScrollBox1,0); + if PState=0 then + begin + OrderDate.DateTime:=StrToDate(FormatDateTime('yyyy-MM-dd',SGetServerDateTime(ADOTemp))); + ETADate.DateTime:=OrderDate.DateTime; + ETDDate.DateTime:=OrderDate.DateTime; + ZGDate.DateTime:=OrderDate.DateTime; + BegRKDate.DateTime:=OrderDate.DateTime; + BegSCDate.DateTime:=OrderDate.DateTime; + ETADate.Checked:=False; + ETDDate.Checked:=False; + ZGDate.Checked:=False; + BegRKDate.Checked:=False; + BegSCDate.Checked:=False; + //OrdUnit.Text:='K'; + OrdUnit.ItemIndex:=OrdUnit.Items.IndexOf('K'); + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1* from WFBOrder_Main where ordertype=''Ʒ'''); + Open; + end; + if ADOTemp.IsEmpty then Exit; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1* from WFBOrder_Main where ordertype=''Ʒ'''); + sql.Add(' order by FillTime Desc'); + Open; + end; + DD.Text:=ADOTemp.fieldbyname('DD').AsString; + ZD.Text:=ADOTemp.fieldbyname('ZD').AsString; + end; + {if Trim(DParameters1)<>'' then + begin + BegRKDate.Enabled:=False; + Day3.Enabled:=False; + BegSCDate.Enabled:=False; + //Note.Enabled:=False; + cxGrid4.Enabled:=False; + SCXName.Enabled:=False; + WJGName.Enabled:=False; + ScrollBox2.Enabled:=False; + end;} + if PState=4 then + begin + BegRKDate.Enabled:=True; + Day3.Enabled:=True; + BegSCDate.Enabled:=True; + //Note.Enabled:=False; + cxGrid4.Enabled:=True; + { MJKZX.Enabled:=True; + MJKZD.Enabled:=True; + XJKZX.Enabled:=True; + XJKZD.Enabled:=True;} + SCXName.Enabled:=True; + WJGName.Enabled:=True; + ScrollBox2.Enabled:=True; + end; + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select * from WFB_DB where MainId='''+Trim(FMainId)+''''); + Open; + end; + SCreateCDS20(ADOQuery1,CDS_DB); + SInitCDSData20(ADOQuery1,CDS_DB); + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select * from WFBOrder_Sub where MainId='''+Trim(FMainId)+''''); + Open; + end; + SCreateCDS20(ADOQuery1,CDS_Sub); + SInitCDSData20(ADOQuery1,CDS_Sub); + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select A.*,Case when A.YLQty-A.YCLYJkc>=0 then A.YLQty-A.YCLYJkc else null end as BZ from WFBYCL_PB A where MainId='''+Trim(FMainId)+''''); + sql.Add(' and PBType=''Ҫ'' '); + Open; + end; + SCreateCDS20(ADOQuery1,Order_SubZ); + SInitCDSData20(ADOQuery1,Order_SubZ); + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select A.*,Case when A.YLQty-A.YCLYJkc>=0 then A.YLQty-A.YCLYJkc else null end as BZ from WFBYCL_PB A where MainId='''+Trim(FMainId)+''''); + sql.Add(' and PBType='''' '); + Open; + end; + SCreateCDS20(ADOQuery1,Order_SubF); + SInitCDSData20(ADOQuery1,Order_SubF); + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select A.*,Case when A.YLQty-A.YCLYJkc>=0 then A.YLQty-A.YCLYJkc else null end as BZ from WFBYCL_PB A where MainId='''+Trim(FMainId)+''''); + sql.Add(' and PBType='''' '); + Open; + end; + SCreateCDS20(ADOQuery1,Order_SubQ); + SInitCDSData20(ADOQuery1,Order_SubQ); + PanZDY.Visible:=False; + if PState=4 then + begin + PState:=0; + FMainId:=''; + //OrderNo.Text:=''; + WFBCodeName.Text:=''; + WFBCodeName.Hint:=''; + PanZDY.Visible:=False; + with CDS_DB do + begin + First; + while not Eof do + begin + Edit; + FieldByName('DBID').Value:=''; + Post; + Next; + end; + end; + with Order_SubZ do + begin + First; + while not Eof do + begin + Edit; + FieldByName('PBID').Value:=''; + FieldByName('YLKC').Value:=0; + FieldByName('YCLYJKC').Value:=0; + FieldByName('BZ').Value:=0; + FieldByName('SGQty').Value:=0; + Post; + Next; + end; + end; + v1Column1.Options.Focusing:=True; + with Order_SubF do + begin + First; + while not Eof do + begin + Edit; + FieldByName('PBID').Value:=''; + FieldByName('YLKC').Value:=0; + FieldByName('YCLYJKC').Value:=0; + FieldByName('BZ').Value:=0; + FieldByName('SGQty').Value:=0; + Post; + Next; + end; + end; + v2Column1.Options.Focusing:=True; + with Order_SubQ do + begin + First; + while not Eof do + begin + Edit; + FieldByName('PBID').Value:=''; + FieldByName('YLKC').Value:=0; + FieldByName('YCLYJKC').Value:=0; + FieldByName('BZ').Value:=0; + FieldByName('SGQty').Value:=0; + Post; + Next; + end; + end; + v3Column1.Options.Focusing:=True; + end; + +end; + +procedure TfrmOrderInPutZPLNew.ZDYHelp(FButn:TcxButtonEdit;LType:string); +var + FType,ZDYName,FText:String; +begin + PanZDY.Visible:=True; + PanZDY.Left:=FButn.Left; + PanZDY.Top:=FButn.Top+FButn.Height; + with ADOZDY do + begin + Filtered:=False; + Close; + SQL.Clear; + SQL.Add('select RTrim(ZDYNo) ZDYNo,RTrim(ZDYName) ZDYName from KH_ZDY where Type='''+Trim(LType)+''''); + Open; + end; + FText:=Trim(FButn.Text); + if FText<>'' then + SDofilter(ADOZDY,' ZDYName like '+QuotedStr('%'+Trim(FText)+'%')) + else + SDofilter(ADOZDY,''); + VHelpZDYName.Summary.GroupFormat:=Trim(FButn.Name); +end; + +procedure TfrmOrderInPutZPLNew.TVZDYCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + FName:string; +begin + if ADOZDY.IsEmpty then Exit; + FName:=Trim(VHelpZDYName.Summary.GroupFormat); + TcxButtonEdit(FindComponent(FName)).Text:=Trim(ADOZDY.fieldbyname('ZDYName').AsString); + TcxButtonEdit(FindComponent(FName)).Hint:=Trim(ADOZDY.fieldbyname('ZDYNO').AsString); + PanZDY.Visible:=False; +end; + +procedure TfrmOrderInPutZPLNew.Button1Click(Sender: TObject); +begin + PanZDY.Visible:=False; +end; + +procedure TfrmOrderInPutZPLNew.WFBCodeNameKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if (key=vk_return) or (Key=vk_Down) then + begin + if ADOZDY.Active then + CXGridZDY.SetFocus; + end; +end; + +procedure TfrmOrderInPutZPLNew.TVZDYKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if ADOZDY.IsEmpty then Exit; + TcxButtonEdit(FindComponent(VHelpZDYName.Summary.GroupFormat)).Text:=Trim(ADOZDY.fieldbyname('ZDYName').AsString); + TcxButtonEdit(FindComponent(VHelpZDYName.Summary.GroupFormat)).Hint:=Trim(ADOZDY.fieldbyname('ZDYNO').AsString); + PanZDY.Visible:=False; + ADOZDY.Active:=False; + end; +end; + +procedure TfrmOrderInPutZPLNew.FormShow(Sender: TObject); +var + fsj:string; +begin + ReadCxBandedGrid('1',Tv1,'޷IJ'); + ReadCxBandedGrid('ϸ1',Tv2,'޷IJ'); + ReadCxBandedGrid('1',Tv3,'޷IJ'); + ReadCxGrid('ӱ1',TvSub,'޷IJ'); + ReadCxGrid('1',TVDB,'޷IJ'); + {if Trim(DParameters1)='' then + begin + TBSave.Visible:=False; + TBChkOk.Visible:=True; + TBChkNo.Visible:=True; + end else + begin + TBSave.Visible:=True; + TBChkOk.Visible:=False; + TBChkNo.Visible:=False; + end; } + fsj:=FormatDateTime('yyyy-MM-dd',SGetServerDate(ADOTemp)); + if ( (Trim(FMainId)='') or (CopyInt=1)) then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Count(*) As SL from WFBOrder_Main where OrderDate='''+Trim(fsj)+''''); + sql.Add(' and MainId not like ''%FZ'' '); + Open; + end; + if ADOTemp.IsEmpty then + begin + fsj:=fsj+'-1' + end else + fsj:=fsj+'-'+Trim(IntToStr(ADOTemp.fieldbyname('SL').AsInteger+1)); + OrderCode.Text:=Trim(fsj); + end; + InitData(); + ReadCxBandedGrid('',Tv1,'޷IJ'); + ReadCxBandedGrid('ϸ',Tv2,'޷IJ'); + ReadCxBandedGrid('',Tv3,'޷IJ'); +end; + +function TfrmOrderInPutZPLNew.SaveData():Boolean; +var + maxno,FSubId:String; +begin + try + ADOCmd.Connection.BeginTrans; + /// + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from WFBOrder_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMainId)='' then + begin + Append; + if GetLSNo(ADOTemp,maxno,'','WFBOrder_Main',2,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ˮ쳣','ʾ',0); + exit; + end; + end + else begin + maxno:=Trim(FMainId); + Edit; + end; + FieldByName('MainId').Value:=Trim(maxno); + FieldByName('OrderType').Value:='Ʒ'; + SSetsaveSql(ADOCmd,'WFBOrder_Main',ScrollBox1,0); + if PState=2 then + begin + FieldByName('Chker').Value:=Trim(DName); + FieldByName('ChkTime').Value:=SGetServerDateTime(ADOTemp); + if ChkInt=1 then + FieldByName('ChkStatus').Value:='ͨ' + else if ChkInt=2 then + FieldByName('ChkStatus').Value:='˲ͨ'; + end; + if Trim(FMainId)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + if PState=1 then + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + end; + Post; + end; + FMainId:=Trim(maxno); + ///ϸ + with CDS_DB do + begin + First; + while not Eof do + begin + if Trim(CDS_DB.fieldbyname('DBId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'DB','WFB_DB',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_DB.fieldbyname('DBId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_DB '); + sql.Add(' where DBId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_DB.fieldbyname('DBId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('DBId').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,TVDB,CDS_DB,'WFB_DB',0); + Post; + end; + CDS_DB.Edit; + CDS_DB.FieldByName('DBId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + ///굥 + CDS_Sub.DisableControls; + with CDS_Sub do + begin + First; + while not Eof do + begin + if Trim(CDS_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'','WFBOrder_Sub',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBOrder_Sub '); + sql.Add(' where SubId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,TvSub,CDS_Sub,'WFBOrder_Sub',0); + Post; + end; + CDS_Sub.Edit; + CDS_Sub.FieldByName('SubId').Value:=Trim(maxno); + //CDS_Sub.Post; + Next; + end; + end; + CDS_Sub.EnableControls; + //Ҫԭ + if not Order_SubZ.IsEmpty then + begin + with Order_SubZ do + begin + First; + while not Eof do + begin + if Trim(Order_SubZ.fieldbyname('PBId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'PB','WFBYCL_PB',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_SubZ.fieldbyname('PBId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PB '); + sql.Add(' where PBId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_SubZ.fieldbyname('PBId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + FieldByName('CRId').Value:=Trim(Order_SubZ.fieldbyname('CRID').AsString); + FieldByName('PBType').Value:='Ҫ'; + // SSetSaveDataCDSNew(); + SSetSaveDataCDSBandNew(ADOCmd,TV1,Order_SubZ,'WFBYCL_PB',0); + Post; + end; + Order_SubZ.Edit; + Order_SubZ.FieldByName('PBId').Value:=Trim(maxno); + //Order_SubZ.Post; + Next; + end; + end; + end; + //渨ԭ + if not Order_SubF.IsEmpty then + begin + with Order_SubF do + begin + First; + while not Eof do + begin + if Trim(Order_SubF.fieldbyname('PBId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'PB','WFBYCL_PB',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_SubF.fieldbyname('PBId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PB '); + sql.Add(' where PBId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_SubF.fieldbyname('PBId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + FieldByName('PBType').Value:=''; + FieldByName('CRId').Value:=Trim(Order_SubF.fieldbyname('CRID').AsString); + // SSetSaveDataCDSNew(); + SSetSaveDataCDSBandNew(ADOCmd,TV2,Order_SubF,'WFBYCL_PB',0); + Post; + end; + Order_SubF.Edit; + Order_SubF.FieldByName('PBId').Value:=Trim(maxno); + //Order_SubF.Post; + Next; + end; + end; + end; + //ԭ + if not Order_SubQ.IsEmpty then + begin + with Order_SubQ do + begin + First; + while not Eof do + begin + if Trim(Order_SubQ.fieldbyname('PBId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'PB','WFBYCL_PB',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_SubQ.fieldbyname('PBId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PB '); + sql.Add(' where PBId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_SubQ.fieldbyname('PBId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + FieldByName('PBType').Value:=''; + FieldByName('CRId').Value:=Trim(Order_SubQ.fieldbyname('CRID').AsString); + // SSetSaveDataCDSNew(); + SSetSaveDataCDSBandNew(ADOCmd,TV3,Order_SubQ,'WFBYCL_PB',0); + Post; + end; + Order_SubQ.Edit; + Order_SubQ.FieldByName('PBId').Value:=Trim(maxno); + //Order_SubQ.Post; + Next; + end; + end; + end; + + ///ӱ + {with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'OS','Order_Sub',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from Order_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add(' and SubId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,Tv1,Order_Sub,'Order_Sub',0); + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; } + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; +function TfrmOrderInPutZPLNew.SaveData10():Boolean; +var + maxno,FSubId:String; + +begin + try + ADOCmd.Connection.BeginTrans; + /// + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from WFBOrder_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMainId)='' then + begin + Append; + if GetLSNo(ADOTemp,maxno,'','WFBOrder_Main',2,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ˮ쳣','ʾ',0); + exit; + end; + end + else begin + maxno:=Trim(FMainId); + Edit; + end; + FieldByName('MainId').Value:=Trim(maxno); + FieldByName('OrderType').Value:='Ʒ'; + SSetsaveSql(ADOCmd,'WFBOrder_Main',ScrollBox1,0); + if PState=2 then + begin + FieldByName('Chker').Value:=Trim(DName); + FieldByName('ChkTime').Value:=SGetServerDateTime(ADOTemp); + end; + if Trim(FMainId)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + if PState=1 then + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + end; + Post; + end; + FMainId:=Trim(maxno); + ///ϸ + with CDS_DB do + begin + First; + while not Eof do + begin + if Trim(CDS_DB.fieldbyname('DBId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'DB','WFB_DB',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_DB.fieldbyname('DBId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_DB '); + sql.Add(' where DBId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_DB.fieldbyname('DBId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('DBId').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,TVDB,CDS_DB,'WFB_DB',0); + Post; + end; + CDS_DB.Edit; + CDS_DB.FieldByName('DBId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + ///굥 + with CDS_Sub do + begin + First; + while not Eof do + begin + if Trim(CDS_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'','WFBOrder_Sub',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBOrder_Sub '); + sql.Add(' where SubId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,TvSub,CDS_Sub,'WFBOrder_Sub',0); + Post; + end; + CDS_Sub.Edit; + CDS_Sub.FieldByName('SubId').Value:=Trim(maxno); + //CDS_Sub.Post; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; +procedure TfrmOrderInPutZPLNew.TBSaveClick(Sender: TObject); +var + FFS:string; + wz:Integer; +begin + OrderDate.SetFocus; + if Trim(OrderNo.Text)='' then + begin + Application.MessageBox('ŲΪգ','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('SWFBCodeName',null,[]) then + begin + Application.MessageBox('ƷŲΪգ','ʾ',0); + Exit; + end; + {if Trim(WFBCodeName.Text)='' then + begin + Application.MessageBox('ŲΪգ','ʾ',0); + Exit; + end; + if Trim(WFBCodeName.Hint)='' then + begin + Application.MessageBox('δ壡','ʾ',0); + Exit; + end; } + {if Order_Sub.IsEmpty then + begin + Application.MessageBox('ϸΪգ','ʾ',0); + Exit; + end; } + if CDS_DB.Locate('BSL',null,[]) then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + if CDS_DB.Locate('JSL',null,[]) then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + if Order_SubZ.Locate('YLKC;YCLYJKC;BZ',VarArrayOf([0,0,0]),[]) then + begin + Application.MessageBox('ָϣ','ʾ',0); + Exit; + end; + if Order_SubF.Locate('YLKC;YCLYJKC;BZ',VarArrayOf([0,0,0]),[]) then + begin + Application.MessageBox('ָϣ','ʾ',0); + Exit; + end; + if Order_SubQ.Locate('YLKC;YCLYJKC;BZ',VarArrayOf([0,0,0]),[]) then + begin + Application.MessageBox('ָϣ','ʾ',0); + Exit; + end; + if SaveData() then + begin + wz:=Pos('F',FMainId); + FFS:=Copy(FMainId,wz,4); + if ((CopyInt=1) or (FFS='FZ')) then + begin + UpMainId(); + end; + CopyInt:=0; + if ChkInt>0 then + begin + Application.MessageBox('ɹ!','ʾ',0); + end else + Application.MessageBox('ɹ','ʾ',0); + if CloInt=1 then ModalResult:=1; + Exit; + end; +end; +procedure TfrmOrderInPutZPLNew.SaveYCL(SCDS_Sub:TClientDataSet); +var + maxno,maxnosub:string; +begin + try + ADOCmd.Connection.BeginTrans; + with frmGetPGJBInList.ClientDataSet2 do + begin + First; + while not Eof do + begin + if GetLSNo(ADOCmd,maxno,'PB','WFBYCL_PB',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_PB where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + if MInt=1 then + begin + FieldByName('PBType').Value:='Ҫ'; + end else + if MInt=2 then + begin + FieldByName('PBType').Value:=''; + end else + if MInt=3 then + begin + FieldByName('PBType').Value:=''; + end; + FieldByName('YCLCode').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('YCLCode').AsString); + FieldByName('YCLName').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('YCLCode').AsString); + FieldByName('YCLSpec').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('YCLCode').AsString); + FieldByName('YLKC').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('QuantityKC').AsString); + FieldByName('YLUnit').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('CRUnit').AsString); + FieldByName('CRID').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('CRID').AsString); + FieldByName('YCLYJKC').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('YJKC').AsString); + Post; + end; + with SCDS_Sub do + begin + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + Post; + end; + with Self.CDS_Sel do + begin + First; + while not Eof do + begin + if GetLSNo(ADOCmd,maxnosub,'PS','WFBYCL_PBSub',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_PBSub where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(CDS_Sel.fieldbyname('SubId').AsString); + FieldByName('PBId').Value:=Trim(maxno); + FieldByName('PSId').Value:=Trim(maxnosub); + Post; + end; + Next; + end; + end; + Next; + end; + end; + except + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; +procedure TfrmOrderInPutZPLNew.SELYCL(SCDS_Sub:TClientDataSet); +var + maxno,maxnosub:string; +begin + try + frmGetPGJBInList:=TfrmGetPGJBInList.Create(Application); + with frmGetPGJBInList do + begin + if ShowModal=1 then + begin + try ADOCmd.Connection.BeginTrans; + with ClientDataSet2 do + begin + First; + while not Eof do + begin + with SCDS_Sub do + begin + Append; + SCDS_Sub.FieldByName('YCLCode').Value:=Trim(ClientDataSet2.fieldbyname('YCLCode').AsString); + SCDS_Sub.FieldByName('YCLName').Value:=Trim(ClientDataSet2.fieldbyname('YCLName').AsString); + SCDS_Sub.FieldByName('YCLSpec').Value:=Trim(ClientDataSet2.fieldbyname('YCLSpec').AsString); + SCDS_Sub.FieldByName('YLKC').Value:=Trim(ClientDataSet2.fieldbyname('QuantityKC').AsString); + SCDS_Sub.FieldByName('YLUnit').Value:=Trim(ClientDataSet2.fieldbyname('CRUnit').AsString); + SCDS_Sub.FieldByName('CRID').Value:=Trim(ClientDataSet2.fieldbyname('CRID').AsString); + SCDS_Sub.FieldByName('YCLYJKC').Value:=Trim(ClientDataSet2.fieldbyname('YJKC').AsString); + Post; + end; + + if GetLSNo(ADOCmd,maxno,'PB','WFBYCL_PB',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_PB where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + if MInt=1 then + begin + FieldByName('PBType').Value:='Ҫ'; + end else + if MInt=2 then + begin + FieldByName('PBType').Value:=''; + end else + if MInt=3 then + begin + FieldByName('PBType').Value:=''; + end; + FieldByName('YCLCode').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('YCLCode').AsString); + FieldByName('YCLName').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('YCLName').AsString); + FieldByName('YCLSpec').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('YCLSpec').AsString); + FieldByName('YLKC').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('QuantityKC').AsString); + FieldByName('YLUnit').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('CRUnit').AsString); + FieldByName('CRID').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('CRID').AsString); + FieldByName('YCLYJKC').Value:=Trim(frmGetPGJBInList.ClientDataSet2.fieldbyname('YJKC').AsString); + Post; + end; + with SCDS_Sub do + begin + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + Post; + end; + with Self.CDS_Sel do + begin + First; + while not Eof do + begin + if Self.CDS_Sel.FieldByName('SSel').AsBoolean=True then + begin + if GetLSNo(ADOCmd,maxnosub,'PS','WFBYCL_PBSub',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_PBSub where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(CDS_Sel.fieldbyname('SubId').AsString); + FieldByName('PBId').Value:=Trim(maxno); + FieldByName('PSId').Value:=Trim(maxnosub); + Post; + end; + end; + Next; + end; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + Exit; + end; + //Self.SaveYCL(SCDS_Sub); + end; + end; + finally + frmGetPGJBInList.Free; + end; +end; + +procedure TfrmOrderInPutZPLNew.EditYCL(SCDS_Sub:TClientDataSet); +begin + try + frmGetPGJBInList:=TfrmGetPGJBInList.Create(Application); + with frmGetPGJBInList do + begin + if ShowModal=1 then + begin + with ClientDataSet2 do + begin + //First; + // while not Eof do + //begin + with SCDS_Sub do + begin + Edit; + SCDS_Sub.FieldByName('YCLCode').Value:=Trim(ClientDataSet2.fieldbyname('YCLCode').AsString); + SCDS_Sub.FieldByName('YCLName').Value:=Trim(ClientDataSet2.fieldbyname('YCLName').AsString); + SCDS_Sub.FieldByName('YCLSpec').Value:=Trim(ClientDataSet2.fieldbyname('YCLSpec').AsString); + //SCDS_Sub.FieldByName('GYSName').Value:=Trim(ClientDataSet2.fieldbyname('GYSName').AsString); + //SCDS_Sub.FieldByName('GYS').Value:=Trim(ClientDataSet2.fieldbyname('GYS').AsString); + SCDS_Sub.FieldByName('YLKC').Value:=Trim(ClientDataSet2.fieldbyname('QuantityKC').AsString); + //CDS_Sub.FieldByName('Qty').Value:=Trim(ClientDataSet2.fieldbyname('QtyKC').AsString); + SCDS_Sub.FieldByName('YLUnit').Value:=Trim(ClientDataSet2.fieldbyname('CRUnit').AsString); + SCDS_Sub.FieldByName('CRID').Value:=Trim(ClientDataSet2.fieldbyname('CRID').AsString); + SCDS_Sub.FieldByName('YCLYJKC').Value:=Trim(ClientDataSet2.fieldbyname('YJKC').AsString); + if SCDS_Sub.FieldByName('YLQty').Value-ClientDataSet2.fieldbyname('YJKC').Value>=0 then + SCDS_Sub.FieldByName('BZ').Value:=SCDS_Sub.FieldByName('YLQty').Value- + ClientDataSet2.fieldbyname('YJKC').Value + else + SCDS_Sub.FieldByName('BZ').Value:=null; + //SCDS_Sub.FieldByName('YCLType').Value:=Trim(ClientDataSet2.fieldbyname('YCLType').AsString); + //SCDS_Sub.FieldByName('YCLPrice').Value:=Trim(ClientDataSet2.fieldbyname('YCLPrice').AsString); + //SCDS_Sub.FieldByName('KCPlace').Value:=Trim(ClientDataSet2.fieldbyname('KCPlace').AsString); + //CDS_Sub.FieldByName('DepotShow').Value:=Trim(ClientDataSet2.fieldbyname('DepotShow').AsString); + //Post; + end; + // Next; + //end; + end; + end; + end; + finally + frmGetPGJBInList.Free; + end; +end; +procedure TfrmOrderInPutZPLNew.ToolButton1Click(Sender: TObject); + +begin + if CDS_Sub.IsEmpty=True then + begin + Application.MessageBox('굥Ϊգ','ʾ',0); + Exit; + end; + OrderDate.SetFocus; + if Trim(OrderNo.Text)='' then + begin + Application.MessageBox('ŲΪգ','ʾ',0); + Exit; + end; + {if Trim(WFBCodeName.Text)='' then + begin + Application.MessageBox('ŲΪգ','ʾ',0); + Exit; + end; + if Trim(WFBCodeName.Hint)='' then + begin + Application.MessageBox('δ壡','ʾ',0); + Exit; + end; } + SaveData10(); + Panel1.Visible:=True; + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from WFBOrder_Sub where MainId='''+Trim(FMainId)+''''); + Open; + {if MInt=1 then + begin + SELYCL(Order_SubZ); + end else + if MInt=2 then + begin + SELYCL(Order_SubF); + end else + if MInt=3 then + begin + SELYCL(Order_SubQ); } + end; + SCreateCDS20(ADOQuery1,CDS_Sel); + SInitCDSData20(ADOQuery1,CDS_Sel); + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add(' exec P_YCLKC_ListKCDD :KCType '); + if MInt=1 then + begin + Parameters.ParamByName('KCType').Value:='Ҫ'; + end else + if MInt=2 then + begin + Parameters.ParamByName('KCType').Value:=''; + end else + if MInt=3 then + begin + Parameters.ParamByName('KCType').Value:=''; + end; + open; + end; + SCreateCDS20(ADOQuery1,CDS_KCSel); + SInitCDSData20(ADOQuery1,CDS_KCSel); +end; + +procedure TfrmOrderInPutZPLNew.ToolButton2Click(Sender: TObject); +begin + if MInt=1 then + begin + DelOrderSub(Order_SubZ); + end else + if MInt=2 then + begin + DelOrderSub(Order_SubF); + end else + if MInt=3 then + begin + DelOrderSub(Order_SubQ); + end; +end; +procedure TfrmOrderInPutZPLNew.DelOrderSub(FOrder_Sub:TClientDataSet); +begin + if FOrder_Sub.IsEmpty then Exit; + if Trim(FOrder_Sub.fieldbyname('PBID').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFBYCL_PB where PBID='''+Trim(FOrder_Sub.fieldbyname('PBID').AsString)+''''); + sql.Add('delete WFBYCL_PBSub where PBID='''+Trim(FOrder_Sub.fieldbyname('PBID').AsString)+''''); + ExecSQL; + end; + end; + FOrder_Sub.Delete; +end; + +procedure TfrmOrderInPutZPLNew.CustomNoNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('CustomNoName'); + flagname:='ͻ'; + if ShowModal=1 then + begin + Self.FXS:=99; + CustomNoName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + CustomNoName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPLNew.CustomNoNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(CustomNoName,'CustomNoName'); +end; + +procedure TfrmOrderInPutZPLNew.ArrivalPortNamePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('ArrivalPort'); + flagname:=''; + if ShowModal=1 then + begin + Self.FXS:=99; + ArrivalPortName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + ArrivalPortName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPLNew.SCXNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('SCXName'); + flagname:=''; + if ShowModal=1 then + begin + Self.FXS:=99; + SCXName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + SCXName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPLNew.WJGNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('WJGName'); + flagname:='ṹ'; + if ShowModal=1 then + begin + Self.FXS:=99; + WJGName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + WJGName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPLNew.WFBCodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim(WFBCodeName.Name); + flagname:=''; + if ShowModal=1 then + begin + Self.FXS:=99; + WFBCodeName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + WFBCodeName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPLNew.WFBCodeNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(WFBCodeName,Trim(WFBCodeName.Name)); +end; + +procedure TfrmOrderInPutZPLNew.ArrivalPortNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(ArrivalPortName,'ArrivalPort'); +end; + +procedure TfrmOrderInPutZPLNew.SCXNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(SCXName,Trim(SCXName.Name)); +end; + +procedure TfrmOrderInPutZPLNew.WJGNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(WJGName,Trim(WJGName.Name)); +end; + +procedure TfrmOrderInPutZPLNew.N1Click(Sender: TObject); +begin + + with CDS_DB do + begin + Append; + FieldByName('DBUnit').Value:='/'; + Post; + end; +end; + +procedure TfrmOrderInPutZPLNew.N2Click(Sender: TObject); +begin + if CDS_DB.IsEmpty then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFB_DB where DBID='''+Trim(CDS_DB.fieldbyname('DBID').AsString)+''''); + ExecSQL; + end; + CDS_DB.Delete; +end; + +procedure TfrmOrderInPutZPLNew.Day1Change(Sender: TObject); +var + DayL:string; +begin + if trim(Day1.Text)='' then DayL:='0' + else DayL:=Trim(Day1.Text); + ETDDate.DateTime:=ETADate.Date-strtoint(DayL); +end; + +procedure TfrmOrderInPutZPLNew.OrdQtyKeyPress(Sender: TObject; var Key: Char); +begin + if not (Key in['0'..'9','.',#8,#13]) then + begin + key:=#0; + end; +end; + +procedure TfrmOrderInPutZPLNew.Day2Change(Sender: TObject); +var + DayL:string; +begin + if trim(Day2.Text)='' then DayL:='0' + else DayL:=Trim(Day2.Text); + ZGDate.DateTime:=ETDDate.Date-strtoint(DayL); +end; +procedure TfrmOrderInPutZPLNew.Day3Change(Sender: TObject); +var + DayL:string; +begin + if trim(Day3.Text)='' then DayL:='0' + else DayL:=Trim(Day3.Text); + BegSCDate.DateTime:=BegRKDate.Date-strtoint(DayL); +end; +procedure TfrmOrderInPutZPLNew.ETADateChange(Sender: TObject); +begin + if Trim(Day1.Text)<>'' then + begin + ETDDate.DateTime:=ETADate.Date-strtoint(Day1.Text); + end; + if Trim(Day2.Text)<>'' then + begin + ZGDate.DateTime:=ETDDate.Date-strtoint(Day2.Text); + end; +end; + +procedure TfrmOrderInPutZPLNew.BegRKDateChange(Sender: TObject); +begin + if Trim(Day3.Text)<>'' then + begin + BegSCDate.DateTime:=BegRKDate.Date-strtoint(Day3.Text); + end; +end; + +procedure TfrmOrderInPutZPLNew.Tv1MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + MInt:=1; + Tv1.Bands[0].Caption:='Ҫԭϡ'; + Tv2.Bands[0].Caption:='ԭ'; + Tv3.Bands[0].Caption:=''; + Tv1.Bands[0].Styles.Header.TextColor:=clBlue; + Tv2.Bands[0].Styles.Header.TextColor:=clBlack; + Tv3.Bands[0].Styles.Header.TextColor:=clBlack; +end; + +procedure TfrmOrderInPutZPLNew.Tv2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + MInt:=2; + Tv1.Bands[0].Caption:='Ҫԭ'; + Tv2.Bands[0].Caption:='ԭϡ'; + Tv3.Bands[0].Caption:=''; + Tv1.Bands[0].Styles.Header.TextColor:=clBlack; + Tv2.Bands[0].Styles.Header.TextColor:=clBlue; + Tv3.Bands[0].Styles.Header.TextColor:=clBlack; +end; + +procedure TfrmOrderInPutZPLNew.Tv3MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + MInt:=3; + Tv1.Bands[0].Caption:='Ҫԭ'; + Tv2.Bands[0].Caption:='ԭ'; + Tv3.Bands[0].Caption:=''; + Tv1.Bands[0].Styles.Header.TextColor:=clBlack; + Tv2.Bands[0].Styles.Header.TextColor:=clBlack; + Tv3.Bands[0].Styles.Header.TextColor:=clBlue; +end; + +procedure TfrmOrderInPutZPLNew.v1Column2PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,YLSH,DHSL,YLQty:Double; + FOrdQty,FKZ:String; +begin + YLQty:=0; + mvalue:=TcxTextEdit(Sender).EditingValue; //KO + + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add(' select A.* from WFBYCL_PBSub A '); + //SQL.Add(' inner join WFBYCL_PB B on B.PBID=A.PBID '); + sql.Add(' where A.PBID='''+Trim(Order_SubZ.fieldbyname('PBID').AsString)+''''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + CDS_Sub.Locate('SubId',Trim(ADOTemp.fieldbyname('SubId').AsString),[]); + if Trim(CDS_Sub.fieldbyname('SOrdQty').AsString)='' then + FOrdQty:='0' + else + FOrdQty:=Trim(CDS_Sub.fieldbyname('SOrdQty').AsString); + if Trim(Order_SubZ.fieldbyname('YLSH').AsString)='' then + begin + YLSH:=0; + end else + YLSH:=StrToFloat(Order_SubZ.fieldbyname('YLSH').AsString); + YLQty:=YLQty+StrToFloat(FOrdQty)*mvalue/100*(1+YLSH/100); + Next; + end; + with Order_SubZ do + begin + Edit; + FieldByName('YLQty').Value:=YLQty; + if YLQty-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=YLQty-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + FieldByName('YLPB').Value:=mvalue; + Post; + end; + end; +end; +procedure TfrmOrderInPutZPLNew.OnlyUpYCLData(); +var + mvalue,YLSH,DHSL,YLQty:Double; + FOrdQty,FKZ:String; +begin + YLQty:=0; + if Trim(Order_SubZ.fieldbyname('YLPB').AsString)<>'' then + mvalue:=Order_SubZ.fieldbyname('YLPB').Value + else + mvalue:=0; //KO + + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add(' select A.* from WFBYCL_PBSub A '); + //SQL.Add(' inner join WFBYCL_PB B on B.PBID=A.PBID '); + sql.Add(' where A.PBID='''+Trim(Order_SubZ.fieldbyname('PBID').AsString)+''''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + CDS_Sub.Locate('SubId',Trim(ADOTemp.fieldbyname('SubId').AsString),[]); + if Trim(CDS_Sub.fieldbyname('SOrdQty').AsString)='' then + FOrdQty:='0' + else + FOrdQty:=Trim(CDS_Sub.fieldbyname('SOrdQty').AsString); + if Trim(Order_SubZ.fieldbyname('YLSH').AsString)='' then + begin + YLSH:=0; + end else + YLSH:=StrToFloat(Order_SubZ.fieldbyname('YLSH').AsString); + YLQty:=YLQty+StrToFloat(FOrdQty)*mvalue/100*(1+YLSH/100); + Next; + end; + with Order_SubZ do + begin + Edit; + FieldByName('YLQty').Value:=YLQty; + if YLQty-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=YLQty-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + //FieldByName('YLPB').Value:=mvalue; + Post; + end; + end; +end; + +procedure TfrmOrderInPutZPLNew.v1Column3PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,YLSH,DHSL,YLQty,YLPB:Double; + FOrdQty,FKZ:String; +begin + YLQty:=0; + mvalue:=TcxTextEdit(Sender).EditingValue; //KO + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PBSub where PBID='''+Trim(Order_SubZ.fieldbyname('PBID').AsString)+''''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + CDS_Sub.Locate('SubId',Trim(ADOTemp.fieldbyname('SubId').AsString),[]); + if Trim(CDS_Sub.fieldbyname('SOrdQty').AsString)='' then + FOrdQty:='0' + else + FOrdQty:=Trim(CDS_Sub.fieldbyname('SOrdQty').AsString); + if Trim(Order_SubZ.fieldbyname('YLPB').AsString)='' then + begin + YLPB:=0; + end else + YLPB:=StrToFloat(Order_SubZ.fieldbyname('YLPB').AsString); + YLQty:=YLQty+StrToFloat(FOrdQty)*YLPB/100*(1+mvalue/100); + Next; + end; + with Order_SubZ do + begin + Edit; + FieldByName('YLQty').Value:=YLQty; + if YLQty-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=YLQty-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + FieldByName('YLSH').Value:=mvalue; + Post; + end; + end; +end; + +procedure TfrmOrderInPutZPLNew.v2Column2PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,YLSHQ,DHSL,YLQty,YLPB:Double; + FOrdQty,FKZ:String; +begin + YLQty:=0; + mvalue:=TcxTextEdit(Sender).EditingValue; //KO + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PBSub where PBID='''+Trim(Order_SubF.fieldbyname('PBID').AsString)+''''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + CDS_Sub.Locate('SubId',Trim(ADOTemp.fieldbyname('SubId').AsString),[]); + if Trim(CDS_Sub.fieldbyname('SOrdQty').AsString)='' then + FOrdQty:='0' + else + FOrdQty:=Trim(CDS_Sub.fieldbyname('SOrdQty').AsString); + YLQty:=YLQty+StrToFloat(FOrdQty)*(mvalue*1.00/1000); + Next; + end; + with Order_SubF do + begin + Edit; + FieldByName('YLQty').Value:=YLQty; + if YLQty-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=YLQty-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + FieldByName('YLSHQ').Value:=mvalue; + Post; + end; + end; +end; + +procedure TfrmOrderInPutZPLNew.OrdQtyChange(Sender: TObject); +begin + YLUpdate(); +end; +procedure TfrmOrderInPutZPLNew.YLUpdate(); +var + mvalue,YLSH,DHSL,YLQty,YLPB,YLSHQ:Double; + FOrdQty,FKZ:String; +begin + YLQty:=0; + with Order_SubZ do + begin + if Order_SubZ.IsEmpty=False then + begin + First; + while not Eof do + begin + YLQty:=0; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PBSub where PBID='''+Trim(Order_SubZ.fieldbyname('PBID').AsString)+''''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + CDS_Sub.Locate('SubId',Trim(ADOTemp.fieldbyname('SubId').AsString),[]); + if Trim(CDS_Sub.fieldbyname('SOrdQty').AsString)='' then + FOrdQty:='0' + else + FOrdQty:=Trim(CDS_Sub.fieldbyname('SOrdQty').AsString); + if Trim(OrdUnit.Text)='K' then + begin + if Trim(Order_SubZ.fieldbyname('YLPB').AsString)='' then + begin + YLPB:=0; + end else + YLPB:=StrToFloat(Order_SubZ.fieldbyname('YLPB').AsString); + if Trim(Order_SubZ.fieldbyname('YLSH').AsString)='' then + begin + YLSH:=0; + end else + YLSH:=StrToFloat(Order_SubZ.fieldbyname('YLSH').AsString); + YLQty:=YLQty+StrToFloat(FOrdQty)*YLPB/100*(1+YLSH/100); + end else + if Trim(OrdUnit.Text)='O' then + begin + if Trim(CDS_Sub.fieldbyname('SWFBKZ').AsString)='' then + begin + FKZ:='0'; + end else + FKZ:=Trim(CDS_Sub.fieldbyname('SWFBKZ').AsString); + DHSL:=StrToFloat(FOrdQty)*strtofloat(FKZ)/1000; + if Trim(Order_SubZ.fieldbyname('YLPB').AsString)='' then + begin + YLPB:=0; + end else + YLPB:=StrToFloat(Order_SubZ.fieldbyname('YLPB').AsString); + if Trim(Order_SubZ.fieldbyname('YLSH').AsString)='' then + begin + YLSH:=0; + end else + YLSH:=StrToFloat(Order_SubZ.fieldbyname('YLSH').AsString); + YLQty:=YLQty+DHSL*YLPB/100*(1+YLSH/100); + end; + Next; + end; + with Order_SubZ do + begin + Edit; + FieldByName('YLQty').Value:=YLQty; + if YLQty-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=YLQty-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + end; + end; + Next; + end; + end; + + end; + if Order_SubF.IsEmpty=False then + begin + with Order_SubF do + begin + First; + while not Eof do + begin + YLQty:=0; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PBSub where PBID='''+Trim(Order_SubF.fieldbyname('PBID').AsString)+''''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + CDS_Sub.Locate('SubId',Trim(ADOTemp.fieldbyname('SubId').AsString),[]); + if Trim(CDS_Sub.fieldbyname('SOrdQty').AsString)='' then + FOrdQty:='0' + else + FOrdQty:=Trim(CDS_Sub.fieldbyname('SOrdQty').AsString); + if Trim(OrdUnit.Text)='K' then + begin + if Trim(Order_SubF.fieldbyname('YLSHQ').AsString)='' then + begin + YLSHQ:=0; + end else + YLSHQ:=StrToFloat(Order_SubF.fieldbyname('YLSHQ').AsString); + YLQty:=YLQty+StrToFloat(FOrdQty)*(YLSHQ*1.00/1000); + end else + if Trim(OrdUnit.Text)='O' then + begin + if Trim(CDS_Sub.fieldbyname('SWFBKZ').AsString)='' then + begin + FKZ:='0'; + end else + FKZ:=Trim(CDS_Sub.fieldbyname('SWFBKZ').AsString); + DHSL:=StrToFloat(FOrdQty)*strtofloat(FKZ)/1000; + if Trim(Order_SubF.fieldbyname('YLSHQ').AsString)='' then + begin + YLSHQ:=0; + end else + YLSHQ:=StrToFloat(Order_SubF.fieldbyname('YLSHQ').AsString); + YLQty:=YLQty+DHSL*(YLSHQ*1.00/1000); + end; + Next; + end; + with Order_SubF do + begin + Edit; + FieldByName('YLQty').Value:=YLQty; + if YLQty-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=YLQty-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + end; + end; + Next; + end; + end; + end; +end; +procedure TfrmOrderInPutZPLNew.v3Column4PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:Double; +begin + mvalue:=TcxTextEdit(Sender).EditingValue; + with Order_SubQ do + begin + Edit; + FieldByName('YLQty').Value:=mvalue; + if mvalue-fieldbyname('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=mvalue-fieldbyname('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + end; +end; + +procedure TfrmOrderInPutZPLNew.TBPrintClick(Sender: TObject); +var + fPrintFile:String; +begin + with ADOQueryQG do + begin + Close; + sql.Clear; + sql.Add(' exec P_Print_SGD :OrderNo'); + Parameters.ParamByName('OrderNo').Value:=Trim(OrderNo.Text); + Open; + end; + if ADOQueryQG.IsEmpty then Exit; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\빺.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + RMVariables['dyr']:=Trim(DName); + RM2.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\빺.rmf'),'ʾ',0); + end; +end; + +procedure TfrmOrderInPutZPLNew.v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + EditYCL(Order_SubZ); +end; + +procedure TfrmOrderInPutZPLNew.v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + EditYCL(Order_SubF); +end; + +procedure TfrmOrderInPutZPLNew.v3Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + EditYCL(Order_SubQ); +end; + +procedure TfrmOrderInPutZPLNew.MenuItem1Click(Sender: TObject); +var + i:Integer; +begin + CopyAddRow(TvSub,CDS_Sub); + i:=CDS_Sub.RecordCount; + with CDS_Sub do + begin + Edit; + FieldByName('MainId').Value:=''; + FieldByName('SubId').Value:=''; + FieldByName('SWFBColor').Value:=''; + FieldByName('SWFBCode').Value:=''; + FieldByName('SWFBCodeName').Value:=''; + FieldByName('SWFBBZQty1').Value:=0; + FieldByName('SOrdQty').Value:=0; + FieldByName('XHNO').Value:=IntToStr(i); + Post; + end; + OrdQty.Text:=floattostr(TvSub.DataController.Summary.FooterSummaryValues[0]); +end; + +procedure TfrmOrderInPutZPLNew.MenuItem2Click(Sender: TObject); +var + mvalue,YLSH,DHSL,YLQty,YLPB,YLSHQ:Double; + FOrdQty,FKZ:String; +begin + if CDS_Sub.IsEmpty then Exit; + if Trim(CDS_Sub.fieldbyname('SubID').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_PBSub where SubId='''+Trim(CDS_Sub.fieldbyname('SubID').AsString)+''''); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + with ADOCMD do + begin + Close; + sql.Clear; + sql.Add('delete WFBYCL_PBSub where SubId='''+Trim(CDS_Sub.fieldbyname('SubID').AsString)+''''); + sql.Add('delete WFBOrder_Sub where SubID='''+Trim(CDS_Sub.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PB where MainId='''+Trim(FMainId)+''' '); + sql.Add(' and not exists(select * from WFBYCL_PBSub A where A.PBId=WFBYCL_PB.PBID and A.MainId='''+Trim(FMainId)+''' )'); + open; + end; + with ADOTemp do + begin + ADOTemp.First; + while not ADOTemp.Eof do + begin + if Trim(ADOTemp.fieldbyname('PBID').AsString)<>'' then + begin + if Order_SubZ.IsEmpty=False then + begin + if Order_SubZ.Locate('PBID',Trim(ADOTemp.fieldbyname('PBID').AsString),[]) then + Order_SubZ.Delete; + end; + if Order_SubF.IsEmpty=False then + begin + if Order_SubF.Locate('PBID',Trim(ADOTemp.fieldbyname('PBID').AsString),[]) then + Order_SubF.Delete; + end; + if Order_SubQ.IsEmpty=False then + begin + if Order_SubQ.Locate('PBID',Trim(ADOTemp.fieldbyname('PBID').AsString),[]) then + Order_SubQ.Delete; + end; + end; + ADOTemp.Next; + end; + end; + with ADOCMD do + begin + Close; + SQL.Clear; + sql.Add(' delete WFBYCL_PB where not exists(select * from WFBYCL_PBSub A where A.PBId=WFBYCL_PB.PBID )'); + SQL.Add(' and MainId='''+Trim(FMainId)+''''); + ExecSQL; + end; + + end else + begin + with ADOCmd do + begin + close; + sql.Clear; + sql.Add('delete WFBOrder_Sub where SubID='''+Trim(CDS_Sub.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + end; + CDS_Sub.Delete; + //YLUpdate(); + if CDS_Sub.isempty=False then + OrdQty.Text:=floattostr(TvSub.DataController.Summary.FooterSummaryValues[0]); + //if ((Order_SubZ.IsEmpty) and (Order_SubF.IsEmpty) and (Order_SubQ.IsEmpty)) then Exit; + YLUpdate(); +end; + +procedure TfrmOrderInPutZPLNew.cxGridDBColumn3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WFBColor'; + flagname:='ɫ'; + if ShowModal=1 then + begin + with Self.CDS_Sub do + begin + Edit; + FieldByName('SWFBColor').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + //Post; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPLNew.vSubColumn2PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WFBHX'; + flagname:=''; + if ShowModal=1 then + begin + with Self.CDS_Sub do + begin + Edit; + FieldByName('SWFBHW').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + //Post; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPLNew.cxGridDBColumn2PropertiesEditValueChanged( + Sender: TObject); +var + FOrdQty,FKZ:String; +begin + FKZ:=TcxTextEdit(Sender).EditingText; + with CDS_Sub do + begin + Edit; + if Trim(FKZ)='' then + FieldByName('SWFBKZ').Value:='0' + else + FieldByName('SWFBKZ').Value:=FKZ; + Post; + end; + YCLDataUPdate(); +end; +procedure TfrmOrderInPutZPLNew.YCLDataUPdate(); +var + mvalue,YLSH,DHSL,YLQty,YLPB,YLSHQ,FQty1,FQty2,FQty3,FFK1,FFK2,DDZDHL:Double; + FOrdQty,FKZ,ZPType:String; +begin + if Trim(CDS_Sub.FieldByName('SWFBFK1').AsString)='' then + FFK1:=0 + else + FFK1:=CDS_Sub.FieldByName('SWFBFK1').Value; + if Trim(CDS_Sub.FieldByName('SWFBFK2').AsString)='' then + FFK2:=0 + else + FFK2:=CDS_Sub.FieldByName('SWFBFK2').Value; + if Trim(CDS_Sub.FieldByName('SWFBBZQty1').AsString)='' then + FQty1:=1 + else + FQty1:=CDS_Sub.FieldByName('SWFBBZQty1').Value; + if Trim(CDS_Sub.FieldByName('SWFBBZQty2').AsString)='' then + FQty2:=1 + else + FQty2:=CDS_Sub.FieldByName('SWFBBZQty2').Value; + if Trim(CDS_Sub.FieldByName('SWFBBZQty3').AsString)='' then + FQty3:=1 + else + FQty3:=CDS_Sub.FieldByName('SWFBBZQty3').Value; + if Trim(CDS_Sub.fieldbyname('SWFBKZ').AsString)='' then + FKZ:='0' + else + FKZ:=Trim(CDS_Sub.fieldbyname('SWFBKZ').AsString); + ZPType:=Trim(CDS_Sub.fieldbyname('SubType').AsString); + if Trim(ZPType)='' then + begin + if Trim(Self.DD.Text)<>'' then + begin + DDZDHL:=StrToFloat(DD.Text); + end else + DDZDHL:=0; + end else + if Trim(ZPType)='۵' then + begin + if Trim(Self.ZD.Text)<>'' then + begin + DDZDHL:=StrToFloat(ZD.Text); + end else + DDZDHL:=0; + + end else + DDZDHL:=0; + DDZDHL:=(100+DDZDHL)*1.00/100; + + with CDS_Sub do + begin + Edit; + FieldByName('SOrdQty').Value:=(FFK1*1.00/100)*(FFK2*1.00/100)*(FQty1*FQty2*FQty3)*Strtofloat(FKZ)/1000*DDZDHL; + Post; + end; + if Trim(CDS_Sub.fieldbyname('SOrdQty').AsString)='' then + FOrdQty:='0' + else + FOrdQty:=Trim(CDS_Sub.fieldbyname('SOrdQty').AsString); + OrdQty.Text:=floattostr(TvSub.DataController.Summary.FooterSummaryValues[0]); + YLQty:=0; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add(' select distinct(A.PBID) PBID from WFBYCL_PBSub A '); + SQL.Add(' inner join WFBYCL_PB B on B.PBID=A.PBID '); + sql.Add(' where A.SubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+''''); + sql.Add(' and B.PBType=''Ҫ'''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select * from WFBYCL_PBSub where PBID='''+Trim(ADOTemp.fieldbyname('PBID').AsString)+''''); + Open; + end; + Order_SubZ.Locate('PBID',Trim(ADOTemp.fieldbyname('PBID').AsString),[]); + if Trim(Order_SubZ.fieldbyname('YLSH').AsString)='' then + begin + YLSH:=0; + end else + YLSH:=StrToFloat(Order_SubZ.fieldbyname('YLSH').AsString); + if Trim(Order_SubZ.fieldbyname('YLPB').AsString)='' then + begin + YLPB:=0; + end else + YLPB:=StrToFloat(Order_SubZ.fieldbyname('YLPB').AsString); + with ADOQuery1 do + begin + First; + while not Eof do + begin + CDS_Sub.Locate('SubId',Trim(ADOQuery1.fieldbyname('SubId').AsString),[]); + if Trim(CDS_Sub.fieldbyname('SOrdQty').AsString)='' then + FOrdQty:='0' + else + FOrdQty:=Trim(CDS_Sub.fieldbyname('SOrdQty').AsString); + YLQty:=YLQty+StrToFloat(FOrdQty)*YLPB/100*(1+YLSH/100); + Next; + end; + end; + with Order_SubZ do + begin + Edit; + FieldByName('YLQty').Value:=YLQty; + if YLQty-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=YLQty-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + end; + YLQty:=0; + Next; + end; + end; + YLQty:=0; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add(' select distinct(A.PBID) PBID from WFBYCL_PBSub A '); + SQL.Add(' inner join WFBYCL_PB B on B.PBID=A.PBID '); + sql.Add(' where A.SubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+''''); + sql.Add(' and B.PBType='''''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select * from WFBYCL_PBSub where PBID='''+Trim(ADOTemp.fieldbyname('PBID').AsString)+''''); + Open; + end; + Order_SubF.Locate('PBID',Trim(ADOTemp.fieldbyname('PBID').AsString),[]); + if Trim(Order_SubF.fieldbyname('YLSHQ').AsString)='' then + begin + YLSHQ:=0; + end else + YLSHQ:=StrToFloat(Order_SubF.fieldbyname('YLSHQ').AsString); + with ADOQuery1 do + begin + First; + while not Eof do + begin + CDS_Sub.Locate('SubId',Trim(ADOQuery1.fieldbyname('SubId').AsString),[]); + if Trim(CDS_Sub.fieldbyname('SOrdQty').AsString)='' then + FOrdQty:='0' + else + FOrdQty:=Trim(CDS_Sub.fieldbyname('SOrdQty').AsString); + YLQty:=YLQty+StrToFloat(FOrdQty)*(YLSHQ*1.00/1000); + Next; + end; + end; + with Order_SubF do + begin + Edit; + FieldByName('YLQty').Value:=YLQty; + if YLQty-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=YLQty-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + end; + YLQty:=0; + Next; + end; + end; +end; + +procedure TfrmOrderInPutZPLNew.TvSubColumn1PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,YLSH,DHSL,YLQty,YLPB,YLSHQ:Double; + FOrdQty,FKZ:String; +begin + FOrdQty:=TcxTextEdit(Sender).EditingText; + with CDS_Sub do + begin + Edit; + if Trim(FOrdQty)='' then + FieldByName('SOrdQty').Value:='0' + else + FieldByName('SOrdQty').Value:=FOrdQty; + Post; + end; + + YLQty:=0; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add(' select distinct(A.PBID) PBID from WFBYCL_PBSub A '); + SQL.Add(' inner join WFBYCL_PB B on B.PBID=A.PBID '); + sql.Add(' where A.SubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+''''); + sql.Add(' and B.PBType=''Ҫ'''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select * from WFBYCL_PBSub where PBID='''+Trim(ADOTemp.fieldbyname('PBID').AsString)+''''); + Open; + end; + Order_SubZ.Locate('PBID',Trim(ADOTemp.fieldbyname('PBID').AsString),[]); + if Trim(Order_SubZ.fieldbyname('YLSH').AsString)='' then + begin + YLSH:=0; + end else + YLSH:=StrToFloat(Order_SubZ.fieldbyname('YLSH').AsString); + if Trim(Order_SubZ.fieldbyname('YLPB').AsString)='' then + begin + YLPB:=0; + end else + YLPB:=StrToFloat(Order_SubZ.fieldbyname('YLPB').AsString); + with ADOQuery1 do + begin + First; + while not Eof do + begin + CDS_Sub.Locate('SubId',Trim(ADOQuery1.fieldbyname('SubId').AsString),[]); + if Trim(CDS_Sub.fieldbyname('SOrdQty').AsString)='' then + FOrdQty:='0' + else + FOrdQty:=Trim(CDS_Sub.fieldbyname('SOrdQty').AsString); + if Trim(OrdUnit.Text)='K' then + begin + YLQty:=YLQty+StrToFloat(FOrdQty)*YLPB/100*(1+YLSH/100); + end else + if Trim(OrdUnit.Text)='O' then + begin + if Trim(CDS_Sub.fieldbyname('SWFBKZ').AsString)='' then + begin + FKZ:='0'; + end else + FKZ:=Trim(CDS_Sub.fieldbyname('SWFBKZ').AsString); + DHSL:=StrToFloat(FOrdQty)*strtofloat(FKZ)/1000; + YLQty:=YLQty+DHSL*YLPB/100*(1+YLSH/100); + end; + Next; + end; + end; + with Order_SubZ do + begin + Edit; + FieldByName('YLQty').Value:=YLQty; + if YLQty-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=YLQty-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + end; + YLQty:=0; + Next; + end; + end; + YLQty:=0; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add(' select distinct(A.PBID) PBID from WFBYCL_PBSub A '); + SQL.Add(' inner join WFBYCL_PB B on B.PBID=A.PBID '); + sql.Add(' where A.SubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+''''); + sql.Add(' and B.PBType='''''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select * from WFBYCL_PBSub where PBID='''+Trim(ADOTemp.fieldbyname('PBID').AsString)+''''); + Open; + end; + Order_SubF.Locate('PBID',Trim(ADOTemp.fieldbyname('PBID').AsString),[]); + if Trim(Order_SubF.fieldbyname('YLSHQ').AsString)='' then + begin + YLSHQ:=0; + end else + YLSHQ:=StrToFloat(Order_SubF.fieldbyname('YLSHQ').AsString); + with ADOQuery1 do + begin + First; + while not Eof do + begin + CDS_Sub.Locate('SubId',Trim(ADOQuery1.fieldbyname('SubId').AsString),[]); + if Trim(CDS_Sub.fieldbyname('SOrdQty').AsString)='' then + FOrdQty:='0' + else + FOrdQty:=Trim(CDS_Sub.fieldbyname('SOrdQty').AsString); + if Trim(OrdUnit.Text)='K' then + begin + YLQty:=YLQty+StrToFloat(FOrdQty)*(YLSHQ*1.00/1000); + end else + if Trim(OrdUnit.Text)='O' then + begin + if Trim(CDS_Sub.fieldbyname('SWFBKZ').AsString)='' then + begin + FKZ:='0'; + end else + FKZ:=Trim(CDS_Sub.fieldbyname('SWFBKZ').AsString); + DHSL:=StrToFloat(FOrdQty)*strtofloat(FKZ)/1000; + YLQty:=YLQty+DHSL*(YLSHQ*1.00/1000); + end; + Next; + end; + end; + with Order_SubF do + begin + Edit; + FieldByName('YLQty').Value:=YLQty; + if YLQty-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=YLQty-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + end; + YLQty:=0; + Next; + end; + end; + //OrdQty:= + OrdQty.Text:=floattostr(TvSub.DataController.Summary.FooterSummaryValues[0]); +end; + +procedure TfrmOrderInPutZPLNew.Panel10MouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel1).perform(WM_SYSCOMMAND, $F012, 0); +end; + +procedure TfrmOrderInPutZPLNew.Image2Click(Sender: TObject); +begin + Panel1.Visible:=False; +end; + +procedure TfrmOrderInPutZPLNew.Button3Click(Sender: TObject); +begin + Panel1.Visible:=False; +end; + +procedure TfrmOrderInPutZPLNew.Button2Click(Sender: TObject); +begin + if CDS_Sel.Locate('ssel',True,[])=False then + begin + Application.MessageBox('ûѡݣ','ʾ',0); + Exit; + end; + if MInt=1 then + begin + SELYCLKC(Order_SubZ); + + end else + if MInt=2 then + begin + SELYCLKC(Order_SubF); + end else + if MInt=3 then + begin + SELYCLKC(Order_SubQ); + end; + Panel1.Visible:=False; +end; +procedure TfrmOrderInPutZPLNew.SELYCLKC(SCDS_Sub:TClientDataSet); +var + maxno,maxnosub:string; + YLPB,YLSH:Double; +begin + + try ADOCmd.Connection.BeginTrans; + with CDS_KCSel do + begin + First; + while not Eof do + begin + if CDS_KCSel.FieldByName('SSel').AsBoolean=True then + begin + if MInt=1 then + begin + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1* from WFBYCL_PB where YCLCode='''+Trim(CDS_KCSel.fieldbyname('YCLCode').AsString)+''''); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1* from WFBYCL_PB where YCLCode='''+Trim(CDS_KCSel.fieldbyname('YCLCode').AsString)+''''); + SQL.Add(' and YLPB>0 order by FillTime desc'); + Open; + end; + if Trim(ADOTemp.fieldbyname('YLPB').AsString)<>'' then + YLPB:=ADOTemp.fieldbyname('YLPB').Value + else + YLPB:=0; + if Trim(ADOTemp.fieldbyname('YLSH').AsString)<>'' then + YLSH:=ADOTemp.fieldbyname('YLSH').Value + else + YLSH:=0; + end else + begin + YLPB:=0; + YLSH:=0; + end; + end; + + with SCDS_Sub do + begin + Append; + SCDS_Sub.FieldByName('YCLCode').Value:=Trim(CDS_KCSel.fieldbyname('YCLCode').AsString); + SCDS_Sub.FieldByName('YCLName').Value:=Trim(CDS_KCSel.fieldbyname('YCLName').AsString); + SCDS_Sub.FieldByName('YCLSpec').Value:=Trim(CDS_KCSel.fieldbyname('YCLSpec').AsString); + SCDS_Sub.FieldByName('YLKC').Value:=Trim(CDS_KCSel.fieldbyname('KCQty').AsString); + SCDS_Sub.FieldByName('YLUnit').Value:=Trim(CDS_KCSel.fieldbyname('KCUint').AsString); + SCDS_Sub.FieldByName('CRID').Value:=Trim(CDS_KCSel.fieldbyname('CRID').AsString); + SCDS_Sub.FieldByName('YCLYJKC').Value:=Trim(CDS_KCSel.fieldbyname('YJKC').AsString); + if MInt=1 then + begin + SCDS_Sub.FieldByName('YLPB').Value:=YLPB; + SCDS_Sub.FieldByName('YLSH').Value:=YLSH; + end; + Post; + end; + // + if GetLSNo(ADOCmd,maxno,'PB','WFBYCL_PB',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_PB where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + if MInt=1 then + begin + FieldByName('PBType').Value:='Ҫ'; + end else + if MInt=2 then + begin + FieldByName('PBType').Value:=''; + end else + if MInt=3 then + begin + FieldByName('PBType').Value:=''; + end; + FieldByName('YCLCode').Value:=Trim(CDS_KCSel.fieldbyname('YCLCode').AsString); + FieldByName('YCLName').Value:=Trim(CDS_KCSel.fieldbyname('YCLName').AsString); + FieldByName('YCLSpec').Value:=Trim(CDS_KCSel.fieldbyname('YCLSpec').AsString); + FieldByName('YLKC').Value:=Trim(CDS_KCSel.fieldbyname('KCQty').AsString); + FieldByName('YLUnit').Value:=Trim(CDS_KCSel.fieldbyname('KCUint').AsString); + FieldByName('CRID').Value:=Trim(CDS_KCSel.fieldbyname('CRID').AsString); + FieldByName('YCLYJKC').Value:=Trim(CDS_KCSel.fieldbyname('YJKC').AsString); + Post; + end; + with SCDS_Sub do + begin + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + Post; + end; + // + + //ӱ + with Self.CDS_Sel do + begin + First; + while not Eof do + begin + if Self.CDS_Sel.FieldByName('SSel').AsBoolean=True then + begin + if GetLSNo(ADOCmd,maxnosub,'PS','WFBYCL_PBSub',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_PBSub where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(CDS_Sel.fieldbyname('SubId').AsString); + FieldByName('PBId').Value:=Trim(maxno); + FieldByName('PSId').Value:=Trim(maxnosub); + Post; + end; + end; + Next; + end; + end; + if MInt=1 then + OnlyUpYCLData(); + //ӱ + end; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + except + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + Exit; + end; +end; + +procedure TfrmOrderInPutZPLNew.FormClose(Sender: TObject; + var Action: TCloseAction); +var + maxno,FFS:string; + wz:Integer; +begin + WriteCxBandedGrid('1',Tv1,'޷IJ'); + WriteCxBandedGrid('ϸ1',Tv2,'޷IJ'); + WriteCxBandedGrid('1',Tv3,'޷IJ'); + WriteCxGrid('ӱ1',TvSub,'޷IJ'); + WriteCxGrid('1',TVDB,'޷IJ'); + {if CopyInt=1 then + begin + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFBOrder_Main where MainId='''+Trim(FMainId)+''''); + sql.Add('delete WFBOrder_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add('delete WFB_DB where MainId='''+Trim(FMainId)+''''); + sql.Add('delete WFBYCL_PB where MainId='''+Trim(FMainId)+''''); + sql.Add('delete WFBYCL_PBSub where MainId='''+Trim(FMainId)+''''); + ExecSQL; + end; + end; + wz:=Pos('F',FMainId); + FFS:=Copy(FMainId,wz,4); + if ((CopyInt=1) or (FFS='FZ')) then + begin + UpMainId(); + end; } +end; +procedure TfrmOrderInPutZPLNew.UpMainId(); +var + maxno:string; +begin + try + ADOCmd.Connection.BeginTrans; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PBSub where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + if GetLSNo(ADOCmd,maxno,'PS','WFBYCL_PBSub',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBYCL_PBSub Set PSID='''+Trim(maxno)+''''); + SQL.Add(' where PSID='''+Trim(ADOTemp.fieldbyname('PSID').AsString)+''''); + ExecSQL; + end; + Next; + end; + end; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PB where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + if GetLSNo(ADOCmd,maxno,'PB','WFBYCL_PB',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBYCL_PB Set PBID='''+Trim(maxno)+''''); + SQL.Add(' where PBID='''+Trim(ADOTemp.fieldbyname('PBID').AsString)+''''); + sql.Add('UPdate WFBYCL_PBSub Set PBID='''+Trim(maxno)+''''); + SQL.Add(' where PBID='''+Trim(ADOTemp.fieldbyname('PBID').AsString)+''''); + ExecSQL; + end; + Next; + end; + end; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBOrder_Sub where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + if GetLSNo(ADOCmd,maxno,'','WFBOrder_Sub',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Sub Set SubID='''+Trim(maxno)+''''); + SQL.Add(' where SubID='''+Trim(ADOTemp.fieldbyname('SubID').AsString)+''''); + sql.Add('UPdate WFBYCL_PBSub Set SubID='''+Trim(maxno)+''''); + SQL.Add(' where SubID='''+Trim(ADOTemp.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + Next; + end; + end; + if GetLSNo(ADOCmd,maxno,'','WFBOrder_Main',2,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Main Set MainID='''+Trim(maxno)+''''); + SQL.Add(' where MainID='''+Trim(FMainId)+''''); + sql.Add('Update WFBOrder_Sub Set MainID='''+Trim(maxno)+''''); + SQL.Add(' where MainID='''+Trim(FMainId)+''''); + sql.Add('Update WFB_DB Set MainID='''+Trim(maxno)+''''); + SQL.Add(' where MainID='''+Trim(FMainId)+''''); + sql.Add('UPdate WFBYCL_PB Set MainID='''+Trim(maxno)+''''); + SQL.Add(' where MainID='''+Trim(FMainId)+''''); + sql.Add('UPdate WFBYCL_PBSub Set MainID='''+Trim(maxno)+''''); + SQL.Add(' where MainID='''+Trim(FMainId)+''''); + ExecSQL; + end; + ADOCmd.Connection.CommitTrans; + FMainId:=Trim(maxno); + except + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ˮʧܣ','ʾ',0); + end; +end; +procedure TfrmOrderInPutZPLNew.vSubColumn6PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('WFBBZUnitD'); + flagname:='װ'; + if ShowModal=1 then + begin + Self.CDS_Sub.Edit; + CDS_Sub.FieldByName('SWFBBZUnit1').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPLNew.vSubColumn8PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('WFBBZUnitZ'); + flagname:='аװ'; + if ShowModal=1 then + begin + Self.CDS_Sub.Edit; + CDS_Sub.FieldByName('SWFBBZUnit2').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPLNew.vSubColumn10PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('WFBBZUnitD'); + flagname:='Сװ'; + if ShowModal=1 then + begin + Self.CDS_Sub.Edit; + CDS_Sub.FieldByName('SWFBBZUnit3').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPLNew.BZPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + {try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('BZ'); + flagname:='۵λ'; + if ShowModal=1 then + begin + Self.FXS:=99; + BZ.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + BZ.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; } +end; + +procedure TfrmOrderInPutZPLNew.BZPropertiesChange(Sender: TObject); +begin + { if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(BZ,'BZ'); } +end; + +procedure TfrmOrderInPutZPLNew.cxGridDBColumn4PropertiesEditValueChanged( + Sender: TObject); +var + FStr:String; +begin + FStr:=TcxTextEdit(Sender).EditingText; + with CDS_Sub do + begin + Edit; + if Trim(FStr)='' then + FieldByName('SWFBFK1').Value:='0' + else + FieldByName('SWFBFK1').Value:=FStr; + Post; + end; + YCLDataUPdate(); +end; + +procedure TfrmOrderInPutZPLNew.vSubColumn4PropertiesEditValueChanged( + Sender: TObject); +var + FStr:String; +begin + FStr:=TcxTextEdit(Sender).EditingText; + with CDS_Sub do + begin + Edit; + if Trim(FStr)='' then + FieldByName('SWFBFK2').Value:='0' + else + FieldByName('SWFBFK2').Value:=FStr; + Post; + end; + YCLDataUPdate(); +end; + +procedure TfrmOrderInPutZPLNew.vSubColumn5PropertiesEditValueChanged( + Sender: TObject); +var + FStr:String; +begin + FStr:=TcxTextEdit(Sender).EditingText; + with CDS_Sub do + begin + Edit; + if Trim(FStr)='' then + FieldByName('SWFBBZQty1').Value:='1' + else + FieldByName('SWFBBZQty1').Value:=FStr; + Post; + end; + YCLDataUPdate(); +end; + +procedure TfrmOrderInPutZPLNew.vSubColumn7PropertiesEditValueChanged( + Sender: TObject); +var + FStr:String; +begin + FStr:=TcxTextEdit(Sender).EditingText; + with CDS_Sub do + begin + Edit; + if Trim(FStr)='' then + FieldByName('SWFBBZQty2').Value:='1' + else + FieldByName('SWFBBZQty2').Value:=FStr; + Post; + end; + YCLDataUPdate(); +end; + + +procedure TfrmOrderInPutZPLNew.vSubColumn9PropertiesEditValueChanged( + Sender: TObject); +var + FStr:String; +begin + FStr:=TcxTextEdit(Sender).EditingText; + with CDS_Sub do + begin + Edit; + if Trim(FStr)='' then + FieldByName('SWFBBZQty3').Value:='1' + else + FieldByName('SWFBBZQty3').Value:=FStr; + Post; + end; + YCLDataUPdate(); +end; + + +procedure TfrmOrderInPutZPLNew.vSubColumn12PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim(WFBCodeName.Name); + flagname:=''; + if ShowModal=1 then + begin + CDS_Sub.Edit; + CDS_Sub.FieldByName('SWFBCodeName').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + CDS_Sub.FieldByName('SWFBCode').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1* from WFBOrder_Sub where SWFBCode='''+Trim(CDS_Sub.fieldbyname('SWFBCode').AsString)+''''); + Open; + end; + if ADOTemp.IsEmpty then Exit; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select Top 1* from WFBOrder_Sub where SWFBCode='''+Trim(CDS_Sub.fieldbyname('SWFBCode').AsString)+''''); + sql.Add(' order by SFillTIme Desc'); + Open; + end; + with CDS_Sub do + begin + Edit; + FieldByName('SWFBColor').Value:=ADOTemp.fieldbyname('SWFBColor').Value; + FieldByName('SWFBHW').Value:=ADOTemp.fieldbyname('SWFBHW').Value; + FieldByName('SWFBKZ').Value:=ADOTemp.fieldbyname('SWFBKZ').Value; + FieldByName('SWFBFK1').Value:=ADOTemp.fieldbyname('SWFBFK1').Value; + FieldByName('SWFBFK2').Value:=ADOTemp.fieldbyname('SWFBFK2').Value; + FieldByName('SOrdPrice').Value:=ADOTemp.fieldbyname('SOrdPrice').Value; + FieldByName('SWFBBZUnit1').Value:=ADOTemp.fieldbyname('SWFBBZUnit1').Value; + FieldByName('SWFBBZQty2').Value:=ADOTemp.fieldbyname('SWFBBZQty2').Value; + FieldByName('SWFBBZUnit2').Value:=ADOTemp.fieldbyname('SWFBBZUnit2').Value; + FieldByName('SWFBBZQty3').Value:=ADOTemp.fieldbyname('SWFBBZQty3').Value; + FieldByName('SWFBBZUnit3').Value:=ADOTemp.fieldbyname('SWFBBZUnit3').Value; + FieldByName('WKMS').Value:=ADOTemp.fieldbyname('WKMS').Value; + FieldByName('KZSmal').Value:=ADOTemp.fieldbyname('KZSmal').Value; + FieldByName('KZBig').Value:=ADOTemp.fieldbyname('KZBig').Value; + //Post; + end; +end; + +procedure TfrmOrderInPutZPLNew.MenuItem3Click(Sender: TObject); +begin + CDS_Sel.DisableControls; + with CDS_Sel do + begin + First; + while not Eof do + begin + Edit; + FieldByName('SSel').Value:=True; + Post; + Next; + end; + end; + CDS_Sel.EnableControls; +end; + +procedure TfrmOrderInPutZPLNew.MenuItem4Click(Sender: TObject); +begin + CDS_Sel.DisableControls; + with CDS_Sel do + begin + First; + while not Eof do + begin + Edit; + FieldByName('SSel').Value:=False; + Post; + Next; + end; + end; + CDS_Sel.EnableControls; +end; + +procedure TfrmOrderInPutZPLNew.cxButtonEdit1PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('JJDW'); + flagname:='Ƽ۵λ'; + if ShowModal=1 then + begin + Self.FXS:=99; + BZ.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + // BZ.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPLNew.cxButtonEdit1PropertiesChange( + Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(BZ,'JJDW'); +end; + +procedure TfrmOrderInPutZPLNew.vSubColumn13PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('WKMS'); + flagname:='Ŀ'; + if ShowModal=1 then + begin + Self.CDS_Sub.Edit; + CDS_Sub.FieldByName('WKMS').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPLNew.TBChkOkClick(Sender: TObject); +begin + ChkInt:=1; + TBSave.Click; +end; + +procedure TfrmOrderInPutZPLNew.TBChkNoClick(Sender: TObject); +begin + ChkInt:=2; + TBSave.Click; +end; + +procedure TfrmOrderInPutZPLNew.Button4Click(Sender: TObject); +begin + if CDS_Sub.IsEmpty then exit; + if( (Order_SubZ.IsEmpty) and (Order_SubF.IsEmpty) and (Order_SubQ.IsEmpty) )then Exit; + if Trim(OrderNo.Text)='' then + begin + Application.MessageBox('ŲΪգ','ʾ',0); + Exit; + end; + SaveData10(); + if CDS_Sub.Locate('SSel',True,[])=False then + begin + Application.MessageBox('굥δѡݣܸ£','ʾ',0); + Exit; + end; + if Order_SubZ.Locate('SSel',True,[])=False then + begin + if Order_SubF.Locate('SSel',True,[])=False then + if Order_SubZ.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ԭϱδѡݣܸ£','ʾ',0); + Exit; + end; + end; + try + ADOCMD.Connection.BeginTrans; + YCLPBIDUPdate(Order_SubZ); + YCLPBIDUPdate(Order_SubF); + YCLPBIDUPdate(Order_SubQ); + YLUpdate(); + ADOCMD.Connection.CommitTrans; + Application.MessageBox('³ɹ','ʾ',0); + Exit; + except + ADOCMD.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; +procedure TfrmOrderInPutZPLNew.YCLPBIDUPdate(SOrder_SubZ:TClientDataSet); +var + maxno:String; +begin + with CDS_Sub do + begin + First; + while not Eof do + begin + if CDS_Sub.FieldByName('SSel').AsBoolean=True then + begin + with SOrder_SubZ do + begin + First; + while not Eof do + begin + if SOrder_SubZ.FieldByName('SSel').AsBoolean=True then + begin + with ADOCMD do + begin + Close; + sql.Clear; + sql.Add('delete WFBYCL_PBSub where SubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+''''); + sql.Add(' and PBID='''+Trim(SOrder_SubZ.fieldbyname('PBID').AsString)+''''); + ExecSQL; + end; + if GetLSNo(ADOCMD,maxno,'PS','WFBYCL_PBSub',4,1)=False then + begin + ADOCMD.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOCMD do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_PBSub where 1<>1'); + Open; + end; + with ADOCMD do + begin + Append; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(CDS_Sub.fieldbyname('SubId').AsString); + FieldByName('PBID').Value:=Trim(SOrder_SubZ.fieldbyname('PBID').AsString); + FieldByName('PSID').Value:=Trim(maxno); + Post; + end; + end; + Next; + end; + end; + end; + Next; + end; + end; +end; + +procedure TfrmOrderInPutZPLNew.N3Click(Sender: TObject); +begin + SelAll(CDS_Sub,True); +end; + +procedure TfrmOrderInPutZPLNew.N4Click(Sender: TObject); +begin + SelAll(CDS_Sub,False); +end; + +procedure TfrmOrderInPutZPLNew.DDChange(Sender: TObject); +begin + if CDS_Sub.IsEmpty then Exit; + YCLDataUPdate(); +end; + +procedure TfrmOrderInPutZPLNew.ZDChange(Sender: TObject); +begin + if CDS_Sub.IsEmpty then Exit; + YCLDataUPdate(); +end; + +procedure TfrmOrderInPutZPLNew.vSubColumn11PropertiesEditValueChanged( + Sender: TObject); +var + FStr:String; +begin + FStr:=TcxTextEdit(Sender).EditingText; + with CDS_Sub do + begin + Edit; + if Trim(FStr)='' then + FieldByName('SubType').Value:='' + else + FieldByName('SubType').Value:=FStr; + Post; + end; + YCLDataUPdate(); +end; + +procedure TfrmOrderInPutZPLNew.MenuItem7Click(Sender: TObject); +begin + if MInt=1 then + begin + SelAll(Order_SubZ,True); + end else + if MInt=2 then + begin + SelAll(Order_SubF,True); + end else + if MInt=3 then + begin + SelAll(Order_SubQ,True); + end; +end; + +procedure TfrmOrderInPutZPLNew.MenuItem8Click(Sender: TObject); +begin + if MInt=1 then + begin + SelAll(Order_SubZ,False); + end else + if MInt=2 then + begin + SelAll(Order_SubF,False); + end else + if MInt=3 then + begin + SelAll(Order_SubQ,False); + end; +end; + +end. diff --git a/艾登贸易管理/U_OrderInPutZPNew.dfm b/艾登贸易管理/U_OrderInPutZPNew.dfm new file mode 100644 index 0000000..f4388b7 --- /dev/null +++ b/艾登贸易管理/U_OrderInPutZPNew.dfm @@ -0,0 +1,1711 @@ +object frmOrderInPutZPNew: TfrmOrderInPutZPNew + Left = 81 + Top = 20 + Width = 1102 + Height = 705 + Caption = #25351#31034#21333#24405#20837'('#21046#21697')' + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1094 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_WFBOrder.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 29 + Width = 1094 + Height = 318 + Align = alTop + BevelInner = bvNone + BevelOuter = bvNone + Color = clBtnFace + Ctl3D = False + ParentColor = False + ParentCtl3D = False + TabOrder = 1 + object Label1: TLabel + Left = 24 + Top = 15 + Width = 65 + Height = 12 + Caption = #35746#21333#32534#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 204 + Top = 15 + Width = 53 + Height = 12 + Caption = #20195' '#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 727 + Top = 15 + Width = 65 + Height = 12 + Caption = #19979#21333#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 375 + Top = 15 + Width = 53 + Height = 12 + Caption = #23458' '#25143#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 547 + Top = 15 + Width = 52 + Height = 12 + Caption = #21040#36798#28207#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label16: TLabel + Left = 912 + Top = 15 + Width = 65 + Height = 12 + Caption = #21512#35745#25968#37327#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 24 + Top = 68 + Width = 1068 + Height = 12 + Caption = + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - ' + Font.Charset = GB2312_CHARSET + Font.Color = clFuchsia + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label20: TLabel + Left = 23 + Top = 116 + Width = 1068 + Height = 12 + Caption = + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - ' + Font.Charset = GB2312_CHARSET + Font.Color = clFuchsia + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label21: TLabel + Left = 25 + Top = 88 + Width = 34 + Height = 12 + Caption = 'ETA'#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label22: TLabel + Left = 257 + Top = 90 + Width = 34 + Height = 12 + Caption = 'ETD'#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label23: TLabel + Left = 491 + Top = 89 + Width = 39 + Height = 12 + Caption = #35013#26588#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label24: TLabel + Left = 684 + Top = 88 + Width = 53 + Height = 12 + Caption = #20837' '#24211#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label25: TLabel + Left = 939 + Top = 89 + Width = 39 + Height = 12 + Caption = #29983#20135#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label26: TLabel + Left = 221 + Top = 88 + Width = 13 + Height = 15 + Caption = #22825 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label27: TLabel + Left = 165 + Top = 88 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label28: TLabel + Left = 238 + Top = 88 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label29: TLabel + Left = 455 + Top = 88 + Width = 13 + Height = 15 + Caption = #22825 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label30: TLabel + Left = 400 + Top = 88 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label31: TLabel + Left = 472 + Top = 88 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 909 + Top = 88 + Width = 13 + Height = 15 + Caption = #22825 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label32: TLabel + Left = 854 + Top = 88 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label33: TLabel + Left = 923 + Top = 88 + Width = 14 + Height = 15 + Caption = '>>' + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 23 + Top = 294 + Width = 1068 + Height = 12 + Caption = + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' + + '- - - - - - - - - - - - - - - - - - - - - - - - ' + Font.Charset = GB2312_CHARSET + Font.Color = clFuchsia + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label5: TLabel + Left = 22 + Top = 131 + Width = 30 + Height = 14 + Caption = #35814#21333 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 738 + Top = 131 + Width = 60 + Height = 14 + Caption = #25171#21253#35814#32454 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label35: TLabel + Left = 911 + Top = 131 + Width = 60 + Height = 14 + Caption = #27880#24847#20107#39033 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 24 + Top = 46 + Width = 65 + Height = 12 + Caption = #35745#20215#21333#20301#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 202 + Top = 46 + Width = 52 + Height = 12 + Caption = #29983#20135#32447#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 375 + Top = 46 + Width = 52 + Height = 12 + Caption = #32593#32467#26500#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label34: TLabel + Left = 547 + Top = 46 + Width = 91 + Height = 12 + Caption = #27597#21367#20811#37325#33539#22260#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label36: TLabel + Left = 695 + Top = 45 + Width = 14 + Height = 12 + Caption = '--' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label39: TLabel + Left = 974 + Top = 44 + Width = 14 + Height = 12 + Caption = '--' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label37: TLabel + Left = 824 + Top = 46 + Width = 91 + Height = 12 + Caption = #23567#21367#20811#37325#33539#22260#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 772 + Top = 43 + Width = 23 + Height = 15 + Caption = 'g/'#13217 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 1051 + Top = 43 + Width = 23 + Height = 15 + Caption = 'g/'#13217 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + end + object OrderNo: TEdit + Left = 86 + Top = 13 + Width = 103 + Height = 18 + TabOrder = 0 + end + object OrderDate: TDateTimePicker + Left = 791 + Top = 11 + Width = 103 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 1 + end + object WFBCodeName: TcxButtonEdit + Left = 252 + Top = 11 + ParentShowHint = False + Properties.BeepOnError = True + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = WFBCodeNamePropertiesButtonClick + Properties.OnChange = WFBCodeNamePropertiesChange + ShowHint = False + TabOrder = 2 + OnKeyDown = WFBCodeNameKeyDown + Width = 97 + end + object CustomNoName: TcxButtonEdit + Left = 426 + Top = 11 + Hint = 'CustomerNo' + BeepOnEnter = False + ParentShowHint = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = CustomNoNamePropertiesButtonClick + Properties.OnChange = CustomNoNamePropertiesChange + ShowHint = False + TabOrder = 3 + OnKeyDown = WFBCodeNameKeyDown + Width = 100 + end + object ArrivalPortName: TcxButtonEdit + Left = 596 + Top = 11 + BeepOnEnter = False + ParentShowHint = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = ArrivalPortNamePropertiesButtonClick + Properties.OnChange = ArrivalPortNamePropertiesChange + ShowHint = False + TabOrder = 4 + OnKeyDown = WFBCodeNameKeyDown + Width = 117 + end + object OrdQty: TEdit + Left = 975 + Top = 11 + Width = 49 + Height = 18 + Enabled = False + TabOrder = 5 + OnChange = OrdQtyChange + OnKeyPress = OrdQtyKeyPress + end + object OrdUnit: TComboBox + Left = 1025 + Top = 11 + Width = 51 + Height = 20 + Style = csDropDownList + Ctl3D = False + Enabled = False + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 12 + ParentCtl3D = False + ParentFont = False + TabOrder = 6 + OnChange = OrdQtyChange + Items.Strings = ( + #13199 + #13217) + end + object ETADate: TDateTimePicker + Left = 57 + Top = 85 + Width = 104 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 7 + OnChange = ETADateChange + end + object ETDDate: TDateTimePicker + Left = 291 + Top = 85 + Width = 104 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + Enabled = False + TabOrder = 8 + end + object ZGDate: TDateTimePicker + Left = 527 + Top = 85 + Width = 104 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + Enabled = False + TabOrder = 9 + end + object BegRKDate: TDateTimePicker + Left = 735 + Top = 85 + Width = 115 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + TabOrder = 10 + OnChange = BegRKDateChange + end + object BegSCDate: TDateTimePicker + Left = 972 + Top = 85 + Width = 104 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + ShowCheckbox = True + Enabled = False + TabOrder = 11 + end + object Day1: TEdit + Left = 184 + Top = 87 + Width = 35 + Height = 18 + TabOrder = 12 + OnChange = Day1Change + OnKeyPress = OrdQtyKeyPress + end + object Day2: TEdit + Left = 418 + Top = 87 + Width = 35 + Height = 18 + TabOrder = 13 + OnChange = Day2Change + OnKeyPress = OrdQtyKeyPress + end + object Day3: TEdit + Left = 872 + Top = 87 + Width = 35 + Height = 18 + TabOrder = 14 + OnChange = Day3Change + OnKeyPress = OrdQtyKeyPress + end + object BZ: TcxButtonEdit + Left = 86 + Top = 43 + BeepOnEnter = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = BZPropertiesButtonClick + Properties.OnChange = BZPropertiesChange + TabOrder = 15 + OnKeyDown = WFBCodeNameKeyDown + Width = 101 + end + object cxGrid5: TcxGrid + Left = 21 + Top = 146 + Width = 710 + Height = 139 + TabOrder = 16 + object TvSub: TcxGridDBTableView + PopupMenu = PopupMenu2 + OnKeyPress = TVZDYKeyPress + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = TvSubColumn1 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object vSubColumn3: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'XHNO' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 34 + end + object vSubColumn11: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'SubType' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.Items.Strings = ( + #28857#27573 + #25240#21472) + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 49 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = cxGridDBColumn3PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 45 + end + object vSubColumn2: TcxGridDBColumn + Caption = #33457#32441 + DataBinding.FieldName = 'SWFBHW' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = vSubColumn2PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 41 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #20811#37325'g/'#13217 + DataBinding.FieldName = 'SWFBKZ' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 63 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #38271#24230'cm' + DataBinding.FieldName = 'SWFBFK1' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 49 + end + object vSubColumn4: TcxGridDBColumn + Caption = #23485#24230'cm' + DataBinding.FieldName = 'SWFBFK2' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 46 + end + object vSubColumn1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'SOrdPrice' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 49 + end + object vSubColumn5: TcxGridDBColumn + Caption = #22823#25968#37327 + DataBinding.FieldName = 'SWFBBZQty1' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 46 + end + object vSubColumn6: TcxGridDBColumn + Caption = #22823#21333#20301 + DataBinding.FieldName = 'SWFBBZUnit1' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = vSubColumn6PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 48 + end + object vSubColumn7: TcxGridDBColumn + Caption = #20013#25968#37327 + DataBinding.FieldName = 'SWFBBZQty2' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 49 + end + object vSubColumn8: TcxGridDBColumn + Caption = #20013#21333#20301 + DataBinding.FieldName = 'SWFBBZUnit2' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = vSubColumn8PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 49 + end + object vSubColumn9: TcxGridDBColumn + Caption = #23567#25968#37327 + DataBinding.FieldName = 'SWFBBZQty3' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 49 + end + object vSubColumn10: TcxGridDBColumn + Caption = #23567#21333#20301 + DataBinding.FieldName = 'SWFBBZUnit3' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = vSubColumn10PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 53 + end + object TvSubColumn1: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'SOrdQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 45 + end + end + object cxGridLevel4: TcxGridLevel + GridView = TvSub + end + end + object cxGrid4: TcxGrid + Left = 736 + Top = 146 + Width = 169 + Height = 138 + TabOrder = 17 + object TVDB: TcxGridDBTableView + PopupMenu = PopupMenu1 + OnKeyPress = TVZDYKeyPress + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TVZDYCellDblClick + DataController.DataSource = DataSource3 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + object cxGridDBColumn1: TcxGridDBColumn + Caption = #21253#25968#37327 + DataBinding.FieldName = 'BSL' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.handBlack + Width = 48 + end + object VDBColumn1: TcxGridDBColumn + Caption = #21367#25968#37327 + DataBinding.FieldName = 'JSL' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 49 + end + object VDBColumn2: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'DBUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 55 + end + end + object cxGridLevel3: TcxGridLevel + GridView = TVDB + end + end + object Note: TRichEdit + Left = 910 + Top = 146 + Width = 166 + Height = 139 + TabOrder = 18 + end + object SCXName: TcxButtonEdit + Left = 252 + Top = 43 + Hint = 'FactoryNo1' + BeepOnEnter = False + ParentShowHint = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = SCXNamePropertiesButtonClick + Properties.OnChange = SCXNamePropertiesChange + ShowHint = False + TabOrder = 19 + OnKeyDown = WFBCodeNameKeyDown + Width = 97 + end + object WJGName: TcxButtonEdit + Left = 426 + Top = 43 + Hint = 'FactoryNo2' + BeepOnEnter = False + ParentShowHint = False + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.MaxLength = 0 + Properties.OnButtonClick = WJGNamePropertiesButtonClick + Properties.OnChange = WJGNamePropertiesChange + ShowHint = False + TabOrder = 20 + OnKeyDown = WFBCodeNameKeyDown + Width = 98 + end + object MJKZX: TEdit + Left = 635 + Top = 43 + Width = 60 + Height = 18 + TabOrder = 21 + OnKeyPress = OrdQtyKeyPress + end + object MJKZD: TEdit + Left = 709 + Top = 43 + Width = 60 + Height = 18 + TabOrder = 22 + OnKeyPress = OrdQtyKeyPress + end + object XJKZD: TEdit + Left = 990 + Top = 43 + Width = 60 + Height = 18 + TabOrder = 23 + OnKeyPress = OrdQtyKeyPress + end + object XJKZX: TEdit + Left = 912 + Top = 43 + Width = 60 + Height = 18 + TabOrder = 24 + OnKeyPress = OrdQtyKeyPress + end + object PanZDY: TPanel + Left = 899 + Top = 157 + Width = 151 + Height = 153 + TabOrder = 25 + Visible = False + object CXGridZDY: TcxGrid + Left = 3 + Top = 4 + Width = 142 + Height = 113 + TabOrder = 0 + object TVZDY: TcxGridDBTableView + OnKeyPress = TVZDYKeyPress + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TVZDYCellDblClick + DataController.DataSource = DataSource2 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + object VHelpZDYName: TcxGridDBColumn + DataBinding.FieldName = 'ZDYName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.handBlack + Width = 129 + IsCaptionAssigned = True + end + end + object CXGridZDYLevel1: TcxGridLevel + GridView = TVZDY + end + end + object Button1: TButton + Left = 40 + Top = 120 + Width = 65 + Height = 25 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button1Click + end + end + end + object ScrollBox2: TScrollBox + Left = 0 + Top = 347 + Width = 1094 + Height = 321 + Align = alClient + BevelInner = bvNone + BevelOuter = bvNone + Ctl3D = False + ParentCtl3D = False + TabOrder = 2 + object cxGrid3: TcxGrid + Left = 809 + Top = 31 + Width = 366 + Height = 269 + Align = alLeft + TabOrder = 0 + object Tv3: TcxGridDBBandedTableView + OnMouseDown = Tv3MouseDown + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSourceQ + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'YCLCode' + Column = v3Column1 + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Bands = < + item + Caption = #20854#23427 + Styles.Header = DataLink_WFBOrder.TextSHuangSe + Width = 400 + end> + object v3Column1: TcxGridDBBandedColumn + Caption = #29289#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v3Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 55 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object v3Column2: TcxGridDBBandedColumn + Caption = #35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 44 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v3Column3: TcxGridDBBandedColumn + Caption = #24211#23384 + DataBinding.FieldName = 'YLKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 48 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object v3Column4: TcxGridDBBandedColumn + Caption = #29992#37327 + DataBinding.FieldName = 'YLQty' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v3Column4PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object v3Column5: TcxGridDBBandedColumn + Caption = #21333#20301 + DataBinding.FieldName = 'YLUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 40 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object v3Column6: TcxGridDBBandedColumn + Caption = #30003#36141#25968#37327 + DataBinding.FieldName = 'SGQty' + HeaderAlignmentHorz = taCenter + Width = 66 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object v3Column7: TcxGridDBBandedColumn + Caption = #21069#21333#24211#23384 + DataBinding.FieldName = 'YCLYJKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object v3Column8: TcxGridDBBandedColumn + Tag = 2 + Caption = #19981#36275 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 34 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + object cxGrid2: TcxGrid + Left = 425 + Top = 31 + Width = 384 + Height = 269 + Align = alLeft + TabOrder = 1 + object Tv2: TcxGridDBBandedTableView + OnMouseDown = Tv2MouseDown + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSourceF + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'YCLCode' + Column = v2Column1 + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Bands = < + item + Caption = #36741#21161#21407#26009 + Styles.Header = DataLink_WFBOrder.FonePurple + Width = 428 + end> + object v2Column1: TcxGridDBBandedColumn + Caption = #21407#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v2Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 68 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object v2Column2: TcxGridDBBandedColumn + Caption = #32791#29575#8240 + DataBinding.FieldName = 'YLSHQ' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 41 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object v2Column3: TcxGridDBBandedColumn + Caption = #29992#37327'KG' + DataBinding.FieldName = 'YLQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 42 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object v2Column4: TcxGridDBBandedColumn + Caption = #24211#23384 + DataBinding.FieldName = 'YLKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 40 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object v2Column5: TcxGridDBBandedColumn + Caption = #35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 60 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v2Column6: TcxGridDBBandedColumn + Caption = #30003#36141#25968#37327 + DataBinding.FieldName = 'SGQty' + HeaderAlignmentHorz = taCenter + Width = 74 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object v2Column7: TcxGridDBBandedColumn + Caption = #21069#21333#24211#23384 + DataBinding.FieldName = 'YCLYJKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 58 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object v2Column8: TcxGridDBBandedColumn + Tag = 2 + Caption = #19981#36275 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Width = 34 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 31 + Width = 425 + Height = 269 + Align = alLeft + TabOrder = 2 + object Tv1: TcxGridDBBandedTableView + OnMouseDown = Tv1MouseDown + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSourceZ + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'YCLCode' + Column = v1Column1 + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Bands = < + item + Caption = #20027#35201#21407#26009 + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 487 + end> + object v1Column1: TcxGridDBBandedColumn + Caption = #21407#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v1Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 69 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object v1Column2: TcxGridDBBandedColumn + Caption = #37197#27604'%' + DataBinding.FieldName = 'YLPB' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 37 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object v1Column3: TcxGridDBBandedColumn + Caption = #25439#32791'%' + DataBinding.FieldName = 'YLSH' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column3PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 39 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object v1Column4: TcxGridDBBandedColumn + Caption = #29992#37327'KG' + DataBinding.FieldName = 'YLQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 41 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object v1Column5: TcxGridDBBandedColumn + Caption = #24211#23384 + DataBinding.FieldName = 'YLKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 41 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object v1Column6: TcxGridDBBandedColumn + Caption = #35268#26684 + DataBinding.FieldName = 'YCLSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 54 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v1Column7: TcxGridDBBandedColumn + Caption = #30003#36141#25968#37327 + DataBinding.FieldName = 'SGQty' + HeaderAlignmentHorz = taCenter + Width = 64 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object v1Column8: TcxGridDBBandedColumn + Caption = #21069#21333#24211#23384 + DataBinding.FieldName = 'YCLYJKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 55 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object v1Column9: TcxGridDBBandedColumn + Tag = 2 + Caption = #19981#36275 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Content = DataLink_WFBOrder.FoneRed + Width = 37 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 0 + Width = 1175 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clBtnFace + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_WFBOrder.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 3 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + object TBPrint: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #25171#21360#35831#36141#21333 + ImageIndex = 96 + OnClick = TBPrintClick + end + end + end + object ADOTemp: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 912 + Top = 357 + end + object ADOCmd: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + Parameters = <> + Left = 832 + Top = 309 + end + object DataSourceZ: TDataSource + DataSet = Order_SubZ + Left = 296 + Top = 440 + end + object Order_SubZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 256 + Top = 440 + end + object DataSource2: TDataSource + DataSet = ADOZDY + Left = 760 + Top = 8 + end + object ADOZDY: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 728 + Top = 5 + end + object CDS_ZDY: TClientDataSet + Aggregates = <> + Params = <> + Left = 800 + Top = 8 + end + object ADOQuery1: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + Parameters = <> + Left = 856 + Top = 301 + end + object Order_SubF: TClientDataSet + Aggregates = <> + Params = <> + Left = 456 + Top = 440 + end + object DataSourceF: TDataSource + DataSet = Order_SubF + Left = 488 + Top = 440 + end + object Order_SubQ: TClientDataSet + Aggregates = <> + Params = <> + Left = 800 + Top = 448 + end + object DataSourceQ: TDataSource + DataSet = Order_SubQ + Left = 832 + Top = 448 + end + object ADOQueryQG: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 224 + Top = 285 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryQG + Left = 288 + Top = 296 + end + object RM2: 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 328 + Top = 288 + ReportData = {} + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 256 + Top = 288 + end + object DataSource1: TDataSource + DataSet = CDS_Sub + Left = 136 + Top = 232 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 72 + Top = 224 + end + object PopupMenu2: TPopupMenu + Left = 104 + Top = 229 + object MenuItem1: TMenuItem + Caption = #22686#34892 + OnClick = MenuItem1Click + end + object N3: TMenuItem + Caption = #21024#34892 + OnClick = N3Click + end + end + object CDS_DB: TClientDataSet + Aggregates = <> + Params = <> + Left = 592 + Top = 232 + end + object PopupMenu1: TPopupMenu + Left = 544 + Top = 253 + object N1: TMenuItem + Caption = #22686#34892 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #21024#34892 + OnClick = N2Click + end + end + object DataSource3: TDataSource + DataSet = CDS_DB + Left = 544 + Top = 200 + end +end diff --git a/艾登贸易管理/U_OrderInPutZPNew.pas b/艾登贸易管理/U_OrderInPutZPNew.pas new file mode 100644 index 0000000..4a52f13 --- /dev/null +++ b/艾登贸易管理/U_OrderInPutZPNew.pas @@ -0,0 +1,1984 @@ +unit U_OrderInPutZPNew; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer, + cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB, + ExtCtrls, BtnEdit, cxCalendar, cxGridBandedTableView, + cxGridDBBandedTableView, Menus, RM_Common, RM_Class, RM_e_Xls, + RM_GridReport, RM_System, RM_Dataset, cxDropDownEdit; + +type + TfrmOrderInPutZPNew = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ScrollBox1: TScrollBox; + Label1: TLabel; + Label2: TLabel; + Label3: TLabel; + OrderNo: TEdit; + OrderDate: TDateTimePicker; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + DataSourceZ: TDataSource; + Order_SubZ: TClientDataSet; + DataSource2: TDataSource; + ADOZDY: TADOQuery; + CDS_ZDY: TClientDataSet; + WFBCodeName: TcxButtonEdit; + ADOQuery1: TADOQuery; + Label12: TLabel; + CustomNoName: TcxButtonEdit; + Label13: TLabel; + ArrivalPortName: TcxButtonEdit; + Label16: TLabel; + OrdQty: TEdit; + OrdUnit: TComboBox; + Label19: TLabel; + Label20: TLabel; + Label21: TLabel; + ETADate: TDateTimePicker; + Label22: TLabel; + ETDDate: TDateTimePicker; + Label23: TLabel; + ZGDate: TDateTimePicker; + Label24: TLabel; + BegRKDate: TDateTimePicker; + Label25: TLabel; + BegSCDate: TDateTimePicker; + Day1: TEdit; + Label26: TLabel; + Label27: TLabel; + Label28: TLabel; + Day2: TEdit; + Label29: TLabel; + Label30: TLabel; + Label31: TLabel; + Day3: TEdit; + Label18: TLabel; + Label32: TLabel; + Label33: TLabel; + Label4: TLabel; + Order_SubF: TClientDataSet; + DataSourceF: TDataSource; + Order_SubQ: TClientDataSet; + DataSourceQ: TDataSource; + ScrollBox2: TScrollBox; + cxGrid3: TcxGrid; + Tv3: TcxGridDBBandedTableView; + v3Column1: TcxGridDBBandedColumn; + v3Column2: TcxGridDBBandedColumn; + v3Column3: TcxGridDBBandedColumn; + v3Column4: TcxGridDBBandedColumn; + v3Column5: TcxGridDBBandedColumn; + cxGridLevel2: TcxGridLevel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBBandedTableView; + v2Column1: TcxGridDBBandedColumn; + v2Column2: TcxGridDBBandedColumn; + v2Column3: TcxGridDBBandedColumn; + v2Column4: TcxGridDBBandedColumn; + v2Column5: TcxGridDBBandedColumn; + cxGridLevel1: TcxGridLevel; + cxGrid1: TcxGrid; + Tv1: TcxGridDBBandedTableView; + v1Column1: TcxGridDBBandedColumn; + v1Column2: TcxGridDBBandedColumn; + v1Column3: TcxGridDBBandedColumn; + v1Column4: TcxGridDBBandedColumn; + v1Column5: TcxGridDBBandedColumn; + v1Column6: TcxGridDBBandedColumn; + cxGrid1Level1: TcxGridLevel; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + TBPrint: TToolButton; + v1Column7: TcxGridDBBandedColumn; + v2Column6: TcxGridDBBandedColumn; + v3Column6: TcxGridDBBandedColumn; + v1Column8: TcxGridDBBandedColumn; + v2Column7: TcxGridDBBandedColumn; + v3Column7: TcxGridDBBandedColumn; + v1Column9: TcxGridDBBandedColumn; + v2Column8: TcxGridDBBandedColumn; + v3Column8: TcxGridDBBandedColumn; + ADOQueryQG: TADOQuery; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + RMXLSExport1: TRMXLSExport; + BZ: TcxButtonEdit; + Label5: TLabel; + cxGrid5: TcxGrid; + TvSub: TcxGridDBTableView; + vSubColumn3: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + vSubColumn2: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + TvSubColumn1: TcxGridDBColumn; + vSubColumn1: TcxGridDBColumn; + cxGridLevel4: TcxGridLevel; + Label7: TLabel; + cxGrid4: TcxGrid; + TVDB: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + VDBColumn1: TcxGridDBColumn; + VDBColumn2: TcxGridDBColumn; + cxGridLevel3: TcxGridLevel; + Note: TRichEdit; + Label35: TLabel; + DataSource1: TDataSource; + CDS_Sub: TClientDataSet; + PopupMenu2: TPopupMenu; + MenuItem1: TMenuItem; + CDS_DB: TClientDataSet; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + DataSource3: TDataSource; + vSubColumn4: TcxGridDBColumn; + vSubColumn5: TcxGridDBColumn; + vSubColumn6: TcxGridDBColumn; + vSubColumn7: TcxGridDBColumn; + vSubColumn8: TcxGridDBColumn; + vSubColumn9: TcxGridDBColumn; + vSubColumn10: TcxGridDBColumn; + Label9: TLabel; + Label6: TLabel; + SCXName: TcxButtonEdit; + Label8: TLabel; + WJGName: TcxButtonEdit; + Label34: TLabel; + MJKZX: TEdit; + MJKZD: TEdit; + Label36: TLabel; + XJKZD: TEdit; + Label39: TLabel; + XJKZX: TEdit; + Label37: TLabel; + PanZDY: TPanel; + CXGridZDY: TcxGrid; + TVZDY: TcxGridDBTableView; + VHelpZDYName: TcxGridDBColumn; + CXGridZDYLevel1: TcxGridLevel; + Button1: TButton; + Label10: TLabel; + Label11: TLabel; + vSubColumn11: TcxGridDBColumn; + N3: TMenuItem; + procedure TBCloseClick(Sender: TObject); + procedure TVZDYCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button1Click(Sender: TObject); + procedure WFBCodeNameKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); + procedure TVZDYKeyPress(Sender: TObject; var Key: Char); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure CustomNoNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure CustomNoNamePropertiesChange(Sender: TObject); + procedure ArrivalPortNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure SCXNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WJGNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WFBCodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WFBCodeNamePropertiesChange(Sender: TObject); + procedure ArrivalPortNamePropertiesChange(Sender: TObject); + procedure SCXNamePropertiesChange(Sender: TObject); + procedure WJGNamePropertiesChange(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure Day1Change(Sender: TObject); + procedure OrdQtyKeyPress(Sender: TObject; var Key: Char); + procedure Day2Change(Sender: TObject); + procedure Day3Change(Sender: TObject); + procedure ETADateChange(Sender: TObject); + procedure BegRKDateChange(Sender: TObject); + procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv3MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure v1Column2PropertiesEditValueChanged(Sender: TObject); + procedure v1Column3PropertiesEditValueChanged(Sender: TObject); + procedure v2Column2PropertiesEditValueChanged(Sender: TObject); + procedure OrdQtyChange(Sender: TObject); + procedure v3Column4PropertiesEditValueChanged(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v3Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WFBBZUnit1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WFBBZUnit2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure WFBBZUnit3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure BZPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure BZPropertiesChange(Sender: TObject); + procedure WFBBZQty1Change(Sender: TObject); + procedure vSubColumn6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure vSubColumn8PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure vSubColumn10PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure MenuItem1Click(Sender: TObject); + procedure N3Click(Sender: TObject); + procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure vSubColumn2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + private + MInt:Integer; + procedure InitData(); + procedure ZDYHelp(FButn:TcxButtonEdit;LType:string); + function SaveData():Boolean; + procedure DelOrderSub(FOrder_Sub:TClientDataSet); + procedure SELYCL(SCDS_Sub:TClientDataSet); + procedure EditYCL(SCDS_Sub:TClientDataSet); + { Private declarations } + public + PState,BState:Integer; + FMainId:String; + FXS:Integer; + OrderType:String; + { Public declarations } + end; + +var + frmOrderInPutZPNew: TfrmOrderInPutZPNew; + +implementation +uses + U_DataLink,U_ZDYHelp,U_Fun,U_GetPGJBInList; + +{$R *.dfm} + +procedure TfrmOrderInPutZPNew.TBCloseClick(Sender: TObject); +begin + if PState<>3 then + begin + if Application.MessageBox('ǷҪݣ','ʾ',32+4)=IDYES then + begin + TBSave.Click; + Exit; + end; + end; + Close; + WriteCxBandedGrid('',Tv1,'޷IJ'); + WriteCxBandedGrid('ϸ',Tv2,'޷IJ'); + WriteCxBandedGrid('',Tv3,'޷IJ'); + +end; + +procedure TfrmOrderInPutZPNew.InitData(); +var + i:Integer; +begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add(' exec P_WFBOrder_List :begdate,:endate,:MainId'); + if PState>0 then + begin + ADOQuery1.Parameters.ParamByName('MainId').Value:=Trim(FMainId); + ADOQuery1.Parameters.ParamByName('begdate').Value:=''; + ADOQuery1.Parameters.ParamByName('endate').Value:=''; + end; + if PState=0 then + begin + ADOQuery1.Parameters.ParamByName('MainId').Value:='999999'; + ADOQuery1.Parameters.ParamByName('begdate').Value:=''; + ADOQuery1.Parameters.ParamByName('endate').Value:=''; + end; + Open; + end; + // SCreateCDS20(ADOQuery1,Order_Sub); + //SInitCDSData20(ADOQuery1,Order_Sub); + SCSHData(ADOQuery1,ScrollBox1,0); + if PState=0 then + begin + OrderDate.DateTime:=StrToDate(FormatDateTime('yyyy-MM-dd',SGetServerDateTime(ADOTemp))); + ETADate.DateTime:=OrderDate.DateTime; + ETDDate.DateTime:=OrderDate.DateTime; + ZGDate.DateTime:=OrderDate.DateTime; + BegRKDate.DateTime:=OrderDate.DateTime; + BegSCDate.DateTime:=OrderDate.DateTime; + ETADate.Checked:=False; + ETDDate.Checked:=False; + ZGDate.Checked:=False; + BegRKDate.Checked:=False; + BegSCDate.Checked:=False; + end; + if Trim(DParameters1)<>'' then + begin + BegRKDate.Enabled:=False; + Day3.Enabled:=False; + BegSCDate.Enabled:=False; + //Note.Enabled:=False; + cxGrid4.Enabled:=False; + MJKZX.Enabled:=False; + MJKZD.Enabled:=False; + XJKZX.Enabled:=False; + XJKZD.Enabled:=False; + SCXName.Enabled:=False; + WJGName.Enabled:=False; + ScrollBox2.Enabled:=False; + end; + if PState=4 then + begin + BegRKDate.Enabled:=True; + Day3.Enabled:=True; + BegSCDate.Enabled:=True; + //Note.Enabled:=False; + cxGrid4.Enabled:=True; + MJKZX.Enabled:=True; + MJKZD.Enabled:=True; + XJKZX.Enabled:=True; + XJKZD.Enabled:=True; + SCXName.Enabled:=True; + WJGName.Enabled:=True; + ScrollBox2.Enabled:=True; + end; + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select * from WFB_DB where MainId='''+Trim(FMainId)+''''); + Open; + end; + SCreateCDS20(ADOQuery1,CDS_DB); + SInitCDSData20(ADOQuery1,CDS_DB); + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select * from WFBOrder_Sub where MainId='''+Trim(FMainId)+''''); + Open; + end; + SCreateCDS20(ADOQuery1,CDS_Sub); + SInitCDSData20(ADOQuery1,CDS_Sub); + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select A.*,Case when A.YLQty-A.YCLYJkc>=0 then A.YLQty-A.YCLYJkc else null end as BZ from WFBYCL_PB A where MainId='''+Trim(FMainId)+''''); + sql.Add(' and PBType=''Ҫ'' '); + Open; + end; + SCreateCDS20(ADOQuery1,Order_SubZ); + SInitCDSData20(ADOQuery1,Order_SubZ); + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select A.*,Case when A.YLQty-A.YCLYJkc>=0 then A.YLQty-A.YCLYJkc else null end as BZ from WFBYCL_PB A where MainId='''+Trim(FMainId)+''''); + sql.Add(' and PBType='''' '); + Open; + end; + SCreateCDS20(ADOQuery1,Order_SubF); + SInitCDSData20(ADOQuery1,Order_SubF); + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select A.*,Case when A.YLQty-A.YCLYJkc>=0 then A.YLQty-A.YCLYJkc else null end as BZ from WFBYCL_PB A where MainId='''+Trim(FMainId)+''''); + sql.Add(' and PBType='''' '); + Open; + end; + SCreateCDS20(ADOQuery1,Order_SubQ); + SInitCDSData20(ADOQuery1,Order_SubQ); + PanZDY.Visible:=False; + if PState=4 then + begin + PState:=0; + FMainId:='999999'; + //OrderNo.Text:=''; + WFBCodeName.Text:=''; + WFBCodeName.Hint:=''; + PanZDY.Visible:=False; + with CDS_DB do + begin + First; + while not Eof do + begin + Edit; + FieldByName('DBID').Value:=''; + Post; + Next; + end; + end; + with Order_SubZ do + begin + First; + while not Eof do + begin + Edit; + FieldByName('PBID').Value:=''; + FieldByName('YLKC').Value:=0; + FieldByName('YCLYJKC').Value:=0; + FieldByName('BZ').Value:=0; + FieldByName('SGQty').Value:=0; + Post; + Next; + end; + end; + v1Column1.Options.Focusing:=True; + with Order_SubF do + begin + First; + while not Eof do + begin + Edit; + FieldByName('PBID').Value:=''; + FieldByName('YLKC').Value:=0; + FieldByName('YCLYJKC').Value:=0; + FieldByName('BZ').Value:=0; + FieldByName('SGQty').Value:=0; + Post; + Next; + end; + end; + v2Column1.Options.Focusing:=True; + with Order_SubQ do + begin + First; + while not Eof do + begin + Edit; + FieldByName('PBID').Value:=''; + FieldByName('YLKC').Value:=0; + FieldByName('YCLYJKC').Value:=0; + FieldByName('BZ').Value:=0; + FieldByName('SGQty').Value:=0; + Post; + Next; + end; + end; + v3Column1.Options.Focusing:=True; + end; +end; + +procedure TfrmOrderInPutZPNew.ZDYHelp(FButn:TcxButtonEdit;LType:string); +var + FType,ZDYName,FText:String; +begin + PanZDY.Visible:=True; + PanZDY.Left:=FButn.Left; + PanZDY.Top:=FButn.Top+FButn.Height; + with ADOZDY do + begin + Filtered:=False; + Close; + SQL.Clear; + SQL.Add('select RTrim(ZDYNo) ZDYNo,RTrim(ZDYName) ZDYName from KH_ZDY where Type='''+Trim(LType)+''''); + Open; + end; + FText:=Trim(FButn.Text); + if FText<>'' then + SDofilter(ADOZDY,' ZDYName like '+QuotedStr('%'+Trim(FText)+'%')) + else + SDofilter(ADOZDY,''); + VHelpZDYName.Summary.GroupFormat:=Trim(FButn.Name); +end; + +procedure TfrmOrderInPutZPNew.TVZDYCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + FName:string; +begin + if ADOZDY.IsEmpty then Exit; + FName:=Trim(VHelpZDYName.Summary.GroupFormat); + TcxButtonEdit(FindComponent(FName)).Text:=Trim(ADOZDY.fieldbyname('ZDYName').AsString); + TcxButtonEdit(FindComponent(FName)).Hint:=Trim(ADOZDY.fieldbyname('ZDYNO').AsString); + PanZDY.Visible:=False; +end; + +procedure TfrmOrderInPutZPNew.Button1Click(Sender: TObject); +begin + PanZDY.Visible:=False; +end; + +procedure TfrmOrderInPutZPNew.WFBCodeNameKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if (key=vk_return) or (Key=vk_Down) then + begin + if ADOZDY.Active then + CXGridZDY.SetFocus; + end; +end; + +procedure TfrmOrderInPutZPNew.TVZDYKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if ADOZDY.IsEmpty then Exit; + TcxButtonEdit(FindComponent(VHelpZDYName.Summary.GroupFormat)).Text:=Trim(ADOZDY.fieldbyname('ZDYName').AsString); + TcxButtonEdit(FindComponent(VHelpZDYName.Summary.GroupFormat)).Hint:=Trim(ADOZDY.fieldbyname('ZDYNO').AsString); + PanZDY.Visible:=False; + ADOZDY.Active:=False; + end; +end; + +procedure TfrmOrderInPutZPNew.FormShow(Sender: TObject); +begin + InitData(); + ReadCxBandedGrid('',Tv1,'޷IJ'); + ReadCxBandedGrid('ϸ',Tv2,'޷IJ'); + ReadCxBandedGrid('',Tv3,'޷IJ'); +end; + +function TfrmOrderInPutZPNew.SaveData():Boolean; +var + maxno:String; +begin + try + ADOCmd.Connection.BeginTrans; + /// + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from WFBOrder_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMainId)='999999' then + begin + Append; + if GetLSNo(ADOTemp,maxno,'','WFBOrder_Main',2,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ˮ쳣','ʾ',0); + exit; + end; + end + else begin + maxno:=Trim(FMainId); + Edit; + end; + FieldByName('MainId').Value:=Trim(maxno); + FieldByName('OrderType').Value:=Trim(OrderType); + SSetsaveSql(ADOCmd,'WFBOrder_Main',ScrollBox1,0); + if PState=2 then + begin + FieldByName('Chker').Value:=Trim(DName); + FieldByName('ChkTime').Value:=SGetServerDateTime(ADOTemp); + end; + if Trim(FMainId)='999999' then + begin + FieldByName('Filler').Value:=Trim(DName); + end else + begin + if PState=1 then + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + end; + Post; + end; + FMainId:=Trim(maxno); + ///ϸ + with CDS_DB do + begin + First; + while not Eof do + begin + if Trim(CDS_DB.fieldbyname('DBId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'DB','WFB_DB',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_DB.fieldbyname('DBId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_DB '); + sql.Add(' where DBId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_DB.fieldbyname('DBId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('DBId').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,TVDB,CDS_DB,'WFB_DB',0); + Post; + end; + CDS_DB.Edit; + CDS_DB.FieldByName('DBId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + //Ҫԭ + if not Order_SubZ.IsEmpty then + begin + with Order_SubZ do + begin + First; + while not Eof do + begin + if Trim(Order_SubZ.fieldbyname('PBId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'PB','WFBYCL_PB',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_SubZ.fieldbyname('PBId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PB '); + sql.Add(' where PBId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_SubZ.fieldbyname('PBId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + FieldByName('CRId').Value:=Trim(Order_SubZ.fieldbyname('CRID').AsString); + FieldByName('PBType').Value:='Ҫ'; + // SSetSaveDataCDSNew(); + SSetSaveDataCDSBandNew(ADOCmd,TV1,Order_SubZ,'WFBYCL_PB',0); + Post; + end; + Order_SubZ.Edit; + Order_SubZ.FieldByName('PBId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + end; + //渨ԭ + if not Order_SubF.IsEmpty then + begin + with Order_SubF do + begin + First; + while not Eof do + begin + if Trim(Order_SubF.fieldbyname('PBId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'PB','WFBYCL_PB',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_SubF.fieldbyname('PBId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PB '); + sql.Add(' where PBId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_SubF.fieldbyname('PBId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + FieldByName('PBType').Value:=''; + FieldByName('CRId').Value:=Trim(Order_SubF.fieldbyname('CRID').AsString); + // SSetSaveDataCDSNew(); + SSetSaveDataCDSBandNew(ADOCmd,TV2,Order_SubF,'WFBYCL_PB',0); + Post; + end; + Order_SubF.Edit; + Order_SubF.FieldByName('PBId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + end; + //ԭ + if not Order_SubQ.IsEmpty then + begin + with Order_SubQ do + begin + First; + while not Eof do + begin + if Trim(Order_SubQ.fieldbyname('PBId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'PB','WFBYCL_PB',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_SubQ.fieldbyname('PBId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFBYCL_PB '); + sql.Add(' where PBId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_SubQ.fieldbyname('PBId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('PBId').Value:=Trim(maxno); + FieldByName('PBType').Value:=''; + FieldByName('CRId').Value:=Trim(Order_SubQ.fieldbyname('CRID').AsString); + // SSetSaveDataCDSNew(); + SSetSaveDataCDSBandNew(ADOCmd,TV3,Order_SubQ,'WFBYCL_PB',0); + Post; + end; + Order_SubQ.Edit; + Order_SubQ.FieldByName('PBId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + end; + + ///ӱ + {with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOTemp,maxno,'OS','Order_Sub',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from Order_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add(' and SubId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + SSetSaveDataCDSNew(ADOCmd,Tv1,Order_Sub,'Order_Sub',0); + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; } + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TfrmOrderInPutZPNew.TBSaveClick(Sender: TObject); +begin + OrderDate.SetFocus; + if Trim(OrderNo.Text)='' then + begin + Application.MessageBox('ŲΪգ','ʾ',0); + Exit; + end; + if Trim(WFBCodeName.Text)='' then + begin + Application.MessageBox('ŲΪգ','ʾ',0); + Exit; + end; + if Trim(WFBCodeName.Hint)='' then + begin + Application.MessageBox('δ壡','ʾ',0); + Exit; + end; + {if Order_Sub.IsEmpty then + begin + Application.MessageBox('ϸΪգ','ʾ',0); + Exit; + end; } + if CDS_DB.Locate('BSL',null,[]) then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + if CDS_DB.Locate('JSL',null,[]) then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + if Order_SubZ.Locate('YLKC;YCLYJKC;BZ',VarArrayOf([0,0,0]),[]) then + begin + Application.MessageBox('ָϣ','ʾ',0); + Exit; + end; + if Order_SubF.Locate('YLKC;YCLYJKC;BZ',VarArrayOf([0,0,0]),[]) then + begin + Application.MessageBox('ָϣ','ʾ',0); + Exit; + end; + if Order_SubQ.Locate('YLKC;YCLYJKC;BZ',VarArrayOf([0,0,0]),[]) then + begin + Application.MessageBox('ָϣ','ʾ',0); + Exit; + end; + if SaveData() then + begin + Application.MessageBox('ɹ','ʾ',0); + end; +end; +procedure TfrmOrderInPutZPNew.SELYCL(SCDS_Sub:TClientDataSet); +begin + try + frmGetPGJBInList:=TfrmGetPGJBInList.Create(Application); + with frmGetPGJBInList do + begin + if ShowModal=1 then + begin + with ClientDataSet2 do + begin + First; + while not Eof do + begin + with SCDS_Sub do + begin + Append; + SCDS_Sub.FieldByName('YCLCode').Value:=Trim(ClientDataSet2.fieldbyname('YCLCode').AsString); + SCDS_Sub.FieldByName('YCLName').Value:=Trim(ClientDataSet2.fieldbyname('YCLName').AsString); + SCDS_Sub.FieldByName('YCLSpec').Value:=Trim(ClientDataSet2.fieldbyname('YCLSpec').AsString); + //SCDS_Sub.FieldByName('GYSName').Value:=Trim(ClientDataSet2.fieldbyname('GYSName').AsString); + //SCDS_Sub.FieldByName('GYS').Value:=Trim(ClientDataSet2.fieldbyname('GYS').AsString); + SCDS_Sub.FieldByName('YLKC').Value:=Trim(ClientDataSet2.fieldbyname('QuantityKC').AsString); + //CDS_Sub.FieldByName('Qty').Value:=Trim(ClientDataSet2.fieldbyname('QtyKC').AsString); + SCDS_Sub.FieldByName('YLUnit').Value:=Trim(ClientDataSet2.fieldbyname('CRUnit').AsString); + SCDS_Sub.FieldByName('CRID').Value:=Trim(ClientDataSet2.fieldbyname('CRID').AsString); + SCDS_Sub.FieldByName('YCLYJKC').Value:=Trim(ClientDataSet2.fieldbyname('YJKC').AsString); + //SCDS_Sub.FieldByName('YCLType').Value:=Trim(ClientDataSet2.fieldbyname('YCLType').AsString); + //SCDS_Sub.FieldByName('YCLPrice').Value:=Trim(ClientDataSet2.fieldbyname('YCLPrice').AsString); + //SCDS_Sub.FieldByName('KCPlace').Value:=Trim(ClientDataSet2.fieldbyname('KCPlace').AsString); + //CDS_Sub.FieldByName('DepotShow').Value:=Trim(ClientDataSet2.fieldbyname('DepotShow').AsString); + Post; + end; + Next; + end; + end; + end; + end; + finally + frmGetPGJBInList.Free; + end; +end; + +procedure TfrmOrderInPutZPNew.EditYCL(SCDS_Sub:TClientDataSet); +begin + try + frmGetPGJBInList:=TfrmGetPGJBInList.Create(Application); + with frmGetPGJBInList do + begin + if ShowModal=1 then + begin + with ClientDataSet2 do + begin + //First; + // while not Eof do + //begin + with SCDS_Sub do + begin + Edit; + SCDS_Sub.FieldByName('YCLCode').Value:=Trim(ClientDataSet2.fieldbyname('YCLCode').AsString); + SCDS_Sub.FieldByName('YCLName').Value:=Trim(ClientDataSet2.fieldbyname('YCLName').AsString); + SCDS_Sub.FieldByName('YCLSpec').Value:=Trim(ClientDataSet2.fieldbyname('YCLSpec').AsString); + //SCDS_Sub.FieldByName('GYSName').Value:=Trim(ClientDataSet2.fieldbyname('GYSName').AsString); + //SCDS_Sub.FieldByName('GYS').Value:=Trim(ClientDataSet2.fieldbyname('GYS').AsString); + SCDS_Sub.FieldByName('YLKC').Value:=Trim(ClientDataSet2.fieldbyname('QuantityKC').AsString); + //CDS_Sub.FieldByName('Qty').Value:=Trim(ClientDataSet2.fieldbyname('QtyKC').AsString); + SCDS_Sub.FieldByName('YLUnit').Value:=Trim(ClientDataSet2.fieldbyname('CRUnit').AsString); + SCDS_Sub.FieldByName('CRID').Value:=Trim(ClientDataSet2.fieldbyname('CRID').AsString); + SCDS_Sub.FieldByName('YCLYJKC').Value:=Trim(ClientDataSet2.fieldbyname('YJKC').AsString); + if SCDS_Sub.FieldByName('YLQty').Value-ClientDataSet2.fieldbyname('YJKC').Value>=0 then + SCDS_Sub.FieldByName('BZ').Value:=SCDS_Sub.FieldByName('YLQty').Value- + ClientDataSet2.fieldbyname('YJKC').Value + else + SCDS_Sub.FieldByName('BZ').Value:=null; + //SCDS_Sub.FieldByName('YCLType').Value:=Trim(ClientDataSet2.fieldbyname('YCLType').AsString); + //SCDS_Sub.FieldByName('YCLPrice').Value:=Trim(ClientDataSet2.fieldbyname('YCLPrice').AsString); + //SCDS_Sub.FieldByName('KCPlace').Value:=Trim(ClientDataSet2.fieldbyname('KCPlace').AsString); + //CDS_Sub.FieldByName('DepotShow').Value:=Trim(ClientDataSet2.fieldbyname('DepotShow').AsString); + //Post; + end; + // Next; + //end; + end; + end; + end; + finally + frmGetPGJBInList.Free; + end; +end; +procedure TfrmOrderInPutZPNew.ToolButton1Click(Sender: TObject); +begin + if MInt=1 then + begin + SELYCL(Order_SubZ); + end else + if MInt=2 then + begin + SELYCL(Order_SubF); + end else + if MInt=3 then + begin + SELYCL(Order_SubQ); + end; +end; + +procedure TfrmOrderInPutZPNew.ToolButton2Click(Sender: TObject); +begin + if MInt=1 then + begin + DelOrderSub(Order_SubZ); + end else + if MInt=2 then + begin + DelOrderSub(Order_SubF); + end else + if MInt=3 then + begin + DelOrderSub(Order_SubQ); + end; +end; +procedure TfrmOrderInPutZPNew.DelOrderSub(FOrder_Sub:TClientDataSet); +begin + if FOrder_Sub.IsEmpty then Exit; + if Trim(FOrder_Sub.fieldbyname('PBID').AsString)<>'' then + begin + if Application.MessageBox('ڴɾѱݣ','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFBYCL_PB where PBID='''+Trim(FOrder_Sub.fieldbyname('PBID').AsString)+''''); + ExecSQL; + end; + end; + FOrder_Sub.Delete; +end; + +procedure TfrmOrderInPutZPNew.CustomNoNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('CustomNoName'); + flagname:='ͻ'; + if ShowModal=1 then + begin + Self.FXS:=99; + CustomNoName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + CustomNoName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPNew.CustomNoNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(CustomNoName,'CustomNoName'); +end; + +procedure TfrmOrderInPutZPNew.ArrivalPortNamePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('ArrivalPort'); + flagname:=''; + if ShowModal=1 then + begin + Self.FXS:=99; + ArrivalPortName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + ArrivalPortName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPNew.SCXNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('SCXName'); + flagname:=''; + if ShowModal=1 then + begin + Self.FXS:=99; + SCXName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + SCXName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPNew.WJGNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('WJGName'); + flagname:='ṹ'; + if ShowModal=1 then + begin + Self.FXS:=99; + WJGName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + WJGName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPNew.WFBCodeNamePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim(WFBCodeName.Name); + flagname:=''; + if ShowModal=1 then + begin + Self.FXS:=99; + WFBCodeName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + WFBCodeName.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPNew.WFBCodeNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(WFBCodeName,Trim(WFBCodeName.Name)); +end; + +procedure TfrmOrderInPutZPNew.ArrivalPortNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(ArrivalPortName,'ArrivalPort'); +end; + +procedure TfrmOrderInPutZPNew.SCXNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(SCXName,Trim(SCXName.Name)); +end; + +procedure TfrmOrderInPutZPNew.WJGNamePropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(WJGName,Trim(WJGName.Name)); +end; + +procedure TfrmOrderInPutZPNew.N1Click(Sender: TObject); +begin + with CDS_DB do + begin + Append; + FieldByName('DBUnit').Value:='/'; + Post; + end; +end; + +procedure TfrmOrderInPutZPNew.N2Click(Sender: TObject); +begin + if CDS_DB.IsEmpty then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFB_DB where DBID='''+Trim(CDS_DB.fieldbyname('DBID').AsString)+''''); + ExecSQL; + end; + CDS_DB.Delete; +end; + +procedure TfrmOrderInPutZPNew.Day1Change(Sender: TObject); +var + DayL:string; +begin + if trim(Day1.Text)='' then DayL:='0' + else DayL:=Trim(Day1.Text); + ETDDate.DateTime:=ETADate.Date-strtoint(DayL); +end; + +procedure TfrmOrderInPutZPNew.OrdQtyKeyPress(Sender: TObject; var Key: Char); +begin + if not (Key in['0'..'9','.',#8,#13]) then + begin + key:=#0; + end; +end; + +procedure TfrmOrderInPutZPNew.Day2Change(Sender: TObject); +var + DayL:string; +begin + if trim(Day2.Text)='' then DayL:='0' + else DayL:=Trim(Day2.Text); + ZGDate.DateTime:=ETDDate.Date-strtoint(DayL); +end; +procedure TfrmOrderInPutZPNew.Day3Change(Sender: TObject); +var + DayL:string; +begin + if trim(Day3.Text)='' then DayL:='0' + else DayL:=Trim(Day3.Text); + BegSCDate.DateTime:=BegRKDate.Date-strtoint(DayL); +end; +procedure TfrmOrderInPutZPNew.ETADateChange(Sender: TObject); +begin + if Trim(Day1.Text)<>'' then + begin + ETDDate.DateTime:=ETADate.Date-strtoint(Day1.Text); + end; + if Trim(Day2.Text)<>'' then + begin + ZGDate.DateTime:=ETDDate.Date-strtoint(Day2.Text); + end; +end; + +procedure TfrmOrderInPutZPNew.BegRKDateChange(Sender: TObject); +begin + if Trim(Day3.Text)<>'' then + begin + BegSCDate.DateTime:=BegRKDate.Date-strtoint(Day3.Text); + end; +end; + +procedure TfrmOrderInPutZPNew.Tv1MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + MInt:=1; + Tv1.Bands[0].Caption:='Ҫԭϡ'; + Tv2.Bands[0].Caption:='ԭ'; + Tv3.Bands[0].Caption:=''; + Tv1.Bands[0].Styles.Header.TextColor:=clBlue; + Tv2.Bands[0].Styles.Header.TextColor:=clBlack; + Tv3.Bands[0].Styles.Header.TextColor:=clBlack; +end; + +procedure TfrmOrderInPutZPNew.Tv2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + MInt:=2; + Tv1.Bands[0].Caption:='Ҫԭ'; + Tv2.Bands[0].Caption:='ԭϡ'; + Tv3.Bands[0].Caption:=''; + Tv1.Bands[0].Styles.Header.TextColor:=clBlack; + Tv2.Bands[0].Styles.Header.TextColor:=clBlue; + Tv3.Bands[0].Styles.Header.TextColor:=clBlack; +end; + +procedure TfrmOrderInPutZPNew.Tv3MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + MInt:=3; + Tv1.Bands[0].Caption:='Ҫԭ'; + Tv2.Bands[0].Caption:='ԭ'; + Tv3.Bands[0].Caption:=''; + Tv1.Bands[0].Styles.Header.TextColor:=clBlack; + Tv2.Bands[0].Styles.Header.TextColor:=clBlack; + Tv3.Bands[0].Styles.Header.TextColor:=clBlue; +end; + +procedure TfrmOrderInPutZPNew.v1Column2PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,YLSH,DHSL:Double; +begin + {if Trim(OrdQty.Text)='' then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + mvalue:=TcxTextEdit(Sender).EditingValue; //KO + if Trim(OrdUnit.Text)='K' then + begin + if Trim(Order_SubZ.fieldbyname('YLSH').AsString)='' then + begin + YLSH:=0; + end else + YLSH:=StrToFloat(Order_SubZ.fieldbyname('YLSH').AsString); + with Order_SubZ do + begin + Edit; + FieldByName('YLQty').Value:=StrToFloat(OrdQty.Text)*mvalue/100*(1+YLSH/100); + if StrToFloat(OrdQty.Text)*mvalue/100*(1+YLSH/100)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=StrToFloat(OrdQty.Text)*mvalue/100*(1+YLSH/100)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + FieldByName('YLPB').Value:=mvalue; + Post; + end; + end else + if Trim(OrdUnit.Text)='O' then + begin + if Trim(WFBKZ.Text)='' then + begin + Application.MessageBox('زΪգ','ʾ',0); + Exit; + end; + {if Trim(WFBfk.Text)='' then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end;} + {DHSL:=StrToFloat(OrdQty.Text)*strtofloat(WFBKZ.Text)/1000; + if Trim(Order_SubZ.fieldbyname('YLSH').AsString)='' then + begin + YLSH:=0; + end else + YLSH:=StrToFloat(Order_SubZ.fieldbyname('YLSH').AsString); + with Order_SubZ do + begin + Edit; + FieldByName('YLQty').Value:=DHSL*mvalue/100*(1+YLSH/100); + if DHSL*mvalue/100*(1+YLSH/100)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=DHSL*mvalue/100*(1+YLSH/100)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + FieldByName('YLPB').Value:=mvalue; + Post; + end; + + end; } +end; + + +procedure TfrmOrderInPutZPNew.v1Column3PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,YLPB,DHSL:Double; +begin + {if Trim(OrdQty.Text)='' then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + mvalue:=TcxTextEdit(Sender).EditingValue; //KO + if Trim(OrdUnit.Text)='K' then + begin + if Trim(Order_SubZ.fieldbyname('YLPB').AsString)='' then + begin + YLPB:=0; + end else + YLPB:=StrToFloat(Order_SubZ.fieldbyname('YLPB').AsString); + with Order_SubZ do + begin + Edit; + FieldByName('YLQty').Value:=StrToFloat(OrdQty.Text)*YLPB/100*(1+mvalue/100); + if StrToFloat(OrdQty.Text)*YLPB/100*(1+mvalue/100)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=StrToFloat(OrdQty.Text)*YLPB/100*(1+mvalue/100)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + FieldByName('YLSH').Value:=mvalue; + Post; + end; + end else + begin + if Trim(WFBKZ.Text)='' then + begin + Application.MessageBox('زΪգ','ʾ',0); + Exit; + end; + {if Trim(WFBfk.Text)='' then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end;} + {DHSL:=StrToFloat(OrdQty.Text)*strtofloat(WFBKZ.Text)/1000; + if Trim(Order_SubZ.fieldbyname('YLPB').AsString)='' then + begin + YLPB:=0; + end else + YLPB:=StrToFloat(Order_SubZ.fieldbyname('YLPB').AsString); + with Order_SubZ do + begin + Edit; + FieldByName('YLQty').Value:=DHSL*YLPB/100*(1+mvalue/100); + if DHSL*YLPB/100*(1+mvalue/100)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=DHSL*YLPB/100*(1+mvalue/100)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + FieldByName('YLSH').Value:=mvalue; + Post; + end; + end; } +end; + +procedure TfrmOrderInPutZPNew.v2Column2PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,DHSL:Double; +begin + {if Trim(OrdQty.Text)='' then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + mvalue:=TcxTextEdit(Sender).EditingValue; //KO + if Trim(OrdUnit.Text)='K' then + begin + with Order_SubF do + begin + Edit; + FieldByName('YLQty').Value:=StrToFloat(OrdQty.Text)*(mvalue/1000); + if StrToFloat(OrdQty.Text)*(mvalue/1000)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=StrToFloat(OrdQty.Text)*(mvalue/1000)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + FieldByName('YLSHQ').Value:=mvalue; + Post; + end; + end else + begin + if Trim(WFBKZ.Text)='' then + begin + Application.MessageBox('زΪգ','ʾ',0); + Exit; + end; + DHSL:=StrToFloat(OrdQty.Text)*strtofloat(WFBKZ.Text)/1000; + with Order_SubF do + begin + Edit; + FieldByName('YLQty').Value:=DHSL*(mvalue/1000); + if DHSL*(mvalue/1000)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=DHSL*(mvalue/1000)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + FieldByName('YLSHQ').Value:=mvalue; + Post; + end; + end; } +end; + +procedure TfrmOrderInPutZPNew.OrdQtyChange(Sender: TObject); +var + YLPB,YLSH,DHSL:Double; +begin + {if Trim(OrdQty.Text)='' then Exit; + if Trim(OrdUnit.Text)='K' then + DHSL:=StrToFloat(OrdQty.Text) + else + if Trim(OrdUnit.Text)='O' then + begin + if Trim(WFBKZ.Text)='' then Exit; + DHSL:=StrToFloat(OrdQty.Text)*strtofloat(WFBKZ.Text)/1000; + end; + if not Order_SubZ.IsEmpty then + begin + with Order_SubZ do + begin + Order_SubZ.DisableControls; + First; + while not Eof do + begin + Edit; + if Trim(fieldbyname('YLPB').AsString)='' then + YLPB:=0 + else + YLPB:=StrToFloat(fieldbyname('YLPB').AsString); + if Trim(fieldbyname('YLSH').AsString)='' then + YLSH:=0 + else + YLSH:=StrToFloat(fieldbyname('YLSH').AsString); + FieldByName('YLQty').Value:=DHSL*YLPB/100*(1+YLSH/100); + if DHSL*YLPB/100*(1+YLSH/100)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=DHSL*YLPB/100*(1+YLSH/100)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + Next; + end; + Order_SubZ.EnableControls; + First; + end; + end; + if not Order_SubF.IsEmpty then + begin + with Order_SubF do + begin + Order_SubF.DisableControls; + First; + while not Eof do + begin + Edit; + if Trim(fieldbyname('YLSHQ').AsString)='' then + YLSH:=0 + else + YLSH:=StrToFloat(fieldbyname('YLSHQ').AsString); + FieldByName('YLQty').Value:=DHSL*(YLSH/1000); + if DHSL*(YLSH/1000)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=DHSL*(YLSH/1000)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + Next; + end; + Order_SubF.EnableControls; + First; + end; + end; } +end; +procedure TfrmOrderInPutZPNew.v3Column4PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:Double; +begin + mvalue:=TcxTextEdit(Sender).EditingValue; + with Order_SubQ do + begin + Edit; + FieldByName('YLQty').Value:=mvalue; + if mvalue-fieldbyname('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=mvalue-fieldbyname('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + end; +end; + +procedure TfrmOrderInPutZPNew.TBPrintClick(Sender: TObject); +var + fPrintFile:String; +begin + with ADOQueryQG do + begin + Close; + sql.Clear; + sql.Add(' exec P_Print_SGD :OrderNo'); + Parameters.ParamByName('OrderNo').Value:=Trim(OrderNo.Text); + Open; + end; + if ADOQueryQG.IsEmpty then Exit; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\빺.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + RMVariables['dyr']:=Trim(DName); + RM2.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\빺.rmf'),'ʾ',0); + end; +end; + +procedure TfrmOrderInPutZPNew.v1Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + EditYCL(Order_SubZ); +end; + +procedure TfrmOrderInPutZPNew.v2Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + EditYCL(Order_SubF); +end; + +procedure TfrmOrderInPutZPNew.v3Column1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + EditYCL(Order_SubQ); +end; + +procedure TfrmOrderInPutZPNew.WFBBZUnit1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + { try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('WFBBZUnitD'); + flagname:='װ'; + if ShowModal=1 then + begin + Self.FXS:=99; + WFBBZUnit1.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + WFBBZUnit1.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; } +end; + +procedure TfrmOrderInPutZPNew.WFBBZUnit2PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + { try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('WFBBZUnitZ'); + flagname:='аװ'; + if ShowModal=1 then + begin + Self.FXS:=99; + WFBBZUnit2.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + WFBBZUnit2.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; } +end; + +procedure TfrmOrderInPutZPNew.WFBBZUnit3PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + {try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('WFBBZUnitX'); + flagname:='Сװ'; + if ShowModal=1 then + begin + Self.FXS:=99; + WFBBZUnit3.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + WFBBZUnit3.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end;} +end; + +procedure TfrmOrderInPutZPNew.BZPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('BZ'); + flagname:='۵λ'; + if ShowModal=1 then + begin + Self.FXS:=99; + BZ.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + BZ.Hint:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPNew.BZPropertiesChange(Sender: TObject); +begin + if FXS=99 then + begin + PanZDY.Visible:=False; + FXS:=0; + Exit; + end; + ZDYHelp(BZ,'BZ'); +end; + +procedure TfrmOrderInPutZPNew.WFBBZQty1Change(Sender: TObject); +var + FQty1,FQty2,FQty3,FFK1,FFK2,FKZ1,YLPB,YLSH,DHSL:Double; +begin + {if Trim(WFBBZQty1.Text)<>'' then + begin + FQty1:=StrToFloat(WFBBZQty1.Text); + end else + begin + FQty1:=1; + end; + if Trim(WFBBZQty2.Text)<>'' then + begin + FQty2:=StrToFloat(WFBBZQty2.Text); + end else + begin + FQty2:=1; + end; + if Trim(WFBBZQty3.Text)<>'' then + begin + FQty3:=StrToFloat(WFBBZQty3.Text); + end else + begin + FQty3:=1; + end; + if Trim(WFBFK1.Text)<>'' then + begin + FFK1:=StrToFloat(WFBFK1.Text); + end else + begin + FFK1:=0; + end; + if Trim(WFBFK2.Text)<>'' then + begin + FFK2:=StrToFloat(WFBFK2.Text); + end else + begin + FFK2:=0; + end; + if Trim(WFBKZ.Text)<>'' then + begin + FKZ1:=StrToFloat(WFBKZ.Text); + end else + begin + FKZ1:=0; + end; + if Trim(WFBKZ.Text)='' then + begin + OrdQty.Text:=FloatToStr(FQty1*FQty2*FQty3*FFK1*FFK2/10000); + OrdUnit.ItemIndex:=OrdUnit.Items.IndexOf('O'); + end else + begin + OrdQty.Text:=FloatToStr(FQty1*FQty2*FQty3*FFK1*FFK2/10000*FKZ1/1000); + OrdUnit.ItemIndex:=OrdUnit.Items.IndexOf('K'); + end; + if Trim(OrdQty.Text)='' then Exit; + if Trim(OrdUnit.Text)='K' then + DHSL:=StrToFloat(OrdQty.Text) + else + if Trim(OrdUnit.Text)='O' then + begin + if Trim(WFBKZ.Text)='' then Exit; + DHSL:=StrToFloat(OrdQty.Text)*strtofloat(WFBKZ.Text)/1000; + end; + if not Order_SubZ.IsEmpty then + begin + with Order_SubZ do + begin + Order_SubZ.DisableControls; + First; + while not Eof do + begin + Edit; + if Trim(fieldbyname('YLPB').AsString)='' then + YLPB:=0 + else + YLPB:=StrToFloat(fieldbyname('YLPB').AsString); + if Trim(fieldbyname('YLSH').AsString)='' then + YLSH:=0 + else + YLSH:=StrToFloat(fieldbyname('YLSH').AsString); + FieldByName('YLQty').Value:=DHSL*YLPB/100*(1+YLSH/100); + if DHSL*YLPB/100*(1+YLSH/100)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=DHSL*YLPB/100*(1+YLSH/100)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + Next; + end; + Order_SubZ.EnableControls; + First; + end; + end; + if not Order_SubF.IsEmpty then + begin + with Order_SubF do + begin + Order_SubF.DisableControls; + First; + while not Eof do + begin + Edit; + if Trim(fieldbyname('YLSHQ').AsString)='' then + YLSH:=0 + else + YLSH:=StrToFloat(fieldbyname('YLSHQ').AsString); + FieldByName('YLQty').Value:=DHSL*(YLSH/1000); + if DHSL*(YLSH/1000)-FieldByName('YCLYJKC').Value>=0 then + FieldByName('BZ').Value:=DHSL*(YLSH/1000)-FieldByName('YCLYJKC').Value + else + FieldByName('BZ').Value:=null; + Post; + Next; + end; + Order_SubF.EnableControls; + First; + end; + end;} +end; + +procedure TfrmOrderInPutZPNew.vSubColumn6PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('WFBBZUnitD'); + flagname:='װ'; + if ShowModal=1 then + begin + Self.CDS_Sub.Edit; + CDS_Sub.FieldByName('SWFBBZUnit1').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPNew.vSubColumn8PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('WFBBZUnitZ'); + flagname:='аװ'; + if ShowModal=1 then + begin + Self.CDS_Sub.Edit; + CDS_Sub.FieldByName('SWFBBZUnit2').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPNew.vSubColumn10PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Trim('WFBBZUnitD'); + flagname:='Сװ'; + if ShowModal=1 then + begin + Self.CDS_Sub.Edit; + CDS_Sub.FieldByName('SWFBBZUnit3').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPNew.MenuItem1Click(Sender: TObject); +var + i:Integer; +begin + CopyAddRow(TvSub,CDS_Sub); + i:=CDS_Sub.RecordCount; + with CDS_Sub do + begin + Edit; + FieldByName('MainId').Value:=''; + FieldByName('SubId').Value:=''; + FieldByName('SWFBColor').Value:=''; + FieldByName('XHNO').Value:=IntToStr(i); + Post; + end; + OrdQty.Text:=floattostr(TvSub.DataController.Summary.FooterSummaryValues[0]); +end; + +procedure TfrmOrderInPutZPNew.N3Click(Sender: TObject); +var + mvalue,YLSH,DHSL,YLQty,YLPB,YLSHQ:Double; + FOrdQty,FKZ:String; +begin + if CDS_Sub.IsEmpty then Exit; + if Trim(CDS_Sub.fieldbyname('SubID').AsString)<>'' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from WFBYCL_PBSub where SubId='''+Trim(CDS_Sub.fieldbyname('SubID').AsString)+''''); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + Application.MessageBox('Ѿݣɾ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFBOrder_Sub where SubID='''+Trim(CDS_Sub.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + CDS_Sub.Delete; + //YLUpdate(); + OrdQty.Text:=floattostr(TvSub.DataController.Summary.FooterSummaryValues[0]); +end; + +procedure TfrmOrderInPutZPNew.cxGridDBColumn3PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WFBColor'; + flagname:='ɫ'; + if ShowModal=1 then + begin + with Self.CDS_Sub do + begin + Edit; + FieldByName('SWFBColor').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + //Post; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPutZPNew.vSubColumn2PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WFBHX'; + flagname:=''; + if ShowModal=1 then + begin + with Self.CDS_Sub do + begin + Edit; + FieldByName('SWFBHW').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + //Post; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +end. diff --git a/艾登贸易管理/U_OrderInPut_CY.dfm b/艾登贸易管理/U_OrderInPut_CY.dfm new file mode 100644 index 0000000..7fcfac0 --- /dev/null +++ b/艾登贸易管理/U_OrderInPut_CY.dfm @@ -0,0 +1,1004 @@ +object frmOrderInPut_CY: TfrmOrderInPut_CY + Left = 106 + Top = 12 + Width = 1217 + Height = 719 + Caption = #20986#36135#35745#21010 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + WindowState = wsMaximized + OnCreate = FormCreate + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1201 + Height = 37 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clBtnFace + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxTabControl2: TcxTabControl + Left = 0 + Top = 429 + Width = 1201 + Height = 18 + Align = alTop + LookAndFeel.Kind = lfFlat + LookAndFeel.NativeStyle = False + Style = 9 + TabIndex = 0 + TabOrder = 1 + Tabs.Strings = ( + #20135#21697#20449#24687) + ClientRectBottom = 19 + ClientRectRight = 1201 + ClientRectTop = 19 + end + object cxGrid1: TcxGrid + Left = 0 + Top = 476 + Width = 1201 + Height = 163 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column7 + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1XHNo: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'XHNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 35 + end + object v1Column5: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'PrtCodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1Column6: TcxGridDBColumn + Caption = #20135#21697#35268#26684 + DataBinding.FieldName = 'PRTspec' + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1Column2: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'PRTMF' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column9: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'PRTKZ' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = False + Properties.OnButtonClick = v1PRTColorPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 90 + end + object v1Column3: TcxGridDBColumn + Caption = #39068#33394'('#33521#25991')' + DataBinding.FieldName = 'SOrddefstr4' + Width = 84 + end + object v1Column7: TcxGridDBColumn + Caption = #20986#36135#25968#37327 + DataBinding.FieldName = 'SordQty1' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneClMaroon + Styles.Footer = DataLink_TradeManage.FoneClMaroon + Styles.Header = DataLink_TradeManage.FoneClMaroon + Width = 60 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1Column8: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PrtPrice' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column4: TcxGridDBColumn + Caption = #20986#36135#31665#25968 + DataBinding.FieldName = 'SordQty2' + Width = 60 + end + object v1Column10: TcxGridDBColumn + Caption = #31435#26041#25968 + DataBinding.FieldName = 'SordQty3' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1SordQty4: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'SordQty4' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column12: TcxGridDBColumn + Caption = #20928#37325 + DataBinding.FieldName = 'SordQty5' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column13: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'SordQty6' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'SOrdDefNote1' + HeaderAlignmentHorz = taCenter + Width = 137 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 447 + Width = 1201 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clBtnFace + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 3 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + Visible = False + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #19968#38190#26367#25442 + ImageIndex = 104 + Visible = False + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 37 + Width = 1201 + Height = 18 + Align = alTop + Style = 9 + TabIndex = 0 + TabOrder = 4 + Tabs.Strings = ( + #20027#35201#20449#24687) + ClientRectBottom = 19 + ClientRectRight = 1201 + ClientRectTop = 19 + end + object Panel1: TPanel + Left = 0 + Top = 55 + Width = 1201 + Height = 374 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 5 + object Label1: TLabel + Left = 31 + Top = 15 + Width = 65 + Height = 12 + Caption = #20986#36816#21333#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 31 + Top = 43 + Width = 65 + Height = 12 + Caption = #21046#21333#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label39: TLabel + Left = 291 + Top = 16 + Width = 65 + Height = 12 + Caption = #30003#35831#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label25: TLabel + Left = 31 + Top = 96 + Width = 65 + Height = 12 + Caption = #33337#36816#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 563 + Top = 43 + Width = 66 + Height = 12 + Caption = #21512' '#21516' '#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label43: TLabel + Left = 563 + Top = 68 + Width = 66 + Height = 12 + Caption = #19994' '#21153' '#21592#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label14: TLabel + Left = 291 + Top = 71 + Width = 67 + Height = 12 + Caption = #23458' '#25143#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 31 + Top = 218 + Width = 65 + Height = 12 + Caption = #27880#24847#20107#39033#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label42: TLabel + Left = 31 + Top = 284 + Width = 65 + Height = 12 + Caption = #29983#20135#25552#31034#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label2: TLabel + Left = 291 + Top = 43 + Width = 65 + Height = 12 + Caption = #25351#31034#21333#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 563 + Top = 16 + Width = 66 + Height = 12 + Caption = #30003' '#35831' '#20154#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 31 + Top = 71 + Width = 34 + Height = 12 + Caption = 'PO#'#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label36: TLabel + Left = 809 + Top = 47 + Width = 13 + Height = 84 + Caption = #26631#13#10' '#13#10#31614#13#10#13#10#20869#13#10#13#10#23481 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label37: TLabel + Left = 977 + Top = 47 + Width = 13 + Height = 84 + Caption = #21787#13#10#13#10#22836#13#10#13#10#20869#13#10#13#10#23481 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 291 + Top = 96 + Width = 65 + Height = 12 + Caption = #36135#20195#20844#21496#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 563 + Top = 96 + Width = 67 + Height = 12 + Caption = #26588' '#22411#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 31 + Top = 144 + Width = 55 + Height = 12 + Caption = 'BIN NO'#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 291 + Top = 172 + Width = 91 + Height = 12 + Caption = #25910#36135#20844#21496#22320#22336#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 31 + Top = 170 + Width = 66 + Height = 12 + Caption = #25910' '#36135' '#20154#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label35: TLabel + Left = 31 + Top = 194 + Width = 66 + Height = 12 + Caption = #36890' '#30693' '#20154#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 291 + Top = 196 + Width = 91 + Height = 12 + Caption = #36890#30693#20844#21496#22320#22336#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 562 + Top = 121 + Width = 65 + Height = 12 + Caption = #20215#26684#26415#35821#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label15: TLabel + Left = 291 + Top = 118 + Width = 65 + Height = 12 + Caption = #20184#27454#26041#24335#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label16: TLabel + Left = 31 + Top = 122 + Width = 65 + Height = 12 + Caption = #20986#36816#26041#24335#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label17: TLabel + Left = 291 + Top = 142 + Width = 65 + Height = 12 + Caption = #21457#31080#26684#24335#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 563 + Top = 144 + Width = 65 + Height = 12 + Caption = #20986#20179#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label20: TLabel + Left = 31 + Top = 348 + Width = 65 + Height = 12 + Caption = #23458#25143#31616#31216#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object CYNO: TEdit + Tag = 2 + Left = 97 + Top = 12 + Width = 150 + Height = 20 + TabOrder = 0 + end + object OrdDate: TDateTimePicker + Tag = 2 + Left = 97 + Top = 39 + Width = 150 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + TabOrder = 1 + end + object OrdDefDate1: TDateTimePicker + Tag = 2 + Left = 357 + Top = 12 + Width = 149 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + TabOrder = 2 + end + object DLYDate: TDateTimePicker + Tag = 2 + Left = 97 + Top = 92 + Width = 150 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + TabOrder = 3 + end + object OrdPerson2: TBtnEditC + Tag = 2 + Left = 629 + Top = 64 + Width = 150 + Height = 20 + Hint = 'OrdPerson2/'#19994#21153#21592 + TabOrder = 4 + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object CustomerNoName: TBtnEditC + Tag = 2 + Left = 357 + Top = 64 + Width = 150 + Height = 20 + Hint = 'CustomerNo' + ReadOnly = True + TabOrder = 5 + OnBtnUpClick = CustomerNoNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTBZNote: TMemo + Tag = 2 + Left = 97 + Top = 218 + Width = 681 + Height = 57 + Hint = 'MPRTBZNote/'#21253#35013#35201#27714 + ScrollBars = ssVertical + TabOrder = 6 + OnDblClick = MPRTBZNoteDblClick + end + object MPRTSCTeBieNote: TMemo + Tag = 2 + Left = 97 + Top = 283 + Width = 681 + Height = 57 + Hint = 'MPRTSCTeBieNote/'#29983#20135#29305#21035#25552#31034 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ScrollBars = ssVertical + TabOrder = 7 + Visible = False + OnDblClick = MPRTSCTeBieNoteDblClick + end + object conNO: TEdit + Tag = 2 + Left = 629 + Top = 39 + Width = 149 + Height = 20 + TabOrder = 8 + end + object KHConNO: TEdit + Tag = 2 + Left = 97 + Top = 64 + Width = 149 + Height = 20 + TabOrder = 9 + end + object orderNo: TBtnEditA + Tag = 2 + Left = 357 + Top = 39 + Width = 149 + Height = 20 + TabOrder = 10 + OnBtnClick = orderNoBtnClick + end + object OrdPerson1: TBtnEditC + Tag = 2 + Left = 629 + Top = 12 + Width = 150 + Height = 20 + Hint = 'OrdPerson2/'#19994#21153#21592 + TabOrder = 11 + OnBtnUpClick = OrdPerson1BtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object LBNameNote: TMemo + Tag = 2 + Left = 824 + Top = 19 + Width = 130 + Height = 150 + TabOrder = 12 + end + object MaiTouNote: TMemo + Tag = 2 + Left = 992 + Top = 19 + Width = 130 + Height = 150 + TabOrder = 13 + end + object orddefstr1: TEdit + Tag = 2 + Left = 357 + Top = 92 + Width = 149 + Height = 20 + TabOrder = 14 + end + object orddefstr2: TEdit + Tag = 2 + Left = 629 + Top = 92 + Width = 149 + Height = 20 + TabOrder = 15 + end + object orddefstr3: TEdit + Tag = 2 + Left = 97 + Top = 140 + Width = 149 + Height = 20 + TabOrder = 16 + end + object conDefstr1: TEdit + Tag = 2 + Left = 378 + Top = 165 + Width = 399 + Height = 20 + TabOrder = 17 + end + object conDefstr2: TEdit + Tag = 2 + Left = 378 + Top = 189 + Width = 399 + Height = 20 + TabOrder = 18 + end + object ConPerson1: TEdit + Tag = 2 + Left = 97 + Top = 166 + Width = 149 + Height = 20 + TabOrder = 19 + end + object ConPerson2: TEdit + Tag = 2 + Left = 97 + Top = 190 + Width = 149 + Height = 20 + TabOrder = 20 + end + object orddefstr5: TEdit + Tag = 2 + Left = 629 + Top = 116 + Width = 149 + Height = 20 + TabOrder = 21 + end + object orddefstr4: TEdit + Tag = 2 + Left = 357 + Top = 116 + Width = 149 + Height = 20 + TabOrder = 22 + end + object orddefstr6: TEdit + Tag = 2 + Left = 97 + Top = 116 + Width = 149 + Height = 20 + TabOrder = 23 + end + object orddefstr7: TEdit + Tag = 2 + Left = 357 + Top = 140 + Width = 149 + Height = 20 + TabOrder = 24 + end + object OrdDefDate2: TDateTimePicker + Tag = 2 + Left = 629 + Top = 140 + Width = 150 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + TabOrder = 25 + end + object orddefstr10: TEdit + Tag = 2 + Left = 97 + Top = 344 + Width = 149 + Height = 20 + TabOrder = 26 + end + end + object ADOTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1000 + Top = 265 + end + object ADOCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 940 + Top = 269 + end + object DataSource1: TDataSource + DataSet = Order_Sub + Left = 1016 + Top = 368 + end + object Order_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 992 + Top = 340 + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 1048 + Top = 289 + end + object PopupMenu1: TPopupMenu + Left = 776 + Top = 336 + object N3: TMenuItem + Caption = #21024#34892 + OnClick = N3Click + end + end + object CDS_CG: TClientDataSet + Aggregates = <> + Params = <> + Left = 1044 + Top = 509 + end + object DataSource2: TDataSource + DataSet = CDS_CG + Left = 960 + Top = 505 + end + object PopupMenu2: TPopupMenu + Left = 740 + Top = 540 + object N9: TMenuItem + Caption = #22686#21152 + end + object N8: TMenuItem + Caption = '-' + end + object N4: TMenuItem + Caption = #22686#34892 + end + object N5: TMenuItem + Caption = #21024#34892 + end + object N6: TMenuItem + Caption = '-' + end + object N7: TMenuItem + Caption = #29983#25104#37319#36141#21333 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 820 + Top = 289 + end +end diff --git a/艾登贸易管理/U_OrderInPut_CY.pas b/艾登贸易管理/U_OrderInPut_CY.pas new file mode 100644 index 0000000..4e98bfa --- /dev/null +++ b/艾登贸易管理/U_OrderInPut_CY.pas @@ -0,0 +1,1143 @@ +unit U_OrderInPut_CY; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer, + cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB, + ExtCtrls, BtnEdit, cxCalendar,StrUtils, cxCurrencyEdit, cxPC, Menus, + cxCheckBox, cxGridCustomPopupMenu, cxGridPopupMenu; + +type + TfrmOrderInPut_CY = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + DataSource1: TDataSource; + Order_Sub: TClientDataSet; + ADOQuery1: TADOQuery; + ToolButton3: TToolButton; + cxTabControl2: TcxTabControl; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1XHNo: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + cxTabControl1: TcxTabControl; + v1Column1: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N3: TMenuItem; + CDS_CG: TClientDataSet; + DataSource2: TDataSource; + PopupMenu2: TPopupMenu; + N4: TMenuItem; + N5: TMenuItem; + N6: TMenuItem; + N7: TMenuItem; + N8: TMenuItem; + N9: TMenuItem; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + Panel1: TPanel; + Label1: TLabel; + Label3: TLabel; + Label39: TLabel; + Label25: TLabel; + Label10: TLabel; + Label43: TLabel; + Label14: TLabel; + Label19: TLabel; + Label42: TLabel; + Label2: TLabel; + Label4: TLabel; + CYNO: TEdit; + OrdDate: TDateTimePicker; + OrdDefDate1: TDateTimePicker; + DLYDate: TDateTimePicker; + OrdPerson2: TBtnEditC; + CustomerNoName: TBtnEditC; + MPRTBZNote: TMemo; + MPRTSCTeBieNote: TMemo; + conNO: TEdit; + KHConNO: TEdit; + orderNo: TBtnEditA; + Label5: TLabel; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1SordQty4: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + v1Column13: TcxGridDBColumn; + OrdPerson1: TBtnEditC; + LBNameNote: TMemo; + Label36: TLabel; + MaiTouNote: TMemo; + Label37: TLabel; + Label6: TLabel; + Label7: TLabel; + orddefstr1: TEdit; + orddefstr2: TEdit; + orddefstr3: TEdit; + Label8: TLabel; + conDefstr1: TEdit; + Label13: TLabel; + Label9: TLabel; + Label35: TLabel; + Label11: TLabel; + conDefstr2: TEdit; + ConPerson1: TEdit; + ConPerson2: TEdit; + v1Column2: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + cxGridPopupMenu1: TcxGridPopupMenu; + Label12: TLabel; + Label15: TLabel; + orddefstr5: TEdit; + orddefstr4: TEdit; + orddefstr6: TEdit; + Label16: TLabel; + orddefstr7: TEdit; + Label17: TLabel; + OrdDefDate2: TDateTimePicker; + Label18: TLabel; + orddefstr10: TEdit; + Label20: TLabel; + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure RanFactoryBtnUpClick(Sender: TObject); + procedure CustomerNoNameBtnUpClick(Sender: TObject); + procedure CustomerNoNameBtnDnClick(Sender: TObject); + procedure v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PriceUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure YCLFactoryBtnUpClick(Sender: TObject); + procedure MPRTSCTeBieNoteBtnUpClick(Sender: TObject); + procedure MPRTBZNoteDblClick(Sender: TObject); + procedure MPRTSCTeBieNoteDblClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N3Click(Sender: TObject); + procedure conNoChange(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure ToolButton6Click(Sender: TObject); + procedure orderNoBtnClick(Sender: TObject); + procedure OrdPerson1BtnUpClick(Sender: TObject); + private + procedure InitData(); + procedure ZDYHelp(FButn:TcxButtonEdit;LType:string); + function SaveData():Boolean; + function YFData():Boolean; + { Private declarations } + public + PState,CopyInt,PriceFlag:Integer; + FMainId,FFMainId,FOrderNo:String; + FXS:Integer; + { Public declarations } + end; + +var + frmOrderInPut_CY: TfrmOrderInPut_CY; + newh:hwnd; +implementation +uses + U_DataLink,U_ZDYHelp,U_Fun,U_ZDYHelpSel, U_ProductOrderListSel, + U_ZdyAttachment; + +{$R *.dfm} + +function TfrmOrderInPut_CY.YFData():Boolean; +var + CRID,OrdMainId,YFID,FComTaiTou,FCRID,FFactoryName:String; +begin + Result:=False; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_CG.fieldbyname('custName').AsString)+''''); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + CRID:=ADOTemp.fieldbyname('CRID').AsString; + end else + begin + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOCmd.fieldbyname('CRID').AsString; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(CDS_CG.fieldbyname('custName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + + + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where FactoryName='''+Trim(CDS_CG.fieldbyname('custName').AsString)+''''); + sql.Add(' and mainID='''+Trim(CDS_CG.fieldbyname('CRNO').AsString)+''''); + // sql.Add(' and subID='''+Trim(ADOQuerySub.fieldbyname('subID').AsString)+''''); + Open; + end; + if ADOTemp.IsEmpty then + begin + if GetLSNo(ADOCmd,YFID,'PF','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡӦʧ!','ʾ',0); + Exit; + end; + end + else + begin + YFID:=Trim(ADOTemp.fieldbyname('YFID').AsString); + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where YFID='''+Trim(YFID)+''''); + Open; + end; + with ADOCmd do + begin + if ADOTemp.IsEmpty then + Append + else + Edit; + FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(CDS_CG.fieldbyname('mainID').AsString); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(CDS_CG.fieldbyname('custName').AsString); + FieldByName('CRTime').Value:=CDS_CG.fieldbyname('CRTime').AsDateTime; + FieldByName('Qty').Value:=CDS_CG.fieldbyname('Qty').AsFloat; + FieldByName('PS').Value:=0; + FieldByName('YFType').Value:='Զ'; + FieldByName('Price').Value:=CDS_CG.fieldbyname('Price').AsFloat; + FieldByName('money').Value:=CDS_CG.fieldbyname('money').AsFloat; + FieldByName('BBmoney').Value:=CDS_CG.fieldbyname('money').AsFloat; + FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:='RMB'; + FieldByName('ComTaiTou').Value:=Trim(CDS_CG.fieldbyname('custName').AsString); + FieldByName('QtyUnit').Value:=Trim(CDS_CG.fieldbyname('QtyUnit').AsString); + FieldByName('YFName').Value:='ɹ'; + FieldByName('MainId').Value:=Trim(CDS_CG.fieldbyname('CRNO').AsString); + FieldByName('subId').Value:=Trim(CDS_CG.fieldbyname('CRID').AsString); + Post; + end; + + + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + Result:=True; +end; + +procedure TfrmOrderInPut_CY.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ָʾ¼AA',Tv1,'ָʾ'); +end; + +procedure TfrmOrderInPut_CY.InitData(); +begin + + + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add(' select * from JYOrderCY_Sub where 1=1 '); + //sql.Add('exec P_View_OrderSub :begdate,:enddate,:WSQl'); + //Parameters.ParamByName('begdate').Value:='2010-10-10'; + // Parameters.ParamByName('enddate').Value:='2050-12-24'; + if PState=1 then + begin + sql.Add(' and MainId='''+Trim(FMainId)+''''); + end; + if PState=0 then + begin + sql.Add(' and 1<>1'); + end; + //ShowMessage(SQL.Text); + Open; + end; + SCreateCDS20(ADOQuery1,Order_Sub); + SInitCDSData20(ADOQuery1,Order_Sub); + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrderCY_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + SCSHDataNew(ADOQuery1,Panel1,2); + if PState=0 then + begin + + end else + begin + end; + if CopyInt=99 then + begin + PState:=0; + FMainId:=''; + //OrdPerson1.Text:=Trim(DName); + CYNO.Text:=''; + + with Order_Sub do + begin + First; + while not Eof do + begin + Edit; + FieldByName('MainId').Value:=''; + FieldByName('SubId').Value:=''; + Post; + Next; + end; + end; + + end; +end; + +procedure TfrmOrderInPut_CY.ZDYHelp(FButn:TcxButtonEdit;LType:string); +var + FType,ZDYName,FText:String; +begin +end; + +procedure TfrmOrderInPut_CY.FormShow(Sender: TObject); +begin + readCxGrid(self.Caption,Tv1,'ָʾ'); + + InitData(); +end; + +function TfrmOrderInPut_CY.SaveData():Boolean; +var + maxno:String; +begin + try + ADOCmd.Connection.BeginTrans; + /// + if Trim(FMainId)='' then + begin + if GetLSNo(ADOCmd,maxno,'CY','JYOrderCY_Main',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(FMainId); + end; + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from JYOrderCY_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMainId)='' then + begin + Append; + end + else begin + Edit; + end; + FieldByName('MainId').Value:=Trim(maxno); + SSetsaveSqlNew(ADOCmd,'JYOrderCY_Main',Panel1,2); + if Trim(FMainId)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + FieldByName('status').Value:='0'; + end else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + Post; + end; + + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrderCY_Main where CYNO='''+Trim(CYNO.Text)+''''); + Open; + end; + if ADOCmd.RecordCount>1 then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('˵ظ!','ʾ',0); + Exit; + end; + FMainId:=Trim(maxno); + ///ӱ + with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOCmd,maxno,'CS','JYOrderCY_Sub',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrderCY_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add(' and SubId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + RTSetSaveDataCDS(ADOCmd,Tv1,Order_Sub,'JYOrderCY_Sub',0); + FieldByName('orderNO').Value:=Trim(orderNO.Text); + + fieldbyname('PRTOrderQty').Value:=Order_Sub.fieldbyname('PRTOrderQty').AsFloat; + fieldbyname('PRTPrice').Value:=Order_Sub.fieldbyname('PRTPrice').AsFloat; + fieldbyname('PRTmoney').Value:=Order_Sub.fieldbyname('PRTmoney').AsFloat; + fieldbyname('SordQty1').Value:=Order_Sub.fieldbyname('SordQty1').AsFloat; + fieldbyname('SordQty2').Value:=Order_Sub.fieldbyname('SordQty2').AsFloat; + fieldbyname('SordQty3').Value:=Order_Sub.fieldbyname('SordQty3').AsFloat; + fieldbyname('SordQty4').Value:=Order_Sub.fieldbyname('SordQty4').AsFloat; + fieldbyname('SordQty5').Value:=Order_Sub.fieldbyname('SordQty5').AsFloat; + fieldbyname('SordQty6').Value:=Order_Sub.fieldbyname('SordQty6').AsFloat; + FieldByName('PriceUnit').Value:=Trim(Order_Sub.fieldbyname('PriceUnit').AsString); + FieldByName('Sorddefstr10').Value:=Trim(Order_Sub.fieldbyname('Sorddefstr10').AsString); + // FieldByName('PriceUnitRate').Value:=Order_Sub.fieldbyname('PriceUnitRate').AsFloat; + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(maxno); + //Order_Sub.Post; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + + + +procedure TfrmOrderInPut_CY.TBSaveClick(Sender: TObject); +begin + OrdDate.SetFocus; + if Trim(OrderNo.Text)='' then + begin + Application.MessageBox('ŲΪգ','ʾ',0); + Exit; + end; + if Trim(orddefstr10.Text)='' then + begin + Application.MessageBox('ͻƲΪգ','ʾ',0); + Exit; + end; + if Order_Sub.IsEmpty then + begin + Application.MessageBox('ϸΪ!','ʾ',0); + Exit; + end; + if Order_Sub.Locate('PrtPrice',null,[])=True then + begin + Application.MessageBox('۲Ϊ!','ʾ',0); + Exit; + end; + if Order_Sub.Locate('PrtPrice',0,[])=True then + begin + Application.MessageBox('۲Ϊ!','ʾ',0); + Exit; + end; + if Trim(orddefstr5.Text)='' then + begin + Application.MessageBox('۸ﲻΪ','ʾ',0); + Exit; + end; + if SaveData() then + begin + Application.MessageBox('ɹ','ʾ',0); + ModalResult:=1; + end; +end; + +procedure TfrmOrderInPut_CY.v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdColor'; + flagname:='ɫ'; + V1Name.Caption:=''; + V1Note.Caption:='Ӣ'; + // MainType:=Trim(DName); + fnote:=True; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PRTColor').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.Order_Sub.FieldByName('SOrddefstr4').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPut_CY.ToolButton1Click(Sender: TObject); +var + i:Integer; +begin + if Trim(OrderNo.Text)='' then + begin + Application.MessageBox('ŲΪ!','ʾ',0); + Exit; + end; + i:=Order_Sub.RecordCount; + i:=i+1; + CopyAddRow(Tv1,Order_Sub); + with Order_Sub do + begin + Edit; + FieldByName('XHNO').Value:=IntToStr(i); + // FieldByName('SOrddefstr1').Value:=IntToStr(i); + { if i<9 then + FieldByName('SOrddefstr1').Value:='0'+Trim(IntToStr(i)) + else + FieldByName('SOrddefstr1').Value:=Trim(IntToStr(i)); } + FieldByName('PRTColor').Value:=''; + FieldByName('PRTOrderQty').Value:=null; + //FieldByName('PRTPrice').Value:=null; + FieldByName('SOrddefstr4').Value:=null; + FieldByName('SOrddefstr2').Value:=null; + Post; + end; +end; + +procedure TfrmOrderInPut_CY.ToolButton2Click(Sender: TObject); +begin + if Order_Sub.IsEmpty then Exit; + + + if Trim(Order_Sub.fieldbyname('SubId').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrderCY_Sub where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; + Order_Sub.Delete; + +end; + +procedure TfrmOrderInPut_CY.RanFactoryBtnUpClick(Sender: TObject); +begin + {try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='RKPlace'; + flagname:='Ⱦ'; + if ShowModal=1 then + begin + JGFactoryName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + JGFactoryName.TxtCode:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; } +end; + +procedure TfrmOrderInPut_CY.CustomerNoNameBtnUpClick(Sender: TObject); +begin + {try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CustomerNoName'; + flagname:='ͻ'; + if Trim(DParameters1)<>'Ȩ' then + MainType:=Trim(DName); + if ShowModal=1 then + begin + CustomerNoName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + CustomerNoName.TxtCode:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; } + try + frmZdyAttachment:=TfrmZdyAttachment.Create(Application); + with frmZdyAttachment do + begin + fkhType:=''; + if ShowModal=1 then + begin + CustomerNoName.Text:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + CustomerNoName.TxtCode:=Trim(CDS_HZ.fieldbyname('ZDYCode').AsString); + orddefstr10.Text:=Trim(CDS_HZ.fieldbyname('ZDYNameZ').AsString); + end; + end; + finally + frmZdyAttachment.Free; + end; +end; + +procedure TfrmOrderInPut_CY.CustomerNoNameBtnDnClick(Sender: TObject); +begin + TBtnEditC(Sender).Text:=''; + TBtnEditC(Sender).TxtCode:=''; +end; + +procedure TfrmOrderInPut_CY.v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('OrderUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPut_CY.v1PriceUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PriceUnit'; + flagname:='۸λ'; + if Trim(DParameters1)<>'Ȩ' then + begin + TBAdd.Visible:=False; + TBEdit.Visible:=False; + TBDel.Visible:=False; + end; + + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PriceUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPut_CY.YCLFactoryBtnUpClick(Sender: TObject); +var + fsj:string; + FWZ:Integer; +begin + fsj:=Trim(TEdit(Sender).Hint); + FWZ:=Pos('/',fsj); + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Copy(fsj,1,FWZ-1); + flagname:=Copy(fsj,FWZ+1,Length(fsj)-fwz); + MainType:=TEdit(Sender).Name; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPut_CY.MPRTSCTeBieNoteBtnUpClick(Sender: TObject); +var + fsj:string; + FWZ:Integer; +begin + fsj:=Trim(TEdit(Sender).Hint); + FWZ:=Pos('/',fsj); + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:=Copy(fsj,1,FWZ-1); + flagname:=Copy(fsj,FWZ+1,Length(fsj)-fwz); + if ShowModal=1 then + begin + TEdit(Sender).Text:=ReturnStr; + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + + +procedure TfrmOrderInPut_CY.MPRTBZNoteDblClick(Sender: TObject); +var + fsj:string; + FWZ:Integer; + i:integer; +begin + fsj:=Trim(TMemo(Sender).Hint); + FWZ:=Pos('/',fsj); + i:=0; + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:=Copy(fsj,1,FWZ-1); + flagname:=Copy(fsj,FWZ+1,Length(fsj)-fwz); + if ShowModal=1 then + begin + MPRTBZNote.Lines.Clear; + with ClientDataSet1 do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean=True then + begin + i:=i+1; + MPRTBZNote.Lines.Add(inttostr(i)+'.'+FieldByName('ZDYName').AsString) + end; + Next; + end; + end; + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmOrderInPut_CY.MPRTSCTeBieNoteDblClick(Sender: TObject); +var + fsj:string; + FWZ:Integer; + i:integer; +begin + fsj:=Trim(TMemo(Sender).Hint); + FWZ:=Pos('/',fsj); + i:=0; + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:=Copy(fsj,1,FWZ-1); + flagname:=Copy(fsj,FWZ+1,Length(fsj)-fwz); + if ShowModal=1 then + begin + MPRTSCTeBieNote.Lines.Clear; + with ClientDataSet1 do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean=True then + begin + i:=i+1; + MPRTSCTeBieNote.Lines.Add(inttostr(i)+'.'+FieldByName('ZDYName').AsString) + end; + Next; + end; + end; + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + + +procedure TfrmOrderInPut_CY.FormCreate(Sender: TObject); +begin + cxGrid1.Align:=alClient; + OrdDate.DateTime:=SGetServerDateTime(ADOTemp); + DlyDate.DateTime:=OrdDate.Date; + OrdDefDate1.DateTime:=OrdDate.Date; + OrdDefDate2.DateTime:=OrdDate.Date; +end; + +procedure TfrmOrderInPut_CY.N1Click(Sender: TObject); +begin + ToolButton1.Click; +end; + +procedure TfrmOrderInPut_CY.N3Click(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmOrderInPut_CY.conNoChange(Sender: TObject); + +var + ConMainId:string; +begin + + +end; + +procedure TfrmOrderInPut_CY.ToolButton4Click(Sender: TObject); +begin + CDS_CG.Append; + CDS_CG.FieldByName('CRTime').Value:=formatdateTime('yyyy-MM-dd',date()); + CDS_CG.Post; +end; + +procedure TfrmOrderInPut_CY.ToolButton5Click(Sender: TObject); +begin + IF CDS_CG.IsEmpty then exit; + IF CDS_CG.FieldByName('defBit1').AsBoolean then + begin + if Application.MessageBox('˵ɲɹǷɾɹͲϢ','ʾ',32+4)<>IDYES then Exit; + end; + + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete BP_InOut_CF where CRNO='''+Trim(CDS_CG.fieldbyname('CRNO').AsString)+''''); + sql.Add('delete YF_Money_CR where mainID='''+Trim(CDS_CG.fieldbyname('CRNO').AsString)+''''); + ExecSQL; + end; + CDS_CG.Delete; +end; + +procedure TfrmOrderInPut_CY.ToolButton6Click(Sender: TObject); +var + strlist:Tstringlist; + i:integer; + maxno:string; +begin + // strlist:=Tstringlist.Create; + IF (CDS_CG.Locate('ssel',true,[]) and CDS_CG.Locate('defbit1',true,[])) then + begin + if Application.MessageBox('ѡϢвɹɣǷɣ','ʾ',32+4)<>IDYES then exit; + end; + + with CDS_CG do + begin + DisableControls; + first; + while not eof do + begin + if fieldbyname('ssel').AsBoolean then + begin + if trim(fieldbyname('custName').AsString)='' then + begin + Application.MessageBox('ɲɹIJϢӦ̲Ϊգ','ʾϢ',MB_ICONERROR); + EnableControls; + Exit; + end; + // IF strlist.IndexOf(trim(fieldbyname('custName').AsString))<0 then + // strlist.Add(trim(fieldbyname('custName').AsString)); + end; + next; + end; + first; + EnableControls; + end; + ADOCmd.Connection.BeginTrans; + try + + with CDS_CG do + begin + DisableControls; + first; + while not eof do + begin + if fieldbyname('ssel').AsBoolean then + begin + // maxNo:=trim(orderNo.Text)+'-'+CDS_CG.fieldbyname('ID').AsString; + // if trim(fieldbyname('custName').AsString)=trim(strlist.Strings[i]) then + // begin + with ADOCmd do + begin + close; + sql.Clear; + sql.Add('update BP_InOut_CF SET defBit1=1'); + // sql.Add('inoutNO='+quotedstr(trim(orderNo.Text)+'-'+trim(maxno))); + sql.Add('where CRNO='+quotedstr(CDS_CG.fieldbyname('CRNO').AsString)); + execsql; + end; + + IF pos('',trim(CDS_CG.fieldbyname('custName').AsString))<1 then + begin + IF not YFData() then + begin + ADOCmd.Connection.RollbackTrans; + application.MessageBox('Ӧʧܣ','ʾϢ',MB_ICONERROR); + exit; + end; + end; + // end; + end; + next;; + end; + first; + EnableControls; + end; + + with ADOCmd do + begin + close; + sql.Clear; + sql.Add('update BP_InOut_CF SET inoutNO=rtrim(B.orderNo)+''-''+cast(A.CRID as varchar) '); + sql.Add('from BP_InOut_CF A'); + sql.Add('inner join JYOrder_main B on B.mainID=A.mainID'); + sql.Add('where A.mainID='+quotedstr(CDS_CG.fieldbyname('mainID').AsString)); + execsql; + end; + with ADOCmd do + begin + close; + sql.Clear; + sql.Add('update BP_InOut_CF SET inoutNO=(select min(inoutNO) from BP_InOut_CF X where X.mainID=BP_InOut_CF.mainID and X.custName=BP_InOut_CF.custName)'); + sql.Add('where mainID='+quotedstr(CDS_CG.fieldbyname('mainID').AsString)); + execsql; + end; + { for i:=0 to strlist.Count-1 do + begin + if GetLSNo(ADOCmd,maxno,'',trim(orderNO.Text),2,0)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + + // i:=i+1; + end; } + ADOCmd.Connection.CommitTrans; + application.MessageBox('ɹɲɹ','ʾϢ'); + InitData(); + except + ADOCmd.Connection.RollbackTrans; + CDS_CG.EnableControls; + application.MessageBox('ɲɹʧܣ','ʾϢ',MB_ICONERROR); + end; +end; + +procedure TfrmOrderInPut_CY.orderNoBtnClick(Sender: TObject); +var + ConMainId:string; +begin + ConMainId:=''; + frmProductOrderListSel:=TfrmProductOrderListSel.create(self); + with frmProductOrderListSel do + begin + FFInt:=1; + if showmodal=1 then + begin + ConMainId:=trim(Order_Main.fieldbyname('mainID').asstring); + end; + free; + end; + iF ConMainId='' then exit; + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select B.*,A.*,c.KhconNo,C.ConPerson2,C.ConPerson3,C.conDefstr2,C.conDefstr6,C.condefstr10,C.priceNote,C.Payment,C.ShippMent from JYOrder_sub A '); + sql.Add('inner join JYOrder_Main B on B.mainID=A.mainID '); + sql.Add('left join JYOrderCon_Main C on C.conNO=B.conNO '); + sql.Add('where B.mainID like '''+'%'+Trim(ConMainId)+'%'+''''); + Open; + end; + IF not ADOTemp.IsEmpty then + begin + ConNo.Text:=Trim(ADOTemp.fieldbyname('ConNo').AsString); + orderNo.Text:=Trim(ADOTemp.fieldbyname('orderNo').AsString); + CYNO.Text:='CY_'+Trim(ADOTemp.fieldbyname('ConNo').AsString); + CustomerNoName.Text:=Trim(ADOTemp.fieldbyname('CustomerNoName').AsString); + CustomerNoName.TxtCode:=Trim(ADOTemp.fieldbyname('CustomerNo').AsString); + DLYDate.DateTime:=ADOTemp.fieldbyname('DLYDate').AsDateTime; + // ConMainId:=Trim(ADOTemp.fieldbyname('MainId').AsString); + OrdPerson2.Text:=Trim(ADOTemp.fieldbyname('OrdPerson2').AsString); + KHCONNO.Text:=Trim(ADOTemp.fieldbyname('KHCONNO').AsString); + LBNameNote.Text:=Trim(ADOTemp.fieldbyname('LBNameNote').AsString); + MaiTouNote.Text:=Trim(ADOTemp.fieldbyname('MaiTouNote').AsString); + + ConPerson1.Text:=Trim(ADOTemp.fieldbyname('ConPerson2').AsString); + ConPerson2.Text:=Trim(ADOTemp.fieldbyname('ConPerson3').AsString); + + conDefstr1.Text:=Trim(ADOTemp.fieldbyname('conDefstr2').AsString); + conDefstr2.Text:=Trim(ADOTemp.fieldbyname('conDefstr6').AsString); + + orddefstr4.Text:=Trim(ADOTemp.fieldbyname('Payment').AsString); + orddefstr5.Text:=Trim(ADOTemp.fieldbyname('priceNote').AsString); + orddefstr6.Text:=Trim(ADOTemp.fieldbyname('ShippMent').AsString); + + orddefstr10.Text:=Trim(ADOTemp.fieldbyname('condefstr10').AsString); + end; + Order_Sub.EmptyDataSet; + with ADOTemp do + begin + First; + while not Eof do + begin + with Order_Sub do + begin + Append; + FieldByName('XHNO').Value:=Trim(ADOTemp.fieldbyname('XHNO').AsString); + FieldByName('PRTCode').Value:=Trim(ADOTemp.fieldbyname('MPRTCode').AsString); + FieldByName('PRTCodeName').Value:=Trim(ADOTemp.fieldbyname('MPRTCodeName').AsString); + FieldByName('PRTspec').Value:=Trim(ADOTemp.fieldbyname('MPRTspec').AsString); + FieldByName('PRTOrderQty').Value:=Trim(ADOTemp.fieldbyname('PRTOrderQty').AsString); + FieldByName('PRTMF').Value:=Trim(ADOTemp.fieldbyname('MPRTMF').AsString); + FieldByName('PRTKZ').Value:=Trim(ADOTemp.fieldbyname('MPRTKZ').AsString); + FieldByName('Sorddefstr1').Value:=Trim(ADOTemp.fieldbyname('Sorddefstr1').AsString); + FieldByName('Sorddefstr2').Value:=Trim(ADOTemp.fieldbyname('Sorddefstr2').AsString); + FieldByName('Sorddefstr4').Value:=Trim(ADOTemp.fieldbyname('Sorddefstr4').AsString); + FieldByName('PRTColor').Value:=Trim(ADOTemp.fieldbyname('PRTColor').AsString); + FieldByName('OrderUnit').Value:=Trim(ADOTemp.fieldbyname('OrderUnit').AsString); + FieldByName('PRTPrice').Value:=Trim(ADOTemp.fieldbyname('PRTPrice').AsString); + FieldByName('PriceUnit').Value:=Trim(ADOTemp.fieldbyname('PriceUnit').AsString); +// FieldByName('PriceUnitRate').Value:=Trim(ADOTemp.fieldbyname('PriceUnitRate').AsString); + // FieldByName('PRTmoney').Value:=Trim(ADOTemp.fieldbyname('PRTmoney').AsString); + FieldByName('SordQty1').Value:=Trim(ADOTemp.fieldbyname('PRTOrderQty').AsString); + + FieldByName('Sorddefstr10').Value:=Trim(ADOTemp.fieldbyname('subID').AsString); + Post; + end; + Next; + end; + end; + + + +end; + +procedure TfrmOrderInPut_CY.OrdPerson1BtnUpClick(Sender: TObject); +var + fsj:string; + FWZ:Integer; +begin + fsj:=Trim(TEdit(Sender).Hint); + FWZ:=Pos('/',fsj); + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Copy(fsj,1,FWZ-1); + flagname:=Copy(fsj,FWZ+1,Length(fsj)-fwz); + if Trim(flag)='OrdDefStr2' then + begin + //flag:='OrdDefStr2'; + V1Name.Caption:=''; + V1Note.Caption:='Ӣ'; + fnote:=True; + end; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + if Trim(flag)='MPRTCode' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1 * from JYOrder_Main where MPRTCode='''+Trim(ClientDataSet1.fieldbyname('ZDYName').AsString)+''''); + sql.Add(' order by FillTime desc'); + Open; + end; + end; + end; + end; + finally + frmZDYHelp.Free; + end; + +end; + +end. diff --git a/艾登贸易管理/U_OrderInPut_FB.dfm b/艾登贸易管理/U_OrderInPut_FB.dfm new file mode 100644 index 0000000..9c6718d --- /dev/null +++ b/艾登贸易管理/U_OrderInPut_FB.dfm @@ -0,0 +1,1073 @@ +object frmOrderInPut_FB: TfrmOrderInPut_FB + Left = 172 + Top = 134 + Width = 1153 + Height = 603 + Caption = #21457#31080#32534#36753 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + WindowState = wsMaximized + OnCreate = FormCreate + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1137 + Height = 35 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clBtnFace + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxTabControl2: TcxTabControl + Left = 0 + Top = 265 + Width = 1137 + Height = 18 + Align = alTop + LookAndFeel.Kind = lfFlat + LookAndFeel.NativeStyle = False + Style = 9 + TabIndex = 0 + TabOrder = 1 + Tabs.Strings = ( + #20135#21697#20449#24687) + ClientRectBottom = 19 + ClientRectRight = 1137 + ClientRectTop = 19 + end + object cxGrid1: TcxGrid + Left = 0 + Top = 312 + Width = 1137 + Height = 237 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column7 + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Prtmoney + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1XHNo: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'XHNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 35 + end + object v1Column5: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'PrtCodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column5PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1Column6: TcxGridDBColumn + Caption = #20135#21697#35268#26684 + DataBinding.FieldName = 'PRTspec' + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1Column2: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'PRTMF' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column9: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'PRTKZ' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = False + Properties.OnButtonClick = v1PRTColorPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 90 + end + object v1Column3: TcxGridDBColumn + Caption = #39068#33394'('#33521#25991')' + DataBinding.FieldName = 'SOrddefstr4' + Width = 84 + end + object v1Column7: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'SordQty1' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column7PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1OrderUnitPropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1Column4: TcxGridDBColumn + Caption = #24065#31181 + DataBinding.FieldName = 'priceUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column4PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column8: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PrtPrice' + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '0.00;-0.00' + Properties.OnEditValueChanged = v1Column8PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Prtmoney: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'Prtmoney' + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DisplayFormat = '0.00;-0.00' + Properties.OnEditValueChanged = v1PrtmoneyPropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 70 + end + object v1SordQty4: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'SordQty4' + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v1SordQty5: TcxGridDBColumn + Caption = #20928#37325 + DataBinding.FieldName = 'SordQty5' + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v1SordQty7: TcxGridDBColumn + Caption = #21253#25968 + DataBinding.FieldName = 'SordQty7' + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v1SordQty3: TcxGridDBColumn + Caption = #31435#26041#25968 + DataBinding.FieldName = 'SordQty3' + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v1SOrdDefNote1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'SOrdDefNote1' + HeaderAlignmentHorz = taCenter + Width = 137 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 283 + Width = 1137 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clBtnFace + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 3 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #19968#38190#26367#25442 + ImageIndex = 104 + Visible = False + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 35 + Width = 1137 + Height = 18 + Align = alTop + Style = 9 + TabIndex = 0 + TabOrder = 4 + Tabs.Strings = ( + #20027#35201#20449#24687) + ClientRectBottom = 19 + ClientRectRight = 1137 + ClientRectTop = 19 + end + object Panel1: TPanel + Left = 0 + Top = 53 + Width = 1137 + Height = 212 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 5 + object Label1: TLabel + Left = 31 + Top = 15 + Width = 66 + Height = 12 + Caption = #21457' '#31080' '#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 291 + Top = 19 + Width = 65 + Height = 12 + Caption = #21046#21333#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 291 + Top = 43 + Width = 66 + Height = 12 + Caption = #21512' '#21516' '#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label43: TLabel + Left = 291 + Top = 68 + Width = 66 + Height = 12 + Caption = #19994' '#21153' '#21592#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label14: TLabel + Left = 31 + Top = 67 + Width = 67 + Height = 12 + Caption = #23458' '#25143#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 31 + Top = 324 + Width = 65 + Height = 12 + Caption = #27880#24847#20107#39033#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label42: TLabel + Left = 31 + Top = 388 + Width = 65 + Height = 12 + Caption = #29983#20135#25552#31034#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label2: TLabel + Left = 31 + Top = 43 + Width = 65 + Height = 12 + Caption = #25351#31034#21333#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 563 + Top = 47 + Width = 34 + Height = 12 + Caption = 'PO#'#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 563 + Top = 68 + Width = 65 + Height = 12 + Caption = #23458#25143#31616#31216#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 291 + Top = 278 + Width = 91 + Height = 12 + Caption = #25910#36135#20844#21496#22320#22336#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 31 + Top = 276 + Width = 66 + Height = 12 + Caption = #25910' '#36135' '#20154#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label35: TLabel + Left = 31 + Top = 300 + Width = 66 + Height = 12 + Caption = #36890' '#30693' '#20154#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 291 + Top = 302 + Width = 91 + Height = 12 + Caption = #36890#30693#20844#21496#22320#22336#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 563 + Top = 93 + Width = 65 + Height = 12 + Caption = #20215#26684#26415#35821#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label15: TLabel + Left = 291 + Top = 92 + Width = 65 + Height = 12 + Caption = #20184#27454#26041#24335#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label16: TLabel + Left = 31 + Top = 90 + Width = 65 + Height = 12 + Caption = #20986#36816#26041#24335#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label17: TLabel + Left = 31 + Top = 116 + Width = 65 + Height = 12 + Caption = #21457#31080#26684#24335#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label20: TLabel + Left = 563 + Top = 19 + Width = 65 + Height = 12 + Caption = #20986#36816#21333#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 31 + Top = 164 + Width = 65 + Height = 12 + Caption = #38134#34892#36134#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 563 + Top = 116 + Width = 66 + Height = 12 + Caption = #24320' '#25143' '#34892#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label21: TLabel + Left = 291 + Top = 164 + Width = 65 + Height = 12 + Caption = #38134#34892#22320#22336#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label28: TLabel + Left = 31 + Top = 139 + Width = 65 + Height = 12 + Caption = #38134#34892#20195#30721#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 291 + Top = 116 + Width = 65 + Height = 12 + Caption = #21040#27454#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 291 + Top = 140 + Width = 66 + Height = 12 + Caption = #21551' '#29992' '#28207#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label22: TLabel + Left = 563 + Top = 140 + Width = 66 + Height = 12 + Caption = #30446' '#30340' '#28207#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label37: TLabel + Left = 858 + Top = 48 + Width = 13 + Height = 84 + Caption = #21787#13#10#13#10#22836#13#10#13#10#20869#13#10#13#10#23481 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label23: TLabel + Left = 31 + Top = 188 + Width = 65 + Height = 12 + Caption = #21457#31080#31867#22411#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object invoiceNo: TEdit + Tag = 2 + Left = 97 + Top = 12 + Width = 150 + Height = 20 + Enabled = False + TabOrder = 0 + Text = #33258#21160#29983#25104 + end + object OrdDate: TDateTimePicker + Tag = 2 + Left = 357 + Top = 15 + Width = 150 + Height = 20 + BevelInner = bvNone + Date = 40916.670856296290000000 + Format = 'yyyy-MM-dd' + Time = 40916.670856296290000000 + TabOrder = 1 + end + object OrdPerson2: TBtnEditC + Tag = 2 + Left = 357 + Top = 64 + Width = 150 + Height = 20 + Hint = 'OrdPerson2/'#19994#21153#21592 + TabOrder = 2 + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object CustomerNoName: TBtnEditC + Tag = 2 + Left = 97 + Top = 64 + Width = 150 + Height = 20 + Hint = 'CustomerNo' + ReadOnly = True + TabOrder = 3 + OnBtnUpClick = CustomerNoNameBtnUpClick + OnBtnDnClick = CustomerNoNameBtnDnClick + end + object MPRTBZNote: TMemo + Tag = 2 + Left = 97 + Top = 324 + Width = 681 + Height = 57 + Hint = 'MPRTBZNote/'#21253#35013#35201#27714 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ScrollBars = ssVertical + TabOrder = 4 + OnDblClick = MPRTBZNoteDblClick + end + object MPRTSCTeBieNote: TMemo + Tag = 2 + Left = 93 + Top = 387 + Width = 681 + Height = 57 + Hint = 'MPRTSCTeBieNote/'#29983#20135#29305#21035#25552#31034 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ScrollBars = ssVertical + TabOrder = 5 + Visible = False + OnDblClick = MPRTSCTeBieNoteDblClick + end + object conNO: TEdit + Tag = 2 + Left = 357 + Top = 39 + Width = 149 + Height = 20 + TabOrder = 6 + end + object KHConNO: TEdit + Tag = 2 + Left = 629 + Top = 40 + Width = 149 + Height = 20 + TabOrder = 7 + end + object orderNo: TBtnEditA + Tag = 2 + Left = 97 + Top = 39 + Width = 149 + Height = 20 + TabOrder = 8 + OnBtnClick = orderNoBtnClick + end + object orddefstr10: TEdit + Tag = 2 + Left = 629 + Top = 64 + Width = 149 + Height = 20 + Enabled = False + TabOrder = 9 + end + object conDefstr1: TEdit + Tag = 2 + Left = 378 + Top = 271 + Width = 399 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 10 + end + object conDefstr2: TEdit + Tag = 2 + Left = 378 + Top = 295 + Width = 399 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 11 + end + object ConPerson1: TEdit + Tag = 2 + Left = 97 + Top = 272 + Width = 149 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 12 + end + object ConPerson2: TEdit + Tag = 2 + Left = 97 + Top = 296 + Width = 149 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 13 + end + object orddefstr5: TEdit + Tag = 2 + Left = 629 + Top = 88 + Width = 149 + Height = 20 + TabOrder = 14 + end + object orddefstr4: TEdit + Tag = 2 + Left = 357 + Top = 88 + Width = 149 + Height = 20 + TabOrder = 15 + end + object orddefstr6: TEdit + Tag = 2 + Left = 97 + Top = 88 + Width = 149 + Height = 20 + TabOrder = 16 + end + object orddefstr7: TEdit + Tag = 2 + Left = 97 + Top = 112 + Width = 149 + Height = 20 + TabOrder = 17 + end + object CYNO: TBtnEditA + Tag = 2 + Left = 629 + Top = 15 + Width = 149 + Height = 20 + TabOrder = 18 + OnBtnClick = CYNOBtnClick + end + object OrdDefStr9: TEdit + Tag = 2 + Left = 629 + Top = 112 + Width = 149 + Height = 20 + TabOrder = 19 + end + object OrdDefStr8: TBtnEditA + Tag = 2 + Left = 97 + Top = 160 + Width = 150 + Height = 20 + TabOrder = 20 + OnBtnClick = OrdDefStr8BtnClick + end + object OrdDefStr12: TEdit + Tag = 2 + Left = 357 + Top = 160 + Width = 421 + Height = 20 + TabOrder = 21 + end + object OrdDefStr11: TEdit + Tag = 2 + Left = 97 + Top = 135 + Width = 148 + Height = 20 + TabOrder = 22 + end + object MPRTTYpe: TEdit + Left = 1182 + Top = 149 + Width = 121 + Height = 20 + TabOrder = 23 + Visible = False + end + object OrdDefDate1: TDateTimePicker + Tag = 2 + Left = 357 + Top = 112 + Width = 150 + Height = 20 + BevelInner = bvNone + Date = 0.670856296288548100 + Format = 'yyyy-MM-dd' + Time = 0.670856296288548100 + TabOrder = 24 + end + object OrdDefStr13: TEdit + Tag = 2 + Left = 357 + Top = 136 + Width = 149 + Height = 20 + TabOrder = 25 + end + object OrdDefStr14: TEdit + Tag = 2 + Left = 629 + Top = 136 + Width = 149 + Height = 20 + TabOrder = 26 + end + object orddefstr3: TMemo + Tag = 2 + Left = 877 + Top = 20 + Width = 152 + Height = 150 + TabOrder = 27 + end + object Orddefstr15: TComboBox + Tag = 2 + Left = 97 + Top = 184 + Width = 148 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 28 + Items.Strings = ( + '' + #20869#38144 + #22806#38144) + end + end + object ADOTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 903 + Top = 327 + end + object ADOCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 859 + Top = 330 + end + object DataSource1: TDataSource + DataSet = Order_Sub + Left = 1016 + Top = 368 + end + object Order_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 992 + Top = 340 + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 941 + Top = 330 + end + object PopupMenu1: TPopupMenu + Left = 776 + Top = 336 + object N3: TMenuItem + Caption = #21024#34892 + OnClick = N3Click + end + end + object CDS_CG: TClientDataSet + Aggregates = <> + Params = <> + Left = 1044 + Top = 509 + end + object DataSource2: TDataSource + DataSet = CDS_CG + Left = 960 + Top = 505 + end + object PopupMenu2: TPopupMenu + Left = 740 + Top = 540 + object N9: TMenuItem + Caption = #22686#21152 + end + object N8: TMenuItem + Caption = '-' + end + object N4: TMenuItem + Caption = #22686#34892 + end + object N5: TMenuItem + Caption = #21024#34892 + end + object N6: TMenuItem + Caption = '-' + end + object N7: TMenuItem + Caption = #29983#25104#37319#36141#21333 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 820 + Top = 329 + end +end diff --git a/艾登贸易管理/U_OrderInPut_FB.pas b/艾登贸易管理/U_OrderInPut_FB.pas new file mode 100644 index 0000000..4fe07c9 --- /dev/null +++ b/艾登贸易管理/U_OrderInPut_FB.pas @@ -0,0 +1,1336 @@ +unit U_OrderInPut_FB; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer, + cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB, + ExtCtrls, BtnEdit, cxCalendar,StrUtils, cxCurrencyEdit, cxPC, Menus, + cxCheckBox, cxGridCustomPopupMenu, cxGridPopupMenu; + +type + TfrmOrderInPut_FB = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + DataSource1: TDataSource; + Order_Sub: TClientDataSet; + ADOQuery1: TADOQuery; + ToolButton3: TToolButton; + cxTabControl2: TcxTabControl; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1XHNo: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + cxTabControl1: TcxTabControl; + v1SOrdDefNote1: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N3: TMenuItem; + CDS_CG: TClientDataSet; + DataSource2: TDataSource; + PopupMenu2: TPopupMenu; + N4: TMenuItem; + N5: TMenuItem; + N6: TMenuItem; + N7: TMenuItem; + N8: TMenuItem; + N9: TMenuItem; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + Panel1: TPanel; + Label1: TLabel; + Label3: TLabel; + Label10: TLabel; + Label43: TLabel; + Label14: TLabel; + Label19: TLabel; + Label42: TLabel; + Label2: TLabel; + invoiceNo: TEdit; + OrdDate: TDateTimePicker; + OrdPerson2: TBtnEditC; + CustomerNoName: TBtnEditC; + MPRTBZNote: TMemo; + MPRTSCTeBieNote: TMemo; + conNO: TEdit; + KHConNO: TEdit; + orderNo: TBtnEditA; + Label5: TLabel; + v1Column3: TcxGridDBColumn; + Label7: TLabel; + orddefstr10: TEdit; + conDefstr1: TEdit; + Label13: TLabel; + Label9: TLabel; + Label35: TLabel; + Label11: TLabel; + conDefstr2: TEdit; + ConPerson1: TEdit; + ConPerson2: TEdit; + v1Column2: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + cxGridPopupMenu1: TcxGridPopupMenu; + Label12: TLabel; + Label15: TLabel; + orddefstr5: TEdit; + orddefstr4: TEdit; + orddefstr6: TEdit; + Label16: TLabel; + orddefstr7: TEdit; + Label17: TLabel; + Label20: TLabel; + CYNO: TBtnEditA; + v1Prtmoney: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + Label4: TLabel; + Label6: TLabel; + OrdDefStr9: TEdit; + OrdDefStr8: TBtnEditA; + Label21: TLabel; + Label28: TLabel; + OrdDefStr12: TEdit; + OrdDefStr11: TEdit; + MPRTTYpe: TEdit; + v1SordQty4: TcxGridDBColumn; + v1SordQty5: TcxGridDBColumn; + v1SordQty3: TcxGridDBColumn; + Label8: TLabel; + OrdDefDate1: TDateTimePicker; + Label18: TLabel; + OrdDefStr13: TEdit; + Label22: TLabel; + OrdDefStr14: TEdit; + orddefstr3: TMemo; + Label37: TLabel; + v1SordQty7: TcxGridDBColumn; + Label23: TLabel; + Orddefstr15: TComboBox; + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure RanFactoryBtnUpClick(Sender: TObject); + procedure CustomerNoNameBtnUpClick(Sender: TObject); + procedure CustomerNoNameBtnDnClick(Sender: TObject); + procedure v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1PriceUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure YCLFactoryBtnUpClick(Sender: TObject); + procedure MPRTSCTeBieNoteBtnUpClick(Sender: TObject); + procedure MPRTBZNoteDblClick(Sender: TObject); + procedure MPRTSCTeBieNoteDblClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N3Click(Sender: TObject); + procedure conNoChange(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure orderNoBtnClick(Sender: TObject); + procedure OrdPerson1BtnUpClick(Sender: TObject); + procedure v1Column4PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column7PropertiesEditValueChanged(Sender: TObject); + procedure v1PrtmoneyPropertiesEditValueChanged(Sender: TObject); + procedure CYNOBtnClick(Sender: TObject); + procedure v1Column8PropertiesEditValueChanged(Sender: TObject); + procedure OrdDefStr8BtnClick(Sender: TObject); + procedure v1Column5PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + private + procedure InitData(); + procedure ZDYHelp(FButn:TcxButtonEdit;LType:string); + function SaveData():Boolean; + function YSData():Boolean; + { Private declarations } + public + PState,CopyInt,PriceFlag:Integer; + FMainId,FFMainId,FOrderNo,ftype:String; + FXS:Integer; + { Public declarations } + end; + +var + frmOrderInPut_FB: TfrmOrderInPut_FB; + newh:hwnd; +implementation +uses + U_DataLink,U_ZDYHelp,U_Fun,U_ZDYHelpSel, U_ProductOrderListSel,U_ProductOrderNewList_CY_SEL, + U_ZdyAttachment; + +{$R *.dfm} + +function TfrmOrderInPut_FB.YSData():Boolean; +var + CRID,OrdMainId,YFID,FComTaiTou,FCRID,FFactoryName:String; +begin + Result:=False; + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='+quotedstr(Trim(CustomerNoName.Text))); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + CRID:=ADOTemp.fieldbyname('CRID').AsString; + end else + begin + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOCmd.fieldbyname('CRID').AsString; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(CustomerNoName.Text); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where FactoryName='+quotedstr(Trim(CustomerNoName.Text))); + sql.Add(' and mainID='''+Trim(Order_Sub.fieldbyname('mainID').AsString)+''''); + sql.Add(' and subID='''+Trim(Order_Sub.fieldbyname('subID').AsString)+''''); + Open; + end; + if ADOTemp.IsEmpty then + begin + if GetLSNo(ADOCmd,YFID,'YS','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡӦʧ!','ʾ',0); + Exit; + end; + end + else + begin + YFID:=Trim(ADOTemp.fieldbyname('YFID').AsString); + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where YFID='''+Trim(YFID)+''''); + Open; + end; + with ADOCmd do + begin + if ADOTemp.IsEmpty then + Append + else + Edit; + FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(Order_Sub.fieldbyname('mainID').AsString); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦտǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(CustomerNoName.Text); + FieldByName('CRTime').Value:=OrdDate.Date; + FieldByName('Qty').Value:=Order_Sub.fieldbyname('SordQty1').AsFloat; + FieldByName('PS').Value:=0; + FieldByName('YFType').Value:='Զ'; + FieldByName('Price').Value:=Order_Sub.fieldbyname('prtPrice').AsFloat; + FieldByName('money').Value:=Order_Sub.fieldbyname('prtmoney').AsFloat; + FieldByName('BBmoney').Value:=Order_Sub.fieldbyname('prtmoney').AsFloat; + FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=Order_Sub.fieldbyname('priceUnit').AsString; + FieldByName('ComTaiTou').Value:=''; + FieldByName('QtyUnit').Value:=Trim(Order_Sub.fieldbyname('OrderUnit').AsString); + FieldByName('YFName').Value:='۽'; + FieldByName('MainId').Value:=Trim(Order_Sub.fieldbyname('MainId').AsString); + FieldByName('subId').Value:=Trim(Order_Sub.fieldbyname('subId').AsString); + Post; + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + Result:=True; +end; + +procedure TfrmOrderInPut_FB.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ָʾ¼AA',Tv1,'ָʾ'); +end; + +procedure TfrmOrderInPut_FB.InitData(); +begin + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add(' select * from JYOrderFB_Sub where 1=1 '); + if PState=1 then + begin + sql.Add(' and MainId='''+Trim(FMainId)+''''); + end; + if PState=0 then + begin + sql.Add(' and 1<>1'); + end; + Open; + end; + SCreateCDS20(ADOQuery1,Order_Sub); + SInitCDSData20(ADOQuery1,Order_Sub); + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrderFB_Main A '); + SQL.ADD('where MainId='''+Trim(FMainId)+''''); + Open; + end; + SCSHDataNew(ADOQuery1,Panel1,2); + if PState=0 then + begin + invoiceNO.Text:='Զ'; + end else + begin + Orddefstr15.Enabled:=false; + end; + if CopyInt=99 then + begin + PState:=0; + FMainId:=''; + invoiceNO.Text:='Զ'; + Orddefstr15.Enabled:=true; + with Order_Sub do + begin + First; + while not Eof do + begin + Edit; + FieldByName('MainId').Value:=''; + FieldByName('SubId').Value:=''; + Post; + Next; + end; + end; + end; +end; + +procedure TfrmOrderInPut_FB.ZDYHelp(FButn:TcxButtonEdit;LType:string); +var + FType,ZDYName,FText:String; +begin +end; + +procedure TfrmOrderInPut_FB.FormShow(Sender: TObject); +begin + readCxGrid(self.Caption,Tv1,'ָʾ'); + InitData(); +end; + +function TfrmOrderInPut_FB.SaveData():Boolean; +var + maxno,finvoiceNO,fmxType:String; +begin + try + ADOCmd.Connection.BeginTrans; + /// + if Trim(FMainId)='' then + begin + if GetLSNo(ADOCmd,maxno,'FM','JYOrderFB_Main',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + { with ADOTemp do + begin + close; + sql.Clear; + sql.Add('exec P_Get_MaxInvoiceNo '); + sql.Add(' @MPRTType='''+trim(Ftype)+''' '); + open; + end; + IF trim(ADOTemp.FieldByName('maxStr').AsString)='XXX' then + begin + fmxType:=uppercase(formatdateTime('yy',DServerDate)); + IF trim(Orddefstr15.Text)='' then + fmxType:='Q'+fmxType; + if GetLSNo(ADOCmd,finvoiceNO,fmxType,'JYOrderCon_Main',3,0)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + end + else + finvoiceNO:=trim(ADOTemp.FieldByName('maxStr').AsString); + + if trim(Orddefstr15.Text)='' then + finvoiceNO:=Trim(finvoiceNO)+trim(orddefstr10.Text) + else + finvoiceNO:='K'+Trim(finvoiceNO)+trim(orddefstr10.Text); + invoiceNO.Text:=uppercase(finvoiceNO); } + IF trim(Orddefstr15.Text)='' then + fmxType:='Q'+trim(orddefstr10.Text)+uppercase(formatdateTime('yy',DServerDate)) + else + fmxType:='K'+trim(orddefstr10.Text)+uppercase(formatdateTime('yy',DServerDate)); + if GetLSNo(ADOCmd,finvoiceNO,fmxType,'JYOrderCon_Main',3,0)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + invoiceNO.Text:=uppercase(finvoiceNO); + end + else + begin + maxno:=Trim(FMainId); + end; + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from JYOrderFB_Main where MainId='''+Trim(FMainId)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(FMainId)='' then + begin + Append; + end + else begin + Edit; + end; + FieldByName('MainId').Value:=Trim(maxno); + SSetsaveSqlNew(ADOCmd,'JYOrderFB_Main',Panel1,2); + FieldByName('OrdDefStr15').Value:=Trim(Orddefstr15.Text); + FieldByName('status').Value:='0'; + if Trim(FMainId)='' then + begin + FieldByName('Filler').Value:=Trim(DName); + + end else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + Post; + end; + + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrderFB_Main where INVoiceNO='''+Trim(INVoiceNO.Text)+''''); + Open; + end; + if ADOCmd.RecordCount>1 then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('˵ظ!','ʾ',0); + Exit; + end; + FMainId:=Trim(maxno); + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('delete from JYOrderFB_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add('delete from YF_Money_CR where MainId='''+Trim(FMainId)+''''); + execsql; + end; + with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOCmd,maxno,'FS','JYOrderFB_Sub',4,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrderFB_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add(' and SubId='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(maxno); + RTSetSaveDataCDS(ADOCmd,Tv1,Order_Sub,'JYOrderFB_Sub',0); + FieldByName('orderNO').Value:=Trim(orderNO.Text); + fieldbyname('PRTOrderQty').Value:=Order_Sub.fieldbyname('PRTOrderQty').AsFloat; + fieldbyname('PRTPrice').Value:=Order_Sub.fieldbyname('PRTPrice').AsFloat; + fieldbyname('PRTmoney').Value:=Order_Sub.fieldbyname('PRTmoney').AsFloat; + fieldbyname('SordQty1').Value:=Order_Sub.fieldbyname('SordQty1').AsFloat; + fieldbyname('SordQty2').Value:=Order_Sub.fieldbyname('SordQty2').AsFloat; + fieldbyname('SordQty3').Value:=Order_Sub.fieldbyname('SordQty3').AsFloat; + fieldbyname('SordQty4').Value:=Order_Sub.fieldbyname('SordQty4').AsFloat; + fieldbyname('SordQty5').Value:=Order_Sub.fieldbyname('SordQty5').AsFloat; + fieldbyname('SordQty6').Value:=Order_Sub.fieldbyname('SordQty6').AsFloat; + fieldbyname('SordQty7').Value:=Order_Sub.fieldbyname('SordQty7').AsFloat; + FieldByName('PriceUnit').Value:=Trim(Order_Sub.fieldbyname('PriceUnit').AsString); + FieldByName('Sorddefstr10').Value:=Trim(Order_Sub.fieldbyname('Sorddefstr10').AsString); + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('mainID').Value:=Trim(FMainId); + Order_Sub.FieldByName('SubId').Value:=Trim(maxno); + IF not YSdata() then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('Ӧտʧ!','ʾ',0); + Exit; + end; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + + + +procedure TfrmOrderInPut_FB.TBSaveClick(Sender: TObject); +begin + OrdDate.SetFocus; + if Order_Sub.IsEmpty then + begin + Application.MessageBox('ϸΪ!','ʾ',0); + Exit; + end; + if trim(orddefstr10.Text)='' then + begin + application.MessageBox('ͻƲΪ','ʾ',0); + exit; + end; + if trim(orderNo.Text)='' then + begin + application.MessageBox('ָʾŲΪ','ʾ',0); + exit; + end; + if trim(conNO.Text)='' then + begin + application.MessageBox('ͬŲΪ','ʾ',0); + exit; + end; + if order_Sub.Locate('PrtCodeName',null,[])=True then + begin + application.MessageBox('ƷƲΪ','ʾ',0); + exit; + end; + if trim(Orddefstr15.Text)='' then + begin + application.MessageBox('ƱͲΪ','ʾ',0); + exit; + end; + if SaveData() then + begin + Application.MessageBox('ɹ','ʾ',0); + end; + ModalResult:=1; +end; + +procedure TfrmOrderInPut_FB.v1PRTColorPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrdColor'; + flagname:='ɫ'; + V1Name.Caption:=''; + V1Note.Caption:='Ӣ'; + fnote:=True; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PRTColor').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.Order_Sub.FieldByName('SOrddefstr4').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPut_FB.ToolButton1Click(Sender: TObject); +var + i:Integer; + priceUnit:string; +begin + { if Trim(OrderNo.Text)='' then + begin + Application.MessageBox('ŲΪ!','ʾ',0); + Exit; + end; } + i:=Order_Sub.RecordCount; + i:=i+1; + If not Order_Sub.IsEmpty then + PriceUnit:=Order_Sub.fieldbyname('PriceUnit').AsString; + with Order_Sub do + begin + append; + FieldByName('XHNO').Value:=IntToStr(i); + FieldByName('PriceUnit').Value:=trim(PriceUnit); + Post; + end; +end; + +procedure TfrmOrderInPut_FB.ToolButton2Click(Sender: TObject); +begin + if Order_Sub.IsEmpty then Exit; + + +{ if Trim(Order_Sub.fieldbyname('SubId').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrderCY_Sub where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; } + Order_Sub.Delete; + +end; + +procedure TfrmOrderInPut_FB.RanFactoryBtnUpClick(Sender: TObject); +begin + {try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='RKPlace'; + flagname:='Ⱦ'; + if ShowModal=1 then + begin + JGFactoryName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + JGFactoryName.TxtCode:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; } +end; + +procedure TfrmOrderInPut_FB.CustomerNoNameBtnUpClick(Sender: TObject); +begin + { try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CustomerNoName'; + flagname:='ͻ'; + if Trim(DParameters1)<>'Ȩ' then + MainType:=Trim(DName); + if ShowModal=1 then + begin + CustomerNoName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + CustomerNoName.TxtCode:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end;} + try + frmZdyAttachment:=TfrmZdyAttachment.Create(Application); + with frmZdyAttachment do + begin + fkhType:=''; + if ShowModal=1 then + begin + CustomerNoName.Text:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + CustomerNoName.TxtCode:=Trim(CDS_HZ.fieldbyname('ZDYCode').AsString); + orddefstr10.Text:=Trim(CDS_HZ.fieldbyname('ZDYNameZ').AsString); + end; + end; + finally + frmZdyAttachment.Free; + end; +end; + +procedure TfrmOrderInPut_FB.CustomerNoNameBtnDnClick(Sender: TObject); +begin + TBtnEditC(Sender).Text:=''; + TBtnEditC(Sender).TxtCode:=''; +end; + +procedure TfrmOrderInPut_FB.v1OrderUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('OrderUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPut_FB.v1PriceUnitPropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PriceUnit'; + flagname:='۸λ'; + if Trim(DParameters1)<>'Ȩ' then + begin + TBAdd.Visible:=False; + TBEdit.Visible:=False; + TBDel.Visible:=False; + end; + + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PriceUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPut_FB.YCLFactoryBtnUpClick(Sender: TObject); +var + fsj:string; + FWZ:Integer; +begin + fsj:=Trim(TEdit(Sender).Hint); + FWZ:=Pos('/',fsj); + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Copy(fsj,1,FWZ-1); + flagname:=Copy(fsj,FWZ+1,Length(fsj)-fwz); + MainType:=TEdit(Sender).Name; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPut_FB.MPRTSCTeBieNoteBtnUpClick(Sender: TObject); +var + fsj:string; + FWZ:Integer; +begin + fsj:=Trim(TEdit(Sender).Hint); + FWZ:=Pos('/',fsj); + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:=Copy(fsj,1,FWZ-1); + flagname:=Copy(fsj,FWZ+1,Length(fsj)-fwz); + if ShowModal=1 then + begin + TEdit(Sender).Text:=ReturnStr; + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + + +procedure TfrmOrderInPut_FB.MPRTBZNoteDblClick(Sender: TObject); +var + fsj:string; + FWZ:Integer; + i:integer; +begin + fsj:=Trim(TMemo(Sender).Hint); + FWZ:=Pos('/',fsj); + i:=0; + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:=Copy(fsj,1,FWZ-1); + flagname:=Copy(fsj,FWZ+1,Length(fsj)-fwz); + if ShowModal=1 then + begin + MPRTBZNote.Lines.Clear; + with ClientDataSet1 do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean=True then + begin + i:=i+1; + MPRTBZNote.Lines.Add(inttostr(i)+'.'+FieldByName('ZDYName').AsString) + end; + Next; + end; + end; + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmOrderInPut_FB.MPRTSCTeBieNoteDblClick(Sender: TObject); +var + fsj:string; + FWZ:Integer; + i:integer; +begin + fsj:=Trim(TMemo(Sender).Hint); + FWZ:=Pos('/',fsj); + i:=0; + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:=Copy(fsj,1,FWZ-1); + flagname:=Copy(fsj,FWZ+1,Length(fsj)-fwz); + if ShowModal=1 then + begin + MPRTSCTeBieNote.Lines.Clear; + with ClientDataSet1 do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean=True then + begin + i:=i+1; + MPRTSCTeBieNote.Lines.Add(inttostr(i)+'.'+FieldByName('ZDYName').AsString) + end; + Next; + end; + end; + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + + +procedure TfrmOrderInPut_FB.FormCreate(Sender: TObject); +begin + cxGrid1.Align:=alClient; + OrdDate.DateTime:=SGetServerDateTime(ADOTemp); + OrdDefDate1.DateTime:=SGetServerDateTime(ADOTemp); + // DlyDate.DateTime:=OrdDate.Date; + // OrdDefDate1.DateTime:=OrdDate.Date; + // OrdDefDate2.DateTime:=OrdDate.Date; + +end; + +procedure TfrmOrderInPut_FB.N1Click(Sender: TObject); +begin + ToolButton1.Click; +end; + +procedure TfrmOrderInPut_FB.N3Click(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmOrderInPut_FB.conNoChange(Sender: TObject); + +var + ConMainId:string; +begin + + +end; + +procedure TfrmOrderInPut_FB.ToolButton4Click(Sender: TObject); +begin + CDS_CG.Append; + CDS_CG.FieldByName('CRTime').Value:=formatdateTime('yyyy-MM-dd',date()); + CDS_CG.Post; +end; + +procedure TfrmOrderInPut_FB.ToolButton5Click(Sender: TObject); +begin + IF CDS_CG.IsEmpty then exit; + IF CDS_CG.FieldByName('defBit1').AsBoolean then + begin + if Application.MessageBox('˵ɲɹǷɾɹͲϢ','ʾ',32+4)<>IDYES then Exit; + end; + + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete BP_InOut_CF where CRNO='''+Trim(CDS_CG.fieldbyname('CRNO').AsString)+''''); + sql.Add('delete YF_Money_CR where mainID='''+Trim(CDS_CG.fieldbyname('CRNO').AsString)+''''); + ExecSQL; + end; + CDS_CG.Delete; +end; + +procedure TfrmOrderInPut_FB.orderNoBtnClick(Sender: TObject); +var + ConMainId:string; +begin + ConMainId:=''; + frmProductOrderListSel:=TfrmProductOrderListSel.create(self); + with frmProductOrderListSel do + begin + FFInt:=1; + if showmodal=1 then + begin + ConMainId:=trim(Order_Main.fieldbyname('mainID').asstring); + end; + free; + end; + iF ConMainId='' then exit; + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select B.*,A.*,c.KhconNo,C.ConPerson2,C.ConPerson3,C.conDefstr2,C.conDefstr6,C.condefstr10,C.priceNote,C.Payment,C.ShippMent, '); + sql.Add('PriceUnit1=(select top 1 PriceUnit from JYordercon_sub X where X.mainID=C.mainid)'); + sql.Add('from JYOrder_sub A '); + sql.Add('inner join JYOrder_Main B on B.mainID=A.mainID '); + sql.Add('left join JYOrderCon_Main C on C.conNO=B.conNO '); + sql.Add('where B.mainID like '''+'%'+Trim(ConMainId)+'%'+''''); + Open; + end; + IF not ADOTemp.IsEmpty then + begin + ConNo.Text:=Trim(ADOTemp.fieldbyname('ConNo').AsString); + orderNo.Text:=Trim(ADOTemp.fieldbyname('orderNo').AsString); + // CYNO.Text:='CY_'+Trim(ADOTemp.fieldbyname('ConNo').AsString); + CustomerNoName.Text:=Trim(ADOTemp.fieldbyname('CustomerNoName').AsString); + CustomerNoName.TxtCode:=Trim(ADOTemp.fieldbyname('CustomerNo').AsString); + // DLYDate.DateTime:=ADOTemp.fieldbyname('DLYDate').AsDateTime; + // ConMainId:=Trim(ADOTemp.fieldbyname('MainId').AsString); + OrdPerson2.Text:=Trim(ADOTemp.fieldbyname('OrdPerson2').AsString); + KHCONNO.Text:=Trim(ADOTemp.fieldbyname('KHCONNO').AsString); + // LBNameNote.Text:=Trim(ADOTemp.fieldbyname('LBNameNote').AsString); + // MaiTouNote.Text:=Trim(ADOTemp.fieldbyname('MaiTouNote').AsString); + + ConPerson1.Text:=Trim(ADOTemp.fieldbyname('ConPerson2').AsString); + ConPerson2.Text:=Trim(ADOTemp.fieldbyname('ConPerson3').AsString); + + conDefstr1.Text:=Trim(ADOTemp.fieldbyname('conDefstr2').AsString); + conDefstr2.Text:=Trim(ADOTemp.fieldbyname('conDefstr6').AsString); + + orddefstr4.Text:=Trim(ADOTemp.fieldbyname('Payment').AsString); + orddefstr5.Text:=Trim(ADOTemp.fieldbyname('priceNote').AsString); + orddefstr6.Text:=Trim(ADOTemp.fieldbyname('ShippMent').AsString); + orddefstr10.Text:=Trim(ADOTemp.fieldbyname('condefstr10').AsString); + end; + Order_Sub.EmptyDataSet; + with ADOTemp do + begin + First; + while not Eof do + begin + with Order_Sub do + begin + Append; + FieldByName('XHNO').Value:=Trim(ADOTemp.fieldbyname('XHNO').AsString); + FieldByName('PRTCode').Value:=Trim(ADOTemp.fieldbyname('MPRTCode').AsString); + FieldByName('PRTCodeName').Value:=Trim(ADOTemp.fieldbyname('MPRTCodeName').AsString); + FieldByName('PRTspec').Value:=Trim(ADOTemp.fieldbyname('MPRTspec').AsString); + FieldByName('PRTOrderQty').Value:=Trim(ADOTemp.fieldbyname('PRTOrderQty').AsString); + FieldByName('PRTMF').Value:=Trim(ADOTemp.fieldbyname('MPRTMF').AsString); + FieldByName('PRTKZ').Value:=Trim(ADOTemp.fieldbyname('MPRTKZ').AsString); + FieldByName('Sorddefstr1').Value:=Trim(ADOTemp.fieldbyname('Sorddefstr1').AsString); + FieldByName('Sorddefstr2').Value:=Trim(ADOTemp.fieldbyname('Sorddefstr2').AsString); + FieldByName('Sorddefstr4').Value:=Trim(ADOTemp.fieldbyname('Sorddefstr4').AsString); + FieldByName('PRTColor').Value:=Trim(ADOTemp.fieldbyname('PRTColor').AsString); + FieldByName('OrderUnit').Value:=Trim(ADOTemp.fieldbyname('OrderUnit').AsString); + FieldByName('PRTPrice').Value:=Trim(ADOTemp.fieldbyname('PRTPrice').AsString); + FieldByName('PriceUnit').Value:=Trim(ADOTemp.fieldbyname('PriceUnit1').AsString); +// FieldByName('PriceUnitRate').Value:=Trim(ADOTemp.fieldbyname('PriceUnitRate').AsString); + // FieldByName('PRTmoney').Value:=Trim(ADOTemp.fieldbyname('PRTmoney').AsString); + FieldByName('SordQty1').Value:=Trim(ADOTemp.fieldbyname('PRTOrderQty').AsString); + + FieldByName('Sorddefstr10').Value:=Trim(ADOTemp.fieldbyname('subID').AsString); + Post; + end; + Next; + end; + end; + + + +end; + +procedure TfrmOrderInPut_FB.OrdPerson1BtnUpClick(Sender: TObject); +var + fsj:string; + FWZ:Integer; +begin + fsj:=Trim(TEdit(Sender).Hint); + FWZ:=Pos('/',fsj); + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Copy(fsj,1,FWZ-1); + flagname:=Copy(fsj,FWZ+1,Length(fsj)-fwz); + if Trim(flag)='OrdDefStr2' then + begin + //flag:='OrdDefStr2'; + V1Name.Caption:=''; + V1Note.Caption:='Ӣ'; + fnote:=True; + end; + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + if Trim(flag)='MPRTCode' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1 * from JYOrder_Main where MPRTCode='''+Trim(ClientDataSet1.fieldbyname('ZDYName').AsString)+''''); + sql.Add(' order by FillTime desc'); + Open; + end; + end; + end; + end; + finally + frmZDYHelp.Free; + end; + +end; + +procedure TfrmOrderInPut_FB.v1Column4PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PriceUnit'; + flagname:='۸λ'; + if Trim(DParameters1)<>'Ȩ' then + begin + TBAdd.Visible:=False; + TBEdit.Visible:=False; + TBDel.Visible:=False; + end; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('PriceUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPut_FB.v1Column7PropertiesEditValueChanged( + Sender: TObject); +var + Fieldname:string; +begin + Fieldname:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + with Order_Sub do + begin + edit; + if Trim(TcxTextEdit(Sender).EditingText)='' then + begin + fieldbyname(Fieldname).Value:='0'; + end + else + fieldbyname(Fieldname).Value:=TcxTextEdit(Sender).EditingText; + FieldByName('PrtMoney').Value:=strtofloat(format('%.2f',[Fieldbyname('SordQty1').AsFloat*Fieldbyname('PrtPrice').AsFloat ])); + post; + end; + Tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmOrderInPut_FB.v1PrtmoneyPropertiesEditValueChanged( + Sender: TObject); +var + Fieldname:string; +begin + Fieldname:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + with Order_Sub do + begin + edit; + if Trim(TcxTextEdit(Sender).EditingText)='' then + begin + fieldbyname(Fieldname).Value:='0'; + end + else + fieldbyname(Fieldname).Value:=TcxTextEdit(Sender).EditingText; + IF Fieldbyname('SordQty1').AsFloat>0 then + FieldByName('PrtPrice').Value:=(Fieldbyname('PrtMoney').AsFloat/Fieldbyname('SordQty1').AsFloat); + post; + end; + Tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmOrderInPut_FB.CYNOBtnClick(Sender: TObject); +var + ConMainId:string; +begin + ConMainId:=''; + frmProductOrderNewList_CY_SEL:=TfrmProductOrderNewList_CY_SEL.create(self); + with frmProductOrderNewList_CY_SEL do + begin + FFInt:=1; + if showmodal=1 then + begin + ConMainId:=trim(Order_Main.fieldbyname('mainID').asstring); + end; + free; + end; + iF ConMainId='' then exit; + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select B.*,A.*,c.KhconNo,C.ConPerson2,C.ConPerson3,C.conDefstr2,C.conDefstr6,C.condefstr10,C.priceNote,C.Payment,C.ShippMent, '); + sql.Add('C.BankNo,C.BankName,C.BankSelfFastNo,C.BankAddress,C.MPRTTYpe,'); + sql.Add('PriceUnit1=(select top 1 PriceUnit from JYordercon_sub X where X.mainID=C.mainid) '); + sql.Add('from JYOrderCY_sub A '); + sql.Add('inner join JYOrderCY_Main B on B.mainID=A.mainID '); + sql.Add('left join JYOrderCon_Main C on C.conNO=B.conNO '); + sql.Add('where B.mainID like '''+'%'+Trim(ConMainId)+'%'+''''); + Open; + end; + IF not ADOTemp.IsEmpty then + begin + ConNo.Text:=Trim(ADOTemp.fieldbyname('ConNo').AsString); + orderNo.Text:=Trim(ADOTemp.fieldbyname('orderNo').AsString); + CYNO.Text:=Trim(ADOTemp.fieldbyname('CYNO').AsString); + CustomerNoName.Text:=Trim(ADOTemp.fieldbyname('CustomerNoName').AsString); + CustomerNoName.TxtCode:=Trim(ADOTemp.fieldbyname('CustomerNo').AsString); + OrdPerson2.Text:=Trim(ADOTemp.fieldbyname('OrdPerson2').AsString); + KHCONNO.Text:=Trim(ADOTemp.fieldbyname('KHCONNO').AsString); + ConPerson1.Text:=Trim(ADOTemp.fieldbyname('ConPerson1').AsString); + ConPerson2.Text:=Trim(ADOTemp.fieldbyname('ConPerson2').AsString); + conDefstr1.Text:=Trim(ADOTemp.fieldbyname('conDefstr1').AsString); + conDefstr2.Text:=Trim(ADOTemp.fieldbyname('conDefstr2').AsString); + + orddefstr3.Text:=Trim(ADOTemp.fieldbyname('MaiTouNote').AsString); + orddefstr4.Text:=Trim(ADOTemp.fieldbyname('orddefstr4').AsString); + orddefstr5.Text:=Trim(ADOTemp.fieldbyname('orddefstr5').AsString); + + orddefstr6.Text:=Trim(ADOTemp.fieldbyname('orddefstr6').AsString); + OrdDefStr8.Text:=Trim(ADOTemp.Fieldbyname('BankNo').AsString); + OrdDefStr9.text:=Trim(ADOTemp.fieldbyname('BankName').AsString); + orddefstr10.Text:=Trim(ADOTemp.fieldbyname('condefstr10').AsString); + OrdDefStr11.Text:=Trim(ADOTemp.Fieldbyname('BankSelfFastNo').AsString); + OrdDefStr12.text:=Trim(ADOTemp.fieldbyname('BankAddress').AsString); + if Trim(ADOTemp.fieldbyname('MPRTTYpe').AsString)='' then + begin + MPRTTYpe.Text:=''; + end + else + MPRTTYpe.Text:=Trim(ADOTemp.fieldbyname('MPRTTYpe').AsString); + end; + Order_Sub.EmptyDataSet; + with ADOTemp do + begin + First; + while not Eof do + begin + with Order_Sub do + begin + Append; + FieldByName('XHNO').Value:=Trim(ADOTemp.fieldbyname('XHNO').AsString); + FieldByName('PRTCode').Value:=Trim(ADOTemp.fieldbyname('PRTCode').AsString); + FieldByName('PRTCodeName').Value:=Trim(ADOTemp.fieldbyname('PRTCodeName').AsString); + FieldByName('PRTspec').Value:=Trim(ADOTemp.fieldbyname('PRTspec').AsString); + FieldByName('PRTOrderQty').Value:=Trim(ADOTemp.fieldbyname('PRTOrderQty').AsString); + FieldByName('PRTMF').Value:=Trim(ADOTemp.fieldbyname('PRTMF').AsString); + FieldByName('PRTKZ').Value:=Trim(ADOTemp.fieldbyname('PRTKZ').AsString); + FieldByName('Sorddefstr1').Value:=Trim(ADOTemp.fieldbyname('Sorddefstr1').AsString); + FieldByName('Sorddefstr2').Value:=Trim(ADOTemp.fieldbyname('Sorddefstr2').AsString); + FieldByName('Sorddefstr4').Value:=Trim(ADOTemp.fieldbyname('Sorddefstr4').AsString); + FieldByName('PRTColor').Value:=Trim(ADOTemp.fieldbyname('PRTColor').AsString); + FieldByName('OrderUnit').Value:=Trim(ADOTemp.fieldbyname('OrderUnit').AsString); + FieldByName('PRTPrice').Value:=Trim(ADOTemp.fieldbyname('PRTPrice').AsString); + FieldByName('PriceUnit').Value:=Trim(ADOTemp.fieldbyname('PriceUnit1').AsString); + FieldByName('SordQty1').Value:=Trim(ADOTemp.fieldbyname('SordQty1').AsString); + FieldByName('SordQty3').Value:=Trim(ADOTemp.fieldbyname('SordQty3').AsString); + FieldByName('SordQty4').Value:=Trim(ADOTemp.fieldbyname('SordQty4').AsString); + FieldByName('SordQty5').Value:=Trim(ADOTemp.fieldbyname('SordQty5').AsString); + FieldByName('PrtMoney').Value:=strtofloat(format('%.2f',[Fieldbyname('SordQty1').AsFloat*Fieldbyname('PrtPrice').AsFloat ])); + FieldByName('Sorddefstr10').Value:=Trim(ADOTemp.fieldbyname('subID').AsString); + Post; + end; + Next; + end; + end; +end; + +procedure TfrmOrderInPut_FB.v1Column8PropertiesEditValueChanged( + Sender: TObject); +var + Fieldname:string; +begin + Fieldname:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + begin + with Order_Sub do + begin + edit; + if Trim(TcxTextEdit(Sender).EditingText)='' then + begin + fieldbyname(Fieldname).Value:='0'; + end + else + fieldbyname(Fieldname).Value:=TcxTextEdit(Sender).EditingText; + FieldByName('PrtMoney').Value:=(Fieldbyname('SordQty1').AsFloat)*(Fieldbyname('PrtPrice').AsFloat); + post; + end; + Tv1.Controller.EditingController.ShowEdit(); + end; +end; + +procedure TfrmOrderInPut_FB.OrdDefStr8BtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BankNo'; + flagname:='˺'; + if ShowModal=1 then + begin + OrdDefStr8.text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from JYOrderCon_Main where BankNo='''+Trim(ClientDataSet1.fieldbyname('ZDYName').AsString)+''''); + sql.Add(' and MPRTTYpe='''+Trim(MPRTTYpe.Text)+''''); + sql.Add(' order by FillTime desc '); + Open; + Self.OrdDefStr9.Text:=Trim(ADOTemp.fieldbyname('BankName').AsString); + Self.OrdDefStr12.Text:=Trim(ADOTemp.fieldbyname('BankAddress').AsString); + Self.OrdDefStr11.Text:=Trim(ADOTemp.fieldbyname('BankSelfFastNo').AsString); + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderInPut_FB.v1Column5PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + frmProductOrderListSel:=TfrmProductOrderListSel.create(self); + with frmProductOrderListSel do + begin + FFInt:=1; + if showmodal=1 then + begin + with Order_Sub do + begin + edit; + FieldByName('XHNO').Value:=Trim(Order_Main.fieldbyname('XHNO').AsString); + FieldByName('PRTCode').Value:=Trim(Order_Main.fieldbyname('MPRTCode').AsString); + FieldByName('PRTCodeName').Value:=Trim(Order_Main.fieldbyname('MPRTCodeName').AsString); + FieldByName('PRTspec').Value:=Trim(Order_Main.fieldbyname('MPRTspec').AsString); + FieldByName('PRTOrderQty').Value:=Trim(Order_Main.fieldbyname('PRTOrderQty').AsString); + FieldByName('PRTMF').Value:=Trim(Order_Main.fieldbyname('MPRTMF').AsString); + FieldByName('PRTKZ').Value:=Trim(Order_Main.fieldbyname('MPRTKZ').AsString); + FieldByName('Sorddefstr1').Value:=Trim(Order_Main.fieldbyname('Sorddefstr1').AsString); + FieldByName('Sorddefstr2').Value:=Trim(Order_Main.fieldbyname('Sorddefstr2').AsString); + FieldByName('Sorddefstr4').Value:=Trim(Order_Main.fieldbyname('Sorddefstr4').AsString); + FieldByName('PRTColor').Value:=Trim(Order_Main.fieldbyname('PRTColor').AsString); + FieldByName('OrderUnit').Value:=Trim(Order_Main.fieldbyname('OrderUnit').AsString); + FieldByName('PRTPrice').Value:=Trim(Order_Main.fieldbyname('PRTPrice').AsString); + FieldByName('PriceUnit').Value:=Trim(Order_Main.fieldbyname('PriceUnit1').AsString); +// FieldByName('PriceUnitRate').Value:=Trim(ADOTemp.fieldbyname('PriceUnitRate').AsString); + // FieldByName('PRTmoney').Value:=Trim(ADOTemp.fieldbyname('PRTmoney').AsString); + FieldByName('SordQty1').Value:=Trim(Order_Main.fieldbyname('PRTOrderQty').AsString); + + FieldByName('Sorddefstr10').Value:=Trim(Order_Main.fieldbyname('subID').AsString); + Post; + end; + end; + free; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +end. diff --git a/艾登贸易管理/U_OrderInPut_HYWT.dfm b/艾登贸易管理/U_OrderInPut_HYWT.dfm new file mode 100644 index 0000000..77a0af7 --- /dev/null +++ b/艾登贸易管理/U_OrderInPut_HYWT.dfm @@ -0,0 +1,533 @@ +object frmorderInput_HYWT: TfrmorderInput_HYWT + Left = 230 + Top = 78 + Width = 1154 + Height = 539 + Caption = #36135#36816#22996#25176 + 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 ToolBar2: TToolBar + Left = 0 + Top = 0 + Width = 1146 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBAdd: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object TBDel: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object Tsel: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + OnClick = TselClick + end + object TChk: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #23457#26680 + ImageIndex = 41 + OnClick = TChkClick + end + object TNOChk: TToolButton + Left = 441 + Top = 0 + AutoSize = True + Caption = #25764#38144#23457#26680 + ImageIndex = 86 + OnClick = TNOChkClick + end + object TBPrint: TToolButton + Left = 528 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 591 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 121 + Width = 1146 + Height = 348 + Align = alTop + TabOrder = 1 + object TV1: TcxGridDBTableView + OnDblClick = TV1DblClick + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + object V1WTNo: TcxGridDBColumn + Caption = #22996#25176#21333#21495 + DataBinding.FieldName = 'WTNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 65 + end + object V1Conno: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'Conno' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 65 + end + object V1CustomerNoName: TcxGridDBColumn + Caption = #32463#33829#21333#20301 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1shiptime: TcxGridDBColumn + Caption = #35013#36816#26399#38480 + DataBinding.FieldName = 'shiptime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1orddefstr1: TcxGridDBColumn + Caption = #21457#36135#20154 + DataBinding.FieldName = 'orddefstr1' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1khconNo: TcxGridDBColumn + Caption = 'PO#' + DataBinding.FieldName = 'khconNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1BLNO: TcxGridDBColumn + Caption = 'B/L NO' + DataBinding.FieldName = 'BLNO' + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1vessel: TcxGridDBColumn + Caption = #33337#21517 + DataBinding.FieldName = 'vessel' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1voy: TcxGridDBColumn + Caption = #33322#27425 + DataBinding.FieldName = 'voy' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1ConPerson1: TcxGridDBColumn + Caption = #25910#36135#20154 + DataBinding.FieldName = 'ConPerson1' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1XYNO: TcxGridDBColumn + Caption = #20449#29992#35777#21495 + DataBinding.FieldName = 'XYNO' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1EXPORT: TcxGridDBColumn + Caption = #20986#21475#21475#23736 + DataBinding.FieldName = 'EXPORT' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1TDNUM: TcxGridDBColumn + Caption = #25552#21333#20221#25968 + DataBinding.FieldName = 'TDNUM' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1payaddress: TcxGridDBColumn + Caption = #36816#36153#20184#33267 + DataBinding.FieldName = 'payaddress' + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1POD: TcxGridDBColumn + Caption = #30446#30340#28207 + DataBinding.FieldName = 'POD' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1DLYDate: TcxGridDBColumn + Caption = #35013#31665#26085#26399 + DataBinding.FieldName = 'DLYDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1DLYaddress: TcxGridDBColumn + Caption = #35013#31665#22320#22336 + DataBinding.FieldName = 'DLYaddress' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1BJNO: TcxGridDBColumn + Caption = #26631#35760#21495#30721 + DataBinding.FieldName = 'BJNO' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1BGTYPE: TcxGridDBColumn + Caption = #21253#35013#24335#26679 + DataBinding.FieldName = 'BGTYPE' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1PRTspec: TcxGridDBColumn + Caption = #36135#21517#35268#26684 + DataBinding.FieldName = 'PRTspec' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1SordQty1: TcxGridDBColumn + Caption = #25104#20132#26465#20214 + DataBinding.FieldName = 'SordQty1' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1PRTCodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'PRTCodeName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 65 + end + object V1PRTCode: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'PRTCode' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 65 + end + object V1SordQty3: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'SordQty3' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 65 + end + object V1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 65 + end + object V1PrtPrice: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PrtPrice' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 65 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = TV1 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 100 + Width = 1146 + Height = 21 + Align = alTop + Style = 9 + TabIndex = 0 + TabOrder = 2 + Tabs.Strings = ( + #26410#23457#26680 + #24050#23457#26680 + #23436#25104) + OnChange = cxTabControl1Change + ClientRectBottom = 21 + ClientRectRight = 1146 + ClientRectTop = 19 + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1146 + Height = 68 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 3 + object Label1: TLabel + Left = 32 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 269 + Top = 15 + Width = 52 + Height = 12 + Caption = #22996#25176#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 269 + Top = 39 + Width = 52 + Height = 12 + Caption = #32463#33829#21333#20301 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 491 + Top = 15 + Width = 53 + Height = 12 + Caption = #21512' '#21516' '#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 511 + Top = 39 + Width = 28 + Height = 12 + Caption = 'PO #' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object begdate: TDateTimePicker + Left = 89 + Top = 11 + Width = 110 + Height = 20 + Date = 41962.538274189800000000 + Time = 41962.538274189800000000 + TabOrder = 0 + end + object enddate: TDateTimePicker + Left = 89 + Top = 35 + Width = 110 + Height = 20 + Date = 41962.538391562500000000 + Time = 41962.538391562500000000 + TabOrder = 1 + end + object WTNo: TEdit + Left = 325 + Top = 11 + Width = 115 + Height = 20 + TabOrder = 2 + OnChange = WTNoChange + end + object CustomerNoName: TEdit + Left = 325 + Top = 35 + Width = 115 + Height = 20 + TabOrder = 3 + OnChange = WTNoChange + end + object conNo: TEdit + Left = 548 + Top = 11 + Width = 115 + Height = 20 + TabOrder = 4 + OnChange = WTNoChange + end + object KHConNo: TEdit + Left = 548 + Top = 35 + Width = 115 + Height = 20 + TabOrder = 5 + OnChange = WTNoChange + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 580 + Top = 224 + end + object order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 328 + Top = 224 + end + object ADOQueryTMP: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 372 + Top = 224 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 412 + Top = 224 + end + object DataSource1: TDataSource + DataSet = order_Main + Left = 452 + Top = 224 + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = order_Main + Left = 540 + Top = 224 + end + object RMPrint: 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 = 496 + Top = 224 + ReportData = {} + end +end diff --git a/艾登贸易管理/U_OrderInPut_HYWT.pas b/艾登贸易管理/U_OrderInPut_HYWT.pas new file mode 100644 index 0000000..510ae70 --- /dev/null +++ b/艾登贸易管理/U_OrderInPut_HYWT.pas @@ -0,0 +1,363 @@ +unit U_OrderInPut_HYWT; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, cxStyles, cxCustomData, cxGraphics, cxFilter, + cxData, cxDataStorage, cxEdit, DB, cxDBData, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxGridLevel, cxClasses, cxControls, + cxGridCustomView, cxGrid, cxGridCustomPopupMenu, cxGridPopupMenu, cxPC, + ExtCtrls, StdCtrls, ADODB, DBClient, RM_Common, RM_Class, RM_GridReport, + RM_System, RM_Dataset, cxCalendar; + +type + TfrmorderInput_HYWT = class(TForm) + ToolBar2: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + Tsel: TToolButton; + TChk: TToolButton; + TNOChk: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + cxGridPopupMenu1: TcxGridPopupMenu; + TV1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + V1WTNo: TcxGridDBColumn; + V1Conno: TcxGridDBColumn; + V1CustomerNoName: TcxGridDBColumn; + V1shiptime: TcxGridDBColumn; + V1orddefstr1: TcxGridDBColumn; + cxTabControl1: TcxTabControl; + Panel1: TPanel; + Label1: TLabel; + begdate: TDateTimePicker; + enddate: TDateTimePicker; + Label2: TLabel; + Label3: TLabel; + WTNo: TEdit; + CustomerNoName: TEdit; + Label4: TLabel; + conNo: TEdit; + Label5: TLabel; + KHConNo: TEdit; + order_Main: TClientDataSet; + ADOQueryTMP: TADOQuery; + ADOQueryCmd: TADOQuery; + DataSource1: TDataSource; + RMDBMain: TRMDBDataSet; + RMPrint: TRMGridReport; + V1khconNo: TcxGridDBColumn; + V1BLNO: TcxGridDBColumn; + V1vessel: TcxGridDBColumn; + V1voy: TcxGridDBColumn; + V1ConPerson1: TcxGridDBColumn; + V1XYNO: TcxGridDBColumn; + V1EXPORT: TcxGridDBColumn; + V1TDNUM: TcxGridDBColumn; + V1payaddress: TcxGridDBColumn; + V1POD: TcxGridDBColumn; + V1DLYDate: TcxGridDBColumn; + V1DLYaddress: TcxGridDBColumn; + V1BJNO: TcxGridDBColumn; + V1BGTYPE: TcxGridDBColumn; + V1PRTspec: TcxGridDBColumn; + V1SordQty1: TcxGridDBColumn; + V1PRTCodeName: TcxGridDBColumn; + V1PRTCode: TcxGridDBColumn; + V1SordQty3: TcxGridDBColumn; + V1OrderUnit: TcxGridDBColumn; + V1PrtPrice: TcxGridDBColumn; + procedure TBRafreshClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TV1DblClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TselClick(Sender: TObject); + procedure TChkClick(Sender: TObject); + procedure TNOChkClick(Sender: TObject); + procedure WTNoChange(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + private + procedure initGrid(); + procedure SetStatus(); + { Private declarations } + public + { Public declarations } + end; + +var + frmorderInput_HYWT: TfrmorderInput_HYWT; + +implementation + +uses U_Fun,U_datalink, U_orderInPut_HYWT_Sub; + +{$R *.dfm} + +procedure TfrmorderInput_HYWT.initGrid(); +begin + with ADOQueryTMP do + begin + Close; + sql.Clear; + SQL.Add('select A.*,B.* from JYOrderWT_Main A '); + SQL.Add('inner join JYOrderWT_Sub B on B.Mainid=A.Mainid '); + SQL.Add('where A.filltime>='''+FormatDateTime('yyyy-MM-dd',BegDate.DateTime)+''' '); + SQL.Add('and A.filltime<'''+FormatDateTime('yyyy-MM-dd',enddate.DateTime+1)+''' '); + if cxTabControl1.TabIndex=0 then + sql.Add('and status='''''); + if cxTabControl1.TabIndex=1 then + sql.Add('and status=''1'''); + Open; + end; + SCreateCDS20(ADOQueryTMP,Order_Main); + SInitCDSData20(ADOQueryTMP,Order_Main); +end; + +procedure TfrmorderInput_HYWT.SetStatus(); +begin + tchk.Visible:=false; + tnochk.Visible:=false; + tbedit.Visible:=false; + tbdel.Visible:=false; + if Trim(DParameters1)<>'Ȩ' then + begin + case cxTabControl1.TabIndex of + 0:begin + tbedit.Visible:=true; + tbdel.Visible:=true; + end; + 1:begin + end; + 2:begin + end; + end; + end + else + begin + case cxTabControl1.TabIndex of + 0:begin + tchk.Visible:=true; + tbedit.Visible:=true; + tbdel.Visible:=true; + end; + 1:begin + tnochk.Visible:=true; + end; + 2:begin + end; + end; + end; +end; + +procedure TfrmorderInput_HYWT.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmorderInput_HYWT.FormCreate(Sender: TObject); +begin + cxGrid1.Align:=alclient; + cxTabControl1.TabIndex:=0; +end; + +procedure TfrmorderInput_HYWT.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmorderInput_HYWT.FormDestroy(Sender: TObject); +begin + frmorderInput_HYWT:=nil; +end; + +procedure TfrmorderInput_HYWT.FormShow(Sender: TObject); +begin + SetStatus(); + ReadCxGrid(self.Caption+tv1.Name,Tv1); + BegDate.DateTime:=SGetServerDate10(ADOQueryTmp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTmp); + InitGrid(); +end; + +procedure TfrmorderInput_HYWT.TBCloseClick(Sender: TObject); +begin + close; + WriteCxGrid(self.Caption+tv1.Name,Tv1); +end; + +procedure TfrmorderInput_HYWT.TV1DblClick(Sender: TObject); +begin + Tsel.Click; +end; + +procedure TfrmorderInput_HYWT.TBFindClick(Sender: TObject); +begin + SDofilter(ADOQueryTmp,SGetFilters(Panel1,1,0)); + SCreateCDS20(ADOQueryTmp,Order_Main); + SInitCDSData20(ADOQueryTmp,Order_Main); +end; + +procedure TfrmorderInput_HYWT.TBPrintClick(Sender: TObject); +var + FPrintFile:string; +begin + if Order_Main.IsEmpty then Exit; + FPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ί.rmf'; + with ADOQueryTmp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,B.* from JYOrderWT_Main A '); + SQL.Add('inner join JYOrderWT_Sub B on B.Mainid=A.Mainid '); + SQL.Add('where A.Mainid='''+trim(order_Main.fieldbyname('Mainid').AsString)+''''); + open; + end; + SCreateCDS20(ADOQueryTmp,order_Main); + SInitCDSData20(ADOQueryTmp,order_Main); + if FileExists(fPrintFile) then + begin + RMPrint.LoadFromFile(fPrintFile); + RMPrint.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ί.rmf'),'ʾ'); + end; + InitGrid(); +end; + +procedure TfrmorderInput_HYWT.TBAddClick(Sender: TObject); +begin + try + FrmOrderInPut_HYWT_Sub:=TFrmOrderInPut_HYWT_Sub.create(self); + with FrmOrderInPut_HYWT_Sub do + begin + FMainId:=''; + if showmodal=1 then + begin + InitGrid(); + end; + end; + finally + FrmOrderInPut_HYWT_Sub.Free; + end; +end; + +procedure TfrmorderInput_HYWT.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + FrmOrderInPut_HYWT_Sub:=TFrmOrderInPut_HYWT_Sub.create(self); + with FrmOrderInPut_HYWT_Sub do + begin + FMainid:=trim(self.order_Main.fieldbyname('Mainid').AsString); + if showmodal=1 then + begin + initGrid(); + end; + end; + finally + FrmOrderInPut_HYWT_Sub.Free; + end; +end; + +procedure TfrmorderInput_HYWT.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',1)=2 then Exit; + with ADOQuerycmd do + begin + close; + sql.Clear; + sql.Add('delete from JYOrderWT_Main where Mainid='''+trim(order_Main.fieldbyname('Mainid').AsString)+''''); + execsql; + end; + initGrid(); +end; + +procedure TfrmorderInput_HYWT.TselClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + FrmOrderInPut_HYWT_Sub:=TFrmOrderInPut_HYWT_Sub.create(self); + with FrmOrderInPut_HYWT_Sub do + begin + FMainid:=trim(self.order_Main.fieldbyname('Mainid').AsString); + ToolBar2.Visible:=False; + TBSave.Visible:=False; + Panel1.Enabled:=False; + Tv1.OptionsSelection.CellSelect:=False; + if showmodal=1 then + begin + initGrid(); + end; + end; + finally + FrmOrderInPut_HYWT_Sub.Free; + end; +end; + +procedure TfrmorderInput_HYWT.TChkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + try + with ADOQueryTMP do + begin + close; + sql.Clear; + sql.Add('update JYOrderWT_Main set status=''1'',chktime=getdate(),chker='+quotedstr(trim(Dname))); + sql.Add(' where Mainid='''+trim(Order_Main.fieldbyname('Mainid').asstring)+''''); + execsql; + end; + application.MessageBox('˳ɹ','ʾ'); + initGrid(); + except + application.messagebox('ʧ','ʾ'); + end; +end; + +procedure TfrmorderInput_HYWT.TNOChkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + with ADOQueryTMP do + begin + close; + SQL.Clear; + sql.Add('update JYOrderWT_Main set chker=null,chktime=Null,status='''' '); + sql.Add('where Mainid='+quotedstr(trim(order_Main.fieldbyname('Mainid').asstring))); + ExecSQL; + end; + Application.MessageBox('ɹ','ʾ'); + initGrid(); + except; + Application.MessageBox('ʧ','ʾ'); + end; +end; + +procedure TfrmorderInput_HYWT.WTNoChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmorderInput_HYWT.cxTabControl1Change(Sender: TObject); +begin + SetStatus(); + TBRafresh.Click; +end; + +end. diff --git a/艾登贸易管理/U_OrderJD.dfm b/艾登贸易管理/U_OrderJD.dfm new file mode 100644 index 0000000..db1be01 --- /dev/null +++ b/艾登贸易管理/U_OrderJD.dfm @@ -0,0 +1,636 @@ +object frmOrderJD: TfrmOrderJD + Left = 136 + Top = 9 + Width = 1188 + Height = 677 + Caption = #36827#24230#26597#35810 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Panel1: TPanel + Left = 0 + Top = 0 + Width = 1172 + Height = 57 + Align = alTop + TabOrder = 0 + object Label1: TLabel + Left = 40 + Top = 20 + Width = 48 + Height = 12 + Caption = #25351#31034#21333#21495 + end + object orderNo: TEdit + Left = 88 + Top = 16 + Width = 157 + Height = 20 + TabOrder = 0 + OnKeyPress = orderNoKeyPress + end + end + object GroupBox1: TGroupBox + Left = 0 + Top = 57 + Width = 1172 + Height = 152 + Align = alTop + Caption = #25351#31034#21333#35814#32454#20449#24687 + TabOrder = 1 + object cxGrid1: TcxGrid + Left = 2 + Top = 14 + Width = 1168 + Height = 136 + Align = alClient + TabOrder = 0 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DS_Order + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = v1PRTOrderQty + 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 + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1OrderNo: TcxGridDBColumn + Caption = #25351#31034#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 112 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 94 + end + object v1Column11: TcxGridDBColumn + Caption = 'PO#' + DataBinding.FieldName = 'KHconNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 91 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson2' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 92 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 84 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 81 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 94 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 86 + end + object v1MPrtSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'MPrtSpec' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column2: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'PrtkuanNO' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column1: TcxGridDBColumn + Caption = #39068#33394#20013#25991 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1SordQtY1: TcxGridDBColumn + Caption = #39068#33394#33521#25991 + DataBinding.FieldName = 'SOrddefstr4' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PrtOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 70 + end + object v1ordderNote1: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'orderUnit' + HeaderAlignmentHorz = taCenter + Width = 67 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + end + object Panel2: TPanel + Left = 0 + Top = 209 + Width = 1172 + Height = 212 + Align = alTop + BevelOuter = bvNone + Caption = 'Panel2' + TabOrder = 2 + object GroupBox2: TGroupBox + Left = 0 + Top = 0 + Width = 594 + Height = 212 + Align = alClient + Caption = #37319#36141#21040#36135#20449#24687 + TabOrder = 0 + object cxGrid2: TcxGrid + Left = 2 + Top = 14 + Width = 590 + Height = 196 + Align = alClient + TabOrder = 0 + object TV2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DS_CG + 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 + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = V2Column3 + end + item + Kind = skSum + Column = V2Column4 + end + item + Kind = skSum + Column = V2Column5 + end + item + Kind = skSum + Column = V2Column6 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object V2Column1: TcxGridDBColumn + Caption = #37319#36141#26085#26399 + DataBinding.FieldName = 'QDTime' + HeaderAlignmentHorz = taCenter + Width = 116 + end + object V2Column2: TcxGridDBColumn + Caption = #20379#24212#21830 + DataBinding.FieldName = 'FactoryNoName' + HeaderAlignmentHorz = taCenter + Width = 92 + end + object V2Column3: TcxGridDBColumn + Caption = #37319#36141#21305#25968 + DataBinding.FieldName = 'Qty1' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object V2Column4: TcxGridDBColumn + Caption = #37319#36141#25968#37327 + DataBinding.FieldName = 'C_Qty' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object V2Column5: TcxGridDBColumn + Caption = #21040#36135#21305#25968 + DataBinding.FieldName = 'DHPS' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object V2Column6: TcxGridDBColumn + Caption = #21040#36135#25968#37327 + DataBinding.FieldName = 'DHQty' + HeaderAlignmentHorz = taCenter + Width = 80 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + end + object GroupBox3: TGroupBox + Left = 594 + Top = 0 + Width = 578 + Height = 212 + Align = alRight + Caption = #21040#36135#26126#32454#20449#24687 + TabOrder = 1 + object cxGrid3: TcxGrid + Left = 2 + Top = 14 + Width = 574 + Height = 196 + Align = alClient + TabOrder = 0 + object TV3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DS_DH + 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 + 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 + Column = cxGridDBColumn5 + end + item + Kind = skSum + Column = cxGridDBColumn6 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object cxGridDBColumn1: TcxGridDBColumn + Caption = #21040#36135#26102#38388 + DataBinding.FieldName = 'comedate' + HeaderAlignmentHorz = taCenter + Width = 131 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #21152#24037#21378 + DataBinding.FieldName = 'RKPlace' + HeaderAlignmentHorz = taCenter + Width = 136 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #21040#36135#21305#25968 + DataBinding.FieldName = 'Qty1' + HeaderAlignmentHorz = taCenter + Width = 106 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #21040#36135#25968#37327 + DataBinding.FieldName = 'MXQty' + HeaderAlignmentHorz = taCenter + Width = 107 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TV3 + end + end + end + end + object GroupBox4: TGroupBox + Left = 0 + Top = 421 + Width = 1172 + Height = 196 + Align = alTop + Caption = #25237#22383#22238#20179#35814#32454#20449#24687 + TabOrder = 3 + object cxGrid4: TcxGrid + Left = 2 + Top = 14 + Width = 1168 + Height = 180 + Align = alClient + TabOrder = 0 + object TV4: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DS_TP + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn7 + end + item + Kind = skSum + Column = cxGridDBColumn8 + end + item + Kind = skSum + Column = TV4Column1 + end + item + Kind = skSum + Column = TV4Column2 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object cxGridDBColumn3: TcxGridDBColumn + Caption = #21152#24037#21378 + DataBinding.FieldName = 'FirstName' + HeaderAlignmentHorz = taCenter + Width = 131 + end + object cxGridDBColumn7: TcxGridDBColumn + Caption = #25237#22383#21305#25968 + DataBinding.FieldName = 'TPPS' + HeaderAlignmentHorz = taCenter + Width = 106 + end + object cxGridDBColumn8: TcxGridDBColumn + Caption = #25237#22383#25968#37327 + DataBinding.FieldName = 'TPQty' + HeaderAlignmentHorz = taCenter + Width = 133 + end + object TV4Column1: TcxGridDBColumn + Caption = #22238#20179#21305#25968 + DataBinding.FieldName = 'HCps' + HeaderAlignmentHorz = taCenter + Width = 104 + end + object TV4Column2: TcxGridDBColumn + Caption = #22238#20179#25968#37327 + DataBinding.FieldName = 'HCQty' + HeaderAlignmentHorz = taCenter + Width = 92 + end + end + object cxGridLevel3: TcxGridLevel + GridView = TV4 + end + end + end + object CDS_Order: TClientDataSet + Aggregates = <> + Params = <> + Left = 564 + Top = 126 + end + object DS_Order: TDataSource + DataSet = CDS_Order + Left = 644 + Top = 126 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 396 + Top = 110 + end + object CDS_CG: TClientDataSet + Aggregates = <> + Params = <> + Left = 232 + Top = 277 + end + object DS_CG: TDataSource + DataSet = CDS_CG + Left = 272 + Top = 285 + end + object DS_DH: TDataSource + DataSet = CDS_DH + Left = 863 + Top = 273 + end + object CDS_DH: TClientDataSet + Aggregates = <> + Params = <> + Left = 927 + Top = 293 + end + object CDS_TP: TClientDataSet + Aggregates = <> + Params = <> + Left = 364 + Top = 489 + end + object DS_TP: TDataSource + DataSet = CDS_TP + Left = 260 + Top = 465 + end +end diff --git a/艾登贸易管理/U_OrderJD.pas b/艾登贸易管理/U_OrderJD.pas new file mode 100644 index 0000000..b4d21e1 --- /dev/null +++ b/艾登贸易管理/U_OrderJD.pas @@ -0,0 +1,172 @@ +unit U_OrderJD; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, cxStyles, cxCustomData, cxGraphics, + cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGridLevel, + cxClasses, cxControls, cxGridCustomView, cxGrid, cxCheckBox, cxCalendar, + ADODB, DBClient; + +type + TfrmOrderJD = class(TForm) + Panel1: TPanel; + Label1: TLabel; + orderNo: TEdit; + GroupBox1: TGroupBox; + Panel2: TPanel; + GroupBox2: TGroupBox; + GroupBox3: TGroupBox; + GroupBox4: TGroupBox; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column4: TcxGridDBColumn; + v1OrderNo: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1CustomerNoName: TcxGridDBColumn; + v1MPRTCodeName: TcxGridDBColumn; + v1MPrtSpec: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1SordQtY1: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1ordderNote1: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1Column2: TcxGridDBColumn; + CDS_Order: TClientDataSet; + DS_Order: TDataSource; + ADOQueryMain: TADOQuery; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + V2Column1: TcxGridDBColumn; + V2Column2: TcxGridDBColumn; + V2Column3: TcxGridDBColumn; + V2Column4: TcxGridDBColumn; + V2Column5: TcxGridDBColumn; + V2Column6: TcxGridDBColumn; + cxGrid3: TcxGrid; + TV3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + cxGrid4: TcxGrid; + TV4: TcxGridDBTableView; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn7: TcxGridDBColumn; + cxGridDBColumn8: TcxGridDBColumn; + cxGridLevel3: TcxGridLevel; + TV4Column1: TcxGridDBColumn; + TV4Column2: TcxGridDBColumn; + CDS_CG: TClientDataSet; + DS_CG: TDataSource; + DS_DH: TDataSource; + CDS_DH: TClientDataSet; + CDS_TP: TClientDataSet; + DS_TP: TDataSource; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure orderNoKeyPress(Sender: TObject; var Key: Char); + procedure FormShow(Sender: TObject); + private + Procedure InitOrder(); + { Private declarations } + public + { Public declarations } + end; + +var + frmOrderJD: TfrmOrderJD; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun; +{$R *.dfm} +Procedure TfrmOrderJD.InitOrder(); +begin + with adoqueryMain do + begin + close; + sql.Clear; + sql.Add('EXEC P_View_Order_JD10'); + sql.Add('@keyNo='+quotedstr(trim(orderNo.Text))); + sql.Add(',@flag='+quotedstr(trim('0'))); + open; + end; + + SCreateCDS20(adoqueryMain,CDS_Order); + SInitCDSData20(adoqueryMain,CDS_Order); + + with adoqueryMain do + begin + close; + sql.Clear; + sql.Add('EXEC P_View_Order_JD10'); + sql.Add('@keyNo='+quotedstr(trim(orderNo.Text))); + sql.Add(',@flag='+quotedstr(trim('1'))); + open; + end; + + SCreateCDS20(adoqueryMain,CDS_CG); + SInitCDSData20(adoqueryMain,CDS_CG); + + + with adoqueryMain do + begin + close; + sql.Clear; + sql.Add('EXEC P_View_Order_JD10'); + sql.Add('@keyNo='+quotedstr(trim(orderNo.Text))); + sql.Add(',@flag='+quotedstr(trim('2'))); + open; + end; + + SCreateCDS20(adoqueryMain,CDS_DH); + SInitCDSData20(adoqueryMain,CDS_DH); + + with adoqueryMain do + begin + close; + sql.Clear; + sql.Add('EXEC P_View_Order_JD10'); + sql.Add('@keyNo='+quotedstr(trim(orderNo.Text))); + sql.Add(',@flag='+quotedstr(trim('3'))); + open; + end; + + SCreateCDS20(adoqueryMain,CDS_TP); + SInitCDSData20(adoqueryMain,CDS_TP); + +end; +procedure TfrmOrderJD.FormDestroy(Sender: TObject); +begin + frmOrderJD:=nil; +end; + +procedure TfrmOrderJD.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=cafree; +end; + +procedure TfrmOrderJD.orderNoKeyPress(Sender: TObject; var Key: Char); +begin + IF key=#13 then + begin + IF trim(orderNo.Text)='' then exit; + InitOrder(); + end; +end; + +procedure TfrmOrderJD.FormShow(Sender: TObject); +begin + InitOrder(); +end; + +end. diff --git a/艾登贸易管理/U_OrderJDList.dfm b/艾登贸易管理/U_OrderJDList.dfm new file mode 100644 index 0000000..c6aecbd --- /dev/null +++ b/艾登贸易管理/U_OrderJDList.dfm @@ -0,0 +1,562 @@ +object frmOrderJDList: TfrmOrderJDList + Left = -40 + Top = 37 + Width = 1292 + Height = 705 + Caption = #35746#21333#36827#24230#26597#35810 + 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 = 1284 + AutoSize = True + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object ToolButton1: TToolButton + Left = 63 + Top = 0 + Caption = #26597#30475 + ImageIndex = 49 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 122 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1284 + Height = 54 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 22 + Width = 52 + Height = 12 + Caption = #19979#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 161 + Top = 22 + Width = 18 + Height = 12 + Caption = '---' + end + object Label3: TLabel + Left = 283 + Top = 22 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 18 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 179 + Top = 18 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 337 + Top = 18 + Width = 152 + Height = 20 + TabOrder = 2 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 86 + Width = 1284 + Height = 582 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBTableView + OnMouseUp = Tv1MouseUp + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1Column2: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 88 + end + object v1Column8: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 69 + end + object v1Column9: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 61 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'MPRTSpec' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 66 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #25104#20998 + DataBinding.FieldName = 'MPRTCF' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 61 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 83 + end + object v1Column1: TcxGridDBColumn + Caption = #32553#29575 + DataBinding.FieldName = 'MPRTSL' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 57 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = #35746#21333#22791#27880 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object v1Column7: TcxGridDBColumn + Caption = #21488#22836 + DataBinding.FieldName = 'Taitou' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 61 + end + object v1Column5: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #35746#21333#39068#33394 + DataBinding.FieldName = 'OrdColor' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 69 + end + object v1Qty1: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'Qty1' + Visible = False + HeaderAlignmentHorz = taCenter + Hidden = True + Styles.Header = DataLink_TradeManage.Default + Width = 46 + end + object v1Column10: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'OrdQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1PRTUnit: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrdUnit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object v1Column3: TcxGridDBColumn + Caption = #35746#22383#25968#37327 + DataBinding.FieldName = 'ClothHTQty' + OnCustomDrawCell = v1Column3CustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + object v1Column4: TcxGridDBColumn + Caption = #35746#22383#21333#20301 + DataBinding.FieldName = 'ClothHTUnit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1Column6: TcxGridDBColumn + Caption = #21040#22383#25968#37327 + DataBinding.FieldName = 'ClothDHQty' + OnCustomDrawCell = v1Column6CustomDrawCell + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 61 + end + object v1Column11: TcxGridDBColumn + Caption = #25237#22383#25968#37327 + DataBinding.FieldName = 'ClothTPQty' + OnCustomDrawCell = v1Column11CustomDrawCell + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 56 + end + object v1Column12: TcxGridDBColumn + Caption = #25237#22383#21333#20301 + DataBinding.FieldName = 'ClothTPUnit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v1Column13: TcxGridDBColumn + Caption = #25237#22383#39068#33394 + DataBinding.FieldName = 'ClothTPColor' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object v1Column14: TcxGridDBColumn + Caption = #22238#20179#25968#37327 + DataBinding.FieldName = 'ClothHCQty' + OnCustomDrawCell = v1Column14CustomDrawCell + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 58 + end + object v1Column15: TcxGridDBColumn + Caption = #22238#20179#39068#33394 + DataBinding.FieldName = 'HCColor' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 61 + end + object v1Column16: TcxGridDBColumn + Caption = #22238#20179#21333#20301 + DataBinding.FieldName = 'ClothHCUnit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v1Column17: TcxGridDBColumn + Caption = #20837#24211#25968#37327 + DataBinding.FieldName = 'ClothRKQty' + OnCustomDrawCell = v1Column17CustomDrawCell + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object v1Column18: TcxGridDBColumn + Caption = #20837#24211#39068#33394 + DataBinding.FieldName = 'RKColor' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1Column19: TcxGridDBColumn + Caption = #20837#24211#21333#20301 + DataBinding.FieldName = 'ClothRKUnit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 61 + end + object v1Column20: TcxGridDBColumn + Caption = #20986#24211#25968#37327 + DataBinding.FieldName = 'ClothCKQty' + OnCustomDrawCell = v1Column20CustomDrawCell + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 61 + end + object v1Column21: TcxGridDBColumn + Caption = #20986#24211#39068#33394 + DataBinding.FieldName = 'CKColor' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1Column22: TcxGridDBColumn + Caption = #24211#23384#27491#21697#25968 + DataBinding.FieldName = 'KCZPQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FonePurple + Width = 71 + end + object v1Column23: TcxGridDBColumn + Caption = #24211#23384#27425#21697#25968 + DataBinding.FieldName = 'KCCPQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FonePurple + Width = 70 + end + object v1Column24: TcxGridDBColumn + Caption = #24211#23384#30041#26679#25968 + DataBinding.FieldName = 'KCLYQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FonePurple + Width = 71 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel4: TPanel + Left = 62 + Top = 180 + Width = 294 + Height = 213 + TabOrder = 3 + Visible = False + object Label11: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 292 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #20107#20214#35828#26126 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 269 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object RichEdit1: TRichEdit + Left = 1 + Top = 24 + Width = 292 + Height = 188 + Align = alClient + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + end + end + object MovePanel2: TMovePanel + Left = 408 + Top = 192 + Width = 289 + Height = 49 + BevelInner = bvLowered + Caption = #27491#22312#26597#35810#25968#25454#65292#35831#31245#21518#12290#12290#12290 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 672 + Top = 344 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 936 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1000 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1040 + Top = 8 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 784 + Top = 240 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 728 + Top = 168 + end +end diff --git a/艾登贸易管理/U_OrderJDList.pas b/艾登贸易管理/U_OrderJDList.pas new file mode 100644 index 0000000..ce52e34 --- /dev/null +++ b/艾登贸易管理/U_OrderJDList.pas @@ -0,0 +1,446 @@ +unit U_OrderJDList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, + RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, + cxTextEdit, MovePanel; + +type + TfrmOrderJDList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Label2: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNo: TEdit; + Order_Main: TClientDataSet; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1Qty1: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1PRTUnit: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + v1Column13: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + v1Column15: TcxGridDBColumn; + v1Column16: TcxGridDBColumn; + v1Column17: TcxGridDBColumn; + v1Column18: TcxGridDBColumn; + v1Column19: TcxGridDBColumn; + v1Column20: TcxGridDBColumn; + v1Column21: TcxGridDBColumn; + Panel4: TPanel; + Label11: TLabel; + Panel10: TPanel; + Image2: TImage; + RichEdit1: TRichEdit; + MovePanel2: TMovePanel; + v1Column22: TcxGridDBColumn; + v1Column23: TcxGridDBColumn; + v1Column24: TcxGridDBColumn; + ToolButton1: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + procedure Tv1MouseUp(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Image2Click(Sender: TObject); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, + Y: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1Column3CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure v1Column6CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure v1Column11CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure v1Column14CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure v1Column17CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure v1Column20CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + private + FInt,PFInt:Integer; + FLeft,FTop:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + { Private declarations } + public + { Public declarations } + end; + +var + frmOrderJDList: TfrmOrderJDList; + +implementation +uses + U_DataLink,U_ClothContractInPut,U_Fun,U_ProductOrderList,U_ZDYHelp, + U_OrderInPut; + +{$R *.dfm} + +procedure TfrmOrderJDList.FormDestroy(Sender: TObject); +begin + frmOrderJDList:=nil; +end; + +procedure TfrmOrderJDList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmOrderJDList.FormCreate(Sender: TObject); +begin + + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); +end; + +procedure TfrmOrderJDList.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('Ȳѯ',Tv1,'ָʾ'); +end; + +procedure TfrmOrderJDList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec P_View_OrderJD :begdate,:enddate,:Filler,:WSql'); + if Trim(DParameters1)<>'Ȩ' then + Parameters.ParamByName('Filler').Value:=Trim(DName) + else + Parameters.ParamByName('Filler').Value:=''; + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date)); + Parameters.ParamByName('enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',EndDate.Date+1)); + Parameters.ParamByName('WSql').Value:=''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmOrderJDList.InitForm(); +begin + ReadCxGrid('Ȳѯ',Tv1,'ָʾ'); + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-15; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + //InitGrid(); +end; + +procedure TfrmOrderJDList.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmOrderJDList.DelData():Boolean; +begin + +end; + +procedure TfrmOrderJDList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel('ŵϢ',cxGrid1); +end; + +procedure TfrmOrderJDList.TBRafreshClick(Sender: TObject); +begin + MovePanel2.Visible:=True; + MovePanel2.Refresh; + InitGrid(); + MovePanel2.Visible:=False; +end; + +procedure TfrmOrderJDList.OrderNoChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmOrderJDList.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmOrderJDList.Tv2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + FInt:=2; +end; + +procedure TfrmOrderJDList.OrderNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(OrderNo.Text))<4 then Exit; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec P_View_OrderJD :begdate,:enddate,:Filler,:WSql'); + if Trim(DParameters1)<>'Ȩ' then + Parameters.ParamByName('Filler').Value:=Trim(DName) + else + Parameters.ParamByName('Filler').Value:=''; + Parameters.ParamByName('begdate').Value:=''; + Parameters.ParamByName('enddate').Value:=''; + Parameters.ParamByName('WSql').Value:=' and A.OrderNo like'''+'%'+Trim(OrderNo.Text)+'%'+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + MovePanel2.Visible:=False; + end; +end; + +procedure TfrmOrderJDList.Tv1MouseUp(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); +begin + FLeft:=X; + FTop:=Y; +end; + +procedure TfrmOrderJDList.Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + Panel4.Left:=FLeft; + Panel4.Top:=FTop+110; + Panel4.Visible:=True; + Panel4.Refresh; + Panel10.Caption:=Trim(TV1.Controller.FocusedColumn.Caption); + RichEdit1.Text:=Order_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString; +end; + +procedure TfrmOrderJDList.Image2Click(Sender: TObject); +begin + Panel4.Visible:=False; +end; + +procedure TfrmOrderJDList.Panel10MouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel4).Perform(WM_SYSCOMMAND,$F012,0); +end; + +procedure TfrmOrderJDList.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible:=False; + TBSave.Visible:=False; + ScrollBox1.Enabled:=False; + Tv1.OptionsSelection.CellSelect:=False; + PriceFlag:=99; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmOrderJDList.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmOrderJDList.v1Column3CustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +var + Id:Integer; +begin + Id:=TV1.GetColumnByFieldName('ClothHTQty').Index;//;-TV1.GroupedItemCount; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id]>0 then + begin + ACanvas.Brush.Color:=clRed; + end; +end; + +procedure TfrmOrderJDList.v1Column6CustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +var + Id:Integer; +begin + Id:=TV1.GetColumnByFieldName('ClothDHQty').Index;//;-TV1.GroupedItemCount; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id]>0 then + begin + ACanvas.Brush.Color:=clRed; + end; +end; + +procedure TfrmOrderJDList.v1Column11CustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +var + Id:Integer; +begin + Id:=TV1.GetColumnByFieldName('ClothTPQty').Index;//;-TV1.GroupedItemCount; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id]>0 then + begin + ACanvas.Brush.Color:=clRed; + end; +end; + +procedure TfrmOrderJDList.v1Column14CustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +var + Id:Integer; +begin + Id:=TV1.GetColumnByFieldName('ClothHCQty').Index;//;-TV1.GroupedItemCount; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id]>0 then + begin + ACanvas.Brush.Color:=clRed; + end; +end; + +procedure TfrmOrderJDList.v1Column17CustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +var + Id:Integer; +begin + Id:=TV1.GetColumnByFieldName('ClothRKQty').Index;//;-TV1.GroupedItemCount; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id]>0 then + begin + ACanvas.Brush.Color:=clRed; + end; +end; + +procedure TfrmOrderJDList.v1Column20CustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +var + Id:Integer; +begin + Id:=TV1.GetColumnByFieldName('ClothCKQty').Index;//;-TV1.GroupedItemCount; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id]>0 then + begin + ACanvas.Brush.Color:=clRed; + end; +end; + +end. diff --git a/艾登贸易管理/U_OrderSel.dfm b/艾登贸易管理/U_OrderSel.dfm new file mode 100644 index 0000000..6c1b0b7 --- /dev/null +++ b/艾登贸易管理/U_OrderSel.dfm @@ -0,0 +1,349 @@ +object frmOrderSel: TfrmOrderSel + Left = 44 + Top = 126 + Width = 1171 + Height = 587 + Caption = #35746#21333#36873#25321 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 16 + object cxGrid1: TcxGrid + Left = 0 + Top = 89 + Width = 1163 + Height = 461 + Align = alClient + PopupMenu = PopupMenu1 + TabOrder = 0 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = v1PRTMF + end + item + Kind = skSum + Column = v1PRTKZ + end + item + Kind = skSum + Column = v2Column1 + end + item + Kind = skSum + Column = v2Column4 + end + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + Column = v2Column6 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Footer = DataLink_TradeManage.Default + object v2Column3: TcxGridDBColumn + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 84 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNoM' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 86 + end + object v2Column2: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 93 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 119 + end + object v1Column10: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 80 + end + object v1Column14: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 75 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 80 + end + object v2Column7: TcxGridDBColumn + Caption = #33457#22411#33457#21495 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 81 + end + object v1PRTMF: TcxGridDBColumn + Caption = #27491#21697#21305#25968 + DataBinding.FieldName = 'ZPPS' + HeaderAlignmentHorz = taRightJustify + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle1 + Width = 75 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #27491#21697#25968#37327 + DataBinding.FieldName = 'ZPQty' + HeaderAlignmentHorz = taRightJustify + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle1 + Width = 76 + end + object v2Column1: TcxGridDBColumn + Caption = #27425#21697#21305#25968 + DataBinding.FieldName = 'CPPS' + HeaderAlignmentHorz = taRightJustify + Options.Focusing = False + Styles.Content = cxStyle2 + Width = 73 + end + object v2Column4: TcxGridDBColumn + Caption = #27425#21697#25968#37327 + DataBinding.FieldName = 'CPQty' + HeaderAlignmentHorz = taRightJustify + Options.Focusing = False + Styles.Content = cxStyle2 + Width = 68 + end + object v2Column5: TcxGridDBColumn + Caption = #22810#25340#21305#25968 + DataBinding.FieldName = 'LYPS' + HeaderAlignmentHorz = taRightJustify + Options.Focusing = False + Styles.Content = cxStyle3 + Width = 76 + end + object v2Column6: TcxGridDBColumn + Caption = #22810#25340#25968#37327 + DataBinding.FieldName = 'LYQty' + HeaderAlignmentHorz = taRightJustify + Options.Focusing = False + Styles.Content = cxStyle3 + Width = 78 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv2 + end + end + object Panel1: TPanel + Left = 0 + Top = 0 + Width = 1163 + Height = 89 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 1 + object Label2: TLabel + Left = 35 + Top = 19 + Width = 48 + Height = 16 + Caption = #35746#21333#21495 + end + object Label3: TLabel + Left = 268 + Top = 19 + Width = 32 + Height = 16 + Caption = #39068#33394 + end + object Label8: TLabel + Left = 467 + Top = 19 + Width = 64 + Height = 16 + Caption = #23458' '#25143 + end + object OrderNoM: TEdit + Tag = 2 + Left = 83 + Top = 16 + Width = 121 + Height = 24 + TabOrder = 0 + OnChange = OrderNoMChange + end + object PRTColor: TEdit + Tag = 2 + Left = 301 + Top = 16 + Width = 111 + Height = 24 + TabOrder = 1 + OnChange = OrderNoMChange + end + object Button1: TButton + Left = 687 + Top = 16 + Width = 75 + Height = 25 + Caption = #21047#26032 + TabOrder = 2 + OnClick = Button1Click + end + object Button2: TButton + Left = 687 + Top = 48 + Width = 75 + Height = 25 + Caption = #30830#23450 + TabOrder = 3 + OnClick = Button2Click + end + object Button3: TButton + Left = 783 + Top = 48 + Width = 75 + Height = 25 + Caption = #20851#38381 + TabOrder = 4 + OnClick = Button3Click + end + object CustomerNoName: TEdit + Tag = 2 + Left = 533 + Top = 15 + Width = 119 + Height = 24 + TabOrder = 5 + OnChange = OrderNoMChange + end + end + object CDS_OrderSel: TClientDataSet + Aggregates = <> + Params = <> + Left = 592 + Top = 208 + end + object DataSource1: TDataSource + DataSet = CDS_OrderSel + Left = 680 + Top = 224 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 784 + Top = 184 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 848 + Top = 184 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 624 + Top = 208 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 728 + Top = 272 + end + object PopupMenu1: TPopupMenu + Left = 424 + Top = 248 + object N1: TMenuItem + Caption = #20840#36873 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #20840#24323 + OnClick = N2Click + end + end + object cxStyleRepository1: TcxStyleRepository + object cxStyle1: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + end + object cxStyleRepository2: TcxStyleRepository + object cxStyle2: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clRed + end + end + object cxStyleRepository3: TcxStyleRepository + object cxStyle3: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clPurple + end + end +end diff --git a/艾登贸易管理/U_OrderSel.pas b/艾登贸易管理/U_OrderSel.pas new file mode 100644 index 0000000..95328e9 --- /dev/null +++ b/艾登贸易管理/U_OrderSel.pas @@ -0,0 +1,211 @@ +unit U_OrderSel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, ADODB, DBClient, ComCtrls, + ExtCtrls, cxGridLevel, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, cxCheckBox, Menus; + +type + TfrmOrderSel = class(TForm) + cxGrid1: TcxGrid; + Tv2: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + Panel1: TPanel; + Label2: TLabel; + OrderNoM: TEdit; + Label3: TLabel; + PRTColor: TEdit; + CDS_OrderSel: TClientDataSet; + DataSource1: TDataSource; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + Button1: TButton; + Button2: TButton; + Button3: TButton; + cxGridPopupMenu1: TcxGridPopupMenu; + v2Column2: TcxGridDBColumn; + Label8: TLabel; + CustomerNoName: TEdit; + v2Column3: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + v2Column1: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyleRepository2: TcxStyleRepository; + cxStyle2: TcxStyle; + cxStyleRepository3: TcxStyleRepository; + cxStyle3: TcxStyle; + v2Column7: TcxGridDBColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure Button2Click(Sender: TObject); + procedure FormDestroy(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + public + { Public declarations } + end; + +var + frmOrderSel: TfrmOrderSel; + +implementation +uses + U_DataLink,U_Fun ; + +{$R *.dfm} + +procedure TfrmOrderSel.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmOrderSel.Button2Click(Sender: TObject); +var + KHName:String; +begin + if CDS_OrderSel.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡݣ','ʾ',0); + Exit; + end; + CDS_OrderSel.DisableControls; + KHName:=''; + with CDS_OrderSel do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean=True then + begin + if Trim(KHName)='' then + begin + KHName:=Trim(fieldbyname('CustomerNo').AsString); + end else + begin + if Trim(fieldbyname('CustomerNo').AsString)<>KHName then + begin + CDS_OrderSel.EnableControls; + Application.MessageBox('ѡͬͻ','ʾ',0); + Exit; + end; + end; + end; + Next; + end; + end; + CDS_OrderSel.EnableControls; + ModalResult:=1; +end; + +procedure TfrmOrderSel.FormDestroy(Sender: TObject); +begin + frmOrderSel:=nil; +end; + +procedure TfrmOrderSel.Button3Click(Sender: TObject); +begin + ModalResult:=-1; + WriteCxGrid('ѡ',Tv2,'Ʒֿ'); + Close; +end; + +procedure TfrmOrderSel.FormShow(Sender: TObject); +begin + ReadCxGrid('ѡ',Tv2,'Ʒֿ'); + InitGrid(); +end; + +procedure TfrmOrderSel.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select A.OrderNo OrderNoM,A.OrderNo,A.CustomerNoName,A.CustomerNo,A.MPRTCodeName,A.MPRTMF,A.MPRTKZ,B.*'); + sql.Add(',ZPPS=(select Count(*) from CK_BanCP_CR CR Inner join CK_BanCP_KC KC on CR.CRID=KC.CRID '); + sql.Add(' where CR.SubId=B.SubId and CR.CRType='''' and (KC.KCQty>0 or KCKGQty>0) and CPType=''Ʒ'') '); + sql.Add(',ZPQty=(select sum(KCQty) from CK_BanCP_CR CR Inner join CK_BanCP_KC KC on CR.CRID=KC.CRID '); + sql.Add(' where CR.SubId=B.SubId and CR.CRType='''' and (KC.KCQty>0 or KCKGQty>0) and CPType=''Ʒ'') '); + sql.Add(',CPPS=(select Count(*) from CK_BanCP_CR CR Inner join CK_BanCP_KC KC on CR.CRID=KC.CRID '); + sql.Add(' where CR.SubId=B.SubId and CR.CRType='''' and (KC.KCQty>0 or KCKGQty>0) and CPType=''Ʒ'') '); + sql.Add(',CPQty=(select sum(KCQty) from CK_BanCP_CR CR Inner join CK_BanCP_KC KC on CR.CRID=KC.CRID '); + sql.Add(' where CR.SubId=B.SubId and CR.CRType='''' and (KC.KCQty>0 or KCKGQty>0) and CPType=''Ʒ'') '); + sql.Add(',LYPS=(select Count(*) from CK_BanCP_CR CR Inner join CK_BanCP_KC KC on CR.CRID=KC.CRID '); + sql.Add(' where CR.SubId=B.SubId and CR.CRType='''' and (KC.KCQty>0 or KCKGQty>0) and CPType='''') '); + sql.Add(',LYQty=(select sum(KCQty) from CK_BanCP_CR CR Inner join CK_BanCP_KC KC on CR.CRID=KC.CRID '); + sql.Add(' where CR.SubId=B.SubId and CR.CRType='''' and (KC.KCQty>0 or KCKGQty>0) and CPType='''') '); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.Mainid'); + sql.Add(' where exists(select * from CK_BanCP_CR AA inner join CK_BanCP_KC BB on AA.CRID=BB.CRID '); + sql.Add(' where AA.MainId=A.MainId and AA.SubId=B.SubId and AA.CRType='''' and (BB.KCQty>0 or BB.KCKGQty>0))'); + + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_OrderSel); + SInitCDSData20(ADOQueryMain,CDS_OrderSel); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmOrderSel.Button1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmOrderSel.OrderNoMChange(Sender: TObject); +begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_OrderSel); + SInitCDSData20(ADOQueryMain,CDS_OrderSel); +end; + +procedure TfrmOrderSel.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + ModalResult:=1; +end; + +procedure TfrmOrderSel.N1Click(Sender: TObject); +begin + SelOKNo(CDS_OrderSel,True); +end; + +procedure TfrmOrderSel.N2Click(Sender: TObject); +begin + SelOKNo(CDS_OrderSel,False); +end; + +end. diff --git a/艾登贸易管理/U_OrderSelRK.dfm b/艾登贸易管理/U_OrderSelRK.dfm new file mode 100644 index 0000000..1e0dfee --- /dev/null +++ b/艾登贸易管理/U_OrderSelRK.dfm @@ -0,0 +1,334 @@ +object frmOrderSelRK: TfrmOrderSelRK + Left = 115 + Top = 161 + Width = 1171 + Height = 587 + Caption = #35746#21333#36873#25321 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 16 + object Panel1: TPanel + Left = 0 + Top = 0 + Width = 1155 + Height = 89 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 0 + object Label2: TLabel + Left = 35 + Top = 19 + Width = 48 + Height = 16 + Caption = #35746#21333#21495 + end + object Label3: TLabel + Left = 268 + Top = 19 + Width = 32 + Height = 16 + Caption = #39068#33394 + end + object Label8: TLabel + Left = 459 + Top = 19 + Width = 64 + Height = 16 + Caption = #23458' '#25143 + end + object OrderNo: TEdit + Tag = 2 + Left = 83 + Top = 16 + Width = 121 + Height = 24 + TabOrder = 0 + OnChange = OrderNoChange + end + object PRTColor: TEdit + Tag = 2 + Left = 301 + Top = 16 + Width = 111 + Height = 24 + TabOrder = 1 + OnChange = OrderNoChange + end + object Button1: TButton + Left = 687 + Top = 16 + Width = 75 + Height = 25 + Caption = #21047#26032 + TabOrder = 2 + OnClick = Button1Click + end + object Button2: TButton + Left = 687 + Top = 48 + Width = 75 + Height = 25 + Caption = #30830#23450 + TabOrder = 3 + OnClick = Button2Click + end + object Button3: TButton + Left = 783 + Top = 48 + Width = 75 + Height = 25 + Caption = #20851#38381 + TabOrder = 4 + OnClick = Button3Click + end + object CustomerNoName: TEdit + Tag = 2 + Left = 525 + Top = 15 + Width = 119 + Height = 24 + TabOrder = 5 + OnChange = OrderNoChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 89 + Width = 1155 + Height = 460 + Align = alClient + TabOrder = 1 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = v1PRTMF + end + item + Kind = skSum + Column = v1PRTKZ + end + item + Kind = skSum + Column = v2Column1 + end + item + Kind = skSum + Column = v2Column4 + end + item + Kind = skSum + Column = v2Column5 + end + item + Kind = skSum + Column = v2Column6 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Footer = DataLink_TradeManage.Default + object v2Column3: TcxGridDBColumn + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 84 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 86 + end + object v2Column2: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 93 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 119 + end + object v1Column10: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 80 + end + object v1Column14: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 75 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 80 + end + object v2Column7: TcxGridDBColumn + Caption = #33457#22411#33457#21495 + DataBinding.FieldName = 'PRTHX' + Width = 76 + end + object v1PRTMF: TcxGridDBColumn + Caption = #27491#21697#21305#25968 + DataBinding.FieldName = 'ZPPS' + HeaderAlignmentHorz = taRightJustify + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle1 + Width = 75 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #27491#21697#25968#37327 + DataBinding.FieldName = 'ZPQty' + HeaderAlignmentHorz = taRightJustify + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle1 + Width = 76 + end + object v2Column1: TcxGridDBColumn + Caption = #27425#21697#21305#25968 + DataBinding.FieldName = 'CPPS' + HeaderAlignmentHorz = taRightJustify + Options.Focusing = False + Styles.Content = cxStyle2 + Width = 73 + end + object v2Column4: TcxGridDBColumn + Caption = #27425#21697#25968#37327 + DataBinding.FieldName = 'CPQty' + HeaderAlignmentHorz = taRightJustify + Options.Focusing = False + Styles.Content = cxStyle2 + Width = 68 + end + object v2Column5: TcxGridDBColumn + Caption = #22810#25340#21305#25968 + DataBinding.FieldName = 'LYPS' + HeaderAlignmentHorz = taRightJustify + Options.Focusing = False + Styles.Content = cxStyle3 + Width = 76 + end + object v2Column6: TcxGridDBColumn + Caption = #22810#25340#25968#37327 + DataBinding.FieldName = 'LYQty' + HeaderAlignmentHorz = taRightJustify + Options.Focusing = False + Styles.Content = cxStyle3 + Width = 78 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv2 + end + end + object CDS_OrderSel: TClientDataSet + Aggregates = <> + Params = <> + Left = 592 + Top = 208 + end + object DataSource1: TDataSource + DataSet = CDS_OrderSel + Left = 680 + Top = 224 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 784 + Top = 184 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 848 + Top = 184 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 624 + Top = 208 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 728 + Top = 272 + end + object cxStyleRepository1: TcxStyleRepository + object cxStyle1: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + end + object cxStyleRepository2: TcxStyleRepository + object cxStyle2: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clRed + end + end + object cxStyleRepository3: TcxStyleRepository + object cxStyle3: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clPurple + end + end +end diff --git a/艾登贸易管理/U_OrderSelRK.pas b/艾登贸易管理/U_OrderSelRK.pas new file mode 100644 index 0000000..e73d540 --- /dev/null +++ b/艾登贸易管理/U_OrderSelRK.pas @@ -0,0 +1,199 @@ +unit U_OrderSelRK; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, ADODB, DBClient, ComCtrls, + ExtCtrls, cxGridLevel, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, cxCheckBox; + +type + TfrmOrderSelRK = class(TForm) + Panel1: TPanel; + Label2: TLabel; + OrderNo: TEdit; + Label3: TLabel; + PRTColor: TEdit; + CDS_OrderSel: TClientDataSet; + DataSource1: TDataSource; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + Button1: TButton; + Button2: TButton; + Button3: TButton; + cxGridPopupMenu1: TcxGridPopupMenu; + Label8: TLabel; + CustomerNoName: TEdit; + cxGrid1: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column3: TcxGridDBColumn; + v1OrderNo: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyleRepository2: TcxStyleRepository; + cxStyle2: TcxStyle; + cxStyleRepository3: TcxStyleRepository; + cxStyle3: TcxStyle; + v2Column7: TcxGridDBColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure Button2Click(Sender: TObject); + procedure FormDestroy(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + { Private declarations } + + procedure InitGrid(); + public + { Public declarations } + end; + +var + frmOrderSelRK: TfrmOrderSelRK; + +implementation +uses + U_DataLink,U_Fun ; + +{$R *.dfm} + +procedure TfrmOrderSelRK.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmOrderSelRK.Button2Click(Sender: TObject); +var + KHName:String; +begin + if CDS_OrderSel.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡݣ','ʾ',0); + Exit; + end; + CDS_OrderSel.DisableControls; + KHName:=''; + with CDS_OrderSel do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean=True then + begin + if Trim(KHName)='' then + begin + KHName:=Trim(fieldbyname('CustomerNo').AsString); + end else + begin + if Trim(fieldbyname('CustomerNo').AsString)<>KHName then + begin + Application.MessageBox('ѡͬͻ','ʾ',0); + Exit; + end; + end; + end; + Next; + end; + end; + CDS_OrderSel.EnableControls; + ModalResult:=1; +end; + +procedure TfrmOrderSelRK.FormDestroy(Sender: TObject); +begin + frmOrderSelRK:=nil; +end; + +procedure TfrmOrderSelRK.Button3Click(Sender: TObject); +begin + ModalResult:=-1; + WriteCxGrid('ѡ',Tv2,'Ʒֿ'); + Close; +end; + +procedure TfrmOrderSelRK.FormShow(Sender: TObject); +begin + ReadCxGrid('ѡ',Tv2,'Ʒֿ'); + InitGrid(); +end; + +procedure TfrmOrderSelRK.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select A.OrderNo,A.CustomerNoName,A.CustomerNo,A.MPRTCodeName,A.MainId,B.SubId,B.PRTColor,B.OrderUnit,B.PRTOrderQty'); + sql.Add(',A.MPRTMF,A.MPRTKZ,B.PRTHX'); + sql.Add(',ZPPS=(select Count(*) from WFB_MJJY WY '); + sql.Add(' where WY.SubId=B.SubId and isnull(WY.MJStr2,'''')=''δ'' and WY.MJType=''Ʒ'') '); + sql.Add(',ZPQty=(select sum(MJLen) from WFB_MJJY WY '); + sql.Add(' where WY.SubId=B.SubId and isnull(WY.MJStr2,'''')=''δ'' and WY.MJType=''Ʒ'') '); + sql.Add(',CPPS=(select Count(*) from WFB_MJJY WY '); + sql.Add(' where WY.SubId=B.SubId and isnull(WY.MJStr2,'''')=''δ'' and WY.MJType=''Ʒ'') '); + sql.Add(',CPQty=(select sum(MJLen) from WFB_MJJY WY '); + sql.Add(' where WY.SubId=B.SubId and isnull(WY.MJStr2,'''')=''δ'' and WY.MJType=''Ʒ'') '); + sql.Add(',LYPS=(select Count(*) from WFB_MJJY WY '); + sql.Add(' where WY.SubId=B.SubId and isnull(WY.MJStr2,'''')=''δ'' and WY.MJType='''') '); + sql.Add(',LYQty=(select sum(MJLen) from WFB_MJJY WY '); + sql.Add(' where WY.SubId=B.SubId and isnull(WY.MJStr2,'''')=''δ'' and WY.MJType='''') '); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.Mainid'); + sql.Add(' where exists(select * from WFB_MJJY AA '); + sql.Add(' where AA.MainId=A.MainId and AA.SubId=B.SubId and isnull(AA.MJStr2,'''')=''δ'' )'); + + + + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_OrderSel); + SInitCDSData20(ADOQueryMain,CDS_OrderSel); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmOrderSelRK.Button1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmOrderSelRK.OrderNoChange(Sender: TObject); +begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_OrderSel); + SInitCDSData20(ADOQueryMain,CDS_OrderSel); +end; + +procedure TfrmOrderSelRK.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + ModalResult:=1; +end; + +end. diff --git a/艾登贸易管理/U_OrderStatus.dfm b/艾登贸易管理/U_OrderStatus.dfm new file mode 100644 index 0000000..ea0d630 --- /dev/null +++ b/艾登贸易管理/U_OrderStatus.dfm @@ -0,0 +1,593 @@ +object frmOrderStatus: TfrmOrderStatus + Left = 41 + Top = 136 + Width = 1154 + Height = 577 + Caption = #35746#21333#29366#24577 + 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 = 1146 + 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_WFBOrder.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + end + object TBExport: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBTP: TToolButton + Left = 189 + Top = 0 + Caption = #26356#26032 + ImageIndex = 106 + OnClick = TBTPClick + end + object TBClose: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1146 + Height = 42 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #26597#35810#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 161 + Top = 15 + Width = 18 + Height = 12 + Caption = '---' + end + object Label3: TLabel + Left = 283 + Top = 15 + Width = 52 + Height = 12 + Caption = #35746#21333#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 430 + Top = 15 + Width = 26 + Height = 12 + Caption = #20195#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 179 + Top = 11 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 336 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = WFBCodeNameChange + end + object WFBCodeName: TEdit + Tag = 2 + Left = 459 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = WFBCodeNameChange + end + end + object cxGrid1: TcxGrid + Left = 16 + Top = 96 + Width = 1121 + Height = 369 + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBOrder.SHuangSe + Styles.IncSearch = DataLink_WFBOrder.SHuangSe + Styles.Selection = DataLink_WFBOrder.SHuangSe + Styles.Header = DataLink_WFBOrder.FonePurple + object v1Column3: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 39 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#32534#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 72 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'Customnoname' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 66 + end + object v1Column2: TcxGridDBColumn + Caption = #20195#21495 + DataBinding.FieldName = 'WFBCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'WFBFK' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 62 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'WFBKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 74 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'OrdQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 58 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'OrdUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 52 + end + object v1OrderDate: TcxGridDBColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrderDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 59 + end + object v1Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'OrdPrice' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 57 + end + object v1PRTQty: TcxGridDBColumn + Caption = #35745#20215#21333#20301 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 58 + end + object v1Note: TcxGridDBColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 67 + end + object v1Column26: TcxGridDBColumn + Tag = 2 + Caption = #24050#23436#25104 + DataBinding.FieldName = 'OSFlag10' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 48 + end + object v1Column5: TcxGridDBColumn + Tag = 2 + Caption = #24050#30830#35748 + DataBinding.FieldName = 'OSFlag2' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 47 + end + object v1Column6: TcxGridDBColumn + Tag = 2 + Caption = #29983#20135#26085#26399 + DataBinding.FieldName = 'OSDate1' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ImmediatePost = True + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 64 + end + object v1Column7: TcxGridDBColumn + Tag = 2 + Caption = #24050#20837#24211 + DataBinding.FieldName = 'OSFlag3' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 54 + end + object v1Column8: TcxGridDBColumn + Tag = 2 + Caption = #24050#21457#36816 + DataBinding.FieldName = 'OSFlag4' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 56 + end + object v1Column10: TcxGridDBColumn + Tag = 2 + Caption = #38470#36816 + DataBinding.FieldName = 'OSFlag5' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 38 + end + object v1Column11: TcxGridDBColumn + Tag = 2 + Caption = #31354#36816 + DataBinding.FieldName = 'OSFlag6' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 33 + end + object v1Column9: TcxGridDBColumn + Tag = 2 + Caption = #28023#36816 + DataBinding.FieldName = 'OSFlag7' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 36 + end + object v1Column12: TcxGridDBColumn + Tag = 2 + Caption = '40HQ' + DataBinding.FieldName = 'OSQty1' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 34 + end + object v1Column13: TcxGridDBColumn + Tag = 2 + Caption = '40GP' + DataBinding.FieldName = 'OSQty2' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 36 + end + object v1Column14: TcxGridDBColumn + Tag = 2 + Caption = '20GP' + DataBinding.FieldName = 'OSQty3' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 36 + end + object v1Column15: TcxGridDBColumn + Tag = 2 + Caption = 'LCL' + DataBinding.FieldName = 'OSQty4' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 29 + end + object v1Column16: TcxGridDBColumn + Tag = 2 + Caption = #36135#20195#21517#31216 + DataBinding.FieldName = 'OSStr1' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column16PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 58 + end + object v1Column17: TcxGridDBColumn + Tag = 2 + Caption = #35746#33329#26085#26399 + DataBinding.FieldName = 'OSDate2' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ImmediatePost = True + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 62 + end + object v1Column18: TcxGridDBColumn + Tag = 2 + Caption = #35746#33329#32534#21495 + DataBinding.FieldName = 'OSStr2' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 60 + end + object v1Column19: TcxGridDBColumn + Tag = 2 + Caption = #35013#26588#26085#26399 + DataBinding.FieldName = 'OSDate3' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ImmediatePost = True + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 60 + end + object v1Column20: TcxGridDBColumn + Tag = 2 + Caption = 'ETD' + DataBinding.FieldName = 'OSDate6' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 59 + end + object v1Column21: TcxGridDBColumn + Tag = 2 + Caption = 'ETA' + DataBinding.FieldName = 'OSDate7' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 60 + end + object v1Column22: TcxGridDBColumn + Tag = 2 + Caption = #20184#27454#26085#26399 + DataBinding.FieldName = 'OSDate4' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ImmediatePost = True + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 59 + end + object v1Column23: TcxGridDBColumn + Tag = 2 + Caption = #24050#20184#27454 + DataBinding.FieldName = 'OSFlag8' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 50 + end + object v1Column27: TcxGridDBColumn + Tag = 2 + Caption = #20184#27454#22791#27880 + DataBinding.FieldName = 'OSNote1' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 70 + end + object v1Column24: TcxGridDBColumn + Tag = 2 + Caption = #25910#27454#26085#26399 + DataBinding.FieldName = 'OSDate5' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ImmediatePost = True + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 58 + end + object v1Column25: TcxGridDBColumn + Tag = 2 + Caption = #24050#25910#27454 + DataBinding.FieldName = 'OSFlag9' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 46 + end + object v1Column28: TcxGridDBColumn + Tag = 2 + Caption = #25910#27454#22791#27880 + DataBinding.FieldName = 'OSNote2' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.FontBlue + Width = 65 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 576 + Top = 176 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 608 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + Parameters = <> + Left = 648 + Top = 40 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 688 + Top = 40 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 736 + Top = 40 + end +end diff --git a/艾登贸易管理/U_OrderStatus.pas b/艾登贸易管理/U_OrderStatus.pas new file mode 100644 index 0000000..d831446 --- /dev/null +++ b/艾登贸易管理/U_OrderStatus.pas @@ -0,0 +1,306 @@ +unit U_OrderStatus; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, ADODB, DBClient, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, StdCtrls, ComCtrls, ExtCtrls, + ToolWin, cxCalendar, cxButtonEdit, cxCheckBox; + +type + TfrmOrderStatus = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBExport: TToolButton; + TBClose: TToolButton; + TBTP: TToolButton; + Panel1: TPanel; + Label1: TLabel; + Label2: TLabel; + Label3: TLabel; + Label5: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + OrderNo: TEdit; + WFBCodeName: TEdit; + cxGridPopupMenu1: TcxGridPopupMenu; + DataSource1: TDataSource; + Order_Main: TClientDataSet; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column3: TcxGridDBColumn; + v1OrderNo: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1OrderDate: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1PRTQty: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + v1Column13: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + v1Column15: TcxGridDBColumn; + v1Column16: TcxGridDBColumn; + v1Column17: TcxGridDBColumn; + v1Column18: TcxGridDBColumn; + v1Column19: TcxGridDBColumn; + v1Column20: TcxGridDBColumn; + v1Column21: TcxGridDBColumn; + v1Column22: TcxGridDBColumn; + v1Column23: TcxGridDBColumn; + v1Column24: TcxGridDBColumn; + v1Column25: TcxGridDBColumn; + v1Column26: TcxGridDBColumn; + v1Column27: TcxGridDBColumn; + v1Column28: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBRafreshClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure WFBCodeNameChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure v1Column16PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + private + { Private declarations } + procedure InitGrid(); + function DelData():Boolean; + public + { Public declarations } + end; + +var + frmOrderStatus: TfrmOrderStatus; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmOrderStatus.FormDestroy(Sender: TObject); +begin + frmOrderStatus:=nil; +end; + +procedure TfrmOrderStatus.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmOrderStatus.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; +procedure TfrmOrderStatus.InitGrid(); +var + fsj:String; +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select Customnoname=C.ZDYName,A.MainID As FMainId ,'); + sql.Add(' case when A.Chker<>'''' then cast(1 as bit) else cast(0 as bit) end as OSFlag2,'); + sql.Add(' case when B.OSDate1 is null then BegSCDate else B.OSDate1 end as OSDate1,'); + sql.Add(' case when B.OSDate3 is null then ZGDate else B.OSDate3 end as OSDate3,'); + sql.Add(' case when B.OSDate6 is null then ETDDate else B.OSDate6 end as OSDate6,'); + sql.Add(' case when B.OSDate7 is null then ETADate else B.OSDate7 end as OSDate7,A.*,B.* '); + SQL.Add('from WFBOrder_Main A left join WFBOrder_Status B on A.MainId=B.MainId'); + sql.Add('left join KH_ZDY C on A.Customno=C.ZDYNO and C.Type=''CustomNoName'' '); + sql.Add('where A.OrderDate>=:begdate and A.OrderDate<:EndDate'); + Parameters.ParamByName('Begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime)); + Parameters.ParamByName('EndDate').Value:=Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmOrderStatus.FormShow(Sender: TObject); +begin + ReadCxGrid('״̬бF',Tv1,'޷IJ'); + InitGrid(); + if Trim(DParameters1)='鿴' then + begin + TBTP.Visible:=False; + Tv1.OptionsSelection.CellSelect:=False; + end; +end; + +procedure TfrmOrderStatus.WFBCodeNameChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmOrderStatus.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('״̬бF',Tv1,'޷IJ'); +end; + +procedure TfrmOrderStatus.FormCreate(Sender: TObject); +begin + cxGrid1.Align:=alClient; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); +end; + +procedure TfrmOrderStatus.TBTPClick(Sender: TObject); + var + FQty,FQty1,MaxNo:String; +begin + if Order_Main.IsEmpty then Exit; + BegDate.SetFocus; + try + ADOQueryCmd.Connection.BeginTrans; + // with Order_Main do + //begin + //First; + // while not Eof do + //begin + {if Trim(Order_Main.fieldbyname('FHQty').AsString)='' then + FQty:='0.0' + else + FQty:=Trim(Order_Main.fieldbyname('FHQty').AsString); + if Trim(Order_Main.fieldbyname('Qty1').AsString)='' then + FQty1:='0.0' + else + FQty1:=Trim(Order_Main.fieldbyname('Qty1').AsString); } + if Trim(Order_Main.fieldbyname('OSId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,maxno,'OS','WFBOrder_Status',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_Main.fieldbyname('OSId').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFBOrder_Status where OSId='''+Trim(Order_Main.fieldbyname('OSId').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(Order_Main.fieldbyname('OSId').AsString)='' then + Append + else + Edit; + FieldByName('OSId').Value:=Trim(maxno); + FieldByName('MainId').Value:=Trim(Order_Main.fieldbyname('FMainId').AsString); + SSetSaveDataCDSNew(ADOQueryCmd,Tv1,Order_Main,'Order_Sub_To',2); + if Trim(Order_Main.fieldbyname('OSID').AsString)<>'' then + begin + FieldByName('Edittime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('Editer').Value:=Trim(DName); + end else + begin + FieldByName('Filltime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('Filler').Value:=Trim(DName); + end; + Post; + end; + //Next; + //end; + with Order_Main do + begin + Edit; + FieldByName('OSId').Value:=Trim(maxno); + Post; + end; + //end; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('³ɹ','ʾ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +function TfrmOrderStatus.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Order_Sub_KC where KCId='''+Trim(Order_Main.fieldbyname('KCId').AsString)+''''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmOrderStatus.TBExportClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + TcxGridToExcel('״̬б',cxGrid1); +end; + +procedure TfrmOrderStatus.v1Column16PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='hdmc'; + flagname:=''; + if ShowModal=1 then + begin + Order_Main.Edit; + Order_Main.FieldByName('OSStr1').Value:=ClientDataSet1.fieldbyname('ZDYName').AsString; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +end. diff --git a/艾登贸易管理/U_OrderSubFH.dfm b/艾登贸易管理/U_OrderSubFH.dfm new file mode 100644 index 0000000..97fb6a1 --- /dev/null +++ b/艾登贸易管理/U_OrderSubFH.dfm @@ -0,0 +1,496 @@ +object frmOrderSubFH: TfrmOrderSubFH + Left = 40 + Top = 97 + Width = 1154 + Height = 577 + Caption = #25104#21697#21457#36135 + 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 = 1146 + Height = 33 + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_OrderManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + end + object TBAdd: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #21457#36135 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBDel: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object TBExport: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + end + object ToolButton1: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #20840#36873 + ImageIndex = 106 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 441 + Top = 0 + AutoSize = True + Caption = #20840#24323 + ImageIndex = 107 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 504 + Top = 0 + AutoSize = True + Caption = #19968#38190#26367#25442 + ImageIndex = 51 + OnClick = ToolButton3Click + end + object TBTP: TToolButton + Left = 591 + Top = 0 + AutoSize = True + Caption = #30830#23450#21457#36135 + ImageIndex = 52 + OnClick = TBTPClick + end + object TBClose: TToolButton + Left = 678 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1146 + Height = 42 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21457#36135#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 161 + Top = 15 + Width = 18 + Height = 12 + Caption = '---' + end + object Label3: TLabel + Left = 283 + Top = 15 + Width = 52 + Height = 12 + Caption = #35746#21333#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 430 + Top = 15 + Width = 26 + Height = 12 + Caption = #21697#21517 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 179 + Top = 11 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNoM: TEdit + Tag = 2 + Left = 336 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = PRTCodeNameMChange + end + object PRTCodeNameM: TEdit + Tag = 2 + Left = 459 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = PRTCodeNameMChange + end + end + object cxGrid1: TcxGrid + Left = 8 + Top = 80 + Width = 1009 + Height = 369 + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'CustomNo' + Column = v1Column5 + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_OrderManage.cxBlue + Styles.IncSearch = DataLink_OrderManage.cxBlue + Styles.Selection = DataLink_OrderManage.cxBlue + object v1Column13: TcxGridDBColumn + Caption = #36873#20013 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_OrderManage.Default + Width = 43 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#32534#21495 + DataBinding.FieldName = 'OrderNoM' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_OrderManage.Default + Width = 72 + end + object v1Column2: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'PRTCodeNameM' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_OrderManage.Default + end + object v1PRTSpec: TcxGridDBColumn + Caption = #21697#21517'/'#35268#26684 + DataBinding.FieldName = 'PRTSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_OrderManage.Default + Width = 66 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_OrderManage.Default + Width = 41 + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'PRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_OrderManage.Default + Width = 33 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'PRTKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_OrderManage.Default + Width = 39 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_OrderManage.Default + Width = 58 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_OrderManage.Default + Width = 59 + end + object v1Column10: TcxGridDBColumn + Caption = #25104#21697#25968#37327 + DataBinding.FieldName = 'PRTQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_OrderManage.Default + Width = 64 + end + object v1Column11: TcxGridDBColumn + Caption = #25104#21697#21333#20301 + DataBinding.FieldName = 'PRTUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_OrderManage.Default + Width = 61 + end + object v1Column12: TcxGridDBColumn + Caption = #25104#21697#21305#25968 + DataBinding.FieldName = 'CQty1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_OrderManage.Default + Width = 62 + end + object v1Column14: TcxGridDBColumn + Caption = #25104#21697#24211#23384 + DataBinding.FieldName = 'CPKC' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_OrderManage.Default + Width = 62 + end + object v1Column15: TcxGridDBColumn + Caption = #25104#21697#24211#23384#21305#25968 + DataBinding.FieldName = 'CPKCP' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_OrderManage.Default + Width = 86 + end + object v1Column3: TcxGridDBColumn + Tag = 3 + Caption = #21457#36135#26085#26399 + DataBinding.FieldName = 'FHDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ImmediatePost = True + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_OrderManage.FontBlue + Width = 61 + end + object v1Column4: TcxGridDBColumn + Tag = 3 + Caption = #21457#36135#22320#22336 + DataBinding.FieldName = 'FHAddress' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_OrderManage.FontBlue + Width = 61 + end + object v1Column5: TcxGridDBColumn + Tag = 3 + Caption = #23458#25143 + DataBinding.FieldName = 'CustomNoName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = v1Column5PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_OrderManage.FontBlue + Width = 62 + end + object v1Column1: TcxGridDBColumn + Tag = 3 + Caption = #21457#36135#21333#20215 + DataBinding.FieldName = 'FHPrice' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_OrderManage.FontBlue + Width = 64 + end + object v1Column9: TcxGridDBColumn + Tag = 3 + Caption = #35745#20215#21333#20301 + DataBinding.FieldName = 'JJUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column9PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_OrderManage.FontBlue + Width = 61 + end + object v1Column6: TcxGridDBColumn + Tag = 3 + Caption = #21457#36135#25968#37327 + DataBinding.FieldName = 'FHQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_OrderManage.FontBlue + Width = 58 + end + object v1Column7: TcxGridDBColumn + Tag = 3 + Caption = #21457#36135#21305#25968 + DataBinding.FieldName = 'Qty1' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_OrderManage.FontBlue + Width = 63 + end + object v1Column8: TcxGridDBColumn + Tag = 3 + Caption = #21457#36135#22791#27880 + DataBinding.FieldName = 'FHNote' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_OrderManage.FontBlue + Width = 56 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 584 + Top = 120 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 624 + Top = 112 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_OrderManage.ADOLink + Parameters = <> + Left = 648 + Top = 40 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_OrderManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 688 + Top = 40 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_OrderManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 736 + Top = 40 + end +end diff --git a/艾登贸易管理/U_OrderSubFH.pas b/艾登贸易管理/U_OrderSubFH.pas new file mode 100644 index 0000000..68f1f21 --- /dev/null +++ b/艾登贸易管理/U_OrderSubFH.pas @@ -0,0 +1,516 @@ +unit U_OrderSubFH; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, ADODB, DBClient, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, StdCtrls, ComCtrls, ExtCtrls, + ToolWin, cxCalendar, cxButtonEdit, cxCheckBox; + +type + TfrmOrderSubFH = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBDel: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + TBTP: TToolButton; + Panel1: TPanel; + Label1: TLabel; + Label2: TLabel; + Label3: TLabel; + Label5: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + OrderNoM: TEdit; + PRTCodeNameM: TEdit; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + cxGridPopupMenu1: TcxGridPopupMenu; + DataSource1: TDataSource; + Order_Main: TClientDataSet; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + v1Column13: TcxGridDBColumn; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + ToolButton3: TToolButton; + v1Column14: TcxGridDBColumn; + v1Column15: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBRafreshClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure PRTCodeNameMChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure v1Column5PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure TBTPClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure v1Column9PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + function DelData():Boolean; + procedure OneKeyPostHD(Tv1:TcxGridDBTableView;CDS_Sub:TClientDataSet); + public + { Public declarations } + end; + +var + frmOrderSubFH: TfrmOrderSubFH; + +implementation +uses + U_DataLink,U_Fun,U_ProductOrderList,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmOrderSubFH.FormDestroy(Sender: TObject); +begin + frmOrderSubFH:=nil; +end; + +procedure TfrmOrderSubFH.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmOrderSubFH.TBRafreshClick(Sender: TObject); +begin + BegDate.SetFocus; + InitGrid(); +end; +procedure TfrmOrderSubFH.InitGrid(); +var + fsj:String; +begin + try + //ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_FHQryList :WSQl'); + fsj:=' and OT.FHDate>='+QuotedStr(Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))) + +' and OT.FHDate<'+QuotedStr(Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))); + Parameters.ParamByName('WSQl').Value:=fsj; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + //ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmOrderSubFH.FormShow(Sender: TObject); +begin + ReadCxGrid('б',Tv1,'ָʾ'); + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmOrderSubFH.PRTCodeNameMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmOrderSubFH.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('б',Tv1,'ָʾ'); +end; + +procedure TfrmOrderSubFH.FormCreate(Sender: TObject); +begin + cxGrid1.Align:=alClient; +end; + +procedure TfrmOrderSubFH.TBAddClick(Sender: TObject); +begin + try + frmProductOrderList:=TfrmProductOrderList.Create(Application); + with frmProductOrderList do + begin + FFInt:=1; + frmProductOrderList.TBAdd.Visible:=False; + frmProductOrderList.TBEdit.Visible:=False; + frmProductOrderList.TBDel.Visible:=False; + frmProductOrderList.TBExport.Visible:=False; + frmProductOrderList.TBPrint.Visible:=False; + frmProductOrderList.TBTP.Visible:=False; + frmProductOrderList.cxGrid2.Visible:=False; + frmProductOrderList.ToolButton1.Visible:=True; + frmProductOrderList.ToolButton2.Visible:=True; + frmProductOrderList.ToolButton3.Visible:=True; + frmProductOrderList.ToolButton4.Visible:=False; + frmProductOrderList.ToolButton5.Visible:=False; + frmProductOrderList.CheckBox1.Visible:=False; + frmProductOrderList.CheckBox2.Visible:=True; + if ShowModal=1 then + begin + with frmProductOrderList.Order_Main do + begin + frmProductOrderList.Order_Main.First; + while not Eof do + begin + if frmProductOrderList.Order_Main.FieldByName('SSel').AsBoolean=True then + begin + with Self.Order_Main do + begin + Append; + Self.Order_Main.FieldByName('SubId').Value:=Trim(frmProductOrderList.Order_Main.fieldbyname('SubId').AsString); + Self.Order_Main.FieldByName('OrderNoM').Value:=Trim(frmProductOrderList.Order_Main.fieldbyname('OrderNo').AsString); + Self.Order_Main.FieldByName('PRTCodeNameM').Value:=Trim(frmProductOrderList.Order_Main.fieldbyname('PRTCodeName').AsString); + Self.Order_Main.FieldByName('PRTSpec').Value:=Trim(frmProductOrderList.Order_Main.fieldbyname('PRTSpec').AsString); + Self.Order_Main.FieldByName('PRTMF').Value:=Trim(frmProductOrderList.Order_Main.fieldbyname('PRTMF').AsString); + Self.Order_Main.FieldByName('PRTKZ').Value:=Trim(frmProductOrderList.Order_Main.fieldbyname('PRTKZ').AsString); + Self.Order_Main.FieldByName('PRTColor').Value:=Trim(frmProductOrderList.Order_Main.fieldbyname('PRTColor').AsString); + if Trim(frmProductOrderList.Order_Main.fieldbyname('PRTOrderQty').AsString)<>'' then + Self.Order_Main.FieldByName('PRTOrderQty').Value:=frmProductOrderList.Order_Main.fieldbyname('PRTOrderQty').AsFloat; + Self.Order_Main.FieldByName('OrderUnit').Value:=Trim(frmProductOrderList.Order_Main.fieldbyname('OrderUnit').AsString); + Self.Order_Main.FieldByName('SSel').Value:=1; + if Trim(frmProductOrderList.Order_Main.fieldbyname('PRTQty').AsString)<>'' then + Self.Order_Main.FieldByName('PRTQty').Value:=frmProductOrderList.Order_Main.fieldbyname('PRTQty').AsFloat; + if Trim(frmProductOrderList.Order_Main.fieldbyname('Qty1').AsString)<>'' then + Self.Order_Main.FieldByName('CQty1').Value:=frmProductOrderList.Order_Main.fieldbyname('Qty1').AsFloat; + if Trim(frmProductOrderList.Order_Main.fieldbyname('CPKC').AsString)<>'' then + Self.Order_Main.FieldByName('CPKC').Value:=frmProductOrderList.Order_Main.fieldbyname('CPKC').AsFloat; + if Trim(frmProductOrderList.Order_Main.fieldbyname('CPKCP').AsString)<>'' then + Self.Order_Main.FieldByName('CPKCP').Value:=frmProductOrderList.Order_Main.fieldbyname('CPKCP').AsFloat; + Self.Order_Main.FieldByName('PRTUnit').Value:=Trim(frmProductOrderList.Order_Main.fieldbyname('PRTUnit').AsString); + end; + end; + frmProductOrderList.Order_Main.Next; + end; + end; + end; + end; + finally + frmProductOrderList.Free; + end; +end; + +procedure TfrmOrderSubFH.v1Column5PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CustomNoName'; + flagname:='ͻ'; + if ShowModal=1 then + begin + Self.Order_Main.Edit; + Self.Order_Main.FieldByName('CustomNoName').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + Self.Order_Main.FieldByName('CustomNo').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderSubFH.TBTPClick(Sender: TObject); + var + FQty,FQty1,MaxNo:String; +begin + if Order_Main.IsEmpty then Exit; + if Order_Main.Locate('SSel',True,[])=false then + begin + Application.MessageBox('δѡ¼','ʾ',0); + Exit; + end; + if (Order_Main.Locate('SSel',True,[])) and (Order_Main.Locate('FHDate',null,[])) then + begin + Application.MessageBox('ڲΪգ','ʾ',0); + Exit; + end; + if (Order_Main.Locate('SSel',True,[])) and (Order_Main.Locate('CustomNoName',null,[])) then + begin + Application.MessageBox('ͻΪգ','ʾ',0); + Exit; + end; + if (Order_Main.Locate('SSel',True,[])) and (Order_Main.Locate('FHPrice',null,[])) then + begin + Application.MessageBox('۲Ϊգ','ʾ',0); + Exit; + end; + if (Order_Main.Locate('SSel',True,[])) and (Order_Main.Locate('JJUnit',null,[])) then + begin + Application.MessageBox('Ƽ۵λΪգ','ʾ',0); + Exit; + end; + if (Order_Main.Locate('SSel',True,[])) and (Order_Main.Locate('FHQty',null,[])) then + begin + Application.MessageBox('Ϊգ','ʾ',0); + Exit; + end; + BegDate.SetFocus; + try + ADOQueryCmd.Connection.BeginTrans; + with Order_Main do + begin + First; + while not Eof do + begin + {if Trim(Order_Main.fieldbyname('FHQty').AsString)='' then + FQty:='0.0' + else + FQty:=Trim(Order_Main.fieldbyname('FHQty').AsString); + if Trim(Order_Main.fieldbyname('Qty1').AsString)='' then + FQty1:='0.0' + else + FQty1:=Trim(Order_Main.fieldbyname('Qty1').AsString); } + if Order_Main.FieldByName('SSel').AsBoolean=True then + begin + if Trim(Order_Main.fieldbyname('ToId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,maxno,'To','Order_Sub_To',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_Main.fieldbyname('ToId').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Order_Sub_To where ToId='''+Trim(Order_Main.fieldbyname('ToId').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(Order_Main.fieldbyname('ToId').AsString)='' then + Append + else + Edit; + FieldByName('ToId').Value:=Trim(maxno); + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + SSetSaveDataCDSNew(ADOQueryCmd,Tv1,Order_Main,'Order_Sub_To',3); + Post; + end; + with Order_Main do + begin + Edit; + FieldByName('ToId').Value:=Trim(maxno); + Post; + end; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TfrmOrderSubFH.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select * from Order_Sub_ToSK where ToId='''+Trim(Order_Main.fieldbyname('ToId').AsString)+''''); + Open; + if not IsEmpty then + begin + Application.MessageBox('Ѿտɾ¼','ʾ',0); + Exit; + end; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData() then + begin + //TBRafresh.Click; + //TBFind.Click; + Order_Main.Delete; + end; +end; + +function TfrmOrderSubFH.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Order_Sub_To where ToId='''+Trim(Order_Main.fieldbyname('ToId').AsString)+''''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmOrderSubFH.TBExportClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + TcxGridToExcel('б',cxGrid1); +end; + +procedure TfrmOrderSubFH.v1Column9PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='PriceUnit'; + flagname:='Ƽ۵λ'; + if ShowModal=1 then + begin + Self.Order_Main.Edit; + Self.Order_Main.FieldByName('JJUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + //Self.Order_Main.FieldByName('CustomNo').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmOrderSubFH.ToolButton1Click(Sender: TObject); +begin + Order_Main.DisableControls; + with Order_Main do + begin + First; + while not Eof do + begin + Edit; + FieldByName('SSel').Value:=1; + Post; + Next; + end; + end; + Order_Main.EnableControls; +end; + +procedure TfrmOrderSubFH.ToolButton2Click(Sender: TObject); +begin + Order_Main.DisableControls; + with Order_Main do + begin + First; + while not Eof do + begin + Edit; + FieldByName('SSel').Value:=0; + Post; + Next; + end; + end; + Order_Main.EnableControls; +end; + +procedure TfrmOrderSubFH.OneKeyPostHD(Tv1:TcxGridDBTableView;CDS_Sub:TClientDataSet); +var + FValue,FFValue,FColumn,FFColumn:String; +begin + 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 CDS_Sub.FieldByName('Ssel').AsBoolean=True then + begin + 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; + end; + Next; + end; + EnableControls; + end; +end; + +procedure TfrmOrderSubFH.ToolButton3Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + BegDate.SetFocus; + OneKeyPostHD(Tv1,Order_Main); +end; + +end. diff --git a/艾登贸易管理/U_OrderSubKC.dfm b/艾登贸易管理/U_OrderSubKC.dfm new file mode 100644 index 0000000..71ce9b1 --- /dev/null +++ b/艾登贸易管理/U_OrderSubKC.dfm @@ -0,0 +1,377 @@ +object frmOrderSubKC: TfrmOrderSubKC + Left = 69 + Top = 113 + Width = 1154 + Height = 577 + Caption = #25104#21697#24211#23384 + 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 = 1146 + Height = 33 + ButtonHeight = 18 + ButtonWidth = 36 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 40 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + end + object TBExport: TToolButton + Left = 80 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 120 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + end + object TBTP: TToolButton + Left = 160 + Top = 0 + Caption = #26356#26032 + ImageIndex = 106 + OnClick = TBTPClick + end + object TBClose: TToolButton + Left = 196 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1146 + Height = 42 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #26597#35810#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 161 + Top = 15 + Width = 18 + Height = 12 + Caption = '---' + end + object Label3: TLabel + Left = 283 + Top = 15 + Width = 52 + Height = 12 + Caption = #35746#21333#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 430 + Top = 15 + Width = 26 + Height = 12 + Caption = #21697#21517 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 179 + Top = 11 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNoM: TEdit + Tag = 2 + Left = 336 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = PRTCodeNameMChange + end + object PRTCodeNameM: TEdit + Tag = 2 + Left = 459 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = PRTCodeNameMChange + end + end + object cxGrid1: TcxGrid + Left = 8 + Top = 80 + Width = 1009 + Height = 369 + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'CustomNo' + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#32534#21495 + DataBinding.FieldName = 'OrderNoM' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 72 + end + object v1Column2: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'PRTCodeNameM' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + end + object v1PRTSpec: TcxGridDBColumn + Caption = #21697#21517'/'#35268#26684 + DataBinding.FieldName = 'PRTSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 41 + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'PRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 33 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'PRTKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 39 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 58 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 59 + end + object v1Column1: TcxGridDBColumn + Caption = #25104#21697#25968 + DataBinding.FieldName = 'PRTQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 56 + end + object v1Column11: TcxGridDBColumn + Caption = #25104#21697#21305#25968 + DataBinding.FieldName = 'Qty1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 62 + end + object v1Column6: TcxGridDBColumn + Caption = #21457#36135#25968#37327 + DataBinding.FieldName = 'FHQtyM' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 58 + end + object v1Column7: TcxGridDBColumn + Caption = #21457#36135#21305#25968 + DataBinding.FieldName = 'FHQty1M' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 63 + end + object v1Column3: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'FHPrice' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 54 + end + object v1Column4: TcxGridDBColumn + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'KCQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 61 + end + object v1Column10: TcxGridDBColumn + Caption = #24211#23384#21305#25968 + DataBinding.FieldName = 'KCQty1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 57 + end + object v1Column5: TcxGridDBColumn + Tag = 3 + Caption = #24211#23384#22320#28857 + DataBinding.FieldName = 'KCPlace' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column9: TcxGridDBColumn + Tag = 3 + Caption = #24211#23384#21407#22240 + DataBinding.FieldName = 'KCReason' + HeaderAlignmentHorz = taCenter + Width = 61 + end + object v1Column8: TcxGridDBColumn + Tag = 3 + Caption = #24211#23384#22791#27880 + DataBinding.FieldName = 'KCNote' + HeaderAlignmentHorz = taCenter + Width = 61 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 584 + Top = 120 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 624 + Top = 112 + end + object ADOQueryCmd: TADOQuery + Parameters = <> + Left = 648 + Top = 40 + end + object ADOQueryMain: TADOQuery + LockType = ltReadOnly + Parameters = <> + Left = 688 + Top = 40 + end + object ADOQueryTemp: TADOQuery + LockType = ltReadOnly + Parameters = <> + Left = 736 + Top = 40 + end +end diff --git a/艾登贸易管理/U_OrderSubKC.pas b/艾登贸易管理/U_OrderSubKC.pas new file mode 100644 index 0000000..32b0f3b --- /dev/null +++ b/艾登贸易管理/U_OrderSubKC.pas @@ -0,0 +1,245 @@ +unit U_OrderSubKC; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, ADODB, DBClient, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, StdCtrls, ComCtrls, ExtCtrls, + ToolWin, cxCalendar, cxButtonEdit; + +type + TfrmOrderSubKC = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBExport: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + TBTP: TToolButton; + Panel1: TPanel; + Label1: TLabel; + Label2: TLabel; + Label3: TLabel; + Label5: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + OrderNoM: TEdit; + PRTCodeNameM: TEdit; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + cxGridPopupMenu1: TcxGridPopupMenu; + DataSource1: TDataSource; + Order_Main: TClientDataSet; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBRafreshClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure PRTCodeNameMChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + function DelData():Boolean; + public + { Public declarations } + end; + +var + frmOrderSubKC: TfrmOrderSubKC; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmOrderSubKC.FormDestroy(Sender: TObject); +begin + frmOrderSubKC:=nil; +end; + +procedure TfrmOrderSubKC.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmOrderSubKC.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; +procedure TfrmOrderSubKC.InitGrid(); +var + fsj:String; +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_PRTKCQryList :Begdate,:EndDate '); + Parameters.ParamByName('Begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime)); + Parameters.ParamByName('EndDate').Value:=Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1)); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmOrderSubKC.FormShow(Sender: TObject); +begin + ReadCxGrid('Ʒб',Tv1,'ָʾ'); + InitGrid(); +end; + +procedure TfrmOrderSubKC.PRTCodeNameMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmOrderSubKC.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('Ʒб',Tv1,'ָʾ'); +end; + +procedure TfrmOrderSubKC.FormCreate(Sender: TObject); +begin + cxGrid1.Align:=alClient; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); +end; + +procedure TfrmOrderSubKC.TBTPClick(Sender: TObject); + var + FQty,FQty1,MaxNo:String; +begin + if Order_Main.IsEmpty then Exit; + BegDate.SetFocus; + try + ADOQueryCmd.Connection.BeginTrans; + // with Order_Main do + //begin + //First; + // while not Eof do + //begin + {if Trim(Order_Main.fieldbyname('FHQty').AsString)='' then + FQty:='0.0' + else + FQty:=Trim(Order_Main.fieldbyname('FHQty').AsString); + if Trim(Order_Main.fieldbyname('Qty1').AsString)='' then + FQty1:='0.0' + else + FQty1:=Trim(Order_Main.fieldbyname('Qty1').AsString); } + if Trim(Order_Main.fieldbyname('KCId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,maxno,'KC','Order_Sub_To',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(Order_Main.fieldbyname('KCId').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Order_Sub_KC where KCId='''+Trim(Order_Main.fieldbyname('KCId').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(Order_Main.fieldbyname('KCId').AsString)='' then + Append + else + Edit; + FieldByName('KCId').Value:=Trim(maxno); + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + SSetSaveDataCDSNew(ADOQueryCmd,Tv1,Order_Main,'Order_Sub_To',3); + Post; + end; + //Next; + //end; + with Order_Main do + begin + Edit; + FieldByName('KCId').Value:=Trim(maxno); + Post; + end; + //end; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('³ɹ','ʾ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +function TfrmOrderSubKC.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Order_Sub_KC where KCId='''+Trim(Order_Main.fieldbyname('KCId').AsString)+''''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmOrderSubKC.TBExportClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + TcxGridToExcel('Ʒб',cxGrid1); +end; + +end. diff --git a/艾登贸易管理/U_ProductOrderAnPai.dfm b/艾登贸易管理/U_ProductOrderAnPai.dfm new file mode 100644 index 0000000..4c1d5d9 --- /dev/null +++ b/艾登贸易管理/U_ProductOrderAnPai.dfm @@ -0,0 +1,956 @@ +object frmProductOrderAnPai: TfrmProductOrderAnPai + Left = 96 + Top = 97 + Width = 1203 + Height = 721 + Caption = #26816#39564#25351#31034#21333 + 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 = 1187 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + Visible = False + OnClick = ToolButton1Click + end + object ToolButton10: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = ToolButton10Click + end + object ToolButton5: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #30133#28857#31649#29702 + ImageIndex = 49 + OnClick = ToolButton5Click + end + object TBExport: TToolButton + Left = 213 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + Visible = False + OnClick = TBExportClick + end + object ToolButton9: TToolButton + Left = 276 + Top = 0 + Caption = #26816#21069#22238#20462 + ImageIndex = 54 + Visible = False + OnClick = ToolButton9Click + end + object TBPrint: TToolButton + Left = 359 + Top = 0 + AutoSize = True + Caption = #25171#21360 + DropdownMenu = PopupMenu1 + ImageIndex = 12 + Style = tbsDropDown + Visible = False + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 439 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel2: TPanel + Left = 0 + Top = 341 + Width = 1187 + Height = 342 + Align = alClient + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 1 + object cxGrid2: TcxGrid + Left = 2 + Top = 81 + Width = 1183 + Height = 259 + Align = alClient + TabOrder = 0 + object TV2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + Column = V2Column1 + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = V2Column1 + end + item + Kind = skSum + Column = V2Column7 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object V2Column10: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 39 + end + object V2Column2: TcxGridDBColumn + Caption = #22238#20179#26102#38388 + DataBinding.FieldName = 'ADefDate1' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 119 + end + object V2Column8: TcxGridDBColumn + Caption = #21152#24037#21378 + DataBinding.FieldName = 'AOrddefstr4' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = V2Column8PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 82 + end + object V2Column11: TcxGridDBColumn + Caption = #22383#24067#21378 + DataBinding.FieldName = 'AOrddefstr6' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = V2Column11PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 57 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26579#21378#32568#21495 + DataBinding.FieldName = 'GangNo' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object V2Column3: TcxGridDBColumn + Caption = #26412#21378#32568#21495 + DataBinding.FieldName = 'AOrddefstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object V2Column7: TcxGridDBColumn + Caption = #21305#25968#37327 + DataBinding.FieldName = 'AOrdQty2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 48 + end + object V2Column1: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'AOrdQty1' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = V2Column1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FonePurple + Width = 69 + end + object V2Column4: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'AOrddefstr2' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Width = 59 + end + object V2Column13: TcxGridDBColumn + Caption = #25442#31639#31995#25968 + DataBinding.FieldName = 'ZSXS' + PropertiesClassName = 'TcxCurrencyEditProperties' + Properties.DecimalPlaces = 4 + Properties.DisplayFormat = '0.####' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object V2Column5: TcxGridDBColumn + Caption = #26816#39564#38271#24230#21333#20301 + DataBinding.FieldName = 'AOrddefstr3' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Y' + #30917 + '' + '') + HeaderAlignmentHorz = taCenter + Width = 86 + end + object V2Column9: TcxGridDBColumn + Caption = #22238#20179#31867#22411 + DataBinding.FieldName = 'APType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = V2Column9PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 61 + end + object V2Column12: TcxGridDBColumn + Caption = #22238#20462#25968#25454 + DataBinding.FieldName = 'AOrdFlag1' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 65 + end + object V2Column14: TcxGridDBColumn + Caption = #26816#39564#38376#24133'(cm)' + DataBinding.FieldName = 'JYMF' + Width = 87 + end + object V2Column15: TcxGridDBColumn + Caption = #26816#39564#20811#37325'(g/'#13217')' + DataBinding.FieldName = 'JYKZ' + Width = 97 + end + object V2Column6: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'AOrdDefNote1' + HeaderAlignmentHorz = taCenter + Width = 85 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + object ToolBar2: TToolBar + Left = 2 + Top = 2 + Width = 1183 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 1 + object ToolButton8: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20840#36873 + ImageIndex = 99 + OnClick = ToolButton8Click + end + object ToolButton7: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20840#24323 + ImageIndex = 129 + OnClick = ToolButton7Click + end + object ToolButton2: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 111 + OnClick = ToolButton4Click + end + object ToolButton6: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 96 + OnClick = ToolButton6Click + end + object ToolButton11: TToolButton + Left = 378 + Top = 0 + Caption = #28155#21152#32568#26631#31614 + ImageIndex = 97 + OnClick = ToolButton11Click + end + object LBGANG: TComboBox + Left = 473 + Top = 5 + Width = 145 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 0 + end + end + object Panel3: TPanel + Left = 2 + Top = 34 + Width = 1183 + Height = 47 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 2 + object Label1: TLabel + Left = 24 + Top = 16 + Width = 48 + Height = 12 + Caption = #22238#20179#26102#38388 + end + object Label2: TLabel + Left = 189 + Top = 16 + Width = 36 + Height = 12 + Caption = #21152#24037#21378 + Visible = False + end + object Label4: TLabel + Left = 503 + Top = 16 + Width = 48 + Height = 12 + Caption = #25968#37327#21333#20301 + Visible = False + end + object Label5: TLabel + Left = 634 + Top = 16 + Width = 72 + Height = 12 + Caption = #26816#39564#25968#37327#21333#20301 + Visible = False + end + object Label7: TLabel + Left = 349 + Top = 16 + Width = 36 + Height = 12 + Caption = #22383#24067#21378 + Visible = False + end + object DateTimePicker1: TDateTimePicker + Left = 74 + Top = 12 + Width = 103 + Height = 20 + Date = 41281.501696319440000000 + Format = 'yyyy-MM-dd' + Time = 41281.501696319440000000 + TabOrder = 0 + end + object BtnEditA1: TBtnEditA + Left = 226 + Top = 12 + Width = 101 + Height = 20 + Enabled = False + TabOrder = 1 + Visible = False + OnBtnClick = BtnEditA1BtnClick + end + object ComboBox1: TComboBox + Left = 556 + Top = 12 + Width = 60 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 2 + Visible = False + Items.Strings = ( + 'M' + 'Kg') + end + object BtnEditA2: TBtnEditA + Left = 709 + Top = 12 + Width = 53 + Height = 20 + TabOrder = 3 + Visible = False + OnBtnClick = BtnEditA2BtnClick + end + object BtnEditA4: TBtnEditA + Left = 386 + Top = 12 + Width = 101 + Height = 20 + Enabled = False + TabOrder = 4 + Visible = False + OnBtnClick = BtnEditA4BtnClick + end + end + object MovePanel2: TMovePanel + Left = 450 + Top = 116 + Width = 252 + Height = 40 + BevelInner = bvLowered + Caption = #27491#22312#25191#34892#25968#25454#25805#20316#65292#35831#31245#21518#12290#12290#12290 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 82 + Width = 1187 + Height = 259 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Column2 + end + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + Column = v1Column5 + end + item + Kind = skSum + Column = v1Column6 + end + item + Kind = skSum + Column = v1Column7 + end + item + Kind = skSum + Column = v1Column8 + end + item + Kind = skSum + Column = v1Column9 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object cxGridDBColumn2: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1Column3: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'SOrddefstr1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object cxGridDBColumn7: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1JGFactoryName: TcxGridDBColumn + Caption = #21152#24037#21378 + DataBinding.FieldName = 'FirstName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object v1Column1: TcxGridDBColumn + Caption = #22383#24067#21378 + DataBinding.FieldName = 'PBFactory' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1Column6: TcxGridDBColumn + Caption = #25237#22383#21305#25968 + DataBinding.FieldName = 'TPPS' + Width = 61 + end + object v1Column7: TcxGridDBColumn + Caption = #25237#22383#25968#37327 + DataBinding.FieldName = 'TPQty' + Width = 62 + end + object v1Column11: TcxGridDBColumn + Caption = #25237#22383#21333#20301 + DataBinding.FieldName = 'TPUnit' + HeaderAlignmentHorz = taCenter + Width = 61 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 69 + end + object v1MPRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'MPRTSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1Column10: TcxGridDBColumn + Caption = #39068#33394'('#33521#25991')' + DataBinding.FieldName = 'SOrddefstr4' + HeaderAlignmentHorz = taCenter + Width = 82 + end + object v1MPRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object v1MPRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + Width = 54 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + object v1Column4: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrderUnit' + Width = 60 + end + object v1Column5: TcxGridDBColumn + Caption = #22238#20179#21305#25968 + DataBinding.FieldName = 'HCPS' + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v1Column2: TcxGridDBColumn + Caption = #22238#20179#25968#37327 + DataBinding.FieldName = 'HCQty' + HeaderAlignmentHorz = taCenter + Width = 61 + end + object v1Column8: TcxGridDBColumn + Caption = #22238#20462#21305#25968 + DataBinding.FieldName = 'HXPS' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column9: TcxGridDBColumn + Caption = #22238#20462#25968#37327 + DataBinding.FieldName = 'HXQty' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column12: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'prtkuanNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv1 + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1187 + Height = 50 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 3 + object Label3: TLabel + Left = 19 + Top = 17 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object OrderNoM: TEdit + Tag = 2 + Left = 60 + Top = 9 + Width = 189 + Height = 32 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnChange = OrderNoMChange + end + end + object cxGrid4: TcxGrid + Left = 52 + Top = 109 + Width = 345 + Height = 177 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 4 + Visible = False + object Tv4: TcxGridDBTableView + OnDblClick = Tv4DblClick + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DS_OrderNo + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.FoneRed + object v4Column1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 179 + end + object v4Column2: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Width = 138 + end + end + object cxGrid4Level1: TcxGridLevel + GridView = Tv4 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 656 + Top = 192 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 624 + Top = 192 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 688 + Top = 192 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 784 + Top = 192 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 560 + Top = 144 + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = 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 = 496 + Top = 208 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 448 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 816 + Top = 192 + end + object PopupMenu1: TPopupMenu + Left = 544 + Top = 208 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object DataSource2: TDataSource + DataSet = CDS_Sub + Left = 976 + Top = 392 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 968 + Top = 384 + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 752 + Top = 192 + end + object CDS_OrderNo: TClientDataSet + Aggregates = <> + Params = <> + Left = 120 + Top = 104 + end + object DS_OrderNo: TDataSource + DataSet = CDS_OrderNo + Left = 192 + Top = 104 + end + object ADOQueryHC: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 720 + Top = 192 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 576 + Top = 512 + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 624 + Top = 256 + end +end diff --git a/艾登贸易管理/U_ProductOrderAnPai.pas b/艾登贸易管理/U_ProductOrderAnPai.pas new file mode 100644 index 0000000..e294dae --- /dev/null +++ b/艾登贸易管理/U_ProductOrderAnPai.pas @@ -0,0 +1,2355 @@ +unit U_ProductOrderAnPai; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus, cxPC, BtnEdit, cxTextEdit, cxButtonEdit, cxDropDownEdit, MovePanel,StrUtils, + cxCurrencyEdit; + +type + TfrmProductOrderAnPai = class(TForm) + ToolBar1: TToolBar; + TBPrint: TToolButton; + TBClose: TToolButton; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + TBExport: TToolButton; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + ToolButton1: TToolButton; + DataSource2: TDataSource; + CDS_Sub: TClientDataSet; + Panel2: TPanel; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + V2Column1: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ToolBar2: TToolBar; + ToolButton2: TToolButton; + ToolButton3: TToolButton; + ToolButton5: TToolButton; + ToolButton6: TToolButton; + ADOQueryPrint: TADOQuery; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + cxGridDBColumn2: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1JGFactoryName: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + v1MPRTCodeName: TcxGridDBColumn; + v1MPRTSpec: TcxGridDBColumn; + v1MPRTMF: TcxGridDBColumn; + v1MPRTKZ: TcxGridDBColumn; + cxGridDBColumn7: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + V2Column2: TcxGridDBColumn; + V2Column3: TcxGridDBColumn; + V2Column4: TcxGridDBColumn; + Panel1: TPanel; + Label3: TLabel; + OrderNoM: TEdit; + cxGrid4: TcxGrid; + Tv4: TcxGridDBTableView; + v4Column1: TcxGridDBColumn; + v4Column2: TcxGridDBColumn; + cxGrid4Level1: TcxGridLevel; + CDS_OrderNo: TClientDataSet; + DS_OrderNo: TDataSource; + V2Column5: TcxGridDBColumn; + V2Column7: TcxGridDBColumn; + V2Column8: TcxGridDBColumn; + ToolButton4: TToolButton; + ADOQueryHC: TADOQuery; + Panel3: TPanel; + DateTimePicker1: TDateTimePicker; + BtnEditA1: TBtnEditA; + ComboBox1: TComboBox; + BtnEditA2: TBtnEditA; + Label1: TLabel; + Label2: TLabel; + Label4: TLabel; + Label5: TLabel; + V2Column10: TcxGridDBColumn; + ToolButton7: TToolButton; + ToolButton8: TToolButton; + V2Column11: TcxGridDBColumn; + BtnEditA4: TBtnEditA; + Label7: TLabel; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + cxGridPopupMenu2: TcxGridPopupMenu; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + ToolButton9: TToolButton; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + ToolButton10: TToolButton; + V2Column12: TcxGridDBColumn; + MovePanel2: TMovePanel; + V2Column14: TcxGridDBColumn; + V2Column15: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + V2Column6: TcxGridDBColumn; + V2Column9: TcxGridDBColumn; + V2Column13: TcxGridDBColumn; + ADOQuery1: TADOQuery; + ToolButton11: TToolButton; + LBGANG: TComboBox; + v1Column12: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure AOrdDefNote12DblClick(Sender: TObject); + procedure AOrdDefNote7BtnDnClick(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure ToolButton6Click(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure Tv4DblClick(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); + procedure V2Column1PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure V2Column4PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure V2Column5PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure V2Column6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure V2Column8PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton4Click(Sender: TObject); + procedure BtnEditA1BtnClick(Sender: TObject); + procedure BtnEditA2BtnClick(Sender: TObject); + procedure ToolButton8Click(Sender: TObject); + procedure ToolButton7Click(Sender: TObject); + procedure BtnEditA4BtnClick(Sender: TObject); + procedure V2Column11PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton9Click(Sender: TObject); + procedure ToolButton10Click(Sender: TObject); + procedure V2Column13PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure V2Column9PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton11Click(Sender: TObject); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + function SaveData():Boolean; + procedure UpdateHC(FFirstNo:String); + function YFData():Boolean; + function DELYFData():Boolean; + procedure GetGangLb(); + { Private declarations } + public + FFInt:Integer; + { Public declarations } + end; + +var + frmProductOrderAnPai: TfrmProductOrderAnPai; + newh:hwnd; +implementation +uses + U_DataLink,U_OrderInPut,U_Fun, U_ZDYHelp,U_iniParam, U_ZDYHelpSel,U_BefChkHX; + +{$R *.dfm} +procedure TfrmProductOrderAnPai.GetGangLb(); +begin + LBGANG.Items.Clear; + ADOQueryTemp.DisableControls; + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy where Type=''LBGANGFLAG'' '); + open; + If not isEmpty then + begin + while not eof do + begin + LBGANG.Items.Add(trim(fieldbyname('zdyName').AsString)); + next; + end; + LBGANG.ItemIndex:=0; + end; + end; + ADOQueryTemp.EnableControls; +end; +procedure TfrmProductOrderAnPai.FormDestroy(Sender: TObject); +begin + frmProductOrderAnPai:=nil; +end; + +procedure TfrmProductOrderAnPai.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderAnPai.FormCreate(Sender: TObject); +begin + + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderAnPai.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ָʾϢ',Tv1,'زֹ'); + WriteCxGrid('زϢJZC1',Tv2,'زֹ'); +end; + +procedure TfrmProductOrderAnPai.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub_AnPai where LLId='''+Trim(Order_Main.fieldbyname('LLId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Sub); + SInitCDSData20(ADOQueryMain,CDS_Sub); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderAnPai.InitGridFH(); +begin +end; + +procedure TfrmProductOrderAnPai.InitForm(); +var + i:Integer; +begin + DateTimePicker1.DateTime:=SGetServerDateTime(ADOQueryTemp); + ReadCxGrid('ָʾϢ',Tv1,'زֹ'); + ReadCxGrid('زϢJZC1',Tv2,'زֹ'); +end; + +function TfrmProductOrderAnPai.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + if IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderAnPai.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv1,ADOQueryMain,'ɹб'); +end; + +procedure TfrmProductOrderAnPai.TBPrintClick(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ɹ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); + //SelPrintData(TV4,ADOQueryMain,'ͬѯ'); +end; + +procedure TfrmProductOrderAnPai.FormShow(Sender: TObject); +begin + InitForm(); + GetGangLb(); +end; + +procedure TfrmProductOrderAnPai.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmProductOrderAnPai.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderAnPai.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderAnPai.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderAnPai.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderAnPai.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderAnPai.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible:=False; + TBSave.Visible:=False; + Tv1.OptionsSelection.CellSelect:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderAnPai.ToolButton2Click(Sender: TObject); +var + FLBName:String; +begin + {if CDS_Sub.IsEmpty=False then + begin + FLBName:=Trim(CDS_Sub.fieldbyname('LBName').AsString); + end; } + if Order_Main.IsEmpty then exit; + if CDS_Sub.IsEmpty then + begin + with CDS_Sub do + begin + Append; + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + FieldByName('ADefDate1').Value:=DateTimePicker1.Date; + FieldByName('AOrddefstr4').Value:=Trim(BtnEditA1.Text); + FieldByName('AOrddefstr5').Value:=Trim(BtnEditA1.TxtCode); + FieldByName('AOrddefstr2').Value:=Trim(Order_Main.fieldbyname('TPUnit').AsString); + IF Trim(BtnEditA2.Text)<>'' then + FieldByName('AOrddefstr3').Value:=Trim(BtnEditA2.Text) + else + FieldByName('AOrddefstr3').Value:=trim(Order_Main.FieldByName('Sorddefstr9').AsString); + FieldByName('AOrddefstr6').Value:=Trim(BtnEditA4.Text); + Post; + end; + end else + begin + ToolBar1.SetFocus; + //CopyAddRowCDS(CDS_Sub); + CopyAddRow(TV2,CDS_Sub); + with CDS_Sub do + begin + Edit; + FieldByName('APID').Value:=null; + FieldByName('GangNo').Value:=null; + FieldByName('AOrddefstr1').Value:=null; + FieldByName('AOrdQty2').Value:=null; + FieldByName('AOrdQty1').Value:=null; + FieldByName('GangNo').Value:=null; + //Post; + end; + end; + + +end; + +procedure TfrmProductOrderAnPai.ToolButton3Click(Sender: TObject); +begin + if CDS_Sub.IsEmpty then Exit; + if Trim(CDS_Sub.fieldbyname('APID').AsString)<>'' then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from WFB_MJJY where APID='''+Trim(CDS_Sub.fieldbyname('APID').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('Ѳݲɾ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Sub_AnPai where APID='''+Trim(CDS_Sub.fieldbyname('APID').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Contract_Cloth_LL Set HCPS=(select isnull(sum(AOrdQty2),0) from JYOrder_Sub_AnPai A where A.LLID=Contract_Cloth_LL.LLID )'); + sql.Add(',HCMQty=(select isnull(sum(HCMQty),0) from JYOrder_Sub_AnPai A where A.LLID=Contract_Cloth_LL.LLID )'); + sql.Add(' where LLID='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update Contract_Cloth_LL Set HCQty=HCMQty*1.00/TPMQty*TPQty '); + sql.Add(' where LLID='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + if DELYFData()=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('Ӧʧ!','ʾ',0); + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + end; + end; + with CDS_Sub do + begin + Delete; + end; + if CDS_Sub.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Sub Set SOrdFlag20=0 where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('UPdate Contract_Cloth_LL Set HCPS=0,HCQty=0,HCMQty=0 where OrdSubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryHC do + begin + Close; + sql.Clear; + sql.Add('select distinct(AOrddefstr5) AOrddefstr5 from JYOrder_Sub_AnPai where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOQueryHC.IsEmpty then + UpdateHC(Trim(ADOQueryHC.fieldbyname('AOrddefstr5').AsString)) + else + begin + with ADOQueryHC do + begin + First; + while not Eof do + begin + UpdateHC(Trim(ADOQueryHC.fieldbyname('AOrddefstr5').AsString)); + Next; + end; + end; + end; } + +end; + +function TfrmProductOrderAnPai.SaveData():Boolean; +var + maxno,CRID,OrdMainId,YFID,YFIDMaxNo:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + ///ӱ + with CDS_Sub do + begin + First; + while not Eof do + begin + if Trim(CDS_Sub.fieldbyname('APId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,maxno,'','JYOrder_Sub_AnPai',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_Sub.fieldbyname('APId').AsString); + end; + IF CDS_Sub.FieldByName('ZSXS').AsFloat>10.0 then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ϵܴ10','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrder_Sub_AnPai where APId='''+Trim(CDS_Sub.fieldbyname('APId').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(CDS_Sub.fieldbyname('APId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(Order_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + FieldByName('ApId').Value:=Trim(maxno); + FieldByName('ADefDate1').Value:=CDS_Sub.fieldbyname('ADefDate1').Value; + FieldByName('AOrddefstr4').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('AOrddefstr5').Value:=Trim(Order_Main.fieldbyname('FirstNo').AsString); + FieldByName('GangNo').Value:=CDS_Sub.fieldbyname('GangNo').Value; + FieldByName('AOrddefstr1').Value:=CDS_Sub.fieldbyname('AOrddefstr1').Value; + FieldByName('AOrddefstr2').Value:=CDS_Sub.fieldbyname('AOrddefstr2').Value; + FieldByName('LBName').Value:=CDS_Sub.fieldbyname('LBName').Value; + if Trim(CDS_Sub.fieldbyname('ZSXS').AsString)<>'' then + FieldByName('ZSXS').Value:=CDS_Sub.fieldbyname('ZSXS').Value + else + FieldByName('ZSXS').Value:=0; + {if Trim(CDS_Sub.fieldbyname('JGPrice').AsString)<>'' then + FieldByName('JGPrice').Value:=CDS_Sub.fieldbyname('JGPrice').Value + else + FieldByName('JGPrice').Value:=0; } + FieldByName('AOrdQty2').Value:=CDS_Sub.fieldbyname('AOrdQty2').Value; + FieldByName('AOrdQty1').Value:=CDS_Sub.fieldbyname('AOrdQty1').Value; + FieldByName('AOrddefstr3').Value:=CDS_Sub.fieldbyname('AOrddefstr3').Value; + FieldByName('AOrdDefNote1').Value:=CDS_Sub.fieldbyname('AOrdDefNote1').Value; + FieldByName('LLID').Value:=Order_Main.fieldbyname('LLID').Value; + FieldByName('AOrddefstr6').Value:=CDS_Sub.fieldbyname('AOrddefstr6').Value; + FieldByName('AOrdDefNote1').Value:=CDS_Sub.fieldbyname('AOrdDefNote1').Value; + FieldByName('APType').Value:=CDS_Sub.fieldbyname('APType').Value; + if Trim(CDS_Sub.fieldbyname('JYMF').AsString)<>'' then + FieldByName('JYMF').Value:=CDS_Sub.fieldbyname('JYMF').Value; + if Trim(CDS_Sub.fieldbyname('JYKZ').AsString)<>'' then + FieldByName('JYKZ').Value:=CDS_Sub.fieldbyname('JYKZ').Value; + if CDS_Sub.fieldbyname('AOrdFlag1').AsBoolean=True then + FieldByName('AOrdFlag1').Value:=1 + else + FieldByName('AOrdFlag1').Value:=0; + if Trim(CDS_Sub.fieldbyname('APId').AsString)='' then + FieldByName('Filler').Value:=Trim(DName) + else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOQueryTemp); + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from Contract_Cloth_LL where LLId='''+Trim(Order_Main.fieldbyname('LLId').AsString)+''''); + Open; + end; + if Trim(ADOQueryTemp.fieldbyname('TPUnit').AsString)=Trim(CDS_Sub.fieldbyname('AOrddefstr2').AsString) then + begin + FieldByName('HCYZQty').Value:=CDS_Sub.fieldbyname('AOrdQty1').Value; + end else + begin + if Trim(CDS_Sub.fieldbyname('AOrddefstr2').AsString)='M' then + begin + FieldByName('HCYZQty').Value:=(CDS_Sub.fieldbyname('AOrdQty1').Value*1.00/ADOQueryTemp.fieldbyname('TPMQty').Value) + *ADOQueryTemp.fieldbyname('TPQty').Value ; + end; + end; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Sub Set SOrdFlag20=1 where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + CDS_Sub.Edit; + CDS_Sub.FieldByName('APId').Value:=Trim(maxno); + CDS_Sub.FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + { with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add(' UPdate WFB_MJJY Set MJTypeOther='''+Trim(CDS_Sub.fieldbyname('AOrddefstr3').AsString)+''''); + SQL.Add(' where APId='''+Trim(maxno)+''''); + sql.Add(' UPdate CK_BanCP_KC Set KCQtyUnit='''+Trim(CDS_Sub.fieldbyname('AOrddefstr3').AsString)+''''); + SQL.Add(' where MJId in (select MJID from WFB_MJJY where APID='''+Trim(maxno)+''')'); + sql.Add(' UPdate CK_BanCP_CR Set QtyUnit='''+Trim(CDS_Sub.fieldbyname('AOrddefstr3').AsString)+''''); + SQL.Add(' where MJId in (select MJID from WFB_MJJY where APID='''+Trim(maxno)+''')'); + ExecSQL; + end; } + //OrdMainId:=Trim(Order_Main.fieldbyname('MainId').AsString); + with ADOQuery1 do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + Open; + end; + if ADOQuery1.IsEmpty=False then + begin + CRID:=ADOQuery1.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + if CDS_Sub.FieldByName('AOrdFlag1').AsBoolean<>True then + begin + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + sql.Add(' and YFTypeId='''+Trim(CDS_Sub.fieldbyname('APId').AsString)+''''); + if Trim(Order_Main.fieldbyname('DHIDHelp').AsString)='' then + sql.Add(' and YFName=''Ⱦ'' ') + else + sql.Add(' and YFName=''ӹ'' '); + + Open; + end; + YFID:=Trim(ADOQuery1.fieldbyname('YFID').AsString); + // if Trim(YFID)='' then + if Trim(YFID)='' then + begin + if GetLSNo(ADOQueryCmd,YFIDMaxNo,'RJ','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡȾӦʧ!','ʾ',0); + Exit; + end; + end else + begin + YFIDMaxNo:=YFID; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where YFID='''+Trim(YFID)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(YFID)='' then + begin + Append; + FieldByName('Filler').Value:=Trim(DName); + end + else + begin + Edit; + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOQueryTemp); + end; + FieldByName('YFID').Value:=Trim(YFIDMaxNo); + FieldByName('YFTypeId').Value:=Trim(CDS_Sub.fieldbyname('APId').AsString); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('CRType').Value:='ӦǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('CRTime').Value:=CDS_Sub.fieldbyname('ADefDate1').Value; + if Trim(CDS_Sub.fieldbyname('AOrdQty1').AsString)<>'' then + FieldByName('Qty').Value:=CDS_Sub.fieldbyname('AOrdQty1').Value + else + FieldByName('Qty').Value:=0; + FieldByName('YFType').Value:='Զ'; + FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=''; + FieldByName('ComTaiTou').Value:=Trim(Order_Main.fieldbyname('OrdDefStr2').AsString); + FieldByName('QtyUnit').Value:=Trim(Order_Main.fieldbyname('TPUnit').AsString); + if Trim(Order_Main.fieldbyname('DHIDHelp').AsString)='' then + FieldByName('YFName').Value:='Ⱦ' + else + FieldByName('YFName').Value:='ӹ'; + FieldByName('MainId').Value:=Trim(Order_Main.fieldbyname('MainId').AsString); + Post; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty'); + sql.Add(' where YFID='''+Trim(YFIDMaxNo)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + {if YFData()=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('²Ӧʧ!','ʾ',0); + Exit; + end;} + Next; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Contract_Cloth_LL Set HCPS=(select isnull(sum(AOrdQty2),0) from JYOrder_Sub_AnPai A where A.LLID=Contract_Cloth_LL.LLID )'); + sql.Add(',HCMQty=(select isnull(sum(HCMQty),0) from JYOrder_Sub_AnPai A where A.LLID=Contract_Cloth_LL.LLID )'); + sql.Add(' where LLID='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + if (Trim(CDS_Sub.fieldbyname('AOrddefstr2').AsString)=Trim(Order_Main.fieldbyname('TPUnit').AsString)) then + sql.Add('Update Contract_Cloth_LL Set HCQty=(select isnull(Sum(AOrdQty1),0) from JYOrder_Sub_AnPai A where A.LLID=Contract_Cloth_LL.LLID) ') + else + sql.Add('Update Contract_Cloth_LL Set HCQty=HCMQty*1.00/TPMQty*TPQty '); + sql.Add(' where LLID='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + MovePanel2.Visible:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderAnPai.AOrdDefNote12DblClick(Sender: TObject); +var + fsj:string; + FWZ:Integer; +begin + fsj:=Trim(TEdit(Sender).Hint); + FWZ:=Pos('/',fsj); + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Copy(fsj,1,FWZ-1); + flagname:=Copy(fsj,FWZ+1,Length(fsj)-fwz); + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmProductOrderAnPai.AOrdDefNote7BtnDnClick(Sender: TObject); +begin + TBtnEditC(Sender).Text:=''; + TBtnEditC(Sender).TxtCode:=''; +end; + +procedure TfrmProductOrderAnPai.cxTabControl1Change(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderAnPai.ToolButton5Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WFBCD'; + flagname:='õ'; + fnote:=True; + V1Note.Caption:='Ӣ'; + if ShowModal=1 then + begin + + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmProductOrderAnPai.ToolButton6Click(Sender: TObject); +var + fPrintFile,JYNote:string; + Txt,fImagePath:string; + Moudle: THandle; + Makebar:TMakebar; + Mixtext:TMixtext; +begin + if CDS_Sub.IsEmpty then Exit; + if CDS_Sub.Locate('SSel',True,[])=False then + begin + Application.MessageBox('δѡҪӡ!','ʾ',0); + Exit; + end; + IF Trim(LBGANG.Text)='' then + begin + Application.MessageBox('ѡҪӡĸױǩ','ʾ',0); + Exit; + end; + CDS_Sub.DisableControls; + with CDS_Sub do + begin + First; + while not Eof do + begin + if CDS_Sub.FieldByName('SSel').AsBoolean=True then + begin + if Trim(CDS_Sub.fieldbyname('APID').AsString) ='' then + begin + CDS_Sub.EnableControls; + Application.MessageBox('δ治ܴӡ!','ʾ',0); + Exit; + end; + + end; + Next; + end; + end; + CDS_Sub.EnableControls; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\'+Trim(LBGANG.Text)+'.rmf' ; + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + //RM1.LoadFromFile(fPrintFile); + //RM1.ShowReport; + //RM1.PrintReport; + end else + begin + Application.MessageBox(PChar('û'+fPrintFile),'ʾ',0); + Exit; + end; + CDS_Sub.DisableControls; + with CDS_Sub do + begin + First; + while not Eof do + begin + if CDS_Sub.FieldByName('SSel').AsBoolean=True then + begin + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select A.*,OrderNoM=B.OrderNo,B.OrderNo,B.conNO,B.CustomerNoName,B.OrdPerson1,B.MPRTCodeName,B.MPrtkuanNO,C.prtkuanNo,C.PRTColor,C.PRTHX,B.MPRTBZNote,B.MPRTKaiJian, '); + sql.Add('khConNo=(select top 1 khConNo from JYOrderCon_Main X where X.ConNO=B.conNO), '); + sql.Add('B.MPRTYaoFeng,B.MPRTTangJin,B.MPRTJiBenNote,B.MPRTTeBieNote,C.SOrddefstr1,C.SOrddefstr4'); + sql.Add(' from JYOrder_Sub_AnPai A inner join JYOrder_Main B on A.MainId=B.MainId'); + sql.Add('inner join JYOrder_Sub C on A.SubId=C.SubId where A.APID='''+Trim(CDS_Sub.fieldbyname('APID').AsString)+''''); + Open; + end; + try + Moudle:=LoadLibrary('MakeQRBarcode.dll'); + @Makebar:=GetProcAddress(Moudle,'Make'); + @Mixtext:=GetProcAddress(Moudle,'MixText'); + Txt:=Trim(ADOQueryPrint.fieldbyname('APID').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); + exit; + end; + JYNote:='װҪ:'+Trim(ADOQueryPrint.fieldbyname('MPRTBZNote').AsString)+#13 + +'͹ҹ:'+Trim(ADOQueryPrint.fieldbyname('MPRTYaoFeng').AsString)+#13 + +'̽:'+Trim(ADOQueryPrint.fieldbyname('MPRTTangJin').AsString)+#13 + +'Ҫ:'+Trim(ADOQueryPrint.fieldbyname('MPRTJiBenNote').AsString)+#13 + +'رʾ:'+Trim(ADOQueryPrint.fieldbyname('MPRTTeBieNote').AsString); + RMVariables['JYNote']:=Trim(JYNote); + RMVariables['QRBARCODE']:=fImagePath; + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end; + Next; + end; + end; + CDS_Sub.EnableControls; + + + +end; + +procedure TfrmProductOrderAnPai.OrderNoMChange(Sender: TObject); +var + mvalue:String; +begin + mvalue:=Trim(OrderNoM.Text); + if Length(Trim(mvalue))<3 then + begin + cxGrid4.Visible:=False; + Exit; + end; + mvalue:='%'+Trim(mvalue)+'%'; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select OrderNo,MPRTCodeName,A.MainId from JYOrder_Main A'); + sql.Add(' where A.orderno like :orderno '); + sql.Add(' and A.MainId in(select MainId from JYOrder_Sub B where B.Mainid=A.MainId and B.subId in(select OrdSubId from Contract_Cloth_LL))'); + Parameters.ParamByName('orderno').Value:=mvalue; + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_OrderNo); + SInitCDSData20(ADOQueryTemp,CDS_OrderNo); + if CDS_OrderNo.IsEmpty then cxGrid4.Visible:=False else cxGrid4.Visible:=True; +end; + +procedure TfrmProductOrderAnPai.Tv4DblClick(Sender: TObject); +begin + cxGrid4.Visible:=False; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add(' select isnull(PBFactory10,PBFactory20) PBFactory,AA.* from('); + sql.Add('select A.*,B.PRTColor,B.SubId,B.PRTOrderQty,B.OrderUnit,B.PrtkuanNO,B.SLbName,C.FirstName,C.FirstNo,B.SOrddefstr1,B.SOrddefstr4,B.SOrddefstr9, '); + sql.Add('C.TPPS,C.TPQty,C.LLID,C.HCPS,C.HCQty,C.HXUnit,C.DHIDHelp,C.DHID,C.TPUnit,'); + sql.Add('HXPS=(select Sum(HXPS) from Contract_Cloth_BefChkHX HX where HX.LLID=C.LLID),'); + sql.Add('HXQty=(select Sum(HXQty) from Contract_Cloth_BefChkHX HX where HX.LLID=C.LLID),'); + sql.Add('PBFactory10=(select Top 1 AA.factoryNoName from Contract_Main AA inner join Contract_Cloth_DH BB on AA.MainId=BB.MainId'); + sql.Add(' where BB.DHID=C.DHID)'); + sql.Add(',PBFactory20=(select Top 1 FirstName from ContractSX_Cloth_DH SD where SD.DHID=C.SXDHID)'); + sql.Add('from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId '); + sql.Add(' inner join Contract_Cloth_LL C on C.OrdSubId=B.SubId'); + sql.Add('where A.MainId='''+Trim(CDS_OrderNo.fieldbyname('MainId').AsString)+''''); + // sql.Add(' and C.JXJGFlag=0'); +// sql.Add(' and exists(select * from Contract_Cloth_LLMX LM where LM.OrdSubId=B.SubId and LM.OrdSubId=C.OrdSubId )'); + sql.Add(' and exists( select * from Contract_Cloth_LLMX LLM where LLM.DHID=isnull(C.DHIdHelp,C.DHID)) )AA'); + //ShowMessage(SQL.Text); + Open; + end; + SCreateCDS20(ADOQueryTemp,Order_Main); + SInitCDSData20(ADOQueryTemp,Order_Main); +end; + +procedure TfrmProductOrderAnPai.Tv1FocusedRecordChanged( + Sender: TcxCustomGridTableView; APrevFocusedRecord, + AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); +begin + InitGrid(); + BtnEditA1.TxtCode:=Trim(Order_Main.fieldbyname('FirstNo').AsString); + BtnEditA1.Text:=Trim(Order_Main.fieldbyname('FirstName').AsString); + BtnEditA4.Text:=Trim(Order_Main.fieldbyname('PBFactory').AsString); +end; + +procedure TfrmProductOrderAnPai.V2Column1PropertiesEditValueChanged( + Sender: TObject); +//var + //mvalue,FFieldName,mvalue10,mvalue20:String; + //FHCPS,FHCQty,FHCMQty:Double; +begin + {if Trim(CDS_Sub.fieldbyname('AOrddefstr4').AsString)='' then + begin + Application.MessageBox('ȾΪ!','ʾ',0); + Exit; + end; + with Self.ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL A '); + sql.Add(' where A.FirstNo='''+Trim(CDS_Sub.fieldbyname('AOrddefstr5').AsString)+''''); + sql.Add(' and A.OrdSubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+''''); + Open; + end; + if Self.ADOQueryTemp.IsEmpty then + begin + Application.MessageBox('ȾûӦ!','ʾ',0); + Exit; + end; + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + if FFieldName='AOrdQty1' then + begin + if Trim(CDS_Sub.fieldbyname('AOrddefstr2').AsString)='' then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; + end; + if Trim(mvalue)='' then + begin + if FFieldName='ZSXS' then + mvalue:='1' + else + if FFieldName='AOrddefstr2' then + mvalue:='' + else + mvalue:='0'; + end; + + with CDS_Sub do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Sub_AnPai '); + if Trim(FFieldName)='AOrddefstr2' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where APId='''+Trim(CDS_Sub.fieldbyname('APId').AsString)+''''); + ExecSQL; + end; + if Trim(FFieldName)='AOrdQty2' then + begin + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select isnull(Sum(AOrdQty2),0) HCPS,isnull(Sum(AOrdQty1),0) HCQty from JYOrder_Sub_AnPai '); + sql.Add(' where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and AOrddefstr5='''+Trim(CDS_Sub.fieldbyname('AOrddefstr5').AsString)+''''); + Open; + end; + FHCPS:=ADOQueryTemp.FieldByName('HCPS').Value; + if FHCPS>0 then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL where OrdSubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and FirstNo='''+Trim(CDS_Sub.fieldbyname('AOrddefstr5').AsString)+''''); + SQL.Add(' order by LLIdx'); + Open; + end; + with ADOQueryTemp do + begin + First; + while (not eof) and (FHCPS>0) do + begin + if FHCPS>=FieldByName('TPPS').Value then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCPS=TPPS '); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCPS:=FHCPS-FieldByName('TPPS').Value; + end else + begin + + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCPS='+FloatToStr(FHCPS)); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCPS:=0; + end; + Next; + end; + end; + end; + end; + if Trim(FFieldName)='AOrdQty1' then + begin + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select isnull(Sum(AOrdQty2),0) HCPS,isnull(Sum(AOrdQty1),0) HCQty from JYOrder_Sub_AnPai '); + sql.Add(' where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and AOrddefstr5='''+Trim(CDS_Sub.fieldbyname('AOrddefstr5').AsString)+''''); + Open; + end; + FHCQty:=ADOQueryTemp.FieldByName('HCQty').Value; + if FHCQty>0 then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL where OrdSubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and FirstNo='''+Trim(CDS_Sub.fieldbyname('AOrddefstr5').AsString)+''''); + SQL.Add(' order by LLIdx'); + Open; + end; + with ADOQueryTemp do + begin + First; + while (not eof) and (FHCQty>0) do + begin + if FHCQty>=FieldByName('BCPQty').Value then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCQty=BCPQty '); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCQty:=FHCQty-FieldByName('BCPQty').Value; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCQty='+FloatToStr(FHCQty)); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCQty:=0; + end; + Next; + end; + end; + end; + end;} +end; +procedure TfrmProductOrderAnPai.UpdateHC(FFirstNo:String); +var + FHCPS,FHCYZQty,FHCMQty:Double; +begin + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select isnull(Sum(AOrdQty2),0) HCPS from JYOrder_Sub_AnPai '); + sql.Add(' where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and AOrddefstr5='''+Trim(FFirstNo)+''''); + Open; + end; + FHCPS:=ADOQueryTemp.FieldByName('HCPS').Value; + if FHCPS=0 then + begin + + end; + if FHCPS>0 then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL where OrdSubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and FirstNo='''+Trim(FFirstNo)+''''); + SQL.Add(' order by LLIdx'); + Open; + end; + with ADOQueryTemp do + begin + First; + while (not eof) and (FHCPS>0) do + begin + if FHCPS>=FieldByName('TPPS').Value then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCPS=TPPS '); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCPS:=FHCPS-FieldByName('TPPS').Value; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCPS='+FloatToStr(FHCPS)); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCPS:=0; + end; + Next; + end; + end; + end; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select isnull(Sum(HCYZQty),0) HCYZQty,isnull(Sum(HCMQty),0) HCMQty from JYOrder_Sub_AnPai '); + sql.Add(' where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and AOrddefstr5='''+Trim(FFirstNo)+''''); + Open; + end; + FHCYZQty:=ADOQueryTemp.FieldByName('HCYZQty').Value; + FHCMQty:=ADOQueryTemp.FieldByName('HCMQty').Value; + if FHCYZQty>=0 then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL where OrdSubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and FirstNo='''+Trim(FFirstNo)+''''); + SQL.Add(' order by LLIdx'); + Open; + end; + with ADOQueryTemp do + begin + First; + while (not eof) and (FHCYZQty>0) do + begin + if FHCYZQty>=FieldByName('BCPQty').Value then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCQty=BCPQty '); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCYZQty:=FHCYZQty-FieldByName('BCPQty').Value; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCQty='+FloatToStr(FHCYZQty)); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCYZQty:=0; + end; + Next; + end; + end; + with ADOQueryTemp do + begin + First; + while (not eof) and (FHCMQty>0) do + begin + if FHCMQty>=FieldByName('BCPMQty').Value then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCMQty=BCPMQty '); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCMQty:=FHCMQty-FieldByName('BCPMQty').Value; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCMQty='+FloatToStr(FHCMQty)); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCMQty:=0; + end; + Next; + end; + end; + end; +end; + +procedure TfrmProductOrderAnPai.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +//var + //mvalue,FFieldName:String; +begin + {mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_Sub do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Sub_AnPai '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where APId='''+Trim(CDS_Sub.fieldbyname('APId').AsString)+''''); + ExecSQL; + end; } +end; + + +procedure TfrmProductOrderAnPai.V2Column4PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_Sub.Edit; + Self.CDS_Sub.FieldByName('AOrddefstr2').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Sub_AnPai '); + sql.Add(' Set AOrddefstr2='''+Trim(ClientDataSet1.fieldbyname('ZDYName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where APId='''+Trim(CDS_Sub.fieldbyname('APId').AsString)+''''); + sql.Add(' UPdate WFB_MJJY Set MJStr1='''+Trim(ClientDataSet1.fieldbyname('ZDYName').AsString)+''''); + SQL.Add(' where APId='''+Trim(CDS_Sub.fieldbyname('APId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmProductOrderAnPai.V2Column5PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_Sub.Edit; + Self.CDS_Sub.FieldByName('AOrddefstr3').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmProductOrderAnPai.V2Column6PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +var + mvalue:string; +begin + mvalue:=Trim(CDS_Sub.FieldByName('AOrdDefNote1').AsString); + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='JYYQ'; + flagname:='Ҫ'; + if ShowModal=1 then + begin + Self.CDS_Sub.Edit; + Self.CDS_Sub.FieldByName('AOrdDefNote1').Value:=mvalue+frmZDYHelpSel.ReturnStr; + {with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Sub_AnPai '); + sql.Add(' Set AOrdDefNote1='''+Trim(mvalue+frmZDYHelpSel.ReturnStr)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where APId='''+Trim(CDS_Sub.fieldbyname('APId').AsString)+''''); + ExecSQL; + end; } + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmProductOrderAnPai.V2Column8PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:='Ⱦ'; + if ShowModal=1 then + begin + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL A '); + sql.Add(' where A.FirstNo='''+Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYNo').AsString)+''''); + sql.Add(' and A.OrdSubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + Application.MessageBox('ȾûӦ!','ʾ',0); + + end else + begin + with CDS_Sub do + begin + Edit; + FieldByName('AOrddefstr4').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + FieldByName('AOrddefstr5').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + {with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Sub_AnPai '); + sql.Add(' Set AOrddefstr5='''+Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString)+''''); + sql.Add(' ,AOrddefstr4='''+Trim(ClientDataSet1.fieldbyname('ZDYName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where APId='''+Trim(CDS_Sub.fieldbyname('APId').AsString)+''''); + ExecSQL; + end;} + end; + + end; + end; + finally + //frmZDYHelp.Free; + end; +end; + +procedure TfrmProductOrderAnPai.ToolButton4Click(Sender: TObject); +var + FDW:String; + I:integer; +begin + IF CDS_Sub.IsEmpty then exit; + if CDS_Sub.Locate('ADefDate1',null,[])=True then + begin + Application.MessageBox('زʱ䲻Ϊ!','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('AOrddefstr4',null,[])=True then + begin + Application.MessageBox('ȾΪ!','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('AOrddefstr4','',[])=True then + begin + Application.MessageBox('ȾΪ!','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('GangNo',null,[])=True then + begin + Application.MessageBox('׺ŲΪ!','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('AOrddefstr2',null,[])=True then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('AOrddefstr2','',[])=True then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('AOrddefstr3',null,[])=True then + begin + Application.MessageBox('鳤ȵλΪ!','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('AOrddefstr3','',[])=True then + begin + Application.MessageBox('鳤ȵλΪ!','ʾ',0); + Exit; + end; + {if CDS_Sub.Locate('AOrddefstr2','Kg',[])=True then + begin + if Trim(CDS_Sub.FieldByName('ZSXS').AsString)='' then + begin + Application.MessageBox('ϵΪ!','ʾ',0); + Exit; + end; + end;} + if CDS_Sub.Locate('AOrdQty2',null,[])=True then + begin + Application.MessageBox('ƥΪ!','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('AOrdQty1',null,[])=True then + begin + Application.MessageBox('Ϊ!','ʾ',0); + Exit; + end; + {if CDS_Sub.Locate('LBName','',[])=True then + begin + Application.MessageBox('ǩƲΪ!','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('LBName','',[])=True then + begin + Application.MessageBox('ǩƲΪ!','ʾ',0); + Exit; + end;} + { if CDS_Sub.Locate('AOrdQty1','',[])=True then + begin + Application.MessageBox('Ϊ!','ʾ',0); + Exit; + end;} + FDW:=Trim(CDS_Sub.fieldbyname('AOrddefstr2').AsString); + if CDS_Sub.Locate('AOrddefstr2',FDW,[])=False then + begin + Application.MessageBox('λһ!','ʾ',0); + Exit; + end; + {if CDS_Sub.Locate('AOrddefstr3',null,[]) then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('AOrddefstr3','',[]) then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; + FDW:=Trim(CDS_Sub.fieldbyname('AOrddefstr3').AsString); + if CDS_Sub.Locate('AOrddefstr3',FDW,[])=False then + begin + Application.MessageBox('λһ!','ʾ',0); + Exit; + end; } + + { with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from Contract_Cloth_LL where OrdSubId='''+Trim(Order_Main.fieldbyname('Subid').AsString)+''''); + Open; + end; + if Trim(ADOQueryTemp.fieldbyname('TPUnit').AsString)='M' then + begin + if CDS_Sub.Locate('AOrddefstr2','Kg',[]) then + begin + Application.MessageBox('λΪM,زλΪKg!','ʾ',0); + Exit; + end; + end; } + + i:=0; + with CDS_Sub do + begin + DisableControls; + First; + while not eof do + begin + IF trim(Order_Main.FieldByName('TPUnit').AsString)<>trim(CDS_Sub.FieldByName('AOrddefstr2').AsString) then + begin + I:=i+1; + end; + next; + end; + First; + EnableControls; + end; + IF i=0 then + begin + IF tv2.DataController.Summary.FooterSummaryValues[0]>order_main.FieldByName('TPQty').AsFloat*1.05 then + begin + Application.MessageBox('زܴͶ5%!','ʾ',0); + Exit; + end; + end; + OrderNoM.SetFocus; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + if SaveData() then + begin + MovePanel2.Visible:=False; + Application.MessageBox('ɹ!','ʾ',0); + Exit; + end; + MovePanel2.Visible:=False; +end; + +procedure TfrmProductOrderAnPai.BtnEditA1BtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:='Ⱦ'; + if ShowModal=1 then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL A '); + sql.Add(' where A.FirstNo='''+Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYNo').AsString)+''''); + sql.Add(' and A.OrdSubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + Application.MessageBox('ȾûӦ!','ʾ',0); + + end else + begin + BtnEditA1.Text:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + BtnEditA1.TxtCode:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + end; + end; + finally + //frmZDYHelp.Free; + end; +end; +function TfrmProductOrderAnPai.YFData():Boolean; +var + CRID,OrdMainId,YFID,Price,LLID:String; +begin + Result:=False; + {with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_CR where YFTypeID='''+Trim(CDS_Sub.fieldbyname('APID').AsString)+''''); + ExecSQL; + end;} + OrdMainId:=Trim(Order_Main.fieldbyname('MainId').AsString); + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + if CDS_Sub.FieldByName('AOrdFlag1').AsBoolean=False then + begin + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + sql.Add(' and YFTypeId='''+Trim(CDS_Sub.fieldbyname('APId').AsString)+''''); + if Trim(Order_Main.fieldbyname('DHIDHelp').AsString)='' then + sql.Add(' and YFName=''Ⱦ'' ') + else + sql.Add(' and YFName=''ӹ'' '); + + Open; + end; + + if ADOQuery1.RecordCount<1 then + begin + + if GetLSNo(ADOQueryCmd,YFID,'RJ','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡȾӦʧ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(CDS_Sub.fieldbyname('APId').AsString); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('CRTime').Value:=CDS_Sub.fieldbyname('ADefDate1').Value; + FieldByName('Qty').Value:=CDS_Sub.fieldbyname('AOrdQty1').Value; + FieldByName('YFType').Value:='Զ'; + {if Trim(CDS_Sub.fieldbyname('JGPrice').AsString)<>'' then + FieldByName('Price').Value:=CDS_Sub.fieldbyname('JGPrice').Value + else + FieldByName('Price').Value:=0;} + FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=''; + FieldByName('ComTaiTou').Value:=Trim(Order_Main.fieldbyname('OrdDefStr2').AsString); + FieldByName('QtyUnit').Value:=Trim(Order_Main.fieldbyname('TPUnit').AsString); + if Trim(Order_Main.fieldbyname('DHIDHelp').AsString)='' then + FieldByName('YFName').Value:='Ⱦ' + else + FieldByName('YFName').Value:='ӹ'; + FieldByName('MainId').Value:=Trim(OrdMainId); + Post; + end; + end else + begin + YFID:=Trim(ADOQuery1.fieldbyname('YFID').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR Set '); + sql.Add('Qty='+CDS_Sub.fieldbyname('AOrdQty1').AsString); + SQL.Add(',CRTime='''+Trim(CDS_Sub.fieldbyname('ADefDate1').AsString)+''''); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty'); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + Result:=True; +end; +function TfrmProductOrderAnPai.DELYFData():Boolean; +var + CRID,OrdMainId,YFID,Price,LLID:String; +begin + Result:=False; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_CR where YFTypeID='''+Trim(CDS_Sub.fieldbyname('APID').AsString)+''''); + ExecSQL; + end; + OrdMainId:=Trim(Order_Main.fieldbyname('MainId').AsString); + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select Case when HXQty>0 then HCQty-HXQty else HCQty end as HCQty'); + SQL.Add(',Case when HXPS>0 then HCPS-HXPS else HCPS end as HCPS'); + SQL.Add(' from Contract_Cloth_LL where LLID='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + Open; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + Result:=True; +end; + +procedure TfrmProductOrderAnPai.BtnEditA2BtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + BtnEditA2.Text:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmProductOrderAnPai.ToolButton8Click(Sender: TObject); +begin + CDS_Sub.DisableControls; + with CDS_Sub do + begin + First; + while not Eof do + begin + Edit; + FieldByName('SSel').Value:=True; + Post; + Next; + end; + end; + CDS_Sub.EnableControls; +end; + +procedure TfrmProductOrderAnPai.ToolButton7Click(Sender: TObject); +begin + CDS_Sub.DisableControls; + with CDS_Sub do + begin + First; + while not Eof do + begin + Edit; + FieldByName('SSel').Value:=False; + Post; + Next; + end; + end; + CDS_Sub.EnableControls; +end; + +procedure TfrmProductOrderAnPai.BtnEditA4BtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:=''; + if ShowModal=1 then + begin + BtnEditA4.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmProductOrderAnPai.V2Column11PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Factory'; + flagname:=''; + if ShowModal=1 then + begin + begin + with CDS_Sub do + begin + Edit; + FieldByName('AOrddefstr6').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + + end; + end; + finally + //frmZDYHelp.Free; + end; +end; + +procedure TfrmProductOrderAnPai.ToolButton9Click(Sender: TObject); +begin + try + frmBefChkHX:=TfrmBefChkHX.Create(Application); + with frmBefChkHX do + begin + orderno.Caption:=Trim(Self.Order_Main.fieldbyname('OrderNo').AsString); + PRTColor.Caption:=Trim(Self.Order_Main.fieldbyname('PRTColor').AsString); + FirstName.Caption:=Trim(Self.Order_Main.fieldbyname('FirstName').AsString); + PBFactory.Caption:=Trim(Self.Order_Main.fieldbyname('PBFactory').AsString); + FLLID:=Trim(Self.Order_Main.fieldbyname('LLID').AsString); + HXUnit:=Trim(Self.Order_Main.fieldbyname('TPUnit').AsString); + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_BefChkHX where LLID='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQuery1,ClientDataSet1); + SInitCDSData20(ADOQuery1,ClientDataSet1); + if ShowModal=1 then + begin + + end; + end; + finally + frmBefChkHX.Free; + end; +end; + +procedure TfrmProductOrderAnPai.ToolButton10Click(Sender: TObject); +begin + if Order_Main.IsEmpty=False then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*,C.FirstName,C.FirstNo,C.TPPS,C.TPQty,C.LLID,C.HXPS,C.HXQty,C.HXUnit,C.HCPS,C.HCQty,C.TPUnit,B.SOrddefstr1,B.SOrddefstr4 '); + sql.Add(',HXPS=(select Sum(HXPS) from Contract_Cloth_BefChkHX HX where HX.LLID=C.LLID),'); + sql.Add('HXQty=(select Sum(HXQty) from Contract_Cloth_BefChkHX HX where HX.LLID=C.LLID),'); + sql.Add('PBFactory=(select Top 1 AA.factoryNoName from Contract_Main AA inner join Contract_Cloth_DH BB on AA.MainId=BB.MainId'); + sql.Add(' where BB.DHID=C.DHID)'); + //sql.Add(',HCQty=(select sum(AOrdQty1) from JYOrder_Sub_AnPai AA where AA.SubId=B.SubId)'); + //sql.Add(',HCPS=(select sum(AOrdQty2) from JYOrder_Sub_AnPai AA where AA.SubId=B.SubId)'); + //sql.Add(',HCUnit=(select Top 1 AOrddefstr2 from JYOrder_Sub_AnPai AA where AA.SubId=B.SubId)'); + sql.Add('from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId '); + sql.Add(' inner join Contract_Cloth_LL C on C.OrdSubId=B.SubId'); + sql.Add('where A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add(' and C.JXJGFlag=0'); + Open; + end; + SCreateCDS20(ADOQueryTemp,Order_Main); + SInitCDSData20(ADOQueryTemp,Order_Main); + end; +end; + +procedure TfrmProductOrderAnPai.V2Column13PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +type + TMyFunc = function(App:Tapplication; FormH:hwnd; FormID:integer; + Language: integer; WinStyle:integer; + GCode: Pchar; GName: Pchar; DataBase:Pchar;Title:PChar; + Parameters1:PChar;Parameters2:PChar;Parameters3:PChar;Parameters4:PChar; + Parameters5:PChar;Parameters6:PChar;Parameters7:PChar;Parameters8:PChar; + Parameters9:PChar;Parameters10:PChar;DataBaseStr:PChar):hwnd;stdcall; +var + Tf: TMyFunc; + Tp: TFarProc; + Th:Thandle; + LabInt,labname:String; +begin + //if PPInt=2 then Exit; + Ddatabase:=StringOfChar(' ', 32); + Th := LoadLibrary('LabelSet.dll'); + if Th > 0 then + begin + try + Tp := GetProcAddress(Th, 'GetDllForm'); + if Tp <> nil then + begin + Tf := TMyFunc(Tp); + newh:=Tf(Application,0,2,0,0, + PChar(DCode), + PChar(DName), + PChar(Ddatabase), + PChar('ǩģ'), + PChar(''), + PChar(''), + '','','','','','','','',PChar(DConString) + ); + if Trim(PChar(Ddatabase))<>'' then + begin + Ddatabase:=Trim(PChar(Ddatabase)); + LabInt:=Trim( LeftBStr(Ddatabase,Pos('|',Ddatabase)-1) ) ; + labname:=Trim(RightBStr(Ddatabase,Length(Ddatabase)-Pos('|',Ddatabase) ) ); + with CDS_Sub do + begin + Edit; + FieldByName('LbName').Value:=labname; + //Post; + end; + end; + end + else + begin + ShowMessage('ӡִд'); + end; + finally + // FreeLibrary(); + end; + end + else + begin + ShowMessage('Ҳ'+Trim('LabelSet.dll')); + end; + +end; + +procedure TfrmProductOrderAnPai.V2Column9PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='APType'; + flagname:='ز'; + if ShowModal=1 then + begin + Self.CDS_Sub.Edit; + Self.CDS_Sub.FieldByName('APType').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmProductOrderAnPai.ToolButton11Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='LBGANGFLAG'; + flagname:='ױǩ'; + if ShowModal=1 then + begin + end; + GetGangLb(); + end; + finally + frmZDYHelp.Free; + end; +end; + +end. diff --git a/艾登贸易管理/U_ProductOrderAnPaiGQX.dfm b/艾登贸易管理/U_ProductOrderAnPaiGQX.dfm new file mode 100644 index 0000000..27fc1c6 --- /dev/null +++ b/艾登贸易管理/U_ProductOrderAnPaiGQX.dfm @@ -0,0 +1,970 @@ +object frmProductOrderAnPaiGQX: TfrmProductOrderAnPaiGQX + Left = 86 + Top = 8 + Width = 1024 + Height = 721 + Caption = #26816#39564#25351#31034#21333 + 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 = 1008 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + Visible = False + OnClick = ToolButton1Click + end + object ToolButton10: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = ToolButton10Click + end + object ToolButton5: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #30133#28857#31649#29702 + ImageIndex = 49 + Visible = False + OnClick = ToolButton5Click + end + object TBExport: TToolButton + Left = 213 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + Visible = False + OnClick = TBExportClick + end + object ToolButton9: TToolButton + Left = 276 + Top = 0 + Caption = #26816#21069#22238#20462 + ImageIndex = 54 + Visible = False + OnClick = ToolButton9Click + end + object TBPrint: TToolButton + Left = 359 + Top = 0 + AutoSize = True + Caption = #25171#21360 + DropdownMenu = PopupMenu1 + ImageIndex = 12 + Style = tbsDropDown + Visible = False + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 439 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel2: TPanel + Left = 0 + Top = 341 + Width = 1008 + Height = 342 + Align = alClient + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 1 + object cxGrid2: TcxGrid + Left = 2 + Top = 81 + Width = 1004 + Height = 259 + Align = alClient + TabOrder = 0 + object TV2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + Column = V2Column1 + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = V2Column1 + end + item + Kind = skSum + Column = V2Column7 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object V2Column10: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 39 + end + object V2Column2: TcxGridDBColumn + Caption = #22238#20179#26102#38388 + DataBinding.FieldName = 'ADefDate1' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 119 + end + object V2Column8: TcxGridDBColumn + Caption = #26579#21378 + DataBinding.FieldName = 'AOrddefstr4' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = V2Column8PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 82 + end + object V2Column11: TcxGridDBColumn + Caption = #22383#24067#21378 + DataBinding.FieldName = 'AOrddefstr6' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = V2Column11PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 57 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #26579#21378#32568#21495 + DataBinding.FieldName = 'GangNo' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object V2Column3: TcxGridDBColumn + Caption = #26412#21378#32568#21495 + DataBinding.FieldName = 'AOrddefstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 58 + end + object V2Column4: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'AOrddefstr2' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'M' + 'Kg') + HeaderAlignmentHorz = taCenter + Width = 59 + end + object V2Column9: TcxGridDBColumn + Caption = #25240#31639#25104#31859#31995#25968 + DataBinding.FieldName = 'ZSXS' + Width = 85 + end + object V2Column7: TcxGridDBColumn + Caption = #21305#25968#37327 + DataBinding.FieldName = 'AOrdQty2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 48 + end + object V2Column1: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'AOrdQty1' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = V2Column1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FonePurple + Width = 69 + end + object V2Column5: TcxGridDBColumn + Caption = #26816#39564#25968#37327#21333#20301 + DataBinding.FieldName = 'AOrddefstr3' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = V2Column5PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 83 + end + object V2Column6: TcxGridDBColumn + Caption = #26816#39564#35201#27714 + DataBinding.FieldName = 'AOrdDefNote1' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = V2Column6PropertiesButtonClick + Properties.OnEditValueChanged = cxGridDBColumn1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 101 + end + object V2Column12: TcxGridDBColumn + Caption = #22238#20462#25968#25454 + DataBinding.FieldName = 'AOrdFlag1' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 65 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + object ToolBar2: TToolBar + Left = 2 + Top = 2 + Width = 1004 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 1 + object ToolButton8: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20840#36873 + ImageIndex = 99 + Visible = False + OnClick = ToolButton8Click + end + object ToolButton7: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20840#24323 + ImageIndex = 129 + Visible = False + OnClick = ToolButton7Click + end + object ToolButton2: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + Visible = False + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 111 + Visible = False + OnClick = ToolButton4Click + end + object ToolButton6: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 96 + Visible = False + OnClick = ToolButton6Click + end + object ToolButton11: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #19968#38190#20445#23384 + ImageIndex = 97 + OnClick = ToolButton11Click + end + end + object Panel3: TPanel + Left = 2 + Top = 34 + Width = 1004 + Height = 47 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 2 + Visible = False + object Label1: TLabel + Left = 24 + Top = 16 + Width = 48 + Height = 12 + Caption = #22238#20179#26102#38388 + end + object Label2: TLabel + Left = 189 + Top = 16 + Width = 36 + Height = 12 + Caption = #21152#24037#21378 + end + object Label4: TLabel + Left = 503 + Top = 16 + Width = 48 + Height = 12 + Caption = #25968#37327#21333#20301 + end + object Label5: TLabel + Left = 634 + Top = 16 + Width = 72 + Height = 12 + Caption = #26816#39564#25968#37327#21333#20301 + end + object Label6: TLabel + Left = 782 + Top = 16 + Width = 48 + Height = 12 + Caption = #26816#39564#35201#27714 + end + object Label7: TLabel + Left = 349 + Top = 16 + Width = 36 + Height = 12 + Caption = #22383#24067#21378 + end + object DateTimePicker1: TDateTimePicker + Left = 74 + Top = 12 + Width = 103 + Height = 20 + Date = 41281.501696319440000000 + Format = 'yyyy-MM-dd' + Time = 41281.501696319440000000 + TabOrder = 0 + end + object BtnEditA1: TBtnEditA + Left = 226 + Top = 12 + Width = 101 + Height = 20 + Enabled = False + TabOrder = 1 + OnBtnClick = BtnEditA1BtnClick + end + object ComboBox1: TComboBox + Left = 556 + Top = 12 + Width = 60 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 2 + Items.Strings = ( + 'M' + 'Kg') + end + object BtnEditA2: TBtnEditA + Left = 709 + Top = 12 + Width = 53 + Height = 20 + TabOrder = 3 + OnBtnClick = BtnEditA2BtnClick + end + object BtnEditA3: TBtnEditA + Left = 833 + Top = 12 + Width = 114 + Height = 20 + TabOrder = 4 + OnBtnClick = BtnEditA3BtnClick + end + object BtnEditA4: TBtnEditA + Left = 386 + Top = 12 + Width = 101 + Height = 20 + Enabled = False + TabOrder = 5 + OnBtnClick = BtnEditA4BtnClick + end + end + object MovePanel2: TMovePanel + Left = 342 + Top = 128 + Width = 252 + Height = 40 + BevelInner = bvLowered + Caption = #27491#22312#25191#34892#25968#25454#25805#20316#65292#35831#31245#21518#12290#12290#12290 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 82 + Width = 1008 + Height = 259 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Column2 + end + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + Column = v1Column5 + end + item + Kind = skSum + Column = v1Column6 + end + item + Kind = skSum + Column = v1Column7 + end + item + Kind = skSum + Column = v1Column8 + end + item + Kind = skSum + Column = v1Column9 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object cxGridDBColumn2: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object cxGridDBColumn7: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1OrdDefStr1: TcxGridDBColumn + Caption = #20844#21496#32534#21495 + DataBinding.FieldName = 'OrdDefStr1' + HeaderAlignmentHorz = taCenter + Width = 90 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #20844#21496#21488#22836 + DataBinding.FieldName = 'OrdDefStr2' + HeaderAlignmentHorz = taCenter + Width = 90 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 73 + end + object v1JGFactoryName: TcxGridDBColumn + Caption = #26579#21378 + DataBinding.FieldName = 'FirstName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object v1Column1: TcxGridDBColumn + Caption = #22383#24067#21378 + DataBinding.FieldName = 'PBFactory' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1Column6: TcxGridDBColumn + Caption = #25237#22383#21305#25968 + DataBinding.FieldName = 'TPPS' + Width = 61 + end + object v1Column7: TcxGridDBColumn + Caption = #25237#22383#31859#25968#37327 + DataBinding.FieldName = 'TPMQty' + Width = 71 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 69 + end + object v1MPRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'MPRTSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1MPRTCF: TcxGridDBColumn + Caption = #25104#20998 + DataBinding.FieldName = 'MPRTCF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 69 + end + object v1MPRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object v1MPRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + Width = 54 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #22791#27880#21450#35201#27714 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 92 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + object v1Column4: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrderUnit' + Width = 60 + end + object v1Column5: TcxGridDBColumn + Caption = #22238#20179#21305#25968 + DataBinding.FieldName = 'HCPS' + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v1Column2: TcxGridDBColumn + Caption = #22238#20179#25968#37327 + DataBinding.FieldName = 'HCQty' + HeaderAlignmentHorz = taCenter + Width = 61 + end + object v1Column3: TcxGridDBColumn + Caption = #22238#20179#21333#20301 + DataBinding.FieldName = 'HCUnit' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column8: TcxGridDBColumn + Caption = #22238#20462#21305#25968 + DataBinding.FieldName = 'HXPS' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column9: TcxGridDBColumn + Caption = #22238#20462#25968#37327 + DataBinding.FieldName = 'HXQty' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column10: TcxGridDBColumn + Caption = #22238#20462#21333#20301 + DataBinding.FieldName = 'HXUnit' + HeaderAlignmentHorz = taCenter + Width = 61 + end + object cxGridDBColumn8: TcxGridDBColumn + Caption = #30830#35748#33394#21345 + DataBinding.FieldName = 'SOrddefstr2' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object cxGridDBColumn9: TcxGridDBColumn + Caption = #26631#31614 + DataBinding.FieldName = 'SLbName' + HeaderAlignmentHorz = taCenter + Width = 85 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv1 + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1008 + Height = 50 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 3 + object Label3: TLabel + Left = 19 + Top = 17 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object OrderNoM: TEdit + Tag = 2 + Left = 60 + Top = 9 + Width = 189 + Height = 32 + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Arial' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnChange = OrderNoMChange + end + end + object cxGrid4: TcxGrid + Left = 60 + Top = 72 + Width = 345 + Height = 177 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 4 + Visible = False + object Tv4: TcxGridDBTableView + OnDblClick = Tv4DblClick + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DS_OrderNo + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.FoneRed + object v4Column1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 179 + end + object v4Column2: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Width = 138 + end + end + object cxGrid4Level1: TcxGridLevel + GridView = Tv4 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 656 + Top = 192 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 624 + Top = 192 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 688 + Top = 192 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 784 + Top = 192 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 560 + Top = 144 + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = 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 = 496 + Top = 208 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 448 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 816 + Top = 192 + end + object PopupMenu1: TPopupMenu + Left = 544 + Top = 208 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object DataSource2: TDataSource + DataSet = CDS_Sub + Left = 944 + Top = 384 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 968 + Top = 384 + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 752 + Top = 192 + end + object CDS_OrderNo: TClientDataSet + Aggregates = <> + Params = <> + Left = 120 + Top = 104 + end + object DS_OrderNo: TDataSource + DataSet = CDS_OrderNo + Left = 192 + Top = 104 + end + object ADOQueryHC: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 720 + Top = 192 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 576 + Top = 512 + end +end diff --git a/艾登贸易管理/U_ProductOrderAnPaiGQX.pas b/艾登贸易管理/U_ProductOrderAnPaiGQX.pas new file mode 100644 index 0000000..67a6f41 --- /dev/null +++ b/艾登贸易管理/U_ProductOrderAnPaiGQX.pas @@ -0,0 +1,2138 @@ +unit U_ProductOrderAnPaiGQX; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus, cxPC, BtnEdit, cxTextEdit, cxButtonEdit, cxDropDownEdit, MovePanel; + +type + TfrmProductOrderAnPaiGQX = class(TForm) + ToolBar1: TToolBar; + TBPrint: TToolButton; + TBClose: TToolButton; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + TBExport: TToolButton; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + ToolButton1: TToolButton; + DataSource2: TDataSource; + CDS_Sub: TClientDataSet; + Panel2: TPanel; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + V2Column1: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ToolBar2: TToolBar; + ToolButton2: TToolButton; + ToolButton3: TToolButton; + ToolButton5: TToolButton; + ToolButton6: TToolButton; + ADOQueryPrint: TADOQuery; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + cxGridDBColumn2: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1OrdDefStr1: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1JGFactoryName: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + v1MPRTCodeName: TcxGridDBColumn; + v1MPRTSpec: TcxGridDBColumn; + v1MPRTCF: TcxGridDBColumn; + v1MPRTMF: TcxGridDBColumn; + v1MPRTKZ: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridDBColumn7: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + cxGridDBColumn8: TcxGridDBColumn; + cxGridDBColumn9: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + V2Column2: TcxGridDBColumn; + V2Column3: TcxGridDBColumn; + V2Column4: TcxGridDBColumn; + Panel1: TPanel; + Label3: TLabel; + OrderNoM: TEdit; + cxGrid4: TcxGrid; + Tv4: TcxGridDBTableView; + v4Column1: TcxGridDBColumn; + v4Column2: TcxGridDBColumn; + cxGrid4Level1: TcxGridLevel; + CDS_OrderNo: TClientDataSet; + DS_OrderNo: TDataSource; + V2Column5: TcxGridDBColumn; + V2Column6: TcxGridDBColumn; + V2Column7: TcxGridDBColumn; + V2Column8: TcxGridDBColumn; + V2Column9: TcxGridDBColumn; + ToolButton4: TToolButton; + ADOQueryHC: TADOQuery; + Panel3: TPanel; + DateTimePicker1: TDateTimePicker; + BtnEditA1: TBtnEditA; + ComboBox1: TComboBox; + BtnEditA2: TBtnEditA; + Label1: TLabel; + Label2: TLabel; + Label4: TLabel; + Label5: TLabel; + BtnEditA3: TBtnEditA; + Label6: TLabel; + V2Column10: TcxGridDBColumn; + ToolButton7: TToolButton; + ToolButton8: TToolButton; + V2Column11: TcxGridDBColumn; + BtnEditA4: TBtnEditA; + Label7: TLabel; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + cxGridPopupMenu2: TcxGridPopupMenu; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + ToolButton9: TToolButton; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + ToolButton10: TToolButton; + V2Column12: TcxGridDBColumn; + MovePanel2: TMovePanel; + ToolButton11: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure AOrdDefNote12DblClick(Sender: TObject); + procedure AOrdDefNote7BtnDnClick(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure ToolButton6Click(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure Tv4DblClick(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); + procedure V2Column1PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure V2Column4PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure V2Column5PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure V2Column6PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure V2Column8PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton4Click(Sender: TObject); + procedure BtnEditA1BtnClick(Sender: TObject); + procedure BtnEditA2BtnClick(Sender: TObject); + procedure BtnEditA3BtnClick(Sender: TObject); + procedure ToolButton8Click(Sender: TObject); + procedure ToolButton7Click(Sender: TObject); + procedure BtnEditA4BtnClick(Sender: TObject); + procedure V2Column11PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure ToolButton9Click(Sender: TObject); + procedure ToolButton10Click(Sender: TObject); + procedure ToolButton11Click(Sender: TObject); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + function SaveData():Boolean; + procedure UpdateHC(FFirstNo:String); + function YFData():Boolean; + function DELYFData():Boolean; + { Private declarations } + public + FFInt:Integer; + { Public declarations } + end; + +var + frmProductOrderAnPaiGQX: TfrmProductOrderAnPaiGQX; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun, U_ZDYHelp,U_iniParam, U_ZDYHelpSel,U_BefChkHX; + +{$R *.dfm} + +procedure TfrmProductOrderAnPaiGQX.FormDestroy(Sender: TObject); +begin + frmProductOrderAnPaiGQX:=nil; +end; + +procedure TfrmProductOrderAnPaiGQX.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderAnPaiGQX.FormCreate(Sender: TObject); +begin + + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderAnPaiGQX.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ָʾϢ',Tv1,'زֹ'); + WriteCxGrid('زϢ',Tv2,'زֹ'); +end; + +procedure TfrmProductOrderAnPaiGQX.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub_AnPai where LLId='''+Trim(Order_Main.fieldbyname('LLId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Sub); + SInitCDSData20(ADOQueryMain,CDS_Sub); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderAnPaiGQX.InitGridFH(); +begin +end; + +procedure TfrmProductOrderAnPaiGQX.InitForm(); +var + i:Integer; +begin + DateTimePicker1.DateTime:=SGetServerDateTime(ADOQueryTemp); + ReadCxGrid('ָʾϢ',Tv1,'زֹ'); + ReadCxGrid('زϢ',Tv2,'زֹ'); +end; + +function TfrmProductOrderAnPaiGQX.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + if IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ɾ쳣','ʾ',0); + Result:=False; + end; +end; + +procedure TfrmProductOrderAnPaiGQX.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv1,ADOQueryMain,'ɹб'); +end; + +procedure TfrmProductOrderAnPaiGQX.TBPrintClick(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ɹ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); + //SelPrintData(TV4,ADOQueryMain,'ͬѯ'); +end; + +procedure TfrmProductOrderAnPaiGQX.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderAnPaiGQX.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmProductOrderAnPaiGQX.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderAnPaiGQX.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderAnPaiGQX.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderAnPaiGQX.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderAnPaiGQX.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderAnPaiGQX.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible:=False; + TBSave.Visible:=False; + Tv1.OptionsSelection.CellSelect:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderAnPaiGQX.ToolButton2Click(Sender: TObject); +begin + with CDS_Sub do + begin + Append; + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + FieldByName('ADefDate1').Value:=DateTimePicker1.Date; + FieldByName('AOrddefstr4').Value:=Trim(BtnEditA1.Text); + FieldByName('AOrddefstr5').Value:=Trim(BtnEditA1.TxtCode); + FieldByName('AOrddefstr2').Value:=Trim(ComboBox1.Text); + FieldByName('AOrddefstr3').Value:=Trim(BtnEditA2.Text); + FieldByName('AOrdDefNote1').Value:=Trim(BtnEditA3.Text); + FieldByName('AOrddefstr6').Value:=Trim(BtnEditA4.Text); + Post; + end; + +end; + +procedure TfrmProductOrderAnPaiGQX.ToolButton3Click(Sender: TObject); +begin + if CDS_Sub.IsEmpty then Exit; + if Trim(CDS_Sub.fieldbyname('APID').AsString)<>'' then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from WFB_MJJY where APID='''+Trim(CDS_Sub.fieldbyname('APID').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('Ѳݲɾ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Sub_AnPai where APID='''+Trim(CDS_Sub.fieldbyname('APID').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Contract_Cloth_LL Set HCPS=(select isnull(sum(AOrdQty2),0) from JYOrder_Sub_AnPai A where A.LLID=Contract_Cloth_LL.LLID )'); + sql.Add(',HCMQty=(select isnull(sum(HCMQty),0) from JYOrder_Sub_AnPai A where A.LLID=Contract_Cloth_LL.LLID )'); + sql.Add(' where LLID='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update Contract_Cloth_LL Set HCQty=HCMQty*1.00/TPMQty*TPQty '); + sql.Add(' where LLID='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + if DELYFData()=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('Ӧʧ!','ʾ',0); + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + end; + end; + with CDS_Sub do + begin + Delete; + end; + if CDS_Sub.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Sub Set SOrdFlag20=0 where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; + {with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('UPdate Contract_Cloth_LL Set HCPS=0,HCQty=0,HCMQty=0 where OrdSubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryHC do + begin + Close; + sql.Clear; + sql.Add('select distinct(AOrddefstr5) AOrddefstr5 from JYOrder_Sub_AnPai where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOQueryHC.IsEmpty then + UpdateHC(Trim(ADOQueryHC.fieldbyname('AOrddefstr5').AsString)) + else + begin + with ADOQueryHC do + begin + First; + while not Eof do + begin + UpdateHC(Trim(ADOQueryHC.fieldbyname('AOrddefstr5').AsString)); + Next; + end; + end; + end; } + +end; + +function TfrmProductOrderAnPaiGQX.SaveData():Boolean; +var + maxno:String; +begin + try + ADOQueryCmd.Connection.BeginTrans; + ///ӱ + with CDS_Sub do + begin + First; + while not Eof do + begin + if Trim(CDS_Sub.fieldbyname('APId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,maxno,'','JYOrder_Sub_AnPai',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_Sub.fieldbyname('APId').AsString); + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrder_Sub_AnPai where APId='''+Trim(CDS_Sub.fieldbyname('APId').AsString)+''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(CDS_Sub.fieldbyname('APId').AsString)='' then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(Order_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + FieldByName('ApId').Value:=Trim(maxno); + FieldByName('ADefDate1').Value:=CDS_Sub.fieldbyname('ADefDate1').Value; + FieldByName('AOrddefstr4').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('AOrddefstr5').Value:=Trim(Order_Main.fieldbyname('FirstNo').AsString); + FieldByName('GangNo').Value:=CDS_Sub.fieldbyname('GangNo').Value; + FieldByName('AOrddefstr1').Value:=CDS_Sub.fieldbyname('AOrddefstr1').Value; + FieldByName('AOrddefstr2').Value:=CDS_Sub.fieldbyname('AOrddefstr2').Value; + if Trim(CDS_Sub.fieldbyname('ZSXS').AsString)<>'' then + FieldByName('ZSXS').Value:=CDS_Sub.fieldbyname('ZSXS').Value + else + FieldByName('ZSXS').Value:=1; + FieldByName('AOrdQty2').Value:=CDS_Sub.fieldbyname('AOrdQty2').Value; + FieldByName('AOrdQty1').Value:=CDS_Sub.fieldbyname('AOrdQty1').Value; + FieldByName('AOrddefstr3').Value:=CDS_Sub.fieldbyname('AOrddefstr3').Value; + FieldByName('AOrdDefNote1').Value:=CDS_Sub.fieldbyname('AOrdDefNote1').Value; + FieldByName('LLID').Value:=Order_Main.fieldbyname('LLID').Value; + FieldByName('AOrddefstr6').Value:=CDS_Sub.fieldbyname('AOrddefstr6').Value; + if CDS_Sub.fieldbyname('AOrdFlag1').AsBoolean=True then + FieldByName('AOrdFlag1').Value:=1 + else + FieldByName('AOrdFlag1').Value:=0; + + //RTSetSaveDataCDS(ADOQueryCmd,Tv2,CDS_Sub,'JYOrder_Sub_AnPai',0); + {if Trim(CDS_Sub.fieldbyname('APID').AsString)<>'' then + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOQueryTemp); + end else + begin + + end; } + if Trim(CDS_Sub.fieldbyname('APId').AsString)='' then + FieldByName('Filler').Value:=Trim(DName) + else + begin + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOQueryTemp); + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from Contract_Cloth_LL where LLId='''+Trim(Order_Main.fieldbyname('LLId').AsString)+''''); + Open; + end; + if Trim(ADOQueryTemp.fieldbyname('TPUnit').AsString)=Trim(CDS_Sub.fieldbyname('AOrddefstr2').AsString) then + begin + FieldByName('HCYZQty').Value:=CDS_Sub.fieldbyname('AOrdQty1').Value; + end else + begin + if Trim(CDS_Sub.fieldbyname('AOrddefstr2').AsString)='M' then + begin + FieldByName('HCYZQty').Value:=(CDS_Sub.fieldbyname('AOrdQty1').Value*1.00/ADOQueryTemp.fieldbyname('TPMQty').Value) + *ADOQueryTemp.fieldbyname('TPQty').Value ; + end; + end; + if Trim(CDS_Sub.fieldbyname('AOrddefstr2').AsString)='M' then + begin + FieldByName('HCMQty').Value:=CDS_Sub.fieldbyname('AOrdQty1').Value; + end else + begin + FieldByName('HCMQty').Value:=CDS_Sub.fieldbyname('AOrdQty1').Value*CDS_Sub.fieldbyname('ZSXS').Value; + end; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Sub Set SOrdFlag20=1 where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + CDS_Sub.Edit; + CDS_Sub.FieldByName('APId').Value:=Trim(maxno); + CDS_Sub.FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString); + + //Order_Sub.Post; + { with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add(' UPdate WFB_MJJY Set MJTypeOther='''+Trim(CDS_Sub.fieldbyname('AOrddefstr3').AsString)+''''); + SQL.Add(' where APId='''+Trim(maxno)+''''); + sql.Add(' UPdate CK_BanCP_KC Set KCQtyUnit='''+Trim(CDS_Sub.fieldbyname('AOrddefstr3').AsString)+''''); + SQL.Add(' where MJId in (select MJID from WFB_MJJY where APID='''+Trim(maxno)+''')'); + sql.Add(' UPdate CK_BanCP_CR Set QtyUnit='''+Trim(CDS_Sub.fieldbyname('AOrddefstr3').AsString)+''''); + SQL.Add(' where MJId in (select MJID from WFB_MJJY where APID='''+Trim(maxno)+''')'); + ExecSQL; + end; + } + if YFData()=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('²Ӧʧ!','ʾ',0); + Exit; + end; + Next; + end; + end; + { with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('UPdate Contract_Cloth_LL Set HCPS=0,HCQty=0,HCMQty=0 where OrdSubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryHC do + begin + Close; + sql.Clear; + sql.Add('select distinct(AOrddefstr5) AOrddefstr5 from JYOrder_Sub_AnPai where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + with ADOQueryHC do + begin + First; + while not Eof do + begin + UpdateHC(Trim(ADOQueryHC.fieldbyname('AOrddefstr5').AsString)); + Next; + end; + end; } + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Contract_Cloth_LL Set HCPS=(select isnull(sum(AOrdQty2),0) from JYOrder_Sub_AnPai A where A.LLID=Contract_Cloth_LL.LLID )'); + sql.Add(',HCMQty=(select isnull(sum(HCMQty),0) from JYOrder_Sub_AnPai A where A.LLID=Contract_Cloth_LL.LLID )'); + sql.Add(' where LLID='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + if (Trim(CDS_Sub.fieldbyname('AOrddefstr2').AsString)=Trim(Order_Main.fieldbyname('TPUnit').AsString)) then + sql.Add('Update Contract_Cloth_LL Set HCQty=(select isnull(Sum(AOrdQty1),0) from JYOrder_Sub_AnPai A where A.LLID=Contract_Cloth_LL.LLID) ') + else + sql.Add('Update Contract_Cloth_LL Set HCQty=HCMQty*1.00/TPMQty*TPQty '); + sql.Add(' where LLID='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + {if YFData()=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('²Ӧʧ!','ʾ',0); + Exit; + end; } + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + Result:=False; + MovePanel2.Visible:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderAnPaiGQX.AOrdDefNote12DblClick(Sender: TObject); +var + fsj:string; + FWZ:Integer; +begin + fsj:=Trim(TEdit(Sender).Hint); + FWZ:=Pos('/',fsj); + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:=Copy(fsj,1,FWZ-1); + flagname:=Copy(fsj,FWZ+1,Length(fsj)-fwz); + if ShowModal=1 then + begin + TEdit(Sender).Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmProductOrderAnPaiGQX.AOrdDefNote7BtnDnClick(Sender: TObject); +begin + TBtnEditC(Sender).Text:=''; + TBtnEditC(Sender).TxtCode:=''; +end; + +procedure TfrmProductOrderAnPaiGQX.cxTabControl1Change(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderAnPaiGQX.ToolButton5Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WFBCD'; + flagname:='õ'; + fnote:=True; + V1Note.Caption:='Ӣ'; + if ShowModal=1 then + begin + + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmProductOrderAnPaiGQX.ToolButton6Click(Sender: TObject); +var + fPrintFile:string; +begin + if CDS_Sub.IsEmpty then Exit; + if CDS_Sub.Locate('SSel',True,[])=False then + begin + Application.MessageBox('δѡҪӡ!','ʾ',0); + Exit; + end; + CDS_Sub.DisableControls; + with CDS_Sub do + begin + First; + while not Eof do + begin + if CDS_Sub.FieldByName('SSel').AsBoolean=True then + begin + if Trim(CDS_Sub.fieldbyname('APID').AsString) ='' then + begin + CDS_Sub.EnableControls; + Application.MessageBox('δ治ܴӡ!','ʾ',0); + Exit; + end; + + end; + Next; + end; + end; + CDS_Sub.EnableControls; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾǩ.rmf' ; + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + //RM1.LoadFromFile(fPrintFile); + //RM1.ShowReport; + //RM1.PrintReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾǩ.rmf'),'ʾ',0); + Exit; + end; + CDS_Sub.DisableControls; + with CDS_Sub do + begin + First; + while not Eof do + begin + if CDS_Sub.FieldByName('SSel').AsBoolean=True then + begin + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select A.*,OrderNoM=B.OrderNo ,B.MPRTCodeName,C.PRTColor from JYOrder_Sub_AnPai A '); + sql.Add('inner join JYOrder_Main B on A.MainId=B.MainId'); + sql.Add('inner join JYOrder_Sub C on A.SubId=C.SubId where A.APID='''+Trim(CDS_Sub.fieldbyname('APID').AsString)+''''); + Open; + end; + RM1.LoadFromFile(fPrintFile); + RM1.PrintReport; + end; + Next; + end; + end; + CDS_Sub.EnableControls; + + + +end; + +procedure TfrmProductOrderAnPaiGQX.OrderNoMChange(Sender: TObject); +var + mvalue:String; +begin + mvalue:=Trim(OrderNoM.Text); + if Length(Trim(mvalue))<4 then + begin + cxGrid4.Visible:=False; + Exit; + end; + mvalue:='%'+Trim(mvalue)+'%'; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select OrderNo,MPRTCodeName,A.MainId from JYOrder_Main A'); + sql.Add(' where A.orderno like :orderno '); + sql.Add(' and A.MainId in(select MainId from JYOrder_Sub B where B.Mainid=A.MainId and B.subId in(select OrdSubId from Contract_Cloth_LL))'); + Parameters.ParamByName('orderno').Value:=mvalue; + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_OrderNo); + SInitCDSData20(ADOQueryTemp,CDS_OrderNo); + if CDS_OrderNo.IsEmpty then cxGrid4.Visible:=False else cxGrid4.Visible:=True; +end; + +procedure TfrmProductOrderAnPaiGQX.Tv4DblClick(Sender: TObject); +begin + cxGrid4.Visible:=False; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*,C.FirstName,C.FirstNo,C.TPPS,C.TPMQty,C.LLID,C.HXPS,C.HXQty,C.HXUnit,C.DHIDHelp,C.DHID,C.TPUnit '); + sql.Add(',PBFactory=(select Top 1 AA.factoryNoName from Contract_Main AA inner join Contract_Cloth_DH BB on AA.MainId=BB.MainId'); + sql.Add(' where BB.DHID=C.DHID)'); + sql.Add(',HCUnit=(select Top 1 AOrddefstr2 from JYOrder_Sub_AnPai AA where AA.SubId=B.SubId)'); + sql.Add('from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId '); + sql.Add(' inner join Contract_Cloth_LL C on C.OrdSubId=B.SubId'); + sql.Add('where A.MainId='''+Trim(CDS_OrderNo.fieldbyname('MainId').AsString)+''''); + sql.Add(' and C.JXJGFlag=0'); + sql.Add(' and exists(select * from Contract_Cloth_LLMX LM where LM.OrdSubId=B.SubId and LM.OrdSubId=C.OrdSubId )'); + //ShowMessage(SQL.Text); + Open; + end; + SCreateCDS20(ADOQueryTemp,Order_Main); + SInitCDSData20(ADOQueryTemp,Order_Main); +end; + +procedure TfrmProductOrderAnPaiGQX.Tv1FocusedRecordChanged( + Sender: TcxCustomGridTableView; APrevFocusedRecord, + AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); +begin + InitGrid(); + BtnEditA1.TxtCode:=Trim(Order_Main.fieldbyname('FirstNo').AsString); + BtnEditA1.Text:=Trim(Order_Main.fieldbyname('FirstName').AsString); + BtnEditA4.Text:=Trim(Order_Main.fieldbyname('PBFactory').AsString); +end; + +procedure TfrmProductOrderAnPaiGQX.V2Column1PropertiesEditValueChanged( + Sender: TObject); +//var + //mvalue,FFieldName,mvalue10,mvalue20:String; + //FHCPS,FHCQty,FHCMQty:Double; +begin + {if Trim(CDS_Sub.fieldbyname('AOrddefstr4').AsString)='' then + begin + Application.MessageBox('ȾΪ!','ʾ',0); + Exit; + end; + with Self.ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL A '); + sql.Add(' where A.FirstNo='''+Trim(CDS_Sub.fieldbyname('AOrddefstr5').AsString)+''''); + sql.Add(' and A.OrdSubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+''''); + Open; + end; + if Self.ADOQueryTemp.IsEmpty then + begin + Application.MessageBox('ȾûӦ!','ʾ',0); + Exit; + end; + mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + if FFieldName='AOrdQty1' then + begin + if Trim(CDS_Sub.fieldbyname('AOrddefstr2').AsString)='' then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; + end; + if Trim(mvalue)='' then + begin + if FFieldName='ZSXS' then + mvalue:='1' + else + if FFieldName='AOrddefstr2' then + mvalue:='' + else + mvalue:='0'; + end; + + with CDS_Sub do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Sub_AnPai '); + if Trim(FFieldName)='AOrddefstr2' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'='+Trim(mvalue)); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where APId='''+Trim(CDS_Sub.fieldbyname('APId').AsString)+''''); + ExecSQL; + end; + if Trim(FFieldName)='AOrdQty2' then + begin + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select isnull(Sum(AOrdQty2),0) HCPS,isnull(Sum(AOrdQty1),0) HCQty from JYOrder_Sub_AnPai '); + sql.Add(' where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and AOrddefstr5='''+Trim(CDS_Sub.fieldbyname('AOrddefstr5').AsString)+''''); + Open; + end; + FHCPS:=ADOQueryTemp.FieldByName('HCPS').Value; + if FHCPS>0 then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL where OrdSubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and FirstNo='''+Trim(CDS_Sub.fieldbyname('AOrddefstr5').AsString)+''''); + SQL.Add(' order by LLIdx'); + Open; + end; + with ADOQueryTemp do + begin + First; + while (not eof) and (FHCPS>0) do + begin + if FHCPS>=FieldByName('TPPS').Value then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCPS=TPPS '); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCPS:=FHCPS-FieldByName('TPPS').Value; + end else + begin + + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCPS='+FloatToStr(FHCPS)); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCPS:=0; + end; + Next; + end; + end; + end; + end; + if Trim(FFieldName)='AOrdQty1' then + begin + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select isnull(Sum(AOrdQty2),0) HCPS,isnull(Sum(AOrdQty1),0) HCQty from JYOrder_Sub_AnPai '); + sql.Add(' where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and AOrddefstr5='''+Trim(CDS_Sub.fieldbyname('AOrddefstr5').AsString)+''''); + Open; + end; + FHCQty:=ADOQueryTemp.FieldByName('HCQty').Value; + if FHCQty>0 then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL where OrdSubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and FirstNo='''+Trim(CDS_Sub.fieldbyname('AOrddefstr5').AsString)+''''); + SQL.Add(' order by LLIdx'); + Open; + end; + with ADOQueryTemp do + begin + First; + while (not eof) and (FHCQty>0) do + begin + if FHCQty>=FieldByName('BCPQty').Value then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCQty=BCPQty '); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCQty:=FHCQty-FieldByName('BCPQty').Value; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCQty='+FloatToStr(FHCQty)); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCQty:=0; + end; + Next; + end; + end; + end; + end;} +end; +procedure TfrmProductOrderAnPaiGQX.UpdateHC(FFirstNo:String); +var + FHCPS,FHCYZQty,FHCMQty:Double; +begin + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select isnull(Sum(AOrdQty2),0) HCPS from JYOrder_Sub_AnPai '); + sql.Add(' where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and AOrddefstr5='''+Trim(FFirstNo)+''''); + Open; + end; + FHCPS:=ADOQueryTemp.FieldByName('HCPS').Value; + if FHCPS=0 then + begin + + end; + if FHCPS>0 then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL where OrdSubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and FirstNo='''+Trim(FFirstNo)+''''); + SQL.Add(' order by LLIdx'); + Open; + end; + with ADOQueryTemp do + begin + First; + while (not eof) and (FHCPS>0) do + begin + if FHCPS>=FieldByName('TPPS').Value then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCPS=TPPS '); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCPS:=FHCPS-FieldByName('TPPS').Value; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCPS='+FloatToStr(FHCPS)); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCPS:=0; + end; + Next; + end; + end; + end; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select isnull(Sum(HCYZQty),0) HCYZQty,isnull(Sum(HCMQty),0) HCMQty from JYOrder_Sub_AnPai '); + sql.Add(' where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and AOrddefstr5='''+Trim(FFirstNo)+''''); + Open; + end; + FHCYZQty:=ADOQueryTemp.FieldByName('HCYZQty').Value; + FHCMQty:=ADOQueryTemp.FieldByName('HCMQty').Value; + if FHCYZQty>=0 then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL where OrdSubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + sql.Add(' and FirstNo='''+Trim(FFirstNo)+''''); + SQL.Add(' order by LLIdx'); + Open; + end; + with ADOQueryTemp do + begin + First; + while (not eof) and (FHCYZQty>0) do + begin + if FHCYZQty>=FieldByName('BCPQty').Value then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCQty=BCPQty '); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCYZQty:=FHCYZQty-FieldByName('BCPQty').Value; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCQty='+FloatToStr(FHCYZQty)); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCYZQty:=0; + end; + Next; + end; + end; + with ADOQueryTemp do + begin + First; + while (not eof) and (FHCMQty>0) do + begin + if FHCMQty>=FieldByName('BCPMQty').Value then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCMQty=BCPMQty '); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCMQty:=FHCMQty-FieldByName('BCPMQty').Value; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('Update Contract_Cloth_LL Set HCMQty='+FloatToStr(FHCMQty)); + sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+''''); + ExecSQL; + end; + FHCMQty:=0; + end; + Next; + end; + end; + end; +end; + +procedure TfrmProductOrderAnPaiGQX.cxGridDBColumn1PropertiesEditValueChanged( + Sender: TObject); +//var + //mvalue,FFieldName:String; +begin + {mvalue:=TcxTextEdit(Sender).EditingText; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_Sub do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Sub_AnPai '); + if Trim(mvalue)<>'' then + begin + sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+''''); + end else + begin + sql.Add(' Set '+FFieldName+'=NULL'); + end; + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where APId='''+Trim(CDS_Sub.fieldbyname('APId').AsString)+''''); + ExecSQL; + end; } +end; + + +procedure TfrmProductOrderAnPaiGQX.V2Column4PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_Sub.Edit; + Self.CDS_Sub.FieldByName('AOrddefstr2').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Sub_AnPai '); + sql.Add(' Set AOrddefstr2='''+Trim(ClientDataSet1.fieldbyname('ZDYName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where APId='''+Trim(CDS_Sub.fieldbyname('APId').AsString)+''''); + { sql.Add(' UPdate WFB_MJJY Set MJStr1='''+Trim(ClientDataSet1.fieldbyname('ZDYName').AsString)+''''); + SQL.Add(' where APId='''+Trim(CDS_Sub.fieldbyname('APId').AsString)+''''); } + ExecSQL; + end; + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmProductOrderAnPaiGQX.V2Column5PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + Self.CDS_Sub.Edit; + Self.CDS_Sub.FieldByName('AOrddefstr3').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmProductOrderAnPaiGQX.V2Column6PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +var + mvalue:string; +begin + mvalue:=Trim(CDS_Sub.FieldByName('AOrdDefNote1').AsString); + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='JYYQ'; + flagname:='Ҫ'; + if ShowModal=1 then + begin + Self.CDS_Sub.Edit; + Self.CDS_Sub.FieldByName('AOrdDefNote1').Value:=mvalue+frmZDYHelpSel.ReturnStr; + {with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Sub_AnPai '); + sql.Add(' Set AOrdDefNote1='''+Trim(mvalue+frmZDYHelpSel.ReturnStr)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where APId='''+Trim(CDS_Sub.fieldbyname('APId').AsString)+''''); + ExecSQL; + end; } + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmProductOrderAnPaiGQX.V2Column8PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + //flag:='RKPlace'; + flag:='FactoryNo1Name'; + flagname:='Ⱦ'; + MainType:='Ⱦ'; + if ShowModal=1 then + begin + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL A '); + sql.Add(' where A.FirstNo='''+Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYNo').AsString)+''''); + sql.Add(' and A.OrdSubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + Application.MessageBox('ȾûӦ!','ʾ',0); + + end else + begin + with CDS_Sub do + begin + Edit; + FieldByName('AOrddefstr4').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + FieldByName('AOrddefstr5').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + {with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate JYOrder_Sub_AnPai '); + sql.Add(' Set AOrddefstr5='''+Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString)+''''); + sql.Add(' ,AOrddefstr4='''+Trim(ClientDataSet1.fieldbyname('ZDYName').AsString)+''''); + SQL.Add(',Editer='''+Trim(DName)+''''); + SQL.Add(',Edittime=getdate() '); + SQL.Add(' where APId='''+Trim(CDS_Sub.fieldbyname('APId').AsString)+''''); + ExecSQL; + end;} + end; + + end; + end; + finally + //frmZDYHelp.Free; + end; +end; + +procedure TfrmProductOrderAnPaiGQX.ToolButton4Click(Sender: TObject); +var + FDW:String; +begin + if CDS_Sub.Locate('ADefDate1',null,[])=True then + begin + Application.MessageBox('زʱ䲻Ϊ!','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('AOrddefstr4',null,[])=True then + begin + Application.MessageBox('ȾΪ!','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('AOrddefstr4','',[])=True then + begin + Application.MessageBox('ȾΪ!','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('GangNo',null,[])=True then + begin + Application.MessageBox('׺ŲΪ!','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('AOrddefstr2',null,[])=True then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('AOrddefstr2','',[])=True then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('AOrddefstr2','Kg',[])=True then + begin + if Trim(CDS_Sub.FieldByName('ZSXS').AsString)='' then + begin + Application.MessageBox('ϵΪ!','ʾ',0); + Exit; + end; + end; + if CDS_Sub.Locate('AOrdQty2',null,[])=True then + begin + Application.MessageBox('ƥΪ!','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('AOrdQty1',null,[])=True then + begin + Application.MessageBox('Ϊ!','ʾ',0); + Exit; + end; + { if CDS_Sub.Locate('AOrdQty1','',[])=True then + begin + Application.MessageBox('Ϊ!','ʾ',0); + Exit; + end;} + FDW:=Trim(CDS_Sub.fieldbyname('AOrddefstr2').AsString); + if CDS_Sub.Locate('AOrddefstr2',FDW,[])=False then + begin + Application.MessageBox('λһ!','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('AOrddefstr3',null,[]) then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; + if CDS_Sub.Locate('AOrddefstr3','',[]) then + begin + Application.MessageBox('λΪ!','ʾ',0); + Exit; + end; + FDW:=Trim(CDS_Sub.fieldbyname('AOrddefstr3').AsString); + if CDS_Sub.Locate('AOrddefstr3',FDW,[])=False then + begin + Application.MessageBox('λһ!','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1* from Contract_Cloth_LL where OrdSubId='''+Trim(Order_Main.fieldbyname('Subid').AsString)+''''); + Open; + end; + if Trim(ADOQueryTemp.fieldbyname('TPUnit').AsString)='M' then + begin + if CDS_Sub.Locate('AOrddefstr2','Kg',[]) then + begin + Application.MessageBox('λΪM,زλΪKg!','ʾ',0); + Exit; + end; + end; + OrderNoM.SetFocus; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + if SaveData() then + begin + MovePanel2.Visible:=False; + Application.MessageBox('ɹ!','ʾ',0); + Exit; + end; + MovePanel2.Visible:=False; +end; + +procedure TfrmProductOrderAnPaiGQX.BtnEditA1BtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='FactoryNo1Name'; + flagname:='Ⱦ'; + MainType:='Ⱦ'; + if ShowModal=1 then + begin + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LL A '); + sql.Add(' where A.FirstNo='''+Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYNo').AsString)+''''); + sql.Add(' and A.OrdSubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + Application.MessageBox('ȾûӦ!','ʾ',0); + + end else + begin + BtnEditA1.Text:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + BtnEditA1.TxtCode:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + + end; + end; + finally + //frmZDYHelp.Free; + end; +end; +function TfrmProductOrderAnPaiGQX.YFData():Boolean; +var + CRID,OrdMainId,YFID,Price,LLID:String; +begin + Result:=False; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_CR where YFTypeID='''+Trim(CDS_Sub.fieldbyname('APID').AsString)+''''); + ExecSQL; + end; + OrdMainId:=Trim(Order_Main.fieldbyname('MainId').AsString); + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + if Trim(Order_Main.fieldbyname('DHIDHelp').AsString)='' then + sql.Add('select Top 1 * from Contract_Cloth_LLMX where DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+'''') + else + sql.Add('select Top 1 * from Contract_Cloth_LLMX where DHID='''+Trim(Order_Main.fieldbyname('DHIDHelp').AsString)+'''') ; + Open; + end; + Price:=ADOQueryTemp.fieldbyname('JGPrice').AsString; + if Trim(Price)='' then Price:='0'; + {with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + sql.Add(' and YFTypeId='''+Trim(Order_Main.fieldbyname('LLid').AsString)+''''); + if Trim(Order_Main.fieldbyname('DHIDHelp').AsString)='' then + sql.Add(' and YFName=''Ⱦ'' ') + else + sql.Add(' and YFName=''ӹ'' '); + Open; + end;} + if CDS_Sub.FieldByName('AOrdFlag1').AsBoolean=False then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + sql.Add(' and YFTypeId='''+Trim(CDS_Sub.fieldbyname('APId').AsString)+''''); + if Trim(Order_Main.fieldbyname('DHIDHelp').AsString)='' then + sql.Add(' and YFName=''Ⱦ'' ') + else + sql.Add(' and YFName=''ӹ'' '); + Open; + end; + + if ADOQueryTemp.IsEmpty then + begin + + if GetLSNo(ADOQueryCmd,YFID,'RJ','YF_Money_CR',3,1)=False then + begin + Application.MessageBox('ȡȾӦʧ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('YFID').Value:=Trim(YFID); + FieldByName('YFTypeId').Value:=Trim(CDS_Sub.fieldbyname('APId').AsString); + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('CRType').Value:='ӦǼ'; + FieldByName('CRFlag').Value:='Ӧ'; + FieldByName('QtyFlag').Value:=1; + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('CRTime').Value:=CDS_Sub.fieldbyname('ADefDate1').Value; + FieldByName('Qty').Value:=CDS_Sub.fieldbyname('AOrdQty1').Value; + FieldByName('YFType').Value:='Զ'; + FieldByName('Price').Value:=Price; + FieldByName('HuiLv').Value:=1; + FieldByName('BZType').Value:=''; + FieldByName('ComTaiTou').Value:=Trim(Order_Main.fieldbyname('OrdDefStr2').AsString); + FieldByName('QtyUnit').Value:=Trim(Order_Main.fieldbyname('TPUnit').AsString); + if Trim(Order_Main.fieldbyname('DHIDHelp').AsString)='' then + FieldByName('YFName').Value:='Ⱦ' + else + FieldByName('YFName').Value:='ӹ'; + FieldByName('MainId').Value:=Trim(OrdMainId); + Post; + end; + end else + begin + YFID:=Trim(ADOQueryTemp.fieldbyname('YFID').AsString); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate YF_Money_CR Set Price='+Price); + sql.Add(',Qty='+CDS_Sub.fieldbyname('AOrdQty1').AsString); + SQL.Add(',CRTime='''+Trim(CDS_Sub.fieldbyname('ADefDate1').AsString)+''''); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + end; + end; + + + //if Trim(Order_Main.fieldbyname('DHIDHelp').AsString)='' then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select Case when HXQty>0 then HCQty-HXQty else HCQty end as HCQty'); + SQL.Add(',Case when HXPS>0 then HCPS-HXPS else HCPS end as HCPS'); + SQL.Add(' from Contract_Cloth_LL where LLID='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + Open; + end; + { with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update YF_Money_CR Set Qty='+ADOQueryTemp.fieldbyname('HCQty').AsString); + sql.Add(',PS='+ADOQueryTemp.fieldbyname('HCPS').AsString); + sql.Add(' where YFTypeId='''+Trim(Order_Main.fieldbyname('LLid').AsString)+''''); + ExecSQL; + end; } + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty'); + sql.Add(' where YFID='''+Trim(YFID)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + Result:=True; +end; +function TfrmProductOrderAnPaiGQX.DELYFData():Boolean; +var + CRID,OrdMainId,YFID,Price,LLID:String; +begin + Result:=False; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete YF_Money_CR where YFTypeID='''+Trim(CDS_Sub.fieldbyname('APID').AsString)+''''); + ExecSQL; + end; + OrdMainId:=Trim(Order_Main.fieldbyname('MainId').AsString); + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + CRID:=ADOQueryTemp.fieldbyname('CRID').AsString; + end else + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_CRID set CRID=CRID+1'); + sql.Add('select * from YF_Money_CRID '); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').AsString; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from YF_Money_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=StrToInt(CRID); + FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString); + FieldByName('ZdyStr1').Value:='Ӧ'; + Post; + end; + end; + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select Case when HXQty>0 then HCQty-HXQty else HCQty end as HCQty'); + SQL.Add(',Case when HXPS>0 then HCPS-HXPS else HCPS end as HCPS'); + SQL.Add(' from Contract_Cloth_LL where LLID='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + Open; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)'); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + Result:=True; +end; + +procedure TfrmProductOrderAnPaiGQX.BtnEditA2BtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='OrderUnit'; + flagname:='λ'; + if ShowModal=1 then + begin + BtnEditA2.Text:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmProductOrderAnPaiGQX.BtnEditA3BtnClick(Sender: TObject); +begin + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='JYYQ'; + flagname:='Ҫ'; + if ShowModal=1 then + begin + BtnEditA3.Text:=Trim(BtnEditA3.Text)+frmZDYHelpSel.ReturnStr; + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmProductOrderAnPaiGQX.ToolButton8Click(Sender: TObject); +begin + CDS_Sub.DisableControls; + with CDS_Sub do + begin + First; + while not Eof do + begin + Edit; + FieldByName('SSel').Value:=True; + Post; + Next; + end; + end; + CDS_Sub.EnableControls; +end; + +procedure TfrmProductOrderAnPaiGQX.ToolButton7Click(Sender: TObject); +begin + CDS_Sub.DisableControls; + with CDS_Sub do + begin + First; + while not Eof do + begin + Edit; + FieldByName('SSel').Value:=False; + Post; + Next; + end; + end; + CDS_Sub.EnableControls; +end; + +procedure TfrmProductOrderAnPaiGQX.BtnEditA4BtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='FactoryNo1Name'; + flagname:=''; + MainType:=''; + if ShowModal=1 then + begin + BtnEditA4.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmProductOrderAnPaiGQX.V2Column11PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='FactoryNo1Name'; + flagname:=''; + MainType:=''; + if ShowModal=1 then + begin + begin + with CDS_Sub do + begin + Edit; + FieldByName('AOrddefstr6').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + + end; + end; + finally + //frmZDYHelp.Free; + end; +end; + +procedure TfrmProductOrderAnPaiGQX.ToolButton9Click(Sender: TObject); +begin + try + frmBefChkHX:=TfrmBefChkHX.Create(Application); + with frmBefChkHX do + begin + orderno.Caption:=Trim(Self.Order_Main.fieldbyname('OrderNo').AsString); + PRTColor.Caption:=Trim(Self.Order_Main.fieldbyname('PRTColor').AsString); + FirstName.Caption:=Trim(Self.Order_Main.fieldbyname('FirstName').AsString); + PBFactory.Caption:=Trim(Self.Order_Main.fieldbyname('PBFactory').AsString); + FLLID:=Trim(Self.Order_Main.fieldbyname('LLID').AsString); + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_BefChkHX where LLID='''+Trim(Order_Main.fieldbyname('LLID').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQuery1,ClientDataSet1); + SInitCDSData20(ADOQuery1,ClientDataSet1); + if ShowModal=1 then + begin + + end; + end; + finally + frmBefChkHX.Free; + end; +end; + +procedure TfrmProductOrderAnPaiGQX.ToolButton10Click(Sender: TObject); +begin + if Order_Main.IsEmpty=False then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*,C.FirstName,C.FirstNo,C.TPPS,C.TPMQty,C.LLID,C.HXPS,C.HXQty,C.HXUnit '); + sql.Add(',PBFactory=(select Top 1 AA.factoryNoName from Contract_Main AA inner join Contract_Cloth_DH BB on AA.MainId=BB.MainId'); + sql.Add(' where BB.DHID=C.DHID)'); + sql.Add(',HCQty=(select sum(AOrdQty1) from JYOrder_Sub_AnPai AA where AA.SubId=B.SubId)'); + sql.Add(',HCPS=(select sum(AOrdQty2) from JYOrder_Sub_AnPai AA where AA.SubId=B.SubId)'); + sql.Add(',HCUnit=(select Top 1 AOrddefstr2 from JYOrder_Sub_AnPai AA where AA.SubId=B.SubId)'); + sql.Add('from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId '); + sql.Add(' inner join Contract_Cloth_LL C on C.OrdSubId=B.SubId'); + sql.Add('where A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add(' and C.JXJGFlag=0'); + Open; + end; + SCreateCDS20(ADOQueryTemp,Order_Main); + SInitCDSData20(ADOQueryTemp,Order_Main); + end; +end; + +procedure TfrmProductOrderAnPaiGQX.ToolButton11Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + MovePanel2.Visible:=True; + MovePanel2.Refresh; + try + ADOQueryCmd.Connection.BeginTrans; + Order_Main.DisableControls; + with Order_Main do + begin + First; + while not Eof do + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub_AnPai where LLId='''+Trim(Order_Main.fieldbyname('LLId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_Sub); + SInitCDSData20(ADOQueryTemp,CDS_Sub); + with CDS_Sub do + begin + First; + while not Eof do + begin + if YFData()=False then + begin + MovePanel2.Visible:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('²Ӧʧ!','ʾ',0); + Exit; + end; + Next; + end; + end; + Next; + end; + end; + Order_Main.EnableControls; + MovePanel2.Visible:=False; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ!','ʾ',0); + Exit; + except + MovePanel2.Visible:=False; + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣!','ʾ',0); + end; +end; + +end. diff --git a/艾登贸易管理/U_ProductOrderLBNameSet.dfm b/艾登贸易管理/U_ProductOrderLBNameSet.dfm new file mode 100644 index 0000000..94038b4 --- /dev/null +++ b/艾登贸易管理/U_ProductOrderLBNameSet.dfm @@ -0,0 +1,712 @@ +object frmProductOrderLBNameSet: TfrmProductOrderLBNameSet + Left = 215 + Top = 114 + Width = 1094 + Height = 600 + Caption = #26631#31614#35774#32622 + 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 = 1285 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 107 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + OnClick = ToolButton1Click + end + object TBPrint: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object ToolButton2: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21367#26631#31614#35774#32622 + ImageIndex = 60 + OnClick = ToolButton2Click + end + object ToolButton4: TToolButton + Left = 351 + Top = 0 + AutoSize = True + Caption = #21253#26631#31614#35774#32622 + ImageIndex = 60 + OnClick = ToolButton4Click + end + object ToolButton3: TToolButton + Left = 450 + Top = 0 + AutoSize = True + Caption = #30382#37325#35774#32622'(Kg)' + ImageIndex = 29 + OnClick = ToolButton3Click + end + object ToolButton5: TToolButton + Left = 561 + Top = 0 + AutoSize = True + Caption = #31995#25968#35774#32622 + ImageIndex = 29 + OnClick = ToolButton5Click + end + object PiZhong: TEdit + Left = 648 + Top = 0 + Width = 121 + Height = 30 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + end + object TBClose: TToolButton + Left = 769 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1285 + Height = 67 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 179 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 318 + Top = 15 + Width = 54 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 476 + Top = 15 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 179 + Top = 39 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 476 + Top = 39 + Width = 54 + Height = 12 + Caption = #35268' '#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 318 + Top = 39 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 621 + Top = 39 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 621 + Top = 15 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNoM: TEdit + Tag = 2 + Left = 220 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoMChange + OnKeyPress = OrderNoMKeyPress + end + object CustomerNoName: TEdit + Tag = 2 + Left = 371 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 3 + OnChange = OrderNoMChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 529 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 4 + OnChange = OrderNoMChange + end + object ConNo: TEdit + Tag = 2 + Left = 220 + Top = 35 + Width = 77 + Height = 20 + TabOrder = 5 + OnChange = OrderNoMChange + OnKeyPress = ConNoKeyPress + end + object MPRTSpec: TEdit + Tag = 2 + Left = 530 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 6 + OnChange = OrderNoMChange + end + object MPRTCode: TEdit + Tag = 2 + Left = 371 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 7 + OnChange = OrderNoMChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 650 + Top = 35 + Width = 56 + Height = 20 + TabOrder = 8 + OnChange = OrderNoMChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 650 + Top = 11 + Width = 56 + Height = 20 + TabOrder = 9 + OnChange = OrderNoMChange + end + end + object cxGrid1: TcxGrid + Left = 60 + Top = 108 + Width = 1225 + Height = 421 + TabOrder = 2 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 71 + end + object v1OrdDefStr1: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'MPRTCode' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 91 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 66 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 69 + end + object v1MPRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'MPRTSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1MPRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1MPRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + Options.Focusing = False + Width = 59 + end + object v1Column1: TcxGridDBColumn + Caption = #21367#26631#31614#21517#31216 + DataBinding.FieldName = 'LBName' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column1PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 96 + end + object v1Column3: TcxGridDBColumn + Caption = #21253#26631#31614#21517#31216 + DataBinding.FieldName = 'NLBName' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column3PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 125 + end + object v1Column2: TcxGridDBColumn + Caption = #30382#37325'(Kg)' + DataBinding.FieldName = 'PiZhong' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 72 + end + object v1Column5: TcxGridDBColumn + Caption = #25442#31639#31995#25968 + DataBinding.FieldName = 'Xs' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object v1Column6: TcxGridDBColumn + Caption = #25442#31639#31995#25968#31867#22411 + DataBinding.FieldName = 'xsType' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsEditFixedList + Properties.Items.Strings = ( + '' + '' + #38271#24230#25442#31639#20928#37325 + #20928#37325#25442#31639#38271#24230) + Properties.ReadOnly = False + Properties.OnEditValueChanged = v1Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 109 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel4: TPanel + Left = 410 + Top = 137 + Width = 231 + Height = 216 + TabOrder = 3 + Visible = False + object Label14: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 229 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #25253#34920#21517#31216 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 206 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object Button1: TButton + Left = 83 + Top = 176 + Width = 75 + Height = 25 + Caption = #30830#23450 + TabOrder = 1 + OnClick = Button1Click + end + object RadioGroup1: TRadioGroup + Left = 56 + Top = 24 + Width = 129 + Height = 145 + ItemIndex = 0 + Items.Strings = ( + #21253#35013#25351#31034#21333 + #39068#33394#26679 + #21697#36136#26679 + #33457#22411#26679) + TabOrder = 2 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 256 + Top = 176 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end +end diff --git a/艾登贸易管理/U_ProductOrderLBNameSet.pas b/艾登贸易管理/U_ProductOrderLBNameSet.pas new file mode 100644 index 0000000..8157de0 --- /dev/null +++ b/艾登贸易管理/U_ProductOrderLBNameSet.pas @@ -0,0 +1,777 @@ +unit U_ProductOrderLBNameSet; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls,StrUtils, + Menus, cxTextEdit, cxDropDownEdit, cxLookAndFeels, cxLookAndFeelPainters, + cxNavigator; + +type + TfrmProductOrderLBNameSet = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNoM: TEdit; + v1OrderNo: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1MPRTSpec: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + Label4: TLabel; + CustomerNoName: TEdit; + v1MPRTCodeName: TcxGridDBColumn; + v1MPRTMF: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + ToolButton1: TToolButton; + Label8: TLabel; + MPRTCodeName: TEdit; + Label9: TLabel; + ConNo: TEdit; + v1MPRTKZ: TcxGridDBColumn; + v1OrdDefStr1: TcxGridDBColumn; + Label10: TLabel; + MPRTSpec: TEdit; + Label11: TLabel; + MPRTCode: TEdit; + Label12: TLabel; + MPRTKZ: TEdit; + Label13: TLabel; + MPRTMF: TEdit; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + v1Column4: TcxGridDBColumn; + Panel4: TPanel; + Label14: TLabel; + Panel10: TPanel; + Image2: TImage; + Button1: TButton; + RadioGroup1: TRadioGroup; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + ToolButton2: TToolButton; + ToolButton3: TToolButton; + PiZhong: TEdit; + ToolButton4: TToolButton; + v1Column3: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + ToolButton5: TToolButton; + v1Column6: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure ToolButton1Click(Sender: TObject); + procedure OrderNoMKeyPress(Sender: TObject; var Key: Char); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, + Y: Integer); + procedure Button1Click(Sender: TObject); + procedure Image2Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure v1Column3PropertiesEditValueChanged(Sender: TObject); + procedure v1Column1PropertiesEditValueChanged(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure v1Column6PropertiesEditValueChanged(Sender: TObject); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmProductOrderLBNameSet: TfrmProductOrderLBNameSet; + newh:hwnd; +implementation +uses + U_DataLink,U_OrderInPut,U_Fun; + +{$R *.dfm} + +procedure TfrmProductOrderLBNameSet.FormDestroy(Sender: TObject); +begin + frmProductOrderLBNameSet:=nil; +end; + +procedure TfrmProductOrderLBNameSet.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderLBNameSet.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderLBNameSet.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ǩ',Tv1,'ָʾ'); +end; + +procedure TfrmProductOrderLBNameSet.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql') ; + { if Trim(DParameters1)<>'Ȩ' then + begin + Parameters.ParamByName('WSql').Value:=' and Filler='''+Trim(DName)+''''; + end else + begin + Parameters.ParamByName('WSql').Value:=''; + end; } + Parameters.ParamByName('WSql').Value:=''; + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmProductOrderLBNameSet.InitForm(); +begin + ReadCxGrid('ǩ',Tv1,'ָʾ'); + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); +end; + +procedure TfrmProductOrderLBNameSet.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; +procedure TfrmProductOrderLBNameSet.TBPrintClick(Sender: TObject); +begin + Panel4.Visible:=True; +end; + +procedure TfrmProductOrderLBNameSet.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderLBNameSet.OrderNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderLBNameSet.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderLBNameSet.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if ToolButton1.Visible=False then Exit; + ToolButton1.Click; +end; + +procedure TfrmProductOrderLBNameSet.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderLBNameSet.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderLBNameSet.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderLBNameSet.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderLBNameSet.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible:=False; + TBSave.Visible:=False; + ScrollBox1.Enabled:=False; + Tv1.OptionsSelection.CellSelect:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderLBNameSet.OrderNoMKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Length(OrderNoM.Text)<3 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql') ; + begin + Parameters.ParamByName('WSql').Value:=' and orderno like '''+'%'+Trim(OrderNoM.Text)+'%'+''''; + end; + Parameters.ParamByName('begdate').Value:='1899-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmProductOrderLBNameSet.ConNoKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Length(conno.Text)<3 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql') ; + begin + Parameters.ParamByName('WSql').Value:=' and conno like '''+'%'+Trim(conno.Text)+'%'+''''; + end; + Parameters.ParamByName('begdate').Value:='1899-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmProductOrderLBNameSet.Panel10MouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel4).Perform(WM_SYSCOMMAND,$F012,0); +end; + +procedure TfrmProductOrderLBNameSet.Button1Click(Sender: TObject); +var + fPrintFile:string; + Porderno,LBName:string; + i,j:Integer; + OrderKg:Double; +begin + if Order_Main.IsEmpty then Exit; + LBName:=RadioGroup1.Items.Strings[RadioGroup1.ItemIndex]; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\'+Trim(LBName)+'.rmf' ; + if RadioGroup1.ItemIndex=0 then + begin + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*,ColorCount=(select isnull(Count(*),0) from JYOrder_Sub where MainId=A.MainId), '); + sql.add('ZQty=(select sum(PRTOrderQty) from JYOrder_Sub where MainId=A.MainId)'); + SQL.Add(', Case when B.OrderUnit=''M'' then Cast (dbo.F_Get_Order_MFKZ(A.MainId,''MF'') '); + sql.Add(' *1.00/100*B.PRTOrderQty*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 as varchar(20))+''Kg'' '); + SQL.Add(' when B.OrderUnit=''Y'' then Cast (dbo.F_Get_Order_MFKZ(A.MainId,''MF'')'); + sql.Add(' *1.00/100*B.PRTOrderQty*0.9144*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 as varchar(20))+''Kg'' '); + sql.Add(' else '''' end as PRTOrderKgQtyStr '); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId '); + sql.Add(' and A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + + end else + begin + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('exec P_View_OrderSub :begdate,:enddate,:wsql '); + Parameters.ParamByName('WSql').Value:=' and A.MainId='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+''''; + Parameters.ParamByName('begdate').Value:='1899-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + Open; + end; + if Trim(ADOQueryPrint.FieldByName('PRTHX').AsString)<>'' then + begin + if Trim(LBName)='ɫ' then + begin + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ɫ.rmf' ; + end; + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(sum(PRTOrderKgQty),0) PRTOrderKgHZQty from('); + sql.Add('select '); + SQL.Add(' Case when B.OrderUnit=''M'' then Cast(dbo.F_Get_Order_MFKZ(A.MainId,''MF'') '); + sql.Add(' *1.00/100*B.PRTOrderQty*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 as decimal(18,2))'); + SQL.Add(' when B.OrderUnit=''Y'' then Cast(dbo.F_Get_Order_MFKZ(A.MainId,''MF'')'); + sql.Add(' *1.00/100*B.PRTOrderQty*0.9144*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 As decimal(18,2)) '); + sql.Add(' else 0 end as PRTOrderKgQty'); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId '); + sql.Add(' and A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''')AA'); + Open; + end; + OrderKg:=ADOQueryTemp.fieldbyname('PRTOrderKgHZQty').Value; + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print); + + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + if OrderKg>0 then + RMVariables['OrderKg']:='/'+Trim(FloatToStr(OrderKg))+'Kg' + else + RMVariables['OrderKg']:=''; + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\'+Trim(LBName)+'.rmf'),'ʾ',0); + end; +end; + +procedure TfrmProductOrderLBNameSet.Image2Click(Sender: TObject); +begin + Panel4.Visible:=False; +end; + +procedure TfrmProductOrderLBNameSet.ToolButton2Click(Sender: TObject); +type + TMyFunc = function(App:Tapplication; FormH:hwnd; FormID:integer; + Language: integer; WinStyle:integer; + GCode: Pchar; GName: Pchar; DataBase:Pchar;Title:PChar; + Parameters1:PChar;Parameters2:PChar;Parameters3:PChar;Parameters4:PChar; + Parameters5:PChar;Parameters6:PChar;Parameters7:PChar;Parameters8:PChar; + Parameters9:PChar;Parameters10:PChar;DataBaseStr:PChar):hwnd;stdcall; +var + Tf: TMyFunc; + Tp: TFarProc; + Th:Thandle; + LabInt,labname:String; +begin + //if PPInt=2 then Exit; + Ddatabase:=StringOfChar(' ', 32); + Th := LoadLibrary('LabelSet.dll'); + if Th > 0 then + begin + try + Tp := GetProcAddress(Th, 'GetDllForm'); + if Tp <> nil then + begin + Tf := TMyFunc(Tp); + newh:=Tf(Application,0,2,0,0, + PChar(DCode), + PChar(DName), + PChar(Ddatabase), + PChar('ǩģ'), + PChar(''), + PChar(''), + '','','','','','','','',PChar(DConString) + ); + if Trim(PChar(Ddatabase))<>'' then + begin + Ddatabase:=Trim(PChar(Ddatabase)); + LabInt:=Trim( LeftBStr(Ddatabase,Pos('|',Ddatabase)-1) ) ; + labname:=Trim(RightBStr(Ddatabase,Length(Ddatabase)-Pos('|',Ddatabase) ) ); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrder_Main Set LBName='''+Trim(labname)+''''); + sql.Add(' where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+''''); + ExecSQL; + end; + with Order_Main do + begin + Edit; + FieldByName('LbName').Value:=labname; + Post; + end; + end; + end + else + begin + ShowMessage('ӡִд'); + end; + finally + // FreeLibrary(); + end; + end + else + begin + ShowMessage('Ҳ'+Trim('LabelSet.dll')); + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmProductOrderLBNameSet.ToolButton3Click(Sender: TObject); +var + FPiZhong:string; + FReal:Double; +begin + if Trim(PiZhong.Text)='' then + begin + Application.MessageBox('ƤزΪ!','ʾ',0); + Exit; + end; + if TryStrToFloat(PiZhong.Text,FReal)=False then + begin + Application.MessageBox('ƤطǷ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrder_Main Set PiZhong='+(PiZhong.Text)); + sql.Add(' where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+''''); + ExecSQL; + end; + with Order_Main do + begin + Edit; + FieldByName('PiZhong').Value:=PiZhong.Text; + Post; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmProductOrderLBNameSet.ToolButton4Click(Sender: TObject); +type + TMyFunc = function(App:Tapplication; FormH:hwnd; FormID:integer; + Language: integer; WinStyle:integer; + GCode: Pchar; GName: Pchar; DataBase:Pchar;Title:PChar; + Parameters1:PChar;Parameters2:PChar;Parameters3:PChar;Parameters4:PChar; + Parameters5:PChar;Parameters6:PChar;Parameters7:PChar;Parameters8:PChar; + Parameters9:PChar;Parameters10:PChar;DataBaseStr:PChar):hwnd;stdcall; +var + Tf: TMyFunc; + Tp: TFarProc; + Th:Thandle; + LabInt,labname:String; +begin + //if PPInt=2 then Exit; + Ddatabase:=StringOfChar(' ', 32); + Th := LoadLibrary('LabelSet.dll'); + if Th > 0 then + begin + try + Tp := GetProcAddress(Th, 'GetDllForm'); + if Tp <> nil then + begin + Tf := TMyFunc(Tp); + newh:=Tf(Application,0,2,0,0, + PChar(DCode), + PChar(DName), + PChar(Ddatabase), + PChar('ǩģ'), + PChar(''), + PChar(''), + '','','','','','','','',PChar(DConString) + ); + if Trim(PChar(Ddatabase))<>'' then + begin + Ddatabase:=Trim(PChar(Ddatabase)); + LabInt:=Trim( LeftBStr(Ddatabase,Pos('|',Ddatabase)-1) ) ; + labname:=Trim(RightBStr(Ddatabase,Length(Ddatabase)-Pos('|',Ddatabase) ) ); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrder_Main Set NLBName='''+Trim(labname)+''''); + sql.Add(' where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+''''); + ExecSQL; + end; + with Order_Main do + begin + Edit; + FieldByName('NLbName').Value:=labname; + Post; + end; + end; + end + else + begin + ShowMessage('ӡִд'); + end; + finally + // FreeLibrary(); + end; + end + else + begin + ShowMessage('Ҳ'+Trim('LabelSet.dll')); + end; + tv1.Controller.EditingController.ShowEdit(); +end; + + +procedure TfrmProductOrderLBNameSet.v1Column3PropertiesEditValueChanged( + Sender: TObject); +var + mvalues:string; +begin + mvalues:=TCXTextEdit(Sender).Text; + + with Order_Main do + begin + edit; + fieldbyname('NLBName').Value:=mvalues; + post; + end; + tv1.Controller.EditingController.ShowEdit(); + IF trim(mvalues)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrder_Main Set NLBName='''' '); + sql.Add('where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+''''); + ExecSQL; + end; + end +end; + +procedure TfrmProductOrderLBNameSet.v1Column1PropertiesEditValueChanged( + Sender: TObject); +var + mvalues:string; +begin + mvalues:=TCXTextEdit(Sender).Text; + + with Order_Main do + begin + edit; + fieldbyname('NLBName').Value:=mvalues; + post; + end; + tv1.Controller.EditingController.ShowEdit(); + IF trim(mvalues)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrder_Main Set LBName='''' '); + sql.Add('where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+''''); + ExecSQL; + end; + end +end; +procedure TfrmProductOrderLBNameSet.ToolButton5Click(Sender: TObject); +var + FReal:Double; +begin + if Trim(PiZhong.Text)='' then + begin + Application.MessageBox('ϵΪ!','ʾ',0); + Exit; + end; + if TryStrToFloat(PiZhong.Text,FReal)=False then + begin + Application.MessageBox('ϵǷ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrder_Main Set XS='+(PiZhong.Text)); + sql.Add(' where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+''''); + ExecSQL; + end; + with Order_Main do + begin + Edit; + FieldByName('XS').Value:=PiZhong.Text; + Post; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmProductOrderLBNameSet.v1Column6PropertiesEditValueChanged( + Sender: TObject); +var + mvalues:string; +begin + mvalues:=TCXTextEdit(Sender).Text; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrder_Main Set XSType='''+trim(mvalues)+''' '); + sql.Add('where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+''''); + ExecSQL; + end; + with Order_Main do + begin + edit; + fieldbyname('XSType').Value:=mvalues; + post; + end; + + + tv1.Controller.EditingController.ShowEdit(); +end; + +end. diff --git a/艾登贸易管理/U_ProductOrderLBNameSetFZ.dfm b/艾登贸易管理/U_ProductOrderLBNameSetFZ.dfm new file mode 100644 index 0000000..6110159 --- /dev/null +++ b/艾登贸易管理/U_ProductOrderLBNameSetFZ.dfm @@ -0,0 +1,669 @@ +object frmProductOrderLBNameSetFZ: TfrmProductOrderLBNameSetFZ + Left = 215 + Top = 114 + Width = 1094 + Height = 600 + Caption = #26631#31614#35774#32622 + 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 = 1129 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + OnClick = ToolButton1Click + end + object TBPrint: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object ToolButton3: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #25187#20998#35774#32622 + ImageIndex = 29 + OnClick = ToolButton3Click + end + object ToolButton2: TToolButton + Left = 339 + Top = 0 + AutoSize = True + Caption = #26631#31614#35774#32622 + ImageIndex = 60 + Visible = False + OnClick = ToolButton2Click + end + object ToolButton4: TToolButton + Left = 426 + Top = 0 + AutoSize = True + Caption = #21103#26631#31614#35774#32622 + ImageIndex = 60 + Visible = False + OnClick = ToolButton4Click + end + object PiZhong: TEdit + Left = 525 + Top = 0 + Width = 121 + Height = 30 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + end + object TBClose: TToolButton + Left = 646 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1129 + Height = 67 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 179 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 318 + Top = 15 + Width = 54 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 476 + Top = 15 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 179 + Top = 39 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 476 + Top = 39 + Width = 54 + Height = 12 + Caption = #35268' '#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 318 + Top = 39 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 621 + Top = 39 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 621 + Top = 15 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNoM: TEdit + Tag = 2 + Left = 220 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoMChange + OnKeyPress = OrderNoMKeyPress + end + object CustomerNoName: TEdit + Tag = 2 + Left = 371 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 3 + OnChange = OrderNoMChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 529 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 4 + OnChange = OrderNoMChange + end + object ConNo: TEdit + Tag = 2 + Left = 220 + Top = 35 + Width = 77 + Height = 20 + TabOrder = 5 + OnChange = OrderNoMChange + OnKeyPress = ConNoKeyPress + end + object MPRTSpec: TEdit + Tag = 2 + Left = 530 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 6 + OnChange = OrderNoMChange + end + object MPRTCode: TEdit + Tag = 2 + Left = 371 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 7 + OnChange = OrderNoMChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 650 + Top = 35 + Width = 56 + Height = 20 + TabOrder = 8 + OnChange = OrderNoMChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 650 + Top = 11 + Width = 56 + Height = 20 + TabOrder = 9 + OnChange = OrderNoMChange + end + end + object cxGrid1: TcxGrid + Left = 40 + Top = 108 + Width = 1089 + Height = 369 + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 71 + end + object v1OrdDefStr1: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'MPRTCode' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 91 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 66 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 69 + end + object v1MPRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'MPRTSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1MPRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1MPRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + Options.Focusing = False + Width = 59 + end + object v1Column1: TcxGridDBColumn + Caption = #26816#39564#25187#20998#26631#20934 + DataBinding.FieldName = 'KouFenQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 121 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel4: TPanel + Left = 410 + Top = 137 + Width = 231 + Height = 216 + TabOrder = 3 + Visible = False + object Label14: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 229 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #25253#34920#21517#31216 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 206 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object Button1: TButton + Left = 83 + Top = 176 + Width = 75 + Height = 25 + Caption = #30830#23450 + TabOrder = 1 + OnClick = Button1Click + end + object RadioGroup1: TRadioGroup + Left = 56 + Top = 24 + Width = 129 + Height = 145 + ItemIndex = 0 + Items.Strings = ( + #21253#35013#25351#31034#21333 + #39068#33394#26679 + #21697#36136#26679 + #33457#22411#26679) + TabOrder = 2 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 256 + Top = 176 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end +end diff --git a/艾登贸易管理/U_ProductOrderLBNameSetFZ.pas b/艾登贸易管理/U_ProductOrderLBNameSetFZ.pas new file mode 100644 index 0000000..bfa3f1d --- /dev/null +++ b/艾登贸易管理/U_ProductOrderLBNameSetFZ.pas @@ -0,0 +1,679 @@ +unit U_ProductOrderLBNameSetFZ; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls,StrUtils, + Menus, cxTextEdit; + +type + TfrmProductOrderLBNameSetFZ = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNoM: TEdit; + v1OrderNo: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1MPRTSpec: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + Label4: TLabel; + CustomerNoName: TEdit; + v1MPRTCodeName: TcxGridDBColumn; + v1MPRTMF: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + ToolButton1: TToolButton; + Label8: TLabel; + MPRTCodeName: TEdit; + Label9: TLabel; + ConNo: TEdit; + v1MPRTKZ: TcxGridDBColumn; + v1OrdDefStr1: TcxGridDBColumn; + Label10: TLabel; + MPRTSpec: TEdit; + Label11: TLabel; + MPRTCode: TEdit; + Label12: TLabel; + MPRTKZ: TEdit; + Label13: TLabel; + MPRTMF: TEdit; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + v1Column4: TcxGridDBColumn; + Panel4: TPanel; + Label14: TLabel; + Panel10: TPanel; + Image2: TImage; + Button1: TButton; + RadioGroup1: TRadioGroup; + v1Column1: TcxGridDBColumn; + ToolButton2: TToolButton; + ToolButton3: TToolButton; + PiZhong: TEdit; + ToolButton4: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure ToolButton1Click(Sender: TObject); + procedure OrderNoMKeyPress(Sender: TObject; var Key: Char); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, + Y: Integer); + procedure Button1Click(Sender: TObject); + procedure Image2Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure v1Column3PropertiesEditValueChanged(Sender: TObject); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmProductOrderLBNameSetFZ: TfrmProductOrderLBNameSetFZ; + newh:hwnd; +implementation +uses + U_DataLink,U_OrderInPut,U_Fun; + +{$R *.dfm} + +procedure TfrmProductOrderLBNameSetFZ.FormDestroy(Sender: TObject); +begin + frmProductOrderLBNameSetFZ:=nil; +end; + +procedure TfrmProductOrderLBNameSetFZ.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderLBNameSetFZ.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderLBNameSetFZ.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid(self.Caption,Tv1,'ָʾ'); +end; + +procedure TfrmProductOrderLBNameSetFZ.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql') ; + Parameters.ParamByName('WSql').Value:=''; + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmProductOrderLBNameSetFZ.InitForm(); +begin + ReadCxGrid(self.Caption,Tv1,'ָʾ'); + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); +end; + +procedure TfrmProductOrderLBNameSetFZ.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; +procedure TfrmProductOrderLBNameSetFZ.TBPrintClick(Sender: TObject); +begin + Panel4.Visible:=True; +end; + +procedure TfrmProductOrderLBNameSetFZ.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderLBNameSetFZ.OrderNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderLBNameSetFZ.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderLBNameSetFZ.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if ToolButton1.Visible=False then Exit; + ToolButton1.Click; +end; + +procedure TfrmProductOrderLBNameSetFZ.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderLBNameSetFZ.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderLBNameSetFZ.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderLBNameSetFZ.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderLBNameSetFZ.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible:=False; + TBSave.Visible:=False; + ScrollBox1.Enabled:=False; + Tv1.OptionsSelection.CellSelect:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderLBNameSetFZ.OrderNoMKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Length(OrderNoM.Text)<3 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql') ; + begin + Parameters.ParamByName('WSql').Value:=' and orderno like '''+'%'+Trim(OrderNoM.Text)+'%'+''''; + end; + Parameters.ParamByName('begdate').Value:='1899-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmProductOrderLBNameSetFZ.ConNoKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Length(conno.Text)<3 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql') ; + begin + Parameters.ParamByName('WSql').Value:=' and conno like '''+'%'+Trim(conno.Text)+'%'+''''; + end; + Parameters.ParamByName('begdate').Value:='1899-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmProductOrderLBNameSetFZ.Panel10MouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel4).Perform(WM_SYSCOMMAND,$F012,0); +end; + +procedure TfrmProductOrderLBNameSetFZ.Button1Click(Sender: TObject); +var + fPrintFile:string; + Porderno,LBName:string; + i,j:Integer; + OrderKg:Double; +begin + if Order_Main.IsEmpty then Exit; + LBName:=RadioGroup1.Items.Strings[RadioGroup1.ItemIndex]; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\'+Trim(LBName)+'.rmf' ; + if RadioGroup1.ItemIndex=0 then + begin + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*,ColorCount=(select isnull(Count(*),0) from JYOrder_Sub where MainId=A.MainId), '); + sql.add('ZQty=(select sum(PRTOrderQty) from JYOrder_Sub where MainId=A.MainId)'); + SQL.Add(', Case when B.OrderUnit=''M'' then Cast (dbo.F_Get_Order_MFKZ(A.MainId,''MF'') '); + sql.Add(' *1.00/100*B.PRTOrderQty*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 as varchar(20))+''Kg'' '); + SQL.Add(' when B.OrderUnit=''Y'' then Cast (dbo.F_Get_Order_MFKZ(A.MainId,''MF'')'); + sql.Add(' *1.00/100*B.PRTOrderQty*0.9144*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 as varchar(20))+''Kg'' '); + sql.Add(' else '''' end as PRTOrderKgQtyStr '); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId '); + sql.Add(' and A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + + end else + begin + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('exec P_View_OrderSub :begdate,:enddate,:wsql '); + Parameters.ParamByName('WSql').Value:=' and A.MainId='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+''''; + Parameters.ParamByName('begdate').Value:='1899-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + Open; + end; + if Trim(ADOQueryPrint.FieldByName('PRTHX').AsString)<>'' then + begin + if Trim(LBName)='ɫ' then + begin + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ɫ.rmf' ; + end; + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(sum(PRTOrderKgQty),0) PRTOrderKgHZQty from('); + sql.Add('select '); + SQL.Add(' Case when B.OrderUnit=''M'' then Cast(dbo.F_Get_Order_MFKZ(A.MainId,''MF'') '); + sql.Add(' *1.00/100*B.PRTOrderQty*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 as decimal(18,2))'); + SQL.Add(' when B.OrderUnit=''Y'' then Cast(dbo.F_Get_Order_MFKZ(A.MainId,''MF'')'); + sql.Add(' *1.00/100*B.PRTOrderQty*0.9144*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 As decimal(18,2)) '); + sql.Add(' else 0 end as PRTOrderKgQty'); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId '); + sql.Add(' and A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''')AA'); + Open; + end; + OrderKg:=ADOQueryTemp.fieldbyname('PRTOrderKgHZQty').Value; + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print); + + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + if OrderKg>0 then + RMVariables['OrderKg']:='/'+Trim(FloatToStr(OrderKg))+'Kg' + else + RMVariables['OrderKg']:=''; + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\'+Trim(LBName)+'.rmf'),'ʾ',0); + end; +end; + +procedure TfrmProductOrderLBNameSetFZ.Image2Click(Sender: TObject); +begin + Panel4.Visible:=False; +end; + +procedure TfrmProductOrderLBNameSetFZ.ToolButton2Click(Sender: TObject); +type + TMyFunc = function(App:Tapplication; FormH:hwnd; FormID:integer; + Language: integer; WinStyle:integer; + GCode: Pchar; GName: Pchar; DataBase:Pchar;Title:PChar; + Parameters1:PChar;Parameters2:PChar;Parameters3:PChar;Parameters4:PChar; + Parameters5:PChar;Parameters6:PChar;Parameters7:PChar;Parameters8:PChar; + Parameters9:PChar;Parameters10:PChar;DataBaseStr:PChar):hwnd;stdcall; +var + Tf: TMyFunc; + Tp: TFarProc; + Th:Thandle; + LabInt,labname:String; +begin + //if PPInt=2 then Exit; + Ddatabase:=StringOfChar(' ', 32); + Th := LoadLibrary('LabelSet.dll'); + if Th > 0 then + begin + try + Tp := GetProcAddress(Th, 'GetDllForm'); + if Tp <> nil then + begin + Tf := TMyFunc(Tp); + newh:=Tf(Application,0,2,0,0, + PChar(DCode), + PChar(DName), + PChar(Ddatabase), + PChar('ǩģ'), + PChar(''), + PChar(''), + '','','','','','','','',PChar(DConString) + ); + if Trim(PChar(Ddatabase))<>'' then + begin + Ddatabase:=Trim(PChar(Ddatabase)); + LabInt:=Trim( LeftBStr(Ddatabase,Pos('|',Ddatabase)-1) ) ; + labname:=Trim(RightBStr(Ddatabase,Length(Ddatabase)-Pos('|',Ddatabase) ) ); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrder_Main Set LBName='''+Trim(labname)+''''); + sql.Add(' where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+''''); + ExecSQL; + end; + with Order_Main do + begin + Edit; + FieldByName('LbName').Value:=labname; + Post; + end; + end; + end + else + begin + ShowMessage('ӡִд'); + end; + finally + // FreeLibrary(); + end; + end + else + begin + ShowMessage('Ҳ'+Trim('LabelSet.dll')); + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmProductOrderLBNameSetFZ.ToolButton3Click(Sender: TObject); +var + FPiZhong:string; + FReal:Double; +begin + if Trim(PiZhong.Text)='' then + begin + Application.MessageBox('۷ֲΪ!','ʾ',0); + Exit; + end; + if TryStrToFloat(PiZhong.Text,FReal)=False then + begin + Application.MessageBox('۷ַǷ!','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrder_Main Set KouFenQty='+Trim(PiZhong.Text)); + sql.Add(' where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+''''); + ExecSQL; + end; + with Order_Main do + begin + Edit; + FieldByName('KouFenQty').Value:=PiZhong.Text; + Post; + end; + tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmProductOrderLBNameSetFZ.ToolButton4Click(Sender: TObject); +type + TMyFunc = function(App:Tapplication; FormH:hwnd; FormID:integer; + Language: integer; WinStyle:integer; + GCode: Pchar; GName: Pchar; DataBase:Pchar;Title:PChar; + Parameters1:PChar;Parameters2:PChar;Parameters3:PChar;Parameters4:PChar; + Parameters5:PChar;Parameters6:PChar;Parameters7:PChar;Parameters8:PChar; + Parameters9:PChar;Parameters10:PChar;DataBaseStr:PChar):hwnd;stdcall; +var + Tf: TMyFunc; + Tp: TFarProc; + Th:Thandle; + LabInt,labname:String; +begin + //if PPInt=2 then Exit; + Ddatabase:=StringOfChar(' ', 32); + Th := LoadLibrary('LabelSet.dll'); + if Th > 0 then + begin + try + Tp := GetProcAddress(Th, 'GetDllForm'); + if Tp <> nil then + begin + Tf := TMyFunc(Tp); + newh:=Tf(Application,0,2,0,0, + PChar(DCode), + PChar(DName), + PChar(Ddatabase), + PChar('ǩģ'), + PChar(''), + PChar(''), + '','','','','','','','',PChar(DConString) + ); + if Trim(PChar(Ddatabase))<>'' then + begin + Ddatabase:=Trim(PChar(Ddatabase)); + LabInt:=Trim( LeftBStr(Ddatabase,Pos('|',Ddatabase)-1) ) ; + labname:=Trim(RightBStr(Ddatabase,Length(Ddatabase)-Pos('|',Ddatabase) ) ); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrder_Main Set NLBName='''+Trim(labname)+''''); + sql.Add(' where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+''''); + ExecSQL; + end; + with Order_Main do + begin + Edit; + FieldByName('NLbName').Value:=labname; + Post; + end; + end; + end + else + begin + ShowMessage('ӡִд'); + end; + finally + // FreeLibrary(); + end; + end + else + begin + ShowMessage('Ҳ'+Trim('LabelSet.dll')); + end; + tv1.Controller.EditingController.ShowEdit(); +end; + + +procedure TfrmProductOrderLBNameSetFZ.v1Column3PropertiesEditValueChanged( + Sender: TObject); +var + mvalues:string; +begin + mvalues:=TCXTextEdit(Sender).Text; + + with Order_Main do + begin + edit; + fieldbyname('NLBName').Value:=mvalues; + post; + end; + tv1.Controller.EditingController.ShowEdit(); + IF trim(mvalues)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrder_Main Set NLBName='''' '); + sql.Add('where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+''''); + ExecSQL; + end; + end +end; + +end. diff --git a/艾登贸易管理/U_ProductOrderList.dfm b/艾登贸易管理/U_ProductOrderList.dfm new file mode 100644 index 0000000..86b5f3f --- /dev/null +++ b/艾登贸易管理/U_ProductOrderList.dfm @@ -0,0 +1,745 @@ +object frmProductOrderList: TfrmProductOrderList + Left = 134 + Top = 115 + Width = 1094 + Height = 600 + Caption = #29983#20135#25351#31034#21333 + 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 = 1249 + AutoSize = True + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #36873#25321 + ImageIndex = 106 + Visible = False + OnClick = ToolButton3Click + end + object TBAdd: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object ToolButton2: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #22797#21046 + ImageIndex = 57 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 374 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + OnClick = ToolButton1Click + end + object TBDel: TToolButton + Left = 437 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object TBExport: TToolButton + Left = 500 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 563 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 626 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1249 + Height = 67 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 179 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 318 + Top = 15 + Width = 26 + Height = 12 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 318 + Top = 39 + Width = 26 + Height = 12 + Caption = #26579#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 441 + Top = 15 + Width = 53 + Height = 12 + Caption = #19994' '#21153' '#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 588 + Top = 39 + Width = 54 + Height = 12 + Caption = #25104' '#20998 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 741 + Top = 39 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 588 + Top = 15 + Width = 52 + Height = 12 + Caption = #20013#25991#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 179 + Top = 39 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 741 + Top = 15 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 441 + Top = 39 + Width = 52 + Height = 12 + Caption = #20844#21496#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 861 + Top = 39 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 861 + Top = 15 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 1 + end + object OrderNoM: TEdit + Tag = 2 + Left = 220 + Top = 11 + Width = 77 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 2 + OnChange = OrderNoMChange + end + object CustomerNoName: TEdit + Tag = 2 + Left = 347 + Top = 11 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 3 + OnChange = OrderNoMChange + end + object JGFactoryName: TEdit + Tag = 2 + Left = 347 + Top = 35 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 4 + OnChange = OrderNoMChange + end + object OrdPerson1: TEdit + Tag = 2 + Left = 495 + Top = 11 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 5 + OnChange = OrderNoMChange + end + object MPRTCF: TEdit + Tag = 2 + Left = 641 + Top = 35 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 6 + OnChange = OrderNoMChange + end + object PRTColor: TEdit + Tag = 2 + Left = 770 + Top = 35 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 7 + OnChange = OrderNoMChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 641 + Top = 11 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 8 + OnChange = OrderNoMChange + end + object ConNo: TEdit + Tag = 2 + Left = 220 + Top = 35 + Width = 77 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 9 + OnChange = OrderNoMChange + end + object MPRTSpec: TEdit + Tag = 2 + Left = 770 + Top = 11 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 10 + OnChange = OrderNoMChange + end + object OrdDefStr1: TEdit + Tag = 2 + Left = 495 + Top = 35 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 11 + OnChange = OrderNoMChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 890 + Top = 35 + Width = 56 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 12 + OnChange = OrderNoMChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 890 + Top = 11 + Width = 56 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 13 + OnChange = OrderNoMChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 112 + Width = 1249 + Height = 369 + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1OrdDefStr1: TcxGridDBColumn + Caption = #20844#21496#32534#21495 + DataBinding.FieldName = 'OrdDefStr1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 90 + end + object v1Column1: TcxGridDBColumn + Caption = #20844#21496#21488#22836 + DataBinding.FieldName = 'OrdDefStr2' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 90 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 73 + end + object v1JGFactoryName: TcxGridDBColumn + Caption = #26579#21378 + DataBinding.FieldName = 'JGFactoryName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 69 + end + object v1MPRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'MPRTSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1MPRTCF: TcxGridDBColumn + Caption = #25104#20998 + DataBinding.FieldName = 'MPRTCF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 69 + end + object v1MPRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object v1MPRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + Options.Focusing = False + Width = 54 + end + object v1Column8: TcxGridDBColumn + Caption = #22791#27880#21450#35201#27714 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 92 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + object v1PRTPrice: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PRTPrice' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 71 + end + object v1Column2: TcxGridDBColumn + Caption = #30830#35748#33394#21345 + DataBinding.FieldName = 'SOrddefstr2' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 60 + end + object v1Column3: TcxGridDBColumn + Caption = #26631#31614 + DataBinding.FieldName = 'SLbName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 85 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 288 + Top = 184 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end +end diff --git a/艾登贸易管理/U_ProductOrderList.pas b/艾登贸易管理/U_ProductOrderList.pas new file mode 100644 index 0000000..872724e --- /dev/null +++ b/艾登贸易管理/U_ProductOrderList.pas @@ -0,0 +1,657 @@ +unit U_ProductOrderList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus; + +type + TfrmProductOrderList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNoM: TEdit; + TBExport: TToolButton; + v1OrderNo: TcxGridDBColumn; + v1JGFactoryName: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + v1MPRTSpec: TcxGridDBColumn; + v1MPRTCF: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + Label4: TLabel; + CustomerNoName: TEdit; + v1MPRTCodeName: TcxGridDBColumn; + v1MPRTMF: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + v1PRTPrice: TcxGridDBColumn; + ToolButton1: TToolButton; + Label2: TLabel; + JGFactoryName: TEdit; + Label5: TLabel; + OrdPerson1: TEdit; + Label6: TLabel; + MPRTCF: TEdit; + Label7: TLabel; + PRTColor: TEdit; + Label8: TLabel; + MPRTCodeName: TEdit; + Label9: TLabel; + ConNo: TEdit; + v1Column8: TcxGridDBColumn; + v1MPRTKZ: TcxGridDBColumn; + v1OrdDefStr1: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + Label10: TLabel; + MPRTSpec: TEdit; + Label11: TLabel; + OrdDefStr1: TEdit; + Label12: TLabel; + MPRTKZ: TEdit; + Label13: TLabel; + MPRTMF: TEdit; + ToolButton2: TToolButton; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + v1Column4: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmProductOrderList: TfrmProductOrderList; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun; + +{$R *.dfm} + +procedure TfrmProductOrderList.FormDestroy(Sender: TObject); +begin + frmProductOrderList:=nil; +end; + +procedure TfrmProductOrderList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderList.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderList.TBCloseClick(Sender: TObject); +begin + Close; + if FCloth<>1 then + WriteCxGrid('ָʾб',Tv1,'ָʾ') + else + WriteCxGrid('ָʾбѡ',Tv1,'ָʾ'); +end; + +procedure TfrmProductOrderList.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select A.*,B.*,A.OrderNo OrderNoM from JYOrder_Main A left join JYOrder_Sub B on A.MainId=B.MainId '); + SQL.Add('where OrdDate>=:begdate and OrdDate<:enddate'); + if Trim(DParameters1)<>'Ȩ' then + begin + sql.Add('and A.Filler='''+Trim(DName)+''''); + end; + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderList.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderList.InitForm(); +begin + if SGetServerDate(ADOQueryTemp)>StrToDate('2014-07-11') then + begin + ToolBar1.Visible:=False; + Application.MessageBox('ҪϵӦ̣','ʾ',0); + Exit; + end; + if FCloth<>1 then + ReadCxGrid('ָʾб',Tv1,'ָʾ') + else + ReadCxGrid('ָʾбѡ',Tv1,'ָʾ'); + + if FCloth=1 then + begin + v1Column4.Visible:=True; + v1PRTPrice.Visible:=False; + v1PRTPrice.Hidden:=True; + end else + begin + v1Column4.Visible:=False; + v1PRTPrice.Visible:=True; + v1PRTPrice.Hidden:=False; + end; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmProductOrderList.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderList.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderList.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select * from Contract_Cloth_LL where OrdSubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('Ѳݲɾ!','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData() then + begin + Order_Main.Delete; + end; +end; + +function TfrmProductOrderList.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + if IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv1,ADOQueryMain,'ָʾб'); +end; + +procedure TfrmProductOrderList.TBPrintClick(Sender: TObject); +var + fPrintFile:string; + Porderno:string; + i,j:Integer; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*,PRTColorEng=(select Note from KH_Zdy CC where ZdyName=B.PRTColor and CC.Type=''OrdColor'' ) '); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId '); + sql.Add(' and A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print); + i:=ADOQueryPrint.RecordCount; + ADOQueryPrint.First; + if i<19 then + begin + for j:=1 to 19-i do + begin + with CDS_Print do + begin + Append; + Post; + end; + end; + end; + with CDS_Print do + begin + Append; + FieldByName('Note').Value:=Trim(Order_Main.fieldbyname('Note').AsString); + FieldByName('OrdDefStr3').Value:=Trim(Order_Main.fieldbyname('OrdDefStr3').AsString); + FieldByName('SOrddefstr10').Value:=Trim(Order_Main.fieldbyname('OrderUnit').AsString); + FieldByName('SLbName').Value:=Trim(Order_Main.fieldbyname('SLbName').AsString); + FieldByName('OrdPerson1').Value:=Trim(Order_Main.fieldbyname('OrdPerson1').AsString); + Post; + end; + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; +end; + +procedure TfrmProductOrderList.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + InitGridFH(); + end else + InitGrid(); +end; + +procedure TfrmProductOrderList.TBAddClick(Sender: TObject); +var + maxno:string; +begin + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=0; + FMainId:=''; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderList.OrderNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderList.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderList.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if ToolButton1.Visible=False then Exit; + ToolButton1.Click; +end; + +procedure TfrmProductOrderList.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmProductOrderList.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderList.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderList.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderList.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderList.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderList.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderList.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible:=False; + TBSave.Visible:=False; + ScrollBox1.Enabled:=False; + Tv1.OptionsSelection.CellSelect:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderList.ToolButton2Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=1; + CopyInt:=99; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderList.ToolButton3Click(Sender: TObject); +begin + ModalResult:=1; +end; + +end. diff --git a/艾登贸易管理/U_ProductOrderListNew.dfm b/艾登贸易管理/U_ProductOrderListNew.dfm new file mode 100644 index 0000000..2e3a39d --- /dev/null +++ b/艾登贸易管理/U_ProductOrderListNew.dfm @@ -0,0 +1,1344 @@ +object frmProductOrderListNew: TfrmProductOrderListNew + Left = -1 + Top = 50 + Width = 1277 + Height = 684 + Caption = #29983#20135#25351#31034#21333 + 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 = 1269 + Height = 62 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_WFBOrder.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBAdd: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object ToolButton2: TToolButton + Left = 252 + Top = 0 + Caption = #29983#20135#35745#21010#21333 + ImageIndex = 58 + OnClick = ToolButton2Click + end + object TBChk: TToolButton + Left = 347 + Top = 0 + AutoSize = True + Caption = #23457#26680 + ImageIndex = 132 + OnClick = TBChkClick + end + object TBCChk: TToolButton + Left = 410 + Top = 0 + AutoSize = True + Caption = #23457#26680#25764#38144 + ImageIndex = 105 + Wrap = True + OnClick = TBCChkClick + end + object TBCopy: TToolButton + Left = 0 + Top = 30 + AutoSize = True + Caption = #22797#21046 + ImageIndex = 113 + OnClick = TBCopyClick + end + object TBCK: TToolButton + Left = 63 + Top = 30 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 57 + OnClick = TBCKClick + end + object TBDel: TToolButton + Left = 126 + Top = 30 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object TBExport: TToolButton + Left = 189 + Top = 30 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBBQPrint: TToolButton + Left = 252 + Top = 30 + AutoSize = True + Caption = #25171#21360#26631#31614 + ImageIndex = 96 + OnClick = TBBQPrintClick + end + object TBPrint: TToolButton + Left = 339 + Top = 30 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 402 + Top = 30 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 62 + Width = 1269 + Height = 42 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #19979#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 161 + Top = 15 + Width = 18 + Height = 12 + Caption = '---' + end + object Label3: TLabel + Left = 283 + Top = 15 + Width = 52 + Height = 12 + Caption = #35746#21333#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 430 + Top = 15 + Width = 26 + Height = 12 + Caption = #20195#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 566 + Top = 15 + Width = 26 + Height = 12 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 179 + Top = 11 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 336 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoChange + end + object WFBCodeName: TEdit + Tag = 2 + Left = 459 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = OrderNoChange + end + object CustomNoName: TEdit + Tag = 2 + Left = 595 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + end + end + object cxGrid1: TcxGrid + Left = 1024 + Top = 104 + Width = 169 + Height = 121 + TabOrder = 2 + Visible = False + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBOrder.SHuangSe + Styles.IncSearch = DataLink_WFBOrder.SHuangSe + Styles.Selection = DataLink_WFBOrder.SHuangSe + object v1Column3: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBOrder.Default + Width = 39 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#32534#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 72 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'Customnoname' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 66 + end + object v1Column2: TcxGridDBColumn + Caption = #20195#21495 + DataBinding.FieldName = 'WFBCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'WFBFK' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 62 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'WFBKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 76 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'OrdQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 58 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrdUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 63 + end + object v1OrderDate: TcxGridDBColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrderDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 70 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = 'ETA' + DataBinding.FieldName = 'ETADate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 63 + end + object v1FactoryNo2Name: TcxGridDBColumn + Caption = #35013#26588#26085#26399 + DataBinding.FieldName = 'ZGDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 60 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = 'ETD' + DataBinding.FieldName = 'ETDDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 60 + end + object v1FactoryNo3Name: TcxGridDBColumn + Caption = #24320#22987#20837#24211#26085#26399 + DataBinding.FieldName = 'BegRKDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 94 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #24320#22987#29983#20135#26085#26399 + DataBinding.FieldName = 'BegSCDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 90 + end + object v1Note: TcxGridDBColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 67 + end + object v1Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'OrdPrice' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 57 + end + object v1PRTQty: TcxGridDBColumn + Caption = #35745#20215#21333#20301 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 58 + end + object v1Column4: TcxGridDBColumn + Caption = #29983#20135#32447 + DataBinding.FieldName = 'SCXName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 62 + end + object v1Column5: TcxGridDBColumn + Caption = #32593#32467#26500 + DataBinding.FieldName = 'WJGName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 62 + end + object v1Column6: TcxGridDBColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBOrder.Default + Width = 59 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 104 + Width = 1269 + Height = 263 + Align = alClient + TabOrder = 3 + object cxGrid2DBTableView1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + end + object TV2: TcxGridDBBandedTableView + OnMouseDown = TV2MouseDown + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TV2CellDblClick + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBOrder.SHuangSe + Styles.IncSearch = DataLink_WFBOrder.SHuangSe + Styles.Selection = DataLink_WFBOrder.SHuangSe + Styles.Header = DataLink_WFBOrder.Default + Bands = < + item + Caption = #21367#26448 + Styles.Header = cxStyle2 + Width = 1374 + end> + object V2Column1: TcxGridDBBandedColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 59 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object V2Column2: TcxGridDBBandedColumn + Caption = #23458#25143 + DataBinding.FieldName = 'Customnoname' + HeaderAlignmentHorz = taCenter + Width = 39 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object V2Column3: TcxGridDBBandedColumn + Caption = #20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Width = 55 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object V2Column4: TcxGridDBBandedColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'SWFBFK' + HeaderAlignmentHorz = taCenter + Width = 46 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object V2Column5: TcxGridDBBandedColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'SWFBKZ' + HeaderAlignmentHorz = taCenter + Width = 56 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object V2Column6: TcxGridDBBandedColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'OrdQty' + HeaderAlignmentHorz = taCenter + Width = 47 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object V2Column7: TcxGridDBBandedColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrdUnit' + HeaderAlignmentHorz = taCenter + Width = 62 + Position.BandIndex = 0 + Position.ColIndex = 9 + Position.RowIndex = 0 + end + object V2Column8: TcxGridDBBandedColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrderDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 62 + Position.BandIndex = 0 + Position.ColIndex = 10 + Position.RowIndex = 0 + end + object V2Column9: TcxGridDBBandedColumn + Caption = 'ETA' + DataBinding.FieldName = 'ETADate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 42 + Position.BandIndex = 0 + Position.ColIndex = 11 + Position.RowIndex = 0 + end + object V2Column10: TcxGridDBBandedColumn + Caption = #35013#26588#26085#26399 + DataBinding.FieldName = 'ZGDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 44 + Position.BandIndex = 0 + Position.ColIndex = 12 + Position.RowIndex = 0 + end + object V2Column11: TcxGridDBBandedColumn + Caption = 'ETD' + DataBinding.FieldName = 'ETDDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 44 + Position.BandIndex = 0 + Position.ColIndex = 13 + Position.RowIndex = 0 + end + object V2Column12: TcxGridDBBandedColumn + Caption = #24320#22987#20837#24211#26085#26399 + DataBinding.FieldName = 'BegRKDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 14 + Position.RowIndex = 0 + end + object V2Column13: TcxGridDBBandedColumn + Caption = #24320#22987#29983#20135#26085#26399 + DataBinding.FieldName = 'BegSCDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 15 + Position.RowIndex = 0 + end + object V2Column14: TcxGridDBBandedColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 16 + Position.RowIndex = 0 + end + object V2Column15: TcxGridDBBandedColumn + Caption = #21333#20215 + DataBinding.FieldName = 'SOrdPrice' + HeaderAlignmentHorz = taCenter + Width = 42 + Position.BandIndex = 0 + Position.ColIndex = 17 + Position.RowIndex = 0 + end + object V2Column16: TcxGridDBBandedColumn + Caption = #35745#20215#21333#20301 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Width = 43 + Position.BandIndex = 0 + Position.ColIndex = 19 + Position.RowIndex = 0 + end + object V2Column17: TcxGridDBBandedColumn + Caption = #29983#20135#32447 + DataBinding.FieldName = 'SCXName' + HeaderAlignmentHorz = taCenter + Width = 38 + Position.BandIndex = 0 + Position.ColIndex = 20 + Position.RowIndex = 0 + end + object V2Column18: TcxGridDBBandedColumn + Caption = #32593#32467#26500 + DataBinding.FieldName = 'WJGName' + HeaderAlignmentHorz = taCenter + Width = 43 + Position.BandIndex = 0 + Position.ColIndex = 21 + Position.RowIndex = 0 + end + object V2Column19: TcxGridDBBandedColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + HeaderAlignmentHorz = taCenter + Width = 45 + Position.BandIndex = 0 + Position.ColIndex = 23 + Position.RowIndex = 0 + end + object V2Column20: TcxGridDBBandedColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Width = 48 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object V2Column21: TcxGridDBBandedColumn + Caption = #37329#39069 + DataBinding.FieldName = 'Money' + HeaderAlignmentHorz = taCenter + Width = 44 + Position.BandIndex = 0 + Position.ColIndex = 18 + Position.RowIndex = 0 + end + object V2Column22: TcxGridDBBandedColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Width = 50 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object V2Column23: TcxGridDBBandedColumn + Caption = #32534#21495 + DataBinding.FieldName = 'OrderCode' + HeaderAlignmentHorz = taCenter + Width = 82 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object V2Column24: TcxGridDBBandedColumn + Caption = #23457#26680#29366#24577 + DataBinding.FieldName = 'ChkStatus' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 65 + Position.BandIndex = 0 + Position.ColIndex = 24 + Position.RowIndex = 0 + end + object V2Column25: TcxGridDBBandedColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + Position.BandIndex = 0 + Position.ColIndex = 22 + Position.RowIndex = 0 + end + object V2Column26: TcxGridDBBandedColumn + Caption = #24050#29983#25104#35745#21010#21333 + DataBinding.FieldName = 'JHDFlag' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Options.Focusing = False + Width = 85 + Position.BandIndex = 0 + Position.ColIndex = 25 + Position.RowIndex = 0 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = TV2 + end + end + object cxGrid3: TcxGrid + Left = 0 + Top = 375 + Width = 1269 + Height = 272 + Align = alBottom + TabOrder = 4 + object cxGridDBTableView1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + end + object Tv3: TcxGridDBBandedTableView + OnMouseDown = Tv3MouseDown + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TV2CellDblClick + DataController.DataSource = DataSource2 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBOrder.SHuangSe + Styles.IncSearch = DataLink_WFBOrder.SHuangSe + Styles.Selection = DataLink_WFBOrder.SHuangSe + Styles.Header = DataLink_WFBOrder.Default + Bands = < + item + Caption = #21046#21697 + Styles.Header = cxStyle1 + Width = 1374 + end> + object cxGridDBBandedColumn1: TcxGridDBBandedColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 63 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn2: TcxGridDBBandedColumn + Caption = #23458#25143 + DataBinding.FieldName = 'Customnoname' + HeaderAlignmentHorz = taCenter + Width = 46 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn3: TcxGridDBBandedColumn + Caption = #20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn5: TcxGridDBBandedColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'SWFBKZ' + HeaderAlignmentHorz = taCenter + Width = 51 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn6: TcxGridDBBandedColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'OrdQty' + HeaderAlignmentHorz = taCenter + Width = 50 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn7: TcxGridDBBandedColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrdUnit' + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn8: TcxGridDBBandedColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrderDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 51 + Position.BandIndex = 0 + Position.ColIndex = 9 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn9: TcxGridDBBandedColumn + Caption = 'ETA' + DataBinding.FieldName = 'ETADate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 10 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn10: TcxGridDBBandedColumn + Caption = #35013#26588#26085#26399 + DataBinding.FieldName = 'ZGDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 52 + Position.BandIndex = 0 + Position.ColIndex = 11 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn11: TcxGridDBBandedColumn + Caption = 'ETD' + DataBinding.FieldName = 'ETDDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 51 + Position.BandIndex = 0 + Position.ColIndex = 12 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn12: TcxGridDBBandedColumn + Caption = #24320#22987#20837#24211#26085#26399 + DataBinding.FieldName = 'BegRKDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 66 + Position.BandIndex = 0 + Position.ColIndex = 13 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn13: TcxGridDBBandedColumn + Caption = #24320#22987#29983#20135#26085#26399 + DataBinding.FieldName = 'BegSCDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 65 + Position.BandIndex = 0 + Position.ColIndex = 14 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn14: TcxGridDBBandedColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 67 + Position.BandIndex = 0 + Position.ColIndex = 15 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn15: TcxGridDBBandedColumn + Caption = #21333#20215 + DataBinding.FieldName = 'SOrdPrice' + HeaderAlignmentHorz = taCenter + Width = 46 + Position.BandIndex = 0 + Position.ColIndex = 16 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn16: TcxGridDBBandedColumn + Caption = #35745#20215#21333#20301 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Width = 50 + Position.BandIndex = 0 + Position.ColIndex = 18 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn17: TcxGridDBBandedColumn + Caption = #29983#20135#32447 + DataBinding.FieldName = 'SCXName' + HeaderAlignmentHorz = taCenter + Width = 47 + Position.BandIndex = 0 + Position.ColIndex = 19 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn18: TcxGridDBBandedColumn + Caption = #32593#32467#26500 + DataBinding.FieldName = 'WJGName' + HeaderAlignmentHorz = taCenter + Width = 45 + Position.BandIndex = 0 + Position.ColIndex = 20 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn19: TcxGridDBBandedColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 45 + Position.BandIndex = 0 + Position.ColIndex = 22 + Position.RowIndex = 0 + end + object v3Column1: TcxGridDBBandedColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Width = 51 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object v3Column2: TcxGridDBBandedColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object v3Column3: TcxGridDBBandedColumn + Caption = #37329#39069 + DataBinding.FieldName = 'Money' + HeaderAlignmentHorz = taCenter + Width = 42 + Position.BandIndex = 0 + Position.ColIndex = 17 + Position.RowIndex = 0 + end + object v3Column4: TcxGridDBBandedColumn + Caption = #32534#21495 + DataBinding.FieldName = 'OrderCode' + HeaderAlignmentHorz = taCenter + Width = 74 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object v3Column5: TcxGridDBBandedColumn + Caption = #23457#26680#29366#24577 + DataBinding.FieldName = 'ChkStatus' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 62 + Position.BandIndex = 0 + Position.ColIndex = 23 + Position.RowIndex = 0 + end + object v3Column6: TcxGridDBBandedColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 71 + Position.BandIndex = 0 + Position.ColIndex = 21 + Position.RowIndex = 0 + end + object v3Column7: TcxGridDBBandedColumn + Caption = #24050#29983#25104#35745#21010#21333 + DataBinding.FieldName = 'JHDFlag' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Width = 59 + Position.BandIndex = 0 + Position.ColIndex = 24 + Position.RowIndex = 0 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv3 + end + end + object Panel3: TPanel + Left = 488 + Top = 153 + Width = 201 + Height = 195 + TabOrder = 5 + Visible = False + object Label8: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Button1: TButton + Left = 24 + Top = 159 + Width = 65 + Height = 25 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnClick = Button1Click + end + object Button2: TButton + Left = 120 + Top = 159 + Width = 49 + Height = 25 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button2Click + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 199 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #35746#21333#31867#22411 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 173 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object RadioGroup1: TRadioGroup + Left = 48 + Top = 24 + Width = 97 + Height = 127 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ItemIndex = 0 + Items.Strings = ( + #21367#26448 + #21046#21697) + ParentFont = False + TabOrder = 3 + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 367 + Width = 1269 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + Control = cxGrid3 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 336 + Top = 160 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + Parameters = <> + Left = 832 + Top = 144 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 808 + Top = 144 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_WFBOrder.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 864 + Top = 144 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 392 + Top = 160 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 424 + Top = 176 + 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 = 840 + Top = 256 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 848 + Top = 208 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 384 + Top = 240 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 792 + Top = 288 + end + object RM2: 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 288 + Top = 208 + ReportData = {} + end + object cxStyleRepository1: TcxStyleRepository + object cxStyle1: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #40657#20307 + Font.Style = [fsBold] + end + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 344 + Top = 408 + end + object DataSource2: TDataSource + DataSet = CDS_ZP + Left = 504 + Top = 440 + end + object CDS_ZP: TClientDataSet + Aggregates = <> + Params = <> + Left = 560 + Top = 448 + end + object cxStyleRepository2: TcxStyleRepository + object cxStyle2: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #40657#20307 + Font.Style = [fsBold] + end + end + object cxStyleRepository3: TcxStyleRepository + object cxStyle3: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #40657#20307 + Font.Style = [fsBold] + end + end +end diff --git a/艾登贸易管理/U_ProductOrderListNew.pas b/艾登贸易管理/U_ProductOrderListNew.pas new file mode 100644 index 0000000..bc89eee --- /dev/null +++ b/艾登贸易管理/U_ProductOrderListNew.pas @@ -0,0 +1,1041 @@ +unit U_ProductOrderListNew; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + cxGridBandedTableView, cxGridDBBandedTableView; + +type + TfrmProductOrderListNew = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Label2: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNo: TEdit; + Label5: TLabel; + WFBCodeName: TEdit; + TBExport: TToolButton; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1OrderDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1FactoryNo2Name: TcxGridDBColumn; + v1FactoryNo3Name: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1PRTQty: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + Label4: TLabel; + CustomNoName: TEdit; + v1Column3: TcxGridDBColumn; + TBCK: TToolButton; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + TBChk: TToolButton; + TBCChk: TToolButton; + v1Column6: TcxGridDBColumn; + TBBQPrint: TToolButton; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + TBCopy: TToolButton; + cxGrid2DBTableView1: TcxGridDBTableView; + cxGrid2Level1: TcxGridLevel; + cxGrid2: TcxGrid; + TV2: TcxGridDBBandedTableView; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + V2Column1: TcxGridDBBandedColumn; + V2Column2: TcxGridDBBandedColumn; + V2Column3: TcxGridDBBandedColumn; + V2Column4: TcxGridDBBandedColumn; + V2Column5: TcxGridDBBandedColumn; + V2Column6: TcxGridDBBandedColumn; + V2Column7: TcxGridDBBandedColumn; + V2Column8: TcxGridDBBandedColumn; + V2Column9: TcxGridDBBandedColumn; + V2Column10: TcxGridDBBandedColumn; + V2Column11: TcxGridDBBandedColumn; + V2Column12: TcxGridDBBandedColumn; + V2Column13: TcxGridDBBandedColumn; + V2Column14: TcxGridDBBandedColumn; + V2Column15: TcxGridDBBandedColumn; + V2Column16: TcxGridDBBandedColumn; + V2Column17: TcxGridDBBandedColumn; + V2Column18: TcxGridDBBandedColumn; + V2Column19: TcxGridDBBandedColumn; + cxGrid3: TcxGrid; + cxGridDBTableView1: TcxGridDBTableView; + Tv3: TcxGridDBBandedTableView; + cxGridDBBandedColumn1: TcxGridDBBandedColumn; + cxGridDBBandedColumn2: TcxGridDBBandedColumn; + cxGridDBBandedColumn3: TcxGridDBBandedColumn; + cxGridDBBandedColumn5: TcxGridDBBandedColumn; + cxGridDBBandedColumn6: TcxGridDBBandedColumn; + cxGridDBBandedColumn7: TcxGridDBBandedColumn; + cxGridDBBandedColumn8: TcxGridDBBandedColumn; + cxGridDBBandedColumn9: TcxGridDBBandedColumn; + cxGridDBBandedColumn10: TcxGridDBBandedColumn; + cxGridDBBandedColumn11: TcxGridDBBandedColumn; + cxGridDBBandedColumn12: TcxGridDBBandedColumn; + cxGridDBBandedColumn13: TcxGridDBBandedColumn; + cxGridDBBandedColumn14: TcxGridDBBandedColumn; + cxGridDBBandedColumn15: TcxGridDBBandedColumn; + cxGridDBBandedColumn16: TcxGridDBBandedColumn; + cxGridDBBandedColumn17: TcxGridDBBandedColumn; + cxGridDBBandedColumn18: TcxGridDBBandedColumn; + cxGridDBBandedColumn19: TcxGridDBBandedColumn; + cxGridLevel1: TcxGridLevel; + Panel3: TPanel; + Label8: TLabel; + Button1: TButton; + Button2: TButton; + Panel10: TPanel; + Image2: TImage; + RadioGroup1: TRadioGroup; + cxGridPopupMenu2: TcxGridPopupMenu; + DataSource2: TDataSource; + CDS_ZP: TClientDataSet; + cxStyleRepository2: TcxStyleRepository; + cxStyle2: TcxStyle; + cxStyleRepository3: TcxStyleRepository; + cxStyle3: TcxStyle; + V2Column20: TcxGridDBBandedColumn; + V2Column21: TcxGridDBBandedColumn; + V2Column22: TcxGridDBBandedColumn; + V2Column23: TcxGridDBBandedColumn; + cxSplitter1: TcxSplitter; + v3Column1: TcxGridDBBandedColumn; + v3Column2: TcxGridDBBandedColumn; + v3Column3: TcxGridDBBandedColumn; + v3Column4: TcxGridDBBandedColumn; + ToolButton2: TToolButton; + V2Column24: TcxGridDBBandedColumn; + V2Column25: TcxGridDBBandedColumn; + v3Column5: TcxGridDBBandedColumn; + v3Column6: TcxGridDBBandedColumn; + V2Column26: TcxGridDBBandedColumn; + v3Column7: TcxGridDBBandedColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBViewClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBBQPrintClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure TBCKClick(Sender: TObject); + procedure TBChkClick(Sender: TObject); + procedure TBCChkClick(Sender: TObject); + procedure TBCopyClick(Sender: TObject); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, + Y: Integer); + procedure Image2Click(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure TV2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TV2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv3MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + private + PPInt:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData(Order_Main10:TClientDataSet):Boolean; + procedure InitGridFH(); + procedure CopyOrderData(Order_MainFF:TClientDataSet); + { Private declarations } + public + FFInt:Integer; + { Public declarations } + end; + +var + frmProductOrderListNew: TfrmProductOrderListNew; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun,U_OrderInPutZP,U_OrderInPutNew,U_OrderInPutZPNew + ,U_OrderInPutZPLNew,U_OrderAttachment; + +{$R *.dfm} + +procedure TfrmProductOrderListNew.FormDestroy(Sender: TObject); +begin + frmProductOrderListNew:=nil; +end; + +procedure TfrmProductOrderListNew.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderListNew.FormCreate(Sender: TObject); +begin + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + if DParameters1='' then + begin + TBChk.Visible:=True; + TBCChk.Visible:=True; + TBAdd.Visible:=False; + TBEdit.Visible:=False; + TBCopy.Visible:=False; + end else + begin + TBChk.Visible:=False; + TBCChk.Visible:=False; + TBAdd.Visible:=True; + TBEdit.Visible:=True; + TBCopy.Visible:=True; + end; +end; + +procedure TfrmProductOrderListNew.TBCloseClick(Sender: TObject); +begin + Close; + //WriteCxGrid('޷IJָʾб',Tv1,'ָʾ'); + WriteCxBandedGrid('޷IJָʾб',Tv2,'ָʾ'); + WriteCxBandedGrid('޷IJָʾбDD',Tv3,'ָʾ'); +end; + +procedure TfrmProductOrderListNew.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' exec P_WFBOrder_List :begdate,:endate,:MainId'); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime)); + Parameters.ParamByName('endate').Value:=Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1)); + Parameters.ParamByName('MainId').Value:=''; + Open; + end; + SDofilter(ADOQueryMain,'OrderType='''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + SDofilter(ADOQueryMain,'OrderType=''Ʒ'''); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderListNew.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderListNew.InitForm(); +begin + if SGetServerDate(ADOQueryTemp)>StrToDate('2013-06-19') then + begin + ToolBar1.Visible:=False; + Application.MessageBox('ҪϵӦ̣','ʾ',0); + Exit; + end; + ReadCxBandedGrid('޷IJָʾб',Tv2,'ָʾ'); + ReadCxBandedGrid('޷IJָʾбDD',Tv3,'ָʾ'); + if FFInt>0 then + begin + v1Column3.Hidden:=False; + v1Column3.Visible:=True; + end else + begin + v1Column3.Hidden:=True; + v1Column3.Visible:=False; + end; + if Trim(DParameters1)='1' then + begin + v1CustomerNoName.Visible:=False; + v1CustomerNoName.Hidden:=True; + end else + begin + v1CustomerNoName.Visible:=True; + v1CustomerNoName.Hidden:=False; + end; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); + {if Trim(DParameters1)='1' then + begin + TBChk.Visible:=False; + TBCChk.Visible:=False; + end;} +end; + +procedure TfrmProductOrderListNew.TBFindClick(Sender: TObject); +var + fsj:string; +begin + if ADOQueryMain.Active=False then Exit; + if Trim(SGetFilters(Panel1,1,2))<>'' then + begin + fsj:='OrderType='''' and '+Trim(SGetFilters(Panel1,1,2)); + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + fsj:='OrderType=''Ʒ'' and '+Trim(SGetFilters(Panel1,1,2)); + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + end else + begin + fsj:='OrderType='''''; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + fsj:='OrderType=''Ʒ'''; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + end; +end; + +procedure TfrmProductOrderListNew.TBEditClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + if Trim(Order_Main.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + Application.MessageBox('˶ͨ޸ģ','ʾ',0); + Exit; + end; + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + //OrderType:=''; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.Order_Main.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + if Trim(CDS_ZP.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + Application.MessageBox('˶ͨ޸ģ','ʾ',0); + Exit; + end; + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=1; + FMainId:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString); + OrderType:='Ʒ'; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.CDS_ZP.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; +end; + +procedure TfrmProductOrderListNew.TBDelClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + if Trim(Order_Main.fieldbyname('Chker').AsString)<>'' then + begin + Application.MessageBox('Ѿ˲ɾ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData(Order_Main) then + begin + //TBRafresh.Click; + //TBFind.Click; + Order_Main.Delete; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + if Trim(CDS_ZP.fieldbyname('Chker').AsString)<>'' then + begin + Application.MessageBox('Ѿ˲ɾ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData(CDS_ZP) then + begin + //TBRafresh.Click; + //TBFind.Click; + CDS_ZP.Delete; + end; + end; + + +end; + +function TfrmProductOrderListNew.DelData(Order_Main10:TClientDataSet):Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFBOrder_Main where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + sql.Add('delete WFBOrder_Sub where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + sql.Add('delete WFB_DB where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + sql.Add('delete WFBYCL_PB where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + sql.Add('delete WFBYCL_PBSub where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderListNew.TBViewClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + ShowMessage(DCode); + +end; + +procedure TfrmProductOrderListNew.TBExportClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + TcxGridToExcel('ָʾб()',cxGrid2); + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + TcxGridToExcel('ָʾб(Ʒ)',cxGrid3); + end; + + +end; + +procedure TfrmProductOrderListNew.TBPrintClick(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); + //SelPrintData(TV4,ADOQueryMain,'ͬѯ'); +end; + +procedure TfrmProductOrderListNew.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + InitGridFH(); + end else + InitGrid(); +end; + +procedure TfrmProductOrderListNew.TBAddClick(Sender: TObject); +begin + Panel3.Visible:=True; +end; + +procedure TfrmProductOrderListNew.OrderNoChange(Sender: TObject); +var + fsj:string; +begin + if ADOQueryMain.Active=False then Exit; + if Trim(SGetFilters(Panel1,1,2))<>'' then + begin + fsj:='OrderType='''' and '+Trim(SGetFilters(Panel1,1,2)); + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + fsj:='OrderType=''Ʒ'' and '+Trim(SGetFilters(Panel1,1,2)); + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + end else + begin + fsj:='OrderType='''''; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + fsj:='OrderType=''Ʒ'''; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + end; +end; + +procedure TfrmProductOrderListNew.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderListNew.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + // if FFInt=1 then + //ModalResult:=1; + TBCK.Click; +end; + +procedure TfrmProductOrderListNew.TBBQPrintClick(Sender: TObject); +var + fPrintFile:String; +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + RMDB_Main.DataSet:=Order_Main; + end; + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + RMDB_Main.DataSet:=CDS_ZP; + end; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ǩ.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + RM2.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ǩ.rmf'),'ʾ',0); + end; +end; + +procedure TfrmProductOrderListNew.ToolButton2Click(Sender: TObject); + var + fsj:string; +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + fsj:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + fsj:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString); + end else + begin + Application.MessageBox('δѡж!','ʾ',0); + Exit; + end; + try + frmOrderAttachment:=TfrmOrderAttachment.Create(Application); + with frmOrderAttachment do + begin + FAMainId:=Trim(fsj); + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderAttachment.Free; + end; +end; + +procedure TfrmProductOrderListNew.ToolButton3Click(Sender: TObject); +begin + ModalResult:=1; +end; + +procedure TfrmProductOrderListNew.ToolButton4Click(Sender: TObject); +begin + if Application.MessageBox('ȷҪִɲ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Order_Main Set Status='''' '); + sql.Add('where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + //InitGrid(); +end; + +procedure TfrmProductOrderListNew.ToolButton5Click(Sender: TObject); +begin + if Application.MessageBox('ȷҪִɳ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Order_Main Set Status='''' '); + sql.Add('where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmProductOrderListNew.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderListNew.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderListNew.TBCKClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=3; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + TBSave.Visible:=False; + ToolBar2.Visible:=False; + cxGrid4.Enabled:=False; + //ScrollBox1.Enabled:=False; + //ScrollBox2.Enabled:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=3; + FMainId:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString); + TBSave.Visible:=False; + ToolBar2.Visible:=False; + cxGrid4.Enabled:=False; + //ScrollBox1.Enabled:=False; + //ScrollBox2.Enabled:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; + +end; + +procedure TfrmProductOrderListNew.TBChkClick(Sender: TObject); +begin + + if PPInt=1 then + begin + if Trim(Order_Main.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + if Application.MessageBox('˶ͨǷٴˣ','ʾ',32+4)<>IDYES then Exit; + end; + if Order_Main.IsEmpty then Exit; + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=2; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + //OrderType:=''; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.Order_Main.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + if Trim(CDS_ZP.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + if Application.MessageBox('˶ͨǷٴˣ','ʾ',32+4)<>IDYES then Exit; + end; + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=2; + FMainId:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString); + OrderType:='Ʒ'; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.CDS_ZP.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; + +end; + +procedure TfrmProductOrderListNew.TBCChkClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + if Application.MessageBox('ȷҪ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Main Set ChkStatus='''' '); + sql.Add(' ,Chker='''' where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + with Order_Main do + begin + Edit; + FieldByName('Chker').Value:=''; + FieldByName('ChkStatus').Value:=''; + Post; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + if Application.MessageBox('ȷҪ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Main Set ChkStatus='''' '); + sql.Add(', Chker='''' where MainId='''+Trim(CDS_ZP.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + with CDS_ZP do + begin + Edit; + FieldByName('Chker').Value:=''; + FieldByName('ChkStatus').Value:=''; + Post; + end; + end ; + +end; +procedure TfrmProductOrderListNew.CopyOrderData(Order_MainFF:TClientDataSet); +var + FFMainId:string; +begin + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + //sql.Add('exec P_Copy_WFBOrder :MainId,:Filler'); + sql.Add('exec P_Copy_WFBOrder_NoQty :MainId,:Filler'); + Parameters.ParamByName('MainId').Value:=Trim(Order_MainFF.fieldbyname('MainId').AsString); + Parameters.ParamByName('Filler').Value:=Trim(DName); + ExecSQL; + end; + FFMainId:=Trim(Order_MainFF.fieldbyname('MainId').AsString)+'FZ'; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update WFBYCL_PB Set CRID=(select isnull(Max(A.CRID),(select Max(AA.CRID) from CK_YCL_Sub AA '); + SQL.Add(' where AA.YCLCode=WFBYCL_PB.YCLCode) ) '); + sql.Add(' from CK_YCL_Sub A '); + sql.Add(' inner join CK_YCL_KC B on B.CRID=A.CRID '); + sql.Add(' where A.YCLCode=WFBYCL_PB.YCLCode and B.KCQty>0 )'); + sql.Add(' where MainId='''+Trim(FFMainId)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBYCL_PB Set YLKC=(select KCQty from CK_YCL_KC A where A.CRID=WFBYCL_PB.CRID)'); + sql.Add(' where MainId='''+Trim(FFMainId)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBYCL_PB Set YCLYJKC=(select YJKC=AA.KCQty-isnull((select sum(isnull(YLQty,0)) from WFBYCL_PB WP where WP.CRID=AA.CRID '); + sql.Add(' and not exists(select * from CK_YCL_Sub CS '); + sql.Add(' inner join WFBOrder_Main WM on CS.OrderNo=WM.OrderNO'); + sql.Add(' where WM.MainId=WP.MainId and CS.CRID=WP.CRID ) ),0)'); + sql.Add(' FROM CK_YCL_KC AA where AA.CRID=WFBYCL_PB.CRID)'); + sql.Add(' where MainId='''+Trim(FFMainId)+''''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; +procedure TfrmProductOrderListNew.TBCopyClick(Sender: TObject); +var + FFMainId:string; +begin + + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + CopyOrderData(Self.Order_Main); + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=1; + CopyInt:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString)+'FZ'; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + CopyOrderData(Self.CDS_ZP); + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=1; + CopyInt:=1; + FMainId:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString)+'FZ'; + OrderType:='Ʒ'; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; + +end; + +procedure TfrmProductOrderListNew.Panel10MouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel3).perform(WM_SYSCOMMAND, $F012, 0); +end; + +procedure TfrmProductOrderListNew.Image2Click(Sender: TObject); +begin + Panel3.Visible:=False; +end; + +procedure TfrmProductOrderListNew.Button1Click(Sender: TObject); +begin + if RadioGroup1.ItemIndex=0 then + begin + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=0; + FMainId:=''; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.Order_Main.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + begin + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=0; + FMainId:=''; + OrderType:='Ʒ'; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.CDS_ZP.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; + Panel3.Visible:=False; +end; + +procedure TfrmProductOrderListNew.Button2Click(Sender: TObject); +begin + Panel3.Visible:=False; +end; + +procedure TfrmProductOrderListNew.TV2CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if Trim(DParameters1)='' then + begin + TBChk.Click; + end else + begin + TBEdit.Click; + end; +end; + +procedure TfrmProductOrderListNew.TV2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + PPInt:=1; + Tv2.Bands[0].Caption:='ġ'; + Tv3.Bands[0].Caption:='Ʒ'; + + Tv3.Bands[0].Styles.Header.TextColor:=clBlack; + Tv2.Bands[0].Styles.Header.TextColor:=clBlue; +end; + +procedure TfrmProductOrderListNew.Tv3MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + PPInt:=2; + Tv2.Bands[0].Caption:=''; + Tv3.Bands[0].Caption:='Ʒ'; + Tv2.Bands[0].Styles.Header.TextColor:=clBlack; + Tv3.Bands[0].Styles.Header.TextColor:=clBlue; +end; + +end. diff --git a/艾登贸易管理/U_ProductOrderListNewCK.dfm b/艾登贸易管理/U_ProductOrderListNewCK.dfm new file mode 100644 index 0000000..0c73794 --- /dev/null +++ b/艾登贸易管理/U_ProductOrderListNewCK.dfm @@ -0,0 +1,1300 @@ +object frmProductOrderListNewCK: TfrmProductOrderListNewCK + Left = -60 + Top = 45 + Width = 1277 + Height = 684 + Caption = #29983#20135#25351#31034#21333#26597#30475 + 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 = 1269 + AutoSize = True + 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_WFBProducttion.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBCK: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 57 + OnClick = TBCKClick + end + object TBClose: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1269 + Height = 81 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #19979#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 189 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 324 + Top = 15 + Width = 26 + Height = 12 + Caption = #20195#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 460 + Top = 15 + Width = 26 + Height = 12 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 189 + Top = 39 + Width = 40 + Height = 12 + Caption = #39068' '#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 324 + Top = 39 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 460 + Top = 39 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 596 + Top = 15 + Width = 26 + Height = 12 + Caption = #33457#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 75 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 230 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoChange + end + object WFBCodeName: TEdit + Tag = 2 + Left = 353 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = OrderNoChange + end + object CustomNoName: TEdit + Tag = 2 + Left = 489 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + end + object SWFBColor: TEdit + Tag = 2 + Left = 230 + Top = 35 + Width = 77 + Height = 20 + TabOrder = 5 + OnChange = OrderNoChange + end + object SWFBFK: TEdit + Tag = 2 + Left = 353 + Top = 35 + Width = 83 + Height = 20 + TabOrder = 6 + OnChange = OrderNoChange + end + object SWFBKZ: TEdit + Tag = 2 + Left = 489 + Top = 35 + Width = 83 + Height = 20 + TabOrder = 7 + OnChange = OrderNoChange + end + object SWFBHW: TEdit + Tag = 2 + Left = 625 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 8 + OnChange = OrderNoChange + end + end + object cxGrid1: TcxGrid + Left = 1024 + Top = 104 + Width = 169 + Height = 121 + TabOrder = 2 + Visible = False + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBProducttion.SHuangSe + Styles.IncSearch = DataLink_WFBProducttion.SHuangSe + Styles.Selection = DataLink_WFBProducttion.SHuangSe + object v1Column3: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 39 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#32534#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 72 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'Customnoname' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 66 + end + object v1Column2: TcxGridDBColumn + Caption = #20195#21495 + DataBinding.FieldName = 'WFBCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'WFBFK' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 62 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'WFBKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 76 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'OrdQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 58 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrdUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 63 + end + object v1OrderDate: TcxGridDBColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrderDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 70 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = 'ETA' + DataBinding.FieldName = 'ETADate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 63 + end + object v1FactoryNo2Name: TcxGridDBColumn + Caption = #35013#26588#26085#26399 + DataBinding.FieldName = 'ZGDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 60 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = 'ETD' + DataBinding.FieldName = 'ETDDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 60 + end + object v1FactoryNo3Name: TcxGridDBColumn + Caption = #24320#22987#20837#24211#26085#26399 + DataBinding.FieldName = 'BegRKDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 94 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #24320#22987#29983#20135#26085#26399 + DataBinding.FieldName = 'BegSCDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 90 + end + object v1Note: TcxGridDBColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 67 + end + object v1Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'OrdPrice' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 57 + end + object v1PRTQty: TcxGridDBColumn + Caption = #35745#20215#21333#20301 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 58 + end + object v1Column4: TcxGridDBColumn + Caption = #29983#20135#32447 + DataBinding.FieldName = 'SCXName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 62 + end + object v1Column5: TcxGridDBColumn + Caption = #32593#32467#26500 + DataBinding.FieldName = 'WJGName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 62 + end + object v1Column6: TcxGridDBColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 59 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 113 + Width = 1269 + Height = 254 + Align = alClient + TabOrder = 3 + object cxGrid2DBTableView1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + end + object TV2: TcxGridDBBandedTableView + OnMouseDown = TV2MouseDown + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TV2CellDblClick + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBProducttion.SHuangSe + Styles.IncSearch = DataLink_WFBProducttion.SHuangSe + Styles.Selection = DataLink_WFBProducttion.SHuangSe + Styles.Header = DataLink_WFBProducttion.Default + Bands = < + item + Caption = #21367#26448 + Styles.Header = cxStyle2 + Width = 1374 + end> + object V2Column1: TcxGridDBBandedColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 59 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object V2Column2: TcxGridDBBandedColumn + Caption = #23458#25143 + DataBinding.FieldName = 'Customnoname' + HeaderAlignmentHorz = taCenter + Width = 39 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object V2Column3: TcxGridDBBandedColumn + Caption = #20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Width = 55 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object V2Column4: TcxGridDBBandedColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'SWFBFK' + HeaderAlignmentHorz = taCenter + Width = 46 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object V2Column5: TcxGridDBBandedColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'SWFBKZ' + HeaderAlignmentHorz = taCenter + Width = 56 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object V2Column6: TcxGridDBBandedColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'OrdQty' + HeaderAlignmentHorz = taCenter + Width = 47 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object V2Column7: TcxGridDBBandedColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrdUnit' + HeaderAlignmentHorz = taCenter + Width = 62 + Position.BandIndex = 0 + Position.ColIndex = 9 + Position.RowIndex = 0 + end + object V2Column8: TcxGridDBBandedColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrderDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 62 + Position.BandIndex = 0 + Position.ColIndex = 10 + Position.RowIndex = 0 + end + object V2Column9: TcxGridDBBandedColumn + Caption = 'ETA' + DataBinding.FieldName = 'ETADate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 42 + Position.BandIndex = 0 + Position.ColIndex = 11 + Position.RowIndex = 0 + end + object V2Column10: TcxGridDBBandedColumn + Caption = #35013#26588#26085#26399 + DataBinding.FieldName = 'ZGDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 44 + Position.BandIndex = 0 + Position.ColIndex = 12 + Position.RowIndex = 0 + end + object V2Column11: TcxGridDBBandedColumn + Caption = 'ETD' + DataBinding.FieldName = 'ETDDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 44 + Position.BandIndex = 0 + Position.ColIndex = 13 + Position.RowIndex = 0 + end + object V2Column12: TcxGridDBBandedColumn + Caption = #24320#22987#20837#24211#26085#26399 + DataBinding.FieldName = 'BegRKDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 14 + Position.RowIndex = 0 + end + object V2Column13: TcxGridDBBandedColumn + Caption = #24320#22987#29983#20135#26085#26399 + DataBinding.FieldName = 'BegSCDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 15 + Position.RowIndex = 0 + end + object V2Column14: TcxGridDBBandedColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 16 + Position.RowIndex = 0 + end + object V2Column16: TcxGridDBBandedColumn + Caption = #35745#20215#21333#20301 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Width = 43 + Position.BandIndex = 0 + Position.ColIndex = 17 + Position.RowIndex = 0 + end + object V2Column17: TcxGridDBBandedColumn + Caption = #29983#20135#32447 + DataBinding.FieldName = 'SCXName' + HeaderAlignmentHorz = taCenter + Width = 38 + Position.BandIndex = 0 + Position.ColIndex = 18 + Position.RowIndex = 0 + end + object V2Column18: TcxGridDBBandedColumn + Caption = #32593#32467#26500 + DataBinding.FieldName = 'WJGName' + HeaderAlignmentHorz = taCenter + Width = 43 + Position.BandIndex = 0 + Position.ColIndex = 19 + Position.RowIndex = 0 + end + object V2Column19: TcxGridDBBandedColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + HeaderAlignmentHorz = taCenter + Width = 45 + Position.BandIndex = 0 + Position.ColIndex = 21 + Position.RowIndex = 0 + end + object V2Column20: TcxGridDBBandedColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Width = 48 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object V2Column22: TcxGridDBBandedColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Width = 50 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object V2Column23: TcxGridDBBandedColumn + Caption = #32534#21495 + DataBinding.FieldName = 'OrderCode' + HeaderAlignmentHorz = taCenter + Width = 82 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object V2Column24: TcxGridDBBandedColumn + Caption = #23457#26680#29366#24577 + DataBinding.FieldName = 'ChkStatus' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 65 + Position.BandIndex = 0 + Position.ColIndex = 22 + Position.RowIndex = 0 + end + object V2Column25: TcxGridDBBandedColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 66 + Position.BandIndex = 0 + Position.ColIndex = 20 + Position.RowIndex = 0 + end + object V2Column26: TcxGridDBBandedColumn + Caption = #24050#29983#25104#35745#21010#21333 + DataBinding.FieldName = 'JHDFlag' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Options.Focusing = False + Width = 85 + Position.BandIndex = 0 + Position.ColIndex = 23 + Position.RowIndex = 0 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = TV2 + end + end + object cxGrid3: TcxGrid + Left = 0 + Top = 375 + Width = 1269 + Height = 272 + Align = alBottom + TabOrder = 4 + object cxGridDBTableView1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + end + object Tv3: TcxGridDBBandedTableView + OnMouseDown = Tv3MouseDown + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TV2CellDblClick + DataController.DataSource = DataSource2 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBProducttion.SHuangSe + Styles.IncSearch = DataLink_WFBProducttion.SHuangSe + Styles.Selection = DataLink_WFBProducttion.SHuangSe + Styles.Header = DataLink_WFBProducttion.Default + Bands = < + item + Caption = #21046#21697 + Styles.Header = cxStyle1 + Width = 1374 + end> + object cxGridDBBandedColumn1: TcxGridDBBandedColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 63 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn2: TcxGridDBBandedColumn + Caption = #23458#25143 + DataBinding.FieldName = 'Customnoname' + HeaderAlignmentHorz = taCenter + Width = 46 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn3: TcxGridDBBandedColumn + Caption = #20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn5: TcxGridDBBandedColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'SWFBKZ' + HeaderAlignmentHorz = taCenter + Width = 51 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn6: TcxGridDBBandedColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'OrdQty' + HeaderAlignmentHorz = taCenter + Width = 50 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn7: TcxGridDBBandedColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrdUnit' + HeaderAlignmentHorz = taCenter + Width = 57 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn8: TcxGridDBBandedColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrderDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 51 + Position.BandIndex = 0 + Position.ColIndex = 9 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn9: TcxGridDBBandedColumn + Caption = 'ETA' + DataBinding.FieldName = 'ETADate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 10 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn10: TcxGridDBBandedColumn + Caption = #35013#26588#26085#26399 + DataBinding.FieldName = 'ZGDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 52 + Position.BandIndex = 0 + Position.ColIndex = 11 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn11: TcxGridDBBandedColumn + Caption = 'ETD' + DataBinding.FieldName = 'ETDDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 51 + Position.BandIndex = 0 + Position.ColIndex = 12 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn12: TcxGridDBBandedColumn + Caption = #24320#22987#20837#24211#26085#26399 + DataBinding.FieldName = 'BegRKDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 66 + Position.BandIndex = 0 + Position.ColIndex = 13 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn13: TcxGridDBBandedColumn + Caption = #24320#22987#29983#20135#26085#26399 + DataBinding.FieldName = 'BegSCDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 65 + Position.BandIndex = 0 + Position.ColIndex = 14 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn14: TcxGridDBBandedColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 67 + Position.BandIndex = 0 + Position.ColIndex = 15 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn17: TcxGridDBBandedColumn + Caption = #29983#20135#32447 + DataBinding.FieldName = 'SCXName' + HeaderAlignmentHorz = taCenter + Width = 47 + Position.BandIndex = 0 + Position.ColIndex = 16 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn18: TcxGridDBBandedColumn + Caption = #32593#32467#26500 + DataBinding.FieldName = 'WJGName' + HeaderAlignmentHorz = taCenter + Width = 45 + Position.BandIndex = 0 + Position.ColIndex = 17 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn19: TcxGridDBBandedColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 45 + Position.BandIndex = 0 + Position.ColIndex = 19 + Position.RowIndex = 0 + end + object v3Column1: TcxGridDBBandedColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Width = 51 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object v3Column2: TcxGridDBBandedColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object v3Column4: TcxGridDBBandedColumn + Caption = #32534#21495 + DataBinding.FieldName = 'OrderCode' + HeaderAlignmentHorz = taCenter + Width = 74 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object v3Column5: TcxGridDBBandedColumn + Caption = #23457#26680#29366#24577 + DataBinding.FieldName = 'ChkStatus' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 62 + Position.BandIndex = 0 + Position.ColIndex = 20 + Position.RowIndex = 0 + end + object v3Column6: TcxGridDBBandedColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 71 + Position.BandIndex = 0 + Position.ColIndex = 18 + Position.RowIndex = 0 + end + object v3Column7: TcxGridDBBandedColumn + Caption = #24050#29983#25104#35745#21010#21333 + DataBinding.FieldName = 'JHDFlag' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Width = 59 + Position.BandIndex = 0 + Position.ColIndex = 21 + Position.RowIndex = 0 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv3 + end + end + object Panel3: TPanel + Left = 544 + Top = 153 + Width = 201 + Height = 195 + TabOrder = 5 + Visible = False + object Label8: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Button1: TButton + Left = 24 + Top = 159 + Width = 65 + Height = 25 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnClick = Button1Click + end + object Button2: TButton + Left = 120 + Top = 159 + Width = 49 + Height = 25 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button2Click + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 199 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #35746#21333#31867#22411 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 173 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object RadioGroup1: TRadioGroup + Left = 48 + Top = 24 + Width = 97 + Height = 127 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ItemIndex = 0 + Items.Strings = ( + #21367#26448 + #21046#21697) + ParentFont = False + TabOrder = 3 + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 367 + Width = 1269 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + Control = cxGrid3 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 336 + Top = 160 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 832 + Top = 144 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 808 + Top = 144 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 864 + Top = 144 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 392 + Top = 160 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 424 + Top = 176 + 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 = 840 + Top = 256 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 848 + Top = 208 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 384 + Top = 240 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 792 + Top = 288 + end + object RM2: 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 288 + Top = 208 + ReportData = {} + end + object cxStyleRepository1: TcxStyleRepository + object cxStyle1: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #40657#20307 + Font.Style = [fsBold] + end + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 344 + Top = 408 + end + object DataSource2: TDataSource + DataSet = CDS_ZP + Left = 504 + Top = 440 + end + object CDS_ZP: TClientDataSet + Aggregates = <> + Params = <> + Left = 560 + Top = 448 + end + object cxStyleRepository2: TcxStyleRepository + object cxStyle2: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #40657#20307 + Font.Style = [fsBold] + end + end + object cxStyleRepository3: TcxStyleRepository + Left = 792 + Top = 104 + object cxStyle3: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #40657#20307 + Font.Style = [fsBold] + end + end +end diff --git a/艾登贸易管理/U_ProductOrderListNewCK.pas b/艾登贸易管理/U_ProductOrderListNewCK.pas new file mode 100644 index 0000000..a814bdf --- /dev/null +++ b/艾登贸易管理/U_ProductOrderListNewCK.pas @@ -0,0 +1,1012 @@ +unit U_ProductOrderListNewCK; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + cxGridBandedTableView, cxGridDBBandedTableView; + +type + TfrmProductOrderListNewCK = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNo: TEdit; + Label5: TLabel; + WFBCodeName: TEdit; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1OrderDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1FactoryNo2Name: TcxGridDBColumn; + v1FactoryNo3Name: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1PRTQty: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + Label4: TLabel; + CustomNoName: TEdit; + v1Column3: TcxGridDBColumn; + TBCK: TToolButton; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + cxGrid2DBTableView1: TcxGridDBTableView; + cxGrid2Level1: TcxGridLevel; + cxGrid2: TcxGrid; + TV2: TcxGridDBBandedTableView; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + V2Column1: TcxGridDBBandedColumn; + V2Column2: TcxGridDBBandedColumn; + V2Column3: TcxGridDBBandedColumn; + V2Column4: TcxGridDBBandedColumn; + V2Column5: TcxGridDBBandedColumn; + V2Column6: TcxGridDBBandedColumn; + V2Column7: TcxGridDBBandedColumn; + V2Column8: TcxGridDBBandedColumn; + V2Column9: TcxGridDBBandedColumn; + V2Column10: TcxGridDBBandedColumn; + V2Column11: TcxGridDBBandedColumn; + V2Column12: TcxGridDBBandedColumn; + V2Column13: TcxGridDBBandedColumn; + V2Column14: TcxGridDBBandedColumn; + V2Column16: TcxGridDBBandedColumn; + V2Column17: TcxGridDBBandedColumn; + V2Column18: TcxGridDBBandedColumn; + V2Column19: TcxGridDBBandedColumn; + cxGrid3: TcxGrid; + cxGridDBTableView1: TcxGridDBTableView; + Tv3: TcxGridDBBandedTableView; + cxGridDBBandedColumn1: TcxGridDBBandedColumn; + cxGridDBBandedColumn2: TcxGridDBBandedColumn; + cxGridDBBandedColumn3: TcxGridDBBandedColumn; + cxGridDBBandedColumn5: TcxGridDBBandedColumn; + cxGridDBBandedColumn6: TcxGridDBBandedColumn; + cxGridDBBandedColumn7: TcxGridDBBandedColumn; + cxGridDBBandedColumn8: TcxGridDBBandedColumn; + cxGridDBBandedColumn9: TcxGridDBBandedColumn; + cxGridDBBandedColumn10: TcxGridDBBandedColumn; + cxGridDBBandedColumn11: TcxGridDBBandedColumn; + cxGridDBBandedColumn12: TcxGridDBBandedColumn; + cxGridDBBandedColumn13: TcxGridDBBandedColumn; + cxGridDBBandedColumn14: TcxGridDBBandedColumn; + cxGridDBBandedColumn17: TcxGridDBBandedColumn; + cxGridDBBandedColumn18: TcxGridDBBandedColumn; + cxGridDBBandedColumn19: TcxGridDBBandedColumn; + cxGridLevel1: TcxGridLevel; + Panel3: TPanel; + Label8: TLabel; + Button1: TButton; + Button2: TButton; + Panel10: TPanel; + Image2: TImage; + RadioGroup1: TRadioGroup; + cxGridPopupMenu2: TcxGridPopupMenu; + DataSource2: TDataSource; + CDS_ZP: TClientDataSet; + cxStyleRepository2: TcxStyleRepository; + cxStyle2: TcxStyle; + cxStyleRepository3: TcxStyleRepository; + cxStyle3: TcxStyle; + V2Column20: TcxGridDBBandedColumn; + V2Column22: TcxGridDBBandedColumn; + V2Column23: TcxGridDBBandedColumn; + cxSplitter1: TcxSplitter; + v3Column1: TcxGridDBBandedColumn; + v3Column2: TcxGridDBBandedColumn; + v3Column4: TcxGridDBBandedColumn; + V2Column24: TcxGridDBBandedColumn; + V2Column25: TcxGridDBBandedColumn; + v3Column5: TcxGridDBBandedColumn; + v3Column6: TcxGridDBBandedColumn; + V2Column26: TcxGridDBBandedColumn; + v3Column7: TcxGridDBBandedColumn; + Label2: TLabel; + Label6: TLabel; + Label7: TLabel; + SWFBColor: TEdit; + SWFBFK: TEdit; + SWFBKZ: TEdit; + Label9: TLabel; + SWFBHW: TEdit; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBViewClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBBQPrintClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure TBCKClick(Sender: TObject); + procedure TBChkClick(Sender: TObject); + procedure TBCChkClick(Sender: TObject); + procedure TBCopyClick(Sender: TObject); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, + Y: Integer); + procedure Image2Click(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure TV2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TV2MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure Tv3MouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + private + PPInt:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData(Order_Main10:TClientDataSet):Boolean; + procedure InitGridFH(); + procedure CopyOrderData(Order_MainFF:TClientDataSet); + { Private declarations } + public + FFInt:Integer; + { Public declarations } + end; + +var + frmProductOrderListNewCK: TfrmProductOrderListNewCK; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun,U_OrderInPutZP,U_OrderInPutNew,U_OrderInPutZPNew + ,U_OrderInPutZPLNew,U_OrderAttachment; + +{$R *.dfm} + +procedure TfrmProductOrderListNewCK.FormDestroy(Sender: TObject); +begin + frmProductOrderListNewCK:=nil; +end; + +procedure TfrmProductOrderListNewCK.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderListNewCK.FormCreate(Sender: TObject); +begin + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); +end; + +procedure TfrmProductOrderListNewCK.TBCloseClick(Sender: TObject); +begin + Close; + //WriteCxGrid('޷IJָʾб',Tv1,'ָʾ'); + WriteCxBandedGrid('޷IJָʾбck',Tv2,'ָʾ'); + WriteCxBandedGrid('޷IJָʾбDDck',Tv3,'ָʾ'); +end; + +procedure TfrmProductOrderListNewCK.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' exec P_WFBOrder_List :begdate,:endate,:MainId'); + Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime)); + Parameters.ParamByName('endate').Value:=Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1)); + Parameters.ParamByName('MainId').Value:=''; + Open; + end; + SDofilter(ADOQueryMain,'OrderType='''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + SDofilter(ADOQueryMain,'OrderType=''Ʒ'''); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderListNewCK.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderListNewCK.InitForm(); +begin + if SGetServerDate(ADOQueryTemp)>StrToDate('2013-06-19') then + begin + ToolBar1.Visible:=False; + Application.MessageBox('ҪϵӦ̣','ʾ',0); + Exit; + end; + ReadCxBandedGrid('޷IJָʾбck',Tv2,'ָʾ'); + ReadCxBandedGrid('޷IJָʾбDDck',Tv3,'ָʾ'); + if FFInt>0 then + begin + v1Column3.Hidden:=False; + v1Column3.Visible:=True; + end else + begin + v1Column3.Hidden:=True; + v1Column3.Visible:=False; + end; + if Trim(DParameters1)='1' then + begin + v1CustomerNoName.Visible:=False; + v1CustomerNoName.Hidden:=True; + end else + begin + v1CustomerNoName.Visible:=True; + v1CustomerNoName.Hidden:=False; + end; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); + {if Trim(DParameters1)='1' then + begin + TBChk.Visible:=False; + TBCChk.Visible:=False; + end;} +end; + +procedure TfrmProductOrderListNewCK.TBFindClick(Sender: TObject); +var + fsj:string; +begin + if ADOQueryMain.Active=False then Exit; + if Trim(SGetFilters(Panel1,1,2))<>'' then + begin + fsj:='OrderType='''' and '+Trim(SGetFilters(Panel1,1,2)); + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + fsj:='OrderType=''Ʒ'' and '+Trim(SGetFilters(Panel1,1,2)); + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + end else + begin + fsj:='OrderType='''''; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + fsj:='OrderType=''Ʒ'''; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + end; +end; + +procedure TfrmProductOrderListNewCK.TBEditClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + if Trim(Order_Main.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + Application.MessageBox('˶ͨ޸ģ','ʾ',0); + Exit; + end; + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + //OrderType:=''; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.Order_Main.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + if Trim(CDS_ZP.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + Application.MessageBox('˶ͨ޸ģ','ʾ',0); + Exit; + end; + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=1; + FMainId:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString); + OrderType:='Ʒ'; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.CDS_ZP.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; +end; + +procedure TfrmProductOrderListNewCK.TBDelClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + if Trim(Order_Main.fieldbyname('Chker').AsString)<>'' then + begin + Application.MessageBox('Ѿ˲ɾ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData(Order_Main) then + begin + //TBRafresh.Click; + //TBFind.Click; + Order_Main.Delete; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + if Trim(CDS_ZP.fieldbyname('Chker').AsString)<>'' then + begin + Application.MessageBox('Ѿ˲ɾ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData(CDS_ZP) then + begin + //TBRafresh.Click; + //TBFind.Click; + CDS_ZP.Delete; + end; + end; + + +end; + +function TfrmProductOrderListNewCK.DelData(Order_Main10:TClientDataSet):Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFBOrder_Main where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + sql.Add('delete WFBOrder_Sub where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + sql.Add('delete WFB_DB where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + sql.Add('delete WFBYCL_PB where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + sql.Add('delete WFBYCL_PBSub where MainId='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderListNewCK.TBViewClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + ShowMessage(DCode); + +end; + +procedure TfrmProductOrderListNewCK.TBExportClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + TcxGridToExcel('ָʾб()',cxGrid2); + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + TcxGridToExcel('ָʾб(Ʒ)',cxGrid3); + end; + + +end; + +procedure TfrmProductOrderListNewCK.TBPrintClick(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); + //SelPrintData(TV4,ADOQueryMain,'ͬѯ'); +end; + +procedure TfrmProductOrderListNewCK.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + InitGridFH(); + end else + InitGrid(); +end; + +procedure TfrmProductOrderListNewCK.TBAddClick(Sender: TObject); +begin + Panel3.Visible:=True; +end; + +procedure TfrmProductOrderListNewCK.OrderNoChange(Sender: TObject); +var + fsj:string; +begin + if ADOQueryMain.Active=False then Exit; + if Trim(SGetFilters(Panel1,1,2))<>'' then + begin + fsj:='OrderType='''' and '+Trim(SGetFilters(Panel1,1,2)); + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + fsj:='OrderType=''Ʒ'' and '+Trim(SGetFilters(Panel1,1,2)); + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + end else + begin + fsj:='OrderType='''''; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + fsj:='OrderType=''Ʒ'''; + SDofilter(ADOQueryMain,fsj); + SCreateCDS20(ADOQueryMain,CDS_ZP); + SInitCDSData20(ADOQueryMain,CDS_ZP); + end; +end; + +procedure TfrmProductOrderListNewCK.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderListNewCK.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + // if FFInt=1 then + //ModalResult:=1; + TBCK.Click; +end; + +procedure TfrmProductOrderListNewCK.TBBQPrintClick(Sender: TObject); +var + fPrintFile:String; +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + RMDB_Main.DataSet:=Order_Main; + end; + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + RMDB_Main.DataSet:=CDS_ZP; + end; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ǩ.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + RM2.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ǩ.rmf'),'ʾ',0); + end; +end; + +procedure TfrmProductOrderListNewCK.ToolButton2Click(Sender: TObject); + var + fsj:string; +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + fsj:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + fsj:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString); + end else + begin + Application.MessageBox('δѡж!','ʾ',0); + Exit; + end; + try + frmOrderAttachment:=TfrmOrderAttachment.Create(Application); + with frmOrderAttachment do + begin + FAMainId:=Trim(fsj); + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderAttachment.Free; + end; +end; + +procedure TfrmProductOrderListNewCK.ToolButton3Click(Sender: TObject); +begin + ModalResult:=1; +end; + +procedure TfrmProductOrderListNewCK.ToolButton4Click(Sender: TObject); +begin + if Application.MessageBox('ȷҪִɲ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Order_Main Set Status='''' '); + sql.Add('where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + //InitGrid(); +end; + +procedure TfrmProductOrderListNewCK.ToolButton5Click(Sender: TObject); +begin + if Application.MessageBox('ȷҪִɳ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate Order_Main Set Status='''' '); + sql.Add('where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmProductOrderListNewCK.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderListNewCK.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderListNewCK.TBCKClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=3; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + TBSave.Visible:=False; + ToolBar2.Visible:=False; + cxGrid4.Enabled:=False; + //ScrollBox1.Enabled:=False; + //ScrollBox2.Enabled:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=3; + FMainId:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString); + TBSave.Visible:=False; + ToolBar2.Visible:=False; + cxGrid4.Enabled:=False; + //ScrollBox1.Enabled:=False; + //ScrollBox2.Enabled:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; + +end; + +procedure TfrmProductOrderListNewCK.TBChkClick(Sender: TObject); +begin + + if PPInt=1 then + begin + if Trim(Order_Main.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + if Application.MessageBox('˶ͨǷٴˣ','ʾ',32+4)<>IDYES then Exit; + end; + if Order_Main.IsEmpty then Exit; + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=2; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + //OrderType:=''; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.Order_Main.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + if Trim(CDS_ZP.fieldbyname('ChkStatus').AsString)='ͨ' then + begin + if Application.MessageBox('˶ͨǷٴˣ','ʾ',32+4)<>IDYES then Exit; + end; + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=2; + FMainId:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString); + OrderType:='Ʒ'; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.CDS_ZP.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; + +end; + +procedure TfrmProductOrderListNewCK.TBCChkClick(Sender: TObject); +begin + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + if Application.MessageBox('ȷҪ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Main Set ChkStatus='''' '); + sql.Add(' ,Chker='''' where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + with Order_Main do + begin + Edit; + FieldByName('Chker').Value:=''; + FieldByName('ChkStatus').Value:=''; + Post; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + if Application.MessageBox('ȷҪ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Main Set ChkStatus='''' '); + sql.Add(', Chker='''' where MainId='''+Trim(CDS_ZP.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + with CDS_ZP do + begin + Edit; + FieldByName('Chker').Value:=''; + FieldByName('ChkStatus').Value:=''; + Post; + end; + end ; + +end; +procedure TfrmProductOrderListNewCK.CopyOrderData(Order_MainFF:TClientDataSet); +var + FFMainId:string; +begin + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + //sql.Add('exec P_Copy_WFBOrder :MainId,:Filler'); + sql.Add('exec P_Copy_WFBOrder_NoQty :MainId,:Filler'); + Parameters.ParamByName('MainId').Value:=Trim(Order_MainFF.fieldbyname('MainId').AsString); + Parameters.ParamByName('Filler').Value:=Trim(DName); + ExecSQL; + end; + FFMainId:=Trim(Order_MainFF.fieldbyname('MainId').AsString)+'FZ'; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update WFBYCL_PB Set CRID=(select isnull(Max(A.CRID),(select Max(AA.CRID) from CK_YCL_Sub AA '); + SQL.Add(' where AA.YCLCode=WFBYCL_PB.YCLCode) ) '); + sql.Add(' from CK_YCL_Sub A '); + sql.Add(' inner join CK_YCL_KC B on B.CRID=A.CRID '); + sql.Add(' where A.YCLCode=WFBYCL_PB.YCLCode and B.KCQty>0 )'); + sql.Add(' where MainId='''+Trim(FFMainId)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBYCL_PB Set YLKC=(select KCQty from CK_YCL_KC A where A.CRID=WFBYCL_PB.CRID)'); + sql.Add(' where MainId='''+Trim(FFMainId)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBYCL_PB Set YCLYJKC=(select YJKC=AA.KCQty-isnull((select sum(isnull(YLQty,0)) from WFBYCL_PB WP where WP.CRID=AA.CRID '); + sql.Add(' and not exists(select * from CK_YCL_Sub CS '); + sql.Add(' inner join WFBOrder_Main WM on CS.OrderNo=WM.OrderNO'); + sql.Add(' where WM.MainId=WP.MainId and CS.CRID=WP.CRID ) ),0)'); + sql.Add(' FROM CK_YCL_KC AA where AA.CRID=WFBYCL_PB.CRID)'); + sql.Add(' where MainId='''+Trim(FFMainId)+''''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; +procedure TfrmProductOrderListNewCK.TBCopyClick(Sender: TObject); +var + FFMainId:string; +begin + + if PPInt=1 then + begin + if Order_Main.IsEmpty then Exit; + CopyOrderData(Self.Order_Main); + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=1; + CopyInt:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString)+'FZ'; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + if PPInt=2 then + begin + if CDS_ZP.IsEmpty then Exit; + CopyOrderData(Self.CDS_ZP); + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=1; + CopyInt:=1; + FMainId:=Trim(Self.CDS_ZP.fieldbyname('MainId').AsString)+'FZ'; + OrderType:='Ʒ'; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; + +end; + +procedure TfrmProductOrderListNewCK.Panel10MouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel3).perform(WM_SYSCOMMAND, $F012, 0); +end; + +procedure TfrmProductOrderListNewCK.Image2Click(Sender: TObject); +begin + Panel3.Visible:=False; +end; + +procedure TfrmProductOrderListNewCK.Button1Click(Sender: TObject); +begin + if RadioGroup1.ItemIndex=0 then + begin + try + frmOrderInPutNew:=TfrmOrderInPutNew.Create(Application); + with frmOrderInPutNew do + begin + PState:=0; + FMainId:=''; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.Order_Main.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutNew.Free; + end; + end else + begin + try + frmOrderInPutZPLNew:=TfrmOrderInPutZPLNew.Create(Application); + with frmOrderInPutZPLNew do + begin + PState:=0; + FMainId:=''; + OrderType:='Ʒ'; + if ShowModal=1 then + begin + Self.InitGrid(); + Self.CDS_ZP.Locate('MainId',Trim(FMainId),[]); + end; + end; + finally + frmOrderInPutZPLNew.Free; + end; + end; + Panel3.Visible:=False; +end; + +procedure TfrmProductOrderListNewCK.Button2Click(Sender: TObject); +begin + Panel3.Visible:=False; +end; + +procedure TfrmProductOrderListNewCK.TV2CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + TBCK.Click; +end; + +procedure TfrmProductOrderListNewCK.TV2MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + PPInt:=1; + Tv2.Bands[0].Caption:='ġ'; + Tv3.Bands[0].Caption:='Ʒ'; + + Tv3.Bands[0].Styles.Header.TextColor:=clBlack; + Tv2.Bands[0].Styles.Header.TextColor:=clBlue; +end; + +procedure TfrmProductOrderListNewCK.Tv3MouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + PPInt:=2; + Tv2.Bands[0].Caption:=''; + Tv3.Bands[0].Caption:='Ʒ'; + Tv2.Bands[0].Styles.Header.TextColor:=clBlack; + Tv3.Bands[0].Styles.Header.TextColor:=clBlue; +end; + +end. diff --git a/艾登贸易管理/U_ProductOrderListNewCKMX.dfm b/艾登贸易管理/U_ProductOrderListNewCKMX.dfm new file mode 100644 index 0000000..3666195 --- /dev/null +++ b/艾登贸易管理/U_ProductOrderListNewCKMX.dfm @@ -0,0 +1,938 @@ +object frmProductOrderListNewCKMX: TfrmProductOrderListNewCKMX + Left = 25 + Top = 49 + Width = 1277 + Height = 684 + Caption = #29983#20135#25351#31034#21333#26126#32454 + 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 = 1269 + AutoSize = True + 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_WFBProducttion.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + Caption = #23548#20986 + ImageIndex = 102 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1269 + Height = 65 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #19979#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 189 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 324 + Top = 15 + Width = 26 + Height = 12 + Caption = #20195#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 460 + Top = 15 + Width = 26 + Height = 12 + Caption = #23458#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 189 + Top = 39 + Width = 40 + Height = 12 + Caption = #39068' '#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 324 + Top = 39 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 460 + Top = 39 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 596 + Top = 15 + Width = 26 + Height = 12 + Caption = #33457#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 75 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 230 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoChange + end + object WFBCodeName: TEdit + Tag = 2 + Left = 353 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = OrderNoChange + end + object CustomNoName: TEdit + Tag = 2 + Left = 489 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + end + object SWFBColor: TEdit + Tag = 2 + Left = 230 + Top = 35 + Width = 77 + Height = 20 + TabOrder = 5 + OnChange = OrderNoChange + end + object SWFBFK10: TEdit + Tag = 2 + Left = 353 + Top = 35 + Width = 83 + Height = 20 + TabOrder = 6 + OnChange = OrderNoChange + end + object SWFBKZ10: TEdit + Tag = 2 + Left = 489 + Top = 35 + Width = 83 + Height = 20 + TabOrder = 7 + OnChange = OrderNoChange + end + object SWFBHW: TEdit + Tag = 2 + Left = 625 + Top = 11 + Width = 83 + Height = 20 + TabOrder = 8 + OnChange = OrderNoChange + end + end + object cxGrid1: TcxGrid + Left = 1024 + Top = 104 + Width = 169 + Height = 121 + TabOrder = 2 + Visible = False + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBProducttion.SHuangSe + Styles.IncSearch = DataLink_WFBProducttion.SHuangSe + Styles.Selection = DataLink_WFBProducttion.SHuangSe + object v1Column3: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_WFBProducttion.Default + Width = 39 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#32534#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 72 + end + object v1PRTSpec: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'Customnoname' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 66 + end + object v1Column2: TcxGridDBColumn + Caption = #20195#21495 + DataBinding.FieldName = 'WFBCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'WFBFK' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 62 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'WFBKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 76 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'OrdQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 58 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrdUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 63 + end + object v1OrderDate: TcxGridDBColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrderDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 70 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = 'ETA' + DataBinding.FieldName = 'ETADate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 63 + end + object v1FactoryNo2Name: TcxGridDBColumn + Caption = #35013#26588#26085#26399 + DataBinding.FieldName = 'ZGDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 60 + end + object v1FactoryNo1Name: TcxGridDBColumn + Caption = 'ETD' + DataBinding.FieldName = 'ETDDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 60 + end + object v1FactoryNo3Name: TcxGridDBColumn + Caption = #24320#22987#20837#24211#26085#26399 + DataBinding.FieldName = 'BegRKDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 94 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #24320#22987#29983#20135#26085#26399 + DataBinding.FieldName = 'BegSCDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 90 + end + object v1Note: TcxGridDBColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 67 + end + object v1Column1: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'OrdPrice' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 57 + end + object v1PRTQty: TcxGridDBColumn + Caption = #35745#20215#21333#20301 + DataBinding.FieldName = 'BZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 58 + end + object v1Column4: TcxGridDBColumn + Caption = #29983#20135#32447 + DataBinding.FieldName = 'SCXName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 62 + end + object v1Column5: TcxGridDBColumn + Caption = #32593#32467#26500 + DataBinding.FieldName = 'WJGName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 62 + end + object v1Column6: TcxGridDBColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_WFBProducttion.Default + Width = 59 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 97 + Width = 1269 + Height = 550 + Align = alClient + TabOrder = 3 + object cxGrid2DBTableView1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + end + object TV2: TcxGridDBBandedTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBProducttion.SHuangSe + Styles.IncSearch = DataLink_WFBProducttion.SHuangSe + Styles.Selection = DataLink_WFBProducttion.SHuangSe + Styles.Header = DataLink_WFBProducttion.Default + Bands = < + item + Caption = #35746#21333#26126#32454 + Styles.Header = cxStyle2 + Width = 1374 + end> + object V2Column1: TcxGridDBBandedColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 78 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object V2Column2: TcxGridDBBandedColumn + Caption = #23458#25143 + DataBinding.FieldName = 'Customnoname' + HeaderAlignmentHorz = taCenter + Width = 53 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object V2Column3: TcxGridDBBandedColumn + Caption = #20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Width = 73 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object V2Column4: TcxGridDBBandedColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'SWFBFK10' + HeaderAlignmentHorz = taCenter + Width = 61 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object V2Column5: TcxGridDBBandedColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'SWFBKZ10' + HeaderAlignmentHorz = taCenter + Width = 75 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object V2Column6: TcxGridDBBandedColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'SOrdQty' + HeaderAlignmentHorz = taCenter + Width = 80 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object V2Column7: TcxGridDBBandedColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'OrdUnit' + HeaderAlignmentHorz = taCenter + Width = 80 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object V2Column8: TcxGridDBBandedColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrderDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 78 + Position.BandIndex = 0 + Position.ColIndex = 10 + Position.RowIndex = 0 + end + object V2Column14: TcxGridDBBandedColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 71 + Position.BandIndex = 0 + Position.ColIndex = 11 + Position.RowIndex = 0 + end + object V2Column18: TcxGridDBBandedColumn + Caption = #32593#32467#26500 + DataBinding.FieldName = 'WJGName' + HeaderAlignmentHorz = taCenter + Width = 55 + Position.BandIndex = 0 + Position.ColIndex = 12 + Position.RowIndex = 0 + end + object V2Column19: TcxGridDBBandedColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + HeaderAlignmentHorz = taCenter + Width = 58 + Position.BandIndex = 0 + Position.ColIndex = 14 + Position.RowIndex = 0 + end + object V2Column20: TcxGridDBBandedColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Width = 64 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object V2Column22: TcxGridDBBandedColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Width = 66 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object V2Column24: TcxGridDBBandedColumn + Caption = #23457#26680#29366#24577 + DataBinding.FieldName = 'ChkStatus' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 80 + Position.BandIndex = 0 + Position.ColIndex = 15 + Position.RowIndex = 0 + end + object V2Column25: TcxGridDBBandedColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 81 + Position.BandIndex = 0 + Position.ColIndex = 13 + Position.RowIndex = 0 + end + object V2Column9: TcxGridDBBandedColumn + Caption = #35268#26684 + DataBinding.FieldName = 'ProductSpec' + HeaderAlignmentHorz = taCenter + Width = 105 + Position.BandIndex = 0 + Position.ColIndex = 9 + Position.RowIndex = 0 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = TV2 + end + end + object Panel3: TPanel + Left = 544 + Top = 185 + Width = 201 + Height = 195 + TabOrder = 4 + Visible = False + object Label8: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Button1: TButton + Left = 24 + Top = 159 + Width = 65 + Height = 25 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + end + object Button2: TButton + Left = 120 + Top = 159 + Width = 49 + Height = 25 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button2Click + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 199 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #35746#21333#31867#22411 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 173 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object RadioGroup1: TRadioGroup + Left = 48 + Top = 24 + Width = 97 + Height = 127 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ItemIndex = 0 + Items.Strings = ( + #21367#26448 + #21046#21697) + ParentFont = False + TabOrder = 3 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 336 + Top = 160 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 864 + Top = 152 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 920 + Top = 160 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 920 + Top = 200 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 392 + Top = 160 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 424 + Top = 176 + 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 = 840 + Top = 256 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 848 + Top = 208 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 384 + Top = 240 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 792 + Top = 288 + end + object RM2: 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 288 + Top = 208 + ReportData = {} + end + object cxStyleRepository1: TcxStyleRepository + object cxStyle1: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #40657#20307 + Font.Style = [fsBold] + end + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 344 + Top = 408 + end + object DataSource2: TDataSource + DataSet = CDS_ZP + Left = 504 + Top = 440 + end + object CDS_ZP: TClientDataSet + Aggregates = <> + Params = <> + Left = 560 + Top = 448 + end + object cxStyleRepository2: TcxStyleRepository + Left = 288 + object cxStyle2: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #40657#20307 + Font.Style = [fsBold] + end + end + object cxStyleRepository3: TcxStyleRepository + Left = 888 + Top = 232 + object cxStyle3: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #40657#20307 + Font.Style = [fsBold] + end + end +end diff --git a/艾登贸易管理/U_ProductOrderListNewCKMX.pas b/艾登贸易管理/U_ProductOrderListNewCKMX.pas new file mode 100644 index 0000000..56e1a0c --- /dev/null +++ b/艾登贸易管理/U_ProductOrderListNewCKMX.pas @@ -0,0 +1,314 @@ +unit U_ProductOrderListNewCKMX; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + cxGridBandedTableView, cxGridDBBandedTableView; + +type + TfrmProductOrderListNewCKMX = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNo: TEdit; + Label5: TLabel; + WFBCodeName: TEdit; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1OrderDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1FactoryNo1Name: TcxGridDBColumn; + v1FactoryNo2Name: TcxGridDBColumn; + v1FactoryNo3Name: TcxGridDBColumn; + v1Note: TcxGridDBColumn; + v1PRTSpec: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1PRTQty: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + Label4: TLabel; + CustomNoName: TEdit; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + cxGrid2DBTableView1: TcxGridDBTableView; + cxGrid2Level1: TcxGridLevel; + cxGrid2: TcxGrid; + TV2: TcxGridDBBandedTableView; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + V2Column1: TcxGridDBBandedColumn; + V2Column2: TcxGridDBBandedColumn; + V2Column3: TcxGridDBBandedColumn; + V2Column4: TcxGridDBBandedColumn; + V2Column5: TcxGridDBBandedColumn; + V2Column6: TcxGridDBBandedColumn; + V2Column7: TcxGridDBBandedColumn; + V2Column8: TcxGridDBBandedColumn; + V2Column14: TcxGridDBBandedColumn; + V2Column18: TcxGridDBBandedColumn; + V2Column19: TcxGridDBBandedColumn; + Panel3: TPanel; + Label8: TLabel; + Button1: TButton; + Button2: TButton; + Panel10: TPanel; + Image2: TImage; + RadioGroup1: TRadioGroup; + cxGridPopupMenu2: TcxGridPopupMenu; + DataSource2: TDataSource; + CDS_ZP: TClientDataSet; + cxStyleRepository2: TcxStyleRepository; + cxStyle2: TcxStyle; + cxStyleRepository3: TcxStyleRepository; + cxStyle3: TcxStyle; + V2Column20: TcxGridDBBandedColumn; + V2Column22: TcxGridDBBandedColumn; + V2Column24: TcxGridDBBandedColumn; + V2Column25: TcxGridDBBandedColumn; + Label2: TLabel; + Label6: TLabel; + Label7: TLabel; + SWFBColor: TEdit; + SWFBFK10: TEdit; + SWFBKZ10: TEdit; + Label9: TLabel; + SWFBHW: TEdit; + ToolButton1: TToolButton; + V2Column9: TcxGridDBBandedColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBBQPrintClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, + Y: Integer); + procedure Image2Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + private + PPInt:Integer; + procedure InitGrid(); + procedure InitForm(); + function DelData(Order_Main10:TClientDataSet):Boolean; + procedure InitGridFH(); + procedure CopyOrderData(Order_MainFF:TClientDataSet); + { Private declarations } + public + FFInt:Integer; + { Public declarations } + end; + +var + frmProductOrderListNewCKMX: TfrmProductOrderListNewCKMX; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun,U_OrderInPutZP,U_OrderInPutNew,U_OrderInPutZPNew + ,U_OrderInPutZPLNew,U_OrderAttachment; + +{$R *.dfm} + +procedure TfrmProductOrderListNewCKMX.FormDestroy(Sender: TObject); +begin + frmProductOrderListNewCKMX:=nil; +end; + +procedure TfrmProductOrderListNewCKMX.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderListNewCKMX.FormCreate(Sender: TObject); +begin + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); +end; + +procedure TfrmProductOrderListNewCKMX.TBCloseClick(Sender: TObject); +begin + Close; + //WriteCxGrid('޷IJָʾб',Tv1,'ָʾ'); + WriteCxBandedGrid('޷IJָʾбMX',Tv2,'ָʾ'); +end; + +procedure TfrmProductOrderListNewCKMX.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' exec P_Select_OrderMainSub :WSql'); + Parameters.ParamByName('WSql').Value:=' and A.OrderDate>='''+formatdatetime('yyyy-MM-dd',BegDate.DateTime)+'''' + +' and A.OrderDate<'''+formatdatetime('yyyy-MM-dd',EndDate.DateTime+1)+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderListNewCKMX.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderListNewCKMX.InitForm(); +begin + ReadCxBandedGrid('޷IJָʾбMX',Tv2,'ָʾ'); + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); + +end; + +procedure TfrmProductOrderListNewCKMX.TBFindClick(Sender: TObject); +var + fsj:string; +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmProductOrderListNewCKMX.DelData(Order_Main10:TClientDataSet):Boolean; +begin + +end; + +procedure TfrmProductOrderListNewCKMX.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderListNewCKMX.TBAddClick(Sender: TObject); +begin + Panel3.Visible:=True; +end; + +procedure TfrmProductOrderListNewCKMX.OrderNoChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmProductOrderListNewCKMX.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderListNewCKMX.TBBQPrintClick(Sender: TObject); +var + fPrintFile:String; +begin +end; + +procedure TfrmProductOrderListNewCKMX.ToolButton2Click(Sender: TObject); + var + fsj:string; +begin +end; + +procedure TfrmProductOrderListNewCKMX.ToolButton3Click(Sender: TObject); +begin + ModalResult:=1; +end; + +procedure TfrmProductOrderListNewCKMX.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderListNewCKMX.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderListNewCKMX.CopyOrderData(Order_MainFF:TClientDataSet); +begin +end; +procedure TfrmProductOrderListNewCKMX.Panel10MouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel3).perform(WM_SYSCOMMAND, $F012, 0); +end; + +procedure TfrmProductOrderListNewCKMX.Image2Click(Sender: TObject); +begin + Panel3.Visible:=False; +end; + +procedure TfrmProductOrderListNewCKMX.Button2Click(Sender: TObject); +begin + Panel3.Visible:=False; +end; + +procedure TfrmProductOrderListNewCKMX.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + SelExportDataBand(Tv2,ADOQueryMain,'ָʾ'); +end; + +end. diff --git a/艾登贸易管理/U_ProductOrderListSel.dfm b/艾登贸易管理/U_ProductOrderListSel.dfm new file mode 100644 index 0000000..f936030 --- /dev/null +++ b/艾登贸易管理/U_ProductOrderListSel.dfm @@ -0,0 +1,343 @@ +object frmProductOrderListSel: TfrmProductOrderListSel + Left = 210 + Top = 75 + Width = 1094 + Height = 600 + Caption = #29983#20135#25351#31034#21333#36873#25321 + 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 = 1081 + AutoSize = True + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object ToolButton3: TToolButton + Left = 0 + Top = 0 + Caption = #36873#25321 + ImageIndex = 106 + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 59 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1081 + Height = 54 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 35 + Top = 22 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object OrderNoM: TEdit + Tag = 2 + Left = 76 + Top = 18 + Width = 149 + Height = 20 + TabOrder = 0 + OnKeyPress = OrderNoMKeyPress + end + end + object cxGrid1: TcxGrid + Left = 16 + Top = 96 + Width = 1065 + Height = 369 + TabOrder = 2 + object Tv1: TcxGridDBTableView + OnDblClick = Tv1DblClick + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 44 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1KHConNO: TcxGridDBColumn + Caption = 'PO#' + DataBinding.FieldName = 'KHConNO' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column6: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'PRTkuanNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1OrdDefStr1: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'MPRTCode' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 90 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 64 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object v1MPRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'MPRTSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1MPRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object v1MPRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 54 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v1Column1: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'SOrddefstr1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 56 + end + object v1Column2: TcxGridDBColumn + Caption = #33457#22411#33457#21495 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 63 + end + object v1Column3: TcxGridDBColumn + Caption = #20844#26020#25968 + DataBinding.FieldName = 'PRTOrderKgQty' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 52 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 57 + end + object v1Column5: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 62 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 288 + Top = 184 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end +end diff --git a/艾登贸易管理/U_ProductOrderListSel.pas b/艾登贸易管理/U_ProductOrderListSel.pas new file mode 100644 index 0000000..6258f42 --- /dev/null +++ b/艾登贸易管理/U_ProductOrderListSel.pas @@ -0,0 +1,168 @@ +unit U_ProductOrderListSel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus; + +type + TfrmProductOrderListSel = class(TForm) + ToolBar1: TToolBar; + TBClose: TToolButton; + Panel1: TPanel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNoM: TEdit; + v1OrderNo: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + v1MPRTSpec: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1MPRTCodeName: TcxGridDBColumn; + v1MPRTMF: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + v1MPRTKZ: TcxGridDBColumn; + v1OrdDefStr1: TcxGridDBColumn; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + v1Column4: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1KHConNO: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure OrderNoMKeyPress(Sender: TObject; var Key: Char); + procedure Tv1DblClick(Sender: TObject); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmProductOrderListSel: TfrmProductOrderListSel; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun; + +{$R *.dfm} + +procedure TfrmProductOrderListSel.FormDestroy(Sender: TObject); +begin + frmProductOrderListSel:=nil; +end; + +procedure TfrmProductOrderListSel.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderListSel.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; +end; + +procedure TfrmProductOrderListSel.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ָʾбѡ',Tv1,'ָʾ'); +end; + +procedure TfrmProductOrderListSel.InitGrid(); +begin + if Length(Trim(OrderNoM.Text))<3 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select B.*,A.*,A.OrderNo orderNoM,c.KhconNo,C.ConPerson2,C.ConPerson3,C.conDefstr2,C.conDefstr6,C.condefstr10,C.priceNote,C.Payment,C.ShippMent, '); + sql.Add('PriceUnit1=(select top 1 PriceUnit from JYordercon_sub X where X.mainID=C.mainid)'); + sql.add('from JYOrder_sub A'); + sql.Add('inner join JYOrder_Main B on B.mainID=A.mainID '); + sql.Add('left join JYOrderCon_Main C on C.conNO=B.conNO '); + SQL.Add('where B.OrderNo like '''+'%'+Trim(OrderNoM.Text)+'%'+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmProductOrderListSel.InitForm(); +begin + ReadCxGrid('ָʾбѡ',Tv1,'ָʾ'); + InitGrid(); +end; + +procedure TfrmProductOrderListSel.FormShow(Sender: TObject); +begin + InitForm(); + if FFInt=1 then + begin + v1Column4.Visible:=False; + v1Column4.Hidden:=True; + end; +end; + +procedure TfrmProductOrderListSel.ToolButton3Click(Sender: TObject); +begin + IF Order_Main.IsEmpty then exit; + ModalResult:=1; +end; + +procedure TfrmProductOrderListSel.OrderNoMKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + InitGrid(); + end; +end; + +procedure TfrmProductOrderListSel.Tv1DblClick(Sender: TObject); +begin + ToolButton3.Click; +end; + +end. diff --git a/艾登贸易管理/U_ProductOrderNewList.dfm b/艾登贸易管理/U_ProductOrderNewList.dfm new file mode 100644 index 0000000..5174c84 --- /dev/null +++ b/艾登贸易管理/U_ProductOrderNewList.dfm @@ -0,0 +1,1348 @@ +object frmProductOrderNewList: TfrmProductOrderNewList + Left = 323 + Top = 244 + Width = 1350 + Height = 681 + Caption = #21253#35013#25351#31034#21333 + 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 = 1334 + Height = 62 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 107 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 106 + Visible = False + OnClick = ToolButton3Click + end + object TBAdd: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object ToolButton2: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #22797#21046 + ImageIndex = 57 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + OnClick = ToolButton1Click + end + object TBDel: TToolButton + Left = 441 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton5: TToolButton + Left = 504 + Top = 0 + AutoSize = True + Caption = #35746#21333#23548#20837 + ImageIndex = 8 + OnClick = ToolButton5Click + end + object TBExport: TToolButton + Left = 591 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TFJ: TToolButton + Left = 654 + Top = 0 + AutoSize = True + Caption = #25351#31034#21333#38468#20214 + ImageIndex = 57 + Wrap = True + OnClick = TFJClick + end + object TBPrint: TToolButton + Left = 0 + Top = 30 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object ToolButton4: TToolButton + Left = 63 + Top = 30 + AutoSize = True + Caption = #21512#24182#25171#21360 + ImageIndex = 12 + OnClick = ToolButton4Click + end + object ToolButton7: TToolButton + Left = 150 + Top = 30 + AutoSize = True + Caption = #35746#21333#21512#24182 + ImageIndex = 16 + Visible = False + OnClick = ToolButton7Click + end + object ToolButton8: TToolButton + Left = 237 + Top = 30 + AutoSize = True + Caption = #21462#28040#21512#24182 + ImageIndex = 56 + Visible = False + OnClick = ToolButton8Click + end + object ToolButton6: TToolButton + Left = 324 + Top = 30 + AutoSize = True + Caption = #29983#20135#25171#21360 + ImageIndex = 12 + OnClick = ToolButton6Click + end + object ToolButton9: TToolButton + Left = 411 + Top = 30 + AutoSize = True + Caption = #35746#21333#23436#25104 + ImageIndex = 41 + OnClick = ToolButton9Click + end + object ToolButton10: TToolButton + Left = 498 + Top = 30 + AutoSize = True + Caption = #25764#38144#23436#25104 + ImageIndex = 99 + OnClick = ToolButton10Click + end + object ToolButton11: TToolButton + Left = 585 + Top = 30 + AutoSize = True + Caption = #26631#31614#35774#32622 + ImageIndex = 60 + OnClick = ToolButton11Click + end + object ToolButton12: TToolButton + Left = 672 + Top = 30 + AutoSize = True + Caption = #26631#31614#25171#21360 + ImageIndex = 12 + OnClick = ToolButton12Click + end + object ToolButton13: TToolButton + Left = 759 + Top = 30 + AutoSize = True + Caption = #26631#31614#35774#32622#29305#27530 + ImageIndex = 56 + OnClick = ToolButton13Click + end + object ToolButton14: TToolButton + Left = 870 + Top = 30 + AutoSize = True + Caption = #20986#24211 + ImageIndex = 13 + Visible = False + OnClick = ToolButton14Click + end + object TBClose: TToolButton + Left = 933 + Top = 30 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 62 + Width = 1334 + Height = 67 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 42 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 207 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 355 + Top = 15 + Width = 40 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 510 + Top = 15 + Width = 52 + Height = 12 + Caption = #20844#21496#21488#22836 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 207 + Top = 39 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 509 + Top = 39 + Width = 54 + Height = 12 + Caption = #33337' '#26679 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 355 + Top = 39 + Width = 39 + Height = 12 + Caption = #19994#21153#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 658 + Top = 15 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 659 + Top = 40 + Width = 52 + Height = 12 + Caption = #24635#35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 95 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 95 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 248 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object CustomerNoName: TEdit + Tag = 2 + Left = 399 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 3 + OnChange = OrderNoChange + end + object SYRName: TEdit + Tag = 2 + Left = 565 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 4 + OnChange = OrderNoChange + end + object ConNo: TEdit + Tag = 2 + Left = 248 + Top = 35 + Width = 77 + Height = 20 + TabOrder = 5 + OnChange = OrderNoChange + OnKeyPress = ConNoKeyPress + end + object MPRTJiBenNote: TEdit + Tag = 2 + Left = 565 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 6 + OnChange = OrderNoChange + end + object OrdPerson2: TEdit + Tag = 2 + Left = 399 + Top = 36 + Width = 76 + Height = 20 + TabOrder = 7 + OnChange = OrderNoChange + end + object prtcode: TEdit + Tag = 2 + Left = 713 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 8 + OnChange = OrderNoChange + end + object ZOrderNo: TEdit + Tag = 2 + Left = 713 + Top = 35 + Width = 77 + Height = 20 + TabOrder = 9 + OnChange = OrderNoChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 151 + Width = 1334 + Height = 250 + Align = alTop + PopupMenu = PopupMenu1 + TabOrder = 2 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + OnCellDblClick = Tv1CellDblClick + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1ZQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object Tv1Column1: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + HeaderAlignmentHorz = taCenter + Width = 50 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 89 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 80 + end + object v1OrdPerson2: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson2' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 69 + end + object v1OrdDate: TcxGridDBColumn + Caption = #25490#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1SYRName: TcxGridDBColumn + Caption = #20844#21496#21488#22836 + DataBinding.FieldName = 'SYRName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1MPRTJiBenNote: TcxGridDBColumn + Caption = #33337#26679 + DataBinding.FieldName = 'MPRTJiBenNote' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1MPRTTeBieNote: TcxGridDBColumn + Caption = #25968#37327#35201#27714 + DataBinding.FieldName = 'MPRTNiuDu' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object v1MPRTBZNote: TcxGridDBColumn + Caption = #21253#35013#35201#27714 + DataBinding.FieldName = 'MPRTBZNote' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 99 + end + object v1MPRTSCTeBieNote: TcxGridDBColumn + Caption = #36136#37327#35201#27714 + DataBinding.FieldName = 'MPRTSCTeBieNote' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 98 + end + object v1ZQty: TcxGridDBColumn + Caption = #24635#25968#37327 + DataBinding.FieldName = 'ZQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 76 + end + object v1OrderUnit3: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1filler: TcxGridDBColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'filler' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + end + object Tv1Column2: TcxGridDBColumn + Caption = #24635#35746#21333#21495 + DataBinding.FieldName = 'ZOrderNo' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column3: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'prtcode' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv1Column4: TcxGridDBColumn + Caption = #26631#31614#21517#31216 + DataBinding.FieldName = 'LBName' + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel4: TPanel + Left = 413 + Top = 195 + Width = 231 + Height = 216 + TabOrder = 3 + Visible = False + object Label14: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 229 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #25253#34920#21517#31216 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 206 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object Button1: TButton + Left = 83 + Top = 176 + Width = 75 + Height = 25 + Caption = #30830#23450 + TabOrder = 1 + OnClick = Button1Click + end + object RadioGroup1: TRadioGroup + Left = 56 + Top = 24 + Width = 129 + Height = 145 + ItemIndex = 0 + Items.Strings = ( + #21253#35013#25351#31034#21333 + #39068#33394#26679) + TabOrder = 2 + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 634 + Width = 1334 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + end + object cxGrid3: TcxGrid + Left = 660 + Top = 194 + Width = 565 + Height = 155 + Align = alCustom + TabOrder = 5 + Visible = False + object TV3: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object TV3Column1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object TV3Column2: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'PRTkuanNo' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object TV3Column3: TcxGridDBColumn + Caption = #27454#24335#21517#31216 + DataBinding.FieldName = 'PRTCodeName' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object TV3Column4: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object TV3Column5: TcxGridDBColumn + Caption = #23610#30721 + DataBinding.FieldName = 'PRTCM' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object TV3Column6: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object TV3Column7: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object TV3Column8: TcxGridDBColumn + Caption = #24211#20301 + DataBinding.FieldName = 'PRTKW' + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TV3 + end + end + object Panel2: TPanel + Left = 616 + Top = 212 + Width = 361 + Height = 93 + TabOrder = 6 + Visible = False + object Label2: TLabel + Left = 55 + Top = 15 + Width = 80 + Height = 19 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Button2: TButton + Left = 35 + Top = 59 + Width = 75 + Height = 25 + Caption = #25171#21360 + TabOrder = 0 + OnClick = Button2Click + end + object Button3: TButton + Left = 235 + Top = 59 + Width = 75 + Height = 25 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button3Click + end + object Edit1: TEdit + Tag = 2 + Left = 141 + Top = 12 + Width = 180 + Height = 27 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 2 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 129 + Width = 1334 + Height = 22 + Align = alTop + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 7 + Properties.CustomButtons.Buttons = <> + Properties.Style = 9 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + #26410#23436#25104 + #24050#23436#25104 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectBottom = 22 + ClientRectRight = 1334 + ClientRectTop = 19 + end + object Panel3: TPanel + Left = 0 + Top = 401 + Width = 1334 + Height = 233 + Align = alBottom + Caption = 'Panel3' + TabOrder = 8 + object cxGrid2: TcxGrid + Left = 1 + Top = 1 + Width = 955 + Height = 231 + Align = alClient + TabOrder = 0 + object TV2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + OnFocusedRecordChanged = TV2FocusedRecordChanged + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + Column = v1PRTOrderQty + end + item + Format = '0' + Position = spFooter + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object V2PRTCode: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'PRTCode' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object V2PRTCodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'PRTCodeName' + HeaderAlignmentHorz = taCenter + Width = 75 + end + object V2Column1: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'PRTSPEC' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object V2PRTMF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'PRTMF' + HeaderAlignmentHorz = taCenter + Width = 95 + end + object V2PRTKZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'PRTKZ' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = False + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 103 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #39068#33394'('#33521#25991')' + DataBinding.FieldName = 'SOrddefstr4' + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FonePurple + Width = 115 + end + object TV2Column1: TcxGridDBColumn + Caption = #39068#33394#33521#25991 + DataBinding.FieldName = 'SOrdDefStr4' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column4: TcxGridDBColumn + Caption = #23610#23544 + DataBinding.FieldName = 'SOrddefstr5' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1SOrddefstr2: TcxGridDBColumn + Caption = #30830#35748#33394#21345 + DataBinding.FieldName = 'SOrddefstr2' + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 87 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FontBlue + Width = 82 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FontBlue + Width = 77 + end + object cxSOrdDefNote1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'SOrdDefNote1' + HeaderAlignmentHorz = taCenter + Width = 161 + end + object TV2Column2: TcxGridDBColumn + Caption = #26465#24418#30721 + DataBinding.FieldName = 'PRTTXM' + HeaderAlignmentHorz = taRightJustify + Width = 60 + end + object TV2Column3: TcxGridDBColumn + Caption = #24211#20301 + DataBinding.FieldName = 'PRTKW' + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + object GroupBox1: TGroupBox + Left = 956 + Top = 1 + Width = 377 + Height = 231 + Align = alRight + Caption = #21452#20987#26597#30475#21407#22270 + TabOrder = 1 + object Picture4: TcxDBImage + Left = 2 + Top = 14 + Hint = 'FileName' + Align = alClient + DataBinding.DataField = 'FilesOther' + DataBinding.DataSource = DSImage + PopupMenu = PopupMenu1 + Properties.GraphicClassName = 'TJPEGImage' + Properties.GraphicTransparency = gtTransparent + Properties.ReadOnly = True + Properties.ShowFocusRect = False + Style.BorderStyle = ebsSingle + TabOrder = 0 + Height = 215 + Width = 373 + end + end + end + object Panel5: TPanel + Left = 48 + Top = 200 + Width = 361 + Height = 93 + TabOrder = 9 + Visible = False + object Label7: TLabel + Left = 55 + Top = 15 + Width = 80 + Height = 19 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Button4: TButton + Left = 35 + Top = 59 + Width = 75 + Height = 25 + Caption = #26631#31614#25171#21360 + TabOrder = 0 + OnClick = Button4Click + end + object Button5: TButton + Left = 235 + Top = 59 + Width = 75 + Height = 25 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button5Click + end + object Edit2: TEdit + Tag = 2 + Left = 141 + Top = 12 + Width = 180 + Height = 27 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 2 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 552 + Top = 167 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 540 + Top = 256 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 288 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 771 + Top = 272 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 256 + Top = 176 + object N2: TMenuItem + Caption = #20840#36873 + OnClick = N2Click + end + object N1: TMenuItem + Caption = #20840#24323 + OnClick = N1Click + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end + object ADOQuerySub: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 556 + Top = 431 + end + object DataSource2: TDataSource + DataSet = CDS_Sub + Left = 488 + Top = 440 + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 396 + Top = 288 + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 204 + Top = 228 + ReportData = {} + end + object OpenDialog1: TOpenDialog + Left = 764 + Top = 176 + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 816 + Top = 216 + end + object ADOQueryImageYS: TADOQuery + Connection = DataLink_TradeManage.ADOLink + EnableBCD = False + Parameters = <> + Left = 776 + Top = 491 + end + object DSImage: TDataSource + DataSet = ADOQueryImageYS + Left = 724 + Top = 500 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 388 + Top = 440 + end + object Cds_Print1: TClientDataSet + Aggregates = <> + Params = <> + Left = 240 + Top = 488 + end + object RMDBDataSet1: TRMDBDataSet + Visible = True + DataSet = Cds_Print1 + Left = 176 + Top = 536 + end + object Cds_Print2: TClientDataSet + Aggregates = <> + Params = <> + Left = 244 + Top = 528 + end + object ADOQuery2: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 308 + Top = 524 + end + object RM2: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 = RMDBDataSet1 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 92 + Top = 496 + ReportData = {} + end +end diff --git a/艾登贸易管理/U_ProductOrderNewList.pas b/艾登贸易管理/U_ProductOrderNewList.pas new file mode 100644 index 0000000..37ae298 --- /dev/null +++ b/艾登贸易管理/U_ProductOrderNewList.pas @@ -0,0 +1,1813 @@ +unit U_ProductOrderNewList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, cxControls, + cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, + cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, RM_Dataset, RM_System, + RM_Common, RM_Class, RM_GridReport, RM_e_Xls, Menus, cxButtonEdit, + cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, ComObj, dxBarBuiltInMenu, + cxPC, cxContainer, cxImage, cxDBEdit, 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 + FdDy = record + inc: integer; //ͻ׽־ + FDdys: string[32]; //ͻ׽ + FdDysName: string[32]; //ͻ׽ + end; + + TfrmProductOrderNewList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNo: TEdit; + TBExport: TToolButton; + v1OrderNo: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + Order_Main: TClientDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + Label4: TLabel; + CustomerNoName: TEdit; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + ToolButton1: TToolButton; + Label8: TLabel; + SYRName: TEdit; + Label9: TLabel; + ConNo: TEdit; + Label10: TLabel; + MPRTJiBenNote: TEdit; + Label11: TLabel; + OrdPerson2: TEdit; + ToolButton2: TToolButton; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + Panel4: TPanel; + Label14: TLabel; + Panel10: TPanel; + Image2: TImage; + Button1: TButton; + RadioGroup1: TRadioGroup; + v1OrdPerson2: TcxGridDBColumn; + v1ZQty: TcxGridDBColumn; + v1OrderUnit3: TcxGridDBColumn; + cxSplitter1: TcxSplitter; + ADOQuerySub: TADOQuery; + DataSource2: TDataSource; + v1SYRName: TcxGridDBColumn; + v1MPRTJiBenNote: TcxGridDBColumn; + v1MPRTTeBieNote: TcxGridDBColumn; + v1MPRTBZNote: TcxGridDBColumn; + v1MPRTSCTeBieNote: TcxGridDBColumn; + TFJ: TToolButton; + v1filler: TcxGridDBColumn; + RMDBMain: TRMDBDataSet; + RM1: TRMGridReport; + ToolButton4: TToolButton; + Tv1Column1: TcxGridDBColumn; + ToolButton5: TToolButton; + cxGrid3: TcxGrid; + TV3: TcxGridDBTableView; + cxGridLevel2: TcxGridLevel; + OpenDialog1: TOpenDialog; + N1: TMenuItem; + TV3Column1: TcxGridDBColumn; + TV3Column2: TcxGridDBColumn; + TV3Column3: TcxGridDBColumn; + TV3Column4: TcxGridDBColumn; + TV3Column5: TcxGridDBColumn; + TV3Column6: TcxGridDBColumn; + TV3Column7: TcxGridDBColumn; + ToolButton6: TToolButton; + Tv1Column2: TcxGridDBColumn; + ToolButton7: TToolButton; + ToolButton8: TToolButton; + Panel2: TPanel; + Button2: TButton; + Button3: TButton; + Label2: TLabel; + Edit1: TEdit; + Tv1Column3: TcxGridDBColumn; + Label5: TLabel; + prtcode: TEdit; + ADOQuery1: TADOQuery; + cxTabControl1: TcxTabControl; + ToolButton9: TToolButton; + ToolButton10: TToolButton; + Panel3: TPanel; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + V2PRTCode: TcxGridDBColumn; + V2PRTCodeName: TcxGridDBColumn; + V2Column1: TcxGridDBColumn; + V2PRTMF: TcxGridDBColumn; + V2PRTKZ: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + cxGridDBColumn1: TcxGridDBColumn; + TV2Column1: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1SOrddefstr2: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + cxSOrdDefNote1: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + GroupBox1: TGroupBox; + Picture4: TcxDBImage; + ADOQueryImageYS: TADOQuery; + DSImage: TDataSource; + CDS_Sub: TClientDataSet; + Label6: TLabel; + ZOrderNo: TEdit; + ToolButton11: TToolButton; + ToolButton12: TToolButton; + ToolButton13: TToolButton; + Panel5: TPanel; + Label7: TLabel; + Button4: TButton; + Button5: TButton; + Edit2: TEdit; + Tv1Column4: TcxGridDBColumn; + Cds_Print1: TClientDataSet; + RMDBDataSet1: TRMDBDataSet; + Cds_Print2: TClientDataSet; + ADOQuery2: TADOQuery; + RM2: TRMGridReport; + TV2Column2: TcxGridDBColumn; + TV3Column8: TcxGridDBColumn; + TV2Column3: TcxGridDBColumn; + ToolButton14: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); + procedure Button1Click(Sender: TObject); + procedure Image2Click(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure TFJClick(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure ToolButton7Click(Sender: TObject); + procedure ToolButton8Click(Sender: TObject); + procedure ToolButton6Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure ToolButton9Click(Sender: TObject); + procedure ToolButton10Click(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure TV2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure ToolButton12Click(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure Button5Click(Sender: TObject); + procedure ToolButton11Click(Sender: TObject); + procedure ToolButton13Click(Sender: TObject); + procedure ToolButton14Click(Sender: TObject); + private + DQdate: TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData(): Boolean; + procedure InitGridFH(); + procedure InitSub(); + procedure CJEWMS(); + procedure CJEWM(FMainid: string; FSubid: string); + procedure InitImageYS(fwbid: string); + { Private declarations } + public + FFInt, FCloth: Integer; + + { Public declarations } + end; + +var + frmProductOrderNewList: TfrmProductOrderNewList; + dFdDy: array[0..120] of FdDy; + +implementation + +uses + U_DataLink, U_OrderInPut, U_Fun, U_LabelList, U_LabelListts, U_FjList_RZ; + +{$R *.dfm} +procedure TfrmProductOrderNewList.InitSub(); +begin +// ADOQuerySub.Close; + if Order_Main.IsEmpty then + exit; + with ADOQuerySub do + begin + close; + sql.Clear; + sql.Add('select stuff((select '',''+ (select isnull(X.DRCKName,'''') from CP_InOut X where X.subid=A.subid for xml path(''''))),1,1,'''' ) as prtKW'); + sql.Add(',prttxm=(select DEFstr2 from KH_Zdy_CPCB X where X.cbType=''CPCBCM'' and X.ZdyName=A.PRTCodeName and X.Zdycode=A.PRTCode and X.defstr1=a.SOrddefstr5)'); + sql.Add(' ,A.* from JYOrder_sub A '); + sql.Add('where A.mainID =' + quotedstr((Order_Main.fieldbyname('mainID').AsString))); +// ShowMessage(sql.text); + open; + end; + SCreateCDS20(ADOQuerySub, CDS_Sub); + SInitCDSData20(ADOQuerySub, CDS_Sub); +end; + +procedure TfrmProductOrderNewList.FormDestroy(Sender: TObject); +begin + frmProductOrderNewList := nil; +end; + +procedure TfrmProductOrderNewList.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmProductOrderNewList.FormCreate(Sender: TObject); +begin + cxgrid1.Align := alClient; + DQdate := SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderNewList.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ָʾбFF', Tv1, 'ָʾ'); +end; + +procedure TfrmProductOrderNewList.InitGrid(); +var + sqlwhere: string; +begin + sqlwhere := ''; + if (Trim(DParameters1) <> 'Ȩ') then // and (Trim(DParameters1) <> 'ϲȨ') + begin + sqlwhere := sqlwhere + ' and Filler=''' + Trim(DName) + ''''; + end; + if cxTabControl1.TabIndex < 2 then + begin + sqlwhere := sqlwhere + ' and isnull(A.status,''0'')=''' + inttostr(cxTabControl1.TabIndex) + ''''; + end; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql'); + Parameters.ParamByName('WSql').Value := sqlwhere; + Parameters.ParamByName('begdate').Value := FormatDateTime('yyyy-MM-dd', BegDate.DateTime); + Parameters.ParamByName('enddate').Value := FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1); +// ShowMessage(sql.text); + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderNewList.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value := ' and FillTime>=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.DateTime)) + '''' + ' and FillTime<''' + Trim(FormatDateTime('yyyy-MM-dd', EndDate.DateTime + 1)) + ''''; + Open; + end; + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderNewList.InitForm(); +begin + ReadCxGrid('ָʾбFF', Tv1, 'ָʾ'); + BegDate.DateTime := SGetServerDate10(ADOQueryTemp) - 15; + EndDate.DateTime := SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmProductOrderNewList.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active = False then + Exit; + SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); +end; + +procedure TfrmProductOrderNewList.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + + try + frmOrderInPut := TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState := 1; + FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString); + FOrderNo := Trim(Self.Order_Main.fieldbyname('OrderNo').AsString); + if ShowModal = 1 then + begin + InitGrid(); + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderNewList.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; +{ if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; } + + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + if DelData() then + begin + Order_Main.Delete; + end; + InitGrid(); +end; + +function TfrmProductOrderNewList.DelData(): Boolean; +begin + try + Result := false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + ''''); + sql.Add('delete JYOrder_Sub where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + ''''); + sql.Add('delete TP_File where WBID=''' + Trim(Order_Main.fieldbyname('Mainid').AsString) + ''' and TFType=''EWM'' '); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ָʾɾ'))); + sql.Add(',' + quotedstr(trim('ָʾţ' + trim(Order_Main.FieldByName('OrderNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + ExecSQL; + end; + {with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + if IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; } + ADOQueryCmd.Connection.CommitTrans; + Result := True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result := False; + Application.MessageBox('ɾ쳣', 'ʾ', 0); + end; +end; + +procedure TfrmProductOrderNewList.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then + Exit; + SelExportData(Tv1, ADOQueryMain, 'ָʾб'); +end; + +procedure TfrmProductOrderNewList.TBPrintClick(Sender: TObject); +var + fPrintFile: string; + Porderno: string; + i, j: Integer; +begin + if Order_Main.IsEmpty then + Exit; + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\װָʾ.rmf'; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*, ColorCount=(select isnull(Count(*),0) from JYOrder_Sub where MainId=A.MainId), '); + sql.add('ZQty=(select sum(PRTOrderQty) from JYOrder_Sub where MainId=A.MainId),'); + sql.Add('YSImage=(select FilesOther from TP_File X where X.WBID=YS.YSId), '); + sql.Add('PrtImage=(select Top 1 FilesOther from TP_File X where X.WBID=B.PRTCode) '); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId '); + sql.Add(' inner join KH_YS YS on YS.code=B.prtcode and YS.CYYS=B.prtcolor '); + sql.Add(' Where A.MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + ''''); + sql.Add(' order by B.PRTCode,B.PRTCodeName,B.subID '); +// showmessage(sql.Text); + Open; + end; + SCreateCDS20(ADOQueryPrint, CDS_Print); + SInitCDSData20(ADOQueryPrint, CDS_Print); + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end + else + begin + Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\װָʾ.rmf'), 'ʾ', 0); + exit; + end; +// Panel4.Visible:=True; + //Button1.Click; +end; + +procedure TfrmProductOrderNewList.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderNewList.TBAddClick(Sender: TObject); +var + maxno: string; +begin + try + frmOrderInPut := TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState := 0; + FMainId := ''; + if ShowModal = 1 then + begin + InitGrid(); + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderNewList.OrderNoChange(Sender: TObject); +begin + if ADOQueryMain.Active = False then + Exit; + SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); +end; + +procedure TfrmProductOrderNewList.FormShow(Sender: TObject); +begin + InitForm(); + if Trim(DParameters2) = 'ϲȨ' then + begin + ToolButton7.Visible := True; + ToolButton8.Visible := True; + end; +end; + +procedure TfrmProductOrderNewList.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + if ToolButton1.Visible = False then + Exit; + ToolButton1.Click; +end; + +procedure TfrmProductOrderNewList.TBTPClick(Sender: TObject); +var + FQty, FQty1, FMxQty, FPQty, FMxQtyS, FPQtyS: string; +begin +end; + +procedure TfrmProductOrderNewList.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderNewList.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderNewList.Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id, id10: Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderNewList.v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderNewList.N1Click(Sender: TObject); +//var +// fPrintFile: string; +// Porderno: string; +begin + SelOKNo(Order_Main, false); +// if Order_Main.IsEmpty then +// Exit; +// fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf'; +// SDofilter(ADOQueryMain, ' OrderNoM=''' + Trim(Order_Main.fieldbyname('OrderNoM').AsString) + ''''); +// SCreateCDS20(ADOQueryMain, Order_Main); +// SInitCDSData20(ADOQueryMain, Order_Main); +// Porderno := Trim(Order_Main.fieldbyname('OrderNoM').AsString); +// if FileExists(fPrintFile) then +// begin +// //RMVariables['begindate']:=begindate.DateTime; +// //RMVariables['enddate']:=enddate.DateTime; +// //RMVariables['printtime']:=Now; +// //RMVariables['printer']:=Trim(gUserName); +// RM1.LoadFromFile(fPrintFile); +// RM1.ShowReport; +// end +// else +// begin +// Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf'), 'ʾ', 0); +// end; +// SDofilter(ADOQueryMain, ''); +// SCreateCDS20(ADOQueryMain, Order_Main); +// SInitCDSData20(ADOQueryMain, Order_Main); +// Order_Main.Locate('ordernoM', Porderno, []); +end; + +procedure TfrmProductOrderNewList.N2Click(Sender: TObject); +//var +// fPrintFile: string; +// Porderno: string; +begin + SelOKNo(Order_Main, True); +// if Order_Main.IsEmpty then +// Exit; +// fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf'; +// SDofilter(ADOQueryMain, ' OrderNoM=''' + Trim(Order_Main.fieldbyname('OrderNoM').AsString) + ''''); +// SCreateCDS20(ADOQueryMain, Order_Main); +// SInitCDSData20(ADOQueryMain, Order_Main); +// Porderno := Trim(Order_Main.fieldbyname('OrderNoM').AsString); +// if FileExists(fPrintFile) then +// begin +// //RMVariables['begindate']:=begindate.DateTime; +// //RMVariables['enddate']:=enddate.DateTime; +// //RMVariables['printtime']:=Now; +// //RMVariables['printer']:=Trim(gUserName); +// RM1.LoadFromFile(fPrintFile); +// RM1.ShowReport; +// end +// else +// begin +// Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf'), 'ʾ', 0); +// end; +// SDofilter(ADOQueryMain, ''); +// SCreateCDS20(ADOQueryMain, Order_Main); +// SInitCDSData20(ADOQueryMain, Order_Main); +// Order_Main.Locate('ordernoM', Porderno, []); +end; + +procedure TfrmProductOrderNewList.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + try + frmOrderInPut := TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState := 1; + FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible := False; + TBSave.Visible := False; + ScrollBox1.Enabled := False; + Tv1.OptionsSelection.CellSelect := False; + if ShowModal = 1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderNewList.ToolButton2Click(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + try + frmOrderInPut := TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState := 1; + CopyInt := 99; + FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString); + if ShowModal = 1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderNewList.ToolButton3Click(Sender: TObject); +begin + ModalResult := 1; +end; + +procedure TfrmProductOrderNewList.OrderNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key = #13 then + begin + if Length(OrderNo.Text) < 3 then + Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql'); + if Trim(DParameters1) <> 'Ȩ' then + begin + Parameters.ParamByName('WSql').Value := ' and Filler=''' + Trim(DName) + ''''; + end; + begin + Parameters.ParamByName('WSql').Value := ' and orderno like ''' + '%' + Trim(OrderNo.Text) + '%' + ''''; + end; + Parameters.ParamByName('begdate').Value := '2014-01-01'; + Parameters.ParamByName('enddate').Value := '2064-01-01'; + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmProductOrderNewList.ConNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key = #13 then + begin + if Length(conno.Text) < 3 then + Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql'); + if Trim(DParameters1) <> 'Ȩ' then + begin + Parameters.ParamByName('WSql').Value := ' and A.Filler=''' + Trim(DName) + ''''; + end; + begin + Parameters.ParamByName('WSql').Value := ' and conno like ''' + '%' + Trim(conno.Text) + '%' + ''''; + end; + Parameters.ParamByName('begdate').Value := '1899-01-01'; + Parameters.ParamByName('enddate').Value := '2050-01-01'; + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmProductOrderNewList.Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel4).Perform(WM_SYSCOMMAND, $F012, 0); +end; + +procedure TfrmProductOrderNewList.Button1Click(Sender: TObject); +var + fPrintFile: string; + Porderno, LBName, SYRName: string; + i, j: Integer; + OrderKg: Double; +begin + if Order_Main.IsEmpty then + Exit; + LBName := RadioGroup1.Items.Strings[RadioGroup1.ItemIndex]; + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + Trim(LBName) + '.rmf'; + if Trim(Order_Main.fieldbyname('SYRName').AsString) = '' then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1 B.ZdyName SYRName from JYOrderCon_Main A'); + sql.Add(' left join KH_Zdy B on A.SYRName=B.Note'); + sql.Add(' where A.ConNo=''' + Trim(Order_Main.fieldbyname('ConNo').AsString) + ''''); + Open; + end; + SYRName := Trim(ADOQueryTemp.fieldbyname('SYRName').AsString); + end + else + begin + SYRName := Trim(Order_Main.fieldbyname('SYRName').AsString); + end; + + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('exec F_Get_Print_Order '); + sql.add('@mainID=' + quotedstr(trim(Order_Main.fieldbyname('MainID').AsString))); + Open; + end; + SCreateCDS20(ADOQueryPrint, CDS_Print); + SInitCDSData20(ADOQueryPrint, CDS_Print); + + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + RMVariables['SYRName'] := Trim(SYRName); + RM1.ShowReport; + end + else + begin + Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\' + Trim(LBName) + '.rmf'), 'ʾ', 0); + end; +end; + +procedure TfrmProductOrderNewList.Image2Click(Sender: TObject); +begin + Panel4.Visible := False; +end; + +procedure TfrmProductOrderNewList.Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + InitSub(); +end; + +procedure TfrmProductOrderNewList.TFJClick(Sender: TObject); +begin + if order_Main.IsEmpty then + exit; + frmFjList_RZ := TfrmFjList_RZ.create(self); + with frmFjList_RZ do + begin + fkeyNo := trim(order_Main.fieldbyname('Mainid').AsString); + ftype := 'ZSDFJ'; + if showmodal = 1 then + begin + + end; + ; + end; + frmFjList_RZ.Free; +end; + +procedure TfrmProductOrderNewList.ToolButton4Click(Sender: TObject); +var + FMainid: string; + fPrintFile: string; + Porderno: string; + i, j: Integer; +begin + if Order_Main.IsEmpty then + Exit; + if Order_Main.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete TBSubID where DName=''' + Trim(DCode) + ''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('SELECT * FROM TBSubID where 1=2 '); + open; + end; + FMainid := ''; + Order_Main.DisableControls; + try + ADOQueryCmd.Connection.BeginTrans; + with Order_Main do + begin + First; + while not Eof do + begin + if Fieldbyname('Ssel').AsBoolean then + begin + if FMainid = '' then + begin + FMainid := Trim(Order_Main.fieldbyname('CustomerNoName').AsString); + end + else + begin + if Trim(Order_Main.fieldbyname('CustomerNoName').AsString) <> FMainid then + begin + application.MessageBox('ѡIJͬһͻһӡ', 'ʾϢ', 0); + ADOQueryCmd.Connection.RollbackTrans; + EnableControls; + exit; + end; + end; + ADOQueryCmd.append; + ADOQueryCmd.fieldbyname('SubId').Value := Trim(Order_Main.fieldbyname('Mainid').AsString); + ADOQueryCmd.fieldbyname('Dname').Value := Trim(DCode); + ADOQueryCmd.post; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + end; + order_main.EnableControls; + + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\װָʾϲ.rmf'; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('exec P_Print_OrderHZ_MX ''' + trim(DCode) + ''''); + Open; + end; + SCreateCDS20(ADOQueryPrint, CDS_Print); + SInitCDSData20(ADOQueryPrint, CDS_Print); + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end + else + begin + Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\װָʾϲ.rmf'), 'ʾ', 0); + exit; + end; +end; + +procedure TfrmProductOrderNewList.ToolButton5Click(Sender: TObject); +var + excelApp, WorkBook: Variant; + i, j, k, ExcelRowCount: integer; + maxId, M1, M2, M3: string; + FMessage: string; +begin + try + excelApp := CreateOleObject('Excel.Application'); + openDialog1.Filter := '*.CSV;*.xls'; + if opendialog1.Execute then + begin + WorkBook := excelApp.WorkBooks.Open(OpenDialog1.FileName); + end + else + exit; + excelApp.Visible := false; + ExcelRowCount := WorkBook.WorkSheets[1].UsedRange.Rows.Count; + except + application.MessageBox('EXCEL', 'Ϣ', MB_ICONERROR); + exit; + end; + try + k := 0; + for i := 1 to 100 do + begin + //󶨽ʾֶκ + for j := 0 to Tv3.ColumnCount - 1 do + begin + if trim(Tv3.Columns[j].Caption) = 'ܳƷ' then + continue; + if trim(Tv3.Columns[j].Caption) = 'Ʒ' then + continue; + if trim(Tv3.Columns[j].Caption) = 'ѡ' then + continue; + if trim(Tv3.Columns[j].Caption) = '¼' then + continue; + if trim(Tv3.Columns[j].Caption) = '¼ʱ' then + continue; + if trim(Tv3.Columns[j].Caption) = '޸' then + continue; + if trim(Tv3.Columns[j].Caption) = '޸ʱ' then + continue; + if trim(excelApp.Cells[1, i].value) = trim(Tv3.Columns[j].Caption) then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := trim(Tv3.Columns[j].DataBinding.FieldName); + dFdDy[k].FdDysName := trim(Tv3.Columns[j].Caption); + end; + end; + k := k + 1; + end; + except + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete jyorder_main_DR '); + execsql; + end; +// ShowMessage(IntToStr(k)); + ADOQueryCmd.Connection.BeginTrans; + try + for i := 2 to ExcelRowCount do + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from jyorder_main_DR where 1=2'); + open; + end; + ADOQueryCmd.Append; + for j := 0 to k - 1 do + begin + if trim(dFdDy[j].FDdys) = '' then + continue; + M1 := dFdDy[j].FDdys; //ֶ + M2 := inttostr(dFdDy[j].inc); //ǰ + M3 := excelApp.Cells[i, dFdDy[j].inc].Value; //ǰԪ + ADOQueryCmd.fieldbyname(dFdDy[j].FDdys).Value := excelApp.Cells[i, dFdDy[j].inc].Value; + end; + + ADOQueryCmd.Post; + + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('exec P_Get_Order_DR ''' + trim(DName) + ''' '); + ExecSQL; + end; + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.add('select * from jyorder_sub where subid in (select subid from jyorder_Main_DR)'); + Open; + end; + + with ADOQueryTemp do + begin + first; + while not Eof do + begin + CJEWM(ADOQueryTemp.fieldbyname('Mainid').AsString, ADOQueryTemp.fieldbyname('subid').AsString); + Next; + end; + end; + + WorkBook.Close; + excelApp.Quit; + excelApp := Unassigned; + WorkBook := Unassigned; + + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ!', 'ʾ', 0); + InitGrid(); + except + WorkBook.Close; + excelApp.Quit; + excelApp := Unassigned; + WorkBook := Unassigned; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; + +procedure TfrmProductOrderNewList.CJEWM(FMainid: string; FSubid: string); +var + Txt, fImagePath, maxNo: string; + Moudle: THandle; + Makebar: TMakebar; + Mixtext: TMixtext; +begin + try + Moudle := LoadLibrary('MakeQRBarcode.dll'); + @Makebar := GetProcAddress(Moudle, 'Make'); + @Mixtext := GetProcAddress(Moudle, 'MixText'); + Txt := Trim(FSubid); + 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); + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + SQL.Add('select * from TP_File '); + sql.Add('where TFID=' + quotedstr(trim(Txt))); + sql.Add('and TFType=''EWM'''); + open; + if isempty then + begin + append; + fieldbyname('TFID').Value := trim(Txt); + fieldbyname('WBID').Value := trim(FMainid); + fieldbyname('TFType').Value := 'EWM'; + fieldbyname('FillTime').Value := SGetServerDateTime(ADOQuery1); + tblobfield(FieldByName('Filesother')).LoadFromFile(fImagePath); + post; + end; + end; + except + application.MessageBox('ʧܣ', 'ʾϢ', MB_ICONERROR); + exit; + end; +end; + +procedure TfrmProductOrderNewList.CJEWMS(); +var + Txt, fImagePath, maxNo: string; + Moudle: THandle; + Makebar: TMakebar; + Mixtext: TMixtext; +begin + try + Moudle := LoadLibrary('MakeQRBarcode.dll'); + @Makebar := GetProcAddress(Moudle, 'Make'); + @Mixtext := GetProcAddress(Moudle, 'MixText'); + Txt := Trim(CDS_Print.fieldbyname('prtsub').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); + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + SQL.Add('select * from TP_File '); + sql.Add('where TFID=' + quotedstr(trim(Txt))); + sql.Add('and TFType=''EWM'''); + open; + if isempty then + begin + append; + fieldbyname('TFID').Value := trim(Txt); + fieldbyname('WBID').Value := trim(CDS_Print.fieldbyname('ZOrderNo').AsString); + fieldbyname('TFType').Value := 'EWM'; + fieldbyname('FillTime').Value := SGetServerDateTime(ADOQuery1); + tblobfield(FieldByName('Filesother')).LoadFromFile(fImagePath); + post; + end; + end; + except + application.MessageBox('ʧܣ', 'ʾϢ', MB_ICONERROR); + CDS_Print.EnableControls; + exit; + end; +end; + +procedure TfrmProductOrderNewList.ToolButton7Click(Sender: TObject); +var + maxno: string; +begin + if Order_Main.IsEmpty then + Exit; + + if Order_Main.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ûѡ', 'ʾ', 0); + Exit; + end; + + if Application.MessageBox('ȷҪϲ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + if GetLSNo(ADOQueryCmd, maxno, 'Z', 'JYOrder_Main', 3, 1) = False then + begin + Application.MessageBox('ȡʧ!', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete TBSubID where DName=''' + Trim(DCode) + ''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('SELECT * FROM TBSubID where 1=2 '); + open; + end; + + Order_Main.DisableControls; + try + ADOQueryCmd.Connection.BeginTrans; + with Order_Main do + begin + First; + while not Eof do + begin + if Fieldbyname('Ssel').AsBoolean then + begin + ADOQueryCmd.append; + ADOQueryCmd.fieldbyname('SubId').Value := Trim(Order_Main.fieldbyname('mainid').AsString); + ADOQueryCmd.fieldbyname('Dname').Value := Trim(DCode); + ADOQueryCmd.post; + + with Order_Main do + begin + Edit; + FieldByName('ZOrderNo').Value := maxno; + Post; + end; + end; + + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + end; + Order_Main.EnableControls; + + try + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update jyorder_main set ZOrderNo=''' + Trim(maxno) + ''' '); + sql.Add('WHERE EXISTS(select SubId from TBSubID X where X.SubId=jyorder_main.Mainid and X.DName=''' + Trim(DCode) + ''' )'); +// ShowMessage(sql.Text); + ExecSQL; + end; + application.MessageBox('ϲɹ', 'ʾϢ'); +// TBRafresh.Click; + except + application.MessageBox('ϲʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmProductOrderNewList.ToolButton8Click(Sender: TObject); +begin + if Order_Main.IsEmpty then + exit; + if Order_Main.FieldByName('zOrderNo').AsString = '' then + Exit; + if Application.MessageBox('ȷҪȡϲ', 'ʾ', 32 + 4) <> IDYES then + Exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrder_Main SET ZOrderNo=null '); + sql.Add('where zOrderNo=' + quotedstr(trim(Order_Main.fieldbyname('zOrderNo').AsString))); + + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ȡϲ'))); + sql.Add(',' + quotedstr(trim('ţ' + trim(Order_Main.FieldByName('orderNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ȡϲɹ', 'ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ȡϲʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmProductOrderNewList.ToolButton6Click(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + if Order_Main.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + panel2.Visible := True; +end; + +procedure TfrmProductOrderNewList.Button2Click(Sender: TObject); +var + FMainid: string; + fPrintFile: string; + Porderno: string; + i, j: Integer; + Txt, fImagePath: string; + Moudle: THandle; + Makebar: TMakebar; + Mixtext: TMixtext; +begin + with ADOQueryTemp do + begin + close; + sql.Clear; + SQL.Add('select * from KH_Zdy_CPCB where cbtype=''CPCBGY'' and zdycode like ''%' + trim(edit1.text) + '%'' '); + Open; + end; + + if ADOQueryTemp.IsEmpty then + begin + if Application.MessageBox('δ빤գǷӡ', 'ʾ', 32 + 4) <> IDYES then + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete TBSubID where DName=''' + Trim(DCode) + ''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('SELECT * FROM TBSubID where 1=2 '); + open; + end; + FMainid := ''; + Order_Main.DisableControls; + try + ADOQueryCmd.Connection.BeginTrans; + with Order_Main do + begin + First; + while not Eof do + begin + if Fieldbyname('Ssel').AsBoolean then + begin + if FMainid = '' then + begin + FMainid := Trim(Order_Main.fieldbyname('CustomerNoName').AsString); + end + else + begin + if Trim(Order_Main.fieldbyname('CustomerNoName').AsString) <> FMainid then + begin + application.MessageBox('ѡIJͬһͻһӡ', 'ʾϢ', 0); + ADOQueryCmd.Connection.RollbackTrans; + EnableControls; + exit; + end; + end; + ADOQueryCmd.append; + ADOQueryCmd.fieldbyname('SubId').Value := Trim(Order_Main.fieldbyname('Mainid').AsString); + ADOQueryCmd.fieldbyname('Dname').Value := Trim(DCode); + ADOQueryCmd.post; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + end; + order_main.EnableControls; + + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf'; + + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('exec P_Print_OrderSCHZ_copy1 ''' + trim(DCode) + ''''); + sql.Add(',''' + trim(Edit1.Text) + ''' '); +// showmessage(sql.Text); + Open; + end; + if ADOQuery1.RecordCount < 1 then + begin + application.MessageBox('òƷѱ', 'ʾϢ', 0); + end + else + begin + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('exec P_Print_OrderSCHZ_copy1 ''' + trim(DCode) + ''''); + sql.Add(',''' + trim(Edit1.Text) + ''' '); +// showmessage(sql.Text); + Open; + end; + SCreateCDS20(ADOQueryPrint, CDS_Print); + SInitCDSData20(ADOQueryPrint, CDS_Print); + with CDS_Print do + begin + First; + while not Eof do + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + SQL.Add('select * from TP_File '); + sql.Add('where TFID=' + quotedstr(trim(CDS_Print.fieldbyname('PRTsub').AsString))); + sql.Add('and TFType=''EWM'''); + open; + if isempty then + begin + CJEWMS(); + end; + end; +// CJEWMS(); + Next; + end; + end; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('exec P_Print_OrderSCHZ_copy1_copy1 ''' + trim(DCode) + ''''); + sql.Add(',''' + trim(Edit1.Text) + ''' '); +// showmessage(sql.Text); + Open; + end; + SCreateCDS20(ADOQueryPrint, CDS_Print); + SInitCDSData20(ADOQueryPrint, CDS_Print); + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; +// RM1.PrintReport; + end + else + begin + Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf'), 'ʾ', 0); + exit; + end; + end; +end; + +procedure TfrmProductOrderNewList.Button3Click(Sender: TObject); +begin + Panel2.Visible := false; +end; + +procedure TfrmProductOrderNewList.ToolButton9Click(Sender: TObject); +begin + if Order_Main.IsEmpty then + exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrder_Main SET status=''1'' '); + sql.Add('where mainID=' + quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim(''))); + sql.Add(',' + quotedstr(trim('ţ' + trim(Order_Main.FieldByName('OrderNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ɣ', 'ʾϢ', 0); + TBRafresh.Click; + except + application.MessageBox('δɣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmProductOrderNewList.ToolButton10Click(Sender: TObject); +begin + if Order_Main.IsEmpty then + exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrder_Main SET status=''0'' '); + sql.Add('where mainID=' + quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim(''))); + sql.Add(',' + quotedstr(trim('ţ' + trim(Order_Main.FieldByName('orderNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ɳɹ', 'ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmProductOrderNewList.cxTabControl1Change(Sender: TObject); +begin + + InitGrid(); +end; + +procedure TfrmProductOrderNewList.TV2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin +// ADOQuerySub.Close; + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select * from KH_YS '); + sql.Add('where code =' + quotedstr((CDS_Sub.fieldbyname('PRTCode').AsString))); + sql.Add('and CYYS =' + quotedstr((CDS_Sub.fieldbyname('PRTColor').AsString))); +// ShowMessage(sql.text); + open; + end; + initImageYS(ADOQueryTemp.fieldbyname('YSId').AsString); +end; + +procedure TfrmProductOrderNewList.InitImageYS(fwbid: string); +begin + ADOQueryImageYS.close; + if fwbid = '' then + exit; + with ADOQueryImageYS do + begin + close; + sql.Clear; + sql.Add('select * from TP_File A'); + sql.Add('where WBID=' + quotedstr(trim(fwbid))); +// sql.Add('where WBid=''' + ADOQuerySub.fieldbyname('subid').asstring + ''''); + open; + end; +end; + +procedure TfrmProductOrderNewList.ToolButton12Click(Sender: TObject); +begin +// if Trim(Order_Main.fieldbyname('LBName').AsString) = '' then +// begin +// Exit; +// end; + panel5.Visible := True; +end; + +procedure TfrmProductOrderNewList.Button4Click(Sender: TObject); +var + FMainid: string; + fPrintFile: string; + Porderno: string; + i, j: Integer; +begin + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete TBSubID where DName=''' + Trim(DCode) + ''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('SELECT * FROM TBSubID where 1=2 '); + open; + end; + FMainid := ''; + Order_Main.DisableControls; + try + ADOQueryCmd.Connection.BeginTrans; + with Order_Main do + begin + First; + while not Eof do + begin + if Fieldbyname('Ssel').AsBoolean then + begin + if FMainid = '' then + begin + FMainid := Trim(Order_Main.fieldbyname('CustomerNoName').AsString); + end + else + begin + if Trim(Order_Main.fieldbyname('CustomerNoName').AsString) <> FMainid then + begin + application.MessageBox('ѡIJͬһͻһӡ', 'ʾϢ', 0); + ADOQueryCmd.Connection.RollbackTrans; + EnableControls; + exit; + end; + end; + ADOQueryCmd.append; + ADOQueryCmd.fieldbyname('SubId').Value := Trim(Order_Main.fieldbyname('Mainid').AsString); + ADOQueryCmd.fieldbyname('Dname').Value := Trim(DCode); + ADOQueryCmd.post; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + end; + order_main.EnableControls; + + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('exec P_Print_OrderBQdy_ZSD ''' + trim(DCode) + ''''); + sql.Add(',''' + trim(Edit2.Text) + ''' '); +// showmessage(sql.Text); + Open; + end; +// SCreateCDS20(ADOQueryPrint, CDS_Print2); + SCreateCDS20(ADOQueryPrint, CDS_Print1); + SInitCDSData20(ADOQueryPrint, CDS_Print1); + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + CDS_Print1.fieldbyname('LBName').AsString + '.rmf'; + + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); +// RM2.DefaultCopies := StrToInt(CDS_Print1.fieldbyname('PRTOrderQty').AsString); + RM2.ShowReport; +// RM2.PrintReport; + end + else + begin + Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\' + Order_Main.fieldbyname('LBName').AsString), 'ʾ', 0); + exit; + end; + +// try +// with CDS_Print2 do +// begin +// DisableControls; +// first; +// while not eof do +// begin +// CDS_Print1.EmptyDataSet; +// CDS_Print1.Append; +// for i := 0 to FieldCount - 1 do +// begin +// CDS_Print1.fields[i].value := CDS_Print2.Fields[i].Value; +// end; +// CDS_Print1.Post; +// +// if (trim(CDS_Print1.fieldbyname('subid').AsString) <> '') then +// begin +// if FileExists(fPrintFile) then +// begin +// RM2.LoadFromFile(fPrintFile); +// RM2.DefaultCopies := StrToInt(CDS_Print1.fieldbyname('PRTOrderQty').AsString); +// RM2.ShowReport; +//// RM1.PrintReport; +// end +// else +// begin +// Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\' + Order_Main.fieldbyname('LBName').AsString), 'ʾ', 0); +// exit; +// end; +// +// end; +// +// Next; +// end; +// EnableControls; +// end; +// +// finally +// +// end; + +end; + +procedure TfrmProductOrderNewList.Button5Click(Sender: TObject); +begin + Panel5.Visible := false; +end; + +procedure TfrmProductOrderNewList.ToolButton11Click(Sender: TObject); +begin + try + frmLabelList := TfrmLabelList.Create(Application); + with frmLabelList do + begin + if ShowModal = 1 then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrder_Main Set LBName=''' + Trim(ADOQueryLabel.fieldbyname('labelCaption').AsString) + ''''); + sql.Add(' where Mainid=''' + Trim(Order_Main.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; + TBRafresh.Click; + end; + end; + finally + frmLabelList.Free; + end; +end; + +procedure TfrmProductOrderNewList.ToolButton13Click(Sender: TObject); +begin + try + frmLabelListts := TfrmLabelListts.Create(Application); + with frmLabelListts do + begin + if ShowModal = 1 then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update JYOrder_Main Set LBName=''' + Trim(ADOQueryLabel.fieldbyname('labelCaption').AsString) + ''''); + sql.Add(' where Mainid=''' + Trim(Order_Main.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; +// TBRafresh.Click; + end; + end; + finally + frmLabelListts.Free; + end; +end; + +procedure TfrmProductOrderNewList.ToolButton14Click(Sender: TObject); +begin + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('exec P_Do_JYCRK ''' +Trim(Order_Main.fieldbyname('Mainid').AsString) + ''''); +// sql.Add(',''' + trim(Edit2.Text) + ''' '); +// showmessage(sql.Text); + Open; + end; + +end; + +end. + diff --git a/艾登贸易管理/U_ProductOrderNewListSubZD.dfm b/艾登贸易管理/U_ProductOrderNewListSubZD.dfm new file mode 100644 index 0000000..831a683 --- /dev/null +++ b/艾登贸易管理/U_ProductOrderNewListSubZD.dfm @@ -0,0 +1,677 @@ +object frmProductOrderNewListSubZD: TfrmProductOrderNewListSubZD + Left = 113 + Top = 117 + Width = 1094 + Height = 600 + Caption = #36716#21333#36873#25321 + 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 = 1113 + AutoSize = True + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #36873#25321 + ImageIndex = 106 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton1: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + OnClick = ToolButton1Click + end + object TBPrint: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + object ComboBox1: TComboBox + Left = 374 + Top = 3 + Width = 145 + Height = 24 + DropDownCount = 10 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 16 + ParentFont = False + TabOrder = 0 + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1113 + Height = 67 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 179 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 318 + Top = 15 + Width = 54 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 476 + Top = 15 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 179 + Top = 39 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 476 + Top = 39 + Width = 54 + Height = 12 + Caption = #35268' '#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 318 + Top = 39 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 621 + Top = 39 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 621 + Top = 15 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNoM: TEdit + Tag = 2 + Left = 220 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 2 + OnChange = OrderNoMChange + OnKeyPress = OrderNoMKeyPress + end + object CustomerNoName: TEdit + Tag = 2 + Left = 371 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 3 + OnChange = OrderNoMChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 529 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 4 + OnChange = OrderNoMChange + end + object ConNo: TEdit + Tag = 2 + Left = 220 + Top = 35 + Width = 77 + Height = 20 + TabOrder = 5 + OnChange = OrderNoMChange + OnKeyPress = ConNoKeyPress + end + object MPRTSpec: TEdit + Tag = 2 + Left = 530 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 6 + OnChange = OrderNoMChange + end + object MPRTCode: TEdit + Tag = 2 + Left = 371 + Top = 35 + Width = 76 + Height = 20 + TabOrder = 7 + OnChange = OrderNoMChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 650 + Top = 35 + Width = 56 + Height = 20 + TabOrder = 8 + OnChange = OrderNoMChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 650 + Top = 11 + Width = 56 + Height = 20 + TabOrder = 9 + OnChange = OrderNoMChange + end + end + object cxGrid1: TcxGrid + Left = 24 + Top = 112 + Width = 1089 + Height = 369 + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1Column4: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Width = 59 + end + object v1Column5: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'SOrddefstr1' + HeaderAlignmentHorz = taCenter + Width = 57 + end + object v1Column6: TcxGridDBColumn + Caption = #33457#22411#33457#21495 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Width = 58 + end + object v1Column1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 69 + end + object v1OrdDefStr1: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'MPRTCode' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 90 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 69 + end + object v1MPRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'MPRTSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1MPRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object v1MPRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + Options.Focusing = False + Width = 59 + end + object v1Column2: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 71 + end + object v1Column3: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 67 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel4: TPanel + Left = 410 + Top = 137 + Width = 231 + Height = 216 + TabOrder = 3 + Visible = False + object Label14: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 229 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #25253#34920#21517#31216 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 206 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object Button1: TButton + Left = 83 + Top = 176 + Width = 75 + Height = 25 + Caption = #30830#23450 + TabOrder = 1 + OnClick = Button1Click + end + object RadioGroup1: TRadioGroup + Left = 56 + Top = 24 + Width = 129 + Height = 145 + ItemIndex = 0 + Items.Strings = ( + #21253#35013#25351#31034#21333 + #39068#33394#26679 + #21697#36136#26679 + #33457#22411#26679) + TabOrder = 2 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 256 + Top = 176 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end +end diff --git a/艾登贸易管理/U_ProductOrderNewListSubZD.pas b/艾登贸易管理/U_ProductOrderNewListSubZD.pas new file mode 100644 index 0000000..b2fbf0c --- /dev/null +++ b/艾登贸易管理/U_ProductOrderNewListSubZD.pas @@ -0,0 +1,681 @@ +unit U_ProductOrderNewListSubZD; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus; + +type + TfrmProductOrderNewListSubZD = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNoM: TEdit; + v1OrderNo: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1MPRTSpec: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + Label4: TLabel; + CustomerNoName: TEdit; + v1MPRTCodeName: TcxGridDBColumn; + v1MPRTMF: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + ToolButton1: TToolButton; + Label8: TLabel; + MPRTCodeName: TEdit; + Label9: TLabel; + ConNo: TEdit; + v1MPRTKZ: TcxGridDBColumn; + v1OrdDefStr1: TcxGridDBColumn; + Label10: TLabel; + MPRTSpec: TEdit; + Label11: TLabel; + MPRTCode: TEdit; + Label12: TLabel; + MPRTKZ: TEdit; + Label13: TLabel; + MPRTMF: TEdit; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + ComboBox1: TComboBox; + Panel4: TPanel; + Label14: TLabel; + Panel10: TPanel; + Image2: TImage; + Button1: TButton; + RadioGroup1: TRadioGroup; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure OrderNoMKeyPress(Sender: TObject; var Key: Char); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, + Y: Integer); + procedure Button1Click(Sender: TObject); + procedure Image2Click(Sender: TObject); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmProductOrderNewListSubZD: TfrmProductOrderNewListSubZD; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun; + +{$R *.dfm} + +procedure TfrmProductOrderNewListSubZD.FormDestroy(Sender: TObject); +begin + frmProductOrderNewListSubZD:=nil; +end; + +procedure TfrmProductOrderNewListSubZD.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderNewListSubZD.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderNewListSubZD.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ָʾбFF',Tv1,'ָʾ'); +end; + +procedure TfrmProductOrderNewListSubZD.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql') ; + if Trim(DParameters1)<>'Ȩ' then + begin + Parameters.ParamByName('WSql').Value:=' and Filler='''+Trim(DName)+''''; + end else + begin + Parameters.ParamByName('WSql').Value:=''; + end; + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderNewListSubZD.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderNewListSubZD.InitForm(); +begin + ReadCxGrid('ָʾбFF',Tv1,'ָʾ'); + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 10* from JYOrder_Main Order by FillTime desc'); + Open; + end; + ComboBox1.Clear; + with ADOQueryTemp do + begin + First; + while not Eof do + begin + ComboBox1.Items.Add(Trim(ADOQueryTemp.fieldbyname('OrderNO').AsString)); + Next; + end; + end; + //InitGrid(); +end; + +procedure TfrmProductOrderNewListSubZD.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmProductOrderNewListSubZD.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add('delete JYOrder_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + {with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + if IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; } + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderNewListSubZD.TBPrintClick(Sender: TObject); +var + fPrintFile:string; + Porderno:string; + i,j:Integer; +begin + Panel4.Visible:=True; +end; + +procedure TfrmProductOrderNewListSubZD.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + InitGridFH(); + end else + begin + InitGrid(); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 10* from JYOrder_Main Order by FillTime desc'); + Open; + end; + ComboBox1.Clear; + with ADOQueryTemp do + begin + First; + while not Eof do + begin + ComboBox1.Items.Add(Trim(ADOQueryTemp.fieldbyname('OrderNO').AsString)); + Next; + end; + end; + end; +end; + +procedure TfrmProductOrderNewListSubZD.OrderNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderNewListSubZD.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderNewListSubZD.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if ToolButton1.Visible=False then Exit; + ToolButton1.Click; +end; + +procedure TfrmProductOrderNewListSubZD.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmProductOrderNewListSubZD.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderNewListSubZD.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderNewListSubZD.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderNewListSubZD.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderNewListSubZD.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewListSubZD.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewListSubZD.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible:=False; + TBSave.Visible:=False; + ScrollBox1.Enabled:=False; + Tv1.OptionsSelection.CellSelect:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderNewListSubZD.ToolButton3Click(Sender: TObject); +begin + ModalResult:=1; +end; + +procedure TfrmProductOrderNewListSubZD.OrderNoMKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Length(OrderNoM.Text)<3 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql') ; + if Trim(DParameters1)<>'Ȩ' then + begin + Parameters.ParamByName('WSql').Value:=' and Filler='''+Trim(DName)+''''; + end; + begin + Parameters.ParamByName('WSql').Value:=' and orderno like '''+'%'+Trim(OrderNoM.Text)+'%'+''''; + end; + Parameters.ParamByName('begdate').Value:='1899-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmProductOrderNewListSubZD.ConNoKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Length(conno.Text)<3 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql') ; + if Trim(DParameters1)<>'Ȩ' then + begin + Parameters.ParamByName('WSql').Value:=' and A.Filler='''+Trim(DName)+''''; + end; + begin + Parameters.ParamByName('WSql').Value:=' and conno like '''+'%'+Trim(conno.Text)+'%'+''''; + end; + Parameters.ParamByName('begdate').Value:='1899-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmProductOrderNewListSubZD.Panel10MouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel4).Perform(WM_SYSCOMMAND,$F012,0); +end; + +procedure TfrmProductOrderNewListSubZD.Button1Click(Sender: TObject); +var + fPrintFile:string; + Porderno,LBName:string; + i,j:Integer; + OrderKg:Double; +begin + if Order_Main.IsEmpty then Exit; + LBName:=RadioGroup1.Items.Strings[RadioGroup1.ItemIndex]; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\'+Trim(LBName)+'.rmf' ; + if RadioGroup1.ItemIndex=0 then + begin + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*,ColorCount=(select isnull(Count(*),0) from JYOrder_Sub where MainId=A.MainId), '); + sql.add('ZQty=(select sum(PRTOrderQty) from JYOrder_Sub where MainId=A.MainId)'); + SQL.Add(', Case when B.OrderUnit=''M'' then Cast(Cast(dbo.F_Get_Order_MFKZ(A.MainId,''MF'') '); + sql.Add(' *1.00/100*B.PRTOrderQty*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 as decimal(18,0)) as varchar(20))+''Kg'' '); + SQL.Add(' when B.OrderUnit=''Y'' then Cast (Cast(dbo.F_Get_Order_MFKZ(A.MainId,''MF'')'); + sql.Add(' *1.00/100*B.PRTOrderQty*0.9144*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 as decimal(18,0)) as varchar(20))+''Kg'' '); + sql.Add(' else '''' end as PRTOrderKgQtyStr '); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId '); + sql.Add(' and A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + + end else + begin + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('exec P_View_OrderSub :begdate,:enddate,:wsql '); + Parameters.ParamByName('WSql').Value:=' and A.MainId='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+''''; + Parameters.ParamByName('begdate').Value:='1899-01-01'; + Parameters.ParamByName('enddate').Value:='2050-01-01'; + Open; + end; + if Trim(ADOQueryPrint.FieldByName('PRTHX').AsString)<>'' then + begin + if Trim(LBName)='ɫ' then + begin + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ɫ.rmf' ; + end; + end; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(sum(PRTOrderKgQty),0) PRTOrderKgHZQty from('); + sql.Add('select '); + SQL.Add(' Case when B.OrderUnit=''M'' then Cast(dbo.F_Get_Order_MFKZ(A.MainId,''MF'') '); + sql.Add(' *1.00/100*B.PRTOrderQty*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 as decimal(18,0))'); + SQL.Add(' when B.OrderUnit=''Y'' then Cast(dbo.F_Get_Order_MFKZ(A.MainId,''MF'')'); + sql.Add(' *1.00/100*B.PRTOrderQty*0.9144*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 As decimal(18,0)) '); + sql.Add(' else 0 end as PRTOrderKgQty'); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId '); + sql.Add(' and A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''')AA'); + Open; + end; + OrderKg:=ADOQueryTemp.fieldbyname('PRTOrderKgHZQty').Value; + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print); + + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + if OrderKg>0 then + RMVariables['OrderKg']:='/'+Trim(FloatToStr(OrderKg))+'Kg' + else + RMVariables['OrderKg']:=''; + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\'+Trim(LBName)+'.rmf'),'ʾ',0); + end; +end; + +procedure TfrmProductOrderNewListSubZD.Image2Click(Sender: TObject); +begin + Panel4.Visible:=False; +end; + +end. diff --git a/艾登贸易管理/U_ProductOrderNewList_CY.dfm b/艾登贸易管理/U_ProductOrderNewList_CY.dfm new file mode 100644 index 0000000..b3afa81 --- /dev/null +++ b/艾登贸易管理/U_ProductOrderNewList_CY.dfm @@ -0,0 +1,981 @@ +object frmProductOrderNewList_CY: TfrmProductOrderNewList_CY + Left = 208 + Top = 82 + Width = 1087 + Height = 604 + Caption = #20986#36816#35745#21010 + 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 = 1071 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 106 + Visible = False + OnClick = ToolButton3Click + end + object TBAdd: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object TBDel: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + OnClick = TBDelClick + end + object ToolButton2: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #22797#21046 + ImageIndex = 57 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 441 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + OnClick = ToolButton1Click + end + object TChk: TToolButton + Left = 504 + Top = 0 + AutoSize = True + Caption = #23457#26680 + ImageIndex = 41 + OnClick = TChkClick + end + object TNOChk: TToolButton + Left = 567 + Top = 0 + AutoSize = True + Caption = #25764#38144#23457#26680 + ImageIndex = 86 + OnClick = TNOChkClick + end + object TBExport: TToolButton + Left = 654 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 717 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 780 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + object ComboBox1: TComboBox + Left = 843 + Top = 3 + Width = 145 + Height = 24 + DropDownCount = 10 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 16 + ParentFont = False + TabOrder = 0 + Visible = False + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1071 + Height = 37 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 287 + Top = 15 + Width = 52 + Height = 12 + Caption = #20986#36816#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 470 + Top = 15 + Width = 54 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 536 + Top = 67 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 683 + Top = 15 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 536 + Top = 91 + Width = 54 + Height = 12 + Caption = #35268' '#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 378 + Top = 91 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 681 + Top = 91 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 681 + Top = 67 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 160 + Top = 16 + Width = 6 + Height = 12 + Caption = '-' + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 168 + Top = 11 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 344 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = OrderNoChange + end + object CustomerNoName: TEdit + Tag = 2 + Left = 531 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = OrderNoChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 589 + Top = 63 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 4 + OnChange = OrderNoChange + end + object ConNo: TEdit + Tag = 2 + Left = 732 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 5 + OnChange = OrderNoChange + end + object MPRTSpec: TEdit + Tag = 2 + Left = 590 + Top = 87 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 6 + OnChange = OrderNoChange + end + object MPRTCode: TEdit + Tag = 2 + Left = 431 + Top = 87 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 7 + OnChange = OrderNoChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 710 + Top = 87 + Width = 56 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 8 + OnChange = OrderNoChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 710 + Top = 63 + Width = 56 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 9 + OnChange = OrderNoChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 91 + Width = 1071 + Height = 304 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBTableView + OnDblClick = Tv1DblClick + NavigatorButtons.ConfirmDelete = False + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object v1OrderNo: TcxGridDBColumn + Caption = #20986#36816#21333#21495 + DataBinding.FieldName = 'CYNO' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 85 + end + object v1Column10: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 80 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 103 + end + object v1Column15: TcxGridDBColumn + Caption = #23458#25143#31616#31216 + DataBinding.FieldName = 'orddefstr10' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column2: TcxGridDBColumn + Caption = #30003#35831#26085#26399 + DataBinding.FieldName = 'OrdDefDate1' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 91 + end + object v1Column14: TcxGridDBColumn + Caption = #30003#35831#20154 + DataBinding.FieldName = 'OrdPerson1' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1OrdPerson2: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson2' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #33337#36816#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 89 + end + object v1Column7: TcxGridDBColumn + Caption = #20986#20179#26085#26399 + DataBinding.FieldName = 'OrdDefDate2' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 84 + end + object v1Column9: TcxGridDBColumn + Caption = #20986#36135#24635#25968#37327 + DataBinding.FieldName = 'ZSordQty1' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 80 + end + object v1Column3: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 76 + end + object v1Column8: TcxGridDBColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'MPRTBZNote' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object v1Column1: TcxGridDBColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 68 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 95 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel4: TPanel + Left = 482 + Top = 145 + Width = 231 + Height = 216 + TabOrder = 3 + Visible = False + object Label14: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 229 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #25253#34920#21517#31216 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 206 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object Button1: TButton + Left = 83 + Top = 176 + Width = 75 + Height = 25 + Caption = #30830#23450 + TabOrder = 1 + OnClick = Button1Click + end + object RadioGroup1: TRadioGroup + Left = 56 + Top = 24 + Width = 129 + Height = 145 + ItemIndex = 0 + Items.Strings = ( + #21253#35013#25351#31034#21333 + #39068#33394#26679) + TabOrder = 2 + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 395 + Width = 1071 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + Control = cxGrid2 + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 69 + Width = 1071 + Height = 22 + Align = alTop + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Style = 9 + TabIndex = 0 + TabOrder = 5 + Tabs.Strings = ( + #26410#23457#26680 + #24050#23457#26680 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectBottom = 22 + ClientRectRight = 1071 + ClientRectTop = 19 + end + object cxGrid2: TcxGrid + Left = 0 + Top = 403 + Width = 1071 + Height = 163 + Align = alBottom + TabOrder = 6 + object Tv2: TcxGridDBTableView + OnDblClick = Tv2DblClick + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = cxGridDBColumn3 + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1XHNo: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'XHNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 35 + end + object v1Column5: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'PrtCodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1Column6: TcxGridDBColumn + Caption = #20135#21697#35268#26684 + DataBinding.FieldName = 'PRTspec' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 90 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #39068#33394'('#33521#25991')' + DataBinding.FieldName = 'SOrddefstr4' + Width = 84 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #20986#36135#25968#37327 + DataBinding.FieldName = 'SordQty1' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneClMaroon + Styles.Footer = DataLink_TradeManage.FoneClMaroon + Styles.Header = DataLink_TradeManage.FoneClMaroon + Width = 60 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PrtPrice' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column4: TcxGridDBColumn + Caption = #20986#36135#31665#25968 + DataBinding.FieldName = 'SordQty2' + Width = 60 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #31435#26041#25968 + DataBinding.FieldName = 'SordQty3' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column11: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'SordQty4' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column12: TcxGridDBColumn + Caption = #20928#37325 + DataBinding.FieldName = 'SordQty5' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column13: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'SordQty6' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'SOrdDefNote1' + HeaderAlignmentHorz = taCenter + Width = 137 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 580 + Top = 236 + end + object PopupMenu1: TPopupMenu + Left = 256 + Top = 176 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end + object ADOQuerySub: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 556 + Top = 416 + end + object DataSource2: TDataSource + DataSet = ADOQuerySub + Left = 488 + Top = 440 + end + object PMFJ: TPopupMenu + Left = 716 + Top = 272 + object NFJ: TMenuItem + Caption = #38468#20214 + end + end + object RMDB_SK: TRMDBDataSet + Visible = True + DataSet = CDS_SK + Left = 264 + Top = 244 + end + object CDS_SK: TClientDataSet + Aggregates = <> + Params = <> + Left = 304 + Top = 300 + end +end diff --git a/艾登贸易管理/U_ProductOrderNewList_CY.pas b/艾登贸易管理/U_ProductOrderNewList_CY.pas new file mode 100644 index 0000000..3f463be --- /dev/null +++ b/艾登贸易管理/U_ProductOrderNewList_CY.pas @@ -0,0 +1,846 @@ +unit U_ProductOrderNewList_CY; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus, cxButtonEdit, cxTextEdit, cxPC; + +type + TfrmProductOrderNewList_CY = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNo: TEdit; + TBExport: TToolButton; + v1OrderNo: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + Label4: TLabel; + CustomerNoName: TEdit; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + ToolButton1: TToolButton; + Label8: TLabel; + MPRTCodeName: TEdit; + Label9: TLabel; + ConNo: TEdit; + Label10: TLabel; + MPRTSpec: TEdit; + Label11: TLabel; + MPRTCode: TEdit; + Label12: TLabel; + MPRTKZ: TEdit; + Label13: TLabel; + MPRTMF: TEdit; + ToolButton2: TToolButton; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + ComboBox1: TComboBox; + Panel4: TPanel; + Label14: TLabel; + Panel10: TPanel; + Image2: TImage; + Button1: TButton; + RadioGroup1: TRadioGroup; + v1Column1: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + cxSplitter1: TcxSplitter; + ADOQuerySub: TADOQuery; + DataSource2: TDataSource; + v1Column8: TcxGridDBColumn; + PMFJ: TPopupMenu; + NFJ: TMenuItem; + v1OrdPerson2: TcxGridDBColumn; + Label2: TLabel; + v1Column9: TcxGridDBColumn; + cxTabControl1: TcxTabControl; + TChk: TToolButton; + TNOChk: TToolButton; + RMDB_SK: TRMDBDataSet; + CDS_SK: TClientDataSet; + v1Column10: TcxGridDBColumn; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v1XHNo: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + v1Column13: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + v1Column14: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column15: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, + Y: Integer); + procedure Button1Click(Sender: TObject); + procedure Image2Click(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); + procedure Tv2DblClick(Sender: TObject); + procedure Tv1DblClick(Sender: TObject); + procedure TChkClick(Sender: TObject); + procedure TNOChkClick(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + + procedure InitSub(); + procedure SetStatus(); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmProductOrderNewList_CY: TfrmProductOrderNewList_CY; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun, U_OrderInPut_CY; + +{$R *.dfm} +procedure TfrmProductOrderNewList_CY.SetStatus(); +begin + tchk.Visible:=false; + tnochk.Visible:=false; + tbedit.Visible:=false; + tbdel.Visible:=false; + if Trim(DParameters1)<>'Ȩ' then + begin + case cxTabControl1.TabIndex of + 0:begin + tbedit.Visible:=true; + tbdel.Visible:=true; + end; + 1:begin + end; + 2:begin + end; + end; + end + else + begin + case cxTabControl1.TabIndex of + 0:begin + tchk.Visible:=true; + tbedit.Visible:=true; + tbdel.Visible:=true; + end; + 1:begin + tnochk.Visible:=true; + end; + 2:begin + end; + end; + end; +end; +procedure TfrmProductOrderNewList_CY.InitSub(); +begin + ADOQuerySub.Close; + IF Order_Main.IsEmpty then exit; + with ADOQuerySub do + begin + close; + sql.Clear; + sql.Add('select * from JYOrderCY_sub '); + sql.Add('where mainID ='+quotedstr((Order_Main.fieldbyname('mainID').AsString))); + open; + end; +end; + +procedure TfrmProductOrderNewList_CY.FormDestroy(Sender: TObject); +begin + frmProductOrderNewList_CY:=nil; +end; + +procedure TfrmProductOrderNewList_CY.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderNewList_CY.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); + cxTabControl1.TabIndex:=0; + SetStatus(); +end; + +procedure TfrmProductOrderNewList_CY.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid(self.Caption+tv1.Name,Tv1,'ָʾ'); + WriteCxGrid(self.Caption+tv2.Name,Tv2,'ָʾ'); +end; + +procedure TfrmProductOrderNewList_CY.InitGrid(); +var + fwsql:string; +begin + fwsql:=''; + IF cxTabControl1.TabIndex<2 then + begin + fwsql:=fwsql+' and isnull(A.status,''0'')='''+inttostr(cxTabControl1.TabIndex)+''''; + end; + if Trim(DParameters1)<>'Ȩ' then + begin + fwsql:=fwsql+' and Filler='''+Trim(DName)+''''; + end; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order_CY :begdate,:enddate,:WSql') ; + + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + Parameters.ParamByName('WSql').Value:=fwsql; + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmProductOrderNewList_CY.InitForm(); +begin + ReadCxGrid(self.Caption+tv1.Name,Tv1,'ָʾ'); + readCxGrid(self.Caption+tv2.Name,Tv2,'ָʾ'); + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmProductOrderNewList_CY.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderNewList_CY.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + { if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; } + try + frmOrderInPut_CY:=TfrmOrderInPut_CY.Create(Application); + with frmOrderInPut_CY do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + FOrderNo:=Trim(Self.Order_Main.fieldbyname('OrderNo').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut_CY.Free; + end; +end; + +procedure TfrmProductOrderNewList_CY.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData() then + begin + Order_Main.Delete; + end; +end; + +function TfrmProductOrderNewList_CY.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrderCY_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add('delete JYOrderCY_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add('delete JY_CY_money where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' '+quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(','+quotedstr(trim(self.Caption))); + sql.Add(','+quotedstr(trim('˵ɾ'))); + sql.Add(','+quotedstr(trim('ָ˵'+trim(Order_Main.FieldByName('OrderNO').AsString)))); + sql.Add(','+quotedstr(trim('ɹ'))); + sql.Add(')'); + ExecSQL; + end; + + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderNewList_CY.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv1,ADOQueryMain,self.Caption); +end; + +procedure TfrmProductOrderNewList_CY.TBPrintClick(Sender: TObject); +var + fPrintFile:string; + Porderno:string; + i,j:Integer; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\֪ͨ.rmf' ; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select A.*,b.* '); + // sql.Add(',ShippMent=(select Top 1 shippMent from JYOrdercon_main X where X.conNO=A.conNO) '); + //sql.Add(',Payment=(select Top 1 shippMent from JYOrdercon_main X where X.conNO=A.conNO) '); + sql.Add(',SYRName1=(select Top 1 SYRName from JYOrdercon_main X where X.conNO=A.conNO) '); + sql.Add(',ToPlace=(select Top 1 ToPlace from JYOrdercon_main X where X.conNO=A.conNO) '); + sql.Add('from JYOrderCY_Main A inner join JYOrderCY_Sub B on A.MainId=B.MainId '); + sql.Add('and A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print); + + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\֪ͨ.rmf'),'ʾ',0); + end; + + // Button1.Click; +end; + +procedure TfrmProductOrderNewList_CY.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + + end else + begin + InitGrid(); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 10* from JYOrder_Main Order by FillTime desc'); + Open; + end; + ComboBox1.Clear; + with ADOQueryTemp do + begin + First; + while not Eof do + begin + ComboBox1.Items.Add(Trim(ADOQueryTemp.fieldbyname('OrderNO').AsString)); + Next; + end; + end; + end; +end; + +procedure TfrmProductOrderNewList_CY.TBAddClick(Sender: TObject); +begin + try + frmOrderInPut_CY:=TfrmOrderInPut_CY.Create(Application); + with frmOrderInPut_CY do + begin + PState:=0; + FMainId:=''; + if ShowModal=1 then + begin + InitGrid(); + end; + end; + finally + frmOrderInPut_CY.Free; + end; +end; + +procedure TfrmProductOrderNewList_CY.OrderNoChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderNewList_CY.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderNewList_CY.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmProductOrderNewList_CY.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderNewList_CY.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderNewList_CY.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderNewList_CY.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderNewList_CY.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewList_CY.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewList_CY.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPut_CY:=TfrmOrderInPut_CY.Create(Application); + with frmOrderInPut_CY do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible:=False; + TBSave.Visible:=False; + Panel1.Enabled:=False; + Tv1.OptionsSelection.CellSelect:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut_CY.Free; + end; +end; + +procedure TfrmProductOrderNewList_CY.ToolButton2Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPut_CY:=TfrmOrderInPut_CY.Create(Application); + with frmOrderInPut_CY do + begin + PState:=1; + CopyInt:=99; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut_CY.Free; + end; +end; + +procedure TfrmProductOrderNewList_CY.ToolButton3Click(Sender: TObject); +begin + ModalResult:=1; +end; + +procedure TfrmProductOrderNewList_CY.Panel10MouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel4).Perform(WM_SYSCOMMAND,$F012,0); +end; + +procedure TfrmProductOrderNewList_CY.Button1Click(Sender: TObject); +var + fPrintFile:string; + Porderno,LBName,SYRName:string; + i,j:Integer; + OrderKg:Double; +begin + if Order_Main.IsEmpty then Exit; + LBName:=RadioGroup1.Items.Strings[RadioGroup1.ItemIndex]; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\'+Trim(LBName)+'.rmf' ; + if Trim(Order_Main.fieldbyname('SYRName').AsString)='' then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1 B.ZdyName SYRName from JYOrderCon_Main A'); + sql.Add(' left join KH_Zdy B on A.SYRName=B.Note'); + sql.Add(' where A.ConNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + SYRName:=Trim(ADOQueryTemp.fieldbyname('SYRName').AsString); + end else + begin + SYRName:=Trim(Order_Main.fieldbyname('SYRName').AsString); + end; + + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('exec F_Get_Print_Order '); + sql.add('@mainID='+quotedstr(trim(Order_Main.fieldbyname('MainID').AsString))); + Open; + end; + + + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print); + + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + RMVariables['SYRName']:=Trim(SYRName); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\'+Trim(LBName)+'.rmf'),'ʾ',0); + end; +end; + +procedure TfrmProductOrderNewList_CY.Image2Click(Sender: TObject); +begin + Panel4.Visible:=False; +end; + +procedure TfrmProductOrderNewList_CY.Tv1FocusedRecordChanged( + Sender: TcxCustomGridTableView; APrevFocusedRecord, + AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); +begin + InitSub(); +end; + +procedure TfrmProductOrderNewList_CY.Tv2DblClick( + Sender: TObject); +var + fNO:string; +begin + IF ADOQuerySub.IsEmpty then exit; + ToolButton2.Click; + { with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select ATID from KH_Zdy_Attachment A'); + sql.Add('where zdyCode='+quotedstr(trim(ADOQuerySub.fieldbyname('prtCode').AsString))); + sql.Add('and Type='+quotedstr(trim('CP'))); + open; + if not IsEmpty then + begin + fNO:=trim(fieldbyname('ATID').AsString); + end; + end; + + try + frmZdyAttInputCP10:=TfrmZdyAttInputCP10.Create(Application); + with frmZdyAttInputCP10 do + begin + FATID:=Trim(fNO); + frmZdyAttInputCP10.Tsave.Enabled:=false; + if ShowModal=1 then + begin + // TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP10.Free; + end; + } +end; + +procedure TfrmProductOrderNewList_CY.Tv1DblClick(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmProductOrderNewList_CY.TChkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + ADOQueryCmd.Connection.BeginTrans; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrderCY_Main SET status=''1'' '); + sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' '+quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(','+quotedstr(trim(self.Caption))); + sql.Add(','+quotedstr(trim('˵'))); + sql.Add(','+quotedstr(trim('˵ţ'+trim(Order_Main.FieldByName('conNo').AsString)))); + sql.Add(','+quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + ADOQueryCmd.Connection.CommitTrans; + application.MessageBox('˳ɹ','ʾϢ'); + TBRafresh.Click; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmProductOrderNewList_CY.TNOChkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + ADOQueryCmd.Connection.BeginTrans; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrderCY_Main SET status=''0'' '); + sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' '+quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(','+quotedstr(trim(self.Caption))); + sql.Add(','+quotedstr(trim('˵'))); + sql.Add(','+quotedstr(trim('˵ţ'+trim(Order_Main.FieldByName('conNo').AsString)))); + sql.Add(','+quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + ADOQueryCmd.Connection.CommitTrans; + application.MessageBox('˳ɹ','ʾϢ'); + TBRafresh.Click; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmProductOrderNewList_CY.cxTabControl1Change(Sender: TObject); +begin + SetStatus(); + TBRafresh.Click; + +end; + +end. diff --git a/艾登贸易管理/U_ProductOrderNewList_CY_Sel.dfm b/艾登贸易管理/U_ProductOrderNewList_CY_Sel.dfm new file mode 100644 index 0000000..35beb6e --- /dev/null +++ b/艾登贸易管理/U_ProductOrderNewList_CY_Sel.dfm @@ -0,0 +1,987 @@ +object frmProductOrderNewList_CY_Sel: TfrmProductOrderNewList_CY_Sel + Left = 147 + Top = 28 + Width = 1131 + Height = 604 + Caption = #20986#36816#35745#21010#36873#25321 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1123 + Height = 62 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 106 + OnClick = ToolButton3Click + end + object TBAdd: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = TBEditClick + end + object TBDel: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + OnClick = TBDelClick + end + object ToolButton2: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #22797#21046 + ImageIndex = 57 + Wrap = True + Visible = False + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 0 + Top = 30 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + Visible = False + OnClick = ToolButton1Click + end + object TChk: TToolButton + Left = 63 + Top = 30 + AutoSize = True + Caption = #23457#26680 + ImageIndex = 41 + Visible = False + OnClick = TChkClick + end + object TNOChk: TToolButton + Left = 126 + Top = 30 + AutoSize = True + Caption = #25764#38144#23457#26680 + ImageIndex = 86 + Visible = False + OnClick = TNOChkClick + end + object TBExport: TToolButton + Left = 213 + Top = 30 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + Visible = False + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 276 + Top = 30 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 339 + Top = 30 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + object ComboBox1: TComboBox + Left = 402 + Top = 33 + Width = 145 + Height = 24 + DropDownCount = 10 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 16 + ParentFont = False + TabOrder = 0 + Visible = False + end + end + object Panel1: TPanel + Left = 0 + Top = 62 + Width = 1123 + Height = 37 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 287 + Top = 15 + Width = 52 + Height = 12 + Caption = #20986#36816#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 470 + Top = 15 + Width = 54 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 536 + Top = 67 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 683 + Top = 15 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 536 + Top = 91 + Width = 54 + Height = 12 + Caption = #35268' '#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 378 + Top = 91 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 681 + Top = 91 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 681 + Top = 67 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 160 + Top = 16 + Width = 6 + Height = 12 + Caption = '-' + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 168 + Top = 11 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 344 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = OrderNoChange + end + object CustomerNoName: TEdit + Tag = 2 + Left = 531 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = OrderNoChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 589 + Top = 63 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 4 + OnChange = OrderNoChange + end + object ConNo: TEdit + Tag = 2 + Left = 732 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 5 + OnChange = OrderNoChange + end + object MPRTSpec: TEdit + Tag = 2 + Left = 590 + Top = 87 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 6 + OnChange = OrderNoChange + end + object MPRTCode: TEdit + Tag = 2 + Left = 431 + Top = 87 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 7 + OnChange = OrderNoChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 710 + Top = 87 + Width = 56 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 8 + OnChange = OrderNoChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 710 + Top = 63 + Width = 56 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 9 + OnChange = OrderNoChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 121 + Width = 1123 + Height = 278 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBTableView + OnDblClick = Tv1DblClick + NavigatorButtons.ConfirmDelete = False + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object v1OrderNo: TcxGridDBColumn + Caption = #20986#36816#21333#21495 + DataBinding.FieldName = 'CYNO' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 85 + end + object v1Column10: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 80 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 103 + end + object v1Column2: TcxGridDBColumn + Caption = #30003#35831#26085#26399 + DataBinding.FieldName = 'OrdDefDate1' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 91 + end + object v1Column14: TcxGridDBColumn + Caption = #30003#35831#20154 + DataBinding.FieldName = 'OrdPerson1' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1OrdPerson2: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson2' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #33337#36816#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 89 + end + object v1Column7: TcxGridDBColumn + Caption = #20986#20179#26085#26399 + DataBinding.FieldName = 'OrdDefDate2' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 84 + end + object v1Column9: TcxGridDBColumn + Caption = #20986#36135#24635#25968#37327 + DataBinding.FieldName = 'ZSordQty1' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 80 + end + object v1Column3: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 76 + end + object v1Column8: TcxGridDBColumn + Caption = #27880#24847#20107#39033 + DataBinding.FieldName = 'MPRTBZNote' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object v1Column1: TcxGridDBColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 68 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 95 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel4: TPanel + Left = 482 + Top = 145 + Width = 231 + Height = 216 + TabOrder = 3 + Visible = False + object Label14: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 229 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #25253#34920#21517#31216 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 206 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object Button1: TButton + Left = 83 + Top = 176 + Width = 75 + Height = 25 + Caption = #30830#23450 + TabOrder = 1 + OnClick = Button1Click + end + object RadioGroup1: TRadioGroup + Left = 56 + Top = 24 + Width = 129 + Height = 145 + ItemIndex = 0 + Items.Strings = ( + #21253#35013#25351#31034#21333 + #39068#33394#26679) + TabOrder = 2 + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 399 + Width = 1123 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + Control = cxGrid2 + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 99 + Width = 1123 + Height = 22 + Align = alTop + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Style = 9 + TabIndex = 0 + TabOrder = 5 + Tabs.Strings = ( + #26410#23457#26680 + #24050#23457#26680 + #20840#37096) + Visible = False + OnChange = cxTabControl1Change + ClientRectBottom = 22 + ClientRectRight = 1123 + ClientRectTop = 19 + end + object cxGrid2: TcxGrid + Left = 0 + Top = 407 + Width = 1123 + Height = 163 + Align = alBottom + TabOrder = 6 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = cxGridDBColumn3 + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1XHNo: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'XHNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 35 + end + object v1Column5: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'PrtCodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1Column6: TcxGridDBColumn + Caption = #20135#21697#35268#26684 + DataBinding.FieldName = 'PRTspec' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 90 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #39068#33394'('#33521#25991')' + DataBinding.FieldName = 'SOrddefstr4' + Width = 84 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #20986#36135#25968#37327 + DataBinding.FieldName = 'SordQty1' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneClMaroon + Styles.Footer = DataLink_TradeManage.FoneClMaroon + Styles.Header = DataLink_TradeManage.FoneClMaroon + Width = 60 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PrtPrice' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column4: TcxGridDBColumn + Caption = #20986#36135#31665#25968 + DataBinding.FieldName = 'SordQty2' + Width = 60 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #31435#26041#25968 + DataBinding.FieldName = 'SordQty3' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column11: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'SordQty4' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column12: TcxGridDBColumn + Caption = #20928#37325 + DataBinding.FieldName = 'SordQty5' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column13: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'SordQty6' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'SOrdDefNote1' + HeaderAlignmentHorz = taCenter + Width = 137 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 580 + Top = 236 + end + object PopupMenu1: TPopupMenu + Left = 256 + Top = 176 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end + object ADOQuerySub: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 556 + Top = 416 + end + object DataSource2: TDataSource + DataSet = ADOQuerySub + Left = 488 + Top = 440 + end + object PMFJ: TPopupMenu + Left = 716 + Top = 272 + object NFJ: TMenuItem + Caption = #38468#20214 + end + end + object RMDB_SK: TRMDBDataSet + Visible = True + DataSet = CDS_SK + Left = 264 + Top = 244 + end + object CDS_SK: TClientDataSet + Aggregates = <> + Params = <> + Left = 304 + Top = 300 + end +end diff --git a/艾登贸易管理/U_ProductOrderNewList_CY_Sel.pas b/艾登贸易管理/U_ProductOrderNewList_CY_Sel.pas new file mode 100644 index 0000000..4e4cebd --- /dev/null +++ b/艾登贸易管理/U_ProductOrderNewList_CY_Sel.pas @@ -0,0 +1,846 @@ +unit U_ProductOrderNewList_CY_Sel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus, cxButtonEdit, cxTextEdit, cxPC; + +type + TfrmProductOrderNewList_CY_Sel = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNo: TEdit; + TBExport: TToolButton; + v1OrderNo: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + Label4: TLabel; + CustomerNoName: TEdit; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + ToolButton1: TToolButton; + Label8: TLabel; + MPRTCodeName: TEdit; + Label9: TLabel; + ConNo: TEdit; + Label10: TLabel; + MPRTSpec: TEdit; + Label11: TLabel; + MPRTCode: TEdit; + Label12: TLabel; + MPRTKZ: TEdit; + Label13: TLabel; + MPRTMF: TEdit; + ToolButton2: TToolButton; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + ComboBox1: TComboBox; + Panel4: TPanel; + Label14: TLabel; + Panel10: TPanel; + Image2: TImage; + Button1: TButton; + RadioGroup1: TRadioGroup; + v1Column1: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + cxSplitter1: TcxSplitter; + ADOQuerySub: TADOQuery; + DataSource2: TDataSource; + v1Column8: TcxGridDBColumn; + PMFJ: TPopupMenu; + NFJ: TMenuItem; + v1OrdPerson2: TcxGridDBColumn; + Label2: TLabel; + v1Column9: TcxGridDBColumn; + cxTabControl1: TcxTabControl; + TChk: TToolButton; + TNOChk: TToolButton; + RMDB_SK: TRMDBDataSet; + CDS_SK: TClientDataSet; + v1Column10: TcxGridDBColumn; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v1XHNo: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + v1Column13: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + v1Column14: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, + Y: Integer); + procedure Button1Click(Sender: TObject); + procedure Image2Click(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); + procedure Tv2DblClick(Sender: TObject); + procedure Tv1DblClick(Sender: TObject); + procedure TChkClick(Sender: TObject); + procedure TNOChkClick(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + + procedure InitSub(); + procedure SetStatus(); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmProductOrderNewList_CY_Sel: TfrmProductOrderNewList_CY_Sel; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun, U_OrderInPut_CY; + +{$R *.dfm} +procedure TfrmProductOrderNewList_CY_Sel.SetStatus(); +begin + tchk.Visible:=false; + tnochk.Visible:=false; + tbedit.Visible:=false; + tbdel.Visible:=false; + if Trim(DParameters1)<>'Ȩ' then + begin + case cxTabControl1.TabIndex of + 0:begin + tbedit.Visible:=true; + tbdel.Visible:=true; + end; + 1:begin + end; + 2:begin + end; + end; + end + else + begin + case cxTabControl1.TabIndex of + 0:begin + tchk.Visible:=true; + tbedit.Visible:=true; + tbdel.Visible:=true; + end; + 1:begin + tnochk.Visible:=true; + end; + 2:begin + end; + end; + end; +end; +procedure TfrmProductOrderNewList_CY_Sel.InitSub(); +begin + ADOQuerySub.Close; + IF Order_Main.IsEmpty then exit; + with ADOQuerySub do + begin + close; + sql.Clear; + sql.Add('select * from JYOrderCY_sub '); + sql.Add('where mainID ='+quotedstr((Order_Main.fieldbyname('mainID').AsString))); + open; + end; +end; + +procedure TfrmProductOrderNewList_CY_Sel.FormDestroy(Sender: TObject); +begin + frmProductOrderNewList_CY_Sel:=nil; +end; + +procedure TfrmProductOrderNewList_CY_Sel.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderNewList_CY_Sel.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); + cxTabControl1.TabIndex:=1; + /// SetStatus(); +end; + +procedure TfrmProductOrderNewList_CY_Sel.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid(self.Caption+tv1.Name,Tv1,'ָʾ'); + WriteCxGrid(self.Caption+tv2.Name,Tv2,'ָʾ'); +end; + +procedure TfrmProductOrderNewList_CY_Sel.InitGrid(); +var + fwsql:string; +begin + fwsql:=''; + IF cxTabControl1.TabIndex<2 then + begin + fwsql:=fwsql+' and isnull(A.status,''0'')='''+inttostr(cxTabControl1.TabIndex)+''''; + end; + if Trim(DParameters1)<>'Ȩ' then + begin + // fwsql:=fwsql+' and Filler='''+Trim(DName)+''''; + end; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order_CY :begdate,:enddate,:WSql') ; + + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + Parameters.ParamByName('WSql').Value:=fwsql; + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmProductOrderNewList_CY_Sel.InitForm(); +begin + ReadCxGrid(self.Caption+tv1.Name,Tv1,'ָʾ'); + readCxGrid(self.Caption+tv2.Name,Tv2,'ָʾ'); + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-30; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmProductOrderNewList_CY_Sel.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderNewList_CY_Sel.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + { if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; } + try + frmOrderInPut_CY:=TfrmOrderInPut_CY.Create(Application); + with frmOrderInPut_CY do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + FOrderNo:=Trim(Self.Order_Main.fieldbyname('OrderNo').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut_CY.Free; + end; +end; + +procedure TfrmProductOrderNewList_CY_Sel.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData() then + begin + Order_Main.Delete; + end; +end; + +function TfrmProductOrderNewList_CY_Sel.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrderCY_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add('delete JYOrderCY_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add('delete JY_CY_money where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' '+quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(','+quotedstr(trim(self.Caption))); + sql.Add(','+quotedstr(trim('˵ɾ'))); + sql.Add(','+quotedstr(trim('ָ˵'+trim(Order_Main.FieldByName('OrderNO').AsString)))); + sql.Add(','+quotedstr(trim('ɹ'))); + sql.Add(')'); + ExecSQL; + end; + + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderNewList_CY_Sel.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv1,ADOQueryMain,self.Caption); +end; + +procedure TfrmProductOrderNewList_CY_Sel.TBPrintClick(Sender: TObject); +var + fPrintFile:string; + Porderno:string; + i,j:Integer; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\֪ͨ.rmf' ; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select A.*,b.* '); + // sql.Add(',ShippMent=(select Top 1 shippMent from JYOrdercon_main X where X.conNO=A.conNO) '); + //sql.Add(',Payment=(select Top 1 shippMent from JYOrdercon_main X where X.conNO=A.conNO) '); + sql.Add(',SYRName1=(select Top 1 SYRName from JYOrdercon_main X where X.conNO=A.conNO) '); + sql.Add(',ToPlace=(select Top 1 ToPlace from JYOrdercon_main X where X.conNO=A.conNO) '); + sql.Add('from JYOrderCY_Main A inner join JYOrderCY_Sub B on A.MainId=B.MainId '); + sql.Add('and A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print); + + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\֪ͨ.rmf'),'ʾ',0); + end; + + // Button1.Click; +end; + +procedure TfrmProductOrderNewList_CY_Sel.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + + end else + begin + InitGrid(); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 10* from JYOrder_Main Order by FillTime desc'); + Open; + end; + ComboBox1.Clear; + with ADOQueryTemp do + begin + First; + while not Eof do + begin + ComboBox1.Items.Add(Trim(ADOQueryTemp.fieldbyname('OrderNO').AsString)); + Next; + end; + end; + end; +end; + +procedure TfrmProductOrderNewList_CY_Sel.TBAddClick(Sender: TObject); +begin + try + frmOrderInPut_CY:=TfrmOrderInPut_CY.Create(Application); + with frmOrderInPut_CY do + begin + PState:=0; + FMainId:=''; + if ShowModal=1 then + begin + InitGrid(); + end; + end; + finally + frmOrderInPut_CY.Free; + end; +end; + +procedure TfrmProductOrderNewList_CY_Sel.OrderNoChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderNewList_CY_Sel.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderNewList_CY_Sel.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmProductOrderNewList_CY_Sel.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderNewList_CY_Sel.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderNewList_CY_Sel.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderNewList_CY_Sel.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderNewList_CY_Sel.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewList_CY_Sel.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewList_CY_Sel.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPut_CY:=TfrmOrderInPut_CY.Create(Application); + with frmOrderInPut_CY do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible:=False; + TBSave.Visible:=False; + Panel1.Enabled:=False; + Tv1.OptionsSelection.CellSelect:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut_CY.Free; + end; +end; + +procedure TfrmProductOrderNewList_CY_Sel.ToolButton2Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPut_CY:=TfrmOrderInPut_CY.Create(Application); + with frmOrderInPut_CY do + begin + PState:=1; + CopyInt:=99; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut_CY.Free; + end; +end; + +procedure TfrmProductOrderNewList_CY_Sel.ToolButton3Click(Sender: TObject); +begin + IF Order_Main.IsEmpty then exit; + ModalResult:=1; +end; + +procedure TfrmProductOrderNewList_CY_Sel.Panel10MouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel4).Perform(WM_SYSCOMMAND,$F012,0); +end; + +procedure TfrmProductOrderNewList_CY_Sel.Button1Click(Sender: TObject); +var + fPrintFile:string; + Porderno,LBName,SYRName:string; + i,j:Integer; + OrderKg:Double; +begin + if Order_Main.IsEmpty then Exit; + LBName:=RadioGroup1.Items.Strings[RadioGroup1.ItemIndex]; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\'+Trim(LBName)+'.rmf' ; + if Trim(Order_Main.fieldbyname('SYRName').AsString)='' then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 1 B.ZdyName SYRName from JYOrderCon_Main A'); + sql.Add(' left join KH_Zdy B on A.SYRName=B.Note'); + sql.Add(' where A.ConNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+''''); + Open; + end; + SYRName:=Trim(ADOQueryTemp.fieldbyname('SYRName').AsString); + end else + begin + SYRName:=Trim(Order_Main.fieldbyname('SYRName').AsString); + end; + + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('exec F_Get_Print_Order '); + sql.add('@mainID='+quotedstr(trim(Order_Main.fieldbyname('MainID').AsString))); + Open; + end; + + + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print); + + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + RMVariables['SYRName']:=Trim(SYRName); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\'+Trim(LBName)+'.rmf'),'ʾ',0); + end; +end; + +procedure TfrmProductOrderNewList_CY_Sel.Image2Click(Sender: TObject); +begin + Panel4.Visible:=False; +end; + +procedure TfrmProductOrderNewList_CY_Sel.Tv1FocusedRecordChanged( + Sender: TcxCustomGridTableView; APrevFocusedRecord, + AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); +begin + InitSub(); +end; + +procedure TfrmProductOrderNewList_CY_Sel.Tv2DblClick( + Sender: TObject); +var + fNO:string; +begin + IF ADOQuerySub.IsEmpty then exit; + ToolButton2.Click; + { with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select ATID from KH_Zdy_Attachment A'); + sql.Add('where zdyCode='+quotedstr(trim(ADOQuerySub.fieldbyname('prtCode').AsString))); + sql.Add('and Type='+quotedstr(trim('CP'))); + open; + if not IsEmpty then + begin + fNO:=trim(fieldbyname('ATID').AsString); + end; + end; + + try + frmZdyAttInputCP10:=TfrmZdyAttInputCP10.Create(Application); + with frmZdyAttInputCP10 do + begin + FATID:=Trim(fNO); + frmZdyAttInputCP10.Tsave.Enabled:=false; + if ShowModal=1 then + begin + // TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP10.Free; + end; + } +end; + +procedure TfrmProductOrderNewList_CY_Sel.Tv1DblClick(Sender: TObject); +begin + ToolButton3.Click; +end; + +procedure TfrmProductOrderNewList_CY_Sel.TChkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + ADOQueryCmd.Connection.BeginTrans; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrderCY_Main SET status=''1'' '); + sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' '+quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(','+quotedstr(trim(self.Caption))); + sql.Add(','+quotedstr(trim('˵'))); + sql.Add(','+quotedstr(trim('˵ţ'+trim(Order_Main.FieldByName('conNo').AsString)))); + sql.Add(','+quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + ADOQueryCmd.Connection.CommitTrans; + application.MessageBox('˳ɹ','ʾϢ'); + TBRafresh.Click; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmProductOrderNewList_CY_Sel.TNOChkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + ADOQueryCmd.Connection.BeginTrans; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrderCY_Main SET status=''0'' '); + sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' '+quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(','+quotedstr(trim(self.Caption))); + sql.Add(','+quotedstr(trim('˵'))); + sql.Add(','+quotedstr(trim('˵ţ'+trim(Order_Main.FieldByName('conNo').AsString)))); + sql.Add(','+quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + ADOQueryCmd.Connection.CommitTrans; + application.MessageBox('˳ɹ','ʾϢ'); + TBRafresh.Click; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmProductOrderNewList_CY_Sel.cxTabControl1Change(Sender: TObject); +begin +// SetStatus(); + TBRafresh.Click; + +end; + +end. diff --git a/艾登贸易管理/U_ProductOrderNewList_FB.dfm b/艾登贸易管理/U_ProductOrderNewList_FB.dfm new file mode 100644 index 0000000..e8037fe --- /dev/null +++ b/艾登贸易管理/U_ProductOrderNewList_FB.dfm @@ -0,0 +1,1055 @@ +object frmProductOrderNewList_FB: TfrmProductOrderNewList_FB + Left = 192 + Top = 115 + Width = 1087 + Height = 604 + Caption = #21457#31080#20449#24687 + 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 = 1071 + Height = 62 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 106 + Visible = False + OnClick = ToolButton3Click + end + object TBAdd: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + OnClick = TBAddClick + end + object TBEdit: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object TBDel: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #20316#24223 + ImageIndex = 17 + OnClick = TBDelClick + end + object TBNodel: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #25764#38144#20316#24223 + ImageIndex = 129 + Visible = False + OnClick = TBNodelClick + end + object ToolButton2: TToolButton + Left = 465 + Top = 0 + AutoSize = True + Caption = #22797#21046 + ImageIndex = 57 + Wrap = True + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 0 + Top = 30 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + OnClick = ToolButton1Click + end + object TChk: TToolButton + Left = 63 + Top = 30 + AutoSize = True + Caption = #23457#26680 + ImageIndex = 41 + Visible = False + OnClick = TChkClick + end + object TNOChk: TToolButton + Left = 126 + Top = 30 + AutoSize = True + Caption = #25764#38144#23457#26680 + ImageIndex = 86 + Visible = False + OnClick = TNOChkClick + end + object TBExport: TToolButton + Left = 213 + Top = 30 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + Visible = False + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 276 + Top = 30 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 339 + Top = 30 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + object ComboBox1: TComboBox + Left = 402 + Top = 33 + Width = 145 + Height = 24 + DropDownCount = 10 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 16 + ParentFont = False + TabOrder = 0 + Visible = False + end + end + object Panel1: TPanel + Left = 0 + Top = 62 + Width = 1071 + Height = 63 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 28 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 202 + Top = 15 + Width = 53 + Height = 12 + Caption = #21457' '#31080' '#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 202 + Top = 39 + Width = 54 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 536 + Top = 67 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 392 + Top = 15 + Width = 53 + Height = 12 + Caption = #21512' '#21516' '#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 536 + Top = 91 + Width = 54 + Height = 12 + Caption = #35268' '#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 378 + Top = 91 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 681 + Top = 91 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 681 + Top = 67 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 392 + Top = 39 + Width = 53 + Height = 12 + Caption = #19994' '#21153' '#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 85 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 85 + Top = 35 + Width = 85 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object invoiceNo: TEdit + Tag = 2 + Left = 259 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 2 + OnChange = invoiceNoChange + end + object orddefstr10: TEdit + Tag = 2 + Left = 259 + Top = 35 + Width = 100 + Height = 20 + TabOrder = 3 + OnChange = invoiceNoChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 589 + Top = 63 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 4 + OnChange = invoiceNoChange + end + object ConNo: TEdit + Tag = 2 + Left = 450 + Top = 11 + Width = 100 + Height = 20 + TabOrder = 5 + OnChange = invoiceNoChange + end + object MPRTSpec: TEdit + Tag = 2 + Left = 590 + Top = 87 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 6 + OnChange = invoiceNoChange + end + object MPRTCode: TEdit + Tag = 2 + Left = 431 + Top = 87 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 7 + OnChange = invoiceNoChange + end + object MPRTKZ: TEdit + Tag = 2 + Left = 710 + Top = 87 + Width = 56 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 8 + OnChange = invoiceNoChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 710 + Top = 63 + Width = 56 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 9 + OnChange = invoiceNoChange + end + object OrdPerson2: TEdit + Tag = 2 + Left = 450 + Top = 35 + Width = 100 + Height = 20 + TabOrder = 10 + OnChange = invoiceNoChange + end + object RadioGroup2: TRadioGroup + Left = 640 + Top = 8 + Width = 213 + Height = 49 + Caption = #21457#31080#31867#22411 + Columns = 3 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ItemIndex = 2 + Items.Strings = ( + #20869#38144 + #22806#38144 + #20840#37096) + ParentFont = False + TabOrder = 11 + OnClick = RadioGroup2Click + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 145 + Width = 1071 + Height = 250 + Align = alClient + TabOrder = 2 + object Tv1: TcxGridDBTableView + OnDblClick = Tv1DblClick + NavigatorButtons.ConfirmDelete = False + OnCustomDrawCell = Tv1CustomDrawCell + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column2 + end + item + Kind = skSum + Column = v1Column9 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object v1invoceNO: TcxGridDBColumn + Caption = #21457#31080#21495 + DataBinding.FieldName = 'invoiceNO' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1OrderNo: TcxGridDBColumn + Caption = #20986#36816#21333#21495 + DataBinding.FieldName = 'CYNO' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 85 + end + object v1Column10: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + end + object v1Column4: TcxGridDBColumn + Caption = #21457#31080#31867#22411 + DataBinding.FieldName = 'Orddefstr15' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 80 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'orddefstr10' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 120 + end + object v1OrdPerson2: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson2' + HeaderAlignmentHorz = taCenter + Width = 87 + end + object v1OrdDefStr13: TcxGridDBColumn + Caption = #21551#29992#28207 + DataBinding.FieldName = 'OrdDefStr13' + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v1OrdDefStr14: TcxGridDBColumn + Caption = #30446#30340#28207 + DataBinding.FieldName = 'OrdDefStr14' + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v1Column9: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'ZSordQty1' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 80 + end + object v1Column3: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 76 + end + object v1Column2: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'prtmoney' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 93 + end + object v1OrdDefDate1: TcxGridDBColumn + Caption = #21040#27454#26085#26399 + DataBinding.FieldName = 'OrdDefDate1' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v1Column1: TcxGridDBColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 68 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 95 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel4: TPanel + Left = 395 + Top = 150 + Width = 231 + Height = 216 + TabOrder = 3 + Visible = False + object Label14: TLabel + Left = 48 + Top = 88 + Width = 6 + Height = 12 + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 229 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #25253#34920#21517#31216 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnMouseMove = Panel10MouseMove + object Image2: TImage + Left = 206 + Top = 3 + Width = 22 + Height = 16 + ParentShowHint = False + Picture.Data = { + 07544269746D617076040000424D760400000000000036000000280000001500 + 0000110000000100180000000000400400000000000000000000000000000000 + 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6 + F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040 + 404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080 + 808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000 + 000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000 + 000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4 + C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4 + C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4 + C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF + FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FF00} + ShowHint = True + Transparent = True + OnClick = Image2Click + end + end + object Button1: TButton + Left = 83 + Top = 184 + Width = 75 + Height = 21 + Caption = #30830#23450 + TabOrder = 1 + OnClick = Button1Click + end + object RadioGroup1: TRadioGroup + Left = 56 + Top = 24 + Width = 129 + Height = 145 + ItemIndex = 0 + Items.Strings = ( + #35013#31665#21333 + #21512#21516#21457#31080) + TabOrder = 2 + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 395 + Width = 1071 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + Control = cxGrid2 + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 125 + Width = 1071 + Height = 20 + Align = alTop + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Style = 9 + TabIndex = 0 + TabOrder = 5 + Tabs.Strings = ( + #27491#24120 + #24050#20316#24223 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectBottom = 20 + ClientRectRight = 1071 + ClientRectTop = 19 + end + object cxGrid2: TcxGrid + Left = 0 + Top = 403 + Width = 1071 + Height = 163 + Align = alBottom + TabOrder = 6 + object Tv2: TcxGridDBTableView + PopupMenu = PopupMenu1 + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = cxGridDBColumn3 + end + item + Kind = skSum + end + item + Kind = skSum + Column = v2prtmoney + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1XHNo: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'XHNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 49 + end + object v1Column5: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'PrtCodeName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 104 + end + object v1Column6: TcxGridDBColumn + Caption = #20135#21697#35268#26684 + DataBinding.FieldName = 'PRTspec' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 90 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #39068#33394'('#33521#25991')' + DataBinding.FieldName = 'SOrddefstr4' + Width = 98 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'SordQty1' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v2SordQty7: TcxGridDBColumn + Caption = #21253#25968 + DataBinding.FieldName = 'SordQty7' + HeaderAlignmentHorz = taCenter + Width = 65 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PrtPrice' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2prtmoney: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'prtmoney' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 80 + end + object v2SordQty4: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'SordQty4' + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v2SordQty5: TcxGridDBColumn + Caption = #20928#37325 + DataBinding.FieldName = 'SordQty5' + HeaderAlignmentHorz = taCenter + Width = 65 + end + object v2SordQty3: TcxGridDBColumn + Caption = #31435#26041#25968 + DataBinding.FieldName = 'SordQty3' + HeaderAlignmentHorz = taCenter + Width = 69 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'SOrdDefNote1' + HeaderAlignmentHorz = taCenter + Width = 137 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 638 + Top = 277 + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 303 + Top = 289 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 580 + Top = 236 + end + object PopupMenu1: TPopupMenu + Left = 256 + Top = 176 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 337 + Top = 288 + end + object ADOQuerySub: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 556 + Top = 416 + end + object DataSource2: TDataSource + DataSet = ADOQuerySub + Left = 488 + Top = 440 + end + object PMFJ: TPopupMenu + Left = 716 + Top = 272 + object NFJ: TMenuItem + Caption = #38468#20214 + end + end + object RMDB_SK: TRMDBDataSet + Visible = True + DataSet = CDS_SK + Left = 170 + Top = 274 + end + object CDS_SK: TClientDataSet + Aggregates = <> + Params = <> + Left = 201 + Top = 275 + end + object CDS_Print1: TClientDataSet + Aggregates = <> + Params = <> + Left = 378 + Top = 289 + end + object RMDBMainZX: TRMDBDataSet + Visible = True + DataSet = CDS_Print1 + Left = 407 + Top = 290 + end +end diff --git a/艾登贸易管理/U_ProductOrderNewList_FB.pas b/艾登贸易管理/U_ProductOrderNewList_FB.pas new file mode 100644 index 0000000..57f0a25 --- /dev/null +++ b/艾登贸易管理/U_ProductOrderNewList_FB.pas @@ -0,0 +1,1026 @@ +unit U_ProductOrderNewList_FB; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus, cxButtonEdit, cxTextEdit, cxPC; + +type + TfrmProductOrderNewList_FB = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + invoiceNo: TEdit; + TBExport: TToolButton; + v1OrderNo: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + Label4: TLabel; + orddefstr10: TEdit; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + ToolButton1: TToolButton; + Label8: TLabel; + MPRTCodeName: TEdit; + Label9: TLabel; + ConNo: TEdit; + Label10: TLabel; + MPRTSpec: TEdit; + Label11: TLabel; + MPRTCode: TEdit; + Label12: TLabel; + MPRTKZ: TEdit; + Label13: TLabel; + MPRTMF: TEdit; + ToolButton2: TToolButton; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + ComboBox1: TComboBox; + Panel4: TPanel; + Label14: TLabel; + Panel10: TPanel; + Image2: TImage; + Button1: TButton; + RadioGroup1: TRadioGroup; + v1Column1: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + cxSplitter1: TcxSplitter; + ADOQuerySub: TADOQuery; + DataSource2: TDataSource; + PMFJ: TPopupMenu; + NFJ: TMenuItem; + v1OrdPerson2: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + cxTabControl1: TcxTabControl; + TChk: TToolButton; + TNOChk: TToolButton; + RMDB_SK: TRMDBDataSet; + CDS_SK: TClientDataSet; + v1Column10: TcxGridDBColumn; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v1XHNo: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + v1invoceNO: TcxGridDBColumn; + v2prtmoney: TcxGridDBColumn; + v2SordQty4: TcxGridDBColumn; + v2SordQty5: TcxGridDBColumn; + v2SordQty3: TcxGridDBColumn; + v1OrdDefDate1: TcxGridDBColumn; + Label2: TLabel; + OrdPerson2: TEdit; + RadioGroup2: TRadioGroup; + v1OrdDefStr14: TcxGridDBColumn; + v1OrdDefStr13: TcxGridDBColumn; + v2SordQty7: TcxGridDBColumn; + CDS_Print1: TClientDataSet; + RMDBMainZX: TRMDBDataSet; + v1Column2: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + TBNodel: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure invoiceNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, + Y: Integer); + procedure Button1Click(Sender: TObject); + procedure Image2Click(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; + APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); + procedure Tv2DblClick(Sender: TObject); + procedure Tv1DblClick(Sender: TObject); + procedure TChkClick(Sender: TObject); + procedure TNOChkClick(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure RadioGroup2Click(Sender: TObject); + procedure TBNodelClick(Sender: TObject); + procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + + procedure InitSub(); + procedure SetStatus(); + { Private declarations } + public + FFInt,FCloth:Integer; + ftype: string; + + { Public declarations } + end; + +var + frmProductOrderNewList_FB: TfrmProductOrderNewList_FB; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun, U_OrderInPut_CY, U_OrderInPut_FB; + +{$R *.dfm} +procedure TfrmProductOrderNewList_FB.SetStatus(); +begin + tchk.Visible:=false; + tnochk.Visible:=false; + TBDel.Visible:=false; + TBNodel.Visible:=false; + TBEdit.Visible:=false; + case cxTabControl1.TabIndex of + 0:begin + TBDel.Visible:=true; + TBEdit.Visible:=true; + end; + 1:begin + TBNodel.Visible:=true; + end; + 2:begin + end; + end; +{ if Trim(DParameters1)<>'Ȩ' then + begin + case cxTabControl1.TabIndex of + 0:begin + tbedit.Visible:=true; + tbdel.Visible:=true; + end; + 1:begin + end; + 2:begin + end; + end; + end + else + begin + case cxTabControl1.TabIndex of + 0:begin + tchk.Visible:=true; + tbedit.Visible:=true; + tbdel.Visible:=true; + end; + 1:begin + tnochk.Visible:=true; + end; + 2:begin + end; + end; + end; } +end; + +procedure TfrmProductOrderNewList_FB.InitSub(); +begin + ADOQuerySub.Close; + IF Order_Main.IsEmpty then exit; + with ADOQuerySub do + begin + close; + sql.Clear; + sql.Add('select * from JYOrderFB_sub '); + sql.Add('where mainID ='+quotedstr((Order_Main.fieldbyname('mainID').AsString))); + open; + end; +end; + +procedure TfrmProductOrderNewList_FB.FormDestroy(Sender: TObject); +begin + frmProductOrderNewList_FB:=nil; +end; + +procedure TfrmProductOrderNewList_FB.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderNewList_FB.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + DQdate:=SGetServerDate(ADOQueryTemp); + cxTabControl1.TabIndex:=0; + SetStatus(); +end; + +procedure TfrmProductOrderNewList_FB.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid(self.Caption+tv1.Name,Tv1,'ָʾ'); + WriteCxGrid(self.Caption+tv2.Name,Tv2,'ָʾ'); +end; + +procedure TfrmProductOrderNewList_FB.InitGrid(); +var + fwsql:string; +begin + fwsql:=''; + IF cxTabControl1.TabIndex<2 then + begin + fwsql:=fwsql+' and isnull(A.status,''0'')='''+inttostr(cxTabControl1.TabIndex)+''''; + end; + if Trim(DParameters1)<>'Ȩ' then + begin + // fwsql:=fwsql+' and Filler='''+Trim(DName)+''''; + end; + if Trim(DParameters1)='ҵԱ' then + begin + fwsql:=fwsql+' and OrdPerson2='''+Trim(DName)+''''; + end; + try + // ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_Order_FB :begdate,:enddate,:WSql'); + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + Parameters.ParamByName('WSql').Value:=fwsql; + // ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + // ADOQueryMain.EnableControls; + end; + TBFind.Click; +end; + + +procedure TfrmProductOrderNewList_FB.InitForm(); +begin + ReadCxGrid(self.Caption+tv1.Name,Tv1,'ָʾ'); + readCxGrid(self.Caption+tv2.Name,Tv2,'ָʾ'); + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + if Trim(ftype)='' then + begin + TBAdd.Visible:=false; + TBEdit.Visible:=False; + TBDel.Visible:=False; + end; +{ if Trim(ftype)<>'' then + begin + RadioGroup2.ItemIndex:=RadioGroup2.Items.IndexOf(Trim(Ftype)); + if RadioGroup2.ItemIndex>=0 then + begin + RadioGroup2.Enabled:=false; + end + else + RadioGroup2.ItemIndex:=2; + end; } + InitGrid(); +end; + +procedure TfrmProductOrderNewList_FB.TBFindClick(Sender: TObject); +var strwhere: string; +begin + if ADOQueryMain.Active=False then Exit; + strwhere:=SGetFilters(Panel1,1,2); + if strwhere='' then + begin + IF RadioGroup2.ItemIndex<2 then + strwhere:=strwhere+' OrdDefStr15='''+trim(RadioGroup2.Items.Strings[RadioGroup2.itemindex])+''''; + end + else + begin + IF RadioGroup2.ItemIndex<2 then + strwhere:=strwhere+' and OrdDefStr15='''+trim(RadioGroup2.Items.Strings[RadioGroup2.itemindex])+''''; + end; + SDofilter(ADOQueryMain,strwhere); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderNewList_FB.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + { if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; } + try + frmOrderInPut_FB:=TfrmOrderInPut_FB.Create(Application); + with frmOrderInPut_FB do + begin + PState:=1; + ftype:=Self.ftype; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + FOrderNo:=Trim(Self.Order_Main.fieldbyname('OrderNo').AsString); + if ShowModal=1 then + begin + InitGrid(); + end; + end; + finally + frmOrderInPut_FB.Free; + end; +end; + +procedure TfrmProductOrderNewList_FB.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + + if Application.MessageBox('ȷҪ','ʾ',32+4)<>IDYES then Exit; + if DelData() then + begin + Order_Main.Delete; + end; +end; + +function TfrmProductOrderNewList_FB.DelData():Boolean; +var + CRID:string; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + open; + IF not isempty then + begin + CRID:=fieldbyname('CRID').AsString; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update JYOrderFB_Main SET status=''1'' '); + sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + // sql.Add('delete JYOrderFB_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + // sql.Add('delete JYOrderFB_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''' '); + sql.Add('delete YF_Money_CR where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''' '); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' '+quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(','+quotedstr(trim(self.Caption))); + sql.Add(','+quotedstr(trim('Ʊ'))); + sql.Add(','+quotedstr(trim('Ʊţ'+trim(Order_Main.FieldByName('invoiceNo').AsString)))); + sql.Add(','+quotedstr(trim('ɹ'))); + sql.Add(')'); + sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID) '); + sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID) '); + sql.Add(' where CRID='+CRID); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderNewList_FB.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv1,ADOQueryMain,self.Caption); +end; + +procedure TfrmProductOrderNewList_FB.TBPrintClick(Sender: TObject); +var + fPrintFile:string; +begin + if Order_Main.IsEmpty then Exit; + {with ADOQueryPrint do + begin + close; + sql.Clear; + sql.Add('select A.*,B.*,E.MPRTType,E.BankSelfFastNo,E.BankAddress,'); + SQL.Add('OrderUnit=(select Top 1 OrderUnit from JYOrderFB_Sub B where B.MainId=A.MainId),'); + SQL.Add('ZSordQty1=(select Sum(SordQty1) from JYOrderFB_Sub B where B.MainId=A.MainId group by B.MainId) '); + sql.Add('from JYOrderFB_Main A inner join JYOrderFB_Sub B on A.MainId=B.MainId '); + sql.Add('left join JYOrderCY_sub C on C.Subid=B.Sorddefstr10 '); + sql.Add('left join JYOrderCY_Main D on D.mainID=C.mainID '); + sql.Add('left join JYOrderCon_Main E on E.conNO=D.conNO '); + sql.Add('where A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print); + if Trim(ADOQueryPrint.FieldByName('MPRTType').AsString)='' then + begin + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ͬƱ1.rmf'; + end + else + fPrintFile:= ExtractFilePath(Application.ExeName)+'Report\ͬƱ2.rmf'; + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end + else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ͬƱ.rmf'),'ʾ',0); + end;} + //Panel4.Visible:=True; + button1.Click; +end; + +procedure TfrmProductOrderNewList_FB.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + + end + else + begin + InitGrid(); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 10* from JYOrderFB_Main Order by FillTime desc'); + Open; + end; + ComboBox1.Clear; + with ADOQueryTemp do + begin + First; + while not Eof do + begin + ComboBox1.Items.Add(Trim(ADOQueryTemp.fieldbyname('OrderNO').AsString)); + Next; + end; + end; + end; +end; + +procedure TfrmProductOrderNewList_FB.TBAddClick(Sender: TObject); +begin + try + frmOrderInPut_FB:=TfrmOrderInPut_FB.Create(Application); + with frmOrderInPut_FB do + begin + PState:=0; + FMainId:=''; + ftype:=Self.ftype; + if ShowModal=1 then + begin + InitGrid(); + end; + end; + finally + frmOrderInPut_FB.Free; + end; +end; + +procedure TfrmProductOrderNewList_FB.invoiceNoChange(Sender: TObject); +begin + TBFind.Click +end; + +procedure TfrmProductOrderNewList_FB.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderNewList_FB.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmProductOrderNewList_FB.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderNewList_FB.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderNewList_FB.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderNewList_FB.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderNewList_FB.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewList_FB.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewList_FB.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPut_FB:=TfrmOrderInPut_FB.Create(Application); + with frmOrderInPut_FB do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible:=False; + TBSave.Visible:=False; + Panel1.Enabled:=False; + Tv1.OptionsSelection.CellSelect:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut_FB.Free; + end; +end; + +procedure TfrmProductOrderNewList_FB.ToolButton2Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPut_FB:=TfrmOrderInPut_FB.Create(Application); + with frmOrderInPut_FB do + begin + PState:=1; + CopyInt:=99; + + ftype:=Self.ftype; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + FOrderNo:=Trim(Self.Order_Main.fieldbyname('OrderNo').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut_FB.Free; + end; +end; + +procedure TfrmProductOrderNewList_FB.ToolButton3Click(Sender: TObject); +begin + ModalResult:=1; +end; + +procedure TfrmProductOrderNewList_FB.Panel10MouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); +begin + ReleaseCapture; + TWinControl(Panel4).Perform(WM_SYSCOMMAND,$F012,0); +end; + +procedure TfrmProductOrderNewList_FB.Button1Click(Sender: TObject); +var + fPrintFile:string; + Porderno,LBName,SYRName:string; + i,j:Integer; + OrderKg:Double; +begin + if Order_Main.IsEmpty then Exit; + {LBName:=RadioGroup1.Items.Strings[RadioGroup1.ItemIndex]; + if LBName='װ䵥' then + begin + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\װ䵥.rmf' ; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select AA.OrdDefStr14,AA.OrdDefStr13,AA.CustomerNoName,AA.InvoiceNo,AA.ConNo,AA.Orddate,AA.OrdDefStr4,AA.orddefstr3,AA.OrdDefStr15,AA.PRTColor,AA.SordQty7,'); + SQL.Add('AA.PrtCodeName,AA.PRTspec,AA.KHConNO,AA.Mainid,AA.OrderUnit,Sum(AA.SordQty1) SL,SUM(AA.Sordqty4) MZ,SUM(AA.SordQty5) JZ,SUM(AA.SordQty3) LFS from ( '); + SQL.Add('select A.OrdDefStr14,A.CustomerNoName,A.OrdDefStr13,A.InvoiceNo,A.ConNo,A.Orddate,A.OrdDefStr4,A.orddefstr3,A.OrdDefStr15,'); + SQL.Add('B.PrtCodeName,B.PRTspec,A.KHConNO,A.Mainid,B.SordQty1,B.Sordqty4,B.SordQty5,B.SordQty3,B.PRTColor,B.SordQty7,'); + SQL.Add('OrderUnit=(select Top 1 OrderUnit from JYOrderFB_Sub B where B.MainId=A.MainId) '); + SQL.Add('from JYOrderFB_Main A inner join JYOrderFB_Sub B on A.MainId=B.MainId where B.PRTColor<>'''') AA '); + sql.Add('where AA.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + + sql.Add('group by AA.OrdDefStr14,AA.OrdDefStr13,AA.CustomerNoName,AA.InvoiceNo,AA.ConNo,AA.Orddate,AA.OrdDefStr4,AA.orddefstr3,AA.OrdDefStr15,AA.PRTColor,AA.SordQty7,'); + sql.Add('AA.PrtCodeName,AA.PRTspec,AA.KHConNO,AA.Mainid,AA.OrderUnit '); + sql.add('order by AA.PrtCodeName,AA.PRTspec,AA.PRTColor,AA.KHConNO'); + Open; + end; + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print); + end + else + begin + with ADOQueryPrint do + begin + close; + sql.Clear; + sql.Add('select A.*,B.*,D.MaiTouNote,E.MPRTType,E.BankSelfFastNo,E.BankAddress,'); + SQL.Add('OrderUnit=(select Top 1 OrderUnit from JYOrderFB_Sub B where B.MainId=A.MainId),'); + SQL.Add('ZSordQty1=(select Sum(SordQty1) from JYOrderFB_Sub B where B.MainId=A.MainId group by B.MainId) '); + sql.Add('from JYOrderFB_Main A inner join JYOrderFB_Sub B on A.MainId=B.MainId '); + sql.Add('left join JYOrderCY_sub C on C.Subid=B.Sorddefstr10 '); + sql.Add('left join JYOrderCY_Main D on D.mainID=C.mainID '); + sql.Add('left join JYOrderCon_Main E on E.conNO=D.conNO '); + sql.Add('where A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print); + if Trim(CDS_Print.fieldbyname('OrdDefStr15').AsString)='' then + begin + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ͬƱ1.rmf'; + end + else + fPrintFile:= ExtractFilePath(Application.ExeName)+'Report\ͬƱ2.rmf'; + end;} + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select AA.OrdDefStr14,AA.OrdDefStr13,AA.CustomerNoName,AA.InvoiceNo,AA.ConNo,AA.Orddate,AA.OrdDefStr4,AA.orddefstr3,AA.OrdDefStr15,AA.PRTColor,AA.SordQty7,'); + SQL.Add('AA.PrtCodeName,AA.PRTspec,AA.KHConNO,AA.Mainid,AA.OrderUnit,Sum(AA.SordQty1) SL,SUM(AA.Sordqty4) MZ,SUM(AA.SordQty5) JZ,SUM(AA.SordQty3) LFS from ( '); + SQL.Add('select A.OrdDefStr14,A.CustomerNoName,A.OrdDefStr13,A.InvoiceNo,A.ConNo,A.Orddate,A.OrdDefStr4,A.orddefstr3,A.OrdDefStr15,'); + SQL.Add('B.PrtCodeName,B.PRTspec,A.KHConNO,A.Mainid,B.SordQty1,B.Sordqty4,B.SordQty5,B.SordQty3,B.PRTColor,B.SordQty7,'); + SQL.Add('OrderUnit=(select Top 1 OrderUnit from JYOrderFB_Sub B where B.MainId=A.MainId) '); + SQL.Add('from JYOrderFB_Main A inner join JYOrderFB_Sub B on A.MainId=B.MainId where B.PRTColor<>'''') AA '); + sql.Add('where AA.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add('group by AA.OrdDefStr14,AA.OrdDefStr13,AA.CustomerNoName,AA.InvoiceNo,AA.ConNo,AA.Orddate,AA.OrdDefStr4,AA.orddefstr3,AA.OrdDefStr15,AA.PRTColor,AA.SordQty7,'); + sql.Add('AA.PrtCodeName,AA.PRTspec,AA.KHConNO,AA.Mainid,AA.OrderUnit '); + sql.add('order by AA.PrtCodeName,AA.PRTspec,AA.PRTColor,AA.KHConNO'); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_Print1); + SInitCDSData20(ADOQueryTemp,CDS_Print1); + with ADOQueryPrint do + begin + close; + sql.Clear; + sql.Add('select A.*,B.*,D.MaiTouNote,E.MPRTType,E.BankSelfFastNo,E.BankAddress,'); + SQL.Add('OrderUnit=(select Top 1 OrderUnit from JYOrderFB_Sub B where B.MainId=A.MainId),'); + SQL.Add('ZSordQty1=(select Sum(SordQty1) from JYOrderFB_Sub B where B.MainId=A.MainId group by B.MainId) '); + sql.Add('from JYOrderFB_Main A inner join JYOrderFB_Sub B on A.MainId=B.MainId '); + sql.Add('left join JYOrderCY_sub C on C.Subid=B.Sorddefstr10 '); + sql.Add('left join JYOrderCY_Main D on D.mainID=C.mainID '); + sql.Add('left join JYOrderCon_Main E on E.conNO=D.conNO '); + sql.Add('where A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.add('order by B.PrtCodeName,B.PRTspec,B.PRTColor,A.KHConNO'); + Open; + end; + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print); + if Trim(CDS_Print.fieldbyname('OrdDefStr15').AsString)='' then + begin + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ͬƱ1.rmf'; + end + else + fPrintFile:= ExtractFilePath(Application.ExeName)+'Report\ͬƱ2.rmf'; + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end + else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ͬƱ.rmf'),'ʾ',0); + end; +end; + +procedure TfrmProductOrderNewList_FB.Image2Click(Sender: TObject); +begin + Panel4.Visible:=False; +end; + +procedure TfrmProductOrderNewList_FB.Tv1FocusedRecordChanged( + Sender: TcxCustomGridTableView; APrevFocusedRecord, + AFocusedRecord: TcxCustomGridRecord; + ANewItemRecordFocusingChanged: Boolean); +begin + InitSub(); +end; + +procedure TfrmProductOrderNewList_FB.Tv2DblClick( + Sender: TObject); +var + fNO:string; +begin + IF ADOQuerySub.IsEmpty then exit; + ToolButton2.Click; + { with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select ATID from KH_Zdy_Attachment A'); + sql.Add('where zdyCode='+quotedstr(trim(ADOQuerySub.fieldbyname('prtCode').AsString))); + sql.Add('and Type='+quotedstr(trim('CP'))); + open; + if not IsEmpty then + begin + fNO:=trim(fieldbyname('ATID').AsString); + end; + end; + + try + frmZdyAttInputCP10:=TfrmZdyAttInputCP10.Create(Application); + with frmZdyAttInputCP10 do + begin + FATID:=Trim(fNO); + frmZdyAttInputCP10.Tsave.Enabled:=false; + if ShowModal=1 then + begin + // TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP10.Free; + end; + } +end; + +procedure TfrmProductOrderNewList_FB.Tv1DblClick(Sender: TObject); +begin +// ToolButton1.Click; +end; + +procedure TfrmProductOrderNewList_FB.TChkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + ADOQueryCmd.Connection.BeginTrans; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrderFB_Main SET status=''1'' '); + sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' '+quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(','+quotedstr(trim(self.Caption))); + sql.Add(','+quotedstr(trim('Ʊ'))); + sql.Add(','+quotedstr(trim('Ʊţ'+trim(Order_Main.FieldByName('invoiceNo').AsString)))); + sql.Add(','+quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + ADOQueryCmd.Connection.CommitTrans; + application.MessageBox('˳ɹ','ʾϢ'); + TBRafresh.Click; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmProductOrderNewList_FB.TNOChkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + ADOQueryCmd.Connection.BeginTrans; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrderCY_Main SET status=''0'' '); + sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' '+quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(','+quotedstr(trim(self.Caption))); + sql.Add(','+quotedstr(trim('Ʊ'))); + sql.Add(','+quotedstr(trim('Ʊţ'+trim(Order_Main.FieldByName('invoiceNo').AsString)))); + sql.Add(','+quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + ADOQueryCmd.Connection.CommitTrans; + application.MessageBox('˳ɹ','ʾϢ'); + TBRafresh.Click; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmProductOrderNewList_FB.cxTabControl1Change(Sender: TObject); +begin + SetStatus(); + TBRafresh.Click; +end; + +procedure TfrmProductOrderNewList_FB.RadioGroup2Click(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmProductOrderNewList_FB.TBNodelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + { if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; } + try + frmOrderInPut_FB:=TfrmOrderInPut_FB.Create(Application); + with frmOrderInPut_FB do + begin + PState:=1; + ftype:=Self.ftype; + TBSave.Caption:=''; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + FOrderNo:=Trim(Self.Order_Main.fieldbyname('OrderNo').AsString); + if ShowModal=1 then + begin + InitGrid(); + end; + + end; + finally + frmOrderInPut_FB.TBSave.Caption:=''; + frmOrderInPut_FB.Free; + end; +end; + +procedure TfrmProductOrderNewList_FB.Tv1CustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + IF AViewInfo.GridRecord.Values[tv1.GetColumnByFieldName('prtmoney').Index]<0 then + begin + // ACanvas.Brush.Color:=Clgreen; + ACanvas.Brush.Color:=clLime; + end; +end; + +end. diff --git a/艾登贸易管理/U_ProductOrderNewList_JD.dfm b/艾登贸易管理/U_ProductOrderNewList_JD.dfm new file mode 100644 index 0000000..f1851bb --- /dev/null +++ b/艾登贸易管理/U_ProductOrderNewList_JD.dfm @@ -0,0 +1,952 @@ +object frmProductOrderNewList_JD: TfrmProductOrderNewList_JD + Left = 247 + Top = 301 + Width = 1145 + Height = 595 + Caption = #29983#20135#25351#31034#21333 + 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 = 1129 + Height = 62 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 106 + Visible = False + OnClick = ToolButton3Click + end + object TBAdd: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + OnClick = TBAddClick + end + object tchk: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #19994#21153#23457#26680 + ImageIndex = 41 + Visible = False + OnClick = tchkClick + end + object tNochk: TToolButton + Left = 339 + Top = 0 + AutoSize = True + Caption = #23457#26680#25764#38144 + ImageIndex = 86 + Visible = False + OnClick = tNochkClick + end + object TBEdit: TToolButton + Left = 426 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + Wrap = True + Visible = False + OnClick = TBEditClick + end + object ToolButton2: TToolButton + Left = 0 + Top = 30 + AutoSize = True + Caption = #22797#21046 + ImageIndex = 57 + Visible = False + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 63 + Top = 30 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + Visible = False + OnClick = ToolButton1Click + end + object TBExport: TToolButton + Left = 126 + Top = 30 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 189 + Top = 30 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 252 + Top = 30 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + object ComboBox1: TComboBox + Left = 315 + Top = 33 + Width = 145 + Height = 24 + DropDownCount = 10 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ItemHeight = 16 + ParentFont = False + TabOrder = 0 + Visible = False + end + end + object Panel1: TPanel + Left = 0 + Top = 62 + Width = 1129 + Height = 65 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 186 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 410 + Top = 15 + Width = 40 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 322 + Top = 107 + Width = 26 + Height = 12 + Caption = #26579#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 409 + Top = 39 + Width = 39 + Height = 12 + Caption = #19994#21153#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 630 + Top = 15 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 186 + Top = 39 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 441 + Top = 99 + Width = 52 + Height = 12 + Caption = #20844#21496#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 576 + Top = 84 + Width = 52 + Height = 12 + Caption = #37197#36135#29366#24577 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 630 + Top = 39 + Width = 54 + Height = 12 + Caption = #39068' '#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label24: TLabel + Left = 714 + Top = 89 + Width = 52 + Height = 12 + Caption = #35746#21333#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 806 + Top = 11 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 231 + Top = 11 + Width = 100 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 2 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object CustomerNoName: TEdit + Tag = 2 + Left = 455 + Top = 11 + Width = 100 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 3 + OnChange = OrderNoChange + end + object JGFactoryName: TEdit + Tag = 2 + Left = 351 + Top = 103 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 4 + OnChange = OrderNoChange + end + object OrdPerson2: TEdit + Tag = 2 + Left = 455 + Top = 35 + Width = 100 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 5 + OnChange = OrderNoChange + end + object PRTCodeName: TEdit + Tag = 2 + Left = 687 + Top = 11 + Width = 100 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 6 + OnChange = OrderNoChange + end + object ConNo: TEdit + Tag = 2 + Left = 231 + Top = 35 + Width = 100 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 7 + OnChange = OrderNoChange + end + object OrdDefStr1: TEdit + Tag = 2 + Left = 495 + Top = 95 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 8 + OnChange = OrderNoChange + end + object ISPH: TComboBox + Tag = 2 + Left = 628 + Top = 80 + Width = 77 + Height = 20 + Style = csDropDownList + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 9 + OnChange = OrderNoChange + Items.Strings = ( + '' + #26410#37197#36135 + #24050#37197#36135) + end + object PrtColor: TEdit + Tag = 2 + Left = 687 + Top = 35 + Width = 100 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 10 + OnChange = OrderNoChange + end + object orderType: TComboBox + Tag = 2 + Left = 769 + Top = 85 + Width = 76 + Height = 20 + Style = csDropDownList + Ctl3D = False + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ItemHeight = 12 + ParentCtl3D = False + TabOrder = 11 + OnChange = OrderNoChange + Items.Strings = ( + #27491#24120#21333 + #21098#26679#21333) + end + object prtcode: TEdit + Tag = 2 + Left = 861 + Top = 7 + Width = 76 + Height = 20 + TabOrder = 12 + OnChange = OrderNoChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 149 + Width = 1129 + Height = 354 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = v1PRTOrderQty + 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 + item + Kind = skSum + Column = v1Column13 + end + item + Kind = skSum + Column = v1Column14 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson2' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 73 + end + object v1OrdDate: TcxGridDBColumn + Caption = #25490#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 94 + end + object v1Column7: TcxGridDBColumn + Caption = #24635#35746#21333#21495 + DataBinding.FieldName = 'KHorderNo' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column6: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'prtcode' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'PRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 80 + end + object v1MPrtSpec: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'PrtSpec' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column1: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column8: TcxGridDBColumn + Caption = #39068#33394#33521#25991 + DataBinding.FieldName = 'SOrdDefStr4' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column9: TcxGridDBColumn + Caption = #24050#20570#24037#24207 + DataBinding.FieldName = 'GxName' + HeaderAlignmentHorz = taCenter + Width = 120 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'PrtOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Content = cxStyle_fontclBlue + Styles.Footer = cxStyle_fontclBlue + Styles.Header = cxStyle_fontclBlue + Width = 60 + end + object v1ordderNote1: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'orderUnit' + HeaderAlignmentHorz = taCenter + Styles.Footer = cxStyle_fontclBlue + Styles.Header = cxStyle_fontclBlue + Width = 60 + end + object v1Column13: TcxGridDBColumn + Caption = #24211#23384#21305#25968 + DataBinding.FieldName = 'KC_RollNum' + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle_fontclOlive + Styles.Footer = cxStyle_fontclOlive + Styles.Header = cxStyle_fontclOlive + VisibleForCustomization = False + Width = 60 + end + object v1Column14: TcxGridDBColumn + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'KC_kgQty' + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle_fontclOlive + Styles.Footer = cxStyle_fontclOlive + Styles.Header = cxStyle_fontclOlive + VisibleForCustomization = False + Width = 60 + end + object Tv1Column1: TcxGridDBColumn + Caption = #23610#23544 + DataBinding.FieldName = 'SOrddefstr5' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object Tv1Column2: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'SOrdDefNote1' + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 127 + Width = 1129 + Height = 22 + Align = alTop + TabOrder = 3 + Visible = False + Properties.CustomButtons.Buttons = <> + Properties.Style = 9 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + #26410#23436#25104 + #24050#23436#25104 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectBottom = 22 + ClientRectRight = 1129 + ClientRectTop = 19 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 256 + Top = 176 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end + object cxStyleRepository1: TcxStyleRepository + Left = 157 + Top = 206 + PixelsPerInch = 96 + object cxStyle1: TcxStyle + AssignedValues = [svColor] + Color = clInactiveCaption + end + object cxStyle2: TcxStyle + AssignedValues = [svColor, svTextColor] + Color = 4707838 + TextColor = clBtnText + end + object cxStyle_gridRow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16311512 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_gridFoot: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridHead: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridGroupBox: TcxStyle + AssignedValues = [svColor, svFont] + Color = clMoneyGreen + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_yellow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + end + object cxStyle_fontBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_fontclFuchsia: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clFuchsia + end + object cxStyle_fontclPurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clPurple + end + object cxStyle_fontclGreen: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clGreen + end + object cxStyle_fontclBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object cxStyle_fontclTeal: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clTeal + end + object cxStyle_fontclOlive: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + end +end diff --git a/艾登贸易管理/U_ProductOrderNewList_JD.pas b/艾登贸易管理/U_ProductOrderNewList_JD.pas new file mode 100644 index 0000000..d8cbfd0 --- /dev/null +++ b/艾登贸易管理/U_ProductOrderNewList_JD.pas @@ -0,0 +1,809 @@ +unit U_ProductOrderNewList_JD; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, cxControls, + cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, + cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, RM_Dataset, RM_System, + RM_Common, RM_Class, RM_GridReport, RM_e_Xls, Menus, cxPC, cxCurrencyEdit, + Mask, DBCtrls, cxContainer, cxTextEdit, cxDBEdit, cxLookAndFeels, + cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu; + +type + TfrmProductOrderNewList_JD = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNo: TEdit; + TBExport: TToolButton; + v1OrderNo: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + Label4: TLabel; + CustomerNoName: TEdit; + v1MPRTCodeName: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + ToolButton1: TToolButton; + Label2: TLabel; + JGFactoryName: TEdit; + Label5: TLabel; + OrdPerson2: TEdit; + Label8: TLabel; + PRTCodeName: TEdit; + Label9: TLabel; + ConNo: TEdit; + Label11: TLabel; + OrdDefStr1: TEdit; + ToolButton2: TToolButton; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + v1Column4: TcxGridDBColumn; + ComboBox1: TComboBox; + v1Column1: TcxGridDBColumn; + cxTabControl1: TcxTabControl; + tchk: TToolButton; + tNochk: TToolButton; + v1ordderNote1: TcxGridDBColumn; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxStyle_gridRow: TcxStyle; + cxStyle_gridFoot: TcxStyle; + cxStyle_gridHead: TcxStyle; + cxStyle_gridGroupBox: TcxStyle; + cxStyle_yellow: TcxStyle; + cxStyle_Red: TcxStyle; + cxStyle_fontBlack: TcxStyle; + cxStyle_fontclFuchsia: TcxStyle; + cxStyle_fontclPurple: TcxStyle; + cxStyle_fontclGreen: TcxStyle; + cxStyle_fontclBlue: TcxStyle; + cxStyle_fontclTeal: TcxStyle; + cxStyle_fontclOlive: TcxStyle; + Label6: TLabel; + ISPH: TComboBox; + PrtColor: TEdit; + Label7: TLabel; + orderType: TComboBox; + Label24: TLabel; + v1MPrtSpec: TcxGridDBColumn; + v1Column13: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + Tv1Column1: TcxGridDBColumn; + Tv1Column2: TcxGridDBColumn; + Label10: TLabel; + prtcode: TEdit; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure tchkClick(Sender: TObject); + procedure tNochkClick(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + private + DQdate: TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData(): Boolean; + procedure InitGridFH(); + procedure SetStatus(); + { Private declarations } + public + FFInt, FCloth: Integer; + fDParameters1: string; + { Public declarations } + end; + +var + frmProductOrderNewList_JD: TfrmProductOrderNewList_JD; + +implementation + +uses + U_DataLink, U_OrderInPut, U_Fun; + +{$R *.dfm} +procedure TfrmProductOrderNewList_JD.SetStatus(); +begin +{ Tchk.Visible:=false; + tNochk.Visible:=false; + TBEdit.Enabled:=false; + TBDel.Enabled:=false; + if Trim(fDParameters1)='Ȩ' then + begin + + case cxTabControl1.TabIndex of + 0:begin + Tchk.Visible:=true; + tNochk.Visible:=false; + TBEdit.Enabled:=true; + TBDel.Enabled:=true; + end; + 1:begin + Tchk.Visible:=false; + tNochk.Visible:=true; + end; + 2:begin + Tchk.Visible:=false; + tNochk.Visible:=false; + end; + end; + end + else + begin + case cxTabControl1.TabIndex of + 0:begin + + TBEdit.Enabled:=true; + TBDel.Enabled:=true; + end; + 1:begin + + end; + 2:begin + + end; + end; + end; } +end; + +procedure TfrmProductOrderNewList_JD.FormDestroy(Sender: TObject); +begin + frmProductOrderNewList_JD := nil; +end; + +procedure TfrmProductOrderNewList_JD.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmProductOrderNewList_JD.FormCreate(Sender: TObject); +begin + cxgrid1.Align := alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate := SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderNewList_JD.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid(self.Caption + tv1.Name, Tv1, 'ָʾ'); +end; + +procedure TfrmProductOrderNewList_JD.InitGrid(); +var + strwhere: string; +begin + strwhere := ''; + if cxTabControl1.TabIndex < 2 then + begin + strwhere := strwhere + ' and isnull(A.status,''0'')=''' + inttostr(cxTabControl1.TabIndex) + ''''; + end; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + sql.Clear; + sql.add('exec P_View_order_Jd :begdate,:enddate,:WSql'); + parameters.ParamByName('WSql').Value := strwhere; + Parameters.ParamByName('begdate').Value := FormatDateTime('yyyy-MM-dd', BegDate.DateTime); + Parameters.ParamByName('enddate').Value := FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1); + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); + finally + ADOQueryMain.EnableControls; + TBFind.Click; + end; +end; + +procedure TfrmProductOrderNewList_JD.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value := ' and FillTime>=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.DateTime)) + '''' + ' and FillTime<''' + Trim(FormatDateTime('yyyy-MM-dd', EndDate.DateTime + 1)) + ''''; + Open; + end; + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderNewList_JD.InitForm(); +begin + readCxGrid(self.Caption + tv1.Name, Tv1, 'ָʾ'); + if FCloth = 1 then + begin + v1Column4.Visible := True; + end + else + begin + v1Column4.Visible := False; + end; + BegDate.DateTime := SGetServerDate10(ADOQueryTemp) - 15; + EndDate.DateTime := SGetServerDate10(ADOQueryTemp); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 10* from JYOrder_Main Order by FillTime desc'); + Open; + end; + ComboBox1.Clear; + with ADOQueryTemp do + begin + First; + while not Eof do + begin + ComboBox1.Items.Add(Trim(ADOQueryTemp.fieldbyname('OrderNO').AsString)); + Next; + end; + end; + // InitGrid(); +end; + +procedure TfrmProductOrderNewList_JD.TBFindClick(Sender: TObject); +var + strwhere: string; +begin + if ADOQueryMain.Active = False then + Exit; + strwhere := SGetFilters(Panel1, 1, 2); + + SDofilter(ADOQueryMain, strwhere); + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); +end; + +procedure TfrmProductOrderNewList_JD.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; +{ if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; } + try + frmOrderInPut := TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState := 1; + FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString); + FOrderNo := Trim(Self.Order_Main.fieldbyname('OrderNo').AsString); + if ShowModal = 1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderNewList_JD.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; +{ if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select * from Contract_Cloth_LL A where exists (select * from JYOrder_Sub B where B.SubId=A.OrdSubId '); + SQL.Add(' and B.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''')'); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('Ѳݲɾ!','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('Ѳݲɾ!','ʾ',0); + Exit; + end; + {with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LLMX where OrdSubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('ϲɾ!','ʾ',0); + Exit; + end; } +{ with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub_AnPai where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('ѻزֲɾ!','ʾ',0); + Exit; + end; } + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + if DelData() then + begin + TBRafresh.Click; + end; +end; + +function TfrmProductOrderNewList_JD.DelData(): Boolean; +begin + try + Result := false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + ''''); + sql.Add('delete JYOrder_Sub where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + ''''); + ExecSQL; + end; + {with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + if IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; } + ADOQueryCmd.Connection.CommitTrans; + Result := True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result := False; + Application.MessageBox('ɾ쳣', 'ʾ', 0); + end; +end; + +procedure TfrmProductOrderNewList_JD.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then + Exit; + SelExportData(Tv1, ADOQueryMain, 'ָʾб'); +end; + +procedure TfrmProductOrderNewList_JD.TBPrintClick(Sender: TObject); +var + fPrintFile: string; + Porderno, PRTCodeName, funit: string; + i, j: Integer; +begin + if Order_Main.IsEmpty then + Exit; + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ָʾȱ.rmf'; + + if FileExists(fPrintFile) then + begin + RMVariables['begdate'] := FormatDateTime('yyyy-MM-dd', BegDate.DateTime) + ' - ' + FormatDateTime('yyyy-MM-dd', enddate.DateTime); + RMVariables['dtxz'] := formatdateTime('yyyy-MM-dd', Now); + RMVariables['zdr'] := Trim(dName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end + else + begin + Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf'), 'ʾ', 0); + end; + +end; + +procedure TfrmProductOrderNewList_JD.TBRafreshClick(Sender: TObject); +begin + if FFInt = 1 then + begin + InitGridFH(); + end + else + begin + InitGrid(); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 10* from JYOrder_Main Order by FillTime desc'); + Open; + end; + ComboBox1.Clear; + with ADOQueryTemp do + begin + First; + while not Eof do + begin + ComboBox1.Items.Add(Trim(ADOQueryTemp.fieldbyname('OrderNO').AsString)); + Next; + end; + end; + end; +end; + +procedure TfrmProductOrderNewList_JD.TBAddClick(Sender: TObject); +var + maxno: string; +begin + try + frmOrderInPut := TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState := 0; + FMainId := ''; + if ShowModal = 1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; + +end; + +procedure TfrmProductOrderNewList_JD.OrderNoChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmProductOrderNewList_JD.FormShow(Sender: TObject); +begin + SetStatus(); + InitForm(); +end; + +procedure TfrmProductOrderNewList_JD.TBTPClick(Sender: TObject); +var + FQty, FQty1, FMxQty, FPQty, FMxQtyS, FPQtyS: string; +begin +end; + +procedure TfrmProductOrderNewList_JD.CheckBox1Click(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmProductOrderNewList_JD.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderNewList_JD.Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id, id10: Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderNewList_JD.N1Click(Sender: TObject); +var + fPrintFile: string; + Porderno: string; +begin + if Order_Main.IsEmpty then + Exit; + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf'; + SDofilter(ADOQueryMain, ' OrderNoM=''' + Trim(Order_Main.fieldbyname('OrderNoM').AsString) + ''''); + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); + Porderno := Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end + else + begin + Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf'), 'ʾ', 0); + end; + SDofilter(ADOQueryMain, ''); + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); + Order_Main.Locate('ordernoM', Porderno, []); +end; + +procedure TfrmProductOrderNewList_JD.N2Click(Sender: TObject); +var + fPrintFile: string; + Porderno: string; +begin + if Order_Main.IsEmpty then + Exit; + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf'; + SDofilter(ADOQueryMain, ' OrderNoM=''' + Trim(Order_Main.fieldbyname('OrderNoM').AsString) + ''''); + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); + Porderno := Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end + else + begin + Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf'), 'ʾ', 0); + end; + SDofilter(ADOQueryMain, ''); + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); + Order_Main.Locate('ordernoM', Porderno, []); +end; + +procedure TfrmProductOrderNewList_JD.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + try + frmOrderInPut := TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState := 1; + FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Enabled := False; + TBSave.Visible := False; + ScrollBox1.Enabled := False; + Tv1.OptionsSelection.CellSelect := False; + if ShowModal = 1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderNewList_JD.ToolButton2Click(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + try + frmOrderInPut := TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState := 1; + CopyInt := 99; + FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString); + if ShowModal = 1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderNewList_JD.ToolButton3Click(Sender: TObject); +begin + ModalResult := 1; +end; + +procedure TfrmProductOrderNewList_JD.tchkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from JYOrder_main '); + sql.Add('where mainID=' + quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + open; + edit; + fieldbyname('status').Value := '1'; + post; + end; + application.MessageBox('ҵ˳ɹ', 'ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ҵʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmProductOrderNewList_JD.tNochkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + exit; + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from JYOrder_sub '); + sql.Add('where mainID=' + quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('and isnull(substatus,'''')>''0'' '); + open; + if not ADOQueryCmd.IsEmpty then + begin + application.MessageBox('˵Ѿ ܳˣ', 'ʾϢ', 0); + exit; + end; + end; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from JYOrder_main '); + sql.Add('where mainID=' + quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + open; + edit; + fieldbyname('status').Value := '0'; + post; + end; + application.MessageBox('˳ɹ', 'ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('˳ʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmProductOrderNewList_JD.cxTabControl1Change(Sender: TObject); +begin + application.ProcessMessages; + initGrid(); +end; + +procedure TfrmProductOrderNewList_JD.OrderNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key = #13 then + begin + if Length(Trim(OrderNo.Text)) < 4 then + Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + sql.Clear; + sql.add('exec P_View_order_Jd :begdate,:enddate,:WSql'); + parameters.ParamByName('WSql').Value := ' and A.OrderNo like ''' + '%' + Trim(OrderNo.Text) + '%' + ''''; + parameters.ParamByName('begdate').Value := '2013-12-01'; + parameters.ParamByName('enddate').Value := SGetServerDate10(ADOQueryCmd); + Open; + end; + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +end. + diff --git a/艾登贸易管理/U_ProductOrderNewList_JD_copy1.dfm b/艾登贸易管理/U_ProductOrderNewList_JD_copy1.dfm new file mode 100644 index 0000000..28d7163 --- /dev/null +++ b/艾登贸易管理/U_ProductOrderNewList_JD_copy1.dfm @@ -0,0 +1,955 @@ +object frmProductOrderNewList_JD_copy1: TfrmProductOrderNewList_JD_copy1 + Left = 155 + Top = 90 + Width = 1145 + Height = 595 + Caption = #29983#20135#25351#31034#21333 + 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 = 1129 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 106 + Visible = False + OnClick = ToolButton3Click + end + object TBAdd: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + OnClick = TBAddClick + end + object tchk: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #19994#21153#23457#26680 + ImageIndex = 41 + Visible = False + OnClick = tchkClick + end + object tNochk: TToolButton + Left = 339 + Top = 0 + AutoSize = True + Caption = #23457#26680#25764#38144 + ImageIndex = 86 + Visible = False + OnClick = tNochkClick + end + object TBEdit: TToolButton + Left = 426 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = TBEditClick + end + object ToolButton2: TToolButton + Left = 489 + Top = 0 + AutoSize = True + Caption = #22797#21046 + ImageIndex = 57 + Visible = False + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 552 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + Visible = False + OnClick = ToolButton1Click + end + object TBExport: TToolButton + Left = 615 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TBPrint: TToolButton + Left = 678 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + Visible = False + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 741 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + object ComboBox1: TComboBox + Left = 804 + Top = 3 + Width = 145 + Height = 24 + DropDownCount = 10 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ItemHeight = 16 + ParentFont = False + TabOrder = 0 + Visible = False + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1129 + Height = 65 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 186 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 410 + Top = 15 + Width = 40 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 322 + Top = 107 + Width = 26 + Height = 12 + Caption = #26579#21378 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 409 + Top = 39 + Width = 39 + Height = 12 + Caption = #19994#21153#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 630 + Top = 15 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 186 + Top = 39 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 441 + Top = 99 + Width = 52 + Height = 12 + Caption = #20844#21496#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 576 + Top = 84 + Width = 52 + Height = 12 + Caption = #37197#36135#29366#24577 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 630 + Top = 39 + Width = 54 + Height = 12 + Caption = #39068' '#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label24: TLabel + Left = 714 + Top = 89 + Width = 52 + Height = 12 + Caption = #35746#21333#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 76 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 231 + Top = 11 + Width = 100 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 2 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object CustomerNoName: TEdit + Tag = 2 + Left = 455 + Top = 11 + Width = 100 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 3 + OnChange = OrderNoChange + end + object JGFactoryName: TEdit + Tag = 2 + Left = 351 + Top = 103 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 4 + OnChange = OrderNoChange + end + object OrdPerson2: TEdit + Tag = 2 + Left = 455 + Top = 35 + Width = 100 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 5 + OnChange = OrderNoChange + end + object PRTCodeName: TEdit + Tag = 2 + Left = 687 + Top = 11 + Width = 100 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 6 + OnChange = OrderNoChange + end + object ConNo: TEdit + Tag = 2 + Left = 231 + Top = 35 + Width = 100 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 7 + OnChange = OrderNoChange + end + object OrdDefStr1: TEdit + Tag = 2 + Left = 495 + Top = 95 + Width = 76 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 8 + OnChange = OrderNoChange + end + object ISPH: TComboBox + Tag = 2 + Left = 628 + Top = 80 + Width = 77 + Height = 20 + Style = csDropDownList + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 9 + OnChange = OrderNoChange + Items.Strings = ( + '' + #26410#37197#36135 + #24050#37197#36135) + end + object PrtColor: TEdit + Tag = 2 + Left = 687 + Top = 35 + Width = 100 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 10 + OnChange = OrderNoChange + end + object orderType: TComboBox + Tag = 2 + Left = 769 + Top = 85 + Width = 76 + Height = 20 + Style = csDropDownList + Ctl3D = False + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ItemHeight = 12 + ParentCtl3D = False + TabOrder = 11 + OnChange = OrderNoChange + Items.Strings = ( + #27491#24120#21333 + #21098#26679#21333) + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 119 + Width = 1129 + Height = 354 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column2 + end + item + Kind = skSum + Column = v1Column3 + end + item + Kind = skSum + Column = v1Column5 + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column24 + end + item + Kind = skSum + Column = v1Column13 + end + item + Kind = skSum + Column = v1Column14 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 94 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson2' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 73 + end + object v1Column7: TcxGridDBColumn + Caption = #23458#25143#35746#21333#21495 + DataBinding.FieldName = 'KHorderNo' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column6: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'prtcode' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'PRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 80 + end + object v1MPrtSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'PrtSpec' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column1: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column8: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'SOrddefstr1' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1Column9: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'prtHX' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'PrtOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Content = cxStyle_fontclBlue + Styles.Footer = cxStyle_fontclBlue + Styles.Header = cxStyle_fontclBlue + Width = 60 + end + object v1ordderNote1: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'orderUnit' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v1Column2: TcxGridDBColumn + Caption = #20837#24211#21305#25968 + DataBinding.FieldName = 'RK_RollNum' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle_fontclGreen + Styles.Footer = cxStyle_fontclGreen + Styles.Header = cxStyle_fontclGreen + Width = 60 + end + object v1Column3: TcxGridDBColumn + Caption = #20837#24211#25968#37327 + DataBinding.FieldName = 'RK_Qty' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle_fontclGreen + Styles.Footer = cxStyle_fontclGreen + Styles.Header = cxStyle_fontclGreen + Width = 60 + end + object v1Column5: TcxGridDBColumn + Caption = #20986#24211#21305#25968 + DataBinding.FieldName = 'CK_RollNum' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle_fontclTeal + Styles.Footer = cxStyle_fontclTeal + Styles.Header = cxStyle_fontclTeal + Width = 60 + end + object v1Column24: TcxGridDBColumn + Caption = #20986#24211#25968#37327 + DataBinding.FieldName = 'CK_Qty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = cxStyle_fontclTeal + Styles.Footer = cxStyle_fontclTeal + Styles.Header = cxStyle_fontclTeal + Width = 59 + end + object v1Column13: TcxGridDBColumn + Caption = #24211#23384#21305#25968 + DataBinding.FieldName = 'KC_RollNum' + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle_fontclOlive + Styles.Footer = cxStyle_fontclOlive + Styles.Header = cxStyle_fontclOlive + VisibleForCustomization = False + Width = 60 + end + object v1Column14: TcxGridDBColumn + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'KC_kgQty' + Visible = False + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle_fontclOlive + Styles.Footer = cxStyle_fontclOlive + Styles.Header = cxStyle_fontclOlive + VisibleForCustomization = False + Width = 60 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 97 + Width = 1129 + Height = 22 + Align = alTop + TabOrder = 3 + Visible = False + Properties.CustomButtons.Buttons = <> + Properties.Style = 9 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + #19994#21153#36755#20837 + #19994#21153#24050#23457#26680 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectBottom = 22 + ClientRectRight = 1129 + ClientRectTop = 19 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = Order_Main + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 256 + Top = 176 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end + object cxStyleRepository1: TcxStyleRepository + Left = 157 + Top = 206 + PixelsPerInch = 96 + object cxStyle1: TcxStyle + AssignedValues = [svColor] + Color = clInactiveCaption + end + object cxStyle2: TcxStyle + AssignedValues = [svColor, svTextColor] + Color = 4707838 + TextColor = clBtnText + end + object cxStyle_gridRow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16311512 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_gridFoot: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridHead: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridGroupBox: TcxStyle + AssignedValues = [svColor, svFont] + Color = clMoneyGreen + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_yellow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object cxStyle_Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + end + object cxStyle_fontBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_fontclFuchsia: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clFuchsia + end + object cxStyle_fontclPurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clPurple + end + object cxStyle_fontclGreen: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clGreen + end + object cxStyle_fontclBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object cxStyle_fontclTeal: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clTeal + end + object cxStyle_fontclOlive: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + end +end diff --git a/艾登贸易管理/U_ProductOrderNewList_JD_copy1.pas b/艾登贸易管理/U_ProductOrderNewList_JD_copy1.pas new file mode 100644 index 0000000..151e5ed --- /dev/null +++ b/艾登贸易管理/U_ProductOrderNewList_JD_copy1.pas @@ -0,0 +1,795 @@ +unit U_ProductOrderNewList_JD_copy1; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus, cxPC, cxCurrencyEdit, Mask, DBCtrls, cxContainer, cxTextEdit, + cxDBEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, + dxBarBuiltInMenu; + +type + TfrmProductOrderNewList_JD_copy1 = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNo: TEdit; + TBExport: TToolButton; + v1OrderNo: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1CustomerNoName: TcxGridDBColumn; + Label4: TLabel; + CustomerNoName: TEdit; + v1MPRTCodeName: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + ToolButton1: TToolButton; + Label2: TLabel; + JGFactoryName: TEdit; + Label5: TLabel; + OrdPerson2: TEdit; + Label8: TLabel; + PRTCodeName: TEdit; + Label9: TLabel; + ConNo: TEdit; + Label11: TLabel; + OrdDefStr1: TEdit; + ToolButton2: TToolButton; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + v1Column4: TcxGridDBColumn; + ComboBox1: TComboBox; + v1Column1: TcxGridDBColumn; + cxTabControl1: TcxTabControl; + tchk: TToolButton; + tNochk: TToolButton; + v1ordderNote1: TcxGridDBColumn; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxStyle_gridRow: TcxStyle; + cxStyle_gridFoot: TcxStyle; + cxStyle_gridHead: TcxStyle; + cxStyle_gridGroupBox: TcxStyle; + cxStyle_yellow: TcxStyle; + cxStyle_Red: TcxStyle; + cxStyle_fontBlack: TcxStyle; + cxStyle_fontclFuchsia: TcxStyle; + cxStyle_fontclPurple: TcxStyle; + cxStyle_fontclGreen: TcxStyle; + cxStyle_fontclBlue: TcxStyle; + cxStyle_fontclTeal: TcxStyle; + cxStyle_fontclOlive: TcxStyle; + Label6: TLabel; + ISPH: TComboBox; + PrtColor: TEdit; + Label7: TLabel; + orderType: TComboBox; + Label24: TLabel; + v1MPrtSpec: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column13: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + v1Column24: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure tchkClick(Sender: TObject); + procedure tNochkClick(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + procedure SetStatus(); + { Private declarations } + public + FFInt,FCloth:Integer; + fDParameters1:string; + { Public declarations } + end; + +var + frmProductOrderNewList_JD_copy1: TfrmProductOrderNewList_JD_copy1; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun; + +{$R *.dfm} +procedure TfrmProductOrderNewList_JD_copy1.SetStatus(); +begin +{ Tchk.Visible:=false; + tNochk.Visible:=false; + TBEdit.Enabled:=false; + TBDel.Enabled:=false; + if Trim(fDParameters1)='Ȩ' then + begin + + case cxTabControl1.TabIndex of + 0:begin + Tchk.Visible:=true; + tNochk.Visible:=false; + TBEdit.Enabled:=true; + TBDel.Enabled:=true; + end; + 1:begin + Tchk.Visible:=false; + tNochk.Visible:=true; + end; + 2:begin + Tchk.Visible:=false; + tNochk.Visible:=false; + end; + end; + end + else + begin + case cxTabControl1.TabIndex of + 0:begin + + TBEdit.Enabled:=true; + TBDel.Enabled:=true; + end; + 1:begin + + end; + 2:begin + + end; + end; + end; } +end; + +procedure TfrmProductOrderNewList_JD_copy1.FormDestroy(Sender: TObject); +begin + frmProductOrderNewList_JD_copy1:=nil; +end; + +procedure TfrmProductOrderNewList_JD_copy1.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderNewList_JD_copy1.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderNewList_JD_copy1.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid(self.Caption+tv1.Name,Tv1,'ָʾ'); +end; + +procedure TfrmProductOrderNewList_JD_copy1.InitGrid(); +var + strwhere:string; +begin + strwhere:=''; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_order_Jd :begdate,:enddate,:WSql') ; + parameters.ParamByName('WSql').Value:=strwhere; + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + TBFind.Click; + end; +end; + +procedure TfrmProductOrderNewList_JD_copy1.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderNewList_JD_copy1.InitForm(); +begin + readCxGrid(self.Caption+tv1.Name,Tv1,'ָʾ'); + if FCloth=1 then + begin + v1Column4.Visible:=True; + end else + begin + v1Column4.Visible:=False; + end; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-15; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 10* from JYOrder_Main Order by FillTime desc'); + Open; + end; + ComboBox1.Clear; + with ADOQueryTemp do + begin + First; + while not Eof do + begin + ComboBox1.Items.Add(Trim(ADOQueryTemp.fieldbyname('OrderNO').AsString)); + Next; + end; + end; + // InitGrid(); +end; + +procedure TfrmProductOrderNewList_JD_copy1.TBFindClick(Sender: TObject); +var + strwhere :string; +begin + if ADOQueryMain.Active=False then Exit; + strwhere:=SGetFilters(Panel1,1,2); + + SDofilter(ADOQueryMain,strwhere); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderNewList_JD_copy1.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; +{ if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; } + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + FOrderNo:=Trim(Self.Order_Main.fieldbyname('OrderNo').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderNewList_JD_copy1.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; +{ if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select * from Contract_Cloth_LL A where exists (select * from JYOrder_Sub B where B.SubId=A.OrdSubId '); + SQL.Add(' and B.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''')'); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('Ѳݲɾ!','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YF_Money_CR where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('Ѳݲɾ!','ʾ',0); + Exit; + end; + {with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Contract_Cloth_LLMX where OrdSubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('ϲɾ!','ʾ',0); + Exit; + end; } +{ with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub_AnPai where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('ѻزֲɾ!','ʾ',0); + Exit; + end; } + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if DelData() then + begin + TBRafresh.Click; + end; +end; + +function TfrmProductOrderNewList_JD_copy1.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + sql.Add('delete JYOrder_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + {with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + if IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; } + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderNewList_JD_copy1.TBExportClick(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv1,ADOQueryMain,'ָʾб'); +end; + +procedure TfrmProductOrderNewList_JD_copy1.TBPrintClick(Sender: TObject); +var + fPrintFile:string; + Porderno,PRTCodeName,funit:string; + i,j:Integer; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾȱ.rmf' ; + + if FileExists(fPrintFile) then + begin + RMVariables['begdate']:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime)+' - '+FormatDateTime('yyyy-MM-dd',enddate.DateTime); + RMVariables['dtxz']:=formatdateTime('yyyy-MM-dd',Now); + RMVariables['zdr']:=Trim(dName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + +end; + +procedure TfrmProductOrderNewList_JD_copy1.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + InitGridFH(); + end + else + begin + InitGrid(); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select Top 10* from JYOrder_Main Order by FillTime desc'); + Open; + end; + ComboBox1.Clear; + with ADOQueryTemp do + begin + First; + while not Eof do + begin + ComboBox1.Items.Add(Trim(ADOQueryTemp.fieldbyname('OrderNO').AsString)); + Next; + end; + end; + end; +end; + +procedure TfrmProductOrderNewList_JD_copy1.TBAddClick(Sender: TObject); +var + maxno:string; +begin + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=0; + FMainId:=''; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; + + +end; + +procedure TfrmProductOrderNewList_JD_copy1.OrderNoChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmProductOrderNewList_JD_copy1.FormShow(Sender: TObject); +begin + SetStatus(); + InitForm(); +end; + +procedure TfrmProductOrderNewList_JD_copy1.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmProductOrderNewList_JD_copy1.CheckBox1Click(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmProductOrderNewList_JD_copy1.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderNewList_JD_copy1.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderNewList_JD_copy1.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewList_JD_copy1.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderNewList_JD_copy1.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=1; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Enabled:=False; + TBSave.Visible:=False; + ScrollBox1.Enabled:=False; + Tv1.OptionsSelection.CellSelect:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderNewList_JD_copy1.ToolButton2Click(Sender: TObject); +begin + if Order_Main.IsEmpty then Exit; + try + frmOrderInPut:=TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState:=1; + CopyInt:=99; + FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderNewList_JD_copy1.ToolButton3Click(Sender: TObject); +begin + ModalResult:=1; +end; + +procedure TfrmProductOrderNewList_JD_copy1.tchkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from JYOrder_main '); + sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + open; + edit; + fieldbyname('status').Value:='1'; + post; + end; + application.MessageBox('ҵ˳ɹ','ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ҵʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmProductOrderNewList_JD_copy1.tNochkClick(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from JYOrder_sub '); + sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + sql.Add('and isnull(substatus,'''')>''0'' '); + open; + if not ADOQueryCmd.IsEmpty then + begin + application.MessageBox('˵Ѿ ܳˣ','ʾϢ',0); + exit; + end; + end; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from JYOrder_main '); + sql.Add('where mainID='+quotedstr(trim(Order_Main.fieldbyname('mainID').AsString))); + open; + edit; + fieldbyname('status').Value:='0'; + post; + end; + application.MessageBox('˳ɹ','ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('˳ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmProductOrderNewList_JD_copy1.cxTabControl1Change(Sender: TObject); +begin + application.ProcessMessages; + initGrid(); +end; + +procedure TfrmProductOrderNewList_JD_copy1.OrderNoKeyPress(Sender: TObject; + var Key: Char); +begin + if Key=#13 then + begin + if Length(Trim(OrderNo.Text))<4 then Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.add('exec P_View_order_Jd :begdate,:enddate,:WSql') ; + parameters.ParamByName('WSql').Value:=' and B.OrderNo like '''+'%'+Trim(OrderNo.Text)+'%'+''''; + parameters.ParamByName('begdate').Value:='2013-12-01'; + parameters.ParamByName('enddate').Value:=SGetServerDate10(ADOQueryCmd); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +end. diff --git a/艾登贸易管理/U_ProductOrderNewList_PB.dfm b/艾登贸易管理/U_ProductOrderNewList_PB.dfm new file mode 100644 index 0000000..e36ccdd --- /dev/null +++ b/艾登贸易管理/U_ProductOrderNewList_PB.dfm @@ -0,0 +1,959 @@ +object frmProductOrderNewList_PB: TfrmProductOrderNewList_PB + Left = 393 + Top = 242 + Width = 1466 + Height = 681 + Caption = #29983#20135#25351#31034#21333#25490#29256 + 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 = 1450 + Height = 62 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 106 + Visible = False + OnClick = ToolButton3Click + end + object TBAdd: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + OnClick = TBAddClick + end + object ToolButton2: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #22797#21046 + ImageIndex = 57 + Visible = False + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 58 + OnClick = ToolButton1Click + end + object TBExport: TToolButton + Left = 378 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 75 + OnClick = TBExportClick + end + object TFJ: TToolButton + Left = 441 + Top = 0 + AutoSize = True + Caption = #25351#31034#21333#38468#20214 + ImageIndex = 57 + Wrap = True + OnClick = TFJClick + end + object TBPrint: TToolButton + Left = 0 + Top = 30 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object ToolButton4: TToolButton + Left = 63 + Top = 30 + AutoSize = True + Caption = #21512#24182#25171#21360 + ImageIndex = 12 + OnClick = ToolButton4Click + end + object ToolButton7: TToolButton + Left = 150 + Top = 30 + AutoSize = True + Caption = #35746#21333#21512#24182 + ImageIndex = 16 + Visible = False + OnClick = ToolButton7Click + end + object ToolButton8: TToolButton + Left = 237 + Top = 30 + AutoSize = True + Caption = #21462#28040#21512#24182 + ImageIndex = 56 + Visible = False + OnClick = ToolButton8Click + end + object ToolButton6: TToolButton + Left = 324 + Top = 30 + AutoSize = True + Caption = #29983#20135#25171#21360 + ImageIndex = 12 + OnClick = ToolButton6Click + end + object ToolButton9: TToolButton + Left = 411 + Top = 30 + Caption = #35746#21333#25490#29256 + ImageIndex = 41 + OnClick = ToolButton9Click + end + object ToolButton10: TToolButton + Left = 506 + Top = 30 + Caption = #25764#38144#25490#29256 + ImageIndex = 99 + OnClick = ToolButton10Click + end + object TBClose: TToolButton + Left = 601 + Top = 30 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 62 + Width = 1450 + Height = 65 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 42 + Top = 15 + Width = 52 + Height = 12 + Caption = #21046#21333#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 363 + Top = 43 + Width = 40 + Height = 12 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 1018 + Top = 11 + Width = 52 + Height = 12 + Caption = #20844#21496#21488#22836 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label9: TLabel + Left = 207 + Top = 39 + Width = 39 + Height = 12 + Caption = #21512#21516#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 1017 + Top = 35 + Width = 54 + Height = 12 + Caption = #33337' '#26679 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label11: TLabel + Left = 863 + Top = 35 + Width = 39 + Height = 12 + Caption = #19994#21153#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label5: TLabel + Left = 513 + Top = 15 + Width = 52 + Height = 12 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 721 + Top = 11 + Width = 52 + Height = 12 + Caption = #20132#36135#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label3: TLabel + Left = 366 + Top = 15 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 196 + Top = 13 + Width = 52 + Height = 12 + Caption = #24635#35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 95 + Top = 11 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 95 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object CustomerNoName: TEdit + Tag = 2 + Left = 407 + Top = 39 + Width = 76 + Height = 20 + TabOrder = 2 + OnChange = ConNoChange + end + object SYRName: TEdit + Tag = 2 + Left = 1073 + Top = 7 + Width = 76 + Height = 20 + TabOrder = 3 + Visible = False + OnChange = OrderNoChange + end + object ConNo: TEdit + Tag = 2 + Left = 248 + Top = 35 + Width = 77 + Height = 20 + TabOrder = 4 + OnChange = ConNoChange + OnKeyPress = ConNoKeyPress + end + object MPRTJiBenNote: TEdit + Tag = 2 + Left = 1073 + Top = 31 + Width = 76 + Height = 20 + TabOrder = 5 + Visible = False + OnChange = OrderNoChange + end + object OrdPerson2: TEdit + Tag = 2 + Left = 907 + Top = 32 + Width = 76 + Height = 20 + TabOrder = 6 + Visible = False + OnChange = OrderNoChange + end + object prtcode: TEdit + Tag = 2 + Left = 568 + Top = 11 + Width = 76 + Height = 20 + TabOrder = 7 + OnChange = ConNoChange + end + object DlyDate: TDateTimePicker + Left = 774 + Top = 7 + Width = 85 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 8 + Visible = False + OnChange = DlyDateChange + end + object OrderNo: TEdit + Tag = 2 + Left = 408 + Top = 11 + Width = 77 + Height = 20 + TabOrder = 9 + OnChange = OrderNoChange + OnKeyPress = OrderNoKeyPress + end + object DateTimePicker1: TDateTimePicker + Left = 774 + Top = 35 + Width = 86 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 10 + Visible = False + end + object ZOrderNo: TEdit + Tag = 2 + Left = 249 + Top = 9 + Width = 77 + Height = 20 + TabOrder = 11 + OnChange = ConNoChange + OnKeyPress = ConNoKeyPress + end + end + object cxSplitter1: TcxSplitter + Left = 0 + Top = 634 + Width = 1450 + Height = 8 + HotZoneClassName = 'TcxMediaPlayer9Style' + AlignSplitter = salBottom + end + object Panel2: TPanel + Left = 420 + Top = 188 + Width = 361 + Height = 93 + TabOrder = 3 + Visible = False + object Label2: TLabel + Left = 55 + Top = 15 + Width = 80 + Height = 19 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Button2: TButton + Left = 35 + Top = 59 + Width = 75 + Height = 25 + Caption = #25171#21360 + TabOrder = 0 + OnClick = Button2Click + end + object Button3: TButton + Left = 235 + Top = 59 + Width = 75 + Height = 25 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button3Click + end + object Edit1: TEdit + Tag = 2 + Left = 141 + Top = 12 + Width = 180 + Height = 27 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 2 + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 127 + Width = 1450 + Height = 22 + Align = alTop + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 4 + Properties.CustomButtons.Buttons = <> + Properties.Style = 9 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + #26410#25490#29256 + #24050#25490#29256 + #20840#37096) + OnChange = cxTabControl1Change + ClientRectBottom = 22 + ClientRectRight = 1450 + ClientRectTop = 19 + end + object Panel3: TPanel + Left = 0 + Top = 149 + Width = 1450 + Height = 485 + Align = alClient + Caption = 'Panel3' + TabOrder = 5 + object cxGrid2: TcxGrid + Left = 1 + Top = 1 + Width = 1448 + Height = 483 + Align = alClient + TabOrder = 0 + object TV2: TcxGridDBTableView + PopupMenu = PopupMenu1 + Navigator.Buttons.CustomButtons = <> + OnFocusedRecordChanged = TV2FocusedRecordChanged + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + Column = v1PRTOrderQty + end + item + Format = '0' + Position = spFooter + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1PRTOrderQty + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object V2PRTCode: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'PRTCode' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object V2PRTCodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'PRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 75 + end + object V2Column1: TcxGridDBColumn + Caption = #27454#21495 + DataBinding.FieldName = 'PRTSPEC' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object V2PRTMF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'PRTMF' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 95 + end + object V2PRTKZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'PRTKZ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 73 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Styles.Header = DataLink_TradeManage.handBlack + Width = 103 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #39068#33394'('#33521#25991')' + DataBinding.FieldName = 'SOrddefstr4' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.FonePurple + Width = 115 + end + object TV2Column1: TcxGridDBColumn + Caption = #39068#33394#33521#25991 + DataBinding.FieldName = 'SOrdDefStr4' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object v1Column4: TcxGridDBColumn + Caption = #23610#23544 + DataBinding.FieldName = 'SOrddefstr5' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1SOrddefstr2: TcxGridDBColumn + Caption = #30830#35748#33394#21345 + DataBinding.FieldName = 'SOrddefstr2' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 87 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.FontBlue + Width = 82 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.FontBlue + Width = 77 + end + object cxSOrdDefNote1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'SOrdDefNote1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 161 + end + object TV2Column2: TcxGridDBColumn + Caption = #24635#35746#21333#21495 + DataBinding.FieldName = 'ZOrderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object TV2Column3: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object TV2Column4: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object TV2Column5: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'ssel' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object TV2Column6: TcxGridDBColumn + Caption = #25490#29256 + DataBinding.FieldName = 'PBFlag' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object TV2Column7: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object TV2Column8: TcxGridDBColumn + Caption = #20132#36135#26102#38388 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object TV2Column9: TcxGridDBColumn + Caption = #25490#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 60 + end + object TV2Column10: TcxGridDBColumn + Caption = #25490#29256#26102#38388 + DataBinding.FieldName = 'PBTime' + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + end + object Panel4: TPanel + Left = 616 + Top = 212 + Width = 361 + Height = 93 + TabOrder = 6 + Visible = False + object Label6: TLabel + Left = 55 + Top = 15 + Width = 80 + Height = 19 + Caption = #20135#21697#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Button1: TButton + Left = 35 + Top = 59 + Width = 75 + Height = 25 + Caption = #25171#21360 + TabOrder = 0 + OnClick = Button2Click + end + object Button4: TButton + Left = 235 + Top = 59 + Width = 75 + Height = 25 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button3Click + end + object Edit2: TEdit + Tag = 2 + Left = 141 + Top = 12 + Width = 180 + Height = 27 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 2 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + PopupMenus = <> + Left = 552 + Top = 167 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 540 + Top = 256 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 288 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 771 + Top = 272 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 256 + Top = 176 + object N2: TMenuItem + Caption = #20840#36873 + OnClick = N2Click + end + object N1: TMenuItem + Caption = #20840#24323 + OnClick = N1Click + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end + object ADOQuerySub: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 272 + Top = 427 + end + object DataSource2: TDataSource + DataSet = CDS_Sub + Left = 236 + Top = 428 + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 396 + Top = 288 + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, 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 + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 204 + Top = 228 + ReportData = {} + end + object OpenDialog1: TOpenDialog + Left = 688 + Top = 144 + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 816 + Top = 216 + end + object ADOQueryImageYS: TADOQuery + Connection = DataLink_TradeManage.ADOLink + EnableBCD = False + Parameters = <> + Left = 776 + Top = 491 + end + object DSImage: TDataSource + DataSet = ADOQueryImageYS + Left = 724 + Top = 500 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 192 + Top = 428 + end +end diff --git a/艾登贸易管理/U_ProductOrderNewList_PB.pas b/艾登贸易管理/U_ProductOrderNewList_PB.pas new file mode 100644 index 0000000..b6a26b8 --- /dev/null +++ b/艾登贸易管理/U_ProductOrderNewList_PB.pas @@ -0,0 +1,1572 @@ +unit U_ProductOrderNewList_PB; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, cxControls, + cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, + cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, RM_Dataset, RM_System, + RM_Common, RM_Class, RM_GridReport, RM_e_Xls, Menus, cxButtonEdit, + cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, ComObj, dxBarBuiltInMenu, + cxPC, cxContainer, cxImage, cxDBEdit, 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 + FdDy = record + inc: integer; //ͻ׽־ + FDdys: string[32]; //ͻ׽ + FdDysName: string[32]; //ͻ׽ + end; + + TfrmProductOrderNewList_PB = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBAdd: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Label1: TLabel; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + TBExport: TToolButton; + Order_Main: TClientDataSet; + RMXLSExport1: TRMXLSExport; + Label4: TLabel; + CustomerNoName: TEdit; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + ToolButton1: TToolButton; + Label8: TLabel; + SYRName: TEdit; + Label9: TLabel; + ConNo: TEdit; + Label10: TLabel; + MPRTJiBenNote: TEdit; + Label11: TLabel; + OrdPerson2: TEdit; + ToolButton2: TToolButton; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + cxSplitter1: TcxSplitter; + ADOQuerySub: TADOQuery; + DataSource2: TDataSource; + TFJ: TToolButton; + RMDBMain: TRMDBDataSet; + RM1: TRMGridReport; + ToolButton4: TToolButton; + OpenDialog1: TOpenDialog; + N1: TMenuItem; + ToolButton6: TToolButton; + ToolButton7: TToolButton; + ToolButton8: TToolButton; + Panel2: TPanel; + Button2: TButton; + Button3: TButton; + Label2: TLabel; + Edit1: TEdit; + Label5: TLabel; + prtcode: TEdit; + ADOQuery1: TADOQuery; + cxTabControl1: TcxTabControl; + ToolButton9: TToolButton; + ToolButton10: TToolButton; + Panel3: TPanel; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + V2PRTCode: TcxGridDBColumn; + V2PRTCodeName: TcxGridDBColumn; + V2Column1: TcxGridDBColumn; + V2PRTMF: TcxGridDBColumn; + V2PRTKZ: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + cxGridDBColumn1: TcxGridDBColumn; + TV2Column1: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1SOrddefstr2: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + cxSOrdDefNote1: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ADOQueryImageYS: TADOQuery; + DSImage: TDataSource; + CDS_Sub: TClientDataSet; + TV2Column2: TcxGridDBColumn; + TV2Column3: TcxGridDBColumn; + TV2Column4: TcxGridDBColumn; + TV2Column5: TcxGridDBColumn; + TV2Column6: TcxGridDBColumn; + TV2Column7: TcxGridDBColumn; + Panel4: TPanel; + Label6: TLabel; + Button1: TButton; + Button4: TButton; + Edit2: TEdit; + TV2Column8: TcxGridDBColumn; + TV2Column9: TcxGridDBColumn; + Label7: TLabel; + DlyDate: TDateTimePicker; + Label3: TLabel; + OrderNo: TEdit; + DateTimePicker1: TDateTimePicker; + Label12: TLabel; + ZOrderNo: TEdit; + TV2Column10: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBExportClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + procedure ConNoKeyPress(Sender: TObject; var Key: Char); + procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); + procedure Button1Click(Sender: TObject); + procedure Image2Click(Sender: TObject); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure TFJClick(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton7Click(Sender: TObject); + procedure ToolButton8Click(Sender: TObject); + procedure ToolButton6Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure ToolButton9Click(Sender: TObject); + procedure ToolButton10Click(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure TV2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure DlyDateChange(Sender: TObject); + procedure ConNoChange(Sender: TObject); + private + DQdate: TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData(): Boolean; + procedure InitGridFH(); + procedure InitSub(); + procedure CJEWM(FMainid: string; FSubid: string); + procedure InitImageYS(fwbid: string); + procedure SelExportDatae(FTv: TcxGridDBTableView; CDS_Sub: TClientDataSet; FTile: string); + { Private declarations } + public + FFInt, FCloth: Integer; + + { Public declarations } + end; + +var + frmProductOrderNewList_PB: TfrmProductOrderNewList_PB; + dFdDy: array[0..120] of FdDy; + +implementation + +uses + U_DataLink, U_OrderInPut, U_Fun, U_FjList_RZ, U_SelExportField; + +{$R *.dfm} +procedure TfrmProductOrderNewList_PB.InitSub(); +begin +// ADOQuerySub.Close; + if Order_Main.IsEmpty then + exit; + with ADOQuerySub do + begin + close; + sql.Clear; + sql.Add('select * from JYOrder_sub '); + sql.Add('where mainID =' + quotedstr((Order_Main.fieldbyname('mainID').AsString))); + open; + end; + SCreateCDS20(ADOQuerySub, CDS_Sub); + SInitCDSData20(ADOQuerySub, CDS_Sub); +end; + +procedure TfrmProductOrderNewList_PB.FormDestroy(Sender: TObject); +begin + frmProductOrderNewList_PB := nil; +end; + +procedure TfrmProductOrderNewList_PB.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmProductOrderNewList_PB.FormCreate(Sender: TObject); +begin + cxgrid2.Align := alClient; + DQdate := SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderNewList_PB.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('ָʾбFF', Tv2, 'ָʾ'); +end; + +procedure TfrmProductOrderNewList_PB.InitGrid(); +var + sqlwhere: string; +begin + sqlwhere := ''; + if Trim(DParameters1) <> 'Ȩ' then + begin + sqlwhere := sqlwhere + ' and Filler=''' + Trim(DName) + ''''; + end; +// if cxTabControl1.TabIndex < 2 then +// begin +// sqlwhere := sqlwhere + ' and isnull(A.status,''0'')=''' + inttostr(cxTabControl1.TabIndex) + ''''; +// end; + if cxTabControl1.TabIndex = 0 then + begin + sqlwhere := sqlwhere + ' and isnull(B.PBFlag,''δŰ'')=''δŰ'''; + + end; + if cxTabControl1.TabIndex = 1 then + begin + sqlwhere := sqlwhere + ' and isnull(B.PBFlag,''δŰ'')=''Ű'''; + end; + try + ADOQuerySub.DisableControls; + with ADOQuerySub do + begin + Filtered := False; + Close; + sql.Clear; + sql.add('exec P_View_Order_PB :begdate,:enddate,:WSql'); + Parameters.ParamByName('WSql').Value := sqlwhere; + Parameters.ParamByName('begdate').Value := FormatDateTime('yyyy-MM-dd', BegDate.DateTime); + Parameters.ParamByName('enddate').Value := FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1); +// ShowMessage(sql.text); + ExecSQL; + Open; + end; + SCreateCDS20(ADOQuerySub, CDS_Sub); + SInitCDSData20(ADOQuerySub, CDS_Sub); + + finally + ADOQuerySub.EnableControls; + end; +end; + +procedure TfrmProductOrderNewList_PB.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value := ' and FillTime>=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.DateTime)) + '''' + ' and FillTime<''' + Trim(FormatDateTime('yyyy-MM-dd', EndDate.DateTime + 1)) + ''''; + Open; + end; + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderNewList_PB.InitForm(); +begin + ReadCxGrid('ָʾбFF', Tv2, 'ָʾ'); + BegDate.DateTime := SGetServerDate10(ADOQueryTemp) - 15; + EndDate.DateTime := SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmProductOrderNewList_PB.TBFindClick(Sender: TObject); +begin + if ADOQuerySub.Active = False then + Exit; + SDofilter(ADOQuerySub, SGetFilters(Panel1, 1, 2)); + SCreateCDS20(ADOQuerySub, CDS_Sub); + SInitCDSData20(ADOQuerySub, CDS_Sub); +end; + +procedure TfrmProductOrderNewList_PB.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + + try + frmOrderInPut := TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState := 1; + FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString); + FOrderNo := Trim(Self.Order_Main.fieldbyname('OrderNo').AsString); + if ShowModal = 1 then + begin + InitGrid(); + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderNewList_PB.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; +{ if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲ˵!','ʾ',0); + Exit; + end; } + + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + if DelData() then + begin + Order_Main.Delete; + end; + InitGrid(); +end; + +function TfrmProductOrderNewList_PB.DelData(): Boolean; +begin + try + Result := false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + ''''); + sql.Add('delete JYOrder_Sub where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + ''''); + sql.Add('delete TP_File where WBID=''' + Trim(Order_Main.fieldbyname('Mainid').AsString) + ''' and TFType=''EWM'' '); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ָʾɾ'))); + sql.Add(',' + quotedstr(trim('ָʾţ' + trim(Order_Main.FieldByName('OrderNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + ExecSQL; + end; + {with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + if IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; } + ADOQueryCmd.Connection.CommitTrans; + Result := True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result := False; + Application.MessageBox('ɾ쳣', 'ʾ', 0); + end; +end; + +procedure TfrmProductOrderNewList_PB.TBExportClick(Sender: TObject); +var + str: string; +begin + if ADOQuerySub.IsEmpty then + Exit; +// SelExportData(Tv2, ADOQuerySub, 'ָʾб'); + + str := SGetFilters(Panel1, 1, 2); + str := str + 'ssel=true'; + SDofilter10(CDS_Sub, str); + + SelExportDatae(Tv2, CDS_Sub, 'ָʾŰб'); +end; + +procedure TfrmProductOrderNewList_PB.SelExportDatae(FTv: TcxGridDBTableView; CDS_Sub: TClientDataSet; FTile: string); +var + i, j: Integer; + fsj: string; +begin + if CDS_Sub.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; +// TcxGridToExcel('', cxGrid1); + ExportDataSource.DataSet := CDS_Sub; + CDS_Sub.Open; + if ShowModal = 1 then + begin + + end; + end; + frmSelExportField.Free; + except + + end; + InitGrid(); +end; + +procedure TfrmProductOrderNewList_PB.TBPrintClick(Sender: TObject); +var + fPrintFile: string; + Porderno: string; + i, j: Integer; +begin + if CDS_Sub.IsEmpty then + Exit; + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\װָʾ.rmf'; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*, ColorCount=(select isnull(Count(*),0) from JYOrder_Sub where MainId=A.MainId), '); + sql.add('ZQty=(select sum(PRTOrderQty) from JYOrder_Sub where MainId=A.MainId),'); + sql.Add('PrtImage=(select Top 1 FilesOther from TP_File X where X.WBID=B.PRTCode) '); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId '); + sql.Add(' Where A.MainId=''' + Trim(CDS_Sub.fieldbyname('MainId').AsString) + ''''); + sql.Add(' order by B.PRTCode,B.PRTCodeName,B.subID '); + Open; + end; + SCreateCDS20(ADOQueryPrint, CDS_Print); + SInitCDSData20(ADOQueryPrint, CDS_Print); + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end + else + begin + Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\װָʾ.rmf'), 'ʾ', 0); + exit; + end; +// Panel4.Visible:=True; + //Button1.Click; +end; + +procedure TfrmProductOrderNewList_PB.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderNewList_PB.TBAddClick(Sender: TObject); +var + maxno: string; +begin + try + frmOrderInPut := TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState := 0; + FMainId := ''; + if ShowModal = 1 then + begin + InitGrid(); + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderNewList_PB.OrderNoChange(Sender: TObject); +var + sqlwhere: string; +begin + if Length(OrderNo.Text) < 2 then + Exit; + sqlwhere := ''; + if Trim(DParameters1) <> 'Ȩ' then + begin + sqlwhere := sqlwhere + ' and Filler=''' + Trim(DName) + ''''; + end + else + begin + sqlwhere := sqlwhere + ' and A.orderno like ''' + '%' + Trim(OrderNo.Text) + '%' + ''''; + end; + + if cxTabControl1.TabIndex = 0 then + begin + sqlwhere := sqlwhere + ' and B.PBFlag=''δŰ'''; + + end; + if cxTabControl1.TabIndex = 1 then + begin + sqlwhere := sqlwhere + ' and B.PBFlag=''Ű'''; + end; + + try + ADOQuerySub.DisableControls; + with ADOQuerySub do + begin + Filtered := False; + Close; + sql.Clear; + sql.add('exec P_View_Order_PB :begdate,:enddate,:WSql'); +// if Trim(DParameters1) <> 'Ȩ' then +// begin +// Parameters.ParamByName('WSql').Value := ' and Filler=''' + Trim(DName) + ''''; +// end; +// begin +// Parameters.ParamByName('WSql').Value := ' and A.orderno like ''' + '%' + Trim(OrderNo.Text) + '%' + ''''; +// end; + Parameters.ParamByName('WSql').Value := sqlwhere; + Parameters.ParamByName('begdate').Value := FormatDateTime('yyyy-MM-dd', BegDate.DateTime); + Parameters.ParamByName('enddate').Value := FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1); +// Parameters.ParamByName('begdate').Value := '1899-01-01'; +// Parameters.ParamByName('enddate').Value := '2050-01-01'; + ExecSQL; + Open; + end; + + SCreateCDS20(ADOQuerySub, CDS_Sub); + SInitCDSData20(ADOQuerySub, CDS_Sub); + finally + ADOQuerySub.EnableControls; + end; +// end; +end; + +procedure TfrmProductOrderNewList_PB.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderNewList_PB.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + if ToolButton1.Visible = False then + Exit; + ToolButton1.Click; +end; + +procedure TfrmProductOrderNewList_PB.TBTPClick(Sender: TObject); +var + FQty, FQty1, FMxQty, FPQty, FMxQtyS, FPQtyS: string; +begin +end; + +procedure TfrmProductOrderNewList_PB.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderNewList_PB.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderNewList_PB.Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id, id10: Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderNewList_PB.v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderNewList_PB.N1Click(Sender: TObject); +//var +// fPrintFile: string; +// Porderno: string; +begin + SelOKNo(CDS_Sub, false); +// if Order_Main.IsEmpty then +// Exit; +// fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf'; +// SDofilter(ADOQueryMain, ' OrderNoM=''' + Trim(Order_Main.fieldbyname('OrderNoM').AsString) + ''''); +// SCreateCDS20(ADOQueryMain, Order_Main); +// SInitCDSData20(ADOQueryMain, Order_Main); +// Porderno := Trim(Order_Main.fieldbyname('OrderNoM').AsString); +// if FileExists(fPrintFile) then +// begin +// //RMVariables['begindate']:=begindate.DateTime; +// //RMVariables['enddate']:=enddate.DateTime; +// //RMVariables['printtime']:=Now; +// //RMVariables['printer']:=Trim(gUserName); +// RM1.LoadFromFile(fPrintFile); +// RM1.ShowReport; +// end +// else +// begin +// Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf'), 'ʾ', 0); +// end; +// SDofilter(ADOQueryMain, ''); +// SCreateCDS20(ADOQueryMain, Order_Main); +// SInitCDSData20(ADOQueryMain, Order_Main); +// Order_Main.Locate('ordernoM', Porderno, []); +end; + +procedure TfrmProductOrderNewList_PB.N2Click(Sender: TObject); +//var +// fPrintFile: string; +// Porderno: string; +begin + SelOKNo(CDS_Sub, True); +// if Order_Main.IsEmpty then +// Exit; +// fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf'; +// SDofilter(ADOQueryMain, ' OrderNoM=''' + Trim(Order_Main.fieldbyname('OrderNoM').AsString) + ''''); +// SCreateCDS20(ADOQueryMain, Order_Main); +// SInitCDSData20(ADOQueryMain, Order_Main); +// Porderno := Trim(Order_Main.fieldbyname('OrderNoM').AsString); +// if FileExists(fPrintFile) then +// begin +// //RMVariables['begindate']:=begindate.DateTime; +// //RMVariables['enddate']:=enddate.DateTime; +// //RMVariables['printtime']:=Now; +// //RMVariables['printer']:=Trim(gUserName); +// RM1.LoadFromFile(fPrintFile); +// RM1.ShowReport; +// end +// else +// begin +// Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf'), 'ʾ', 0); +// end; +// SDofilter(ADOQueryMain, ''); +// SCreateCDS20(ADOQueryMain, Order_Main); +// SInitCDSData20(ADOQueryMain, Order_Main); +// Order_Main.Locate('ordernoM', Porderno, []); +end; + +procedure TfrmProductOrderNewList_PB.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + try + frmOrderInPut := TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState := 1; + FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString); + ToolBar2.Visible := False; + TBSave.Visible := False; + ScrollBox1.Enabled := False; + Tv1.OptionsSelection.CellSelect := False; + if ShowModal = 1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderNewList_PB.ToolButton2Click(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + try + frmOrderInPut := TfrmOrderInPut.Create(Application); + with frmOrderInPut do + begin + PState := 1; + CopyInt := 99; + FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString); + if ShowModal = 1 then + begin + + end; + end; + finally + frmOrderInPut.Free; + end; +end; + +procedure TfrmProductOrderNewList_PB.ToolButton3Click(Sender: TObject); +begin + ModalResult := 1; +end; + +procedure TfrmProductOrderNewList_PB.OrderNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key = #13 then + begin + if Length(OrderNo.Text) < 3 then + Exit; + try + ADOQuerySub.DisableControls; + with ADOQuerySub do + begin + Filtered := False; + Close; + sql.Clear; + sql.add('exec P_View_Order_PB :begdate,:enddate,:WSql'); + if Trim(DParameters1) <> 'Ȩ' then + begin + Parameters.ParamByName('WSql').Value := ' and Filler=''' + Trim(DName) + ''''; + end; + begin + Parameters.ParamByName('WSql').Value := ' and A.orderno like ''' + '%' + Trim(OrderNo.Text) + '%' + ''''; + end; + Parameters.ParamByName('begdate').Value := '1899-01-01'; + Parameters.ParamByName('enddate').Value := '2050-01-01'; + ExecSQL; + Open; + end; + + SCreateCDS20(ADOQuerySub, CDS_Sub); + SInitCDSData20(ADOQuerySub, CDS_Sub); + finally + ADOQuerySub.EnableControls; + end; + end; +end; + +procedure TfrmProductOrderNewList_PB.ConNoKeyPress(Sender: TObject; var Key: Char); +begin + if Key = #13 then + begin + if Length(conno.Text) < 3 then + Exit; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + sql.Clear; + sql.add('exec P_View_Order :begdate,:enddate,:WSql'); + if Trim(DParameters1) <> 'Ȩ' then + begin + Parameters.ParamByName('WSql').Value := ' and A.Filler=''' + Trim(DName) + ''''; + end; + begin + Parameters.ParamByName('WSql').Value := ' and conno like ''' + '%' + Trim(conno.Text) + '%' + ''''; + end; + Parameters.ParamByName('begdate').Value := '1899-01-01'; + Parameters.ParamByName('enddate').Value := '2050-01-01'; + ExecSQL; + Open; + end; + SCreateCDS20(ADOQueryMain, Order_Main); + SInitCDSData20(ADOQueryMain, Order_Main); + finally + ADOQueryMain.EnableControls; + end; + end; +end; + +procedure TfrmProductOrderNewList_PB.Panel10MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); +begin +// ReleaseCapture; +// TWinControl(Panel4).Perform(WM_SYSCOMMAND, $F012, 0); +end; + +procedure TfrmProductOrderNewList_PB.Button1Click(Sender: TObject); +var + fPrintFile: string; + Porderno, LBName, SYRName: string; + i, j: Integer; + OrderKg: Double; +begin +// if Order_Main.IsEmpty then +// Exit; +// LBName := RadioGroup1.Items.Strings[RadioGroup1.ItemIndex]; +// fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + Trim(LBName) + '.rmf'; +// if Trim(Order_Main.fieldbyname('SYRName').AsString) = '' then +// begin +// with ADOQueryTemp do +// begin +// Close; +// sql.Clear; +// sql.Add('select Top 1 B.ZdyName SYRName from JYOrderCon_Main A'); +// sql.Add(' left join KH_Zdy B on A.SYRName=B.Note'); +// sql.Add(' where A.ConNo=''' + Trim(Order_Main.fieldbyname('ConNo').AsString) + ''''); +// Open; +// end; +// SYRName := Trim(ADOQueryTemp.fieldbyname('SYRName').AsString); +// end +// else +// begin +// SYRName := Trim(Order_Main.fieldbyname('SYRName').AsString); +// end; +// +// with ADOQueryPrint do +// begin +// Close; +// sql.Clear; +// sql.Add('exec F_Get_Print_Order '); +// sql.add('@mainID=' + quotedstr(trim(Order_Main.fieldbyname('MainID').AsString))); +// Open; +// end; +// SCreateCDS20(ADOQueryPrint, CDS_Print); +// SInitCDSData20(ADOQueryPrint, CDS_Print); +// +// if FileExists(fPrintFile) then +// begin +// RM1.LoadFromFile(fPrintFile); +// RMVariables['SYRName'] := Trim(SYRName); +// RM1.ShowReport; +// end +// else +// begin +// Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\' + Trim(LBName) + '.rmf'), 'ʾ', 0); +// end; +end; + +procedure TfrmProductOrderNewList_PB.Image2Click(Sender: TObject); +begin +// Panel4.Visible := False; +end; + +procedure TfrmProductOrderNewList_PB.Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + InitSub(); +end; + +procedure TfrmProductOrderNewList_PB.TFJClick(Sender: TObject); +begin + if order_Main.IsEmpty then + exit; + frmFjList_RZ := TfrmFjList_RZ.create(self); + with frmFjList_RZ do + begin + fkeyNo := trim(order_Main.fieldbyname('Mainid').AsString); + ftype := 'ZSDFJ'; + if showmodal = 1 then + begin + + end; + ; + end; + frmFjList_RZ.Free; +end; + +procedure TfrmProductOrderNewList_PB.ToolButton4Click(Sender: TObject); +var + FMainid: string; + fPrintFile: string; + Porderno: string; + i, j: Integer; +begin + if CDS_Sub.IsEmpty then + Exit; + if CDS_Sub.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete TBSubID where DName=''' + Trim(DCode) + ''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('SELECT * FROM TBSubID where 1=2 '); + open; + end; + FMainid := ''; + CDS_Sub.DisableControls; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_Sub do + begin + First; + while not Eof do + begin + if Fieldbyname('Ssel').AsBoolean then + begin + if FMainid = '' then + begin + FMainid := Trim(CDS_Sub.fieldbyname('CustomerNoName').AsString); + end + else + begin + if Trim(CDS_Sub.fieldbyname('CustomerNoName').AsString) <> FMainid then + begin + application.MessageBox('ѡIJͬһͻһӡ', 'ʾϢ', 0); + ADOQueryCmd.Connection.RollbackTrans; + EnableControls; + exit; + end; + end; + ADOQueryCmd.append; + ADOQueryCmd.fieldbyname('SubId').Value := Trim(CDS_Sub.fieldbyname('Mainid').AsString); + ADOQueryCmd.fieldbyname('Dname').Value := Trim(DCode); + ADOQueryCmd.post; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + end; + CDS_Sub.EnableControls; + + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\װָʾϲ.rmf'; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('exec P_Print_OrderHZ ''' + trim(DCode) + ''''); + Open; + end; + SCreateCDS20(ADOQueryPrint, CDS_Print); + SInitCDSData20(ADOQueryPrint, CDS_Print); + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end + else + begin + Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\װָʾϲ.rmf'), 'ʾ', 0); + exit; + end; +end; + +procedure TfrmProductOrderNewList_PB.CJEWM(FMainid: string; FSubid: string); +var + Txt, fImagePath, maxNo: string; + Moudle: THandle; + Makebar: TMakebar; + Mixtext: TMixtext; +begin + try + Moudle := LoadLibrary('MakeQRBarcode.dll'); + @Makebar := GetProcAddress(Moudle, 'Make'); + @Mixtext := GetProcAddress(Moudle, 'MixText'); + Txt := Trim(FSubid); + 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); + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + SQL.Add('select * from TP_File '); + sql.Add('where TFID=' + quotedstr(trim(Txt))); + sql.Add('and TFType=''EWM'''); + open; + if isempty then + begin + append; + fieldbyname('TFID').Value := trim(Txt); + fieldbyname('WBID').Value := trim(FMainid); + fieldbyname('TFType').Value := 'EWM'; + fieldbyname('FillTime').Value := SGetServerDateTime(ADOQuery1); + tblobfield(FieldByName('Filesother')).LoadFromFile(fImagePath); + post; + end; + end; + except + application.MessageBox('ʧܣ', 'ʾϢ', MB_ICONERROR); + exit; + end; +end; + +procedure TfrmProductOrderNewList_PB.ToolButton7Click(Sender: TObject); +var + maxno: string; +begin + if Order_Main.IsEmpty then + Exit; + + if Order_Main.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ûѡ', 'ʾ', 0); + Exit; + end; + + if Application.MessageBox('ȷҪϲ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + if GetLSNo(ADOQueryCmd, maxno, 'Z', 'JYOrder_Main', 3, 1) = False then + begin + Application.MessageBox('ȡʧ!', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete TBSubID where DName=''' + Trim(DCode) + ''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('SELECT * FROM TBSubID where 1=2 '); + open; + end; + + Order_Main.DisableControls; + try + ADOQueryCmd.Connection.BeginTrans; + with Order_Main do + begin + First; + while not Eof do + begin + if Fieldbyname('Ssel').AsBoolean then + begin + ADOQueryCmd.append; + ADOQueryCmd.fieldbyname('SubId').Value := Trim(Order_Main.fieldbyname('mainid').AsString); + ADOQueryCmd.fieldbyname('Dname').Value := Trim(DCode); + ADOQueryCmd.post; + + with Order_Main do + begin + Edit; + FieldByName('ZOrderNo').Value := maxno; + Post; + end; + end; + + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + end; + Order_Main.EnableControls; + + try + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update jyorder_main set ZOrderNo=''' + Trim(maxno) + ''' '); + sql.Add('WHERE EXISTS(select SubId from TBSubID X where X.SubId=jyorder_main.Mainid and X.DName=''' + Trim(DCode) + ''' )'); +// ShowMessage(sql.Text); + ExecSQL; + end; + application.MessageBox('ϲɹ', 'ʾϢ'); +// TBRafresh.Click; + except + application.MessageBox('ϲʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmProductOrderNewList_PB.ToolButton8Click(Sender: TObject); +begin + if Order_Main.IsEmpty then + exit; + if Order_Main.FieldByName('zOrderNo').AsString = '' then + Exit; + if Application.MessageBox('ȷҪȡϲ', 'ʾ', 32 + 4) <> IDYES then + Exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrder_Main SET ZOrderNo=null '); + sql.Add('where zOrderNo=' + quotedstr(trim(Order_Main.fieldbyname('zOrderNo').AsString))); + + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ȡϲ'))); + sql.Add(',' + quotedstr(trim('ţ' + trim(Order_Main.FieldByName('orderNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ȡϲɹ', 'ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ȡϲʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmProductOrderNewList_PB.ToolButton6Click(Sender: TObject); +begin + if CDS_Sub.IsEmpty then + Exit; + if CDS_Sub.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + panel4.Visible := True; +end; + +procedure TfrmProductOrderNewList_PB.Button2Click(Sender: TObject); +var + FMainid: string; + fPrintFile: string; + Porderno: string; + i, j: Integer; +begin + with ADOQueryTemp do + begin + close; + sql.Clear; + SQL.Add('select * from KH_Zdy_CPCB where cbtype=''CPCBGY'' and zdycode like ''%' + trim(edit1.text) + '%'' '); + Open; + end; + + if ADOQueryTemp.IsEmpty then + begin + if Application.MessageBox('δ빤գǷӡ', 'ʾ', 32 + 4) <> IDYES then + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete TBSubID where DName=''' + Trim(DCode) + ''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('SELECT * FROM TBSubID where 1=2 '); + open; + end; + FMainid := ''; + CDS_Sub.DisableControls; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_Sub do + begin + First; + while not Eof do + begin + if Fieldbyname('Ssel').AsBoolean then + begin + if FMainid = '' then + begin + FMainid := Trim(CDS_Sub.fieldbyname('CustomerNoName').AsString); + end + else + begin + if Trim(CDS_Sub.fieldbyname('CustomerNoName').AsString) <> FMainid then + begin + application.MessageBox('ѡIJͬһͻһӡ', 'ʾϢ', 0); + ADOQueryCmd.Connection.RollbackTrans; + EnableControls; + exit; + end; + end; + ADOQueryCmd.append; + ADOQueryCmd.fieldbyname('SubId').Value := Trim(CDS_Sub.fieldbyname('Mainid').AsString); + ADOQueryCmd.fieldbyname('Dname').Value := Trim(DCode); + ADOQueryCmd.post; + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + end; + CDS_Sub.EnableControls; + + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf'; + + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('exec P_Print_OrderSCHZ ''' + trim(DCode) + ''''); + sql.Add(',''' + trim(Edit1.Text) + ''' '); +// showmessage(sql.Text); + Open; + end; + if ADOQuery1.RecordCount < 1 then + begin + application.MessageBox('òƷѱ', 'ʾϢ', 0); + end + else + begin + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('exec P_Print_OrderSCHZ ''' + trim(DCode) + ''''); + sql.Add(',''' + trim(Edit1.Text) + ''' '); +// showmessage(sql.Text); + Open; + end; + SCreateCDS20(ADOQueryPrint, CDS_Print); + SInitCDSData20(ADOQueryPrint, CDS_Print); + if FileExists(fPrintFile) then + begin + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end + else + begin + Application.MessageBox(PChar('û' + ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf'), 'ʾ', 0); + exit; + end; + end; +end; + +procedure TfrmProductOrderNewList_PB.Button3Click(Sender: TObject); +begin + Panel4.Visible := false; +end; + +procedure TfrmProductOrderNewList_PB.ToolButton9Click(Sender: TObject); +var + sqlstr: string; +begin + if CDS_Sub.IsEmpty then + exit; + try + sqlstr := ''; + with CDS_Sub do + begin + First; + while not Eof do + begin + if CDS_Sub.FieldByName('SSel').AsBoolean = True then + begin + +// close; +// sql.Clear; +// sql.Add('update JYOrder_sub SET PBFlag=''Ű'',PBTime=getdate() '); +// sql.Add('where subid=' + quotedstr(trim(CDS_Sub.fieldbyname('subid').AsString))); +// sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); +// sql.Add(' ' + quotedstr(trim(DName))); +// sql.Add(',getdate() '); +// sql.Add(',' + quotedstr(trim(self.Caption))); +// sql.Add(',' + quotedstr(trim('Ű'))); +// sql.Add(',' + quotedstr(trim('ţ' + trim(CDS_Sub.FieldByName('OrderNO').AsString)))); +// sql.Add(',' + quotedstr(trim('ɹ'))); +// sql.Add(')'); +// execsql; + sqlstr := sqlstr + 'insert into SY_SysLog(operor,opertime,Model,acction,opevent,result)'; + sqlstr := sqlstr + ' values( '; + sqlstr := sqlstr + ' ' + quotedstr(trim(DName)); + sqlstr := sqlstr + ' ,getdate(), '; + sqlstr := sqlstr + ' ' + quotedstr(trim(self.Caption)); + sqlstr := sqlstr + ' ,' + quotedstr(trim('Ű')); + sqlstr := sqlstr + ' ,' + quotedstr(trim('ţ' + trim(CDS_Sub.FieldByName('OrderNO').AsString))); + sqlstr := sqlstr + ' ,' + quotedstr(trim('ɹ')); + sqlstr := sqlstr + ' ) '; + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrder_sub SET PBFlag=''Ű'',PBTime=getdate() '); + sql.Add('where subid=' + quotedstr(trim(CDS_Sub.fieldbyname('subid').AsString))); + execsql; + end; +// end; +// Next; + end; + CDS_Sub.Delete; + end; + end; + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add(sqlstr); +// showmessage(sql.Text); + execsql; + end; + + application.MessageBox('Űɣ', 'ʾϢ', 0); + TBRafresh.Click; + except + application.MessageBox('δɣ', 'ʾϢ', 0); + end; + +end; + +procedure TfrmProductOrderNewList_PB.ToolButton10Click(Sender: TObject); +var + sqlstr: string; +begin + if CDS_Sub.IsEmpty then + exit; + try + sqlstr := ''; + with CDS_Sub do + begin + First; + while not Eof do + begin + if CDS_Sub.FieldByName('SSel').AsBoolean = True then + begin + sqlstr := sqlstr + 'insert into SY_SysLog(operor,opertime,Model,acction,opevent,result)'; + sqlstr := sqlstr + ' values( '; + sqlstr := sqlstr + ' ' + quotedstr(trim(DName)); + sqlstr := sqlstr + ' ,getdate(), '; + sqlstr := sqlstr + ' ' + quotedstr(trim(self.Caption)); + sqlstr := sqlstr + ' ,' + quotedstr(trim('Ű')); + sqlstr := sqlstr + ' ,' + quotedstr(trim('ţ' + trim(CDS_Sub.FieldByName('OrderNO').AsString))); + sqlstr := sqlstr + ' ,' + quotedstr(trim('ɹ')); + sqlstr := sqlstr + ' ) '; + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update JYOrder_sub SET PBFlag=''δŰ'',PBTime=getdate() '); + sql.Add('where subid=' + quotedstr(trim(CDS_Sub.fieldbyname('subid').AsString))); + execsql; + end; +// end; +// Next; + end; + CDS_Sub.Delete; + end; + end; + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add(sqlstr); +// showmessage(sql.Text); + execsql; + end; + + application.MessageBox('ɳɹ', 'ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ʧܣ', 'ʾϢ', 0); + end; + +end; +//begin +// if CDS_Sub.IsEmpty then +// exit; +// try +// with CDS_Sub do +// begin +// First; +// while not Eof do +// begin +// if CDS_Sub.FieldByName('SSel').AsBoolean = True then +// begin +// with ADOQueryCmd do +// begin +// close; +// sql.Clear; +// sql.Add('update JYOrder_sub SET PBFlag=''δŰ'' '); +// sql.Add('where subid=' + quotedstr(trim(CDS_Sub.fieldbyname('subid').AsString))); +// sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); +// sql.Add(' ' + quotedstr(trim(DName))); +// sql.Add(',getdate() '); +// sql.Add(',' + quotedstr(trim(self.Caption))); +// sql.Add(',' + quotedstr(trim('Ű'))); +// sql.Add(',' + quotedstr(trim('ţ' + trim(CDS_Sub.FieldByName('orderNO').AsString)))); +// sql.Add(',' + quotedstr(trim('ɹ'))); +// sql.Add(')'); +// execsql; +// end; +// Next; +// end; +// end; +// end; +// application.MessageBox('ɳɹ', 'ʾϢ'); +// TBRafresh.Click; +// except +// application.MessageBox('ʧܣ', 'ʾϢ', 0); +// end; +//end; + +procedure TfrmProductOrderNewList_PB.cxTabControl1Change(Sender: TObject); +begin + + InitGrid(); +// TBFind.Click; +end; + +procedure TfrmProductOrderNewList_PB.TV2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin +// ADOQuerySub.Close; + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select * from KH_YS '); + sql.Add('where code =' + quotedstr((CDS_Sub.fieldbyname('PRTCode').AsString))); + sql.Add('and CYYS =' + quotedstr((CDS_Sub.fieldbyname('PRTColor').AsString))); +// ShowMessage(sql.text); + open; + end; + initImageYS(ADOQueryTemp.fieldbyname('YSId').AsString); +end; + +procedure TfrmProductOrderNewList_PB.InitImageYS(fwbid: string); +begin + ADOQueryImageYS.close; + if fwbid = '' then + exit; + with ADOQueryImageYS do + begin + close; + sql.Clear; + sql.Add('select * from TP_File A'); + sql.Add('where WBID=' + quotedstr(trim(fwbid))); +// sql.Add('where WBid=''' + ADOQuerySub.fieldbyname('subid').asstring + ''''); + open; + end; +end; + +procedure TfrmProductOrderNewList_PB.DlyDateChange(Sender: TObject); +begin + TBFind.click; +end; + +procedure TfrmProductOrderNewList_PB.ConNoChange(Sender: TObject); +begin + TBFind.Click; +end; + +end. + diff --git a/艾登贸易管理/U_ProductOrderSel.dfm b/艾登贸易管理/U_ProductOrderSel.dfm new file mode 100644 index 0000000..fd704ee --- /dev/null +++ b/艾登贸易管理/U_ProductOrderSel.dfm @@ -0,0 +1,350 @@ +object frmProductOrderSel: TfrmProductOrderSel + Left = 134 + Top = 115 + Width = 1094 + Height = 600 + Caption = #29983#20135#25351#31034#21333#36873#25321 + 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 = 1249 + AutoSize = True + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + Caption = #36873#25321 + ImageIndex = 106 + Visible = False + OnClick = ToolButton3Click + end + object TBPrint: TToolButton + Left = 185 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 12 + OnClick = TBPrintClick + end + object TBClose: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1249 + Height = 67 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 27 + Top = 23 + Width = 39 + Height = 12 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object OrderNoM: TEdit + Tag = 2 + Left = 68 + Top = 19 + Width = 141 + Height = 20 + TabOrder = 0 + OnChange = OrderNoMChange + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 112 + Width = 1249 + Height = 369 + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.OnGetContentStyle = Tv1StylesGetContentStyle + Styles.Header = DataLink_TradeManage.Default + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.NullStyle = nssUnchecked + Visible = False + HeaderAlignmentHorz = taCenter + Width = 49 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 72 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1OrdDefStr1: TcxGridDBColumn + Caption = #20844#21496#32534#21495 + DataBinding.FieldName = 'OrdDefStr1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 90 + end + object v1OrdPerson1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'OrdPerson1' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 73 + end + object v1JGFactoryName: TcxGridDBColumn + Caption = #26579#21378 + DataBinding.FieldName = 'JGFactoryName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20013#25991#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 69 + end + object v1MPRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'MPRTSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1MPRTCF: TcxGridDBColumn + Caption = #25104#20998 + DataBinding.FieldName = 'MPRTCF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 69 + end + object v1MPRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object v1MPRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + Options.Focusing = False + Width = 54 + end + object v1Column8: TcxGridDBColumn + Caption = #22791#27880#21450#35201#27714 + DataBinding.FieldName = 'Note' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 92 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 63 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 67 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 544 + Top = 176 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 688 + Top = 224 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 552 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 312 + Top = 248 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 440 + Top = 184 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 208 + 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 = 336 + Top = 200 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_Print + Left = 392 + Top = 200 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 1 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 576 + Top = 248 + end + object PopupMenu1: TPopupMenu + Left = 288 + Top = 184 + object N2: TMenuItem + Caption = #26377#20379#24212#21830 + OnClick = N2Click + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 360 + Top = 240 + end + object CDS_Print: TClientDataSet + Aggregates = <> + Params = <> + Left = 344 + Top = 288 + end +end diff --git a/艾登贸易管理/U_ProductOrderSel.pas b/艾登贸易管理/U_ProductOrderSel.pas new file mode 100644 index 0000000..7f01c69 --- /dev/null +++ b/艾登贸易管理/U_ProductOrderSel.pas @@ -0,0 +1,494 @@ +unit U_ProductOrderSel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, + RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, + Menus; + +type + TfrmProductOrderSel = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxGridPopupMenu1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + OrderNoM: TEdit; + v1OrderNo: TcxGridDBColumn; + v1JGFactoryName: TcxGridDBColumn; + v1OrdPerson1: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + v1MPRTSpec: TcxGridDBColumn; + v1MPRTCF: TcxGridDBColumn; + Order_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + v1MPRTCodeName: TcxGridDBColumn; + v1MPRTMF: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + PopupMenu1: TPopupMenu; + N2: TMenuItem; + v1Column8: TcxGridDBColumn; + v1MPRTKZ: TcxGridDBColumn; + v1OrdDefStr1: TcxGridDBColumn; + ADOQueryPrint: TADOQuery; + CDS_Print: TClientDataSet; + ToolButton3: TToolButton; + v1Column4: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + private + DQdate:TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData():Boolean; + procedure InitGridFH(); + { Private declarations } + public + FFInt,FCloth:Integer; + + { Public declarations } + end; + +var + frmProductOrderSel: TfrmProductOrderSel; + +implementation +uses + U_DataLink,U_OrderInPut,U_Fun; + +{$R *.dfm} + +procedure TfrmProductOrderSel.FormDestroy(Sender: TObject); +begin + frmProductOrderSel:=nil; +end; + +procedure TfrmProductOrderSel.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmProductOrderSel.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; + //BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7; + //EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp); + DQdate:=SGetServerDate(ADOQueryTemp); +end; + +procedure TfrmProductOrderSel.TBCloseClick(Sender: TObject); +begin + Close; + if FCloth<>1 then + WriteCxGrid('ָʾб',Tv1,'ָʾ') + else + WriteCxGrid('ָʾбѡ',Tv1,'ָʾ'); +end; + +procedure TfrmProductOrderSel.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select A.*,B.*,A.OrderNo OrderNoM from JYOrder_Main A left join JYOrder_Sub B on A.MainId=B.MainId '); + SQL.Add('where OrdDate>=:begdate and OrdDate<:enddate'); + if Trim(DParameters1)<>'Ȩ' then + begin + sql.Add('and A.Filler='''+Trim(DName)+''''); + end; + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductOrderSel.InitGridFH(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('exec Order_QryList :MainId,:WSql'); + Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + Open; + end; + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductOrderSel.InitForm(); +begin + if SGetServerDate(ADOQueryTemp)>StrToDate('2014-07-11') then + begin + ToolBar1.Visible:=False; + Application.MessageBox('ҪϵӦ̣','ʾ',0); + Exit; + end; + if FCloth<>1 then + ReadCxGrid('ָʾб',Tv1,'ָʾ') + else + ReadCxGrid('ָʾбѡ',Tv1,'ָʾ'); + + if FCloth=1 then + begin + v1Column4.Visible:=True; + v1PRTPrice.Visible:=False; + v1PRTPrice.Hidden:=True; + end else + begin + v1Column4.Visible:=False; + v1PRTPrice.Visible:=True; + v1PRTPrice.Hidden:=False; + end; + BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryTemp); + InitGrid(); +end; + +procedure TfrmProductOrderSel.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +function TfrmProductOrderSel.DelData():Boolean; +begin + try + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrder_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + if IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + end; + if Trim(Order_Main.fieldbyname('SubId').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrder_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + ExecSQL; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result:=False; + Application.MessageBox('ɾ쳣','ʾ',0); + end; +end; + +procedure TfrmProductOrderSel.TBPrintClick(Sender: TObject); +var + fPrintFile:string; + Porderno:string; + i,j:Integer; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.*,PRTColorEng=(select Note from KH_Zdy CC where ZdyName=B.PRTColor and CC.Type=''OrdColor'' ) '); + sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId '); + sql.Add(' and A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''''); + Open; + end; + SCreateCDS20(ADOQueryPrint,CDS_Print); + SInitCDSData20(ADOQueryPrint,CDS_Print); + i:=ADOQueryPrint.RecordCount; + ADOQueryPrint.First; + if i<19 then + begin + for j:=1 to 19-i do + begin + with CDS_Print do + begin + Append; + Post; + end; + end; + end; + with CDS_Print do + begin + Append; + FieldByName('Note').Value:=Trim(Order_Main.fieldbyname('Note').AsString); + FieldByName('OrdDefStr3').Value:=Trim(Order_Main.fieldbyname('OrdDefStr3').AsString); + FieldByName('SOrddefstr10').Value:=Trim(Order_Main.fieldbyname('OrderUnit').AsString); + FieldByName('SLbName').Value:=Trim(Order_Main.fieldbyname('SLbName').AsString); + FieldByName('OrdPerson1').Value:=Trim(Order_Main.fieldbyname('OrdPerson1').AsString); + Post; + end; + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; +end; + +procedure TfrmProductOrderSel.TBRafreshClick(Sender: TObject); +begin + if FFInt=1 then + begin + InitGridFH(); + end else + InitGrid(); +end; + +procedure TfrmProductOrderSel.OrderNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active=False then Exit; + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); +end; + +procedure TfrmProductOrderSel.FormShow(Sender: TObject); +begin + InitForm(); +end; + +procedure TfrmProductOrderSel.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if ToolButton1.Visible=False then Exit; + ToolButton1.Click; +end; + +procedure TfrmProductOrderSel.TBTPClick(Sender: TObject); + var + FQty,FQty1,FMxQty,FPQty,FMxQtyS,FPQtyS:String; +begin +end; + +procedure TfrmProductOrderSel.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmProductOrderSel.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmProductOrderSel.Tv1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id,id10:Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmProductOrderSel.v1DeliveryDateCustomDrawCell( + Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; + AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate10(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate10(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmProductOrderSel.N1Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ10.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ10.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderSel.N2Click(Sender: TObject); +var + fPrintFile:string; + Porderno:string; +begin + if Order_Main.IsEmpty then Exit; + fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ָʾ.rmf' ; + SDofilter(ADOQueryMain,' OrderNoM='''+Trim(Order_Main.fieldbyname('OrderNoM').AsString)+''''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Porderno:=Trim(Order_Main.fieldbyname('OrderNoM').AsString); + if FileExists(fPrintFile) then + begin + //RMVariables['begindate']:=begindate.DateTime; + //RMVariables['enddate']:=enddate.DateTime; + //RMVariables['printtime']:=Now; + //RMVariables['printer']:=Trim(gUserName); + RM1.LoadFromFile(fPrintFile); + RM1.ShowReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ָʾ.rmf'),'ʾ',0); + end; + SDofilter(ADOQueryMain,''); + SCreateCDS20(ADOQueryMain,Order_Main); + SInitCDSData20(ADOQueryMain,Order_Main); + Order_Main.Locate('ordernoM',Porderno,[]); +end; + +procedure TfrmProductOrderSel.ToolButton3Click(Sender: TObject); +begin + ModalResult:=1; +end; + +end. diff --git a/艾登贸易管理/U_ProductOrder_CX.dfm b/艾登贸易管理/U_ProductOrder_CX.dfm new file mode 100644 index 0000000..f798a36 --- /dev/null +++ b/艾登贸易管理/U_ProductOrder_CX.dfm @@ -0,0 +1,517 @@ +object FrmProductOrder_CX: TFrmProductOrder_CX + Left = 132 + Top = 110 + Width = 1161 + Height = 577 + Caption = #29983#20135#25351#31034#21333 + 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 + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1145 + AutoSize = True + 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_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 41 + OnClick = ToolButton1Click + end + object TBRafresh: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = TBFindClick + end + object TBClose: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1145 + Height = 63 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 26 + Top = 14 + Width = 52 + Height = 12 + Caption = #31614#35746#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 194 + Top = 14 + Width = 52 + Height = 12 + Caption = #21512#21516#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 371 + Top = 14 + Width = 52 + Height = 12 + Caption = #20135#21697#21517#31216 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 546 + Top = 14 + Width = 26 + Height = 12 + Caption = #35268#26684 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 546 + Top = 37 + Width = 26 + Height = 12 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 371 + Top = 37 + Width = 53 + Height = 12 + Caption = #19994' '#21153' '#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 194 + Top = 37 + Width = 52 + Height = 12 + Caption = #25351#31034#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 697 + Top = 37 + Width = 26 + Height = 12 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 697 + Top = 14 + Width = 26 + Height = 12 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 81 + Top = 10 + Width = 85 + Height = 20 + Date = 42136.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 42136.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 81 + Top = 33 + Width = 85 + Height = 20 + Date = 42136.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 42136.464761099540000000 + TabOrder = 1 + end + object ConNo: TEdit + Tag = 2 + Left = 248 + Top = 10 + Width = 81 + Height = 20 + TabOrder = 2 + OnChange = ConNoChange + end + object MPRTCodeName: TEdit + Tag = 2 + Left = 427 + Top = 10 + Width = 83 + Height = 20 + TabOrder = 3 + OnChange = ConNoChange + end + object MPRTSpec: TEdit + Tag = 2 + Left = 579 + Top = 10 + Width = 83 + Height = 20 + TabOrder = 4 + OnChange = ConNoChange + end + object PRTColor: TEdit + Tag = 2 + Left = 579 + Top = 33 + Width = 83 + Height = 20 + TabOrder = 5 + OnChange = ConNoChange + end + object Filler: TEdit + Tag = 2 + Left = 427 + Top = 33 + Width = 83 + Height = 20 + TabOrder = 6 + OnChange = ConNoChange + end + object orderNO: TEdit + Tag = 2 + Left = 248 + Top = 33 + Width = 81 + Height = 20 + TabOrder = 7 + OnKeyPress = orderNOKeyPress + end + object MPRTKZ: TEdit + Tag = 2 + Left = 728 + Top = 33 + Width = 83 + Height = 20 + TabOrder = 8 + OnChange = ConNoChange + end + object MPRTMF: TEdit + Tag = 2 + Left = 728 + Top = 10 + Width = 83 + Height = 20 + TabOrder = 9 + OnChange = ConNoChange + end + object CheckBox1: TCheckBox + Left = 849 + Top = 36 + Width = 97 + Height = 17 + Caption = #20840#36873 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + OnClick = CheckBox1Click + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 95 + Width = 1145 + Height = 411 + Align = alTop + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v1Ssel: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'Ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + HeaderAlignmentHorz = taCenter + Width = 35 + end + object v1OrderNo: TcxGridDBColumn + Caption = #25351#31034#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 89 + end + object v1ConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'ConNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 80 + end + object v1Column5: TcxGridDBColumn + Caption = 'PO#' + DataBinding.FieldName = 'KHConNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1Column1: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 69 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1MPRTCodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 69 + end + object v1SYRName: TcxGridDBColumn + Caption = #20844#21496#25260#22836 + DataBinding.FieldName = 'SYRName' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1CustomerNoName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 62 + end + object v1MPRTSpec: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'MPRTSpec' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object v1MPRTMF: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'MPRTMF' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object v1MPRTKZ: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MPRTKZ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 59 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1SOrddefstr1: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'SOrddefstr1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1PRTHX: TcxGridDBColumn + Caption = #33457#22411#33457#21495 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1MPRTBZNote: TcxGridDBColumn + Caption = #21253#35013#35201#27714 + DataBinding.FieldName = 'MPRTBZNote' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1PRTOrderQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'PRTOrderQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 70 + end + object v1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 67 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 307 + Top = 187 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 362 + Top = 187 + end + object ADOQueryTmp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 411 + Top = 186 + end + object ADOQueryCMD: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 452 + Top = 186 + end +end diff --git a/艾登贸易管理/U_ProductOrder_CX.pas b/艾登贸易管理/U_ProductOrder_CX.pas new file mode 100644 index 0000000..edddbec --- /dev/null +++ b/艾登贸易管理/U_ProductOrder_CX.pas @@ -0,0 +1,212 @@ +unit U_ProductOrder_CX; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, + cxCalendar, cxGridLevel, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, + cxCheckBox, ADODB, DBClient; + +type + TFrmProductOrder_CX = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + ToolButton1: TToolButton; + Panel1: TPanel; + Label1: TLabel; + Label3: TLabel; + Label5: TLabel; + Label4: TLabel; + Label6: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + ConNo: TEdit; + MPRTCodeName: TEdit; + MPRTSpec: TEdit; + PRTColor: TEdit; + Label2: TLabel; + Filler: TEdit; + Label7: TLabel; + orderNO: TEdit; + Label8: TLabel; + MPRTKZ: TEdit; + Label9: TLabel; + MPRTMF: TEdit; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1ConNo: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + v1CustomerNoName: TcxGridDBColumn; + v1MPRTCodeName: TcxGridDBColumn; + v1MPRTSpec: TcxGridDBColumn; + v1MPRTMF: TcxGridDBColumn; + v1MPRTKZ: TcxGridDBColumn; + v1OrderUnit: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + v1PRTColor: TcxGridDBColumn; + v1PRTHX: TcxGridDBColumn; + v1PRTOrderQty: TcxGridDBColumn; + v1Ssel: TcxGridDBColumn; + DataSource1: TDataSource; + Order_Main: TClientDataSet; + ADOQueryTmp: TADOQuery; + v1SYRName: TcxGridDBColumn; + v1MPRTBZNote: TcxGridDBColumn; + v1SOrddefstr1: TcxGridDBColumn; + ADOQueryCMD: TADOQuery; + CheckBox1: TCheckBox; + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure ConNoChange(Sender: TObject); + procedure orderNOKeyPress(Sender: TObject; var Key: Char); + private + procedure initGrid(); + { Private declarations } + public + { Public declarations } + end; + +var + FrmProductOrder_CX: TFrmProductOrder_CX; + +implementation + +uses U_DataLink,U_ZDYHelp,U_Fun; +{$R *.dfm} +procedure TFrmProductOrder_CX.initGrid(); +begin + with ADOQueryTmp do + begin + close; + sql.clear; + sql.Add('select A.*,B.*,C.SYRName from JYOrder_Main A '); + SQL.Add('inner join JYOrder_Sub B on B.Mainid=A.Mainid '); + sql.add('left join JYOrderCon_Main C on C.Mainid=A.Mainid '); + sql.add('where A.OrdDate>='''+trim(formatdatetime('yyyy-MM-dd',begdate.datetime))+''''); + sql.add('and A.OrdDate<'''+trim(formatdatetime('yyyy-MM-dd',enddate.datetime+1))+''''); + open; + end; + SCreateCDS20(ADOQueryTmp,Order_Main); + SInitCDSData20(ADOQueryTmp,Order_Main); +end; + +procedure TFrmProductOrder_CX.TBRafreshClick(Sender: TObject); +begin + initGrid(); +end; + +procedure TFrmProductOrder_CX.ToolButton1Click(Sender: TObject); +begin + if Order_Main.IsEmpty then exit; + ModalResult:=1; +end; + +procedure TFrmProductOrder_CX.TBFindClick(Sender: TObject); +begin + if ADOQueryTmp.Active=False then Exit; + SDofilter(ADOQueryTmp,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryTmp,Order_Main); + SInitCDSData20(ADOQueryTmp,Order_Main); +end; + +procedure TFrmProductOrder_CX.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid(self.Caption+tv1.Name,Tv1,'ָʾ'); +end; + +procedure TFrmProductOrder_CX.FormCreate(Sender: TObject); +begin + cxgrid1.Align:=alClient; +end; + +procedure TFrmProductOrder_CX.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption+tv1.Name,Tv1,'ָʾ'); + BegDate.DateTime:=SGetServerDate10(ADOQueryCMD)-7; + EndDate.DateTime:=SGetServerDate10(ADOQueryCMD); + initGrid(); +end; + +procedure TFrmProductOrder_CX.Tv1CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + ToolButton1.Click; +end; + +procedure TFrmProductOrder_CX.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TFrmProductOrder_CX.FormDestroy(Sender: TObject); +begin + FrmProductOrder_CX:=nil; +end; + +procedure TFrmProductOrder_CX.CheckBox1Click(Sender: TObject); +begin + with Order_Main do + begin + DisableControls; + first; + while not eof do + begin + edit; + Order_Main.FieldByName('Ssel').AsBoolean:=CheckBox1.Checked; + post; + next; + end; + EnableControls; + end; +end; + +procedure TFrmProductOrder_CX.ConNoChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TFrmProductOrder_CX.orderNOKeyPress(Sender: TObject; + var Key: Char); +begin + IF key=#13 then + begin + IF length(orderNO.Text)<4 then exit; + with ADOQueryTmp do + begin + close; + sql.clear; + sql.Add('select A.*,B.*,C.SYRName from JYOrder_Main A '); + SQL.Add('inner join JYOrder_Sub B on B.Mainid=A.Mainid '); + sql.add('left join JYOrderCon_Main C on C.Mainid=A.Mainid '); + sql.add('where A.orderNo like '+quotedstr('%'+trim(orderNo.Text)+'%')); + open; + end; + SCreateCDS20(ADOQueryTmp,Order_Main); + SInitCDSData20(ADOQueryTmp,Order_Main); + end; +end; + +end. diff --git a/艾登贸易管理/U_ProductionAnPai.dfm b/艾登贸易管理/U_ProductionAnPai.dfm new file mode 100644 index 0000000..650d559 --- /dev/null +++ b/艾登贸易管理/U_ProductionAnPai.dfm @@ -0,0 +1,656 @@ +object frmProductionAnPai: TfrmProductionAnPai + Left = 53 + Top = 12 + Width = 1155 + Height = 669 + Caption = #29983#20135#23433#25490 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 14 + object cxGrid1: TcxGrid + Left = 0 + Top = 203 + Width = 1147 + Height = 329 + Align = alTop + TabOrder = 0 + object Tv1: TcxGridDBTableView + OnDblClick = Tv1DblClick + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv1CellClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Styles.Inactive = cxStyle1 + Styles.IncSearch = cxStyle1 + Styles.Selection = cxStyle1 + object v1Column16: TcxGridDBColumn + Caption = #23433#25490#26085#26399 + DataBinding.FieldName = 'AnPaiDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 87 + end + object v1Column4: TcxGridDBColumn + Caption = #29983#20135#24207#21495 + DataBinding.FieldName = 'SCOrder' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column4PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 75 + end + object v1Column13: TcxGridDBColumn + Caption = #23433#25490#31859#25968 + DataBinding.FieldName = 'OrderQtyM' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column19PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v1Column19: TcxGridDBColumn + Caption = #23450#21367#38271'M' + DataBinding.FieldName = 'BigLen' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column19PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 78 + end + object v1Column18: TcxGridDBColumn + Caption = #23450#21367#25968 + DataBinding.FieldName = 'BigCount' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column19PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 78 + end + object v1Column20: TcxGridDBColumn + Caption = #29983#20135#38376#24133'cm' + DataBinding.FieldName = 'BigMF' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column19PropertiesEditValueChanged + Width = 86 + end + object v1Column21: TcxGridDBColumn + Caption = #23567#21367#20998#20999#20010#25968 + DataBinding.FieldName = 'SmalCount' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column19PropertiesEditValueChanged + Width = 96 + end + object v1Column22: TcxGridDBColumn + Caption = #23567#21367#20998#20999#24133#23485 + DataBinding.FieldName = 'SmalMF' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 239 + end + object v1Column23: TcxGridDBColumn + Caption = #23567#21367#20801#35768#20559#24046 + DataBinding.FieldName = 'SmalPC' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column23PropertiesEditValueChanged + Width = 98 + end + object v1Column24: TcxGridDBColumn + Caption = #20998#20999#35828#26126 + DataBinding.FieldName = 'SmalNote' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = False + Properties.OnButtonClick = v1Column24PropertiesButtonClick + Properties.OnEditValueChanged = v1Column24PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 129 + end + object v1Column25: TcxGridDBColumn + Caption = #25171#21253#35201#27714 + DataBinding.FieldName = 'DBNote' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column25PropertiesButtonClick + Properties.OnEditValueChanged = v1Column25PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 203 + end + object v1Column11: TcxGridDBColumn + Caption = #29983#20135#31859#25968 + DataBinding.FieldName = 'SCMQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 81 + end + object v1Column15: TcxGridDBColumn + Caption = #26410#29983#20135#31859#25968 + DataBinding.FieldName = 'WSCMQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 102 + end + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#32534#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 80 + end + object v1Column2: TcxGridDBColumn + Caption = #20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 135 + end + object v1Column8: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'ProductType' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 86 + end + object v1Column10: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'ProductQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 80 + end + object v1Column14: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'ProductUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 73 + end + object v1Column9: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'ProductSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 94 + end + object v1Column5: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 80 + end + object v1Column7: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 75 + end + object v1Column12: TcxGridDBColumn + Caption = #29366#24577 + DataBinding.FieldName = 'SCStatus' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'SWFBFK' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 83 + end + object v1Column26: TcxGridDBColumn + Caption = #23380#30446 + DataBinding.FieldName = 'WKMS' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 89 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'SWFBKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 103 + end + object v1Column6: TcxGridDBColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'AnPaiChker' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 80 + end + object v1Column17: TcxGridDBColumn + Caption = #23457#26680#29366#24577 + DataBinding.FieldName = 'AnPaiChkStatus' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 78 + end + object v1Column1: TcxGridDBColumn + Caption = #21367#22343#37325#19978#38480 + DataBinding.FieldName = 'KZBig' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 93 + end + object v1Column3: TcxGridDBColumn + Caption = #21367#22343#37325#19979#38480 + DataBinding.FieldName = 'KZSmal' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 93 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel1: TPanel + Left = 0 + Top = 0 + Width = 1147 + Height = 82 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 324 + Top = 21 + Width = 56 + Height = 14 + Caption = #35746#21333#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label15: TLabel + Left = 29 + Top = 32 + Width = 8 + Height = 16 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label16: TLabel + Left = 901 + Top = 16 + Width = 7 + Height = 14 + end + object Label2: TLabel + Left = 47 + Top = 21 + Width = 56 + Height = 14 + Caption = #23433#25490#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label3: TLabel + Left = 197 + Top = 21 + Width = 21 + Height = 14 + Caption = '---' + end + object orderno: TEdit + Tag = 2 + Left = 381 + Top = 17 + Width = 129 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + OnChange = ordernoChange + end + object Button1: TButton + Left = 49 + Top = 48 + Width = 44 + Height = 25 + Caption = #21047#26032 + TabOrder = 1 + OnClick = Button1Click + end + object Button2: TButton + Left = 417 + Top = 48 + Width = 38 + Height = 25 + Caption = #20851#38381 + TabOrder = 2 + OnClick = Button2Click + end + object Button3: TButton + Left = 273 + Top = 48 + Width = 43 + Height = 25 + Caption = #23548#20986 + TabOrder = 3 + OnClick = Button3Click + end + object BegDate: TDateTimePicker + Left = 104 + Top = 17 + Width = 93 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 4 + end + object EndDate: TDateTimePicker + Left = 215 + Top = 17 + Width = 94 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 5 + end + object Button4: TButton + Left = 112 + Top = 48 + Width = 65 + Height = 25 + Caption = #23457#26680#36890#36807 + TabOrder = 6 + OnClick = Button4Click + end + object Button5: TButton + Left = 190 + Top = 48 + Width = 75 + Height = 25 + Caption = #23457#26680#19981#36890#36807 + TabOrder = 7 + OnClick = Button5Click + end + object Button7: TButton + Left = 329 + Top = 48 + Width = 75 + Height = 25 + Caption = #27974#26009#37197#21046 + TabOrder = 8 + Visible = False + OnClick = Button7Click + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 82 + Width = 1147 + Height = 18 + Align = alTop + Style = 9 + TabIndex = 0 + TabOrder = 2 + Tabs.Strings = ( + #24453#23457#26680 + #24050#23457#26680 + #24050#23436#25104) + OnChange = cxTabControl1Change + ClientRectBottom = 19 + ClientRectRight = 1147 + ClientRectTop = 19 + end + object Panel2: TPanel + Left = 0 + Top = 100 + Width = 1147 + Height = 103 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 3 + object Label4: TLabel + Left = 32 + Top = 24 + Width = 70 + Height = 14 + Caption = #23567#21367#24133#23485'cm' + end + object SmalMF1: TEdit + Tag = 2 + Left = 104 + Top = 21 + Width = 97 + Height = 22 + TabOrder = 0 + Visible = False + end + object SmalMF2: TEdit + Tag = 2 + Left = 224 + Top = 21 + Width = 89 + Height = 22 + TabOrder = 1 + Visible = False + end + object SmalMF3: TEdit + Tag = 2 + Left = 344 + Top = 21 + Width = 81 + Height = 22 + TabOrder = 2 + Visible = False + end + object SmalMF4: TEdit + Tag = 2 + Left = 456 + Top = 21 + Width = 97 + Height = 22 + TabOrder = 3 + Visible = False + end + object SmalMF5: TEdit + Tag = 2 + Left = 584 + Top = 21 + Width = 89 + Height = 22 + TabOrder = 4 + Visible = False + end + object SmalMF6: TEdit + Tag = 2 + Left = 704 + Top = 21 + Width = 105 + Height = 22 + TabOrder = 5 + Visible = False + end + object SmalMF7: TEdit + Tag = 2 + Left = 104 + Top = 45 + Width = 97 + Height = 22 + TabOrder = 6 + Visible = False + end + object SmalMF8: TEdit + Tag = 2 + Left = 224 + Top = 45 + Width = 89 + Height = 22 + TabOrder = 7 + Visible = False + end + object SmalMF9: TEdit + Tag = 2 + Left = 344 + Top = 45 + Width = 81 + Height = 22 + TabOrder = 8 + Visible = False + end + object SmalMF10: TEdit + Tag = 2 + Left = 456 + Top = 45 + Width = 97 + Height = 22 + TabOrder = 9 + Visible = False + end + object SmalMF11: TEdit + Tag = 2 + Left = 584 + Top = 45 + Width = 89 + Height = 22 + TabOrder = 10 + Visible = False + end + object SmalMF12: TEdit + Tag = 2 + Left = 704 + Top = 45 + Width = 105 + Height = 22 + TabOrder = 11 + Visible = False + end + object Button6: TButton + Left = 104 + Top = 72 + Width = 97 + Height = 25 + Caption = #30830#23450 + TabOrder = 12 + Visible = False + OnClick = Button6Click + end + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 576 + Top = 288 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 576 + Top = 256 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 608 + Top = 256 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 640 + Top = 256 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 696 + Top = 264 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 480 + Top = 280 + end + object cxStyleRepository1: TcxStyleRepository + object cxStyle1: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = 4707838 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -15 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlack + end + end +end diff --git a/艾登贸易管理/U_ProductionAnPai.pas b/艾登贸易管理/U_ProductionAnPai.pas new file mode 100644 index 0000000..5a07e48 --- /dev/null +++ b/艾登贸易管理/U_ProductionAnPai.pas @@ -0,0 +1,666 @@ +unit U_ProductionAnPai; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, ExtCtrls, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, ADODB, DBClient, cxTextEdit, cxPC, + cxCalendar, ComCtrls, cxButtonEdit, cxGridCustomPopupMenu, + cxGridPopupMenu; + +type + TfrmProductionAnPai = class(TForm) + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + Panel1: TPanel; + Label1: TLabel; + Label15: TLabel; + Label16: TLabel; + orderno: TEdit; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + CDS_Main: TClientDataSet; + DataSource1: TDataSource; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + v1Column13: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + Button1: TButton; + Button2: TButton; + Button3: TButton; + v1Column15: TcxGridDBColumn; + cxTabControl1: TcxTabControl; + v1Column16: TcxGridDBColumn; + Label2: TLabel; + Label3: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Button4: TButton; + Button5: TButton; + v1Column17: TcxGridDBColumn; + Panel2: TPanel; + SmalMF1: TEdit; + SmalMF2: TEdit; + SmalMF3: TEdit; + SmalMF4: TEdit; + SmalMF5: TEdit; + SmalMF6: TEdit; + Label4: TLabel; + SmalMF7: TEdit; + SmalMF8: TEdit; + SmalMF9: TEdit; + SmalMF10: TEdit; + SmalMF11: TEdit; + SmalMF12: TEdit; + v1Column18: TcxGridDBColumn; + v1Column19: TcxGridDBColumn; + v1Column20: TcxGridDBColumn; + v1Column21: TcxGridDBColumn; + v1Column22: TcxGridDBColumn; + v1Column23: TcxGridDBColumn; + Button6: TButton; + v1Column24: TcxGridDBColumn; + v1Column25: TcxGridDBColumn; + cxGridPopupMenu1: TcxGridPopupMenu; + Button7: TButton; + v1Column26: TcxGridDBColumn; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ordernoChange(Sender: TObject); + procedure v1Column4PropertiesEditValueChanged(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure Button5Click(Sender: TObject); + procedure Tv1DblClick(Sender: TObject); + procedure v1Column19PropertiesEditValueChanged(Sender: TObject); + procedure v1Column23PropertiesEditValueChanged(Sender: TObject); + procedure Button6Click(Sender: TObject); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure v1Column24PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column24PropertiesEditValueChanged(Sender: TObject); + procedure v1Column25PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column25PropertiesEditValueChanged(Sender: TObject); + procedure Button7Click(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + procedure VisbleControl(Panel55:TWinControl;XS:Boolean;SXCount:Integer); + public + { Public declarations } + end; + +var + frmProductionAnPai: TfrmProductionAnPai; + +implementation +uses + U_DataLink,U_Fun,U_OrderAttachment,U_ZDYHelpSel,U_JiangLiaoSet; + +{$R *.dfm} + +procedure TfrmProductionAnPai.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + orderno.SetFocus; + Action:=caFree; +end; + +procedure TfrmProductionAnPai.FormDestroy(Sender: TObject); +begin + frmProductionAnPai:=nil; +end; + +procedure TfrmProductionAnPai.FormCreate(Sender: TObject); +begin + cxGrid1.Align:=alClient; + if Trim(DParameters1)='' then + begin + Button5.Visible:=True; + Button4.Visible:=True; + end else + begin + Button5.Visible:=False; + Button4.Visible:=False; + end; +end; +procedure TfrmProductionAnPai.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' exec P_ProductAnPai :begdate,:enddate,:pstate,:Wsql'); + if cxTabControl1.TabIndex=0 then + begin + Parameters.ParamByName('begdate').Value:=''; + Parameters.ParamByName('enddate').Value:=''; + Parameters.ParamByName('pstate').Value:=1; + end else + if cxTabControl1.TabIndex=1 then + begin + Parameters.ParamByName('begdate').Value:=''; + Parameters.ParamByName('enddate').Value:=''; + Parameters.ParamByName('pstate').Value:=2; + end else + if cxTabControl1.TabIndex=2 then + begin + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.Date) ; + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',EndDate.Date+1); + Parameters.ParamByName('pstate').Value:=3; + end; + Parameters.ParamByName('Wsql').Value:=''; + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmProductionAnPai.Button1Click(Sender: TObject); +begin + orderno.SetFocus; + InitGrid(); +end; + +procedure TfrmProductionAnPai.FormShow(Sender: TObject); +begin + ReadCxGrid('10',Tv1,'޷IJ'); + EndDate.Date:=SGetServerDate(ADOQueryTemp); + BegDate.Date:=EndDate.Date-30; + if cxTabControl1.TabIndex=1 then + begin + Tv1.OptionsSelection.CellSelect:=False; + end else + Tv1.OptionsSelection.CellSelect:=True; + if Trim(DParameters1)='' then + begin + Tv1.OptionsSelection.CellSelect:=False; + end; + InitGrid(); +end; + +procedure TfrmProductionAnPai.ordernoChange(Sender: TObject); +begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); +end; + +procedure TfrmProductionAnPai.v1Column4PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + with CDS_Main do + begin + Edit; + FieldByName('SCOrder').Value:=Trim(mvalue); + FieldByName('AnPaiDate').Value:=Now; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFBOrder_Sub Set SCOrder='''+Trim(mvalue)+''''); + SQL.Add(',AnPaiDate=getdate()'); + SQL.Add(' where SubId='''+Trim(CDS_Main.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmProductionAnPai.Button2Click(Sender: TObject); +begin + orderno.SetFocus; + WriteCxGrid('10',Tv1,'޷IJ'); + Close; +end; + +procedure TfrmProductionAnPai.Button3Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + TcxGridToExcel('',cxGrid1); +end; + +procedure TfrmProductionAnPai.cxTabControl1Change(Sender: TObject); +begin + InitGrid(); + if cxTabControl1.TabIndex=0 then + begin + Tv1.OptionsSelection.CellSelect:=True; + end else + Tv1.OptionsSelection.CellSelect:=False; + if Trim(DParameters1)='' then + begin + Tv1.OptionsSelection.CellSelect:=False; + end; + VisbleControl(Panel2,False,Panel2.ControlCount); +end; + +procedure TfrmProductionAnPai.Button4Click(Sender: TObject); +begin + if cxTabControl1.TabIndex<>0 then Exit; + if Trim(DName)=Trim(CDS_Main.fieldbyname('AnPaiPerson').AsString) then + begin + Application.MessageBox('Լݣ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪִв','ʾ',32+4)<>IDYES then Exit; + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFBOrder_Sub Set AnPaiChker='''+Trim(DName)+''''); + sql.Add(',AnPaiChkStatus=''ͨ'''); + sql.add(',AnPaiChkDate=getdate()'); + SQL.Add(' where SubId='''+Trim(CDS_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + + ADOQueryCmd.Connection.CommitTrans; + CDS_Main.Delete; + Application.MessageBox('ɹ','ʾ',0); + Exit; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +procedure TfrmProductionAnPai.Button5Click(Sender: TObject); +begin + if cxTabControl1.TabIndex<>1 then Exit; + if Trim(DName)=Trim(CDS_Main.fieldbyname('AnPaiPerson').AsString) then + begin + Application.MessageBox('Լݣ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪִв','ʾ',32+4)<>IDYES then Exit; + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFBOrder_Sub Set AnPaiChker='''+Trim(DName)+''''); + sql.Add(',AnPaiChkStatus=''˲ͨ'','); + sql.add('AnPaiChkDate=getdate()'); + SQL.Add(' where SubId='''+Trim(CDS_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + CDS_Main.Delete; + Application.MessageBox('ɹ','ʾ',0); + Exit; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +procedure TfrmProductionAnPai.Tv1DblClick(Sender: TObject); +begin + try + frmOrderAttachment:=TfrmOrderAttachment.Create(Application); + with frmOrderAttachment do + begin + FAMainId:=Trim(Self.CDS_Main.fieldbyname('MainId').AsString); + Panel1.Enabled:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderAttachment.Free; + end; +end; + +procedure TfrmProductionAnPai.v1Column19PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; + i:Integer; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + mvalue:='0'; + FFieldName:=Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_Main do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFBOrder_Sub Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',AnPaiPerson='''+Trim(DName)+''''); + SQL.Add(' where SubId='''+Trim(CDS_Main.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + if Trim(FFieldName)='SmalCount' then + begin + VisbleControl(Panel2,False,Panel2.ControlCount); + VisbleControl(Panel2,True,strtoint(mvalue)+1); + end; + if strtoint(mvalue)+1>0 then + begin + Button6.Visible:=True; + end; +end; + +procedure TfrmProductionAnPai.v1Column23PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + mvalue:=''; + with CDS_Main do + begin + Edit; + FieldByName('SmalPC').Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFBOrder_Sub Set SmalPC='''+Trim(mvalue)+''''); + SQL.Add(' where SubId='''+Trim(CDS_Main.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; +end; +procedure TfrmProductionAnPai.VisbleControl(Panel55:TWinControl;XS:Boolean;SXCount:Integer); +var + i:Integer; +begin + with Panel55 do + begin + for i:=0 to SXCount-1 do + begin + Controls[i].Visible:=XS; + end; + end; +end; + +procedure TfrmProductionAnPai.Button6Click(Sender: TObject); +var + i,j:Integer; + FFname,FFnameValue,FSubId:string; +begin + //FSubId:=Trim(CDS_Main.fieldbyname('SubId').AsString); + try + j:=0; + ADOQueryCmd.Connection.BeginTrans; + with Panel2 do + begin + for i:=0 to Panel2.ControlCount-1 do + begin + if Controls[i] is TLabel then Continue; + if Controls[i] is TButton then Continue; + if Controls[i].Visible=True then + begin + FFname:=Trim(Controls[i].Name); + if Trim(TEdit(Controls[i]).Text)='' then + begin + ADOQueryCmd.Connection.RollbackTrans; + j:=9; + Break; + end; + if StrToFloat((TEdit(Controls[i]).Text))=0 then + begin + ADOQueryCmd.Connection.RollbackTrans; + j:=10; + Break; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Sub Set '+FFname+'='+Trim(TEdit(Controls[i]).Text)); + SQL.Add(' where SubId='''+Trim(CDS_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; + end; + if j=0 then + ADOQueryCmd.Connection.CommitTrans + else + if j=9 then + begin + //ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('СΪգ','ʾ',0); + Exit; + end else + if j=10 then + begin + //ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('СΪ㣡','ʾ',0); + Exit; + end; + end; + //InitGrid(); + // CDS_Main.Locate('SubId',Trim(FSubId),[]); + with Panel2 do + begin + j:=0; + for i:=0 to Panel2.ControlCount-1 do + begin + if Controls[i] is TLabel then Continue; + if Controls[i] is TButton then Continue; + if TEdit(Controls[i]).Visible=True then + begin + if j=0 then + FSubId:=Trim(TEdit(Controls[i]).Text) + else + FSubId:=FSubId+','+Trim(TEdit(Controls[i]).Text); + j:=j+1; + end; + end; + end; + with CDS_Main do + begin + Edit; + FieldByName('SmalMF').Value:=Trim(FSubId); + Post; + end; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȷ쳣','ʾ',0); + end; +end; + +procedure TfrmProductionAnPai.Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + VisbleControl(Panel2,False,Panel2.ControlCount); + VisbleControl(Panel2,True,CDS_Main.fieldbyname('SmalCount').Value+1); + SCSHDataCDS(CDS_Main,Panel2,2); + if Trim(CDS_Main.FieldByName('SmalCount').AsString)='' then Exit; + if CDS_Main.fieldbyname('SmalCount').Value>0 then + begin + if cxTabControl1.TabIndex=0 then + Button6.Visible:=True + else + Button6.Visible:=False; + end; + +end; + +procedure TfrmProductionAnPai.v1Column24PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +var + mvalue:String; +begin + mvalue:=Trim(CDS_Main.fieldbyname('SmalNote').AsString); + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='SmalNote'; + flagname:='˵'; + if ShowModal=1 then + begin + with Self.CDS_Main do + begin + Edit; + FieldByName('SmalNote').Value:=mvalue+Trim(ReturnStr); + //post; + end; + mvalue:=mvalue+ReturnStr; + with Self.ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('UPdate WFBOrder_Sub Set SmalNote='''+Trim(mvalue)+''''); + SQL.Add(' where SubId='''+Trim(CDS_Main.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + end; +end; + +procedure TfrmProductionAnPai.v1Column24PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + mvalue:=''; + with CDS_Main do + begin + Edit; + FieldByName('SmalNote').Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFBOrder_Sub Set SmalNote='''+Trim(mvalue)+''''); + SQL.Add(' where SubId='''+Trim(CDS_Main.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmProductionAnPai.v1Column25PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +var + mvalue:String; +begin + mvalue:=Trim(CDS_Main.fieldbyname('DBNote').AsString); + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='DBNote'; + flagname:='Ҫ'; + if ShowModal=1 then + begin + with Self.CDS_Main do + begin + Edit; + FieldByName('DBNote').Value:=mvalue+Trim(ReturnStr); + //post; + end; + mvalue:=mvalue+ReturnStr; + with Self.ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('UPdate WFBOrder_Sub Set DBNote='''+Trim(mvalue)+''''); + SQL.Add(' where SubId='''+Trim(CDS_Main.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + end; +end; + +procedure TfrmProductionAnPai.v1Column25PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + mvalue:=''; + with CDS_Main do + begin + Edit; + FieldByName('DBNote').Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFBOrder_Sub Set DBNote='''+Trim(mvalue)+''''); + SQL.Add(' where SubId='''+Trim(CDS_Main.fieldbyname('SubID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmProductionAnPai.Button7Click(Sender: TObject); +begin + try + frmJiangLiaoSet:=TfrmJiangLiaoSet.Create(Application); + with frmJiangLiaoSet do + begin + if ShowModal=1 then + begin + + end; + end; + finally + end; +end; + +end. diff --git a/艾登贸易管理/U_ProductionAnPaiNew.dfm b/艾登贸易管理/U_ProductionAnPaiNew.dfm new file mode 100644 index 0000000..b4e75d7 --- /dev/null +++ b/艾登贸易管理/U_ProductionAnPaiNew.dfm @@ -0,0 +1,934 @@ +object frmProductionAnPaiNew: TfrmProductionAnPaiNew + Left = 97 + Top = 39 + Width = 1155 + Height = 671 + Caption = #29983#20135#23433#25490 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 14 + object cxGrid1: TcxGrid + Left = 0 + Top = 203 + Width = 1147 + Height = 246 + Align = alTop + TabOrder = 0 + object Tv1: TcxGridDBTableView + OnDblClick = Tv1DblClick + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv1CellClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Inactive = cxStyle1 + Styles.IncSearch = cxStyle1 + Styles.Selection = cxStyle1 + object v1OrderNo: TcxGridDBColumn + Caption = #35746#21333#32534#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 80 + end + object v1Column2: TcxGridDBColumn + Caption = #20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 135 + end + object v1Column8: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'ProductType' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 86 + end + object v1Column10: TcxGridDBColumn + Caption = #35746#21333#25968#37327 + DataBinding.FieldName = 'ProductQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 80 + end + object v1Column14: TcxGridDBColumn + Caption = #35746#21333#21333#20301 + DataBinding.FieldName = 'ProductUnit' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 73 + end + object v1Column9: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'ProductSpec' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 94 + end + object v1Column5: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 80 + end + object v1Column7: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 75 + end + object v1PRTMF: TcxGridDBColumn + Caption = #38376#24133'(cm)' + DataBinding.FieldName = 'FSWFBFK' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 83 + end + object v1Column26: TcxGridDBColumn + Caption = #23380#30446 + DataBinding.FieldName = 'WKMS' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 89 + end + object v1PRTKZ: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'SWFBKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 103 + end + object v1Column1: TcxGridDBColumn + Caption = #21367#22343#37325#19978#38480 + DataBinding.FieldName = 'KZBig' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 93 + end + object v1Column3: TcxGridDBColumn + Caption = #21367#22343#37325#19979#38480 + DataBinding.FieldName = 'KZSmal' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 93 + end + object v1Column4: TcxGridDBColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'AnPaiChker' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 65 + end + object v1Column6: TcxGridDBColumn + Caption = #23457#26680#29366#24577 + DataBinding.FieldName = 'AnPaiChkStatus' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 68 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel1: TPanel + Left = 0 + Top = 0 + Width = 1147 + Height = 82 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 324 + Top = 21 + Width = 56 + Height = 14 + Caption = #35746#21333#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label15: TLabel + Left = 29 + Top = 32 + Width = 8 + Height = 16 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label16: TLabel + Left = 901 + Top = 16 + Width = 7 + Height = 14 + end + object Label2: TLabel + Left = 47 + Top = 21 + Width = 56 + Height = 14 + Caption = #23433#25490#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label3: TLabel + Left = 197 + Top = 21 + Width = 21 + Height = 14 + Caption = '---' + end + object Label5: TLabel + Left = 468 + Top = 21 + Width = 28 + Height = 14 + Caption = #20195#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label6: TLabel + Left = 585 + Top = 21 + Width = 28 + Height = 14 + Caption = #38376#24133 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label7: TLabel + Left = 708 + Top = 21 + Width = 28 + Height = 14 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object orderno: TEdit + Tag = 2 + Left = 381 + Top = 17 + Width = 76 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + OnChange = ordernoChange + end + object Button1: TButton + Left = 49 + Top = 48 + Width = 44 + Height = 25 + Caption = #21047#26032 + TabOrder = 1 + OnClick = Button1Click + end + object Button2: TButton + Left = 643 + Top = 48 + Width = 38 + Height = 25 + Caption = #20851#38381 + TabOrder = 2 + OnClick = Button2Click + end + object Button3: TButton + Left = 275 + Top = 48 + Width = 43 + Height = 25 + Caption = #23548#20986 + TabOrder = 3 + OnClick = Button3Click + end + object BegDate: TDateTimePicker + Left = 104 + Top = 17 + Width = 93 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 4 + end + object EndDate: TDateTimePicker + Left = 215 + Top = 17 + Width = 94 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 5 + end + object Button4: TButton + Left = 107 + Top = 48 + Width = 65 + Height = 25 + Caption = #23457#26680#36890#36807 + TabOrder = 6 + OnClick = Button4Click + end + object Button5: TButton + Left = 186 + Top = 48 + Width = 75 + Height = 25 + Caption = #23457#26680#19981#36890#36807 + TabOrder = 7 + OnClick = Button5Click + end + object Button7: TButton + Left = 689 + Top = 48 + Width = 75 + Height = 25 + Caption = #27974#26009#37197#21046 + TabOrder = 8 + Visible = False + OnClick = Button7Click + end + object Button8: TButton + Left = 413 + Top = 48 + Width = 66 + Height = 25 + Caption = #29983#20135#25764#38144 + TabOrder = 9 + OnClick = Button8Click + end + object Button9: TButton + Left = 333 + Top = 48 + Width = 66 + Height = 25 + Caption = #29983#20135#19979#36798 + TabOrder = 10 + OnClick = Button9Click + end + object Button10: TButton + Left = 493 + Top = 48 + Width = 48 + Height = 25 + Caption = #23436#25104 + TabOrder = 11 + OnClick = Button10Click + end + object Button11: TButton + Left = 552 + Top = 48 + Width = 73 + Height = 25 + Caption = #23436#25104#25764#38144 + TabOrder = 12 + OnClick = Button11Click + end + object SWFBCodeName: TEdit + Tag = 2 + Left = 497 + Top = 17 + Width = 76 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 13 + OnChange = ordernoChange + end + object FSWFBFK10: TEdit + Tag = 2 + Left = 618 + Top = 17 + Width = 76 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 14 + OnChange = ordernoChange + end + object SWFBKZ10: TEdit + Tag = 2 + Left = 738 + Top = 17 + Width = 76 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 15 + OnChange = ordernoChange + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 82 + Width = 1147 + Height = 18 + Align = alTop + Style = 9 + TabIndex = 0 + TabOrder = 2 + Tabs.Strings = ( + #24453#23457#26680 + #24050#23457#26680 + #24050#23436#25104) + OnChange = cxTabControl1Change + ClientRectBottom = 19 + ClientRectRight = 1147 + ClientRectTop = 19 + end + object Panel2: TPanel + Left = 0 + Top = 100 + Width = 1147 + Height = 103 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 3 + object Label4: TLabel + Left = 32 + Top = 24 + Width = 70 + Height = 14 + Caption = #23567#21367#24133#23485'cm' + end + object SmalMF1: TEdit + Tag = 2 + Left = 104 + Top = 21 + Width = 97 + Height = 22 + TabOrder = 0 + Visible = False + end + object SmalMF2: TEdit + Tag = 2 + Left = 224 + Top = 21 + Width = 89 + Height = 22 + TabOrder = 1 + Visible = False + end + object SmalMF3: TEdit + Tag = 2 + Left = 344 + Top = 21 + Width = 81 + Height = 22 + TabOrder = 2 + Visible = False + end + object SmalMF4: TEdit + Tag = 2 + Left = 456 + Top = 21 + Width = 97 + Height = 22 + TabOrder = 3 + Visible = False + end + object SmalMF5: TEdit + Tag = 2 + Left = 584 + Top = 21 + Width = 89 + Height = 22 + TabOrder = 4 + Visible = False + end + object SmalMF6: TEdit + Tag = 2 + Left = 704 + Top = 21 + Width = 105 + Height = 22 + TabOrder = 5 + Visible = False + end + object SmalMF7: TEdit + Tag = 2 + Left = 104 + Top = 45 + Width = 97 + Height = 22 + TabOrder = 6 + Visible = False + end + object SmalMF8: TEdit + Tag = 2 + Left = 224 + Top = 45 + Width = 89 + Height = 22 + TabOrder = 7 + Visible = False + end + object SmalMF9: TEdit + Tag = 2 + Left = 344 + Top = 45 + Width = 81 + Height = 22 + TabOrder = 8 + Visible = False + end + object SmalMF10: TEdit + Tag = 2 + Left = 456 + Top = 45 + Width = 97 + Height = 22 + TabOrder = 9 + Visible = False + end + object SmalMF11: TEdit + Tag = 2 + Left = 584 + Top = 45 + Width = 89 + Height = 22 + TabOrder = 10 + Visible = False + end + object SmalMF12: TEdit + Tag = 2 + Left = 704 + Top = 45 + Width = 105 + Height = 22 + TabOrder = 11 + Visible = False + end + object Button6: TButton + Left = 104 + Top = 72 + Width = 97 + Height = 25 + Caption = #30830#23450 + TabOrder = 12 + Visible = False + OnClick = Button6Click + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 464 + Width = 1147 + Height = 170 + Align = alBottom + PopupMenu = PopupMenu1 + TabOrder = 4 + object Tv2: TcxGridDBTableView + OnDblClick = Tv1DblClick + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv2CellClick + DataController.DataSource = DSSCAnPai + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = cxGridDBColumn12 + end + item + Kind = skSum + Column = cxGridDBColumn13 + end + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + Column = cxGridDBColumn3 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = cxStyle1 + Styles.IncSearch = cxStyle1 + Styles.Selection = cxStyle1 + object v2Column1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 81 + end + object v2Column2: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 73 + end + object v2Column3: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 72 + end + object v2Column4: TcxGridDBColumn + Caption = #20811#37325'(g/'#13217')' + DataBinding.FieldName = 'SWFBKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 84 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #23433#25490#26085#26399 + DataBinding.FieldName = 'AnPaiDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 87 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #29983#20135#24207#21495 + DataBinding.FieldName = 'SCOrder' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column4PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 75 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #23433#25490#31859#25968 + DataBinding.FieldName = 'OrderQtyM' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column19PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 74 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #23450#21367#38271'M' + DataBinding.FieldName = 'BigLen' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column19PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 78 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #23450#21367#25968 + DataBinding.FieldName = 'BigCount' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column19PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 78 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #38376#24133#19978#38480'cm' + DataBinding.FieldName = 'BigMF' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column19PropertiesEditValueChanged + Width = 95 + end + object v2Column9: TcxGridDBColumn + Caption = #38376#24133#19979#38480'cm' + DataBinding.FieldName = 'BigMFSmal' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column19PropertiesEditValueChanged + Width = 85 + end + object cxGridDBColumn7: TcxGridDBColumn + Caption = #23567#21367#20998#20999#20010#25968 + DataBinding.FieldName = 'SmalCount' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column19PropertiesEditValueChanged + Width = 94 + end + object cxGridDBColumn8: TcxGridDBColumn + Caption = #23567#21367#20998#20999#24133#23485 + DataBinding.FieldName = 'SmalMF' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 228 + end + object v2Column5: TcxGridDBColumn + Caption = #37325#37327#35828#26126 + DataBinding.FieldName = 'WeigthNote' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column5PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 112 + end + object v2Column6: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'APNote' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 117 + end + object cxGridDBColumn9: TcxGridDBColumn + Caption = #23567#21367#20801#35768#20559#24046 + DataBinding.FieldName = 'SmalPC' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v1Column23PropertiesEditValueChanged + Width = 98 + end + object cxGridDBColumn10: TcxGridDBColumn + Caption = #20998#20999#35828#26126 + DataBinding.FieldName = 'SmalNote' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = False + Properties.OnButtonClick = v1Column24PropertiesButtonClick + Properties.OnEditValueChanged = v1Column24PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 129 + end + object cxGridDBColumn11: TcxGridDBColumn + Caption = #25171#21253#35201#27714 + DataBinding.FieldName = 'DBNote' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column25PropertiesButtonClick + Properties.OnEditValueChanged = v1Column25PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 203 + end + object cxGridDBColumn12: TcxGridDBColumn + Caption = #29983#20135#31859#25968 + DataBinding.FieldName = 'SCMQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 81 + end + object cxGridDBColumn13: TcxGridDBColumn + Caption = #26410#29983#20135#31859#25968 + DataBinding.FieldName = 'WSCMQty' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 102 + end + object v2Column8: TcxGridDBColumn + Caption = #23436#25104#26085#26399 + DataBinding.FieldName = 'WCDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ImmediatePost = True + Properties.SaveTime = False + Properties.ShowTime = False + Properties.OnEditValueChanged = v2Column8PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 82 + end + object cxGridDBColumn22: TcxGridDBColumn + Caption = #29366#24577 + DataBinding.FieldName = 'SCStatus' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + end + object v2Column7: TcxGridDBColumn + Caption = #29983#20135#19979#36798 + DataBinding.FieldName = 'SCXDFlag' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 67 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 496 + Top = 240 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 536 + Top = 240 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 576 + Top = 248 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 608 + Top = 248 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 640 + Top = 256 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 456 + Top = 240 + end + object cxStyleRepository1: TcxStyleRepository + object cxStyle1: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = 4707838 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -15 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlack + end + end + object DSSCAnPai: TDataSource + DataSet = CDS_SCAnPai + Left = 608 + Top = 496 + end + object CDS_SCAnPai: TClientDataSet + Aggregates = <> + Params = <> + Left = 608 + Top = 528 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 528 + Top = 496 + end + object PopupMenu1: TPopupMenu + Left = 400 + Top = 528 + object N1: TMenuItem + Caption = #22686#34892 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #21024#34892 + OnClick = N2Click + end + end + object ADOQuerySub: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 560 + Top = 536 + end +end diff --git a/艾登贸易管理/U_ProductionAnPaiNew.pas b/艾登贸易管理/U_ProductionAnPaiNew.pas new file mode 100644 index 0000000..a979f69 --- /dev/null +++ b/艾登贸易管理/U_ProductionAnPaiNew.pas @@ -0,0 +1,1006 @@ +unit U_ProductionAnPaiNew; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, ExtCtrls, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, ADODB, DBClient, cxTextEdit, cxPC, + cxCalendar, ComCtrls, cxButtonEdit, cxGridCustomPopupMenu, + cxGridPopupMenu, Menus, cxCheckBox; + +type + TfrmProductionAnPaiNew = class(TForm) + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1OrderNo: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1PRTMF: TcxGridDBColumn; + v1PRTKZ: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + Panel1: TPanel; + Label1: TLabel; + Label15: TLabel; + Label16: TLabel; + orderno: TEdit; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + CDS_Main: TClientDataSet; + DataSource1: TDataSource; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + v1Column14: TcxGridDBColumn; + Button1: TButton; + Button2: TButton; + Button3: TButton; + cxTabControl1: TcxTabControl; + Label2: TLabel; + Label3: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + Button4: TButton; + Button5: TButton; + Panel2: TPanel; + SmalMF1: TEdit; + SmalMF2: TEdit; + SmalMF3: TEdit; + SmalMF4: TEdit; + SmalMF5: TEdit; + SmalMF6: TEdit; + Label4: TLabel; + SmalMF7: TEdit; + SmalMF8: TEdit; + SmalMF9: TEdit; + SmalMF10: TEdit; + SmalMF11: TEdit; + SmalMF12: TEdit; + Button6: TButton; + cxGridPopupMenu1: TcxGridPopupMenu; + Button7: TButton; + v1Column26: TcxGridDBColumn; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridDBColumn7: TcxGridDBColumn; + cxGridDBColumn8: TcxGridDBColumn; + cxGridDBColumn9: TcxGridDBColumn; + cxGridDBColumn10: TcxGridDBColumn; + cxGridDBColumn11: TcxGridDBColumn; + cxGridDBColumn12: TcxGridDBColumn; + cxGridDBColumn13: TcxGridDBColumn; + cxGridDBColumn22: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + DSSCAnPai: TDataSource; + CDS_SCAnPai: TClientDataSet; + cxGridPopupMenu2: TcxGridPopupMenu; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column6: TcxGridDBColumn; + ADOQuerySub: TADOQuery; + v2Column5: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + Button8: TButton; + Button9: TButton; + Button10: TButton; + Button11: TButton; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + Label5: TLabel; + SWFBCodeName: TEdit; + Label6: TLabel; + FSWFBFK10: TEdit; + Label7: TLabel; + SWFBKZ10: TEdit; + v2Column9: TcxGridDBColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ordernoChange(Sender: TObject); + procedure v1Column4PropertiesEditValueChanged(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure Button5Click(Sender: TObject); + procedure Tv1DblClick(Sender: TObject); + procedure v1Column19PropertiesEditValueChanged(Sender: TObject); + procedure v1Column23PropertiesEditValueChanged(Sender: TObject); + procedure Button6Click(Sender: TObject); + procedure v1Column24PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column24PropertiesEditValueChanged(Sender: TObject); + procedure v1Column25PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure v1Column25PropertiesEditValueChanged(Sender: TObject); + procedure Button7Click(Sender: TObject); + procedure N1Click(Sender: TObject); + // procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure Tv2CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure v2Column5PropertiesEditValueChanged(Sender: TObject); + procedure v2Column6PropertiesEditValueChanged(Sender: TObject); + procedure Button10Click(Sender: TObject); + procedure Button11Click(Sender: TObject); + procedure Button9Click(Sender: TObject); + procedure Button8Click(Sender: TObject); + procedure v2Column8PropertiesEditValueChanged(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + procedure VisbleControl(Panel55:TWinControl;XS:Boolean;SXCount:Integer); + procedure InitGridAnPai(); + public + { Public declarations } + end; + +var + frmProductionAnPaiNew: TfrmProductionAnPaiNew; + +implementation +uses + U_DataLink,U_Fun,U_OrderAttachment,U_ZDYHelpSel,U_JiangLiaoSet; + +{$R *.dfm} + +procedure TfrmProductionAnPaiNew.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + orderno.SetFocus; + Action:=caFree; +end; + +procedure TfrmProductionAnPaiNew.FormDestroy(Sender: TObject); +begin + frmProductionAnPaiNew:=nil; +end; + +procedure TfrmProductionAnPaiNew.FormCreate(Sender: TObject); +begin + cxGrid1.Align:=alClient; + if Trim(DParameters1)='' then + begin + Button5.Visible:=True; + Button4.Visible:=True; + end else + begin + Button5.Visible:=False; + Button4.Visible:=False; + end; +end; +procedure TfrmProductionAnPaiNew.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add(' exec P_ProductAnPai :begdate,:enddate,:pstate,:Wsql'); + if cxTabControl1.TabIndex=0 then + begin + Parameters.ParamByName('begdate').Value:=''; + Parameters.ParamByName('enddate').Value:=''; + Parameters.ParamByName('pstate').Value:=1; + end else + if cxTabControl1.TabIndex=1 then + begin + Parameters.ParamByName('begdate').Value:=''; + Parameters.ParamByName('enddate').Value:=''; + Parameters.ParamByName('pstate').Value:=2; + end else + if cxTabControl1.TabIndex=2 then + begin + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.Date) ; + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',EndDate.Date+1); + Parameters.ParamByName('pstate').Value:=3; + end; + Parameters.ParamByName('Wsql').Value:=''; + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmProductionAnPaiNew.InitGridAnPai(); +begin + try + ADOQuerySub.DisableControls; + with ADOQuerySub do + begin + Filtered:=False; + Close; + sql.Clear; + sql.Add('select A.*,C.OrderNo,B.SWFBCodeName,B.SWFBColor,B.SWFBHW,B.SWFBKZ '); + sql.Add(',SCMQty=(select isnull(sum(MJLen),0) from WFB_MJJY AA where AA.APID=A.APID)'); + sql.Add(',Case when A.OrderQtyM-(select isnull(sum(MJLen),0) from WFB_MJJY AA where AA.APID=A.APID)>0 then'); + SQL.Add(' A.OrderQtyM-(select isnull(sum(MJLen),0) from WFB_MJJY AA where AA.APID=A.APID) else 0 end as WSCMQty'); + SQL.Add('from WFBOrder_Sub_AnPai A inner join WFBOrder_Sub B on A.SubId=B.SubId'); + sql.Add(' inner join WFBOrder_Main C on A.MainId=C.MainId'); + sql.Add(' where A.SubId='''+Trim(CDS_Main.fieldbyname('SubId').AsString)+''''); + if cxTabControl1.TabIndex=1 then + begin + SQL.Add(' and Isnull(A.SCStatus,'''')<>'''' '); + end else + if cxTabControl1.TabIndex=2 then + begin + SQL.Add(' and Isnull(A.SCStatus,'''')='''' '); + end; + Open; + end; + SCreateCDS20(ADOQuerySub,CDS_SCAnPai); + SInitCDSData20(ADOQuerySub,CDS_SCAnPai); + finally + ADOQuerySub.EnableControls; + end; +end; + +procedure TfrmProductionAnPaiNew.Button1Click(Sender: TObject); +begin + orderno.SetFocus; + InitGrid(); + InitGridAnPai(); +end; + +procedure TfrmProductionAnPaiNew.FormShow(Sender: TObject); +begin + ReadCxGrid('FD1',Tv1,'޷IJ'); + ReadCxGrid('FD2',Tv2,'޷IJ'); + EndDate.Date:=SGetServerDate(ADOQueryTemp); + BegDate.Date:=EndDate.Date-30; + if cxTabControl1.TabIndex=1 then + begin + Tv2.OptionsSelection.CellSelect:=False; + end else + Tv2.OptionsSelection.CellSelect:=True; + if Trim(DParameters1)='' then + begin + Tv2.OptionsSelection.CellSelect:=False; + end; + InitGrid(); + InitGridAnPai(); +end; + +procedure TfrmProductionAnPaiNew.ordernoChange(Sender: TObject); +begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); +end; + +procedure TfrmProductionAnPaiNew.v1Column4PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + with CDS_SCAnPai do + begin + Edit; + FieldByName('SCOrder').Value:=Trim(mvalue); + FieldByName('AnPaiDate').Value:=Now; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFBOrder_Sub_AnPai Set SCOrder='''+Trim(mvalue)+''''); + SQL.Add(',AnPaiDate=getdate()'); + SQL.Add(' where APId='''+Trim(CDS_SCAnPai.fieldbyname('APId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmProductionAnPaiNew.Button2Click(Sender: TObject); +begin + orderno.SetFocus; + WriteCxGrid('FD1',Tv1,'޷IJ'); + WriteCxGrid('FD2',Tv2,'޷IJ'); + Close; +end; + +procedure TfrmProductionAnPaiNew.Button3Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + TcxGridToExcel('',cxGrid1); +end; + +procedure TfrmProductionAnPaiNew.cxTabControl1Change(Sender: TObject); +begin + InitGrid(); + InitGridAnPai(); + if cxTabControl1.TabIndex=0 then + begin + Tv2.OptionsSelection.CellSelect:=True; + end else + Tv2.OptionsSelection.CellSelect:=False; + if Trim(DParameters1)='' then + begin + Tv2.OptionsSelection.CellSelect:=False; + end; + VisbleControl(Panel2,False,Panel2.ControlCount); +end; + +procedure TfrmProductionAnPaiNew.Button4Click(Sender: TObject); +begin + if cxTabControl1.TabIndex<>0 then Exit; + if CDS_SCAnPai.IsEmpty then Exit; + if Trim(DName)=Trim(CDS_Main.fieldbyname('AnPaiPerson').AsString) then + begin + Application.MessageBox('Լݣ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪִв','ʾ',32+4)<>IDYES then Exit; + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFBOrder_Sub Set AnPaiChker='''+Trim(DName)+''''); + sql.Add(',AnPaiChkStatus=''ͨ'''); + sql.add(',AnPaiChkDate=getdate()'); + SQL.Add(' where SubId='''+Trim(CDS_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + + ADOQueryCmd.Connection.CommitTrans; + CDS_Main.Delete; + InitGridAnPai(); + Application.MessageBox('ɹ','ʾ',0); + Exit; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +procedure TfrmProductionAnPaiNew.Button5Click(Sender: TObject); +begin + if cxTabControl1.TabIndex<>1 then Exit; + if Trim(DName)=Trim(CDS_Main.fieldbyname('AnPaiPerson').AsString) then + begin + Application.MessageBox('Լݣ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪִв','ʾ',32+4)<>IDYES then Exit; + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFBOrder_Sub Set AnPaiChker='''+Trim(DName)+''''); + sql.Add(',AnPaiChkStatus=''˲ͨ'','); + sql.add('AnPaiChkDate=getdate()'); + SQL.Add(' where SubId='''+Trim(CDS_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + CDS_Main.Delete; + InitGridAnPai(); + Application.MessageBox('ɹ','ʾ',0); + Exit; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; + +procedure TfrmProductionAnPaiNew.Tv1DblClick(Sender: TObject); +begin + try + frmOrderAttachment:=TfrmOrderAttachment.Create(Application); + with frmOrderAttachment do + begin + FAMainId:=Trim(Self.CDS_Main.fieldbyname('MainId').AsString); + Panel1.Enabled:=False; + if ShowModal=1 then + begin + + end; + end; + finally + frmOrderAttachment.Free; + end; +end; + +procedure TfrmProductionAnPaiNew.v1Column19PropertiesEditValueChanged( + Sender: TObject); +var + mvalue,FFieldName:String; + i:Integer; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + mvalue:='0'; + FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_SCAnPai do + begin + Edit; + FieldByName(FFieldName).Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFBOrder_Sub_AnPai Set '+FFieldName+'='+Trim(mvalue)); + SQL.Add(',AnPaiPerson='''+Trim(DName)+''''); + SQL.Add(' where APId='''+Trim(CDS_SCAnPai.fieldbyname('APId').AsString)+''''); + ExecSQL; + end; + if Trim(FFieldName)='SmalCount' then + begin + VisbleControl(Panel2,False,Panel2.ControlCount); + VisbleControl(Panel2,True,strtoint(mvalue)+1); + end; + if strtoint(mvalue)+1>0 then + begin + Button6.Visible:=True; + end; +end; + +procedure TfrmProductionAnPaiNew.v1Column23PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + mvalue:=''; + with CDS_SCAnPai do + begin + Edit; + FieldByName('SmalPC').Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFBOrder_Sub_AnPai Set SmalPC='''+Trim(mvalue)+''''); + SQL.Add(' where APId='''+Trim(CDS_SCAnPai.fieldbyname('APId').AsString)+''''); + ExecSQL; + end; +end; +procedure TfrmProductionAnPaiNew.VisbleControl(Panel55:TWinControl;XS:Boolean;SXCount:Integer); +var + i:Integer; +begin + with Panel55 do + begin + for i:=0 to SXCount-1 do + begin + Controls[i].Visible:=XS; + end; + end; +end; + +procedure TfrmProductionAnPaiNew.Button6Click(Sender: TObject); +var + i,j:Integer; + FFname,FFnameValue,FSubId:string; +begin + //FSubId:=Trim(CDS_Main.fieldbyname('SubId').AsString); + try + j:=0; + ADOQueryCmd.Connection.BeginTrans; + with Panel2 do + begin + for i:=0 to Panel2.ControlCount-1 do + begin + if Controls[i] is TLabel then Continue; + if Controls[i] is TButton then Continue; + if Controls[i].Visible=True then + begin + FFname:=Trim(Controls[i].Name); + if Trim(TEdit(Controls[i]).Text)='' then + begin + ADOQueryCmd.Connection.RollbackTrans; + j:=9; + Break; + end; + if StrToFloat((TEdit(Controls[i]).Text))=0 then + begin + ADOQueryCmd.Connection.RollbackTrans; + j:=10; + Break; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Sub_AnPai Set '+FFname+'='+Trim(TEdit(Controls[i]).Text)); + SQL.Add(' where APId='''+Trim(CDS_SCAnPai.fieldbyname('APId').AsString)+''''); + ExecSQL; + end; + with CDS_SCAnPai do + begin + Edit; + FieldByName(Controls[i].Name).Value:=Trim(TEdit(Controls[i]).Text); + Post; + end; + end; + end; + if j=0 then + ADOQueryCmd.Connection.CommitTrans + else + if j=9 then + begin + //ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('СΪգ','ʾ',0); + Exit; + end else + if j=10 then + begin + //ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('СΪ㣡','ʾ',0); + Exit; + end; + end; + //InitGrid(); + // CDS_Main.Locate('SubId',Trim(FSubId),[]); + with Panel2 do + begin + j:=0; + for i:=0 to Panel2.ControlCount-1 do + begin + if Controls[i] is TLabel then Continue; + if Controls[i] is TButton then Continue; + if TEdit(Controls[i]).Visible=True then + begin + if j=0 then + FSubId:=Trim(TEdit(Controls[i]).Text) + else + FSubId:=FSubId+','+Trim(TEdit(Controls[i]).Text); + j:=j+1; + end; + end; + end; + with CDS_SCAnPai do + begin + Edit; + FieldByName('SmalMF').Value:=Trim(FSubId); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Sub_Anpai Set SmalMF='''+Trim(FSubId)+'''') ; + sql.Add(' where APID='''+Trim(CDS_SCAnPai.fieldbyname('APID').AsString)+''''); + ExecSQL; + end; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȷ쳣','ʾ',0); + end; +end; + +procedure TfrmProductionAnPaiNew.v1Column24PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +var + mvalue:String; +begin + mvalue:=Trim(CDS_Main.fieldbyname('SmalNote').AsString); + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='SmalNote'; + flagname:='˵'; + if ShowModal=1 then + begin + with Self.CDS_SCAnPai do + begin + Edit; + FieldByName('SmalNote').Value:=mvalue+Trim(ReturnStr); + //post; + end; + mvalue:=mvalue+ReturnStr; + with Self.ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('UPdate WFBOrder_Sub_AnPai Set SmalNote='''+Trim(mvalue)+''''); + SQL.Add(' where APId='''+Trim(CDS_SCAnPai.fieldbyname('APId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + end; +end; + +procedure TfrmProductionAnPaiNew.v1Column24PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + mvalue:=''; + with CDS_SCAnPai do + begin + Edit; + FieldByName('SmalNote').Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFBOrder_Sub_AnPai Set SmalNote='''+Trim(mvalue)+''''); + SQL.Add(' where APId='''+Trim(CDS_SCAnPai.fieldbyname('APID').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmProductionAnPaiNew.v1Column25PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +var + mvalue:String; +begin + mvalue:=Trim(CDS_Main.fieldbyname('DBNote').AsString); + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='DBNote'; + flagname:='Ҫ'; + if ShowModal=1 then + begin + with Self.CDS_SCAnPai do + begin + Edit; + FieldByName('DBNote').Value:=mvalue+Trim(ReturnStr); + //post; + end; + mvalue:=mvalue+ReturnStr; + with Self.ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('UPdate WFBOrder_Sub_AnPai Set DBNote='''+Trim(mvalue)+''''); + SQL.Add(' where APId='''+Trim(CDS_SCAnPai.fieldbyname('APId').AsString)+''''); + ExecSQL; + end; + end; + end; + finally + end; +end; + +procedure TfrmProductionAnPaiNew.v1Column25PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + mvalue:=''; + with CDS_SCAnPai do + begin + Edit; + FieldByName('DBNote').Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFBOrder_Sub_AnPai Set DBNote='''+Trim(mvalue)+''''); + SQL.Add(' where ApId='''+Trim(CDS_SCAnPai.fieldbyname('ApId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmProductionAnPaiNew.Button7Click(Sender: TObject); +begin + try + frmJiangLiaoSet:=TfrmJiangLiaoSet.Create(Application); + with frmJiangLiaoSet do + begin + if ShowModal=1 then + begin + + end; + end; + finally + end; +end; + +procedure TfrmProductionAnPaiNew.N1Click(Sender: TObject); +var + maxno:String; +begin + if cxTabControl1.TabIndex>0 then Exit; + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxno,'AP','WFBOrder_Sub_AnPai',3,1)=False then + begin + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFBOrder_Sub_AnPai where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('APID').Value:=Trim(maxno); + FieldByName('MainId').Value:=Trim(CDS_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(CDS_Main.fieldbyname('SubId').AsString); + FieldByName('AnPaiPerson').Value:=Trim(DName); + FieldByName('SmalCount').Value:=0; + FieldByName('AnPaiDate').Value:=SGetServerDate(ADOQueryTemp); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Sub Set AnPaiPerson='''+Trim(DName)+''''); + sql.Add(',AnPaiDate=getdate()'); + SQL.Add(' where SubId='''+Trim(CDS_Main.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + with CDS_Main do + begin + Edit; + FieldByName('AnPaiPerson').Value:=Trim(DName); + Post; + end; + with CDS_SCAnPai do + begin + Append; + FieldByName('APID').Value:=Trim(maxno); + FieldByName('MainId').Value:=Trim(CDS_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(CDS_Main.fieldbyname('SubId').AsString); + FieldByName('AnPaiDate').Value:=SGetServerDate(ADOQueryTemp); + FieldByName('SmalCount').Value:=0; + FieldByName('OrderNo').Value:=Trim(CDS_Main.fieldbyname('OrderNo').AsString); + FieldByName('SWFBColor').Value:=Trim(CDS_Main.fieldbyname('SWFBColor').AsString); + FieldByName('SWFBKZ').Value:=Trim(CDS_Main.fieldbyname('SWFBKZ').AsString); + FieldByName('SWFBHW').Value:=Trim(CDS_Main.fieldbyname('SWFBHW').AsString); + FieldByName('SmalMF1').Value:=0; + FieldByName('SmalMF2').Value:=0; + FieldByName('SmalMF3').Value:=0; + FieldByName('SmalMF4').Value:=0; + FieldByName('SmalMF5').Value:=0; + FieldByName('SmalMF6').Value:=0; + FieldByName('SmalMF7').Value:=0; + FieldByName('SmalMF8').Value:=0; + FieldByName('SmalMF9').Value:=0; + FieldByName('SmalMF10').Value:=0; + FieldByName('SmalMF11').Value:=0; + FieldByName('SmalMF12').Value:=0; + + Post; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + Exit; + end; +end; + +procedure TfrmProductionAnPaiNew.N2Click(Sender: TObject); +begin + if cxTabControl1.TabIndex>0 then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFBOrder_Sub_AnPai where APID='''+Trim(CDS_SCAnPai.fieldbyname('APID').AsString)+''''); + ExecSQL; + end; + CDS_SCAnPai.Delete; +end; + +procedure TfrmProductionAnPaiNew.Tv2CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + VisbleControl(Panel2,False,Panel2.ControlCount); + VisbleControl(Panel2,True,CDS_SCAnPai.fieldbyname('SmalCount').Value+1); + + if Trim(CDS_SCAnPai.FieldByName('SmalCount').AsString)='' then Exit; + if CDS_SCAnPai.fieldbyname('SmalCount').Value>0 then + begin + SCSHDataCDS(CDS_SCAnPai,Panel2,2); + if cxTabControl1.TabIndex=0 then + Button6.Visible:=True + else + Button6.Visible:=False; + end; +end; + +procedure TfrmProductionAnPaiNew.Tv1CellClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + InitGridAnPai(); +end; + +procedure TfrmProductionAnPaiNew.v2Column5PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + mvalue:=''; + with CDS_SCAnPai do + begin + Edit; + FieldByName('WeigthNote').Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFBOrder_Sub_AnPai Set WeigthNote='''+Trim(mvalue)+''''); + SQL.Add(' where APId='''+Trim(CDS_SCAnPai.fieldbyname('APId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmProductionAnPaiNew.v2Column6PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:String; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + if Trim(mvalue)='' then + mvalue:=''; + with CDS_SCAnPai do + begin + Edit; + FieldByName('APNote').Value:=Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFBOrder_Sub_AnPai Set APNote='''+Trim(mvalue)+''''); + SQL.Add(' where APId='''+Trim(CDS_SCAnPai.fieldbyname('APId').AsString)+''''); + ExecSQL; + end; +end; + +procedure TfrmProductionAnPaiNew.Button10Click(Sender: TObject); +begin + if cxTabControl1.TabIndex<>1 then Exit; + if Application.MessageBox('ȷҪִɲ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Sub_AnPai Set SCStatus='''',WCDate=getdate() where APID='''+Trim(CDS_SCAnPai.fieldbyname('APID').AsString)+''''); + ExecSQL; + end; + CDS_SCAnPai.Delete; +end; + +procedure TfrmProductionAnPaiNew.Button11Click(Sender: TObject); +begin + if cxTabControl1.TabIndex<>2 then Exit; + if Application.MessageBox('ȷҪִɳ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Sub_AnPai Set SCStatus='''' where APID='''+Trim(CDS_SCAnPai.fieldbyname('APID').AsString)+''''); + ExecSQL; + end; + CDS_SCAnPai.Delete; +end; + +procedure TfrmProductionAnPaiNew.Button9Click(Sender: TObject); +begin + if cxTabControl1.TabIndex<>1 then Exit; + if Application.MessageBox('ȷҪִ´','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Sub_AnPai Set SCXDFlag=1 where APID='''+Trim(CDS_SCAnPai.fieldbyname('APID').AsString)+''''); + ExecSQL; + end; + with CDS_SCAnPai do + begin + Edit; + FieldByName('SCXDFlag').Value:=True; + Post; + end; +end; + +procedure TfrmProductionAnPaiNew.Button8Click(Sender: TObject); +begin + if cxTabControl1.TabIndex<>1 then Exit; + if Application.MessageBox('ȷҪִ','ʾ',32+4)<>IDYES then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFBOrder_Sub_AnPai Set SCXDFlag=0 where APID='''+Trim(CDS_SCAnPai.fieldbyname('APID').AsString)+''''); + ExecSQL; + end; + with CDS_SCAnPai do + begin + Edit; + FieldByName('SCXDFlag').Value:=false; + Post; + end; +end; + +procedure TfrmProductionAnPaiNew.v2Column8PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:TDateTime; +begin + mvalue:=TcxDateEdit(Sender).EditingValue; + if Trim(DateTimeToStr(mvalue))='' then + begin + mvalue:=null; + end; + with CDS_SCAnPai do + begin + Edit; + FieldByName('WCDate').Value:=mvalue; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate WFBOrder_Sub_AnPai Set WCDate='''+Trim(FormatDateTime('yyyy-MM-dd HH:mm:ss',mvalue))+''''); + SQL.Add(' where APId='''+Trim(CDS_SCAnPai.fieldbyname('APId').AsString)+''''); + ExecSQL; + end; +end; + +end. diff --git a/艾登贸易管理/U_SCGYSet.dfm b/艾登贸易管理/U_SCGYSet.dfm new file mode 100644 index 0000000..1c29d81 --- /dev/null +++ b/艾登贸易管理/U_SCGYSet.dfm @@ -0,0 +1,1297 @@ +object frmSCGYSet: TfrmSCGYSet + Left = 58 + Top = 31 + Width = 1137 + Height = 706 + Caption = #29983#20135#24037#33402#21333 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 14 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1129 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_WFBProducttion.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = ToolButton1Click + end + object TBSave: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object ToolButton2: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 13 + Visible = False + OnClick = ToolButton2Click + end + object ToolButton5: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #23457#26680#36890#36807 + ImageIndex = 104 + OnClick = ToolButton5Click + end + object ToolButton6: TToolButton + Left = 276 + Top = 0 + AutoSize = True + Caption = #23457#26680#19981#36890#36807 + ImageIndex = 109 + OnClick = ToolButton6Click + end + object TBClose: TToolButton + Left = 375 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 29 + Width = 1129 + Height = 76 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 16 + Top = 15 + Width = 60 + Height = 14 + Caption = #31614#21457#26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 203 + Top = 15 + Width = 45 + Height = 14 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 203 + Top = 39 + Width = 46 + Height = 14 + Caption = #23458' '#25143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 382 + Top = 15 + Width = 30 + Height = 14 + Caption = #33457#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 523 + Top = 15 + Width = 30 + Height = 14 + Caption = #20811#37325 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 523 + Top = 39 + Width = 30 + Height = 14 + Caption = #39068#33394 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 382 + Top = 39 + Width = 30 + Height = 14 + Caption = #37197#27604 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 643 + Top = 15 + Width = 60 + Height = 14 + Caption = #20135#21697#20195#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 643 + Top = 39 + Width = 60 + Height = 14 + Caption = #32593#23380#30446#25968 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 76 + Top = 11 + Width = 98 + Height = 22 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 75 + Top = 35 + Width = 99 + Height = 22 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + TabOrder = 1 + end + object OrderNo: TEdit + Tag = 2 + Left = 247 + Top = 11 + Width = 103 + Height = 22 + TabOrder = 2 + OnChange = OrderNoChange + end + object CustomnoName: TEdit + Tag = 2 + Left = 247 + Top = 35 + Width = 104 + Height = 22 + TabOrder = 3 + OnChange = OrderNoChange + end + object SWFBHW: TEdit + Tag = 2 + Left = 414 + Top = 11 + Width = 71 + Height = 22 + TabOrder = 4 + OnChange = OrderNoChange + end + object SWFBKZ: TEdit + Tag = 2 + Left = 554 + Top = 11 + Width = 63 + Height = 22 + TabOrder = 5 + OnChange = OrderNoChange + end + object SWFBColor: TEdit + Tag = 2 + Left = 554 + Top = 35 + Width = 63 + Height = 22 + TabOrder = 6 + OnChange = OrderNoChange + end + object YLPB: TEdit + Tag = 2 + Left = 414 + Top = 35 + Width = 71 + Height = 22 + TabOrder = 7 + OnChange = OrderNoChange + end + object SWFBCodeName: TEdit + Tag = 2 + Left = 706 + Top = 11 + Width = 87 + Height = 22 + TabOrder = 8 + OnChange = OrderNoChange + end + object WKMS: TEdit + Tag = 2 + Left = 706 + Top = 35 + Width = 87 + Height = 22 + TabOrder = 9 + OnChange = OrderNoChange + end + end + object cxTabControl1: TcxTabControl + Left = 0 + Top = 105 + Width = 1129 + Height = 24 + Align = alTop + Style = 9 + TabIndex = 0 + TabOrder = 2 + Tabs.Strings = ( + #24453#29983#25104 + #24050#29983#25104 + #23457#26680#36890#36807) + OnChange = cxTabControl1Change + ClientRectBottom = 24 + ClientRectRight = 1129 + ClientRectTop = 21 + end + object cxGrid1: TcxGrid + Left = 0 + Top = 129 + Width = 1129 + Height = 146 + Align = alTop + TabOrder = 3 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv1CellClick + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBProducttion.SHuangSe + Styles.IncSearch = DataLink_WFBProducttion.SHuangSe + Styles.Selection = DataLink_WFBProducttion.SHuangSe + object v1Column12: TcxGridDBColumn + Caption = #24037#33402#21333#21495'('#35746#21333#21495')' + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 112 + end + object v1Column11: TcxGridDBColumn + Caption = #26085#26399 + DataBinding.FieldName = 'SYDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Width = 84 + end + object v1Column14: TcxGridDBColumn + Caption = #23458#25143#21517#31216 + DataBinding.FieldName = 'CustomnoName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 63 + end + object v1Column13: TcxGridDBColumn + Caption = #20135#21697#20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 70 + end + object v1Column3: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 95 + end + object v1Column9: TcxGridDBColumn + Caption = #32593#23380#30446#25968 + DataBinding.FieldName = 'WKMS' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 78 + end + object v1Column2: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 109 + end + object v1Column8: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'SWFBKZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 91 + end + object v1Column10: TcxGridDBColumn + Caption = #20027#35201#21407#26009#37197#27604 + DataBinding.FieldName = 'YLPB' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 96 + end + object v1Column4: TcxGridDBColumn + Caption = #23457#26680#20154 + DataBinding.FieldName = 'Chker' + HeaderAlignmentHorz = taCenter + Width = 102 + end + object v1Column1: TcxGridDBColumn + Caption = #29366#24577 + DataBinding.FieldName = 'ChkStatus' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 124 + end + end + object cxGrid1Level4: TcxGridLevel + GridView = Tv1 + end + end + object ScrollBox1: TScrollBox + Left = 0 + Top = 275 + Width = 1129 + Height = 168 + Align = alTop + TabOrder = 4 + object cxGrid4: TcxGrid + Left = 0 + Top = 17 + Width = 249 + Height = 147 + Align = alLeft + TabOrder = 0 + object TvKB: TcxGridDBBandedTableView + OnMouseDown = TvKBMouseDown + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DSKB + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Bands = < + item + Caption = #24320#21253#26426 + Styles.Header = DataLink_WFBProducttion.handBlack + Width = 240 + end> + object cxGridDBBandedColumn4: TcxGridDBBandedColumn + Caption = #24320#21253#26426 + DataBinding.FieldName = 'KBMac' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = cxGridDBBandedColumn4PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 49 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn5: TcxGridDBBandedColumn + Caption = #21407#26009#21517#31216 + DataBinding.FieldName = 'YCLName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = cxGridDBBandedColumn5PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 70 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn6: TcxGridDBBandedColumn + Caption = #25968#37327'(g)' + DataBinding.FieldName = 'KBQty' + HeaderAlignmentHorz = taCenter + Width = 73 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + end + object cxGridLevel3: TcxGridLevel + GridView = TvKB + end + end + object cxGrid3: TcxGrid + Left = 249 + Top = 17 + Width = 536 + Height = 147 + Align = alLeft + TabOrder = 1 + object TVPW: TcxGridDBBandedTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DSSub + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Bands = < + item + Caption = #38138#32593#26426 + Styles.Header = DataLink_WFBProducttion.Default + Width = 529 + end> + object cxGridDBBandedColumn1: TcxGridDBBandedColumn + Caption = #24038#24133#23485 + DataBinding.FieldName = 'SYDefStr1' + HeaderAlignmentHorz = taCenter + Width = 50 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn2: TcxGridDBBandedColumn + Caption = #21491#24133#23485 + DataBinding.FieldName = 'SYDefStr2' + HeaderAlignmentHorz = taCenter + Width = 48 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn3: TcxGridDBBandedColumn + Caption = #23618#25968 + DataBinding.FieldName = 'SYDefStr3' + HeaderAlignmentHorz = taCenter + Width = 40 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object VPWColumn1: TcxGridDBBandedColumn + Caption = #20132#21449#23485 + DataBinding.FieldName = 'SYDefStr4' + HeaderAlignmentHorz = taCenter + Width = 46 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object VPWColumn2: TcxGridDBBandedColumn + Caption = 'in%' + DataBinding.FieldName = 'SYDefStr5' + HeaderAlignmentHorz = taCenter + Width = 38 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object VPWColumn3: TcxGridDBBandedColumn + Caption = 'Profiling' + DataBinding.FieldName = 'SYDefStr6' + HeaderAlignmentHorz = taCenter + Width = 307 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TVPW + end + end + object cxGrid2: TcxGrid + Left = 785 + Top = 17 + Width = 340 + Height = 147 + Align = alClient + TabOrder = 2 + object TvJS: TcxGridDBBandedTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DSSub + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Bands = < + item + Caption = #21367#32469 + Styles.Header = DataLink_WFBProducttion.Default + Width = 305 + end> + object v2Column1: TcxGridDBBandedColumn + Caption = #25104#21367#36895#24230 + DataBinding.FieldName = 'SYDefStr7' + HeaderAlignmentHorz = taCenter + Width = 59 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object v2Column2: TcxGridDBBandedColumn + Caption = #24133#23485 + DataBinding.FieldName = 'SYDefStr8' + HeaderAlignmentHorz = taCenter + Width = 56 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v2Column3: TcxGridDBBandedColumn + Caption = #25163#24863 + DataBinding.FieldName = 'SYDefStr9' + HeaderAlignmentHorz = taCenter + Width = 98 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object vJSColumn1: TcxGridDBBandedColumn + Caption = #21560#27700#24615 + DataBinding.FieldName = 'SYDefStr10' + Width = 92 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TvJS + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 0 + Width = 1125 + Height = 17 + ButtonHeight = 18 + ButtonWidth = 36 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 3 + object ToolButton3: TToolButton + Left = 0 + Top = 0 + Caption = #22686#34892 + ImageIndex = 9 + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 36 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 14 + OnClick = ToolButton4Click + end + end + end + object cxGrid5: TcxGrid + Left = 0 + Top = 600 + Width = 1129 + Height = 69 + Align = alBottom + TabOrder = 5 + object TvSYH: TcxGridDBBandedTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DSSub + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Bands = < + item + Caption = #27700#21050#12289#21360#33457#12289#28888#24178 + Styles.Header = DataLink_WFBProducttion.Default + Width = 1119 + end> + object cxGridDBBandedColumn8: TcxGridDBBandedColumn + Caption = #25277#21560'HZ' + DataBinding.FieldName = 'SYDefStr11' + HeaderAlignmentHorz = taCenter + Width = 52 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn9: TcxGridDBBandedColumn + Caption = '1#'#25302#32593 + DataBinding.FieldName = 'SYDefStr12' + HeaderAlignmentHorz = taCenter + Width = 44 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn10: TcxGridDBBandedColumn + Caption = #22278#40723 + DataBinding.FieldName = 'SYDefStr13' + HeaderAlignmentHorz = taCenter + Width = 47 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn11: TcxGridDBBandedColumn + Caption = '2#'#25302#32593 + DataBinding.FieldName = 'SYDefStr14' + HeaderAlignmentHorz = taCenter + Width = 47 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn12: TcxGridDBBandedColumn + Caption = '1#'#36711#36710 + DataBinding.FieldName = 'SYDefStr15' + HeaderAlignmentHorz = taCenter + Width = 52 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object vQSJColumn1: TcxGridDBBandedColumn + Caption = '2#'#36711#36710 + DataBinding.FieldName = 'SYDefStr16' + HeaderAlignmentHorz = taCenter + Width = 47 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object vQSJColumn2: TcxGridDBBandedColumn + Caption = #21360#33457 + DataBinding.FieldName = 'SYDefStr17' + HeaderAlignmentHorz = taCenter + Width = 47 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object vQSJColumn3: TcxGridDBBandedColumn + Caption = #28888#24178'1#' + DataBinding.FieldName = 'SYDefStr18' + HeaderAlignmentHorz = taCenter + Width = 55 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object vQSJColumn4: TcxGridDBBandedColumn + Caption = #28888#24178'2#' + DataBinding.FieldName = 'SYDefStr19' + HeaderAlignmentHorz = taCenter + Width = 47 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object vQSJColumn5: TcxGridDBBandedColumn + Caption = #28888#24178'3#' + DataBinding.FieldName = 'SYDefStr20' + HeaderAlignmentHorz = taCenter + Width = 48 + Position.BandIndex = 0 + Position.ColIndex = 9 + Position.RowIndex = 0 + end + object vQSJColumn6: TcxGridDBBandedColumn + Caption = '4#'#28888#24178 + DataBinding.FieldName = 'SYDefStr21' + HeaderAlignmentHorz = taCenter + Width = 48 + Position.BandIndex = 0 + Position.ColIndex = 10 + Position.RowIndex = 0 + end + object vQSJColumn7: TcxGridDBBandedColumn + Caption = '5#'#28888#24178 + DataBinding.FieldName = 'SYDefStr22' + HeaderAlignmentHorz = taCenter + Width = 52 + Position.BandIndex = 0 + Position.ColIndex = 11 + Position.RowIndex = 0 + end + object vQSJColumn8: TcxGridDBBandedColumn + Caption = '1#'#27700#21050#21387#21147 + DataBinding.FieldName = 'SYDefStr23' + HeaderAlignmentHorz = taCenter + Width = 79 + Position.BandIndex = 0 + Position.ColIndex = 12 + Position.RowIndex = 0 + end + object vQSJColumn9: TcxGridDBBandedColumn + Caption = '2#'#27700#21050#21387#21147 + DataBinding.FieldName = 'SYDefStr24' + HeaderAlignmentHorz = taCenter + Width = 73 + Position.BandIndex = 0 + Position.ColIndex = 13 + Position.RowIndex = 0 + end + object vQSJColumn10: TcxGridDBBandedColumn + Caption = '3#'#27700#21050#21387#21147 + DataBinding.FieldName = 'SYDefStr25' + HeaderAlignmentHorz = taCenter + Width = 71 + Position.BandIndex = 0 + Position.ColIndex = 14 + Position.RowIndex = 0 + end + object vQSJColumn11: TcxGridDBBandedColumn + Caption = '4#'#27700#21050#21387#21147 + DataBinding.FieldName = 'SYDefStr26' + HeaderAlignmentHorz = taCenter + Width = 74 + Position.BandIndex = 0 + Position.ColIndex = 15 + Position.RowIndex = 0 + end + object vQSJColumn12: TcxGridDBBandedColumn + Caption = '5#'#27700#21050#21387#21147 + DataBinding.FieldName = 'SYDefStr27' + HeaderAlignmentHorz = taCenter + Width = 70 + Position.BandIndex = 0 + Position.ColIndex = 16 + Position.RowIndex = 0 + end + object vQSJColumn13: TcxGridDBBandedColumn + Caption = '6#'#27700#21050#21387#21147 + DataBinding.FieldName = 'SYDefStr28' + HeaderAlignmentHorz = taCenter + Width = 66 + Position.BandIndex = 0 + Position.ColIndex = 17 + Position.RowIndex = 0 + end + end + object cxGridLevel4: TcxGridLevel + GridView = TvSYH + end + end + object cxGrid6: TcxGrid + Left = 0 + Top = 443 + Width = 1129 + Height = 90 + Align = alClient + TabOrder = 6 + object TvSLJ: TcxGridDBBandedTableView + OnMouseDown = TvSLJMouseDown + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DS_SLJ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Bands = < + item + Caption = #26803#29702#26426 + Styles.Header = DataLink_WFBProducttion.FonePurple + Width = 1119 + end> + object cxGridDBBandedColumn13: TcxGridDBBandedColumn + Caption = #19978#26825#31665#21387#21147 + DataBinding.FieldName = 'SLDefStr2' + HeaderAlignmentHorz = taCenter + Width = 74 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn14: TcxGridDBBandedColumn + Caption = #19979#26825#31665#21387#21147 + DataBinding.FieldName = 'SLDefStr3' + HeaderAlignmentHorz = taCenter + Width = 69 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn15: TcxGridDBBandedColumn + Caption = #29983#20135#29575'%' + DataBinding.FieldName = 'SLDefStr4' + HeaderAlignmentHorz = taCenter + Width = 74 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn16: TcxGridDBBandedColumn + Caption = #21890#20837 + DataBinding.FieldName = 'SLDefStr5' + HeaderAlignmentHorz = taCenter + Width = 66 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn17: TcxGridDBBandedColumn + Caption = #38177#26519#36895#24230 + DataBinding.FieldName = 'SLDefStr6' + HeaderAlignmentHorz = taCenter + Width = 65 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn18: TcxGridDBBandedColumn + Caption = #24037#20316#36746#36895#24230 + DataBinding.FieldName = 'SLDefStr7' + HeaderAlignmentHorz = taCenter + Width = 74 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn19: TcxGridDBBandedColumn + Caption = #19978#36947#22827 + DataBinding.FieldName = 'SLDefStr8' + HeaderAlignmentHorz = taCenter + Width = 65 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn20: TcxGridDBBandedColumn + Caption = #19978#26434#20081 + DataBinding.FieldName = 'SLDefStr9' + HeaderAlignmentHorz = taCenter + Width = 67 + Position.BandIndex = 0 + Position.ColIndex = 9 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn21: TcxGridDBBandedColumn + Caption = #19978#21093#21462 + DataBinding.FieldName = 'SLDefStr10' + HeaderAlignmentHorz = taCenter + Width = 77 + Position.BandIndex = 0 + Position.ColIndex = 10 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn22: TcxGridDBBandedColumn + Caption = #19978#36755#32593#24088 + DataBinding.FieldName = 'SLDefStr11' + HeaderAlignmentHorz = taCenter + Width = 65 + Position.BandIndex = 0 + Position.ColIndex = 11 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn23: TcxGridDBBandedColumn + Caption = #19979#36947#22827 + DataBinding.FieldName = 'SLDefStr12' + HeaderAlignmentHorz = taCenter + Width = 69 + Position.BandIndex = 0 + Position.ColIndex = 12 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn24: TcxGridDBBandedColumn + Caption = #19979#26434#20081 + DataBinding.FieldName = 'SLDefStr13' + HeaderAlignmentHorz = taCenter + Width = 66 + Position.BandIndex = 0 + Position.ColIndex = 13 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn25: TcxGridDBBandedColumn + Caption = #19979#21093#21462 + DataBinding.FieldName = 'SLDefStr14' + HeaderAlignmentHorz = taCenter + Width = 73 + Position.BandIndex = 0 + Position.ColIndex = 14 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn26: TcxGridDBBandedColumn + Caption = #19979#23680#32593#24088 + DataBinding.FieldName = 'SLDefStr15' + HeaderAlignmentHorz = taCenter + Width = 111 + Position.BandIndex = 0 + Position.ColIndex = 15 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn27: TcxGridDBBandedColumn + Caption = #26803#29702#26426 + DataBinding.FieldName = 'SLMac' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = cxGridDBBandedColumn27PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 104 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object vSLJColumn1: TcxGridDBBandedColumn + Caption = #38271#24088#31995#25968 + DataBinding.FieldName = 'SLDefStr1' + HeaderAlignmentHorz = taCenter + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + end + object cxGridLevel5: TcxGridLevel + GridView = TvSLJ + end + end + object cxGrid7: TcxGrid + Left = 0 + Top = 533 + Width = 1129 + Height = 67 + Align = alBottom + TabOrder = 7 + object TvQSJ: TcxGridDBBandedTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DSSub + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Bands = < + item + Caption = #29301#20280#26426 + Styles.Header = DataLink_WFBProducttion.Default + Width = 1119 + end> + object cxGridDBBandedColumn28: TcxGridDBBandedColumn + Tag = 1 + Caption = #24635#20493#29575 + DataBinding.FieldName = 'ZBL' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 113 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn29: TcxGridDBBandedColumn + Caption = #31995#25968'1(%)' + DataBinding.FieldName = 'SYDefFlt1' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBBandedColumn29PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 129 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn30: TcxGridDBBandedColumn + Caption = #31995#25968'2(%)' + DataBinding.FieldName = 'SYDefFlt2' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBBandedColumn29PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 109 + Position.BandIndex = 0 + Position.ColIndex = 2 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn31: TcxGridDBBandedColumn + Caption = #31995#25968'3(%)' + DataBinding.FieldName = 'SYDefFlt3' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBBandedColumn29PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 118 + Position.BandIndex = 0 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn32: TcxGridDBBandedColumn + Caption = #31995#25968'4(%)' + DataBinding.FieldName = 'SYDefFlt4' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBBandedColumn29PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 117 + Position.BandIndex = 0 + Position.ColIndex = 4 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn33: TcxGridDBBandedColumn + Caption = #31995#25968'5(%)' + DataBinding.FieldName = 'SYDefFlt5' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBBandedColumn29PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 133 + Position.BandIndex = 0 + Position.ColIndex = 5 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn34: TcxGridDBBandedColumn + Caption = #31995#25968'6(%)' + DataBinding.FieldName = 'SYDefFlt6' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBBandedColumn29PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 121 + Position.BandIndex = 0 + Position.ColIndex = 6 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn35: TcxGridDBBandedColumn + Caption = #31995#25968'7(%)' + DataBinding.FieldName = 'SYDefFlt7' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBBandedColumn29PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 126 + Position.BandIndex = 0 + Position.ColIndex = 7 + Position.RowIndex = 0 + end + object cxGridDBBandedColumn36: TcxGridDBBandedColumn + Caption = #31995#25968'8(%)' + DataBinding.FieldName = 'SYDefFlt8' + HeaderAlignmentHorz = taCenter + Width = 153 + Position.BandIndex = 0 + Position.ColIndex = 8 + Position.RowIndex = 0 + end + end + object cxGridLevel6: TcxGridLevel + GridView = TvQSJ + end + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 256 + Top = 160 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 328 + Top = 160 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 288 + Top = 160 + end + object ADOTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1080 + Top = 117 + end + object ADOCmd: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 1048 + Top = 125 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 984 + Top = 141 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 816 + Top = 328 + end + object DSKB: TDataSource + DataSet = CDS_KB + Left = 160 + Top = 328 + end + object CDS_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 520 + Top = 168 + end + object cxGridPopupMenu3: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 440 + Top = 328 + end + object CDS_SLJ: TClientDataSet + Aggregates = <> + Params = <> + Left = 560 + Top = 456 + end + object DS_SLJ: TDataSource + DataSet = CDS_SLJ + Left = 624 + Top = 456 + end + object cxGridPopupMenu4: TcxGridPopupMenu + Grid = cxGrid4 + PopupMenus = <> + Left = 48 + Top = 360 + end + object cxGridPopupMenu5: TcxGridPopupMenu + Grid = cxGrid5 + PopupMenus = <> + Left = 648 + Top = 632 + end + object cxGridPopupMenu6: TcxGridPopupMenu + Grid = cxGrid6 + PopupMenus = <> + Left = 584 + Top = 480 + end + object cxGridPopupMenu7: TcxGridPopupMenu + Grid = cxGrid7 + PopupMenus = <> + Left = 408 + Top = 560 + end + object DSSub: TDataSource + DataSet = CDS_Sub + Left = 480 + Top = 160 + end + object CDS_KB: TClientDataSet + Aggregates = <> + Params = <> + Left = 112 + Top = 328 + end +end diff --git a/艾登贸易管理/U_SCGYSet.pas b/艾登贸易管理/U_SCGYSet.pas new file mode 100644 index 0000000..6467404 --- /dev/null +++ b/艾登贸易管理/U_SCGYSet.pas @@ -0,0 +1,1014 @@ +unit U_SCGYSet; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, ADODB, DBClient, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGrid, cxPC, StdCtrls, ComCtrls, ExtCtrls, + ToolWin, cxCheckBox, Menus, cxGridBandedTableView, + cxGridDBBandedTableView, cxCalendar, cxButtonEdit, cxTextEdit; + +type + TfrmSCGYSet = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + Label3: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + OrderNo: TEdit; + cxTabControl1: TcxTabControl; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + cxGrid1Level4: TcxGridLevel; + cxGridPopupMenu1: TcxGridPopupMenu; + CDS_Main: TClientDataSet; + DataSource1: TDataSource; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + ADOQueryMain: TADOQuery; + cxGridPopupMenu2: TcxGridPopupMenu; + DSKB: TDataSource; + CDS_Sub: TClientDataSet; + ToolButton1: TToolButton; + v1Column2: TcxGridDBColumn; + ToolButton2: TToolButton; + v1Column8: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + v1Column13: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + ScrollBox1: TScrollBox; + cxGrid4: TcxGrid; + TvKB: TcxGridDBBandedTableView; + cxGridDBBandedColumn4: TcxGridDBBandedColumn; + cxGridDBBandedColumn5: TcxGridDBBandedColumn; + cxGridDBBandedColumn6: TcxGridDBBandedColumn; + cxGridLevel3: TcxGridLevel; + cxGrid3: TcxGrid; + TVPW: TcxGridDBBandedTableView; + cxGridDBBandedColumn1: TcxGridDBBandedColumn; + cxGridDBBandedColumn2: TcxGridDBBandedColumn; + cxGridDBBandedColumn3: TcxGridDBBandedColumn; + cxGridLevel2: TcxGridLevel; + cxGrid2: TcxGrid; + TvJS: TcxGridDBBandedTableView; + v2Column1: TcxGridDBBandedColumn; + v2Column2: TcxGridDBBandedColumn; + v2Column3: TcxGridDBBandedColumn; + cxGridLevel1: TcxGridLevel; + ToolBar2: TToolBar; + ToolButton3: TToolButton; + ToolButton4: TToolButton; + VPWColumn1: TcxGridDBBandedColumn; + VPWColumn2: TcxGridDBBandedColumn; + VPWColumn3: TcxGridDBBandedColumn; + vJSColumn1: TcxGridDBBandedColumn; + cxGrid5: TcxGrid; + TvSYH: TcxGridDBBandedTableView; + cxGridDBBandedColumn8: TcxGridDBBandedColumn; + cxGridDBBandedColumn9: TcxGridDBBandedColumn; + cxGridDBBandedColumn10: TcxGridDBBandedColumn; + cxGridDBBandedColumn11: TcxGridDBBandedColumn; + cxGridDBBandedColumn12: TcxGridDBBandedColumn; + cxGridLevel4: TcxGridLevel; + vQSJColumn1: TcxGridDBBandedColumn; + vQSJColumn2: TcxGridDBBandedColumn; + vQSJColumn3: TcxGridDBBandedColumn; + vQSJColumn4: TcxGridDBBandedColumn; + vQSJColumn5: TcxGridDBBandedColumn; + vQSJColumn6: TcxGridDBBandedColumn; + vQSJColumn7: TcxGridDBBandedColumn; + vQSJColumn8: TcxGridDBBandedColumn; + vQSJColumn9: TcxGridDBBandedColumn; + vQSJColumn10: TcxGridDBBandedColumn; + vQSJColumn11: TcxGridDBBandedColumn; + vQSJColumn12: TcxGridDBBandedColumn; + vQSJColumn13: TcxGridDBBandedColumn; + cxGrid6: TcxGrid; + TvSLJ: TcxGridDBBandedTableView; + cxGridDBBandedColumn13: TcxGridDBBandedColumn; + cxGridDBBandedColumn14: TcxGridDBBandedColumn; + cxGridDBBandedColumn15: TcxGridDBBandedColumn; + cxGridDBBandedColumn16: TcxGridDBBandedColumn; + cxGridDBBandedColumn17: TcxGridDBBandedColumn; + cxGridDBBandedColumn18: TcxGridDBBandedColumn; + cxGridDBBandedColumn19: TcxGridDBBandedColumn; + cxGridDBBandedColumn20: TcxGridDBBandedColumn; + cxGridDBBandedColumn21: TcxGridDBBandedColumn; + cxGridDBBandedColumn22: TcxGridDBBandedColumn; + cxGridDBBandedColumn23: TcxGridDBBandedColumn; + cxGridDBBandedColumn24: TcxGridDBBandedColumn; + cxGridDBBandedColumn25: TcxGridDBBandedColumn; + cxGridDBBandedColumn26: TcxGridDBBandedColumn; + cxGridDBBandedColumn27: TcxGridDBBandedColumn; + cxGridLevel5: TcxGridLevel; + cxGridPopupMenu3: TcxGridPopupMenu; + CDS_SLJ: TClientDataSet; + DS_SLJ: TDataSource; + cxGridPopupMenu4: TcxGridPopupMenu; + cxGridPopupMenu5: TcxGridPopupMenu; + cxGridPopupMenu6: TcxGridPopupMenu; + vSLJColumn1: TcxGridDBBandedColumn; + v1Column3: TcxGridDBColumn; + cxGrid7: TcxGrid; + TvQSJ: TcxGridDBBandedTableView; + cxGridDBBandedColumn28: TcxGridDBBandedColumn; + cxGridDBBandedColumn29: TcxGridDBBandedColumn; + cxGridDBBandedColumn30: TcxGridDBBandedColumn; + cxGridDBBandedColumn31: TcxGridDBBandedColumn; + cxGridDBBandedColumn32: TcxGridDBBandedColumn; + cxGridDBBandedColumn33: TcxGridDBBandedColumn; + cxGridDBBandedColumn34: TcxGridDBBandedColumn; + cxGridDBBandedColumn35: TcxGridDBBandedColumn; + cxGridDBBandedColumn36: TcxGridDBBandedColumn; + cxGridLevel6: TcxGridLevel; + cxGridPopupMenu7: TcxGridPopupMenu; + DSSub: TDataSource; + CDS_KB: TClientDataSet; + Label4: TLabel; + CustomnoName: TEdit; + Label5: TLabel; + SWFBHW: TEdit; + Label6: TLabel; + SWFBKZ: TEdit; + Label7: TLabel; + SWFBColor: TEdit; + Label8: TLabel; + YLPB: TEdit; + Label2: TLabel; + SWFBCodeName: TEdit; + Label9: TLabel; + WKMS: TEdit; + ToolButton5: TToolButton; + ToolButton6: TToolButton; + v1Column1: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); + procedure OrderNoChange(Sender: TObject); + procedure MenuItem3Click(Sender: TObject); + procedure MenuItem4Click(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure cxGridDBBandedColumn4PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBBandedColumn5PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure cxGridDBBandedColumn27PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure TvKBMouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure TvSLJMouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); + procedure cxGridDBBandedColumn29PropertiesEditValueChanged( + Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure ToolButton6Click(Sender: TObject); + private + { Private declarations } + FInt:Integer; + procedure InitGrid(); + procedure InitGridSub(); + procedure InitGridKB(); + procedure InitGridSLJ(); + function SaveKB():Boolean; + function SaveSub():Boolean; + function SaveSLJ():Boolean; + procedure KBSLJData(); + procedure UpdateZBS(Sender: TObject); + public + { Public declarations } + end; + +var + frmSCGYSet: TfrmSCGYSet; + +implementation +uses + U_DataLink,U_Fun, U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmSCGYSet.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmSCGYSet.FormDestroy(Sender: TObject); +begin + frmSCGYSet:=nil; +end; + +procedure TfrmSCGYSet.InitGrid(); +begin + BegDate.SetFocus; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + SQL.Clear; + sql.Add('exec P_SCGY_List :begdate,:enddate,:PState'); + if cxTabControl1.TabIndex=0 then + begin + Parameters.ParamByName('begdate').Value:='2012-01-01'; + Parameters.ParamByName('enddate').Value:='2050-10-10'; + Parameters.ParamByName('PState').Value:=1; + end else + if cxTabControl1.TabIndex=1 then + begin + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1); + Parameters.ParamByName('PState').Value:=2; + end else + if cxTabControl1.TabIndex=2 then + begin + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1); + Parameters.ParamByName('PState').Value:=3; + end; + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmSCGYSet.ToolButton1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmSCGYSet.FormShow(Sender: TObject); +begin + EndDate.DateTime:=SGetServerDate(ADOTemp); + BegDate.DateTime:=EndDate.DateTime-30; + ReadCxGrid('յ',Tv1,'޷IJ'); + InitGrid(); + KBSLJData(); + if Trim(DParameters1)='' then + begin + TBSave.Visible:=False; + Tv1.OptionsSelection.CellSelect:=False; + end else + begin + ToolButton5.Visible:=False; + ToolButton6.Visible:=False; + + end; +end; + +procedure TfrmSCGYSet.cxTabControl1Change(Sender: TObject); +begin + InitGrid(); + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + if Trim(DParameters1)<>'' then + begin + if cxTabControl1.TabIndex=2 then + Tv1.OptionsSelection.CellSelect:=False + else + Tv1.OptionsSelection.CellSelect:=True; + end; + +end; + +procedure TfrmSCGYSet.OrderNoChange(Sender: TObject); +begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); +end; + +procedure TfrmSCGYSet.MenuItem3Click(Sender: TObject); +begin + CDS_Main.DisableControls; + with CDS_Main do + begin + First; + while not Eof do + begin + Edit; + FieldByName('SSel').Value:=True; + Post; + Next; + end; + end; + CDS_Main.EnableControls; +end; + +procedure TfrmSCGYSet.MenuItem4Click(Sender: TObject); +begin + CDS_Main.DisableControls; + with CDS_Main do + begin + First; + while not Eof do + begin + Edit; + FieldByName('SSel').Value:=False; + Post; + Next; + end; + end; + CDS_Main.EnableControls; +end; + +procedure TfrmSCGYSet.TBSaveClick(Sender: TObject); +begin + BegDate.SetFocus; + if CDS_Main.IsEmpty then Exit; + if cxTabControl1.TabIndex=2 then Exit; + if Trim(CDS_Main.FieldByName('SYDate').AsString)='' then + begin + Application.MessageBox('ڲΪգ','ʾ',0); + Exit; + end; + if (SaveSub() and SaveKB() and SaveSLJ() ) then + begin + if cxTabControl1.TabIndex=0 then + CDS_Main.Delete; + KBSLJData(); + Application.MessageBox('ɹ','ʾ',0); + end else + begin + end; + +end; +function TfrmSCGYSet.SaveSub():Boolean; +var + maxno:string; +begin + try + Result:=False; + ADOCmd.Connection.BeginTrans; + with CDS_Sub do + begin + //First; + //while not Eof do + //begin + if Trim(CDS_Sub.fieldbyname('SYID').AsString)='' then + begin + if GetLSNo(ADOCmd,maxno,'SY','WFB_SCGY',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_Sub.fieldbyname('SYID').AsString); + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_SCGY where SYID='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_Sub.fieldbyname('SYID').AsString)='' then + begin + Append; + FieldByName('Filler').Value:=Trim(DName); + end else + begin + Edit; + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + FieldByName('SYID').Value:=Trim(maxno); + FieldByName('MainId').Value:=Trim(CDS_Main.fieldbyname('MainId').AsString); + FieldByName('SWFBHW').Value:=Trim(CDS_Main.fieldbyname('SWFBHW').AsString); + FieldByName('WKMS').Value:=Trim(CDS_Main.fieldbyname('WKMS').AsString); + if Trim(CDS_Main.fieldbyname('SYDate').AsString)<>'' then + FieldByName('SYDate').Value:=Trim(CDS_Main.fieldbyname('SYDate').AsString); + SSetSaveDataCDSBandNew(ADOCmd,TVPW,CDS_Sub,'WFB_SCGY',0); + SSetSaveDataCDSBandNew(ADOCmd,TVJS,CDS_Sub,'WFB_SCGY',0); + SSetSaveDataCDSBandNew(ADOCmd,TVQSJ,CDS_Sub,'WFB_SCGY',0); + SSetSaveDataCDSBandNew(ADOCmd,TVSYH,CDS_Sub,'WFB_SCGY',0); + Post; + end; + with CDS_Main do + begin + Edit; + FieldByName('SYID').Value:=Trim(maxno); + Post; + end; + with CDS_Sub do + begin + Edit; + FieldByName('SYID').Value:=Trim(maxno); + Post; + end; + //Next; + //end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + //Application.MessageBox('ɹ','ʾ',0); + //Exit; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + Exit; + end; +end; +function TfrmSCGYSet.SaveKB():Boolean; +var + maxno:string; +begin + BegDate.SetFocus; + Result:=False; + try + ADOCmd.Connection.BeginTrans; + with CDS_KB do + begin + First; + while not Eof do + begin + if Trim(CDS_KB.fieldbyname('KBID').AsString)='' then + begin + if GetLSNo(ADOCmd,maxno,'KB','WFB_SCGY_KB',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_KB.fieldbyname('KBID').AsString); + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_SCGY_KB where KBID='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_KB.fieldbyname('KBID').AsString)='' then + begin + Append; + FieldByName('Filler').Value:=Trim(DName); + end else + begin + Edit; + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + FieldByName('SYID').Value:=Trim(CDS_Main.fieldbyname('SYID').AsString); + FieldByName('KBID').Value:=Trim(maxno); + FieldByName('YCLCode').Value:=Trim(CDS_KB.fieldbyname('YCLCode').AsString); + SSetSaveDataCDSBandNew(ADOCmd,TvKB,CDS_KB,'WFB_SCGY_KB',0); + Post; + end; + with CDS_KB do + begin + Edit; + FieldByName('KBID').Value:=Trim(maxno); + Post; + end; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + ///Application.MessageBox('ɹ','ʾ',0); + //Exit; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + Exit; + end; +end; +function TfrmSCGYSet.SaveSLJ():Boolean; +var + maxno:string; +begin + BegDate.SetFocus; + try + Result:=False; + ADOCmd.Connection.BeginTrans; + with CDS_SLJ do + begin + First; + while not Eof do + begin + if Trim(CDS_SLJ.fieldbyname('SLID').AsString)='' then + begin + if GetLSNo(ADOCmd,maxno,'SL','WFB_SCGY_ShuLi',3,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + end else + begin + maxno:=Trim(CDS_SLJ.fieldbyname('SLID').AsString); + end; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_SCGY_ShuLi where SLID='''+Trim(maxno)+''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_SLJ.fieldbyname('SLID').AsString)='' then + begin + Append; + FieldByName('Filler').Value:=Trim(DName); + end else + begin + Edit; + FieldByName('Editer').Value:=Trim(DName); + FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp); + end; + FieldByName('SYID').Value:=Trim(CDS_Main.fieldbyname('SYID').AsString); + FieldByName('SLID').Value:=Trim(maxno); + SSetSaveDataCDSBandNew(ADOCmd,TvSLJ,CDS_SLJ,'WFB_SCGY_ShuLi',0); + Post; + end; + with CDS_SLJ do + begin + Edit; + FieldByName('SLID').Value:=Trim(maxno); + Post; + end; + Next; + end; + end; + ADOCmd.Connection.CommitTrans; + Result:=True; + ///Application.MessageBox('ɹ','ʾ',0); + //Exit; + except + Result:=False; + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + Exit; + end; +end; + +procedure TfrmSCGYSet.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxGrid('յ',Tv1,'޷IJ'); +end; + +procedure TfrmSCGYSet.ToolButton2Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + TcxGridToExcel('յ',cxGrid1); +end; + +procedure TfrmSCGYSet.InitGridSub(); +begin + try + ADOTemp.DisableControls; + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select A.*,ZBL=SYDefFlt1/100*SYDefFlt2/100*SYDefFlt3/100*SYDefFlt4/100*SYDefFlt5/100*SYDefFlt6/100*SYDefFlt7/100'); + SQL.Add(' from WFB_SCGY A where SYID='''+Trim(CDS_Main.fieldbyname('SYID').AsString)+''''); + Open; + end; + SCreateCDS20(ADOTemp,CDS_Sub); + SInitCDSData20(ADOTemp,CDS_Sub); + finally + ADOTemp.EnableControls; + end; +end; +procedure TfrmSCGYSet.InitGridKB(); +begin + try + ADOTemp.DisableControls; + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_SCGY_KB where SYID='''+Trim(CDS_Main.fieldbyname('SYID').AsString)+''''); + Open; + end; + SCreateCDS20(ADOTemp,CDS_KB); + SInitCDSData20(ADOTemp,CDS_KB); + finally + ADOTemp.EnableControls; + end; +end; +procedure TfrmSCGYSet.InitGridSLJ(); +begin + try + ADOTemp.DisableControls; + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_SCGY_Shuli where SYID='''+Trim(CDS_Main.fieldbyname('SYID').AsString)+''''); + Open; + end; + SCreateCDS20(ADOTemp,CDS_SLJ); + SInitCDSData20(ADOTemp,CDS_SLJ); + finally + ADOTemp.EnableControls; + end; +end; +procedure TfrmSCGYSet.Tv1CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + KBSLJData(); +end; +procedure TfrmSCGYSet.KBSLJData(); +begin + InitGridSub(); + InitGridKB(); + InitGridSLJ(); + if Trim(CDS_Sub.fieldbyname('SYID').AsString)='' then + begin + with CDS_Sub do + begin + Append; + Post; + end; + end; + if Trim(CDS_KB.fieldbyname('KBID').AsString)='' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from KH_Zdy where Type=''KBMac'' '); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from KH_Zdy where Type=''KBMac'' order by ZdyNo '); + Open; + end; + with ADOTemp do + begin + First; + while not Eof do + begin + with CDS_KB do + begin + Append; + FieldByName('KBMac').Value:=Trim(ADOTemp.fieldbyname('ZdyName').AsString); + Post; + end; + Next; + end; + end; + end else + begin + with CDS_KB do + begin + Append; + Post; + end; + end; + end; + if Trim(CDS_SLJ.fieldbyname('SLID').AsString)='' then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from KH_Zdy where Type=''SLMac'' '); + Open; + end; + if ADOTemp.IsEmpty=False then + begin + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from KH_Zdy where Type=''SLMac'' order by ZdyNo '); + Open; + end; + if Trim(CDS_Main.fieldbyname('WJGName').AsString)='+ֱ' then + begin + with ADOTemp do + begin + First; + while not Eof do + begin + with CDS_SLJ do + begin + Append; + FieldByName('SLMac').Value:=Trim(ADOTemp.fieldbyname('ZdyName').AsString); + Post; + end; + Next; + end; + end; + end else + begin + with ADOTemp do + begin + First; + with CDS_SLJ do + begin + Append; + FieldByName('SLMac').Value:=Trim(ADOTemp.fieldbyname('ZdyName').AsString); + Post; + end; + end; + end; + end else + begin + with CDS_SLJ do + begin + Append; + Post; + end; + end; + end; +end; +procedure TfrmSCGYSet.ToolButton3Click(Sender: TObject); +begin + + if FInt=1 then + begin + with CDS_KB do + begin + Append; + Post; + end; + end else + if FInt=2 then + begin + with CDS_SLJ do + begin + Append; + Post; + end; + end; + +end; + +procedure TfrmSCGYSet.ToolButton4Click(Sender: TObject); +begin + if FInt=1 then + begin + if Trim(CDS_KB.fieldbyname('KBID').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.add('delete WFB_SCGY_KB where KBID='''+Trim(CDS_KB.fieldbyname('KBID').AsString)+''''); + ExecSQL; + end; + end; + CDS_KB.Delete; + end else + if FInt=2 then + begin + if Trim(CDS_SLJ.fieldbyname('SLID').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.add('delete WFB_SCGY_Shuli where SLID='''+Trim(CDS_SLJ.fieldbyname('SLID').AsString)+''''); + ExecSQL; + end; + end; + CDS_SLJ.Delete; + end; + +end; + +procedure TfrmSCGYSet.cxGridDBBandedColumn4PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='KBMac'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_KB.Edit; + Self.CDS_KB.FieldByName('KBMac').Value:=Trim(ClientDataSet1.fieldbyname('zdyname').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSCGYSet.cxGridDBBandedColumn5PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='YCL'; + flagname:='ԭ'; + TBAdd.Visible:=False; + TBEdit.Visible:=False; + TBDel.Visible:=False; + TBSave.Visible:=False; + if ShowModal=1 then + begin + Self.CDS_KB.Edit; + Self.CDS_KB.FieldByName('YCLName').Value:=Trim(ClientDataSet1.fieldbyname('zdyname').AsString); + Self.CDS_KB.FieldByName('YCLCode').Value:=Trim(ClientDataSet1.fieldbyname('zdyNo').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSCGYSet.cxGridDBBandedColumn27PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='SLMac'; + flagname:=''; + if ShowModal=1 then + begin + Self.CDS_SLJ.Edit; + Self.CDS_SLJ.FieldByName('SLMac').Value:=Trim(ClientDataSet1.fieldbyname('zdyname').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSCGYSet.TvKBMouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); +begin + FInt:=1; + TvKB.Bands[0].Caption:=''; + TvSLJ.Bands[0].Caption:=''; + TvKB.Bands[0].Styles.Header.TextColor:=clBlue; + TvSLJ.Bands[0].Styles.Header.TextColor:=clBlack; +end; + +procedure TfrmSCGYSet.TvSLJMouseDown(Sender: TObject; Button: TMouseButton; + Shift: TShiftState; X, Y: Integer); +begin + FInt:=2; + TvKB.Bands[0].Caption:=''; + TvSLJ.Bands[0].Caption:=''; + TvKB.Bands[0].Styles.Header.TextColor:=clBlack; + TvSLJ.Bands[0].Styles.Header.TextColor:=clBlue; +end; + +procedure TfrmSCGYSet.cxGridDBBandedColumn29PropertiesEditValueChanged( + Sender: TObject); +var + mvalue:String; +begin + UpdateZBS(Sender); +end; + +procedure TfrmSCGYSet.UpdateZBS(Sender: TObject); +var + mvalue,FieldStr:String; + i:Integer; + XS,LXS:Double; +begin + mvalue:=TcxTextEdit(Sender).EditingText; + FieldStr:=TvQSJ.Controller.FocusedColumn.DataBinding.FilterFieldName; + if Trim(mvalue)='' then + mvalue:='0'; + with CDS_Sub do + begin + Edit; + FieldByName(FieldStr).Value:=StrToFloat(mvalue); + Post; + end; + XS:=1.00; + for i:=1 to 7 do + begin + FieldStr:=Trim('SYDefFlt'+Trim(Inttostr(i))); + if Trim(CDS_Sub.FieldByName(FieldStr).AsString)='' then + begin + LXS:=0; + end else + begin + LXS:=CDS_Sub.FieldByName(FieldStr).Value; + end; + XS:=XS*LXS*1.00/100; + end; + with CDS_Sub do + begin + Edit; + FieldByName('ZBL').Value:=XS; + Post; + end; +end; + +procedure TfrmSCGYSet.ToolButton5Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + if cxTabControl1.TabIndex=1 then + begin + if Trim(CDS_Main.FieldByName('Filler').AsString)=Trim(DName) then + begin + Application.MessageBox('ԼĶ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪִд˲','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('Update WFB_SCGY Set Chker='''+Trim(DName)+''''); + sql.Add(',ChkDate=getdate(),ChkStatus=''ͨ'' '); + sql.Add(' where SYID='''+Trim(CDS_Main.fieldbyname('SYID').AsString)+''''); + ExecSQL; + end; + with CDS_Main do + begin + edit; + FieldByName('ChkStatus').Value:='ͨ'; + FieldByName('Chker').Value:=Trim(DName); + Post; + end; + + end; +end; + +procedure TfrmSCGYSet.ToolButton6Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + if cxTabControl1.TabIndex>0 then + begin + if cxTabControl1.TabIndex=2 then + begin + if Trim(CDS_Main.FieldByName('Chker').AsString)<>Trim(DName) then + begin + Application.MessageBox('ܲͨĶ','ʾ',0); + Exit; + end; + end; + + if Application.MessageBox('ȷҪִд˲','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('Update WFB_SCGY Set Chker='''+Trim(DName)+''''); + sql.Add(',ChkDate=getdate(),ChkStatus=''˲ͨ'' '); + sql.Add(' where SYID='''+Trim(CDS_Main.fieldbyname('SYID').AsString)+''''); + ExecSQL; + end; + with CDS_Main do + begin + edit; + FieldByName('ChkStatus').Value:='˲ͨ'; + FieldByName('Chker').Value:=Trim(DName); + Post; + end; + end; +end; + +end. diff --git a/艾登贸易管理/U_SMLB.dfm b/艾登贸易管理/U_SMLB.dfm new file mode 100644 index 0000000..7420aad --- /dev/null +++ b/艾登贸易管理/U_SMLB.dfm @@ -0,0 +1,1423 @@ +object frmSMLB: TfrmSMLB + Left = -8 + Top = -8 + Width = 1382 + Height = 754 + Caption = #25171#21253#31383#21475 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1497 + Height = 33 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + EdgeInner = esNone + EdgeOuter = esNone + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + Visible = False + object TBClose: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1497 + Height = 48 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label16: TLabel + Left = 420 + Top = 56 + Width = 48 + Height = 12 + Caption = #36135#36816#31867#22411 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label15: TLabel + Left = 44 + Top = 56 + Width = 48 + Height = 12 + Caption = #37197#36135#20154#21592 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label14: TLabel + Left = 234 + Top = 56 + Width = 24 + Height = 12 + Caption = #21253#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label1: TLabel + Left = 32 + Top = 14 + Width = 100 + Height = 24 + Caption = #26465#30721#32534#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 1172 + Top = 69 + Width = 50 + Height = 24 + Caption = #24211#20301 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label3: TLabel + Left = 147 + Top = 82 + Width = 50 + Height = 24 + Caption = #21253#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 373 + Top = 90 + Width = 75 + Height = 24 + Caption = #21253#26465#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label34: TLabel + Left = 1039 + Top = 58 + Width = 80 + Height = 22 + Caption = #25171#21360#20221#25968 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = 'Arial' + Font.Style = [] + ParentFont = False + end + object Label7: TLabel + Left = 560 + Top = 12 + Width = 26 + Height = 12 + Caption = #20221#25968 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 796 + Top = 56 + Width = 26 + Height = 12 + Caption = #20221#25968 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object PHYG: TBtnEditA + Left = 96 + Top = 52 + Width = 100 + Height = 20 + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + TabOrder = 0 + Visible = False + end + object defstr2: TComboBox + Left = 472 + Top = 52 + Width = 101 + Height = 20 + Style = csDropDownList + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Pitch = fpFixed + Font.Style = [] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ItemHeight = 12 + ItemIndex = 0 + ParentFont = False + TabOrder = 2 + Visible = False + Items.Strings = ( + '' + #24555#20214 + #24930#20214) + end + object packNo: TcxCurrencyEdit + Left = 262 + Top = 52 + Properties.DecimalPlaces = 0 + Properties.DisplayFormat = '0' + TabOrder = 3 + Visible = False + Width = 100 + end + object SmNO: TEdit + Left = 136 + Top = 10 + Width = 165 + Height = 32 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ParentFont = False + TabOrder = 1 + OnKeyPress = SmNOKeyPress + end + object kcKw: TBtnEditA + Left = 1228 + Top = 81 + Width = 89 + Height = 33 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ParentFont = False + TabOrder = 4 + Visible = False + OnBtnClick = kcKwBtnClick + end + object baoNo: TEdit + Left = 219 + Top = 78 + Width = 40 + Height = 32 + Hint = 'baoNo' + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ParentFont = False + TabOrder = 5 + OnClick = baoNoClick + OnExit = baoNoExit + OnKeyPress = baoNoKeyPress + end + object BaoID: TEdit + Left = 278 + Top = 78 + Width = 170 + Height = 32 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -24 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ParentFont = False + TabOrder = 6 + OnClick = baoNoClick + end + object FileName: TcxButton + Left = 1176 + Top = 72 + Width = 77 + Height = 33 + Hint = 'Filesother' + Caption = #25171#21360#21253#26631#31614 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + OnClick = FileNameClick + LookAndFeel.Kind = lfOffice11 + end + object cxButton1: TcxButton + Left = 1220 + Top = 8 + Width = 77 + Height = 33 + Hint = 'Filesother' + Caption = #20851#38381 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + OnClick = cxButton1Click + LookAndFeel.Kind = lfOffice11 + end + object ComboBox1: TComboBox + Left = 1124 + Top = 56 + Width = 49 + Height = 40 + Style = csDropDownList + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = 'Times New Roman' + Font.Style = [fsBold] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ItemHeight = 32 + ItemIndex = 0 + ParentFont = False + TabOrder = 9 + Text = '1' + Items.Strings = ( + '1' + '2' + '3' + '4') + end + object cxButton3: TcxButton + Left = 928 + Top = 8 + Width = 77 + Height = 33 + Hint = 'Filesother' + Caption = #21024#38500 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + OnClick = cxButton3Click + LookAndFeel.Kind = lfOffice11 + end + object cxButton2: TcxButton + Left = 716 + Top = 56 + Width = 77 + Height = 33 + Hint = 'Filesother' + Caption = #20445#23384 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + OnClick = cxButton2Click + LookAndFeel.Kind = lfOffice11 + end + object cxButton4: TcxButton + Left = 884 + Top = 56 + Width = 77 + Height = 33 + Hint = 'Filesother' + Caption = #25764#38144#25171#21253 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 12 + OnClick = cxButton4Click + LookAndFeel.Kind = lfOffice11 + end + object cxButton5: TcxButton + Left = 836 + Top = 8 + Width = 77 + Height = 33 + Hint = 'Filesother' + Caption = #25171#21360 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 13 + OnClick = cxButton5Click + LookAndFeel.Kind = lfOffice11 + end + object CheckBox1: TCheckBox + Left = 468 + Top = 8 + Width = 81 + Height = 17 + Caption = #21367#26631#31614 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 14 + end + object CheckBox2: TCheckBox + Left = 648 + Top = 56 + Width = 77 + Height = 17 + Caption = #21103#26631#31614 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 15 + end + object ComboBox2: TComboBox + Left = 588 + Top = 8 + Width = 60 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 1 + TabOrder = 16 + Text = '2' + Items.Strings = ( + '1' + '2' + '3' + '4') + end + object ComboBox3: TComboBox + Left = 588 + Top = 52 + Width = 60 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + ItemIndex = 0 + TabOrder = 17 + Text = '1' + Items.Strings = ( + '1' + '2' + '3' + '4') + end + end + object Panel2: TPanel + Left = 364 + Top = 205 + Width = 1133 + Height = 560 + Caption = 'Panel2' + TabOrder = 2 + object cxGrid2: TcxGrid + Left = 1 + Top = 1 + Width = 1131 + Height = 266 + Align = alTop + TabOrder = 0 + object TV2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCustomDrawCell = TV2CustomDrawCell + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn5 + end + item + Kind = skSum + Column = cxGridDBColumn6 + end + item + Kind = skSum + end + item + Kind = skSum + Column = V2Column2 + end + item + Kind = skSum + Column = V2Column3 + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_TradeManage.Default + object cxGridDBColumn1: TcxGridDBColumn + Caption = #25195#25551#20449#24687 + DataBinding.FieldName = 'SDefNote' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 154 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #26465#30721#21495 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 113 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 116 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Width = 94 + end + object V2Column5: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object V2Column4: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'MJStr4' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object V2Column1: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'BCGangNO' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 120 + end + object cxGridDBColumn7: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'MJType' + HeaderAlignmentHorz = taCenter + Width = 105 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'SOrdQty1' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'MJLen' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + object V2Column2: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'MJMaoZ' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + object V2Column3: TcxGridDBColumn + Caption = #20928#37325 + DataBinding.FieldName = 'MJQty4' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + object cxGrid1: TcxGrid + Left = 1 + Top = 267 + Width = 1131 + Height = 292 + Align = alClient + TabOrder = 1 + object TV4: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DSSEL + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = 'C_Code' + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn16 + end + item + Kind = skSum + Column = cxGridDBColumn17 + end + item + Kind = skSum + end + item + Kind = skSum + Column = cxGridDBColumn18 + end + item + Kind = skSum + Column = cxGridDBColumn19 + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Header = DataLink_TradeManage.Default + object cxGridDBColumn8: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'Ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FoneRed + Styles.Footer = DataLink_TradeManage.FoneRed + Styles.Header = DataLink_TradeManage.FoneRed + Width = 53 + end + object cxGridDBColumn9: TcxGridDBColumn + Caption = #26465#30721#21495 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 113 + end + object cxGridDBColumn10: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 116 + end + object cxGridDBColumn11: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 94 + end + object cxGridDBColumn12: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'BCGangNO' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 120 + end + object V4Column1: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object V4Column2: TcxGridDBColumn + Caption = #32568#21495 + DataBinding.FieldName = 'MJstr4' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object cxGridDBColumn13: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'MJType' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object cxGridDBColumn16: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'SOrdQty1' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + object cxGridDBColumn17: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'MJLen' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + object cxGridDBColumn18: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'MJMaoZ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + object cxGridDBColumn19: TcxGridDBColumn + Caption = #20928#37325 + DataBinding.FieldName = 'MJQty4' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + end + object cxGridLevel3: TcxGridLevel + GridView = TV4 + end + end + end + object Panel3: TPanel + Left = 1332 + Top = -81 + Width = 201 + Height = 210 + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 4 + Visible = False + object SpeedButton1: TSpeedButton + Left = 4 + Top = 211 + Width = 140 + Height = 70 + Caption = '0' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton2: TSpeedButton + Left = 4 + Top = 143 + Width = 70 + Height = 70 + Caption = '1' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton3: TSpeedButton + Left = 74 + Top = 143 + Width = 70 + Height = 70 + Caption = '2' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton4: TSpeedButton + Left = 144 + Top = 143 + Width = 70 + Height = 70 + Caption = '3' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton5: TSpeedButton + Left = 4 + Top = 73 + Width = 70 + Height = 70 + Caption = '4' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton6: TSpeedButton + Left = 74 + Top = 73 + Width = 70 + Height = 70 + Caption = '5' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton7: TSpeedButton + Left = 144 + Top = 73 + Width = 70 + Height = 70 + Caption = '6' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton8: TSpeedButton + Left = 4 + Top = 3 + Width = 70 + Height = 70 + Caption = '7' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton9: TSpeedButton + Left = 74 + Top = 2 + Width = 70 + Height = 70 + Caption = '8' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton10: TSpeedButton + Left = 144 + Top = 2 + Width = 70 + Height = 70 + Caption = '9' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton11: TSpeedButton + Tag = 9 + Left = 144 + Top = 213 + Width = 70 + Height = 68 + Caption = '.' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton12: TSpeedButton + Left = 214 + Top = 2 + Width = 70 + Height = 70 + Caption = #8592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton12Click + end + object SpeedButton49: TSpeedButton + Tag = 9 + Left = 214 + Top = 73 + Width = 70 + Height = 208 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton49Click + end + end + object Panel4: TPanel + Left = 0 + Top = 81 + Width = 389 + Height = 684 + Align = alLeft + BevelInner = bvRaised + BevelOuter = bvLowered + Caption = 'Panel4' + TabOrder = 5 + object cxGrid3: TcxGrid + Left = 2 + Top = 57 + Width = 385 + Height = 625 + Align = alClient + TabOrder = 0 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DSTm + 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 + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + OptionsView.IndicatorWidth = 20 + Styles.Header = DataLink_TradeManage.Default + object Tv3Column1: TcxGridDBColumn + Caption = #26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Width = 80 + end + object v3Column1: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'MPRTCodeName' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v3Column2: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Width = 57 + end + object v3Column4: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'PRTHX' + HeaderAlignmentHorz = taCenter + Width = 53 + end + object v3Column3: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'MJlen' + HeaderAlignmentHorz = taCenter + Width = 59 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + object Panel5: TPanel + Left = 2 + Top = 2 + Width = 385 + Height = 55 + Align = alTop + BevelOuter = bvNone + TabOrder = 1 + object Label6: TLabel + Left = 32 + Top = 21 + Width = 45 + Height = 14 + Caption = #35746#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object BtnEditA1: TBtnEditA + Left = 80 + Top = 17 + Width = 153 + Height = 22 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -14 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnBtnClick = BtnEditA1BtnClick + end + end + end + object MovePanel1: TMovePanel + Left = 414 + Top = 116 + Width = 801 + Height = 353 + BevelInner = bvLowered + Color = clSkyBlue + TabOrder = 3 + Visible = False + object Label2: TLabel + Left = 184 + Top = 160 + Width = 198 + Height = 64 + Caption = 'Label2' + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -64 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Edit2: TEdit + Left = 177 + Top = 43 + Width = 412 + Height = 72 + Enabled = False + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -64 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ImeName = #20013#25991' ('#31616#20307') - '#25628#29399#25340#38899#36755#20837#27861 + ParentFont = False + ReadOnly = True + TabOrder = 0 + Text = '91209120001' + end + object Button4: TButton + Left = 296 + Top = 272 + Width = 75 + Height = 41 + Caption = #20851#38381 + TabOrder = 1 + OnClick = Button4Click + end + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 552 + Top = 136 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 500 + Top = 232 + end + object CDSMJID: TClientDataSet + Aggregates = <> + Params = <> + Left = 732 + Top = 212 + end + object DataSource2: TDataSource + DataSet = CDSMJID + Left = 836 + Top = 248 + end + object ADOQueryTmp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 388 + Top = 324 + end + object cxStyleRepository1: TcxStyleRepository + Left = 241 + Top = 142 + object cxStyle1: TcxStyle + AssignedValues = [svColor, svFont] + Color = clInactiveCaption + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle2: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = 4707838 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBtnText + end + object cxStyle_gridRow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16311512 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridFoot: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridHead: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_gridGroupBox: TcxStyle + AssignedValues = [svColor, svFont] + Color = clMoneyGreen + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_yellow: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_fontBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle_fontclFuchsia: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clFuchsia + end + object cxStyle_fontclPurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clPurple + end + object cxStyle_fontclGreen: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clGreen + end + object cxStyle_fontclBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object cxStyle_fontclTeal: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clTeal + end + object cxStyle_fontclOlive: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + end + object ADOQuery1: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 252 + Top = 428 + end + object DataSource1: TDataSource + DataSet = ADOQuery1 + Left = 312 + Top = 464 + end + object ADOQueryTm: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 152 + Top = 192 + end + object DSTm: TDataSource + DataSet = CDSTM + Left = 88 + Top = 216 + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 576 + Top = 256 + end + object RM2: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 424 + Top = 256 + ReportData = {} + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 652 + Top = 232 + end + object CDSTM: TClientDataSet + Aggregates = <> + Params = <> + Left = 212 + Top = 221 + end + object CDSSEL: TClientDataSet + Aggregates = <> + Params = <> + Left = 957 + Top = 497 + end + object DSSEL: TDataSource + DataSet = CDSSEL + Left = 849 + Top = 501 + end +end diff --git a/艾登贸易管理/U_SMLB.pas b/艾登贸易管理/U_SMLB.pas new file mode 100644 index 0000000..4c3f709 --- /dev/null +++ b/艾登贸易管理/U_SMLB.pas @@ -0,0 +1,1025 @@ +unit U_SMLB; + +interface + +uses + Windows, Messages, strutils,SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxClasses, cxControls, + cxGridCustomView, cxGrid, StdCtrls, cxContainer, cxTextEdit, + cxCurrencyEdit, BtnEdit, ExtCtrls, ComCtrls, ToolWin, DBClient, ADODB, + MovePanel, Buttons, Menus, cxLookAndFeelPainters, cxButtons, RM_Common, + RM_Class, RM_GridReport, RM_System, RM_Dataset, cxCheckBox; + +type + TfrmSMLB = class(TForm) + ToolBar1: TToolBar; + TBClose: TToolButton; + Panel1: TPanel; + PHYG: TBtnEditA; + defstr2: TComboBox; + Label16: TLabel; + Label15: TLabel; + packNo: TcxCurrencyEdit; + Label14: TLabel; + Label1: TLabel; + Panel2: TPanel; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridDBColumn7: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ADOQueryMain: TADOQuery; + ADOQueryCmd: TADOQuery; + CDSMJID: TClientDataSet; + DataSource2: TDataSource; + SmNO: TEdit; + ADOQueryTmp: TADOQuery; + V2Column1: TcxGridDBColumn; + kcKw: TBtnEditA; + Label5: TLabel; + MovePanel1: TMovePanel; + Edit2: TEdit; + Button4: TButton; + Label2: TLabel; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxStyle_gridRow: TcxStyle; + cxStyle_gridFoot: TcxStyle; + cxStyle_gridHead: TcxStyle; + cxStyle_gridGroupBox: TcxStyle; + cxStyle_yellow: TcxStyle; + cxStyle_Red: TcxStyle; + cxStyle_fontBlack: TcxStyle; + cxStyle_fontclFuchsia: TcxStyle; + cxStyle_fontclPurple: TcxStyle; + cxStyle_fontclGreen: TcxStyle; + cxStyle_fontclBlue: TcxStyle; + cxStyle_fontclTeal: TcxStyle; + cxStyle_fontclOlive: TcxStyle; + ADOQuery1: TADOQuery; + DataSource1: TDataSource; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridLevel2: TcxGridLevel; + Tv3Column1: TcxGridDBColumn; + ADOQueryTm: TADOQuery; + DSTm: TDataSource; + baoNo: TEdit; + BaoID: TEdit; + Label3: TLabel; + Label4: TLabel; + Panel3: TPanel; + SpeedButton1: TSpeedButton; + SpeedButton2: TSpeedButton; + SpeedButton3: TSpeedButton; + SpeedButton4: TSpeedButton; + SpeedButton5: TSpeedButton; + SpeedButton6: TSpeedButton; + SpeedButton7: TSpeedButton; + SpeedButton8: TSpeedButton; + SpeedButton9: TSpeedButton; + SpeedButton10: TSpeedButton; + SpeedButton11: TSpeedButton; + SpeedButton12: TSpeedButton; + SpeedButton49: TSpeedButton; + FileName: TcxButton; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + cxButton1: TcxButton; + ComboBox1: TComboBox; + Label34: TLabel; + V2Column2: TcxGridDBColumn; + V2Column3: TcxGridDBColumn; + Panel4: TPanel; + ADOQueryPrint: TADOQuery; + Label6: TLabel; + BtnEditA1: TBtnEditA; + v3Column1: TcxGridDBColumn; + v3Column2: TcxGridDBColumn; + v3Column3: TcxGridDBColumn; + CDSTM: TClientDataSet; + Panel5: TPanel; + cxButton3: TcxButton; + cxButton2: TcxButton; + CDSSEL: TClientDataSet; + cxGrid1: TcxGrid; + TV4: TcxGridDBTableView; + cxGridDBColumn8: TcxGridDBColumn; + cxGridDBColumn9: TcxGridDBColumn; + cxGridDBColumn10: TcxGridDBColumn; + cxGridDBColumn11: TcxGridDBColumn; + cxGridDBColumn12: TcxGridDBColumn; + cxGridDBColumn13: TcxGridDBColumn; + cxGridDBColumn16: TcxGridDBColumn; + cxGridDBColumn17: TcxGridDBColumn; + cxGridDBColumn18: TcxGridDBColumn; + cxGridDBColumn19: TcxGridDBColumn; + cxGridLevel3: TcxGridLevel; + DSSEL: TDataSource; + cxButton4: TcxButton; + V2Column5: TcxGridDBColumn; + V2Column4: TcxGridDBColumn; + V4Column1: TcxGridDBColumn; + V4Column2: TcxGridDBColumn; + v3Column4: TcxGridDBColumn; + cxButton5: TcxButton; + CheckBox1: TCheckBox; + CheckBox2: TCheckBox; + Label7: TLabel; + Label8: TLabel; + ComboBox2: TComboBox; + ComboBox3: TComboBox; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + + procedure FormCreate(Sender: TObject); + procedure SmNOKeyPress(Sender: TObject; var Key: Char); + procedure FormShow(Sender: TObject); + procedure TV2CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); + procedure kcKwBtnClick(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure baoNoKeyPress(Sender: TObject; var Key: Char); + procedure baoNoClick(Sender: TObject); + procedure SpeedButton1Click(Sender: TObject); + procedure SpeedButton12Click(Sender: TObject); + procedure SpeedButton49Click(Sender: TObject); + procedure FileNameClick(Sender: TObject); + procedure cxButton1Click(Sender: TObject); + procedure baoNoExit(Sender: TObject); + procedure BtnEditA1BtnClick(Sender: TObject); + procedure cxButton3Click(Sender: TObject); + procedure cxButton2Click(Sender: TObject); + procedure cxButton4Click(Sender: TObject); + procedure cxButton5Click(Sender: TObject); + private + procedure InitGrid(); + procedure InitMJID(); + function SaveRK():Boolean; + Procedure QueryRk(); + Procedure QueryTM(); + { Private declarations } + public + { Public declarations } + end; + +var + frmSMLB: TfrmSMLB; + +implementation +uses + U_DataLink,U_Fun, U_ZDYHelp, U_OrderSelRK; +{$R *.dfm} +Procedure TfrmSMLB.QueryTm(); +var + FBaoID:string; +begin + with ADOQueryTM do + begin + close; + sql.Clear; + sql.Add('select A.*,B.*,C.MPrtCodeName,C.orderNo as OrderNoM'); + sql.Add('from WFB_MJJY A '); + sql.Add('inner join JYOrder_sub B on B.subID=A.subID '); + sql.Add('inner join JYOrder_main C on C.mainID=A.MainID '); + // sql.Add('and A.mjstr2=''δ'' and isnull(A.BaoID,'''')='''' '); + sql.Add(' and C.orderNo='+quotedstr(trim(BtnEditA1.Text))); + open; + end; + SCreateCDS20(ADOQueryTM,CDSTM); + SInitCDSData20(ADOQueryTM,CDSTM); + + { IF not CDSTM.IsEmpty then + begin + with ADOQuery1 do + begin + close; + sql.clear; + sql.add('select isnull(max(cast(baoNo as int)),0)+1 as MaxBaoNo from WFB_MJJY '); + sql.Add('where mainID='+quotedstr(trim(CDSTM.fieldbyname('MainID').AsString))); + open; + end; + baoNo.text:=ADOQuery1.fieldbyname('MaxBaoNo').AsString; + if GetLSNo(ADOQueryTmp,FBaoID,'BI','WFB_MJJY',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + BaoID.Text:=trim(FBaoid); + end; } +end; + +Procedure TfrmSMLB.QueryRk(); +begin + with ADOQuery1 do + begin + close; + sql.Clear; + sql.Add('select A.*,hC_ps=A.AordQty2,JY_ps=(select count(MainID) from WFB_MJJY X where X.APID=A.APID),'); + sql.Add('JY_Qty=(select sum(MJLen) from WFB_MJJY X where X.APID=A.APID), '); + sql.Add('RK_RollNum=(select sum(SOrdQty1) from CK_BanCP_CR X where X.APID=A.APID and X.CRType=''''),'); + sql.Add('RK_Qty=(select sum(MJLen) from CK_BanCP_CR X where X.APID=A.APID and X.CRType='''') '); + sql.Add('from JYOrder_sub_anPai A '); + SQL.Add('WHERE exists(select MJID from WFB_MJJY X where X.APID=A.APID and X.MJID='+quotedstr(trim(smNO.Text))); + sql.Add(')'); + open; + end; +end; + +function TfrmSMLB.SaveRK():Boolean; +var + maxno:String; + CRID:Integer; + MaxCkNo,MaxCkSubNo:String; + MhcTime:TdateTime; +begin + Result:=false; + ADOQueryCmd.Connection.BeginTrans; + + try + {with ADOQueryTmp do + begin + Close; + sql.Clear; + SQL.add('Update CK_BanCP_CRID Set CRID=CRID+1'); + sql.Add('select * from CK_BanCP_CRID'); + Open; + end; + CRID:=ADOQueryTmp.fieldbyname('CRID').AsInteger; + if GetLSNo(ADOQueryTmp,MaxCkNo,'JR','CK_BanCP_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡƷֿʧܣ','ʾ',0); + Exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where 1<>1'); + Open; + end; + mhcTime:=SGetServerDateTime(ADOQueryTmp); + + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(ADOQueryMain.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(ADOQueryMain.fieldbyname('SubId').AsString); + FieldByName('C_Code').Value:=Trim(ADOQueryMain.fieldbyname('PRTCode').AsString); + FieldByName('C_CodeName').Value:=Trim(ADOQueryMain.fieldbyname('PRTCodeName').AsString); + //FieldByName('C_SPec').Value:=Trim(ADOQueryMain.fieldbyname('C_SPec').AsString); + FieldByName('C_Color').Value:=Trim(ADOQueryMain.fieldbyname('PRTColor').AsString); + FieldByName('APID').Value:=Trim(ADOQueryMain.fieldbyname('APID').AsString); + FieldByName('MJID').Value:=Trim(ADOQueryMain.fieldbyname('MJId').AsString); + FieldByName('mjxh').Value:=Trim(ADOQueryMain.fieldbyname('mjxh').AsString); + FieldByName('BaoNo').Value:=Trim(BaoNo.Text); + FieldByName('BaoID').Value:=Trim(BaoID.Text); + + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('CRTime').Value:=FormatDateTime('yyyy-MM-dd',mhcTime); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + FieldByName('CRID').Value:=CRID; + FieldByName('KGQty').Value:=0; + FieldByName('Qty').Value:=ADOQueryMain.fieldbyname('MJLen').Value; + FieldByName('RollNum').Value:=1; + FieldByName('QtyUnit').Value:=ADOQueryMain.fieldbyname('MJTypeOther').Value; + FieldByName('CPType').Value:=ADOQueryMain.fieldbyname('MJType').Value; + //FieldByName('Note').Value:=ADOQueryMain.fieldbyname('Note').Value; + FieldByName('Filler').Value:=Trim(DName); + FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTmp); + //fieldbyname('kcKw').Value:=GetKw(ADOQueryTmp,ADOQueryMain.fieldbyname('PRTCodeName').AsString,ADOQueryMain.fieldbyname('PRTColor').AsString); + Post; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=CRID; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('CRTime').Value:=FormatDateTime('yyyy-MM-dd',mhcTime); + FieldByName('CRType').Value:=''; + FieldByName('CPType').Value:=ADOQueryMain.fieldbyname('MJType').Value; + FieldByName('C_Code').Value:=Trim(ADOQueryMain.fieldbyname('PRTCode').AsString); + FieldByName('C_CodeName').Value:=Trim(ADOQueryMain.fieldbyname('PRTCodeName').AsString); + //FieldByName('C_SPec').Value:=Trim(ADOQueryMain.fieldbyname('C_SPec').AsString); + FieldByName('C_Color').Value:=Trim(ADOQueryMain.fieldbyname('PRTColor').AsString); + FieldByName('BaoNo').Value:=Trim(BaoNo.Text); + FieldByName('BaoID').Value:=Trim(BaoID.Text); + FieldByName('MJID').Value:=Trim(ADOQueryMain.fieldbyname('MJID').AsString); + FieldByName('KCKGQty').Value:=0; + FieldByName('KCQty').Value:=ADOQueryMain.fieldbyname('MJlen').Value; + FieldByName('RollNum').Value:=1; + FieldByName('KCQtyUnit').Value:=ADOQueryMain.fieldbyname('MJTypeOther').Value; + FieldByName('mjxh').Value:=Trim(ADOQueryMain.fieldbyname('mjxh').AsString); + //FieldByName('KCNote').Value:=ADOQueryMain.fieldbyname('Note').Value; + //fieldbyname('kcKw').Value:=GetKw(ADOQueryTmp,ADOQueryMain.fieldbyname('PRTCodeName').AsString,ADOQueryMain.fieldbyname('PRTColor').AsString); + Post; + end; } + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set BaoNo='''+trim(BaoNo.Text)+''',BaoID='''+trim(Baoid.text)+''' where MJID='''+Trim(ADOQueryMain.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + Result:=true; + except + ADOQueryCmd.Connection.RollbackTrans; + end; +end; + +procedure TfrmSMLB.InitGrid(); +begin + with ADOQueryMain do + begin + Close; + sql.Clear; + SQL.Add('select A.*,B.*,C.MprtCodeName,C.orderNo as OrderNoM from WFB_MJJY A '); + sql.add('inner join JYOrder_Sub B on B.SubId=A.SubId'); + sql.add('inner join JYOrder_Main C on C.maiNID=A.mainID'); + SQL.Add('where 1=2 '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDSMJID); + SInitCDSData20(ADOQueryMain,CDSMJID); + SCreateCDS20(ADOQueryMain,CDSSEL); + SInitCDSData20(ADOQueryMain,CDSSEL); +end; + +procedure TfrmSMLB.InitMJID(); +begin + MovePanel1.Visible:=false; + + + with ADOQueryMain do + begin + Close; + sql.Clear; + SQL.Add('select A.*,B.*,C.MprtCodeName,C.orderNo as OrderNoM from WFB_MJJY A '); + sql.add('inner join JYOrder_Sub B on B.SubId=A.SubId'); + sql.add('inner join JYOrder_Main C on C.maiNID=A.mainID'); + sql.Add('where MJID='+quotedstr(trim(SmNO.Text))); + Open; + if not IsEmpty then + begin + {IF trim(Fieldbyname('MJstr2').AsString)='' then + begin + CDSMJID.Append; + CDSMJID.FieldByName('SDefNote').Value:=''; + CDSMJID.FieldByName('MJID').Value:=trim(SmNO.Text); + CDSMJID.Post; + end + else + begin} + CDSMJID.Append; + CDSMJID.FieldByName('SDefNote').Value:='ɨɹ'; + CDSMJID.FieldByName('MJID').Value:=trim(ADOQueryMain.Fieldbyname('MJID').AsString); +// CDSMJID.FieldByName('CRID').Value:=trim(ADOQueryMain.Fieldbyname('CRID').AsString); + CDSMJID.FieldByName('PRTCodeName').Value:=trim(ADOQueryMain.Fieldbyname('PRTCodeName').AsString); + CDSMJID.FieldByName('MPRTCodeName').Value:=trim(ADOQueryMain.Fieldbyname('MPRTCodeName').AsString); + CDSMJID.FieldByName('PRTColor').Value:=trim(ADOQueryMain.Fieldbyname('PRTColor').AsString); + CDSMJID.FieldByName('PRTHX').Value:=trim(ADOQueryMain.Fieldbyname('PRTHX').AsString); + CDSMJID.FieldByName('MJStr4').Value:=trim(ADOQueryMain.Fieldbyname('MJStr4').AsString); + CDSMJID.FieldByName('MJType').Value:=trim(ADOQueryMain.Fieldbyname('MJType').AsString); + // CDSMJID.FieldByName('BaoNo').Value:=trim(BaoNo.Text); + // CDSMJID.FieldByName('BaoID').Value:=trim(BaoID.Text); + CDSMJID.FieldByName('SOrdQty1').Value:=1; + CDSMJID.FieldByName('MJLen').Value:=ADOQueryMain.Fieldbyname('MJLen').AsFloat; + CDSMJID.FieldByName('MJMaoZ').Value:=ADOQueryMain.Fieldbyname('MJMaoZ').AsFloat; + CDSMJID.FieldByName('MJQty3').Value:=ADOQueryMain.Fieldbyname('MJQty3').AsFloat; + CDSMJID.FieldByName('MJQty4').Value:=ADOQueryMain.Fieldbyname('MJQty4').AsFloat; + CDSMJID.FieldByName('MJTypeOther').Value:=trim(ADOQueryMain.Fieldbyname('MJTypeOther').AsString); + CDSMJID.FieldByName('mainID').Value:=trim(ADOQueryMain.Fieldbyname('mainID').AsString); + CDSMJID.FieldByName('subID').Value:=trim(ADOQueryMain.Fieldbyname('subID').AsString); + CDSMJID.Post; + // end; + end + else + begin + CDSMJID.Append; + CDSMJID.FieldByName('SDefNote').Value:='벻'; + CDSMJID.FieldByName('MJID').Value:=trim(SmNO.Text); + CDSMJID.Post; + end; + end; + IF trim(CDSMJID.FieldByName('SDefNote').AsString)<>'ɨɹ' then + begin + MovePanel1.Visible:=true; + Edit2.Text:=SmNO.Text; + Label2.Caption:=trim(CDSMJID.FieldByName('SDefNote').AsString); + CDSMJID.delete; + end; + If CDSTM.Locate('MJID',trim(smno.Text),[]) then + begin + // application.MessageBox('AAAA','AAAAAAAA',0); + CDSTM.Delete; + tv2.Controller.EditingController.ShowEdit(); + tv3.Controller.EditingController.ShowEdit(); + end; + +end; + +procedure TfrmSMLB.FormDestroy(Sender: TObject); +begin + frmSMLB:=nil; +end; + +procedure TfrmSMLB.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + //writeCxGrid(self.Caption+tv1.Name,Tv1,'Ʒֿ'); + writeCxGrid(self.Caption+Tv2.Name,Tv2,'Ʒֿ'); + writeCxGrid(self.Caption+Tv3.Name,Tv3,'Ʒֿ'); + writeCxGrid(self.Caption+Tv4.Name,Tv4,'Ʒֿ'); + Action:=cafree; +end; + +procedure TfrmSMLB.TBCloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmSMLB.FormCreate(Sender: TObject); +begin + Panel2.Align:=alClient; + //readCxGrid(self.Caption+tv1.Name,Tv1,'Ʒֿ'); + readCxGrid(self.Caption+Tv2.Name,Tv2,'Ʒֿ'); + readCxGrid(self.Caption+Tv3.Name,Tv3,'Ʒֿ'); + readCxGrid(self.Caption+Tv4.Name,Tv4,'Ʒֿ'); +end; + +procedure TfrmSMLB.SmNOKeyPress(Sender: TObject; var Key: Char); +begin + IF key=#13 then + begin + + { if trim(BaoNo.Text)='' then + begin + application.MessageBox('ŲΪ','ʾ'); + exit; + end; + if trim(BaoID.Text)='' then + begin + application.MessageBox('벻Ϊ','ʾ'); + exit; + end; } + if trim(smno.Text)='' then exit; + IF CDSMJID.Locate('MJID',trim(smno.Text),[]) then + begin + MovePanel1.Visible:=true; + Edit2.Text:=SmNO.Text; + Label2.Caption:='˾ظɨ裡'; + smno.Text:=''; + smno.SetFocus; + exit; + end; + If not CDSTM.Locate('MJID',trim(smno.Text),[]) then + begin + with ADOQuery1 do + begin + Close; + sql.Clear; + SQL.Add('select A.*,B.*,C.MprtCodeName,C.OrderNO as orderNoM from WFB_MJJY A '); + sql.add('inner join JYOrder_Sub B on B.SubId=A.SubId'); + sql.add('inner join JYOrder_Main C on C.maiNID=A.mainID'); + sql.Add('where MJID='+quotedstr(trim(SmNO.Text))); + Open; + IF isempty then + begin + MovePanel1.Visible:=true; + Edit2.Text:=SmNO.Text; + Label2.Caption:='˾Ŵ'; + end + else + begin + If not CDSTM.Locate('orderNoM',trim(fieldbyname('OrderNoM').AsString),[]) then + begin + MovePanel1.Visible:=true; + Edit2.Text:=SmNO.Text; + Label2.Caption:='˾ڵǰ'; + end + else + begin + IF Fieldbyname('MJstr2').AsString<>'δ' then + begin + MovePanel1.Visible:=true; + Edit2.Text:=SmNO.Text; + Label2.Caption:=fieldbyname('Mjstr2').AsString; + end + else + begin + MovePanel1.Visible:=true; + Edit2.Text:=SmNO.Text; + Label2.Caption:='˾Ѵ'; + end; + end; + end; + end; + smno.Text:=''; + smno.SetFocus; + exit; + end + else + begin + initMJID(); + end; + smno.Text:=''; + smno.SetFocus; + end; +end; + +procedure TfrmSMLB.FormShow(Sender: TObject); +begin + MovePanel1.Left:=(Width-MovePanel1.Width) div 2; + MovePanel1.top:=(Height-MovePanel1.Height-200) div 2; + InitGrid(); +end; + +procedure TfrmSMLB.TV2CustomDrawCell(Sender: TcxCustomGridTableView; + ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; + var ADone: Boolean); +var + i:integer; +begin + i:=tv2.GetColumnByFieldName('SDefNote').Index; + if (AViewInfo.GridRecord.Values[i]<>'ɹ') then + ACanvas.Brush.Color:=clred; +end; + +procedure TfrmSMLB.kcKwBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CPKWFlag'; + flagname:='λϢ'; + V1Name.Caption:='λ'; + V1Note.Caption:='Ӣ'; +// MainType:=Trim(DName); + fnote:=FALSE; + if ShowModal=1 then + begin + kcKw.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSMLB.Button4Click(Sender: TObject); +begin + MovePanel1.Visible:=False; + SmNO.SetFocus; +end; + +procedure TfrmSMLB.baoNoKeyPress(Sender: TObject; var Key: Char); +var FBaoID: string; +begin + +end; + +procedure TfrmSMLB.baoNoClick(Sender: TObject); +var + i:Integer; +begin +// Panel3.Visible:=True; + { with Panel3 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim(TEdit(Sender).Name); + end; + end; + end; } +end; + +procedure TfrmSMLB.SpeedButton1Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TSpeedButton(Sender).Hint); + if Trim(fsj)='' then Exit; + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=fsj+Trim(TSpeedButton(Sender).Caption); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; + +procedure TfrmSMLB.SpeedButton12Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + if Trim(fsj)='' then Exit; + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=Copy(fsj,1,Length(fsj)-1); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; +procedure TfrmSMLB.SpeedButton49Click(Sender: TObject); +var + FBaoID:string; +begin + IF trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Hint)<>'' then + begin + if GetLSNo(ADOQueryTmp,FBaoID,'BI','WFB_MJJY',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + BaoID.Text:=trim(FBaoid); + end; + Panel3.Visible:=False; +end; + +procedure TfrmSMLB.FileNameClick(Sender: TObject); +var fPrintFile: string; + Txt,fImagePath:string; + Moudle: THandle; + Makebar:TMakebar; + Mixtext:TMixtext; + FBaoID:string; + i:Integer; +begin + if trim(BaoID.Text)='' then + begin + application.MessageBox('벻δ','ʾ'); + exit; + end; + cxButton2.Click; +{ if trim(BaoID.Text)='' then + begin + application.MessageBox('벻δ','ʾ'); + exit; + end; } + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add('select A.Baoid,A.BaoNo,A.MJTypeOther as QtyUnit,D.OrderNo,D.conNo,D.customerNoName,D.MprtCodeName,D.OrdPerson1,'); + sql.Add('PRTColor=DBO.F_Get_Order_SubStr(BaoID,''BNColor''),SOrddefstr1=DBO.F_Get_Order_SubStr(BaoID,''BNSOrddefstr1''),'); + sql.Add('SOrddefstr4=DBO.F_Get_Order_SubStr(BaoID,''BNSOrddefstr4''),PRtHX=DBO.F_Get_Order_SubStr(BaoID,''BNPRtHX''), '); + sql.Add('Mjstr4=DBO.F_Get_Order_SubStr(BaoID,''BNGangNo''), '); + sql.Add('khConNo=(select top 1 khConNo from JYOrderCon_Main X where X.ConNO=D.conNO), '); + SQL.ADD('count(A.MJID) as JSl,sum(A.MJMaoZ) MJMAOZ,sum(MJQty3) as MJQty3,sum(MJQty4) as MJQty4,SUM(A.MJLen)as MJLen'); + sql.Add('from WFB_MJJY A'); + sql.Add(' inner join JYOrder_Sub C on C.SubID=A.SubID'); + sql.Add(' inner join JYOrder_Main D on D.MainID=A.MainID'); + SQL.Add('where A.BaoID='''+Trim(BaoID.Text)+''''); + SQL.ADD('group by A.Baoid,A.BaoNo,A.MJTypeOther,D.OrderNo,D.conNo,D.customerNoName,D.MprtCodeName,D.OrdPerson1'); + Open; + end; + + if ADOQueryPrint.RecordCount>1 then + begin + Application.MessageBox('´!','ʾ',0); + Exit; + end; + if ADOQueryPrint.RecordCount<1 then + begin + Application.MessageBox('˰Żδ棬뱣ݣڴӡ룡','ʾ',0); + Exit; + end; + + try + Moudle:=LoadLibrary('MakeQRBarcode.dll'); + @Makebar:=GetProcAddress(Moudle,'Make'); + @Mixtext:=GetProcAddress(Moudle,'MixText'); + Txt:=trim(BaoID.Text); + 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); + exit; + end; + + + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ǩ.rmf'; + + if FileExists(fPrintFile) then + begin + RMVariables['QRBARCODE']:=fImagePath; + RM2.LoadFromFile(fPrintFile); + RM2.DefaultCopies:=strtointdef(trim(ComboBox1.Text),1); + //RM2.ShowReport; + RM2.printReport; + baoNo.Text:=inttostr(strtointdef(trim(baoNo.Text),0)+1); + if GetLSNo(ADOQueryTmp,FBaoID,'BI','WFB_MJJY',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + BaoID.Text:=trim(FBaoid); + CDSsel.Last; + with CDSMJID do + begin + DisableControls; + first; + while not eof do + begin + CDSsel.Append; + for i:=0 to FieldCount-1 do + begin + CDSsel.fields[i].value:=Fields[i].Value ; + end; + CDSsel.Post; + next; + end; + EnableControls; + end; + CDSMJID.EmptyDataSet; + end else + begin + // Order_Main.EnableControls; + Application.MessageBox(PChar('û'+fPrintFile),'ʾ',0); + Exit; + end; +end; + +procedure TfrmSMLB.cxButton1Click(Sender: TObject); +begin + TBClose.Click; +end; + +procedure TfrmSMLB.baoNoExit(Sender: TObject); +var + FBaoID:string; +begin + IF baoNo.Text<>'' then + begin + if GetLSNo(ADOQueryTmp,FBaoID,'BI','WFB_MJJY',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + BaoID.Text:=trim(FBaoid); + end + else + BaoID.Text:=''; +end; + +procedure TfrmSMLB.BtnEditA1BtnClick(Sender: TObject); +begin + frmOrderSelRK:=TfrmOrderSelRK.Create(Application); + with frmOrderSelRK do + begin + if ShowModal=1 then + begin + CDS_OrderSel.DisableControls; + with CDS_OrderSel do + begin + First; + while not Eof do + begin + if FieldByName('SSel').Value=True then + begin + BtnEditA1.Text:=trim(CDS_OrderSel.fieldbyname('OrderNo').asstring); + end; + Next; + end; + end; + CDS_OrderSel.EnableControls; + end; + end; + QueryTm(); +end; + +procedure TfrmSMLB.cxButton3Click(Sender: TObject); +var + i:integer; +begin + IF CDSMJID.IsEmpty then exit; + IF CDSMJID.fieldByName('Sflag').AsString='2' then + begin + application.MessageBox('Ѵɾ','ʾϢ',0); + exit; + end + else + begin + with CDSMJID do + begin + CDSTM.Last; + + CDSTM.Append; + for i:=0 to FieldCount-1 do + begin + CDSTM.fields[i].value:=Fields[i].Value ; + end; + CDSTM.Post; + end; + CDSMJID.Delete; + end; +end; + +procedure TfrmSMLB.cxButton2Click(Sender: TObject); +begin + IF CDSMJID.IsEmpty then exit; + ADOQueryCmd.Connection.BeginTrans; + try + with CDSMJID do + begin + DisableControls; + first; + while not eof do + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set BaoNo='''+trim(BaoNo.Text)+''',BaoID='''+trim(Baoid.text)+''' where MJID='''+Trim(CDSMJID.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + edit; + fieldByName('Sflag').AsString :='2'; + fieldbyname('BaoNo').Value:=trim(BaoNo.Text); + fieldbyname('BaoID').Value:=trim(BaoID.Text); + post; + next; + end; + EnableControls; + end; + ADOQueryCmd.Connection.CommitTrans; + // application.MessageBox('޸ijɹ','ʾϢ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('޸ʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmSMLB.cxButton4Click(Sender: TObject); +begin + if CDSSEL.IsEmpty then Exit; + if CDSSEL.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡ!','ʾ',0); + Exit; + end; + try + CDSSEL.DisableControls; + // ADOQueryCmd.Connection.BeginTrans; + with CDSSEL do + begin + First; + while FieldByName('SSel').AsBoolean do + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set baoID='''',baoNo='''' '); + sql.Add('where MJID='''+Trim(CDSSEL.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + delete; + end; + end; + // ADOQueryCmd.Connection.CommitTrans; + CDSSEL.EnableControls; + application.MessageBox('ݳɹ','ʾϢ'); + QueryTm(); + exit; + except + // ADOQueryCmd.Connection.RollbackTrans; + CDSSEL.EnableControls; + application.MessageBox('ݳʧܣ','ʾϢ',0); + end; +end; + +procedure TfrmSMLB.cxButton5Click(Sender: TObject); +var + fPrintFile:string; + Txt,fImagePath:string; + Moudle: THandle; + Makebar:TMakebar; + Mixtext:TMixtext; + i:integer; +begin + IF (not CheckBox1.Checked) and (not CheckBox2.Checked)then + begin + application.MessageBox('ûѡҪӡıǩ','ʾ',0); + exit; + end; + CDSMJID.DisableControls; + with CDSMJID do + begin + First; + while not Eof do + begin + with ADOQueryPrint do + begin + Close; + SQL.Clear; + sql.Add('select QtyUnit=A.MJTypeOther,B.orderNo,B.conNo,GangNo=D.AOrddefStr1,PRTColorEng=E.Note,B.LBName,B.NlbName '); + sql.Add(',khConNo=(select top 1 khConNo from JYOrderCon_Main X where X.ConNO=B.conNO) '); + sql.Add(',MPRTCodeNameEng=ISNULL((select Top 1 F.note from KH_Zdy F where F.zdyname=B.MPRTCodeName and F.Type=''PRTCodeName''),B.MPRTCodeName)'); + sql.Add(',B.MPRTCF,B.MPRTMF,B.MPRTKZ,C.SOrddefstr4,B.MPRTCodeName,B.MPRTSpec,B.MPRTKuanNO,C.*,A.* '); + sql.Add(',Case when A.MJSJKZ*A.MJFK<>0 then Cast(A.MJQty4*1000/A.MJSJKZ/(A.MJFK/100) as int) else 0 end as MQty'); + sql.Add(' from WFB_MJJY A') ; + sql.Add(' inner join JYOrder_Main B On A.Mainid=B.Mainid'); + sql.Add(' inner join JYOrder_Sub C on A.SubId=C.SubId'); + sql.Add(' left join KH_Zdy E on C.PRTColor=E.ZdyName and E.Type=''OrdColor'' '); + sql.Add(' inner join JYOrder_Sub_AnPai D on A.APId=D.APId '); + SQL.Add(' where A.MJID='''+Trim(CDSMJID.fieldbyname('MJID').AsString)+''''); + Open; + end; + try + Moudle:=LoadLibrary('MakeQRBarcode.dll'); + @Makebar:=GetProcAddress(Moudle,'Make'); + @Mixtext:=GetProcAddress(Moudle,'MixText'); + Txt:=Trim(ADOQueryPrint.fieldbyname('MJID').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 + CDSMJID.EnableControls; + application.MessageBox('ʧܣ','ʾϢ',MB_ICONERROR); + exit; + end; + + IF CheckBox1.Checked then + begin + fPrintFile:=''; + if Trim(ADOQueryPrint.fieldbyname('LbName').AsString)<>'' then + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\'+Trim(ADOQueryPrint.fieldbyname('LbName').AsString)+'.rmf'; + if FileExists(fPrintFile) then + begin + RMVariables['QRBARCODE']:=fImagePath; + RM2.LoadFromFile(fPrintFile); + Rm2.DefaultCopies:=strtointdef(trim(ComboBox2.Text),1); + // RM2.ShowReport; + RM2.PrintReport; + end + else + begin + CDSMJID.EnableControls; + Application.MessageBox(PChar('û'+trim(fPrintFile)),'ʾ',0); + Exit; + end; + end; + IF CheckBox2.Checked then + begin + fPrintFile:=''; + if Trim(ADOQueryPrint.fieldbyname('NLBName').AsString)<>'' then + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\'+Trim(ADOQueryPrint.fieldbyname('NLBName').AsString)+'.rmf'; + if FileExists(fPrintFile) then + begin + RMVariables['QRBARCODE']:=fImagePath; + RM2.LoadFromFile(fPrintFile); + Rm2.DefaultCopies:=strtointdef(trim(ComboBox3.Text),1); + //RM2.ShowReport; + RM2.PrintReport; + end + else + begin + CDSMJID.EnableControls; + Application.MessageBox(PChar('û'+trim(fPrintFile)),'ʾ',0); + Exit; + end; + end; + + CDSsel.Last; + CDSsel.Append; + for i:=0 to CDSMJID.FieldCount-1 do + begin + CDSsel.fields[i].value:=CDSMJID.Fields[i].Value ; + end; + CDSsel.Post; + CDSMJID.Next; + end; + end; + CDSMJID.EnableControls; + CDSMJID.EmptyDataSet; +end; + +end. diff --git a/艾登贸易管理/U_SetBanZu.dfm b/艾登贸易管理/U_SetBanZu.dfm new file mode 100644 index 0000000..195ed6b --- /dev/null +++ b/艾登贸易管理/U_SetBanZu.dfm @@ -0,0 +1,221 @@ +object frmSetBanZu: TfrmSetBanZu + Left = 101 + Top = 118 + Width = 892 + Height = 616 + Caption = #29677#32452#35774#32622 + Color = clBtnFace + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 13 + object cxGrid1: TcxGrid + Left = 0 + Top = 0 + Width = 497 + Height = 579 + Align = alLeft + TabOrder = 0 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Styles.Header = DataLink_RCInspection.FonePurple + object v1Column4: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.FullFocusRect = True + Properties.GlyphCount = 10 + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 76 + end + object v1Column1: TcxGridDBColumn + Caption = #21592#24037#32534#21495 + DataBinding.FieldName = 'UserId' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 139 + end + object v1Column2: TcxGridDBColumn + Caption = #21592#24037#21517#31216 + DataBinding.FieldName = 'UserName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 136 + end + object v1Column3: TcxGridDBColumn + Caption = #29677#32452 + DataBinding.FieldName = 'BanZu' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 135 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Button3: TButton + Left = 511 + Top = 53 + Width = 78 + Height = 40 + Caption = #29677#32452#23450#20041 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 1 + OnClick = Button3Click + end + object Button4: TButton + Left = 592 + Top = 53 + Width = 78 + Height = 40 + Caption = #29677#32452#35774#32622 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 2 + OnClick = Button4Click + end + object Button5: TButton + Left = 673 + Top = 53 + Width = 78 + Height = 40 + Caption = #28165#31354#36873#25321 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 3 + OnClick = Button5Click + end + object Button6: TButton + Left = 754 + Top = 53 + Width = 78 + Height = 40 + Caption = #36864#20986 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 4 + OnClick = Button6Click + end + object Button1: TButton + Left = 689 + Top = 128 + Width = 70 + Height = 39 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 5 + Visible = False + OnClick = Button1Click + end + object Button2: TButton + Left = 762 + Top = 128 + Width = 70 + Height = 39 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 6 + Visible = False + OnClick = Button2Click + end + object BanZu: TComboBox + Left = 511 + Top = 127 + Width = 177 + Height = 41 + Style = csDropDownList + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ItemHeight = 33 + ParentFont = False + TabOrder = 7 + Visible = False + end + object cxStyleRepository1: TcxStyleRepository + Left = 832 + object cxStyle1: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + end + end + object ADOQueryMain: TADOQuery + Connection = DataLink_RCInspection.ADOLink + Parameters = <> + Left = 368 + Top = 216 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 296 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_RCInspection.ADOLink + Parameters = <> + Left = 368 + Top = 296 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_RCInspection.ADOLink + Parameters = <> + Left = 368 + Top = 256 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 264 + Top = 312 + end +end diff --git a/艾登贸易管理/U_SetBanZu.pas b/艾登贸易管理/U_SetBanZu.pas new file mode 100644 index 0000000..1c97fd4 --- /dev/null +++ b/艾登贸易管理/U_SetBanZu.pas @@ -0,0 +1,265 @@ +unit U_SetBanZu; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxCheckBox, ComCtrls, ToolWin, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGridLevel, + cxClasses, cxControls, cxGridCustomView, cxGrid, ADODB, StdCtrls, + ExtCtrls, DBClient; + +type + TfrmSetBanZu = class(TForm) + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + ADOQueryMain: TADOQuery; + DataSource1: TDataSource; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + CDS_Main: TClientDataSet; + Button3: TButton; + Button4: TButton; + Button5: TButton; + Button6: TButton; + Button1: TButton; + Button2: TButton; + BanZu: TComboBox; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure ToolButton12Click(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure ToolButton6Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure Button5Click(Sender: TObject); + procedure Button6Click(Sender: TObject); + private + { Private declarations } + public + { Public declarations } + end; + +var + frmSetBanZu: TfrmSetBanZu; + +implementation +Uses +U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmSetBanZu.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + + Action:=caFree; +end; + +procedure TfrmSetBanZu.FormDestroy(Sender: TObject); +begin + frmSetBanZu:=nil; +end; + +procedure TfrmSetBanZu.FormShow(Sender: TObject); +begin + + //DataLink_WFBProducttion.ADOLink.Connected:=True; + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + SQL.Add('select * from SY_User where UserId not in(''ADMIN'',''CS01'')'); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; + +end; + +procedure TfrmSetBanZu.ToolButton2Click(Sender: TObject); +var + fsj,FUserId:String; +begin + {FUserId:=Trim(CDS_Main.fieldbyname('UserId').AsString); + if CDS_Main.Locate('SSel',True,[])=False then + begin + CDS_Main.Locate('UserId',Trim(FUserId),[]); + Application.MessageBox('ûѡԱ','ʾ',0); + exit; + end; + CDS_Main.Locate('UserId',Trim(FUserId),[]); + Panel1.Visible:=True; + fsj:='select Name=ZdyName from KH_Zdy where Type=''WFBBZ'' '; + + SInitComBoxBySql(ADOQueryTemp,BanZu,False,fsj); } + +end; + +procedure TfrmSetBanZu.Button2Click(Sender: TObject); +begin + BanZu.Visible:=False; + Button1.Visible:=False; + Button2.Visible:=False; +end; + +procedure TfrmSetBanZu.ToolButton12Click(Sender: TObject); +begin + Close; +end; + +procedure TfrmSetBanZu.Button1Click(Sender: TObject); +begin + if CDS_Main.Locate('SSel',True,[])=False then + begin + Application.MessageBox('ûѡԱ','ʾ',0); + exit; + end; + if Application.MessageBox('ȷҪִв','ʾ',32+4)<>IDYES then Exit; + + try + ADOQueryCmd.Connection.BeginTrans; + CDS_Main.DisableControls; + with CDS_Main do + begin + First; + while not eof do + begin + if CDS_Main.FieldByName('SSel').AsBoolean=True then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('UPdate SY_User Set BanZu='''+Trim(BanZu.Text)+''''); + sql.Add(' where UserId='''+Trim(CDS_Main.fieldbyname('UserId').AsString)+''''); + ExecSQL; + end; + CDS_Main.Edit; + FieldByName('BanZu').Value:=Trim(BanZu.Text); + //CDS_Main.Post; + end; + Next; + end; + end; + CDS_Main.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + BanZu.Visible:=False; + Button1.Visible:=False; + Button2.Visible:=False; + Application.MessageBox('óɹ','ʾ',0); + except + ADOQueryCmd.Connection.RollbackTrans; + + Application.MessageBox('쳣','ʾ',0); + end; + +end; + +procedure TfrmSetBanZu.ToolButton6Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(CDS_Main.fieldbyname('UserId').AsString); + CDS_Main.DisableControls; + with CDS_Main do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean=True then + begin + CDS_Main.Edit; + FieldByName('SSel').Value:=False; + end; + Next; + end; + end; + CDS_Main.EnableControls; + CDS_Main.Locate('UserId',fsj,[]); +end; + +procedure TfrmSetBanZu.Button3Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='WFBBZ'; + flagname:=''; + if ShowModal=1 then + begin + + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmSetBanZu.Button4Click(Sender: TObject); +var + fsj,FUserId:String; +begin + FUserId:=Trim(CDS_Main.fieldbyname('UserId').AsString); + if CDS_Main.Locate('SSel',True,[])=False then + begin + CDS_Main.Locate('UserId',Trim(FUserId),[]); + Application.MessageBox('ûѡԱ','ʾ',0); + exit; + end; + CDS_Main.Locate('UserId',Trim(FUserId),[]); + BanZu.Visible:=True; + Button1.Visible:=True; + Button2.Visible:=True; + fsj:='select Name=ZdyName from KH_Zdy where Type=''WFBBZ'' '; + + SInitComBoxBySql(ADOQueryTemp,BanZu,False,fsj); + +end; + +procedure TfrmSetBanZu.Button5Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(CDS_Main.fieldbyname('UserId').AsString); + CDS_Main.DisableControls; + with CDS_Main do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean=True then + begin + CDS_Main.Edit; + FieldByName('SSel').Value:=False; + end; + Next; + end; + end; + CDS_Main.EnableControls; + CDS_Main.Locate('UserId',fsj,[]); +end; + +procedure TfrmSetBanZu.Button6Click(Sender: TObject); +begin + Close; +end; + +end. diff --git a/艾登贸易管理/U_StopWorkInPut.dfm b/艾登贸易管理/U_StopWorkInPut.dfm new file mode 100644 index 0000000..3bb2703 --- /dev/null +++ b/艾登贸易管理/U_StopWorkInPut.dfm @@ -0,0 +1,282 @@ +object frmStopWorkInPut: TfrmStopWorkInPut + Left = 67 + Top = 90 + Width = 1169 + Height = 598 + Caption = #20572#26426#35760#24405#34920 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -27 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 27 + object Panel1: TPanel + Left = 777 + Top = 0 + Width = 384 + Height = 561 + Align = alRight + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 0 + Visible = False + object Label5: TLabel + Left = 299 + Top = 39 + Width = 37 + Height = 140 + Caption = #20572#13#10#26426#13#10#21407#13#10#22240 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object SWReason: TComboBox + Tag = 1 + Left = 16 + Top = 3 + Width = 257 + Height = 24 + AutoCloseUp = True + Style = csDropDownList + DropDownCount = 45 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 16 + ParentFont = False + TabOrder = 0 + end + object Button1: TButton + Left = 51 + Top = 70 + Width = 90 + Height = 50 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button1Click + end + object Button2: TButton + Left = 163 + Top = 70 + Width = 90 + Height = 50 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Button2Click + end + end + object cxGrid5: TcxGrid + Left = 0 + Top = 0 + Width = 633 + Height = 561 + Align = alLeft + TabOrder = 1 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Content = cxStyle1 + Styles.Header = cxStyle1 + object v1Column1: TcxGridDBColumn + Caption = #29677#32452 + DataBinding.FieldName = 'SWPersonBZ' + HeaderAlignmentHorz = taCenter + Width = 45 + end + object v1Column2: TcxGridDBColumn + Caption = #20572#26426#26102#38388 + DataBinding.FieldName = 'SWBegtime' + HeaderAlignmentHorz = taCenter + Styles.Header = cxStyle4 + Width = 151 + end + object v1Column3: TcxGridDBColumn + Caption = #24320#26426#26102#38388 + DataBinding.FieldName = 'SWEndtime' + HeaderAlignmentHorz = taCenter + Styles.Header = cxStyle3 + Width = 122 + end + object v1Column4: TcxGridDBColumn + Caption = #20572#26426#21407#22240 + DataBinding.FieldName = 'SWReason' + HeaderAlignmentHorz = taCenter + Width = 245 + end + object v1Column5: TcxGridDBColumn + Caption = #25805#20316#20154 + DataBinding.FieldName = 'SWPerson' + HeaderAlignmentHorz = taCenter + Width = 62 + end + end + object cxGridLevel4: TcxGridLevel + GridView = Tv1 + end + end + object Button3: TButton + Left = 667 + Top = 473 + Width = 153 + Height = 65 + Caption = #21407#22240#23450#20041 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + OnClick = Button3Click + end + object Button4: TButton + Left = 667 + Top = 96 + Width = 153 + Height = 65 + Caption = #20572#26426 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = Button4Click + end + object Button5: TButton + Left = 667 + Top = 210 + Width = 153 + Height = 65 + Caption = #24320#26426 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + OnClick = Button5Click + end + object Button6: TButton + Left = 667 + Top = 325 + Width = 153 + Height = 65 + Caption = #36864#20986 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + OnClick = Button6Click + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 424 + Top = 192 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid5 + PopupMenus = <> + Left = 520 + Top = 168 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 464 + Top = 248 + end + object ADOTemp: TADOQuery + Connection = DataLink_RCInspection.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 480 + Top = 173 + end + object ADOCmd: TADOQuery + Connection = DataLink_RCInspection.ADOLink + Parameters = <> + Left = 496 + Top = 125 + end + object ADOQuery1: TADOQuery + Connection = DataLink_RCInspection.ADOLink + Parameters = <> + Left = 496 + Top = 141 + end + object cxStyleRepository1: TcxStyleRepository + Left = 472 + Top = 96 + object cxStyle1: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle2: TcxStyle + end + object cxStyle3: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clGreen + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object cxStyle4: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clRed + end + end + object ADOQueryMain: TADOQuery + Connection = DataLink_RCInspection.ADOLink + Parameters = <> + Left = 488 + Top = 221 + end +end diff --git a/艾登贸易管理/U_StopWorkInPut.pas b/艾登贸易管理/U_StopWorkInPut.pas new file mode 100644 index 0000000..68d12f7 --- /dev/null +++ b/艾登贸易管理/U_StopWorkInPut.pas @@ -0,0 +1,498 @@ +unit U_StopWorkInPut; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxCalendar, cxTimeEdit, + cxButtonEdit, cxGridLevel, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, + StdCtrls, ComCtrls, ExtCtrls, ToolWin, ADODB, DBClient, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridBandedTableView, + cxGridDBBandedTableView, cxDropDownEdit; + +type + TfrmStopWorkInPut = class(TForm) + Panel1: TPanel; + Label5: TLabel; + cxGrid5: TcxGrid; + cxGridLevel4: TcxGridLevel; + DataSource1: TDataSource; + cxGridPopupMenu1: TcxGridPopupMenu; + CDS_Main: TClientDataSet; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + ADOQuery1: TADOQuery; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxStyle3: TcxStyle; + cxStyle4: TcxStyle; + SWReason: TComboBox; + ADOQueryMain: TADOQuery; + Button1: TButton; + Button2: TButton; + Tv1: TcxGridDBTableView; + v1Column1: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column5: TcxGridDBColumn; + Button3: TButton; + Button4: TButton; + Button5: TButton; + Button6: TButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormShow(Sender: TObject); + procedure v1Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure TBDelClick(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure Button1Click(Sender: TObject); + procedure ToolButton12Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure ToolButton7Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure Button5Click(Sender: TObject); + procedure Button6Click(Sender: TObject); + private + { Private declarations } + procedure ComboxData(v1Column310:TcxGridDBBandedColumn;ii:Integer); + procedure InitGrid(); + public + { Public declarations } + end; + +var + frmStopWorkInPut: TfrmStopWorkInPut; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp,U_iniParam; + +{$R *.dfm} + +procedure TfrmStopWorkInPut.FormDestroy(Sender: TObject); +begin + frmStopWorkInPut:=nil; +end; + +procedure TfrmStopWorkInPut.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + + Action:=caFree; +end; + +procedure TfrmStopWorkInPut.FormShow(Sender: TObject); + +begin + ReadCxGrid('ͣ¼',Tv1,'޷IJ'); + DataLink_WFBProducttion.ADOLink.Connected:=False; + DataLink_WFBProducttion.ADOLink.Connected:=True; + InitGrid(); + DataLink_WFBProducttion.ADOLink.Connected:=False; +end; +procedure TfrmStopWorkInPut.InitGrid(); +var + sql:string; +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + SQL.Add('select Top 20* from WFB_StopWorkList '); + if Trim(SCXFlag)<>'' then + begin + sql.Add(' where SWType='''+Trim(SCXFlag)+''''); + end; + sql.Add('Order by SWBegTime desc'); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmStopWorkInPut.ComboxData(v1Column310:TcxGridDBBandedColumn;ii:Integer); +var + i:Integer; + j:string; +begin + (v1Column310.Properties as TcxComboBoxProperties).Items.Clear; + for i:=0 to ii do + begin + if i<10 then + j:='0'+trim(IntToStr(i)) + else + j:=Trim(IntToStr(i)); + (v1Column310.Properties as TcxComboBoxProperties).Items.Add(Trim(j)); + end; +end; + +procedure TfrmStopWorkInPut.v1Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='SWReason'; + flagname:='ͣԭ'; + if ShowModal=1 then + begin + Self.CDS_Main.Edit; + Self.CDS_Main.FieldByName('SWReason').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString) + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmStopWorkInPut.TBDelClick(Sender: TObject); +begin + if Trim(CDS_Main.fieldbyname('SWID').AsString)<>'' then + begin + if Trim(DCode)<>'ADMIN' then + begin + if Trim(DName)<>Trim(CDS_Main.fieldbyname('SWPerson').AsString) then + begin + Application.MessageBox('ɾ˼¼','ʾ',0); + Exit; + end; + end; + if Application.MessageBox('ȷҪɾ¼','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFB_StopWorkList where SWID='''+Trim(CDS_Main.fieldbyname('SWID').AsString)+''''); + ExecSQL; + end; + end; + CDS_Main.Delete; +end; + +procedure TfrmStopWorkInPut.ToolButton5Click(Sender: TObject); +var + sql:String; +begin + DataLink_WFBProducttion.ADOLink.Connected:=False; + DataLink_WFBProducttion.ADOLink.Connected:=True; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_StopWorkList where SWEndtime is null'); + Open; + end; + if ADOCmd.IsEmpty=False then + begin + Application.MessageBox('ϴͣδп','ʾ',0); + Exit; + end; + Panel1.Visible:=True; + sql:='select distinct(ZdyName) Name from KH_Zdy where Type=''SWReason'' '; + SInitComBoxBySql(ADOTemp,SWReason,False,sql); + DataLink_WFBProducttion.ADOLink.Connected:=False; +end; + +procedure TfrmStopWorkInPut.Button1Click(Sender: TObject); +var + maxno,FBZ:String; +begin + if Trim(SWReason.Text)='' then + begin + Application.MessageBox('ͣԭΪգ','ʾ',0); + Exit; + end; + if Application.MessageBox('ȷҪִͣ','ʾ',32+4)<>IDYES then Exit; + DataLink_WFBProducttion.ADOLink.Connected:=False; + DataLink_WFBProducttion.ADOLink.Connected:=True; + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from SY_User where UserId='''+Trim(DCode)+''''); + Open; + end; + FBZ:=Trim(ADOTemp.fieldbyname('BanZu').AsString); + try + ADOCmd.Connection.BeginTrans; + if GetLSNo(ADOCmd,maxno,'SW','WFB_StopWorkList',2,1)=False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ȡͣʧܣ','ʾ',0); + Exit; + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_StopWorkList where 1<>1 '); + Open; + end; + with ADOCmd do + begin + Append; + FieldByName('SWID').Value:=Trim(maxno); + FieldByName('SWBegtime').Value:=SGetServerDateTime(ADOTemp); + FieldByName('SWReason').Value:=Trim(SWReason.Text); + FieldByName('SWPerson').Value:=Trim(DName); + FieldByName('SWPersonBZ').Value:=Trim(FBZ); + FieldByName('SWType').Value:=Trim(SCXFlag); + Post; + end; + with CDS_Main do + begin + Append; + FieldByName('SWID').Value:=Trim(maxno); + FieldByName('SWBegtime').Value:=SGetServerDateTime(ADOTemp); + FieldByName('SWReason').Value:=Trim(SWReason.Text); + FieldByName('SWPerson').Value:=Trim(DName); + FieldByName('SWPersonBZ').Value:=Trim(FBZ); + Post; + end; + ADOCmd.Connection.CommitTrans; + Panel1.Visible:=False; + //Application.MessageBox('ͣɹ','ʾ',0); + Exit; + except + ADOCmd.Connection.RollbackTrans; + DataLink_WFBProducttion.ADOLink.Connected:=False; + Application.MessageBox('ͣ쳣','ʾ',0); + Exit; + end; + DataLink_WFBProducttion.ADOLink.Connected:=False; +end; + +procedure TfrmStopWorkInPut.ToolButton12Click(Sender: TObject); +begin + Close; + WriteCxGrid('ͣ¼',Tv1,'޷IJ'); +end; + +procedure TfrmStopWorkInPut.Button2Click(Sender: TObject); +begin + Panel1.Visible:=False; +end; + +procedure TfrmStopWorkInPut.ToolButton7Click(Sender: TObject); +var + FBZ,MaxNo:String; +begin + DataLink_WFBProducttion.ADOLink.Connected:=False; + DataLink_WFBProducttion.ADOLink.Connected:=True; + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from SY_User where UserId='''+Trim(DCode)+''''); + Open; + end; + FBZ:=Trim(ADOTemp.fieldbyname('BanZu').AsString); + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_StopWorkList where SWEndtime is null'); + Open; + end; + if ADOTemp.IsEmpty=True then + begin + Application.MessageBox('δǼͣ¼','ʾ',0); + exit; + end; + if Application.MessageBox('ȷҪִп','ʾ',32+4)<>IDYES then Exit; + with ADOTemp do + begin + Close; + SQL.Clear; + SQL.Add('select Top 1* from WFB_StopWorkList where SWEndtime is null order by SWBegtime desc'); + Open; + end; + MaxNo:=Trim(ADOTemp.fieldbyname('SWID').AsString); + try + ADOCmd.Connection.BeginTrans; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_StopWorkList where SWID='''+Trim(ADOTemp.fieldbyname('SWID').AsString)+''''); + Open; + end; + + with ADOCmd do + begin + Edit; + FieldByName('SWEPerson').Value:=Trim(DName); + FieldByName('SWPersonBZ').Value:=Trim(FBZ); + FieldByName('SWEndtime').Value:=SGetServerDateTime(ADOTemp); + Post; + end; + ADOCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + CDS_Main.Locate('SWID',Trim(MaxNo),[]); + with CDS_Main do + begin + Edit; + FieldByName('SWEndtime').Value:=SGetServerDateTime(ADOTemp); + FieldByName('SWEPerson').Value:=Trim(DName); + //FieldByName('SWEPersonBZ').Value:=Trim(FBZ); + Post; + end; + except + ADOCmd.Connection.RollbackTrans; + DataLink_WFBProducttion.ADOLink.Connected:=False; + Application.MessageBox('쳣','ʾ',0); + end; + DataLink_WFBProducttion.ADOLink.Connected:=False; +end; + +procedure TfrmStopWorkInPut.Button3Click(Sender: TObject); +begin + { try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='SWReason'; + flagname:='ͣԭ'; + if ShowModal=1 then + begin + end; + end; + finally + frmZDYHelp.Free; + end;} +end; + +procedure TfrmStopWorkInPut.Button4Click(Sender: TObject); +var + sql:String; +begin + DataLink_WFBProducttion.ADOLink.Connected:=False; + DataLink_WFBProducttion.ADOLink.Connected:=True; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_StopWorkList '); + sql.Add('where SWEndtime is null'); + if Trim(SCXFlag)<>'' then + begin + sql.Add(' and SWType='''+Trim(SCXFlag)+''''); + end; + + Open; + end; + if ADOCmd.IsEmpty=False then + begin + Application.MessageBox('ϴͣδп','ʾ',0); + Exit; + end; + Panel1.Visible:=True; + sql:='select ZdyName Name from KH_Zdy where Type=''SWReason'' order by orderno '; + SInitComBoxBySql(ADOTemp,SWReason,False,sql); + SWReason.SetFocus; + SWReason.DroppedDown:=True; + //SWReason. + DataLink_WFBProducttion.ADOLink.Connected:=False; +end; + +procedure TfrmStopWorkInPut.Button5Click(Sender: TObject); +var + FBZ,MaxNo:String; +begin + DataLink_WFBProducttion.ADOLink.Connected:=False; + DataLink_WFBProducttion.ADOLink.Connected:=True; + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from SY_User where UserId='''+Trim(DCode)+''''); + Open; + end; + FBZ:=Trim(ADOTemp.fieldbyname('BanZu').AsString); + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_StopWorkList'); + sql.Add(' where SWEndtime is null'); + if Trim(SCXFlag)<>'' then + begin + sql.Add(' and SWType='''+Trim(SCXFlag)+''''); + end; + Open; + end; + if ADOTemp.IsEmpty=True then + begin + Application.MessageBox('δǼͣ¼','ʾ',0); + exit; + end; + if Application.MessageBox('ȷҪִп','ʾ',32+4)<>IDYES then Exit; + with ADOTemp do + begin + Close; + SQL.Clear; + SQL.Add('select Top 1* from WFB_StopWorkList where SWEndtime is null '); + if Trim(SCXFlag)<>'' then + begin + sql.Add(' and SWType='''+Trim(SCXFlag)+''''); + end; + sql.Add(' order by SWBegtime desc'); + Open; + end; + MaxNo:=Trim(ADOTemp.fieldbyname('SWID').AsString); + try + ADOCmd.Connection.BeginTrans; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_StopWorkList where SWID='''+Trim(ADOTemp.fieldbyname('SWID').AsString)+''''); + Open; + end; + + with ADOCmd do + begin + Edit; + FieldByName('SWEPerson').Value:=Trim(DName); + FieldByName('SWPersonBZ').Value:=Trim(FBZ); + FieldByName('SWEndtime').Value:=SGetServerDateTime(ADOTemp); + Post; + end; + ADOCmd.Connection.CommitTrans; + //Application.MessageBox('ɹ','ʾ',0); + CDS_Main.Locate('SWID',Trim(MaxNo),[]); + with CDS_Main do + begin + Edit; + FieldByName('SWEndtime').Value:=SGetServerDateTime(ADOTemp); + FieldByName('SWEPerson').Value:=Trim(DName); + //FieldByName('SWEPersonBZ').Value:=Trim(FBZ); + Post; + end; + except + ADOCmd.Connection.RollbackTrans; + DataLink_WFBProducttion.ADOLink.Connected:=False; + Application.MessageBox('쳣','ʾ',0); + end; + DataLink_WFBProducttion.ADOLink.Connected:=False; +end; + +procedure TfrmStopWorkInPut.Button6Click(Sender: TObject); +begin + Close; + WriteCxGrid('ͣ¼',Tv1,'޷IJ'); +end; + +end. diff --git a/艾登贸易管理/U_StopWorkList.dfm b/艾登贸易管理/U_StopWorkList.dfm new file mode 100644 index 0000000..5f5b802 --- /dev/null +++ b/艾登贸易管理/U_StopWorkList.dfm @@ -0,0 +1,439 @@ +object frmStopWorkList: TfrmStopWorkList + Left = 90 + Top = 121 + Width = 1069 + Height = 598 + Caption = #20572#26426#35760#24405#34920 + 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 = 1061 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_WFBProducttion.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 2 + OnClick = TBRafreshClick + end + object ToolButton1: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + Visible = False + OnClick = ToolButton1Click + end + object TBDel: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + OnClick = TBDelClick + end + object ToolButton2: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 13 + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 315 + Top = 0 + Caption = #20572#26426#21407#22240 + ImageIndex = 56 + OnClick = ToolButton4Click + end + object TBClose: TToolButton + Left = 398 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 32 + Width = 1061 + Height = 76 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 23 + Top = 25 + Width = 24 + Height = 12 + Caption = #26085#26399 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label3: TLabel + Left = 450 + Top = 25 + Width = 36 + Height = 12 + Caption = #25805#20316#20154 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label5: TLabel + Left = 240 + Top = 49 + Width = 48 + Height = 12 + Caption = #20572#26426#21407#22240 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label4: TLabel + Left = 240 + Top = 25 + Width = 48 + Height = 12 + Caption = #29677' '#32452 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object BegDate: TDateTimePicker + Left = 50 + Top = 21 + Width = 168 + Height = 20 + Date = 40675.464742650460000000 + Format = 'yyyy-MM-dd' + Time = 40675.464742650460000000 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 0 + end + object EndDate: TDateTimePicker + Left = 50 + Top = 45 + Width = 169 + Height = 20 + Date = 40675.464761099540000000 + Format = 'yyyy-MM-dd' + Time = 40675.464761099540000000 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 1 + end + object SWPersonBZ: TComboBox + Tag = 1 + Left = 291 + Top = 21 + Width = 97 + Height = 20 + Style = csDropDownList + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 12 + ParentFont = False + TabOrder = 2 + OnChange = SWPersonBZChange + end + object SWPerson: TComboBox + Tag = 1 + Left = 491 + Top = 21 + Width = 97 + Height = 20 + Style = csDropDownList + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 12 + ParentFont = False + TabOrder = 3 + OnChange = SWPersonBZChange + end + object SWReason: TComboBox + Tag = 1 + Left = 291 + Top = 45 + Width = 297 + Height = 20 + Style = csDropDownList + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ItemHeight = 12 + ParentFont = False + TabOrder = 4 + OnChange = SWPersonBZChange + end + end + object cxGrid5: TcxGrid + Left = 0 + Top = 104 + Width = 1017 + Height = 393 + TabOrder = 2 + object Tv1: TcxGridDBBandedTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_WFBProducttion.SHuangSe + Styles.IncSearch = DataLink_WFBProducttion.SHuangSe + Styles.Selection = DataLink_WFBProducttion.SHuangSe + Styles.Header = DataLink_WFBProducttion.handBlack + Styles.BandHeader = DataLink_WFBProducttion.FoneRed + Bands = < + item + Width = 314 + end + item + Caption = #24320#22987#26102#38388 + Styles.Header = cxStyle3 + Width = 157 + end + item + Caption = #32467#26463#26102#38388 + Styles.Header = cxStyle4 + Width = 168 + end + item + Width = 363 + end> + object v1Column1: TcxGridDBBandedColumn + Tag = 2 + Caption = #26085#26399 + DataBinding.FieldName = 'SWDate10' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 216 + Position.BandIndex = 0 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object v1Column2: TcxGridDBBandedColumn + Tag = 2 + Caption = #29677#32452 + DataBinding.FieldName = 'SWPersonBZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 98 + Position.BandIndex = 0 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + object v1Column3: TcxGridDBBandedColumn + Tag = 2 + DataBinding.FieldName = 'SWBegTime' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Moving = False + Position.BandIndex = 1 + Position.ColIndex = 0 + Position.RowIndex = 0 + IsCaptionAssigned = True + end + object v1Column5: TcxGridDBBandedColumn + Tag = 2 + DataBinding.FieldName = 'SWEndTime' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Moving = False + Position.BandIndex = 2 + Position.ColIndex = 0 + Position.RowIndex = 0 + IsCaptionAssigned = True + end + object v1Column7: TcxGridDBBandedColumn + Tag = 2 + Caption = #20572#26426#21407#22240 + DataBinding.FieldName = 'SWReason' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = v1Column7PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Width = 242 + Position.BandIndex = 3 + Position.ColIndex = 0 + Position.RowIndex = 0 + end + object v1Column8: TcxGridDBBandedColumn + Tag = 2 + Caption = #25805#20316#20154 + DataBinding.FieldName = 'SWPerson' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 121 + Position.BandIndex = 3 + Position.ColIndex = 1 + Position.RowIndex = 0 + end + end + object cxGridLevel4: TcxGridLevel + GridView = Tv1 + end + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 552 + Top = 224 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid5 + PopupMenus = <> + Left = 432 + Top = 232 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 552 + Top = 248 + end + object ADOTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 584 + Top = 221 + end + object ADOCmd: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 608 + Top = 221 + end + object ADOQuery1: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 640 + Top = 221 + end + object cxStyleRepository1: TcxStyleRepository + Left = 920 + Top = 64 + object cxStyle1: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -27 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle2: TcxStyle + end + object cxStyle3: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clGreen + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object cxStyle4: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clRed + end + end + object ADOQueryMain: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 640 + Top = 293 + end +end diff --git a/艾登贸易管理/U_StopWorkList.pas b/艾登贸易管理/U_StopWorkList.pas new file mode 100644 index 0000000..84e0209 --- /dev/null +++ b/艾登贸易管理/U_StopWorkList.pas @@ -0,0 +1,291 @@ +unit U_StopWorkList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxCalendar, cxTimeEdit, + cxButtonEdit, cxGridLevel, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, + StdCtrls, ComCtrls, ExtCtrls, ToolWin, ADODB, DBClient, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridBandedTableView, + cxGridDBBandedTableView, cxDropDownEdit; + +type + TfrmStopWorkList = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + Label3: TLabel; + Label5: TLabel; + BegDate: TDateTimePicker; + EndDate: TDateTimePicker; + cxGrid5: TcxGrid; + cxGridLevel4: TcxGridLevel; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + Label4: TLabel; + DataSource1: TDataSource; + cxGridPopupMenu1: TcxGridPopupMenu; + CDS_Main: TClientDataSet; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + ADOQuery1: TADOQuery; + Tv1: TcxGridDBBandedTableView; + v1Column1: TcxGridDBBandedColumn; + v1Column2: TcxGridDBBandedColumn; + v1Column3: TcxGridDBBandedColumn; + v1Column5: TcxGridDBBandedColumn; + v1Column7: TcxGridDBBandedColumn; + v1Column8: TcxGridDBBandedColumn; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxStyle3: TcxStyle; + cxStyle4: TcxStyle; + SWPersonBZ: TComboBox; + SWPerson: TComboBox; + SWReason: TComboBox; + ADOQueryMain: TADOQuery; + ToolButton3: TToolButton; + ToolButton4: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure v1Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure TBCloseClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure SWPersonBZChange(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + private + { Private declarations } + procedure ComboxData(v1Column310:TcxGridDBBandedColumn;ii:Integer); + procedure InitGrid(); + public + { Public declarations } + end; + +var + frmStopWorkList: TfrmStopWorkList; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmStopWorkList.FormDestroy(Sender: TObject); +begin + frmStopWorkList:=nil; +end; + +procedure TfrmStopWorkList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmStopWorkList.FormCreate(Sender: TObject); +begin + cxGrid5.Align:=alClient; + +end; + +procedure TfrmStopWorkList.FormShow(Sender: TObject); + +begin + EndDate.DateTime:=SGetServerDate(ADOQuery1); + BegDate.DateTime:=EndDate.DateTime-7; + ReadCxBandedGrid('ͣ¼',Tv1,'޷IJ'); + InitGrid(); + +end; +procedure TfrmStopWorkList.InitGrid(); +var + sql:string; +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + sql.Clear; + SQL.Add('select SWDate10=(Convert(varchar(10),A.SWBegTime,120)), A.* from WFB_StopWorkList A where SWBegTime>=:begdate and SWBegTime<:enddate'); + Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime); + Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); + finally + ADOQueryMain.EnableControls; + end; + sql:='select distinct(SWPersonBZ) Name from WFB_StopWorkList where SWBegTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +'and SWBegTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + SInitComBoxBySql(ADOTemp,SWPersonBZ,False,sql); + sql:='select distinct(SWPerson) Name from WFB_StopWorkList where SWBegTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +'and SWBegTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + SInitComBoxBySql(ADOTemp,SWPerson,False,sql); + sql:='select distinct(SWReason) Name from WFB_StopWorkList where SWBegTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''' + +'and SWBegTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+''''; + SInitComBoxBySql(ADOTemp,SWReason,False,sql); +end; +procedure TfrmStopWorkList.ComboxData(v1Column310:TcxGridDBBandedColumn;ii:Integer); +var + i:Integer; + j:string; +begin + (v1Column310.Properties as TcxComboBoxProperties).Items.Clear; + for i:=0 to ii do + begin + if i<10 then + j:='0'+trim(IntToStr(i)) + else + j:=Trim(IntToStr(i)); + (v1Column310.Properties as TcxComboBoxProperties).Items.Add(Trim(j)); + end; +end; + +procedure TfrmStopWorkList.ToolButton1Click(Sender: TObject); +begin + with CDS_Main do + begin + Append; + FieldByName('SWDate').Value:=SGetServerDate(ADOTemp); + FieldByName('SWPerson').Value:=Trim(DName); + with ADOQuery1 do + begin + Close; + sql.Clear; + sql.Add('select * from SY_User where UserId='''+Trim(DCode)+''''); + Open; + end; + FieldByName('SWPersonBZ').Value:=Trim(ADOQuery1.fieldbyname('UDept').AsString); + Post; + end; +end; + +procedure TfrmStopWorkList.v1Column7PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='SWReason'; + flagname:='ͣԭ'; + if ShowModal=1 then + begin + Self.CDS_Main.Edit; + Self.CDS_Main.FieldByName('SWReason').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString) + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmStopWorkList.TBCloseClick(Sender: TObject); +begin + Close; + WriteCxBandedGrid('ͣ¼',Tv1,'޷IJ'); +end; + +procedure TfrmStopWorkList.ToolButton2Click(Sender: TObject); +var + maxno:string; +begin + BegDate.SetFocus; + if CDS_Main.IsEmpty then Exit; + try + ADOCmd.Connection.BeginTrans; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_StopWorkList Set SWReason='''+Trim(CDS_Main.fieldbyname('SWReason').AsString)+''''); + sql.Add(' where SWID='''+Trim(CDS_Main.fieldbyname('SWID').AsString)+''''); + ExecSQL; + end; + ADOCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + Exit; + except + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!','ʾ',0); + Exit; + end; +end; + +procedure TfrmStopWorkList.TBDelClick(Sender: TObject); +begin + if Trim(CDS_Main.fieldbyname('SWID').AsString)<>'' then + begin + if Trim(DCode)<>'ADMIN' then + begin + if Trim(DName)<>Trim(CDS_Main.fieldbyname('SWPerson').AsString) then + begin + Application.MessageBox('ɾ˼¼','ʾ',0); + Exit; + end; + end; + if Application.MessageBox('ȷҪɾ¼','ʾ',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete WFB_StopWorkList where SWID='''+Trim(CDS_Main.fieldbyname('SWID').AsString)+''''); + ExecSQL; + end; + end; + CDS_Main.Delete; +end; + +procedure TfrmStopWorkList.SWPersonBZChange(Sender: TObject); +begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_Main); + SInitCDSData20(ADOQueryMain,CDS_Main); +end; + +procedure TfrmStopWorkList.TBRafreshClick(Sender: TObject); +begin + BegDate.SetFocus; + InitGrid(); +end; + +procedure TfrmStopWorkList.ToolButton3Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then Exit; + TcxGridToExcel('ͣ¼',cxGrid5); +end; + +procedure TfrmStopWorkList.ToolButton4Click(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='SWReason'; + flagname:='ͣԭ'; + if ShowModal=1 then + begin + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +end. diff --git a/艾登贸易管理/U_ZJManage.dfm b/艾登贸易管理/U_ZJManage.dfm new file mode 100644 index 0000000..8923582 --- /dev/null +++ b/艾登贸易管理/U_ZJManage.dfm @@ -0,0 +1,2093 @@ +object frmZJManage: TfrmZJManage + Left = 5 + Top = 33 + Width = 1238 + Height = 760 + Caption = 'frmZJManage' + Color = clBtnFace + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + OldCreateOrder = False + PixelsPerInch = 96 + TextHeight = 13 + object Label1: TLabel + Left = 22 + Top = 25 + Width = 66 + Height = 33 + Caption = #25195#25551 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 22 + Top = 93 + Width = 62 + Height = 29 + Caption = #24133#23485 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 22 + Top = 157 + Width = 62 + Height = 29 + Caption = #38271#24230 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 22 + Top = 222 + Width = 62 + Height = 29 + Caption = #37325#37327 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 22 + Top = 362 + Width = 62 + Height = 29 + Caption = #30133#28857 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 22 + Top = 281 + Width = 62 + Height = 29 + Caption = #36873#25321 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Edit1: TEdit + Left = 88 + Top = 21 + Width = 297 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + Text = 'Edit1' + end + object ScrollBox1: TScrollBox + Left = 88 + Top = 339 + Width = 501 + Height = 342 + TabOrder = 1 + object SpeedButton13: TSpeedButton + Left = 3 + Top = 3 + Width = 80 + Height = 80 + Caption = #23567#40657#28857 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton14: TSpeedButton + Left = 85 + Top = 3 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton15: TSpeedButton + Left = 167 + Top = 3 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton16: TSpeedButton + Left = 249 + Top = 3 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton17: TSpeedButton + Left = 331 + Top = 3 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton18: TSpeedButton + Left = 413 + Top = 3 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton19: TSpeedButton + Left = 3 + Top = 85 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton20: TSpeedButton + Left = 85 + Top = 85 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton21: TSpeedButton + Left = 167 + Top = 85 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton22: TSpeedButton + Left = 249 + Top = 85 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton23: TSpeedButton + Left = 331 + Top = 85 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton24: TSpeedButton + Left = 413 + Top = 85 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton25: TSpeedButton + Left = 3 + Top = 168 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton26: TSpeedButton + Left = 85 + Top = 168 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton27: TSpeedButton + Left = 167 + Top = 168 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton28: TSpeedButton + Left = 249 + Top = 168 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton29: TSpeedButton + Left = 331 + Top = 168 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton30: TSpeedButton + Left = 413 + Top = 168 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton31: TSpeedButton + Left = 3 + Top = 251 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton32: TSpeedButton + Left = 85 + Top = 251 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton33: TSpeedButton + Left = 167 + Top = 251 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton34: TSpeedButton + Left = 249 + Top = 251 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton35: TSpeedButton + Left = 331 + Top = 251 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + object SpeedButton36: TSpeedButton + Left = 413 + Top = 251 + Width = 80 + Height = 80 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + end + end + object Button1: TButton + Left = 424 + Top = 16 + Width = 145 + Height = 57 + Caption = #30133#28857#23450#20041 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + end + object Button2: TButton + Left = 584 + Top = 16 + Width = 145 + Height = 57 + Caption = #20998#20999#35774#32622 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = Button2Click + end + object Button3: TButton + Left = 744 + Top = 16 + Width = 145 + Height = 57 + Caption = #25171' '#21360 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + end + object MovePanel1: TMovePanel + Left = 546 + Top = 382 + Width = 439 + Height = 299 + BevelInner = bvLowered + Color = clSkyBlue + TabOrder = 5 + Visible = False + object Label17: TLabel + Left = 50 + Top = 47 + Width = 120 + Height = 29 + Caption = #36215#22987#20301#32622 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 237 + Top = 116 + Width = 30 + Height = 29 + Caption = #21040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 353 + Top = 55 + Width = 16 + Height = 29 + Caption = 'M' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label20: TLabel + Left = 353 + Top = 167 + Width = 16 + Height = 29 + Caption = 'M' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label21: TLabel + Left = 51 + Top = 116 + Width = 112 + Height = 29 + Caption = 'Label21' + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Edit50: TEdit + Left = 171 + Top = 47 + Width = 174 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + end + object Button4: TButton + Left = 73 + Top = 223 + Width = 75 + Height = 49 + Caption = #30830#23450 + TabOrder = 1 + end + object Button5: TButton + Left = 299 + Top = 223 + Width = 75 + Height = 49 + Caption = #21462#28040 + TabOrder = 2 + end + object Edit51: TEdit + Left = 171 + Top = 157 + Width = 174 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + end + end + object cxGrid2: TcxGrid + Left = 552 + Top = 334 + Width = 337 + Height = 337 + TabOrder = 6 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column1 + end + item + Kind = skSum + Column = Tv2CDQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = cxStyle1 + object tv2CDType: TcxGridDBColumn + Caption = #30133#28857#31181#31867 + DataBinding.FieldName = 'CDName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 83 + end + object tv2CDWZ: TcxGridDBColumn + Caption = #20301#32622#36215 + DataBinding.FieldName = 'CDBeg' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Sorting = False + Width = 59 + end + object v2Column2: TcxGridDBColumn + Caption = #20301#32622#27490 + DataBinding.FieldName = 'CDend' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Width = 61 + end + object Tv2CDQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'CDQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 64 + end + object Tv2CDReason: TcxGridDBColumn + Caption = #21407#22240 + DataBinding.FieldName = 'CDReason' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 131 + end + object v2Column1: TcxGridDBColumn + DataBinding.FieldName = 'CDQty' + Visible = False + Width = 55 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGrid3: TcxGrid + Left = 984 + Top = 344 + Width = 201 + Height = 333 + TabOrder = 7 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Header = cxStyle1 + object cxGridDBColumn1: TcxGridDBColumn + Caption = #24050#32463#30331#35760#30340#23567#21367 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 186 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + object Panel5: TPanel + Left = 589 + Top = 337 + Width = 625 + Height = 172 + BevelInner = bvRaised + BevelOuter = bvLowered + ParentColor = True + TabOrder = 8 + Visible = False + object SpeedButton1: TSpeedButton + Left = 4 + Top = 3 + Width = 80 + Height = 80 + Caption = '0' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton2: TSpeedButton + Left = 88 + Top = 3 + Width = 80 + Height = 80 + Caption = '1' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton3: TSpeedButton + Left = 172 + Top = 3 + Width = 80 + Height = 80 + Caption = '2' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton4: TSpeedButton + Left = 256 + Top = 3 + Width = 80 + Height = 80 + Caption = '3' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton5: TSpeedButton + Left = 340 + Top = 3 + Width = 80 + Height = 80 + Caption = '4' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton6: TSpeedButton + Left = 4 + Top = 87 + Width = 80 + Height = 80 + Caption = '5' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton7: TSpeedButton + Left = 88 + Top = 87 + Width = 80 + Height = 80 + Caption = '6' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton8: TSpeedButton + Left = 172 + Top = 87 + Width = 80 + Height = 80 + Caption = '7' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton9: TSpeedButton + Left = 256 + Top = 87 + Width = 80 + Height = 80 + Caption = '8' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton10: TSpeedButton + Left = 340 + Top = 87 + Width = 80 + Height = 80 + Caption = '9' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton11: TSpeedButton + Tag = 9 + Left = 424 + Top = 87 + Width = 80 + Height = 80 + Caption = '.' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -53 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton12: TSpeedButton + Left = 424 + Top = 3 + Width = 80 + Height = 80 + Caption = #8592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -53 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton12Click + end + object SpeedButton49: TSpeedButton + Tag = 9 + Left = 517 + Top = 37 + Width = 91 + Height = 82 + Caption = #38544#34255 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton49Click + end + end + object Button6: TButton + Left = 904 + Top = 16 + Width = 145 + Height = 57 + Caption = #37325#26032#25171#21360 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + end + object Panel6: TPanel + Left = 88 + Top = 78 + Width = 1122 + Height = 258 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 10 + object Panel1: TPanel + Left = 8 + Top = 7 + Width = 1105 + Height = 54 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 0 + object Edit2: TEdit + Tag = 1 + Left = 9 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 0 + Visible = False + end + object Edit3: TEdit + Tag = 2 + Left = 100 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 1 + Visible = False + end + object Edit4: TEdit + Tag = 3 + Left = 191 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 2 + Visible = False + end + object Edit5: TEdit + Tag = 4 + Left = 282 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 3 + Visible = False + end + object Edit6: TEdit + Tag = 5 + Left = 373 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 4 + Visible = False + end + object Edit7: TEdit + Tag = 6 + Left = 464 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 5 + Visible = False + end + object Edit8: TEdit + Tag = 7 + Left = 555 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 6 + Visible = False + end + object Edit9: TEdit + Tag = 8 + Left = 646 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 7 + Visible = False + end + object Edit10: TEdit + Tag = 9 + Left = 737 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 8 + Visible = False + end + object Edit11: TEdit + Tag = 10 + Left = 828 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 9 + Visible = False + end + object Edit12: TEdit + Tag = 11 + Left = 919 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 10 + Visible = False + end + object Edit13: TEdit + Tag = 12 + Left = 1010 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 11 + Visible = False + end + end + object Panel2: TPanel + Left = 8 + Top = 71 + Width = 1105 + Height = 54 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 1 + object Edit14: TEdit + Tag = 1 + Left = 9 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + Visible = False + end + object Edit15: TEdit + Tag = 2 + Left = 100 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + Visible = False + end + object Edit16: TEdit + Tag = 3 + Left = 191 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + end + object Edit17: TEdit + Tag = 4 + Left = 282 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + end + object Edit18: TEdit + Tag = 5 + Left = 373 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + end + object Edit19: TEdit + Tag = 6 + Left = 464 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + Visible = False + end + object Edit20: TEdit + Tag = 7 + Left = 555 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + Visible = False + end + object Edit21: TEdit + Tag = 8 + Left = 646 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + Visible = False + end + object Edit22: TEdit + Tag = 9 + Left = 737 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + Visible = False + end + object Edit23: TEdit + Tag = 10 + Left = 828 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + Visible = False + end + object Edit24: TEdit + Tag = 11 + Left = 919 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + Visible = False + end + object Edit25: TEdit + Tag = 12 + Left = 1010 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + Visible = False + end + end + object Panel3: TPanel + Left = 8 + Top = 132 + Width = 1105 + Height = 54 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 2 + object Edit26: TEdit + Tag = 1 + Left = 9 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + Visible = False + end + object Edit27: TEdit + Tag = 2 + Left = 100 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + Visible = False + end + object Edit28: TEdit + Tag = 3 + Left = 191 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + end + object Edit29: TEdit + Tag = 4 + Left = 282 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + end + object Edit30: TEdit + Tag = 5 + Left = 373 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + end + object Edit31: TEdit + Tag = 6 + Left = 464 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + Visible = False + end + object Edit32: TEdit + Tag = 7 + Left = 555 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + Visible = False + end + object Edit33: TEdit + Tag = 8 + Left = 646 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + Visible = False + end + object Edit34: TEdit + Tag = 9 + Left = 737 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + Visible = False + end + object Edit35: TEdit + Tag = 10 + Left = 828 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + Visible = False + end + object Edit36: TEdit + Tag = 11 + Left = 919 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + Visible = False + end + object Edit37: TEdit + Tag = 12 + Left = 1010 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + Visible = False + end + end + object Panel4: TPanel + Left = 8 + Top = 197 + Width = 1105 + Height = 53 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 3 + object Edit38: TEdit + Tag = 1 + Left = 27 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 0 + Visible = False + OnClick = Edit38Click + end + object Edit39: TEdit + Tag = 2 + Left = 119 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 1 + Visible = False + OnClick = Edit38Click + end + object Edit40: TEdit + Tag = 3 + Left = 211 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 2 + Visible = False + OnClick = Edit38Click + end + object Edit41: TEdit + Tag = 4 + Left = 303 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 3 + Visible = False + OnClick = Edit38Click + end + object Edit42: TEdit + Tag = 5 + Left = 395 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 4 + Visible = False + OnClick = Edit38Click + end + object Edit43: TEdit + Tag = 6 + Left = 487 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 5 + Visible = False + OnClick = Edit38Click + end + object Edit44: TEdit + Tag = 7 + Left = 578 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 6 + Visible = False + OnClick = Edit38Click + end + object Edit45: TEdit + Tag = 8 + Left = 670 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 7 + Visible = False + OnClick = Edit38Click + end + object Edit46: TEdit + Tag = 9 + Left = 762 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 8 + Visible = False + OnClick = Edit38Click + end + object Edit47: TEdit + Tag = 10 + Left = 854 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 9 + Visible = False + OnClick = Edit38Click + end + object Edit48: TEdit + Tag = 11 + Left = 946 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 10 + Visible = False + OnClick = Edit38Click + end + object Edit49: TEdit + Tag = 12 + Left = 1038 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 11 + Visible = False + OnClick = Edit38Click + end + end + end + object Panel7: TPanel + Left = 83 + Top = 79 + Width = 1115 + Height = 242 + TabOrder = 11 + Visible = False + object Label7: TLabel + Left = 22 + Top = 35 + Width = 62 + Height = 29 + Caption = #23494#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 502 + Top = 37 + Width = 124 + Height = 29 + Caption = #20998#20999#20010#25968 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Panel10: TPanel + Left = 1 + Top = 1 + Width = 1113 + Height = 23 + Align = alTop + Alignment = taLeftJustify + BevelOuter = bvNone + Caption = #36873#21333 + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + end + object Button7: TButton + Left = 160 + Top = 166 + Width = 81 + Height = 67 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button7Click + end + object Button8: TButton + Left = 880 + Top = 169 + Width = 73 + Height = 65 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Button8Click + end + object Panel8: TPanel + Left = 8 + Top = 87 + Width = 1105 + Height = 54 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 3 + object Edit52: TEdit + Tag = 1 + Left = 9 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + Visible = False + OnClick = Edit64Click + end + object Edit53: TEdit + Tag = 2 + Left = 100 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + Visible = False + OnClick = Edit64Click + end + object Edit54: TEdit + Tag = 3 + Left = 191 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + OnClick = Edit64Click + end + object Edit55: TEdit + Tag = 4 + Left = 282 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + OnClick = Edit64Click + end + object Edit56: TEdit + Tag = 5 + Left = 373 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + OnClick = Edit64Click + end + object Edit57: TEdit + Tag = 6 + Left = 464 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + Visible = False + OnClick = Edit64Click + end + object Edit58: TEdit + Tag = 7 + Left = 555 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + Visible = False + OnClick = Edit64Click + end + object Edit59: TEdit + Tag = 8 + Left = 646 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + Visible = False + OnClick = Edit64Click + end + object Edit60: TEdit + Tag = 9 + Left = 737 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + Visible = False + OnClick = Edit64Click + end + object Edit61: TEdit + Tag = 10 + Left = 828 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + Visible = False + OnClick = Edit64Click + end + object Edit62: TEdit + Tag = 11 + Left = 919 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + Visible = False + OnClick = Edit64Click + end + object Edit63: TEdit + Tag = 12 + Left = 1010 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + Visible = False + OnClick = Edit64Click + end + end + object Edit64: TEdit + Tag = 1 + Left = 97 + Top = 32 + Width = 240 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + PasswordChar = '*' + TabOrder = 4 + OnClick = Edit64Click + end + object Button9: TButton + Left = 344 + Top = 30 + Width = 89 + Height = 43 + Caption = #23494#30721#30830#35748 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + OnClick = Button9Click + end + object ComboBox1: TComboBox + Left = 632 + Top = 34 + Width = 145 + Height = 41 + Style = csDropDownList + DropDownCount = 15 + Enabled = False + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ItemHeight = 33 + ParentFont = False + TabOrder = 6 + OnChange = ComboBox1Change + Items.Strings = ( + '1' + '2' + '3' + '4' + '5' + '6' + '7' + '8' + '9' + '10' + '11' + '12') + end + end + object cxStyleRepository5: TcxStyleRepository + Left = 960 + Top = 16 + object cxStyle6: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + end + object cxStyleRepository1: TcxStyleRepository + Left = 1008 + Top = 56 + object cxStyle1: TcxStyle + AssignedValues = [svColor, svFont] + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle2: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Pitch = fpFixed + Font.Style = [fsBold] + TextColor = clDefault + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 886 + Top = 119 + end +end diff --git a/艾登贸易管理/U_ZJManage.pas b/艾登贸易管理/U_ZJManage.pas new file mode 100644 index 0000000..775c616 --- /dev/null +++ b/艾登贸易管理/U_ZJManage.pas @@ -0,0 +1,391 @@ +unit U_ZJManage; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, Buttons, ExtCtrls, cxStyles, cxCustomData, cxGraphics, + cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, cxTextEdit, + cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, + cxClasses, cxControls, cxGridCustomView, cxGrid, MovePanel, ADODB; + +type + TfrmZJManage = class(TForm) + Edit1: TEdit; + Label1: TLabel; + Label2: TLabel; + Label3: TLabel; + Label4: TLabel; + Label5: TLabel; + Label6: TLabel; + ScrollBox1: TScrollBox; + SpeedButton13: TSpeedButton; + SpeedButton14: TSpeedButton; + SpeedButton15: TSpeedButton; + SpeedButton16: TSpeedButton; + SpeedButton17: TSpeedButton; + SpeedButton18: TSpeedButton; + SpeedButton19: TSpeedButton; + SpeedButton20: TSpeedButton; + SpeedButton21: TSpeedButton; + SpeedButton22: TSpeedButton; + SpeedButton23: TSpeedButton; + SpeedButton24: TSpeedButton; + SpeedButton25: TSpeedButton; + SpeedButton26: TSpeedButton; + SpeedButton27: TSpeedButton; + SpeedButton28: TSpeedButton; + SpeedButton29: TSpeedButton; + SpeedButton30: TSpeedButton; + SpeedButton31: TSpeedButton; + SpeedButton32: TSpeedButton; + SpeedButton33: TSpeedButton; + SpeedButton34: TSpeedButton; + SpeedButton35: TSpeedButton; + SpeedButton36: TSpeedButton; + Button1: TButton; + Button2: TButton; + Button3: TButton; + MovePanel1: TMovePanel; + Label17: TLabel; + Label18: TLabel; + Label19: TLabel; + Label20: TLabel; + Label21: TLabel; + Edit50: TEdit; + Button4: TButton; + Button5: TButton; + Edit51: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + tv2CDType: TcxGridDBColumn; + tv2CDWZ: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + Tv2CDQty: TcxGridDBColumn; + Tv2CDReason: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + cxStyleRepository5: TcxStyleRepository; + cxStyle6: TcxStyle; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + Panel5: TPanel; + SpeedButton1: TSpeedButton; + SpeedButton2: TSpeedButton; + SpeedButton3: TSpeedButton; + SpeedButton4: TSpeedButton; + SpeedButton5: TSpeedButton; + SpeedButton6: TSpeedButton; + SpeedButton7: TSpeedButton; + SpeedButton8: TSpeedButton; + SpeedButton9: TSpeedButton; + SpeedButton10: TSpeedButton; + SpeedButton11: TSpeedButton; + SpeedButton12: TSpeedButton; + SpeedButton49: TSpeedButton; + Button6: TButton; + Panel6: TPanel; + Panel1: TPanel; + Edit2: TEdit; + Edit3: TEdit; + Edit4: TEdit; + Edit5: TEdit; + Edit6: TEdit; + Edit7: TEdit; + Edit8: TEdit; + Edit9: TEdit; + Edit10: TEdit; + Edit11: TEdit; + Edit12: TEdit; + Edit13: TEdit; + Panel2: TPanel; + Edit14: TEdit; + Edit15: TEdit; + Edit16: TEdit; + Edit17: TEdit; + Edit18: TEdit; + Edit19: TEdit; + Edit20: TEdit; + Edit21: TEdit; + Edit22: TEdit; + Edit23: TEdit; + Edit24: TEdit; + Edit25: TEdit; + Panel3: TPanel; + Edit26: TEdit; + Edit27: TEdit; + Edit28: TEdit; + Edit29: TEdit; + Edit30: TEdit; + Edit31: TEdit; + Edit32: TEdit; + Edit33: TEdit; + Edit34: TEdit; + Edit35: TEdit; + Edit36: TEdit; + Edit37: TEdit; + Panel4: TPanel; + Edit38: TEdit; + Edit39: TEdit; + Edit40: TEdit; + Edit41: TEdit; + Edit42: TEdit; + Edit43: TEdit; + Edit44: TEdit; + Edit45: TEdit; + Edit46: TEdit; + Edit47: TEdit; + Edit48: TEdit; + Edit49: TEdit; + Panel7: TPanel; + Panel10: TPanel; + Button7: TButton; + Button8: TButton; + Panel8: TPanel; + Edit52: TEdit; + Edit53: TEdit; + Edit54: TEdit; + Edit55: TEdit; + Edit56: TEdit; + Edit57: TEdit; + Edit58: TEdit; + Edit59: TEdit; + Edit60: TEdit; + Edit61: TEdit; + Edit62: TEdit; + Edit63: TEdit; + Edit64: TEdit; + Label7: TLabel; + Button9: TButton; + Label8: TLabel; + ComboBox1: TComboBox; + ADOQueryTemp: TADOQuery; + procedure Edit38Click(Sender: TObject); + procedure Edit64Click(Sender: TObject); + procedure SpeedButton1Click(Sender: TObject); + procedure SpeedButton12Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure Button8Click(Sender: TObject); + procedure Button9Click(Sender: TObject); + procedure SpeedButton49Click(Sender: TObject); + procedure ComboBox1Change(Sender: TObject); + procedure Button7Click(Sender: TObject); + private + { Private declarations } + procedure ClearSpenndHit(); + procedure VisbleControl(Panel55:TWinControl;XS:Boolean;SXCount:Integer); + function ChkEditNULL(panel55:TWinControl):Boolean; + public + { Public declarations } + end; + +var + frmZJManage: TfrmZJManage; + +implementation +uses +U_DataLink,U_Fun,U_ZDYHelp,U_iniParam,AES,ElAES; + +{$R *.dfm} + +procedure TfrmZJManage.Edit38Click(Sender: TObject); +begin + if Trim(TcxTextEdit(Sender).Text)='' then + begin + TcxTextEdit(Sender).Text:=''; + end else + begin + TcxTextEdit(Sender).Text:=''; + end; +end; + +procedure TfrmZJManage.Edit64Click(Sender: TObject); +var + i:Integer; +begin + Panel5.Visible:=True; + with Panel5 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim(TEdit(Sender).Name); + end; + end; + end; +end; +procedure TfrmZJManage.ClearSpenndHit(); +var + i:Integer; +begin + with Panel5 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=''; + end; + end; + end; +end; +procedure TfrmZJManage.VisbleControl(Panel55:TWinControl;XS:Boolean;SXCount:Integer); +var + i:Integer; +begin + with Panel55 do + begin + for i:=0 to SXCount-1 do + begin + Controls[i].Visible:=XS; + end; + end; +end; + +procedure TfrmZJManage.SpeedButton1Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TSpeedButton(Sender).Hint); + if Trim(fsj)='' then Exit; + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=fsj+Trim(TSpeedButton(Sender).Caption); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; + +procedure TfrmZJManage.SpeedButton12Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + if Trim(fsj)='' then Exit; + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=Copy(fsj,1,Length(fsj)-1); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; + +procedure TfrmZJManage.Button2Click(Sender: TObject); +begin + Panel7.Visible:=True; +end; + +procedure TfrmZJManage.Button8Click(Sender: TObject); +begin + Panel7.Visible:=False; + Edit64.Text:=''; + ComboBox1.ItemIndex:=-1; + ComboBox1.Enabled:=False; + VisbleControl(Panel8,False,Panel8.ControlCount); +end; + +procedure TfrmZJManage.Button9Click(Sender: TObject); +var + mm,mm2:string; +begin + with ADOQueryTemp do + begin + sql.Clear; + sql.add('SELECT userid,username,password FROM SY_User WHERE userid='+''''+trim(DCode)+''''); + Open; + mm:=Trim(Fields[2].AsString); + if Trim(mm)<>'' then + mm2:=Trim(DecryptString(Trim(mm),'ljb^0122!@#*&^%$',kb128)) + else + begin + Application.MessageBox('벻Ϊգ','ʾ',0); + Exit; + end; + close; + end; + + if (mm2=trim(Edit64.text)) then + begin + ComboBox1.Enabled:=True; + ComboBox1.SetFocus; + ComboBox1.DroppedDown:=True; + ClearSpenndHit(); + end + else + Application.MessageBox('', 'Ϣʾ', MB_OK or MB_ICONinformation); +end; + +procedure TfrmZJManage.SpeedButton49Click(Sender: TObject); +begin + Panel5.Visible:=false; +end; + +procedure TfrmZJManage.ComboBox1Change(Sender: TObject); +var + i,FCont:Integer; +begin + if Trim(ComboBox1.Text)='' then + begin + VisbleControl(Panel8,False,Panel8.ControlCount); + end else + begin + VisbleControl(Panel8,False,Panel8.ControlCount); + FCont:=StrToInt(ComboBox1.Text); + VisbleControl(Panel8,True,FCont); + end; + +end; + +procedure TfrmZJManage.Button7Click(Sender: TObject); +begin + if Trim(ComboBox1.Text)='' then + begin + Application.MessageBox('иδѡ','ʾ',0); + Exit; + end; + if ChkEditNULL(Panel8)=False then + begin + Application.MessageBox('ݲȫд','ʾ',0); + Exit; + end; + Panel7.Visible:=False; + VisbleControl(Panel1,False,Panel1.ControlCount); + VisbleControl(Panel1,True,StrToInt(ComboBox1.Text)); + VisbleControl(Panel2,False,Panel2.ControlCount); + VisbleControl(Panel2,True,StrToInt(ComboBox1.Text)); + VisbleControl(Panel3,False,Panel3.ControlCount); + VisbleControl(Panel3,True,StrToInt(ComboBox1.Text)); + VisbleControl(Panel4,False,Panel4.ControlCount); + VisbleControl(Panel4,True,StrToInt(ComboBox1.Text)); + ComboBox1.ItemIndex:=-1; + VisbleControl(Panel8,False,Panel8.ControlCount); + Edit64.Text:=''; + +end; + +function TfrmZJManage.ChkEditNULL(panel55:TWinControl):Boolean; +var + i:Integer; +begin + Result:=False; + with panel55 do + begin + for i:=0 to panel55.ControlCount-1 do + begin + if Controls[i].Visible=True then + begin + if Trim(TEdit(Controls[i]).Text)='' then + begin + Result:=False; + Break; + end else + begin + Result:=True; + end; + end; + + end; + end; + +end; + +end. diff --git a/艾登贸易管理/U_ZJManageNew.dfm b/艾登贸易管理/U_ZJManageNew.dfm new file mode 100644 index 0000000..3e1aa71 --- /dev/null +++ b/艾登贸易管理/U_ZJManageNew.dfm @@ -0,0 +1,2690 @@ +object frmZJManageNew: TfrmZJManageNew + Left = -2 + Top = 20 + Width = 1292 + Height = 734 + Caption = 'frmZJManageNew' + Color = clBtnFace + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 13 + object Label1: TLabel + Left = 22 + Top = 13 + Width = 66 + Height = 33 + Caption = #25195#25551 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 22 + Top = 159 + Width = 62 + Height = 58 + Caption = #24133#23485#13#10' cm' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 22 + Top = 227 + Width = 62 + Height = 58 + Caption = #38271#24230#13#10' M' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 22 + Top = 379 + Width = 62 + Height = 58 + Caption = #37325#37327#13#10' Kg' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 22 + Top = 518 + Width = 62 + Height = 29 + Caption = #30133#28857 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 22 + Top = 450 + Width = 62 + Height = 29 + Caption = #36873#25321 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 992 + Top = 56 + Width = 23 + Height = 84 + Caption = #20998#13#10#20999#13#10#35828#13#10#26126 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 22 + Top = 334 + Width = 62 + Height = 29 + Caption = #25509#22836 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 22 + Top = 291 + Width = 62 + Height = 29 + Caption = #36192#36865 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 994 + Top = 16 + Width = 100 + Height = 24 + Caption = #27597#21367#26465#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -24 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object MJID: TEdit + Left = 88 + Top = 9 + Width = 297 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnKeyPress = MJIDKeyPress + end + object ScrollBox1: TScrollBox + Left = 88 + Top = 517 + Width = 501 + Height = 151 + TabOrder = 1 + object SpeedButton13: TSpeedButton + Left = 3 + Top = 3 + Width = 60 + Height = 60 + Caption = #23567#40657#28857 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton14: TSpeedButton + Left = 64 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton15: TSpeedButton + Left = 125 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton16: TSpeedButton + Left = 186 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton17: TSpeedButton + Left = 247 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton18: TSpeedButton + Left = 308 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton19: TSpeedButton + Left = 369 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton20: TSpeedButton + Left = 430 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton21: TSpeedButton + Left = 3 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton22: TSpeedButton + Left = 64 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton23: TSpeedButton + Left = 125 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton24: TSpeedButton + Left = 186 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton25: TSpeedButton + Left = 247 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton26: TSpeedButton + Left = 308 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton27: TSpeedButton + Left = 369 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton28: TSpeedButton + Left = 430 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + end + object Button1: TButton + Left = 390 + Top = 7 + Width = 145 + Height = 42 + Caption = #21516#21333#21512#21367 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Button1Click + end + object Button3: TButton + Left = 544 + Top = 9 + Width = 144 + Height = 40 + Caption = #25171' '#21360 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = Button3Click + end + object cxGrid2: TcxGrid + Left = 584 + Top = 514 + Width = 398 + Height = 156 + TabOrder = 4 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column1 + end + item + Kind = skSum + Column = Tv2CDQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Content = cxStyle3 + Styles.Header = cxStyle3 + object v2Column3: TcxGridDBColumn + Caption = #21367#24207#21495 + DataBinding.FieldName = 'XJInt' + Width = 56 + end + object tv2CDType: TcxGridDBColumn + Caption = #30133#28857#31181#31867 + DataBinding.FieldName = 'CDName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 79 + end + object tv2CDWZ: TcxGridDBColumn + Caption = #20301#32622#36215 + DataBinding.FieldName = 'CDBeg' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Sorting = False + Width = 60 + end + object v2Column2: TcxGridDBColumn + Caption = #20301#32622#27490 + DataBinding.FieldName = 'CDend' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Width = 61 + end + object Tv2CDQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'CDQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Footer = cxStyle2 + Width = 92 + end + object Tv2CDReason: TcxGridDBColumn + Caption = #21407#22240 + DataBinding.FieldName = 'CDReason' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = cxStyle2 + Width = 131 + end + object v2Column1: TcxGridDBColumn + DataBinding.FieldName = 'CDQty' + Visible = False + Styles.Content = cxStyle2 + Width = 55 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGrid3: TcxGrid + Left = 984 + Top = 516 + Width = 225 + Height = 155 + TabOrder = 5 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv3CellClick + DataController.DataSource = DataSource3 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Header = cxStyle1 + object v3Column1: TcxGridDBColumn + Caption = #21367#24207#21495 + DataBinding.FieldName = 'XJInt' + Styles.Content = cxStyle2 + Width = 56 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #23567#21367#26465#30721 + DataBinding.FieldName = 'XJID' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 158 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + object Button6: TButton + Left = 700 + Top = 10 + Width = 145 + Height = 39 + Caption = #37325#26032#25171#21360 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + OnClick = Button6Click + end + object Panel6: TPanel + Left = 88 + Top = 154 + Width = 1122 + Height = 344 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 7 + object Panel1: TPanel + Left = 8 + Top = 7 + Width = 1105 + Height = 54 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 0 + object SmalMF1: TEdit + Left = 9 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 0 + Visible = False + end + object SmalMF2: TEdit + Left = 100 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 1 + Visible = False + end + object SmalMF3: TEdit + Left = 191 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 2 + Visible = False + end + object SmalMF4: TEdit + Left = 282 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 3 + Visible = False + end + object SmalMF5: TEdit + Left = 373 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 4 + Visible = False + end + object SmalMF6: TEdit + Left = 464 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 5 + Visible = False + end + object SmalMF7: TEdit + Left = 555 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 6 + Visible = False + end + object SmalMF8: TEdit + Left = 646 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 7 + Visible = False + end + object SmalMF9: TEdit + Left = 737 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 8 + Visible = False + end + object SmalMF10: TEdit + Left = 828 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 9 + Visible = False + end + object SmalMF11: TEdit + Left = 919 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 10 + Visible = False + end + object SmalMF12: TEdit + Left = 1010 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 11 + Visible = False + end + end + object Panel2: TPanel + Left = 8 + Top = 66 + Width = 1105 + Height = 52 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 1 + object XJLen1: TEdit + Tag = 1 + Left = 9 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + Visible = False + OnClick = XJLen1Click + end + object XJLen2: TEdit + Tag = 2 + Left = 100 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + Visible = False + OnClick = XJLen1Click + end + object XJLen3: TEdit + Tag = 3 + Left = 191 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + OnClick = XJLen1Click + end + object XJLen4: TEdit + Tag = 4 + Left = 282 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + OnClick = XJLen1Click + end + object XJLen5: TEdit + Tag = 5 + Left = 373 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + OnClick = XJLen1Click + end + object XJLen6: TEdit + Tag = 6 + Left = 464 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + Visible = False + OnClick = XJLen1Click + end + object XJLen7: TEdit + Tag = 7 + Left = 555 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + Visible = False + OnClick = XJLen1Click + end + object XJLen8: TEdit + Tag = 8 + Left = 646 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + Visible = False + OnClick = XJLen1Click + end + object XJLen9: TEdit + Tag = 9 + Left = 737 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + Visible = False + OnClick = XJLen1Click + end + object XJLen10: TEdit + Tag = 10 + Left = 828 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + Visible = False + OnClick = XJLen1Click + end + object XJLen11: TEdit + Tag = 11 + Left = 919 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + Visible = False + OnClick = XJLen1Click + end + object XJLen12: TEdit + Tag = 12 + Left = 1010 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + Visible = False + OnClick = XJLen1Click + end + end + object Panel3: TPanel + Left = 8 + Top = 228 + Width = 1105 + Height = 54 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 2 + object XJMaoZ1: TEdit + Tag = 1 + Left = 9 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ2: TEdit + Tag = 2 + Left = 100 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ3: TEdit + Tag = 3 + Left = 191 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ4: TEdit + Tag = 4 + Left = 282 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ5: TEdit + Tag = 5 + Left = 373 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ6: TEdit + Tag = 6 + Left = 464 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ7: TEdit + Tag = 7 + Left = 555 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ8: TEdit + Tag = 8 + Left = 646 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ9: TEdit + Tag = 9 + Left = 737 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ10: TEdit + Tag = 10 + Left = 828 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ11: TEdit + Tag = 11 + Left = 919 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ12: TEdit + Tag = 12 + Left = 1010 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + Visible = False + OnClick = XJLen1Click + end + end + object Panel4: TPanel + Left = 8 + Top = 283 + Width = 1105 + Height = 53 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 3 + object Sel1: TEdit + Tag = 1 + Left = 27 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 0 + Visible = False + OnClick = Sel1Click + end + object Sel2: TEdit + Tag = 2 + Left = 119 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 1 + Visible = False + OnClick = Sel1Click + end + object Sel3: TEdit + Tag = 3 + Left = 211 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 2 + Visible = False + OnClick = Sel1Click + end + object Sel4: TEdit + Tag = 4 + Left = 303 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 3 + Visible = False + OnClick = Sel1Click + end + object Sel5: TEdit + Tag = 5 + Left = 395 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 4 + Visible = False + OnClick = Sel1Click + end + object Sel6: TEdit + Tag = 6 + Left = 487 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 5 + Visible = False + OnClick = Sel1Click + end + object Sel7: TEdit + Tag = 7 + Left = 578 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 6 + Visible = False + OnClick = Sel1Click + end + object Sel8: TEdit + Tag = 8 + Left = 670 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 7 + Visible = False + OnClick = Sel1Click + end + object Sel9: TEdit + Tag = 9 + Left = 762 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 8 + Visible = False + OnClick = Sel1Click + end + object Sel10: TEdit + Tag = 10 + Left = 854 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 9 + Visible = False + OnClick = Sel1Click + end + object Sel11: TEdit + Tag = 11 + Left = 946 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 10 + Visible = False + OnClick = Sel1Click + end + object Sel12: TEdit + Tag = 12 + Left = 1038 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 11 + Visible = False + OnClick = Sel1Click + end + end + object Panel7: TPanel + Left = 8 + Top = 124 + Width = 1105 + Height = 52 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 4 + object XJFree1: TEdit + Tag = 1 + Left = 9 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + Visible = False + OnClick = XJLen1Click + end + object XJFree2: TEdit + Tag = 2 + Left = 100 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + Visible = False + OnClick = XJLen1Click + end + object XJFree3: TEdit + Tag = 3 + Left = 191 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + OnClick = XJLen1Click + end + object XJFree4: TEdit + Tag = 4 + Left = 282 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + OnClick = XJLen1Click + end + object XJFree5: TEdit + Tag = 5 + Left = 373 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + OnClick = XJLen1Click + end + object XJFree6: TEdit + Tag = 6 + Left = 464 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + Visible = False + OnClick = XJLen1Click + end + object XJFree7: TEdit + Tag = 7 + Left = 555 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + Visible = False + OnClick = XJLen1Click + end + object XJFree8: TEdit + Tag = 8 + Left = 646 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + Visible = False + OnClick = XJLen1Click + end + object XJFree9: TEdit + Tag = 9 + Left = 737 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + Visible = False + OnClick = XJLen1Click + end + object XJFree10: TEdit + Tag = 10 + Left = 828 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + Visible = False + OnClick = XJLen1Click + end + object XJFree11: TEdit + Tag = 11 + Left = 919 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + Visible = False + OnClick = XJLen1Click + end + object XJFree12: TEdit + Tag = 12 + Left = 1010 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + Visible = False + OnClick = XJLen1Click + end + end + object Panel8: TPanel + Left = 8 + Top = 172 + Width = 1105 + Height = 52 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 5 + object XjJt1: TEdit + Tag = 1 + Left = 9 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + Visible = False + OnClick = XJLen1Click + end + object XjJt2: TEdit + Tag = 2 + Left = 100 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + Visible = False + OnClick = XJLen1Click + end + object XjJt3: TEdit + Tag = 3 + Left = 191 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + OnClick = XJLen1Click + end + object XjJt4: TEdit + Tag = 4 + Left = 282 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + OnClick = XJLen1Click + end + object XjJt5: TEdit + Tag = 5 + Left = 373 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + OnClick = XJLen1Click + end + object XjJt6: TEdit + Tag = 6 + Left = 464 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + Visible = False + OnClick = XJLen1Click + end + object XjJt7: TEdit + Tag = 7 + Left = 555 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + Visible = False + OnClick = XJLen1Click + end + object XjJt8: TEdit + Tag = 8 + Left = 646 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + Visible = False + OnClick = XJLen1Click + end + object XjJt9: TEdit + Tag = 9 + Left = 737 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + Visible = False + OnClick = XJLen1Click + end + object XjJt10: TEdit + Tag = 10 + Left = 828 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + Visible = False + OnClick = XJLen1Click + end + object XjJt11: TEdit + Tag = 11 + Left = 919 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + Visible = False + OnClick = XJLen1Click + end + object XjJt12: TEdit + Tag = 12 + Left = 1010 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + Visible = False + OnClick = XJLen1Click + end + end + end + object Panel5: TPanel + Left = 578 + Top = 493 + Width = 625 + Height = 172 + BevelInner = bvRaised + BevelOuter = bvLowered + ParentColor = True + TabOrder = 8 + Visible = False + object SpeedButton1: TSpeedButton + Left = 4 + Top = 3 + Width = 80 + Height = 80 + Caption = '0' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton2: TSpeedButton + Left = 88 + Top = 3 + Width = 80 + Height = 80 + Caption = '1' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton3: TSpeedButton + Left = 172 + Top = 3 + Width = 80 + Height = 80 + Caption = '2' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton4: TSpeedButton + Left = 256 + Top = 3 + Width = 80 + Height = 80 + Caption = '3' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton5: TSpeedButton + Left = 340 + Top = 3 + Width = 80 + Height = 80 + Caption = '4' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton6: TSpeedButton + Left = 4 + Top = 87 + Width = 80 + Height = 80 + Caption = '5' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton7: TSpeedButton + Left = 88 + Top = 87 + Width = 80 + Height = 80 + Caption = '6' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton8: TSpeedButton + Left = 172 + Top = 87 + Width = 80 + Height = 80 + Caption = '7' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton9: TSpeedButton + Left = 256 + Top = 87 + Width = 80 + Height = 80 + Caption = '8' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton10: TSpeedButton + Left = 340 + Top = 87 + Width = 80 + Height = 80 + Caption = '9' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton11: TSpeedButton + Tag = 9 + Left = 424 + Top = 87 + Width = 80 + Height = 80 + Caption = '.' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -53 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton12: TSpeedButton + Left = 424 + Top = 3 + Width = 80 + Height = 80 + Caption = #8592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -53 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton12Click + end + object SpeedButton49: TSpeedButton + Tag = 9 + Left = 517 + Top = 37 + Width = 91 + Height = 82 + Caption = #38544#34255 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton49Click + end + end + object cxGrid4: TcxGrid + Left = 88 + Top = 51 + Width = 898 + Height = 55 + TabOrder = 9 + object TvSel: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Header = cxStyle3 + object vSelColumn1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle3 + Width = 149 + end + object vSelColumn4: TcxGridDBColumn + Caption = #20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle3 + Width = 89 + end + object vSelColumn6: TcxGridDBColumn + Caption = #22823#21367#38376#24133'CM' + DataBinding.FieldName = 'MJFK' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle3 + Width = 94 + end + object vSelColumn5: TcxGridDBColumn + Caption = #22823#21367#38271'M' + DataBinding.FieldName = 'MJLen' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle3 + Width = 68 + end + object cxGridDBColumn7: TcxGridDBColumn + Caption = #22823#21367#37325'Kg' + DataBinding.FieldName = 'MJMaoZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle3 + Styles.Header = cxStyle1 + Width = 81 + end + object vSelColumn2: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MJSJKZ' + Styles.Content = cxStyle3 + Width = 41 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle3 + Width = 43 + end + object vSelColumn7: TcxGridDBColumn + Caption = #32593#23380#30446#25968 + DataBinding.FieldName = 'WKMS' + Styles.Content = cxStyle3 + Width = 74 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle3 + Width = 58 + end + object vSelColumn3: TcxGridDBColumn + Caption = #20998#20999#20010#25968 + DataBinding.FieldName = 'SmalCount' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle3 + Width = 79 + end + object vSelColumn8: TcxGridDBColumn + Caption = #20801#35768#20559#24046 + DataBinding.FieldName = 'SmalPC' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle3 + Width = 78 + end + end + object cxGridLevel3: TcxGridLevel + GridView = TvSel + end + end + object Button2: TButton + Left = 860 + Top = 10 + Width = 101 + Height = 39 + Caption = #36864#20986 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + OnClick = Button2Click + end + object MJCDHZ: TRichEdit + Left = 88 + Top = 108 + Width = 899 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + Lines.Strings = ( + '') + ParentFont = False + ReadOnly = True + ScrollBars = ssVertical + TabOrder = 11 + end + object SmalNote: TRichEdit + Left = 1016 + Top = 50 + Width = 193 + Height = 98 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + Lines.Strings = ( + '') + ParentFont = False + ReadOnly = True + ScrollBars = ssVertical + TabOrder = 12 + end + object MovePanel2: TMovePanel + Left = 56 + Top = 37 + Width = 1137 + Height = 505 + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 13 + Visible = False + object Label8: TLabel + Left = 421 + Top = 24 + Width = 262 + Height = 35 + Caption = #21516' '#21333' '#21512' '#21367 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 22 + Top = 85 + Width = 66 + Height = 33 + Caption = #25195#25551 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object cxGrid1: TcxGrid + Left = 8 + Top = 144 + Width = 1121 + Height = 249 + TabOrder = 0 + object TvHJ: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TvHJCellDblClick + DataController.DataSource = DSHJ + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = vHJColumn1 + end + item + Kind = skSum + Column = vHJColumn2 + end + item + Format = #21367#20010#25968#65306'#' + Kind = skCount + Column = cxGridDBColumn3 + end + item + Kind = skAverage + Column = vHJColumn11 + end + item + Kind = skAverage + Column = vHJColumn3 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Content = cxStyle3 + Styles.Footer = cxStyle3 + Styles.Header = cxStyle1 + object cxGridDBColumn3: TcxGridDBColumn + Caption = #22823#21367#26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 179 + end + object vHJColumn1: TcxGridDBColumn + Caption = #37325#37327'Kg' + DataBinding.FieldName = 'MJMaoZ' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object vHJColumn2: TcxGridDBColumn + Caption = #38271#24230'm' + DataBinding.FieldName = 'MJLen' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object vHJColumn3: TcxGridDBColumn + Caption = #24133#23485'cm' + DataBinding.FieldName = 'MJFk' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object vHJColumn11: TcxGridDBColumn + Caption = #23454#38469#20811#37325 + DataBinding.FieldName = 'MJSJKZ' + HeaderAlignmentHorz = taCenter + Width = 75 + end + object vHJColumn4: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 166 + end + object vHJColumn9: TcxGridDBColumn + Caption = #20135#21697#20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Width = 98 + end + object vHJColumn10: TcxGridDBColumn + Caption = #21407#26009#37197#27604 + DataBinding.FieldName = 'YLPB' + HeaderAlignmentHorz = taCenter + Width = 117 + end + object vHJColumn5: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Width = 54 + end + object vHJColumn8: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Width = 59 + end + object vHJColumn6: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'SWFBKZ' + HeaderAlignmentHorz = taCenter + Width = 58 + end + object vHJColumn7: TcxGridDBColumn + Caption = #32593#23380#30446#25968 + DataBinding.FieldName = 'WKMS' + HeaderAlignmentHorz = taCenter + Width = 79 + end + end + object cxGridLevel4: TcxGridLevel + GridView = TvHJ + end + end + object HJMJID: TEdit + Left = 88 + Top = 81 + Width = 297 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnKeyPress = HJMJIDKeyPress + end + object Button7: TButton + Left = 140 + Top = 431 + Width = 145 + Height = 42 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Button7Click + end + object Button8: TButton + Left = 852 + Top = 431 + Width = 145 + Height = 42 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = Button8Click + end + end + object MovePanel1: TMovePanel + Left = 88 + Top = 487 + Width = 344 + Height = 202 + BevelInner = bvLowered + Color = clSkyBlue + TabOrder = 14 + Visible = False + object Label17: TLabel + Left = 30 + Top = 24 + Width = 84 + Height = 20 + Caption = #36215#22987#20301#32622 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 185 + Top = 69 + Width = 21 + Height = 20 + Caption = #21040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 301 + Top = 24 + Width = 11 + Height = 20 + Caption = 'M' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label20: TLabel + Left = 301 + Top = 104 + Width = 11 + Height = 20 + Caption = 'M' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label21: TLabel + Left = 31 + Top = 69 + Width = 77 + Height = 20 + Caption = 'Label21' + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentColor = False + ParentFont = False + end + object CDBeg: TEdit + Tag = 9999 + Left = 119 + Top = 16 + Width = 174 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnClick = XJLen1Click + end + object Button4: TButton + Left = 31 + Top = 147 + Width = 66 + Height = 38 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button4Click + end + object Button5: TButton + Left = 246 + Top = 147 + Width = 66 + Height = 38 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Button5Click + end + object CDEnd: TEdit + Tag = 9999 + Left = 119 + Top = 94 + Width = 174 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = XJLen1Click + end + end + object MovePanel3: TMovePanel + Left = 568 + Top = 104 + Width = 321 + Height = 177 + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 15 + Visible = False + object Label13: TLabel + Left = 88 + Top = 16 + Width = 132 + Height = 33 + Caption = #36755#20837#23494#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Button9: TButton + Left = 32 + Top = 112 + Width = 75 + Height = 49 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnClick = Button9Click + end + object Button10: TButton + Left = 200 + Top = 112 + Width = 75 + Height = 49 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button10Click + end + object Password: TEdit + Tag = 99999 + Left = 32 + Top = 56 + Width = 241 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + PasswordChar = '*' + TabOrder = 2 + OnClick = XJLen1Click + end + end + object cxStyleRepository5: TcxStyleRepository + Left = 936 + Top = 65532 + object cxStyle6: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + end + object cxStyleRepository1: TcxStyleRepository + Left = 1232 + Top = 124 + object cxStyle1: TcxStyle + AssignedValues = [svColor, svFont] + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle2: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Pitch = fpFixed + Font.Style = [fsBold] + TextColor = clDefault + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 598 + Top = 75 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 686 + Top = 74 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 638 + Top = 74 + end + object DataSource1: TDataSource + DataSet = Cds_Main + Left = 744 + Top = 76 + end + object Cds_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 800 + Top = 76 + end + object DataSource3: TDataSource + DataSet = CDS_XJID + Left = 1000 + Top = 670 + end + object CDS_XJID: TClientDataSet + Aggregates = <> + Params = <> + Left = 1032 + Top = 670 + end + object DataSource2: TDataSource + DataSet = CDS_XJCD + Left = 752 + Top = 670 + end + object CDS_XJCD: TClientDataSet + Aggregates = <> + Params = <> + Left = 792 + Top = 670 + end + object cxStyleRepository2: TcxStyleRepository + object cxStyle3: TcxStyle + AssignedValues = [svFont] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -15 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 136 + Top = 120 + end + object RM2: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 104 + Top = 120 + ReportData = {} + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 168 + Top = 120 + end + object DSHJ: TDataSource + DataSet = CDS_HJ + Left = 352 + Top = 550 + end + object CDS_HJ: TClientDataSet + Aggregates = <> + Params = <> + Left = 384 + Top = 550 + end +end diff --git a/艾登贸易管理/U_ZJManageNew.pas b/艾登贸易管理/U_ZJManageNew.pas new file mode 100644 index 0000000..01bca90 --- /dev/null +++ b/艾登贸易管理/U_ZJManageNew.pas @@ -0,0 +1,1525 @@ +unit U_ZJManageNew; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, Buttons, ExtCtrls, cxStyles, cxCustomData, cxGraphics, + cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, cxTextEdit, + cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, + cxClasses, cxControls, cxGridCustomView, cxGrid, MovePanel, ADODB, + DBClient, ComCtrls, RM_Common, RM_Class, RM_GridReport, RM_System, + RM_Dataset; + +type + TfrmZJManageNew = class(TForm) + MJID: TEdit; + Label1: TLabel; + Label2: TLabel; + Label3: TLabel; + Label4: TLabel; + Label5: TLabel; + Label6: TLabel; + ScrollBox1: TScrollBox; + SpeedButton13: TSpeedButton; + SpeedButton14: TSpeedButton; + SpeedButton15: TSpeedButton; + SpeedButton16: TSpeedButton; + SpeedButton17: TSpeedButton; + SpeedButton18: TSpeedButton; + SpeedButton19: TSpeedButton; + SpeedButton20: TSpeedButton; + SpeedButton21: TSpeedButton; + SpeedButton22: TSpeedButton; + SpeedButton23: TSpeedButton; + SpeedButton24: TSpeedButton; + SpeedButton25: TSpeedButton; + SpeedButton26: TSpeedButton; + SpeedButton27: TSpeedButton; + SpeedButton28: TSpeedButton; + Button1: TButton; + Button3: TButton; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + tv2CDType: TcxGridDBColumn; + tv2CDWZ: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + Tv2CDQty: TcxGridDBColumn; + Tv2CDReason: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + cxStyleRepository5: TcxStyleRepository; + cxStyle6: TcxStyle; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + Button6: TButton; + Panel6: TPanel; + Panel1: TPanel; + SmalMF1: TEdit; + SmalMF2: TEdit; + SmalMF3: TEdit; + SmalMF4: TEdit; + SmalMF5: TEdit; + SmalMF6: TEdit; + SmalMF7: TEdit; + SmalMF8: TEdit; + SmalMF9: TEdit; + SmalMF10: TEdit; + SmalMF11: TEdit; + SmalMF12: TEdit; + Panel2: TPanel; + XJLen1: TEdit; + XJLen2: TEdit; + XJLen3: TEdit; + XJLen4: TEdit; + XJLen5: TEdit; + XJLen6: TEdit; + XJLen7: TEdit; + XJLen8: TEdit; + XJLen9: TEdit; + XJLen10: TEdit; + XJLen11: TEdit; + XJLen12: TEdit; + Panel3: TPanel; + XJMaoZ1: TEdit; + XJMaoZ2: TEdit; + XJMaoZ3: TEdit; + XJMaoZ4: TEdit; + XJMaoZ5: TEdit; + XJMaoZ6: TEdit; + XJMaoZ7: TEdit; + XJMaoZ8: TEdit; + XJMaoZ9: TEdit; + XJMaoZ10: TEdit; + XJMaoZ11: TEdit; + XJMaoZ12: TEdit; + Panel4: TPanel; + Sel1: TEdit; + Sel2: TEdit; + Sel3: TEdit; + Sel4: TEdit; + Sel5: TEdit; + Sel6: TEdit; + Sel7: TEdit; + Sel8: TEdit; + Sel9: TEdit; + Sel10: TEdit; + Sel11: TEdit; + Sel12: TEdit; + ADOQueryTemp: TADOQuery; + Panel5: TPanel; + SpeedButton1: TSpeedButton; + SpeedButton2: TSpeedButton; + SpeedButton3: TSpeedButton; + SpeedButton4: TSpeedButton; + SpeedButton5: TSpeedButton; + SpeedButton6: TSpeedButton; + SpeedButton7: TSpeedButton; + SpeedButton8: TSpeedButton; + SpeedButton9: TSpeedButton; + SpeedButton10: TSpeedButton; + SpeedButton11: TSpeedButton; + SpeedButton12: TSpeedButton; + SpeedButton49: TSpeedButton; + cxGrid4: TcxGrid; + TvSel: TcxGridDBTableView; + vSelColumn1: TcxGridDBColumn; + vSelColumn4: TcxGridDBColumn; + vSelColumn6: TcxGridDBColumn; + vSelColumn5: TcxGridDBColumn; + cxGridDBColumn7: TcxGridDBColumn; + vSelColumn7: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + vSelColumn2: TcxGridDBColumn; + cxGridLevel3: TcxGridLevel; + vSelColumn3: TcxGridDBColumn; + vSelColumn8: TcxGridDBColumn; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + DataSource1: TDataSource; + Cds_Main: TClientDataSet; + Button2: TButton; + MJCDHZ: TRichEdit; + DataSource3: TDataSource; + CDS_XJID: TClientDataSet; + DataSource2: TDataSource; + CDS_XJCD: TClientDataSet; + v2Column3: TcxGridDBColumn; + v3Column1: TcxGridDBColumn; + cxStyleRepository2: TcxStyleRepository; + cxStyle3: TcxStyle; + SmalNote: TRichEdit; + Label7: TLabel; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + ADOQueryPrint: TADOQuery; + MovePanel2: TMovePanel; + Label8: TLabel; + cxGrid1: TcxGrid; + TvHJ: TcxGridDBTableView; + cxGridDBColumn3: TcxGridDBColumn; + cxGridLevel4: TcxGridLevel; + DSHJ: TDataSource; + CDS_HJ: TClientDataSet; + vHJColumn1: TcxGridDBColumn; + vHJColumn2: TcxGridDBColumn; + vHJColumn3: TcxGridDBColumn; + Label9: TLabel; + HJMJID: TEdit; + Button7: TButton; + Button8: TButton; + vHJColumn4: TcxGridDBColumn; + vHJColumn5: TcxGridDBColumn; + vHJColumn6: TcxGridDBColumn; + vHJColumn7: TcxGridDBColumn; + vHJColumn8: TcxGridDBColumn; + vHJColumn9: TcxGridDBColumn; + vHJColumn10: TcxGridDBColumn; + vHJColumn11: TcxGridDBColumn; + Panel7: TPanel; + XJFree1: TEdit; + XJFree2: TEdit; + XJFree3: TEdit; + XJFree4: TEdit; + XJFree5: TEdit; + XJFree6: TEdit; + XJFree7: TEdit; + XJFree8: TEdit; + XJFree9: TEdit; + XJFree10: TEdit; + XJFree11: TEdit; + XJFree12: TEdit; + MovePanel1: TMovePanel; + Label17: TLabel; + Label18: TLabel; + Label19: TLabel; + Label20: TLabel; + Label21: TLabel; + CDBeg: TEdit; + Button4: TButton; + Button5: TButton; + CDEnd: TEdit; + Panel8: TPanel; + XjJt1: TEdit; + XjJt2: TEdit; + XjJt3: TEdit; + XjJt4: TEdit; + XjJt5: TEdit; + XjJt6: TEdit; + XjJt7: TEdit; + XjJt8: TEdit; + XjJt9: TEdit; + XjJt10: TEdit; + XjJt11: TEdit; + XjJt12: TEdit; + Label10: TLabel; + Label11: TLabel; + Label12: TLabel; + MovePanel3: TMovePanel; + Button9: TButton; + Button10: TButton; + Password: TEdit; + Label13: TLabel; + procedure Sel1Click(Sender: TObject); + procedure Edit64Click(Sender: TObject); + procedure SpeedButton1Click(Sender: TObject); + procedure SpeedButton12Click(Sender: TObject); + procedure SpeedButton49Click(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure XJLen1Click(Sender: TObject); + procedure MJIDKeyPress(Sender: TObject; var Key: Char); + procedure Button2Click(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure SpeedButton13Click(Sender: TObject); + procedure Button5Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button3Click(Sender: TObject); + procedure Button6Click(Sender: TObject); + procedure Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button1Click(Sender: TObject); + procedure Button8Click(Sender: TObject); + procedure Button7Click(Sender: TObject); + procedure HJMJIDKeyPress(Sender: TObject; var Key: Char); + procedure TvHJCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button9Click(Sender: TObject); + procedure Button10Click(Sender: TObject); + procedure PasswordClick(Sender: TObject); + private + { Private declarations } + FCDName:string; + procedure ClearSpenndHit(); + procedure VisbleControl(Panel55:TWinControl;XS:Boolean;SXCount:Integer); + function ChkEditNULL(panel55:TWinControl):Boolean; + procedure InitJP(); + procedure InitGridCD(); + procedure InitGridCDID(); + procedure ClearControl(Panel55:TWinControl;ConValue:String;SXCount:Integer); + procedure PrintData(FXJID:string;CDFlag:String); + public + { Public declarations } + end; + +var + frmZJManageNew: TfrmZJManageNew; + +implementation +uses +U_DataLink,U_Fun,U_ZDYHelp,U_iniParam,AES,ElAES,U_LabelPrint; + +{$R *.dfm} + +procedure TfrmZJManageNew.Sel1Click(Sender: TObject); +begin + if Trim(TcxTextEdit(Sender).Text)='' then + begin + TcxTextEdit(Sender).Text:=''; + end else + begin + TcxTextEdit(Sender).Text:=''; + end; +end; + +procedure TfrmZJManageNew.Edit64Click(Sender: TObject); +var + i:Integer; +begin + Panel5.Visible:=True; + with Panel5 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim(TEdit(Sender).Name); + end; + end; + end; +end; +procedure TfrmZJManageNew.ClearSpenndHit(); +var + i:Integer; +begin + with Panel5 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=''; + end; + end; + end; +end; +procedure TfrmZJManageNew.VisbleControl(Panel55:TWinControl;XS:Boolean;SXCount:Integer); +var + i:Integer; +begin + with Panel55 do + begin + for i:=0 to SXCount-1 do + begin + Controls[i].Visible:=XS; + end; + end; +end; +procedure TfrmZJManageNew.ClearControl(Panel55:TWinControl;ConValue:String;SXCount:Integer); +var + i:Integer; +begin + with Panel55 do + begin + for i:=0 to SXCount-1 do + begin + TEdit(Controls[i]).Text:=ConValue; + end; + end; +end; + +procedure TfrmZJManageNew.SpeedButton1Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TSpeedButton(Sender).Hint); + if Trim(fsj)='' then Exit; + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=fsj+Trim(TSpeedButton(Sender).Caption); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; + +procedure TfrmZJManageNew.SpeedButton12Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + if Trim(fsj)='' then Exit; + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=Copy(fsj,1,Length(fsj)-1); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; + +procedure TfrmZJManageNew.SpeedButton49Click(Sender: TObject); +begin + Panel5.Visible:=false; +end; + +function TfrmZJManageNew.ChkEditNULL(panel55:TWinControl):Boolean; +var + i:Integer; +begin + Result:=False; + with panel55 do + begin + for i:=0 to panel55.ControlCount-1 do + begin + if Controls[i].Visible=True then + begin + if Trim(TEdit(Controls[i]).Text)='' then + begin + Result:=False; + Break; + end else + begin + Result:=True; + end; + end; + + end; + end; + +end; + +procedure TfrmZJManageNew.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZJManageNew.FormDestroy(Sender: TObject); +begin + frmZJManageNew:=nil; +end; + +procedure TfrmZJManageNew.XJLen1Click(Sender: TObject); +var + i:Integer; +begin + if CDS_XJID.IsEmpty=False then + begin + if CDS_XJID.Locate('XJInt',TEdit(Sender).tag,[])=True then + begin + TEdit(Sender).Text:=Trim(CDS_XJID.fieldbyname(Copy(Trim(TEdit(Sender).Name),1,Length(Trim(TEdit(Sender).Name))-1)).AsString); + Panel5.Visible:=False; + Exit; + end; + end; + Panel5.Visible:=True; + with Panel5 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim(TEdit(Sender).Name); + end; + end; + end; + // Panel5.Left:=Edit14.Left; + //Panel5.top:=Edit14.top+Edit14.Height; +end; + +procedure TfrmZJManageNew.MJIDKeyPress(Sender: TObject; var Key: Char); +var + FCount,i:Integer; + FXJXH:String; +begin + if Key=#13 then + begin + MJID.SelectAll; + ClearControl(Panel1,'',Panel1.ControlCount); + ClearControl(Panel2,'',Panel2.ControlCount); + ClearControl(Panel3,'',Panel3.ControlCount); + Label12.Visible:=True; + Label12.Caption:=Trim(MJID.Text); + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + sql.add('select MJCDHZ=dbo.F_Get_WFBOrder_SubStr(A.MJID,''MJCDHZ''), '); + SQL.Add('A.*,B.*,C.OrderNo from WFB_MJJY A inner join WFBOrder_Sub B on A.SubId=B.SubId'); + sql.Add('inner join WFBOrder_Main C on A.MainId=C.MainId'); + sql.Add('where A.MJID='''+Trim(MJID.Text)+''''); + sql.Add(' and A.Valie=''Y'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,Cds_Main); + SInitCDSData20(ADOQueryMain,Cds_Main); + if Cds_Main.IsEmpty then + begin + MJCDHZ.Text:=''; + InitGridCDID(); + InitGridCD(); + Label12.Visible:=False; + MJID.Text:=''; + Application.MessageBox('','ʾ',0); + Exit; + end; + MJCDHZ.Visible:=True; + MJCDHZ.Text:=Trim(Cds_Main.fieldbyname('MJCDHZ').AsString); + SmalNote.Text:=Trim(Cds_Main.fieldbyname('SmalNote').AsString); + if Cds_Main.FieldByName('SmalCount').Value<1 then + begin + Application.MessageBox('иС1','ʾ',0); + Exit; + end else + begin + FCount:=Cds_Main.FieldByName('SmalCount').Value; + VisbleControl(Panel1,False,Panel1.ControlCount); + VisbleControl(Panel2,False,Panel2.ControlCount); + VisbleControl(Panel3,False,Panel3.ControlCount); + VisbleControl(Panel4,False,Panel4.ControlCount); + VisbleControl(Panel1,True,FCount); + VisbleControl(Panel2,True,FCount); + VisbleControl(Panel3,True,FCount); + VisbleControl(Panel4,True,FCount); + VisbleControl(Panel7,True,FCount); + VisbleControl(Panel8,True,FCount); + SCSHDataCDS(Cds_Main,Panel1,0); + end; + InitGridCDID(); + InitGridCD(); + finally + ADOQueryMain.EnableControls; + end; + MJID.Text:=''; + {if CDS_XJID.IsEmpty=False then + begin + with CDS_XJID do + begin + First; + while not Eof do + begin + + FXJXH:=Trim(CDS_XJID.fieldbyname('XJInt').AsString); + (FindComponent('XJLen'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJLen').AsString); + (FindComponent('XJMaoZ'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJMaoZ').AsString); + (FindComponent('XJFree'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJFree').AsString); + (FindComponent('XJJt'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJJt').AsString); + Next; + end; + end; + end; } + end; +end; + +procedure TfrmZJManageNew.Button2Click(Sender: TObject); +begin + WriteCxGrid('ʾϢ',TvSel,'޷IJ'); + Close; +end; + +procedure TfrmZJManageNew.FormShow(Sender: TObject); +begin + ReadCxGrid('ʾϢ',TvSel,'޷IJ'); + InitJP(); +end; + +procedure TfrmZJManageNew.InitJP(); +var + AA:array[0..100] of string; + i,j:Integer; +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select ZDYName from KH_Zdy where Type=''WFBCDZJ'' order by ZDYNO '); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + Application.MessageBox('ûжСõ㣡','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + First; + i:=0; + while not Eof do + begin + AA[i]:=Trim(fieldbyname('ZDYName').AsString); + i:=i+1; + Next; + end; + end; + i:=i-1; + if i>17 then + begin + i:=29; + end; + for j:=0 to i do + begin + with ScrollBox1 do + begin + TSpeedButton(Controls[j]).Visible:=True; + TSpeedButton(Controls[j]).Hint:=AA[j]; + if Length(AA[j])>4 then + begin + TSpeedButton(Controls[j]).Caption:=Copy(Trim(AA[j]),1,4)+#13+Copy(Trim(AA[j]),5,Length(AA[j])-4); + end else + TSpeedButton(Controls[j]).Caption:=AA[j]; + end; + end; +end; + +procedure TfrmZJManageNew.Button4Click(Sender: TObject); +var + i:Integer; +begin + if Trim(CDBeg.Text)='' then + begin + Application.MessageBox('λòΪգ','ʾ',0); + exit; + end; + with Panel4 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if TEdit(Controls[i]).Text='' then + begin + with CDS_XJCD do + begin + Append; + FieldByName('cdname').Value:=Trim(FCDName); + FieldByName('CDbeg').Value:=Trim(CDBeg.Text); + FieldByName('CDEnd').Value:=Trim(CDEnd.Text); + if Trim(CDEnd.Text)<>'' then + begin + FieldByName('CDQty').Value:=StrToFloat(CDEnd.Text)-StrToFloat(CDBeg.Text); + end else + begin + FieldByName('CDQty').Value:=0; + end; + FieldByName('XJInt').Value:=i+1; + Post; + end; + end; + end; + end; + CDBeg.Text:=''; + CDEnd.Text:=''; + MovePanel1.Visible:=False; +end; + +procedure TfrmZJManageNew.SpeedButton13Click(Sender: TObject); +var + i,j:Integer; +begin + if Cds_Main.IsEmpty then Exit; + j:=0; + with Panel4 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if Controls[i].Visible=True then + begin + if TEdit(Controls[i]).Text='' then + begin + j:=9; + end; + end; + end; + end; + if j=0 then + begin + Application.MessageBox('ûѡС','ʾ',0); + Exit; + end; + FCDName:=Trim(TSpeedButton(Sender).Hint); + MovePanel1.Visible:=True; + Label21.Caption:=Trim(FCDName); + CDBeg.SetFocus; + + Panel5.Visible:=True; + with Panel5 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim('CDBeg'); + end; + end; + end; +end; +procedure TfrmZJManageNew.InitGridCD(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + if Trim(CDS_XJID.fieldbyname('XJID').AsString)<>'' then + begin + sql.Add('select A.*,B.XJInt from WFB_XJJY_CD A inner join WFB_XJJY B on A.XJID=B.XJID'); + sql.Add(' where B.MJID='''+Trim(MJID.Text)+''''); + end + else + sql.Add('select A.*,B.XJInt from WFB_XJJY_CD A inner join WFB_XJJY B on A.XJID=B.XJID where 1<>1'); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_XJCD); + SInitCDSData20(ADOQueryMain,CDS_XJCD); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmZJManageNew.InitGridCDID(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_XJJY where MJID='''+Trim(MJID.Text)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_XJID); + SInitCDSData20(ADOQueryMain,CDS_XJID); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmZJManageNew.Button5Click(Sender: TObject); +begin + MovePanel1.Visible:=False; +end; + +procedure TfrmZJManageNew.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if Trim(CDS_XJCD.fieldbyname('XJID').AsString)<>'' then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + CDS_XJCD.Delete; +end; + +procedure TfrmZJManageNew.Button3Click(Sender: TObject); +var + i,j,FXJInt,CRID:Integer; + FXJSJKZ:Double; + maxno,maxnocd,MaxCkNo,MaxCkSubNo,XJBanZu,FFXJLen,FFXJMaoZ,FFXJFk,FFXJFree,FFXJJt:String; +begin + if Cds_Main.IsEmpty then Exit; + with Panel2 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if TEdit(Controls[i]).Text='' then + begin + Application.MessageBox('δȫ¼룬ܴӡ','ʾ',0); + Exit; + end; + end; + end; + with Panel3 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if TEdit(Controls[i]).Text='' then + begin + Application.MessageBox('δȫ¼룬ܴӡ','ʾ',0); + Exit; + end; + end; + end; + j:=0; + with Panel4 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if Controls[i].Visible=True then + begin + if TEdit(Controls[i]).Text='' then + begin + if j=0 then + begin + j:=9; + FXJInt:=i+1; + end + else + j:=j+1; + end; + end; + end; + end; + if j=0 then + begin + Application.MessageBox('ûѡС','ʾ',0); + Exit; + end else + if j>9 then + begin + Application.MessageBox('ѡС','ʾ',0); + Exit; + end; + if Trim(TEdit(FindComponent('XJLen'+Trim(IntToStr(FXJInt)))).Text)='' then + begin + Application.MessageBox('ȲΪգ','ʾ',0); + Exit; + end else + begin + FFXJLen:=Trim(TEdit(FindComponent('XJLen'+Trim(IntToStr(FXJInt)))).Text); + end; + if Trim(TEdit(FindComponent('XJMaoZ'+Trim(IntToStr(FXJInt)))).Text)='' then + begin + Application.MessageBox('ëزΪգ','ʾ',0); + Exit; + end else + begin + FFXJMaoZ:=Trim(TEdit(FindComponent('XJMaoZ'+Trim(IntToStr(FXJInt)))).Text); + end; + if Trim(TEdit(FindComponent('SmalMF'+Trim(IntToStr(FXJInt)))).Text)='' then + begin + Application.MessageBox('ëزΪգ','ʾ',0); + Exit; + end else + begin + FFXJFk:=Trim(TEdit(FindComponent('SmalMF'+Trim(IntToStr(FXJInt)))).Text); + end; + if Trim(TEdit(FindComponent('XJFree'+Trim(IntToStr(FXJInt)))).Text)='' then + begin + FFXJFree:='0'; + end else + begin + FFXJFree:=Trim(TEdit(FindComponent('XJFree'+Trim(IntToStr(FXJInt)))).Text); + end; + if Trim(TEdit(FindComponent('XJJt'+Trim(IntToStr(FXJInt)))).Text)='' then + begin + FFXJJt:='0'; + end else + begin + FFXJJt:=Trim(TEdit(FindComponent('XJJt'+Trim(IntToStr(FXJInt)))).Text); + end; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_XJJY where MJID='''+Trim(Cds_Main.fieldbyname('MJID').AsString)+''''); + SQL.Add(' and XJInt='+Inttostr(FXJInt)); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('Ѵ룬볢´ӡ','',0); + Exit; + end; + FXJSJKZ:=StrToFloat(FFXJMaoZ)/(StrToFloat(FFXJLen)*StrToFloat(FFXJFk)/100)*1000; + if( (FXJSJKZ-Cds_Main.FieldByName('MJSJKZ').Value)/Cds_Main.FieldByName('MJSJKZ').Value )<-0.3 then + begin + Application.MessageBox('ݣ','ʾ',0); + Exit; + end; + if( (FXJSJKZ-Cds_Main.FieldByName('MJSJKZ').Value)/Cds_Main.FieldByName('MJSJKZ').Value )>0.3 then + begin + Application.MessageBox('ݣ','ʾ',0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + //////////////////////////////////////////////////////////////С + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from SY_User where UserId='''+Trim(DCode)+''''); + Open; + end; + XJBanZu:=Trim(ADOQueryTemp.fieldbyname('BanZu').AsString); + if GetLSNo(ADOQueryCmd,maxno,Trim(XJFlag),'WFB_XJJY',4,1)=false then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡС쳣','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.add('select * from WFB_XJJY where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MJID').Value:=Trim(Cds_Main.fieldbyname('MJID').AsString); + FieldByName('XJID').Value:=Trim(maxno); + FieldByName('XJInt').Value:=FXJInt; + FieldByName('XJLen').Value:=StrToFloat(FFXJLen); + FieldByName('XJMaoZ').Value:=StrToFloat(FFXJMaoZ); + FieldByName('XJFK').Value:=StrToFloat(FFXJFk); + FieldByName('XJFree').Value:=StrToFloat(FFXJFree); + FieldByName('XJJt').Value:=StrToFloat(FFXJJt); + FieldByName('XJBanZu').Value:=Trim(XJBanZu); + FieldByName('JTTYpe').Value:=Trim(XJFlag); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('XJSJKZ').Value:=StrToFloat(FFXJMaoZ)/(StrToFloat(FFXJLen)*StrToFloat(FFXJFk)/100)*1000; + //FieldByName('') + Post; + end; + with CDS_XJID do + begin + Append; + FieldByName('XJID').Value:=Trim(maxno); + FieldByName('XJInt').Value:=FXJInt; + FieldByName('XJLen').Value:=StrToFloat(FFXJLen); + FieldByName('XJMaoZ').Value:=StrToFloat(FFXJMaoZ); + FieldByName('XJFK').Value:=StrToFloat(FFXJFk); + FieldByName('XJFree').Value:=StrToFloat(FFXJFree); + FieldByName('XJJt').Value:=StrToFloat(FFXJJt); + Post; + end; + //////////////////////////////////////////////////////////////С + //////////////////////////////////////////////////////////////Сõ + with CDS_XJCD do + begin + First; + while not Eof do + begin + if CDS_XJCD.FieldByName('XJInt').Value=FXJInt then + begin + if GetLSNo(ADOQueryCmd,maxnocd,'XC','WFB_XJJY_CD',5,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡСõʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from WFB_XJJY_CD where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('XJID').Value:=Trim(maxno); + FieldByName('XCID').Value:=Trim(maxnocd); + FieldByName('CDName').Value:=CDS_XJCD.fieldbyname('CDName').Value; + FieldByName('CDBeg').Value:=CDS_XJCD.fieldbyname('CDBeg').Value; + FieldByName('CDEnd').Value:=CDS_XJCD.fieldbyname('CDEnd').Value; + FieldByName('CDQty').Value:=CDS_XJCD.fieldbyname('CDQty').Value; + Post; + end; + end; + Next; + end; + end; + //////////////////////////////////////////////////////////////Сõ + //////////////////////////////////////////////////////////////浽Ʒֿ//////////////////////////////////////////////// + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.add('Update CK_BanCP_CRID Set CRID=CRID+1'); + sql.Add('select * from CK_BanCP_CRID'); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').Value; + if GetLSNo(ADOQueryTemp,MaxCkNo,'JR','CK_BanCP_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡƷֿʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(Cds_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(Cds_Main.fieldbyname('SubId').AsString); + FieldByName('MJID').Value:=Trim(Cds_Main.fieldbyname('MJId').AsString); + FieldByName('XJID').Value:=Trim(maxno); + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('CRTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + FieldByName('JTType').Value:=Trim(XJFlag); + FieldByName('CRID').Value:=CRID; + FieldByName('KGQty').Value:=StrToFloat(FFXJMaoZ); + FieldByName('MQty').Value:=StrToFloat(FFXJLen); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=CRID; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('XJID').Value:=Trim(maxno); + FieldByName('KCKGQty').Value:=StrToFloat(FFXJMaoZ); + FieldByName('KCMQty').Value:=StrToFloat(FFXJLen); + Post; + end; + //////////////////////////////////////////////////////////////浽Ʒֿ//////////////////////////////////////////////// + ADOQueryCmd.Connection.CommitTrans; + PrintData(Trim(maxno),''); + //Application.MessageBox('ɹ','ʾ',0); + //MJID.SelectAll; + Exit; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; +procedure TfrmZJManageNew.PrintData(FXJID:string;CDFlag:String); +var + fPrintFile,LabInt,LabName:String; +begin + if Trim(FXJID)='' then exit; + DataLink_WFBProducttion.ADOLink.Connected:=False; + DataLink_WFBProducttion.ADOLink.Connected:=True; + if Trim(CDFlag)<>'' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_XJJY Set PrtAgnFlag=1,PrtAgnDate=getdate(),PrtAgnPerson='''+Trim(DName)+''''); + sql.Add(' where XJID='''+Trim(FXJID)+''''); + ExecSQL; + end; + end; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add(' select C.LbXInt,C.LbXName from WFB_XJJY A'); + sql.Add(' inner join WFB_MJJY B on A.MJID=B.MJID'); + sql.Add(' inner join WFBOrder_Main C on B.MainId=C.MainId'); + sql.Add(' where A.XJID='''+Trim(FXJID)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + LabInt:=ADOQueryTemp.fieldbyname('LbXInt').AsString; + LabName:=ADOQueryTemp.fieldbyname('LbXName').AsString; + end ; + if Trim(LabName)='' then + begin + Application.MessageBox('Сǩδã','ʾ',0); + Exit; + end; + { try + frmLabelPrint:=TfrmLabelPrint.Create(Application); + with frmLabelPrint do + begin + fLabelId:=LabInt; + FFCDFlag:=Trim(CDFlag); + fKeyNo:=Trim(FXJID); + fIsPreviewPrint:=True; + frmLabelPrint.Button1.Click; + // if ShowModal=1 then + //begin + + // end; + end; + finally + frmLabelPrint.Free; + end; } + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select RTrim(AA.XJID) XJID,RTrim(Cast(AA.XJSJKZ as varchar(20))) XJSJKZ,RTrim(cast(Cast(AA.XJFK*10 as int) as varchar(20))) XJFK,RTrim(B.OrderNo)+'''+Trim(CDFlag)+''' OrderNo'); + sql.Add(',Rtrim(C.SWFBColor) SWFBColor, YLPB=dbo.F_Get_WFBOrder_SubStr(C.SubId,''YLPBSZ'')'); + SQL.Add(',EngColor=(select Top 1 note from KH_Zdy where ZdyName=C.SWFBColor)'); + sql.Add(',Rtrim(Cast(AA.XJlen as varchar(20))) XJlen,Rtrim(Cast(AA.XJMaoZ as varchar(20))) XJMaoZ'); + sql.Add(',Rtrim(Cast(AA.XJFree as varchar(20))) XJFree,Rtrim(Cast( Cast(AA.XJlen*AA.XJFK/100 as int) as varchar(20))) XJPFM'); + sql.Add(',Rtrim(Cast(Cast(C.SWFBKZ as int) as varchar(20))) SWFBKZ'); + sql.Add(',Rtrim(Cast(Cast(AA.XJJt as int) as varchar(20))) XJJt'); + sql.Add(',RTrim(B.LbEngName) LbEngName'); + sql.Add(',RTrim(C.SWFBCodeName) SWFBCodeName from WFB_XJJY AA '); + sql.add(' inner join WFB_MJJY A on AA.MJID=A.MJID') ; + sql.add(' inner join WFBOrder_Main B on A.MainId=B.MainId'); + sql.Add(' inner join WFBOrder_Sub C on A.SubId=C.SubId'); + sql.Add(' where AA.XJID='''+Trim(FXJID)+''''); + Open; + end; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\'+Trim(LabName)+'.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + //RM2.ShowReport; + Rm2.PrintReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\'+Trim(LabName)+'.rmf'),'ʾ',0); + end; + DataLink_WFBProducttion.ADOLink.Connected:=False; +end; + +procedure TfrmZJManageNew.Button6Click(Sender: TObject); +var + i,j,FXJInt:Integer; +begin + if Cds_Main.IsEmpty then Exit; + j:=0; + with Panel4 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if Controls[i].Visible=True then + begin + if TEdit(Controls[i]).Text='' then + begin + if j=0 then + begin + j:=9; + FXJInt:=i+1; + end + else + j:=j+1; + end; + end; + end; + end; + if j=0 then + begin + Application.MessageBox('ûѡС','ʾ',0); + Exit; + end else + if j>9 then + begin + Application.MessageBox('ѡС','ʾ',0); + Exit; + end; + + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_XJJY where MJID='''+Trim(Cds_Main.fieldbyname('MJId').AsString)+''''); + SQL.Add(' and XJInt='+Inttostr(FXJInt)); + Open; + end; + if ADOQueryTemp.IsEmpty=True then + begin + Application.MessageBox('δ룬´ӡ','ʾ',0); + Exit; + end; + MovePanel3.Visible:=True; + // PrintData(Trim(ADOQueryTemp.fieldbyname('XJID').AsString),'ش'); + //MJID.SelectAll; +end; + +procedure TfrmZJManageNew.Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + FXJXH:String; +begin + FXJXH:=Trim(CDS_XJID.fieldbyname('XJInt').AsString); + (FindComponent('XJLen'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJLen').AsString); + (FindComponent('XJMaoZ'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJMaoZ').AsString); + (FindComponent('XJFree'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJFree').AsString); + (FindComponent('XJJt'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJJt').AsString); +end; + +procedure TfrmZJManageNew.Button1Click(Sender: TObject); +begin + MovePanel2.Visible:=True; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,B.OrderNo,C.SWFBCode,C.SWFBCodeName,C.SWFBColor,C.WKMS,C.SWFBHW,C.SubId,C.MainId,C.SWFBKZ '); + sql.Add(',YLPB=dbo.F_Get_WFBOrder_SubStr(C.SubId,''YLPB'')'); + sql.add('from WFB_MJJY A '); + Sql.add(' inner join WFBOrder_Main B on A.MainId=B.MainId'); + Sql.add(' inner join WFBOrder_Sub C on A.SubId=C.SubId'); + sql.add('where 1<>1'); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_HJ); + SInitCDSData20(ADOQueryTemp,CDS_HJ); +end; + +procedure TfrmZJManageNew.Button8Click(Sender: TObject); +begin + MovePanel2.Visible:=False; +end; + +procedure TfrmZJManageNew.Button7Click(Sender: TObject); +var + maxno,fPrintFile,maxnosub:String; + i:Double; +begin + if Application.MessageBox('ȷҪϾ𣿺Ͼݽ޸ģ','ʾ',32+4)<>IDYES then Exit; + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxno,'','WFB_MJJY',2,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_MJJY where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(CDS_HJ.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(CDS_HJ.fieldbyname('SubId').AsString); + FieldByName('MJId').Value:=Trim(maxno); + FieldByName('MJMaoZ').Value:=TvHJ.DataController.Summary.FooterSummaryValues[1]; + FieldByName('MJLen').Value:=TvHJ.DataController.Summary.FooterSummaryValues[2]; + FieldByName('MJFK').Value:=TvHJ.DataController.Summary.FooterSummaryValues[5]; + FieldByName('MJSJKZ').Value:=TvHJ.DataController.Summary.FooterSummaryValues[4]; + FieldByName('MJType').Value:='Ͼ'; + FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('Filler').Value:=Trim(DName); + Post; + end; + i:=0; + with CDS_HJ do + begin + First; + while not Eof do + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set HJMJID='''+Trim(maxno)+''''); + SQL.Add(',MJType=''Ͼ'',Valie=''N'' '); + SQL.Add(' where MJID='''+Trim(CDS_HJ.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_MJJY_CD where MJID='''+Trim(CDS_HJ.fieldbyname('MJID').AsString)+''''); + Open; + end; + with ADOQueryTemp do + begin + First; + while not Eof do + begin + if GetLSNo(ADOQueryCmd,maxnosub,'','WFB_MJJY_CD',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡСʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_MJJY_CD where 1<>1'); + open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MJID').Value:=Trim(maxno); + FieldByName('MCID').Value:=Trim(maxnosub); + FieldByName('CDBeg').Value:=ADOQueryTemp.fieldbyname('CDBeg').Value+i; + FieldByName('CDEnd').Value:=ADOQueryTemp.fieldbyname('CDEnd').Value+i; + FieldByName('CDQty').Value:=ADOQueryTemp.fieldbyname('CDQty').Value; + FieldByName('CDName').Value:=ADOQueryTemp.fieldbyname('CDName').Value; + Post; + end; + Next; + end; + end; + i:=i+CDS_HJ.FieldByName('MJLen').Value; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add(' select RTrim(A.MJID) MJID,RTrim(Cast(A.MJSJKZ As varchar(20))) MJSJKZ,RTrim(Cast(A.MJFK as varchar(20))) MJFK,RTrim(B.OrderNo) OrderNo,'); + sql.Add(' RTrim(Cast(A.MJMaoZ As varchar(20))) MJMaoZ,RTrim(Cast(A.MJLen As varchar(20))) MJLen,'); + sql.Add(' Rtrim(C.SWFBColor) SWFBColor,Rtrim(Cast(C.SWFBKZ as varchar(20))) SWFBKZ, YLPB=dbo.F_Get_WFBOrder_SubStr(C.SubId,''YLPBSZ'')'); + sql.Add(',RTrim(C.SWFBCodeName) SWFBCodeName from WFB_MJJY A inner join WFBOrder_Main B on A.MainId=B.MainId'); + sql.Add(' inner join WFBOrder_Sub C on A.SubId=C.SubId'); + sql.Add(' where A.MJID='''+Trim(maxno)+''''); + Open; + end; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ĸǩ.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + //RM2.ShowReport; + RM2.PrintReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ĸǩ.rmf'),'ʾ',0); + end; + Application.MessageBox('Ͼɹ','ʾ',0); + MovePanel2.Visible:=False; + Exit; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('Ͼ쳣','ʾ',0); + end; + +end; + +procedure TfrmZJManageNew.HJMJIDKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.* '); + sql.add('from WFB_MJJY A '); + sql.add('where A.MJID='''+Trim(HJMJID.Text)+''''); + sql.Add(' and valie=''Y'' '); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + HJMJID.Text:=''; + Application.MessageBox('','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.* '); + sql.add('from WFB_XJJY A '); + sql.add('where A.MJID='''+Trim(HJMJID.Text)+''''); + sql.Add(' and valie=''Y'' '); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + HJMJID.Text:=''; + Application.MessageBox('˴ѷУ','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,B.OrderNo,C.SWFBCode,C.SWFBCodeName,C.SWFBColor,C.WKMS,C.SWFBHW,C.SubId,C.MainId '); + sql.Add(',YLPB=dbo.F_Get_WFBOrder_SubStr(C.SubId,''YLPB''),C.SWFBKZ'); + sql.add('from WFB_MJJY A '); + Sql.add(' inner join WFBOrder_Main B on A.MainId=B.MainId'); + Sql.add(' inner join WFBOrder_Sub C on A.SubId=C.SubId'); + sql.add('where A.MJID='''+Trim(HJMJID.Text)+''''); + sql.Add(' and A.valie=''Y'' '); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + if CDS_HJ.Locate('MJID',Trim(ADOQueryTemp.fieldbyname('MJID').AsString),[])=True then + begin + HJMJID.Text:=''; + Application.MessageBox('Ѿɨٴɨ裡','ʾ',0); + Exit; + end; + if CDS_HJ.IsEmpty=False then + begin + if CDS_HJ.Locate('SubId',Trim(ADOQueryTemp.fieldbyname('SubId').AsString),[])=False then + begin + HJMJID.Text:=''; + Application.MessageBox('ͬܺϾ','ʾ',0); + Exit; + end; + {if CDS_HJ.Locate('YLPB',Trim(ADOQueryTemp.fieldbyname('YLPB').AsString),[])=False then + begin + Application.MessageBox('ԭȲͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('SWFBCode',Trim(ADOQueryTemp.fieldbyname('SWFBCode').AsString),[])=False then + begin + Application.MessageBox('ƷŲͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('SWFBColor',Trim(ADOQueryTemp.fieldbyname('SWFBColor').AsString),[])=False then + begin + Application.MessageBox('ɫͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('SWFBHW',Trim(ADOQueryTemp.fieldbyname('SWFBHW').AsString),[])=False then + begin + Application.MessageBox('ͲͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('WKMS',Trim(ADOQueryTemp.fieldbyname('WKMS').AsString),[])=False then + begin + Application.MessageBox('ĿͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('XJFK',Trim(ADOQueryTemp.fieldbyname('XJFK').AsString),[])=False then + begin + Application.MessageBox('ͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('SWFBKZ',Trim(ADOQueryTemp.fieldbyname('SWFBKZ').AsString),[])=False then + begin + Application.MessageBox('زͬܺϾ','ʾ',0); + Exit; + end; } + end; + with CDS_HJ do + begin + Append; + FieldByName('OrderNo').Value:=ADOQueryTemp.fieldbyname('OrderNo').Value; + FieldByName('SubId').Value:=ADOQueryTemp.fieldbyname('SubId').Value; + FieldByName('MainId').Value:=ADOQueryTemp.fieldbyname('MainId').Value; + FieldByName('YLPB').Value:=ADOQueryTemp.fieldbyname('YLPB').Value; + FieldByName('SWFBCode').Value:=ADOQueryTemp.fieldbyname('SWFBCode').Value; + FieldByName('SWFBCodeName').Value:=ADOQueryTemp.fieldbyname('SWFBCodeName').Value; + FieldByName('SWFBColor').Value:=ADOQueryTemp.fieldbyname('SWFBColor').Value; + FieldByName('WKMS').Value:=ADOQueryTemp.fieldbyname('WKMS').Value; + FieldByName('SWFBHW').Value:=ADOQueryTemp.fieldbyname('SWFBHW').Value; + FieldByName('MJID').Value:=ADOQueryTemp.fieldbyname('MJID').Value; + FieldByName('SWFBKZ').Value:=ADOQueryTemp.fieldbyname('SWFBKZ').Value; + FieldByName('MJMaoZ').Value:=ADOQueryTemp.fieldbyname('MJMaoZ').Value; + FieldByName('MJLen').Value:=ADOQueryTemp.fieldbyname('MJLen').Value; + FieldByName('MJFK').Value:=ADOQueryTemp.fieldbyname('MJFK').Value; + FieldByName('MJSJKZ').Value:=ADOQueryTemp.fieldbyname('MJSJKZ').Value; + Post; + end; + end else + begin + HJMJID.Text:=''; + Application.MessageBox('','ʾ',0); + Exit; + end; + HJMJID.Text:=''; + end; + +end; + +procedure TfrmZJManageNew.TvHJCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + CDS_HJ.Delete; +end; + +procedure TfrmZJManageNew.Button9Click(Sender: TObject); +var + i,j,FXJInt:Integer; + mm,mm2:String; +begin + with ADOQueryTemp do + begin + sql.Clear; + sql.add('SELECT userid,username,password FROM SY_User WHERE userid='+''''+trim(DCode)+''''); + Open; + mm:=Trim(Fields[2].AsString); + if Trim(mm)<>'' then + mm2:=Trim(DecryptString(Trim(mm),'ljb^0122!@#*&^%$',kb128)) + else + begin + Application.MessageBox('벻Ϊգ','ʾ',0); + Exit; + end; + close; + end; + + if ( mm2=trim(Password.text) ) then + begin + with Panel4 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if Controls[i].Visible=True then + begin + if TEdit(Controls[i]).Text='' then + begin + if j=0 then + begin + j:=9; + FXJInt:=i+1; + end + else + j:=j+1; + end; + end; + end; + end; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_XJJY where MJID='''+Trim(Cds_Main.fieldbyname('MJId').AsString)+''''); + SQL.Add(' and XJInt='+Inttostr(FXJInt)); + Open; + end; + if ADOQueryTemp.IsEmpty=True then + begin + Application.MessageBox('δ룬´ӡ','ʾ',0); + Exit; + end; + PrintData(Trim(ADOQueryTemp.fieldbyname('XJID').AsString),'ش'); + MovePanel3.Visible:=False; + end else + Application.MessageBox('', 'Ϣʾ', MB_OK or MB_ICONinformation); + + //MJID.SelectAll; +end; + +procedure TfrmZJManageNew.Button10Click(Sender: TObject); +begin + MovePanel3.Visible:=False; +end; + +procedure TfrmZJManageNew.PasswordClick(Sender: TObject); +begin + Panel5.Visible:=True; +end; + +end. diff --git a/艾登贸易管理/U_ZJManageNewFD.dfm b/艾登贸易管理/U_ZJManageNewFD.dfm new file mode 100644 index 0000000..0b45c5a --- /dev/null +++ b/艾登贸易管理/U_ZJManageNewFD.dfm @@ -0,0 +1,2690 @@ +object frmZJManageNewFD: TfrmZJManageNewFD + Left = -2 + Top = 20 + Width = 1292 + Height = 734 + Caption = #23567#21367#20998#20999 + Color = clBtnFace + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 13 + object Label1: TLabel + Left = 22 + Top = 13 + Width = 66 + Height = 33 + Caption = #25195#25551 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 22 + Top = 159 + Width = 62 + Height = 58 + Caption = #24133#23485#13#10' cm' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 22 + Top = 227 + Width = 62 + Height = 58 + Caption = #38271#24230#13#10' M' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 22 + Top = 379 + Width = 62 + Height = 58 + Caption = #37325#37327#13#10' Kg' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 22 + Top = 518 + Width = 62 + Height = 29 + Caption = #30133#28857 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 22 + Top = 450 + Width = 62 + Height = 29 + Caption = #36873#25321 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 992 + Top = 56 + Width = 23 + Height = 84 + Caption = #20998#13#10#20999#13#10#35828#13#10#26126 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 22 + Top = 334 + Width = 62 + Height = 29 + Caption = #25509#22836 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 22 + Top = 291 + Width = 62 + Height = 29 + Caption = #36192#36865 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 994 + Top = 16 + Width = 100 + Height = 24 + Caption = #27597#21367#26465#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -24 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object MJID: TEdit + Left = 88 + Top = 9 + Width = 297 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnKeyPress = MJIDKeyPress + end + object ScrollBox1: TScrollBox + Left = 88 + Top = 517 + Width = 501 + Height = 151 + TabOrder = 1 + object SpeedButton13: TSpeedButton + Left = 3 + Top = 3 + Width = 60 + Height = 60 + Caption = #23567#40657#28857 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton14: TSpeedButton + Left = 64 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton15: TSpeedButton + Left = 125 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton16: TSpeedButton + Left = 186 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton17: TSpeedButton + Left = 247 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton18: TSpeedButton + Left = 308 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton19: TSpeedButton + Left = 369 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton20: TSpeedButton + Left = 430 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton21: TSpeedButton + Left = 3 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton22: TSpeedButton + Left = 64 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton23: TSpeedButton + Left = 125 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton24: TSpeedButton + Left = 186 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton25: TSpeedButton + Left = 247 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton26: TSpeedButton + Left = 308 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton27: TSpeedButton + Left = 369 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton28: TSpeedButton + Left = 430 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + end + object Button1: TButton + Left = 390 + Top = 7 + Width = 145 + Height = 42 + Caption = #21516#21333#21512#21367 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Button1Click + end + object Button3: TButton + Left = 544 + Top = 9 + Width = 144 + Height = 40 + Caption = #25171' '#21360 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = Button3Click + end + object cxGrid2: TcxGrid + Left = 584 + Top = 514 + Width = 398 + Height = 156 + TabOrder = 4 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column1 + end + item + Kind = skSum + Column = Tv2CDQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Content = cxStyle3 + Styles.Header = cxStyle3 + object v2Column3: TcxGridDBColumn + Caption = #21367#24207#21495 + DataBinding.FieldName = 'XJInt' + Width = 56 + end + object tv2CDType: TcxGridDBColumn + Caption = #30133#28857#31181#31867 + DataBinding.FieldName = 'CDName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 79 + end + object tv2CDWZ: TcxGridDBColumn + Caption = #20301#32622#36215 + DataBinding.FieldName = 'CDBeg' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Sorting = False + Width = 60 + end + object v2Column2: TcxGridDBColumn + Caption = #20301#32622#27490 + DataBinding.FieldName = 'CDend' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Width = 61 + end + object Tv2CDQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'CDQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Footer = cxStyle2 + Width = 92 + end + object Tv2CDReason: TcxGridDBColumn + Caption = #21407#22240 + DataBinding.FieldName = 'CDReason' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = cxStyle2 + Width = 131 + end + object v2Column1: TcxGridDBColumn + DataBinding.FieldName = 'CDQty' + Visible = False + Styles.Content = cxStyle2 + Width = 55 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGrid3: TcxGrid + Left = 984 + Top = 516 + Width = 225 + Height = 155 + TabOrder = 5 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv3CellClick + DataController.DataSource = DataSource3 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Header = cxStyle1 + object v3Column1: TcxGridDBColumn + Caption = #21367#24207#21495 + DataBinding.FieldName = 'XJInt' + Styles.Content = cxStyle2 + Width = 56 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #23567#21367#26465#30721 + DataBinding.FieldName = 'XJID' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 158 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + object Button6: TButton + Left = 700 + Top = 10 + Width = 145 + Height = 39 + Caption = #37325#26032#25171#21360 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + OnClick = Button6Click + end + object Panel6: TPanel + Left = 88 + Top = 154 + Width = 1122 + Height = 344 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 7 + object Panel1: TPanel + Left = 8 + Top = 7 + Width = 1105 + Height = 54 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 0 + object SmalMF1: TEdit + Left = 9 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 0 + Visible = False + end + object SmalMF2: TEdit + Left = 100 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 1 + Visible = False + end + object SmalMF3: TEdit + Left = 191 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 2 + Visible = False + end + object SmalMF4: TEdit + Left = 282 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 3 + Visible = False + end + object SmalMF5: TEdit + Left = 373 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 4 + Visible = False + end + object SmalMF6: TEdit + Left = 464 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 5 + Visible = False + end + object SmalMF7: TEdit + Left = 555 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 6 + Visible = False + end + object SmalMF8: TEdit + Left = 646 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 7 + Visible = False + end + object SmalMF9: TEdit + Left = 737 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 8 + Visible = False + end + object SmalMF10: TEdit + Left = 828 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 9 + Visible = False + end + object SmalMF11: TEdit + Left = 919 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 10 + Visible = False + end + object SmalMF12: TEdit + Left = 1010 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 11 + Visible = False + end + end + object Panel2: TPanel + Left = 8 + Top = 66 + Width = 1105 + Height = 52 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 1 + object XJLen1: TEdit + Tag = 1 + Left = 9 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + Visible = False + OnClick = XJLen1Click + end + object XJLen2: TEdit + Tag = 2 + Left = 100 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + Visible = False + OnClick = XJLen1Click + end + object XJLen3: TEdit + Tag = 3 + Left = 191 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + OnClick = XJLen1Click + end + object XJLen4: TEdit + Tag = 4 + Left = 282 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + OnClick = XJLen1Click + end + object XJLen5: TEdit + Tag = 5 + Left = 373 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + OnClick = XJLen1Click + end + object XJLen6: TEdit + Tag = 6 + Left = 464 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + Visible = False + OnClick = XJLen1Click + end + object XJLen7: TEdit + Tag = 7 + Left = 555 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + Visible = False + OnClick = XJLen1Click + end + object XJLen8: TEdit + Tag = 8 + Left = 646 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + Visible = False + OnClick = XJLen1Click + end + object XJLen9: TEdit + Tag = 9 + Left = 737 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + Visible = False + OnClick = XJLen1Click + end + object XJLen10: TEdit + Tag = 10 + Left = 828 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + Visible = False + OnClick = XJLen1Click + end + object XJLen11: TEdit + Tag = 11 + Left = 919 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + Visible = False + OnClick = XJLen1Click + end + object XJLen12: TEdit + Tag = 12 + Left = 1010 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + Visible = False + OnClick = XJLen1Click + end + end + object Panel3: TPanel + Left = 8 + Top = 228 + Width = 1105 + Height = 54 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 2 + object XJMaoZ1: TEdit + Tag = 1 + Left = 9 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ2: TEdit + Tag = 2 + Left = 100 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ3: TEdit + Tag = 3 + Left = 191 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ4: TEdit + Tag = 4 + Left = 282 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ5: TEdit + Tag = 5 + Left = 373 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ6: TEdit + Tag = 6 + Left = 464 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ7: TEdit + Tag = 7 + Left = 555 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ8: TEdit + Tag = 8 + Left = 646 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ9: TEdit + Tag = 9 + Left = 737 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ10: TEdit + Tag = 10 + Left = 828 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ11: TEdit + Tag = 11 + Left = 919 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ12: TEdit + Tag = 12 + Left = 1010 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + Visible = False + OnClick = XJLen1Click + end + end + object Panel4: TPanel + Left = 8 + Top = 283 + Width = 1105 + Height = 53 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 3 + object Sel1: TEdit + Tag = 1 + Left = 27 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 0 + Visible = False + OnClick = Sel1Click + end + object Sel2: TEdit + Tag = 2 + Left = 119 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 1 + Visible = False + OnClick = Sel1Click + end + object Sel3: TEdit + Tag = 3 + Left = 211 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 2 + Visible = False + OnClick = Sel1Click + end + object Sel4: TEdit + Tag = 4 + Left = 303 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 3 + Visible = False + OnClick = Sel1Click + end + object Sel5: TEdit + Tag = 5 + Left = 395 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 4 + Visible = False + OnClick = Sel1Click + end + object Sel6: TEdit + Tag = 6 + Left = 487 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 5 + Visible = False + OnClick = Sel1Click + end + object Sel7: TEdit + Tag = 7 + Left = 578 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 6 + Visible = False + OnClick = Sel1Click + end + object Sel8: TEdit + Tag = 8 + Left = 670 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 7 + Visible = False + OnClick = Sel1Click + end + object Sel9: TEdit + Tag = 9 + Left = 762 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 8 + Visible = False + OnClick = Sel1Click + end + object Sel10: TEdit + Tag = 10 + Left = 854 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 9 + Visible = False + OnClick = Sel1Click + end + object Sel11: TEdit + Tag = 11 + Left = 946 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 10 + Visible = False + OnClick = Sel1Click + end + object Sel12: TEdit + Tag = 12 + Left = 1038 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 11 + Visible = False + OnClick = Sel1Click + end + end + object Panel7: TPanel + Left = 8 + Top = 124 + Width = 1105 + Height = 52 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 4 + object XJFree1: TEdit + Tag = 1 + Left = 9 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + Visible = False + OnClick = XJLen1Click + end + object XJFree2: TEdit + Tag = 2 + Left = 100 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + Visible = False + OnClick = XJLen1Click + end + object XJFree3: TEdit + Tag = 3 + Left = 191 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + OnClick = XJLen1Click + end + object XJFree4: TEdit + Tag = 4 + Left = 282 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + OnClick = XJLen1Click + end + object XJFree5: TEdit + Tag = 5 + Left = 373 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + OnClick = XJLen1Click + end + object XJFree6: TEdit + Tag = 6 + Left = 464 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + Visible = False + OnClick = XJLen1Click + end + object XJFree7: TEdit + Tag = 7 + Left = 555 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + Visible = False + OnClick = XJLen1Click + end + object XJFree8: TEdit + Tag = 8 + Left = 646 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + Visible = False + OnClick = XJLen1Click + end + object XJFree9: TEdit + Tag = 9 + Left = 737 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + Visible = False + OnClick = XJLen1Click + end + object XJFree10: TEdit + Tag = 10 + Left = 828 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + Visible = False + OnClick = XJLen1Click + end + object XJFree11: TEdit + Tag = 11 + Left = 919 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + Visible = False + OnClick = XJLen1Click + end + object XJFree12: TEdit + Tag = 12 + Left = 1010 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + Visible = False + OnClick = XJLen1Click + end + end + object Panel8: TPanel + Left = 8 + Top = 172 + Width = 1105 + Height = 52 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 5 + object XjJt1: TEdit + Tag = 1 + Left = 9 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + Visible = False + OnClick = XJLen1Click + end + object XjJt2: TEdit + Tag = 2 + Left = 100 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + Visible = False + OnClick = XJLen1Click + end + object XjJt3: TEdit + Tag = 3 + Left = 191 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + OnClick = XJLen1Click + end + object XjJt4: TEdit + Tag = 4 + Left = 282 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + OnClick = XJLen1Click + end + object XjJt5: TEdit + Tag = 5 + Left = 373 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + OnClick = XJLen1Click + end + object XjJt6: TEdit + Tag = 6 + Left = 464 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + Visible = False + OnClick = XJLen1Click + end + object XjJt7: TEdit + Tag = 7 + Left = 555 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + Visible = False + OnClick = XJLen1Click + end + object XjJt8: TEdit + Tag = 8 + Left = 646 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + Visible = False + OnClick = XJLen1Click + end + object XjJt9: TEdit + Tag = 9 + Left = 737 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + Visible = False + OnClick = XJLen1Click + end + object XjJt10: TEdit + Tag = 10 + Left = 828 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + Visible = False + OnClick = XJLen1Click + end + object XjJt11: TEdit + Tag = 11 + Left = 919 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + Visible = False + OnClick = XJLen1Click + end + object XjJt12: TEdit + Tag = 12 + Left = 1010 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + Visible = False + OnClick = XJLen1Click + end + end + end + object Panel5: TPanel + Left = 578 + Top = 493 + Width = 625 + Height = 172 + BevelInner = bvRaised + BevelOuter = bvLowered + ParentColor = True + TabOrder = 8 + Visible = False + object SpeedButton1: TSpeedButton + Left = 4 + Top = 3 + Width = 80 + Height = 80 + Caption = '0' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton2: TSpeedButton + Left = 88 + Top = 3 + Width = 80 + Height = 80 + Caption = '1' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton3: TSpeedButton + Left = 172 + Top = 3 + Width = 80 + Height = 80 + Caption = '2' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton4: TSpeedButton + Left = 256 + Top = 3 + Width = 80 + Height = 80 + Caption = '3' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton5: TSpeedButton + Left = 340 + Top = 3 + Width = 80 + Height = 80 + Caption = '4' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton6: TSpeedButton + Left = 4 + Top = 87 + Width = 80 + Height = 80 + Caption = '5' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton7: TSpeedButton + Left = 88 + Top = 87 + Width = 80 + Height = 80 + Caption = '6' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton8: TSpeedButton + Left = 172 + Top = 87 + Width = 80 + Height = 80 + Caption = '7' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton9: TSpeedButton + Left = 256 + Top = 87 + Width = 80 + Height = 80 + Caption = '8' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton10: TSpeedButton + Left = 340 + Top = 87 + Width = 80 + Height = 80 + Caption = '9' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton11: TSpeedButton + Tag = 9 + Left = 424 + Top = 87 + Width = 80 + Height = 80 + Caption = '.' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -53 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton12: TSpeedButton + Left = 424 + Top = 3 + Width = 80 + Height = 80 + Caption = #8592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -53 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton12Click + end + object SpeedButton49: TSpeedButton + Tag = 9 + Left = 517 + Top = 37 + Width = 91 + Height = 82 + Caption = #38544#34255 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton49Click + end + end + object cxGrid4: TcxGrid + Left = 88 + Top = 51 + Width = 898 + Height = 55 + TabOrder = 9 + object TvSel: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Header = cxStyle3 + object vSelColumn1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle3 + Width = 149 + end + object vSelColumn4: TcxGridDBColumn + Caption = #20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle3 + Width = 89 + end + object vSelColumn6: TcxGridDBColumn + Caption = #22823#21367#38376#24133'CM' + DataBinding.FieldName = 'MJFK' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle3 + Width = 94 + end + object vSelColumn5: TcxGridDBColumn + Caption = #22823#21367#38271'M' + DataBinding.FieldName = 'MJLen' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle3 + Width = 68 + end + object cxGridDBColumn7: TcxGridDBColumn + Caption = #22823#21367#37325'Kg' + DataBinding.FieldName = 'MJMaoZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle3 + Styles.Header = cxStyle1 + Width = 81 + end + object vSelColumn2: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MJSJKZ' + Styles.Content = cxStyle3 + Width = 41 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle3 + Width = 43 + end + object vSelColumn7: TcxGridDBColumn + Caption = #32593#23380#30446#25968 + DataBinding.FieldName = 'WKMS' + Styles.Content = cxStyle3 + Width = 74 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle3 + Width = 58 + end + object vSelColumn3: TcxGridDBColumn + Caption = #20998#20999#20010#25968 + DataBinding.FieldName = 'SmalCount' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle3 + Width = 79 + end + object vSelColumn8: TcxGridDBColumn + Caption = #20801#35768#20559#24046 + DataBinding.FieldName = 'SmalPC' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle3 + Width = 78 + end + end + object cxGridLevel3: TcxGridLevel + GridView = TvSel + end + end + object Button2: TButton + Left = 860 + Top = 10 + Width = 101 + Height = 39 + Caption = #36864#20986 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + OnClick = Button2Click + end + object MJCDHZ: TRichEdit + Left = 88 + Top = 108 + Width = 899 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + Lines.Strings = ( + '') + ParentFont = False + ReadOnly = True + ScrollBars = ssVertical + TabOrder = 11 + end + object SmalNote: TRichEdit + Left = 1016 + Top = 50 + Width = 193 + Height = 98 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + Lines.Strings = ( + '') + ParentFont = False + ReadOnly = True + ScrollBars = ssVertical + TabOrder = 12 + end + object MovePanel2: TMovePanel + Left = 80 + Top = 53 + Width = 1137 + Height = 505 + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 13 + Visible = False + object Label8: TLabel + Left = 421 + Top = 24 + Width = 262 + Height = 35 + Caption = #21516' '#21333' '#21512' '#21367 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 22 + Top = 85 + Width = 66 + Height = 33 + Caption = #25195#25551 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object cxGrid1: TcxGrid + Left = 8 + Top = 144 + Width = 1121 + Height = 249 + TabOrder = 0 + object TvHJ: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TvHJCellDblClick + DataController.DataSource = DSHJ + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = vHJColumn1 + end + item + Kind = skSum + Column = vHJColumn2 + end + item + Format = #21367#20010#25968#65306'#' + Kind = skCount + Column = cxGridDBColumn3 + end + item + Kind = skAverage + Column = vHJColumn11 + end + item + Kind = skAverage + Column = vHJColumn3 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Content = cxStyle3 + Styles.Footer = cxStyle3 + Styles.Header = cxStyle1 + object cxGridDBColumn3: TcxGridDBColumn + Caption = #22823#21367#26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 179 + end + object vHJColumn1: TcxGridDBColumn + Caption = #37325#37327'Kg' + DataBinding.FieldName = 'MJMaoZ' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object vHJColumn2: TcxGridDBColumn + Caption = #38271#24230'm' + DataBinding.FieldName = 'MJLen' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object vHJColumn3: TcxGridDBColumn + Caption = #24133#23485'cm' + DataBinding.FieldName = 'MJFk' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object vHJColumn11: TcxGridDBColumn + Caption = #23454#38469#20811#37325 + DataBinding.FieldName = 'MJSJKZ' + HeaderAlignmentHorz = taCenter + Width = 75 + end + object vHJColumn4: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 166 + end + object vHJColumn9: TcxGridDBColumn + Caption = #20135#21697#20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Width = 98 + end + object vHJColumn10: TcxGridDBColumn + Caption = #21407#26009#37197#27604 + DataBinding.FieldName = 'YLPB' + HeaderAlignmentHorz = taCenter + Width = 117 + end + object vHJColumn5: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Width = 54 + end + object vHJColumn8: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Width = 59 + end + object vHJColumn6: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'SWFBKZ' + HeaderAlignmentHorz = taCenter + Width = 58 + end + object vHJColumn7: TcxGridDBColumn + Caption = #32593#23380#30446#25968 + DataBinding.FieldName = 'WKMS' + HeaderAlignmentHorz = taCenter + Width = 79 + end + end + object cxGridLevel4: TcxGridLevel + GridView = TvHJ + end + end + object HJMJID: TEdit + Left = 88 + Top = 81 + Width = 297 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnKeyPress = HJMJIDKeyPress + end + object Button7: TButton + Left = 140 + Top = 431 + Width = 145 + Height = 42 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Button7Click + end + object Button8: TButton + Left = 852 + Top = 431 + Width = 145 + Height = 42 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = Button8Click + end + end + object MovePanel1: TMovePanel + Left = 88 + Top = 487 + Width = 344 + Height = 202 + BevelInner = bvLowered + Color = clSkyBlue + TabOrder = 14 + Visible = False + object Label17: TLabel + Left = 30 + Top = 24 + Width = 84 + Height = 20 + Caption = #36215#22987#20301#32622 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 185 + Top = 69 + Width = 21 + Height = 20 + Caption = #21040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 301 + Top = 24 + Width = 11 + Height = 20 + Caption = 'M' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label20: TLabel + Left = 301 + Top = 104 + Width = 11 + Height = 20 + Caption = 'M' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label21: TLabel + Left = 31 + Top = 69 + Width = 77 + Height = 20 + Caption = 'Label21' + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentColor = False + ParentFont = False + end + object CDBeg: TEdit + Tag = 9999 + Left = 119 + Top = 16 + Width = 174 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnClick = XJLen1Click + end + object Button4: TButton + Left = 31 + Top = 147 + Width = 66 + Height = 38 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button4Click + end + object Button5: TButton + Left = 246 + Top = 147 + Width = 66 + Height = 38 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Button5Click + end + object CDEnd: TEdit + Tag = 9999 + Left = 119 + Top = 94 + Width = 174 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = XJLen1Click + end + end + object MovePanel3: TMovePanel + Left = 568 + Top = 104 + Width = 321 + Height = 177 + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 15 + Visible = False + object Label13: TLabel + Left = 88 + Top = 16 + Width = 132 + Height = 33 + Caption = #36755#20837#23494#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Button9: TButton + Left = 32 + Top = 112 + Width = 75 + Height = 49 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnClick = Button9Click + end + object Button10: TButton + Left = 200 + Top = 112 + Width = 75 + Height = 49 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button10Click + end + object Password: TEdit + Tag = 99999 + Left = 32 + Top = 56 + Width = 241 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + PasswordChar = '*' + TabOrder = 2 + OnClick = XJLen1Click + end + end + object cxStyleRepository5: TcxStyleRepository + Left = 936 + Top = 65532 + object cxStyle6: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + end + object cxStyleRepository1: TcxStyleRepository + Left = 1232 + Top = 124 + object cxStyle1: TcxStyle + AssignedValues = [svColor, svFont] + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle2: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Pitch = fpFixed + Font.Style = [fsBold] + TextColor = clDefault + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 598 + Top = 75 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 686 + Top = 74 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 638 + Top = 74 + end + object DataSource1: TDataSource + DataSet = Cds_Main + Left = 744 + Top = 76 + end + object Cds_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 800 + Top = 76 + end + object DataSource3: TDataSource + DataSet = CDS_XJID + Left = 1000 + Top = 670 + end + object CDS_XJID: TClientDataSet + Aggregates = <> + Params = <> + Left = 1032 + Top = 670 + end + object DataSource2: TDataSource + DataSet = CDS_XJCD + Left = 752 + Top = 670 + end + object CDS_XJCD: TClientDataSet + Aggregates = <> + Params = <> + Left = 792 + Top = 670 + end + object cxStyleRepository2: TcxStyleRepository + object cxStyle3: TcxStyle + AssignedValues = [svFont] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -15 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 136 + Top = 120 + end + object RM2: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 104 + Top = 120 + ReportData = {} + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 168 + Top = 120 + end + object DSHJ: TDataSource + DataSet = CDS_HJ + Left = 352 + Top = 550 + end + object CDS_HJ: TClientDataSet + Aggregates = <> + Params = <> + Left = 384 + Top = 550 + end +end diff --git a/艾登贸易管理/U_ZJManageNewFD.pas b/艾登贸易管理/U_ZJManageNewFD.pas new file mode 100644 index 0000000..f336ab3 --- /dev/null +++ b/艾登贸易管理/U_ZJManageNewFD.pas @@ -0,0 +1,1530 @@ +unit U_ZJManageNewFD; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, Buttons, ExtCtrls, cxStyles, cxCustomData, cxGraphics, + cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, cxTextEdit, + cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, + cxClasses, cxControls, cxGridCustomView, cxGrid, MovePanel, ADODB, + DBClient, ComCtrls, RM_Common, RM_Class, RM_GridReport, RM_System, + RM_Dataset; + +type + TfrmZJManageNewFD = class(TForm) + MJID: TEdit; + Label1: TLabel; + Label2: TLabel; + Label3: TLabel; + Label4: TLabel; + Label5: TLabel; + Label6: TLabel; + ScrollBox1: TScrollBox; + SpeedButton13: TSpeedButton; + SpeedButton14: TSpeedButton; + SpeedButton15: TSpeedButton; + SpeedButton16: TSpeedButton; + SpeedButton17: TSpeedButton; + SpeedButton18: TSpeedButton; + SpeedButton19: TSpeedButton; + SpeedButton20: TSpeedButton; + SpeedButton21: TSpeedButton; + SpeedButton22: TSpeedButton; + SpeedButton23: TSpeedButton; + SpeedButton24: TSpeedButton; + SpeedButton25: TSpeedButton; + SpeedButton26: TSpeedButton; + SpeedButton27: TSpeedButton; + SpeedButton28: TSpeedButton; + Button1: TButton; + Button3: TButton; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + tv2CDType: TcxGridDBColumn; + tv2CDWZ: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + Tv2CDQty: TcxGridDBColumn; + Tv2CDReason: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + cxStyleRepository5: TcxStyleRepository; + cxStyle6: TcxStyle; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + Button6: TButton; + Panel6: TPanel; + Panel1: TPanel; + SmalMF1: TEdit; + SmalMF2: TEdit; + SmalMF3: TEdit; + SmalMF4: TEdit; + SmalMF5: TEdit; + SmalMF6: TEdit; + SmalMF7: TEdit; + SmalMF8: TEdit; + SmalMF9: TEdit; + SmalMF10: TEdit; + SmalMF11: TEdit; + SmalMF12: TEdit; + Panel2: TPanel; + XJLen1: TEdit; + XJLen2: TEdit; + XJLen3: TEdit; + XJLen4: TEdit; + XJLen5: TEdit; + XJLen6: TEdit; + XJLen7: TEdit; + XJLen8: TEdit; + XJLen9: TEdit; + XJLen10: TEdit; + XJLen11: TEdit; + XJLen12: TEdit; + Panel3: TPanel; + XJMaoZ1: TEdit; + XJMaoZ2: TEdit; + XJMaoZ3: TEdit; + XJMaoZ4: TEdit; + XJMaoZ5: TEdit; + XJMaoZ6: TEdit; + XJMaoZ7: TEdit; + XJMaoZ8: TEdit; + XJMaoZ9: TEdit; + XJMaoZ10: TEdit; + XJMaoZ11: TEdit; + XJMaoZ12: TEdit; + Panel4: TPanel; + Sel1: TEdit; + Sel2: TEdit; + Sel3: TEdit; + Sel4: TEdit; + Sel5: TEdit; + Sel6: TEdit; + Sel7: TEdit; + Sel8: TEdit; + Sel9: TEdit; + Sel10: TEdit; + Sel11: TEdit; + Sel12: TEdit; + ADOQueryTemp: TADOQuery; + Panel5: TPanel; + SpeedButton1: TSpeedButton; + SpeedButton2: TSpeedButton; + SpeedButton3: TSpeedButton; + SpeedButton4: TSpeedButton; + SpeedButton5: TSpeedButton; + SpeedButton6: TSpeedButton; + SpeedButton7: TSpeedButton; + SpeedButton8: TSpeedButton; + SpeedButton9: TSpeedButton; + SpeedButton10: TSpeedButton; + SpeedButton11: TSpeedButton; + SpeedButton12: TSpeedButton; + SpeedButton49: TSpeedButton; + cxGrid4: TcxGrid; + TvSel: TcxGridDBTableView; + vSelColumn1: TcxGridDBColumn; + vSelColumn4: TcxGridDBColumn; + vSelColumn6: TcxGridDBColumn; + vSelColumn5: TcxGridDBColumn; + cxGridDBColumn7: TcxGridDBColumn; + vSelColumn7: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + vSelColumn2: TcxGridDBColumn; + cxGridLevel3: TcxGridLevel; + vSelColumn3: TcxGridDBColumn; + vSelColumn8: TcxGridDBColumn; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + DataSource1: TDataSource; + Cds_Main: TClientDataSet; + Button2: TButton; + MJCDHZ: TRichEdit; + DataSource3: TDataSource; + CDS_XJID: TClientDataSet; + DataSource2: TDataSource; + CDS_XJCD: TClientDataSet; + v2Column3: TcxGridDBColumn; + v3Column1: TcxGridDBColumn; + cxStyleRepository2: TcxStyleRepository; + cxStyle3: TcxStyle; + SmalNote: TRichEdit; + Label7: TLabel; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + ADOQueryPrint: TADOQuery; + MovePanel2: TMovePanel; + Label8: TLabel; + cxGrid1: TcxGrid; + TvHJ: TcxGridDBTableView; + cxGridDBColumn3: TcxGridDBColumn; + cxGridLevel4: TcxGridLevel; + DSHJ: TDataSource; + CDS_HJ: TClientDataSet; + vHJColumn1: TcxGridDBColumn; + vHJColumn2: TcxGridDBColumn; + vHJColumn3: TcxGridDBColumn; + Label9: TLabel; + HJMJID: TEdit; + Button7: TButton; + Button8: TButton; + vHJColumn4: TcxGridDBColumn; + vHJColumn5: TcxGridDBColumn; + vHJColumn6: TcxGridDBColumn; + vHJColumn7: TcxGridDBColumn; + vHJColumn8: TcxGridDBColumn; + vHJColumn9: TcxGridDBColumn; + vHJColumn10: TcxGridDBColumn; + vHJColumn11: TcxGridDBColumn; + Panel7: TPanel; + XJFree1: TEdit; + XJFree2: TEdit; + XJFree3: TEdit; + XJFree4: TEdit; + XJFree5: TEdit; + XJFree6: TEdit; + XJFree7: TEdit; + XJFree8: TEdit; + XJFree9: TEdit; + XJFree10: TEdit; + XJFree11: TEdit; + XJFree12: TEdit; + MovePanel1: TMovePanel; + Label17: TLabel; + Label18: TLabel; + Label19: TLabel; + Label20: TLabel; + Label21: TLabel; + CDBeg: TEdit; + Button4: TButton; + Button5: TButton; + CDEnd: TEdit; + Panel8: TPanel; + XjJt1: TEdit; + XjJt2: TEdit; + XjJt3: TEdit; + XjJt4: TEdit; + XjJt5: TEdit; + XjJt6: TEdit; + XjJt7: TEdit; + XjJt8: TEdit; + XjJt9: TEdit; + XjJt10: TEdit; + XjJt11: TEdit; + XjJt12: TEdit; + Label10: TLabel; + Label11: TLabel; + Label12: TLabel; + MovePanel3: TMovePanel; + Button9: TButton; + Button10: TButton; + Password: TEdit; + Label13: TLabel; + procedure Sel1Click(Sender: TObject); + procedure Edit64Click(Sender: TObject); + procedure SpeedButton1Click(Sender: TObject); + procedure SpeedButton12Click(Sender: TObject); + procedure SpeedButton49Click(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure XJLen1Click(Sender: TObject); + procedure MJIDKeyPress(Sender: TObject; var Key: Char); + procedure Button2Click(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure SpeedButton13Click(Sender: TObject); + procedure Button5Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button3Click(Sender: TObject); + procedure Button6Click(Sender: TObject); + procedure Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button1Click(Sender: TObject); + procedure Button8Click(Sender: TObject); + procedure Button7Click(Sender: TObject); + procedure HJMJIDKeyPress(Sender: TObject; var Key: Char); + procedure TvHJCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button9Click(Sender: TObject); + procedure Button10Click(Sender: TObject); + procedure PasswordClick(Sender: TObject); + private + { Private declarations } + FCDName:string; + procedure ClearSpenndHit(); + procedure VisbleControl(Panel55:TWinControl;XS:Boolean;SXCount:Integer); + function ChkEditNULL(panel55:TWinControl):Boolean; + procedure InitJP(); + procedure InitGridCD(); + procedure InitGridCDID(); + procedure ClearControl(Panel55:TWinControl;ConValue:String;SXCount:Integer); + procedure PrintData(FXJID:string;CDFlag:String); + public + { Public declarations } + end; + +var + frmZJManageNewFD: TfrmZJManageNewFD; + +implementation +uses +U_DataLink,U_Fun,U_ZDYHelp,U_iniParam,AES,ElAES,U_LabelPrint; + +{$R *.dfm} + +procedure TfrmZJManageNewFD.Sel1Click(Sender: TObject); +begin + if Trim(TcxTextEdit(Sender).Text)='' then + begin + TcxTextEdit(Sender).Text:=''; + end else + begin + TcxTextEdit(Sender).Text:=''; + end; +end; + +procedure TfrmZJManageNewFD.Edit64Click(Sender: TObject); +var + i:Integer; +begin + Panel5.Visible:=True; + with Panel5 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim(TEdit(Sender).Name); + end; + end; + end; +end; +procedure TfrmZJManageNewFD.ClearSpenndHit(); +var + i:Integer; +begin + with Panel5 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=''; + end; + end; + end; +end; +procedure TfrmZJManageNewFD.VisbleControl(Panel55:TWinControl;XS:Boolean;SXCount:Integer); +var + i:Integer; +begin + with Panel55 do + begin + for i:=0 to SXCount-1 do + begin + Controls[i].Visible:=XS; + end; + end; +end; +procedure TfrmZJManageNewFD.ClearControl(Panel55:TWinControl;ConValue:String;SXCount:Integer); +var + i:Integer; +begin + with Panel55 do + begin + for i:=0 to SXCount-1 do + begin + TEdit(Controls[i]).Text:=ConValue; + end; + end; +end; + +procedure TfrmZJManageNewFD.SpeedButton1Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TSpeedButton(Sender).Hint); + if Trim(fsj)='' then Exit; + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=fsj+Trim(TSpeedButton(Sender).Caption); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; + +procedure TfrmZJManageNewFD.SpeedButton12Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + if Trim(fsj)='' then Exit; + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=Copy(fsj,1,Length(fsj)-1); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; + +procedure TfrmZJManageNewFD.SpeedButton49Click(Sender: TObject); +begin + Panel5.Visible:=false; +end; + +function TfrmZJManageNewFD.ChkEditNULL(panel55:TWinControl):Boolean; +var + i:Integer; +begin + Result:=False; + with panel55 do + begin + for i:=0 to panel55.ControlCount-1 do + begin + if Controls[i].Visible=True then + begin + if Trim(TEdit(Controls[i]).Text)='' then + begin + Result:=False; + Break; + end else + begin + Result:=True; + end; + end; + + end; + end; + +end; + +procedure TfrmZJManageNewFD.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZJManageNewFD.FormDestroy(Sender: TObject); +begin + frmZJManageNewFD:=nil; +end; + +procedure TfrmZJManageNewFD.XJLen1Click(Sender: TObject); +var + i:Integer; +begin + if CDS_XJID.IsEmpty=False then + begin + if CDS_XJID.Locate('XJInt',TEdit(Sender).tag,[])=True then + begin + TEdit(Sender).Text:=Trim(CDS_XJID.fieldbyname(Copy(Trim(TEdit(Sender).Name),1,Length(Trim(TEdit(Sender).Name))-1)).AsString); + Panel5.Visible:=False; + Exit; + end; + end; + Panel5.Visible:=True; + with Panel5 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim(TEdit(Sender).Name); + end; + end; + end; + // Panel5.Left:=Edit14.Left; + //Panel5.top:=Edit14.top+Edit14.Height; +end; + +procedure TfrmZJManageNewFD.MJIDKeyPress(Sender: TObject; var Key: Char); +var + FCount,i:Integer; + FXJXH:String; +begin + if Key=#13 then + begin + MJID.SelectAll; + ClearControl(Panel1,'',Panel1.ControlCount); + ClearControl(Panel2,'',Panel2.ControlCount); + ClearControl(Panel3,'',Panel3.ControlCount); + Label12.Visible:=True; + Label12.Caption:=Trim(MJID.Text); + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + sql.add('select MJCDHZ=dbo.F_Get_WFBOrder_SubStr(A.MJID,''MJCDHZ''), D.*,'); + SQL.Add('A.*,C.OrderNo,B.SWFBColor,B.SWFBHW,B.WKMS,B.SWFBCode,B.SWFBCodeName '); + sql.add('from WFB_MJJY A inner join WFBOrder_Sub_AnPai D on A.APId=D.APId'); + sql.Add('inner join WFBOrder_Sub B on A.SubId=B.SubId'); + sql.Add('inner join WFBOrder_Main C on A.MainId=C.MainId'); + sql.Add('where A.MJID='''+Trim(MJID.Text)+''''); + sql.Add(' and A.Valie=''Y'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,Cds_Main); + SInitCDSData20(ADOQueryMain,Cds_Main); + if Cds_Main.IsEmpty then + begin + MJCDHZ.Text:=''; + InitGridCDID(); + InitGridCD(); + Label12.Visible:=False; + MJID.Text:=''; + Application.MessageBox('','ʾ',0); + Exit; + end; + MJCDHZ.Visible:=True; + MJCDHZ.Text:=Trim(Cds_Main.fieldbyname('MJCDHZ').AsString); + SmalNote.Text:=Trim(Cds_Main.fieldbyname('SmalNote').AsString); + if Cds_Main.FieldByName('SmalCount').Value<1 then + begin + Application.MessageBox('иС1','ʾ',0); + Exit; + end else + begin + FCount:=Cds_Main.FieldByName('SmalCount').Value; + VisbleControl(Panel1,False,Panel1.ControlCount); + VisbleControl(Panel2,False,Panel2.ControlCount); + VisbleControl(Panel3,False,Panel3.ControlCount); + VisbleControl(Panel4,False,Panel4.ControlCount); + VisbleControl(Panel1,True,FCount); + VisbleControl(Panel2,True,FCount); + VisbleControl(Panel3,True,FCount); + VisbleControl(Panel4,True,FCount); + VisbleControl(Panel7,True,FCount); + VisbleControl(Panel8,True,FCount); + SCSHDataCDS(Cds_Main,Panel1,0); + end; + InitGridCDID(); + InitGridCD(); + finally + ADOQueryMain.EnableControls; + end; + MJID.Text:=''; + {if CDS_XJID.IsEmpty=False then + begin + with CDS_XJID do + begin + First; + while not Eof do + begin + + FXJXH:=Trim(CDS_XJID.fieldbyname('XJInt').AsString); + (FindComponent('XJLen'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJLen').AsString); + (FindComponent('XJMaoZ'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJMaoZ').AsString); + (FindComponent('XJFree'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJFree').AsString); + (FindComponent('XJJt'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJJt').AsString); + Next; + end; + end; + end; } + end; +end; + +procedure TfrmZJManageNewFD.Button2Click(Sender: TObject); +begin + WriteCxGrid('ʾϢ',TvSel,'޷IJ'); + Close; +end; + +procedure TfrmZJManageNewFD.FormShow(Sender: TObject); +begin + ReadCxGrid('ʾϢ',TvSel,'޷IJ'); + InitJP(); +end; + +procedure TfrmZJManageNewFD.InitJP(); +var + AA:array[0..100] of string; + i,j:Integer; +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select ZDYName from KH_Zdy where Type=''WFBCDZJ'' order by ZDYNO '); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + Application.MessageBox('ûжСõ㣡','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + First; + i:=0; + while not Eof do + begin + AA[i]:=Trim(fieldbyname('ZDYName').AsString); + i:=i+1; + Next; + end; + end; + i:=i-1; + if i>17 then + begin + i:=29; + end; + for j:=0 to i do + begin + with ScrollBox1 do + begin + TSpeedButton(Controls[j]).Visible:=True; + TSpeedButton(Controls[j]).Hint:=AA[j]; + if Length(AA[j])>4 then + begin + TSpeedButton(Controls[j]).Caption:=Copy(Trim(AA[j]),1,4)+#13+Copy(Trim(AA[j]),5,Length(AA[j])-4); + end else + TSpeedButton(Controls[j]).Caption:=AA[j]; + end; + end; +end; + +procedure TfrmZJManageNewFD.Button4Click(Sender: TObject); +var + i:Integer; +begin + if Trim(CDBeg.Text)='' then + begin + Application.MessageBox('λòΪգ','ʾ',0); + exit; + end; + with Panel4 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if TEdit(Controls[i]).Text='' then + begin + with CDS_XJCD do + begin + Append; + FieldByName('cdname').Value:=Trim(FCDName); + FieldByName('CDbeg').Value:=Trim(CDBeg.Text); + FieldByName('CDEnd').Value:=Trim(CDEnd.Text); + if Trim(CDEnd.Text)<>'' then + begin + FieldByName('CDQty').Value:=StrToFloat(CDEnd.Text)-StrToFloat(CDBeg.Text); + end else + begin + FieldByName('CDQty').Value:=0; + end; + FieldByName('XJInt').Value:=i+1; + Post; + end; + end; + end; + end; + CDBeg.Text:=''; + CDEnd.Text:=''; + MovePanel1.Visible:=False; +end; + +procedure TfrmZJManageNewFD.SpeedButton13Click(Sender: TObject); +var + i,j:Integer; +begin + if Cds_Main.IsEmpty then Exit; + j:=0; + with Panel4 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if Controls[i].Visible=True then + begin + if TEdit(Controls[i]).Text='' then + begin + j:=9; + end; + end; + end; + end; + if j=0 then + begin + Application.MessageBox('ûѡС','ʾ',0); + Exit; + end; + FCDName:=Trim(TSpeedButton(Sender).Hint); + MovePanel1.Visible:=True; + Label21.Caption:=Trim(FCDName); + CDBeg.SetFocus; + + Panel5.Visible:=True; + with Panel5 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim('CDBeg'); + end; + end; + end; +end; +procedure TfrmZJManageNewFD.InitGridCD(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + if Trim(CDS_XJID.fieldbyname('XJID').AsString)<>'' then + begin + sql.Add('select A.*,B.XJInt from WFB_XJJY_CD A inner join WFB_XJJY B on A.XJID=B.XJID'); + sql.Add(' where B.MJID='''+Trim(MJID.Text)+''''); + end + else + sql.Add('select A.*,B.XJInt from WFB_XJJY_CD A inner join WFB_XJJY B on A.XJID=B.XJID where 1<>1'); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_XJCD); + SInitCDSData20(ADOQueryMain,CDS_XJCD); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmZJManageNewFD.InitGridCDID(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_XJJY where MJID='''+Trim(MJID.Text)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_XJID); + SInitCDSData20(ADOQueryMain,CDS_XJID); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmZJManageNewFD.Button5Click(Sender: TObject); +begin + MovePanel1.Visible:=False; +end; + +procedure TfrmZJManageNewFD.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if Trim(CDS_XJCD.fieldbyname('XJID').AsString)<>'' then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + CDS_XJCD.Delete; +end; + +procedure TfrmZJManageNewFD.Button3Click(Sender: TObject); +var + i,j,FXJInt,CRID:Integer; + FXJSJKZ:Double; + maxno,maxnocd,MaxCkNo,MaxCkSubNo,XJBanZu,FFXJLen,FFXJMaoZ,FFXJFk,FFXJFree,FFXJJt:String; +begin + if Cds_Main.IsEmpty then Exit; + with Panel2 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if TEdit(Controls[i]).Text='' then + begin + Application.MessageBox('δȫ¼룬ܴӡ','ʾ',0); + Exit; + end; + end; + end; + with Panel3 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if TEdit(Controls[i]).Text='' then + begin + Application.MessageBox('δȫ¼룬ܴӡ','ʾ',0); + Exit; + end; + end; + end; + j:=0; + with Panel4 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if Controls[i].Visible=True then + begin + if TEdit(Controls[i]).Text='' then + begin + if j=0 then + begin + j:=9; + FXJInt:=i+1; + end + else + j:=j+1; + end; + end; + end; + end; + if j=0 then + begin + Application.MessageBox('ûѡС','ʾ',0); + Exit; + end else + if j>9 then + begin + Application.MessageBox('ѡС','ʾ',0); + Exit; + end; + if Trim(TEdit(FindComponent('XJLen'+Trim(IntToStr(FXJInt)))).Text)='' then + begin + Application.MessageBox('ȲΪգ','ʾ',0); + Exit; + end else + begin + FFXJLen:=Trim(TEdit(FindComponent('XJLen'+Trim(IntToStr(FXJInt)))).Text); + end; + if Trim(TEdit(FindComponent('XJMaoZ'+Trim(IntToStr(FXJInt)))).Text)='' then + begin + Application.MessageBox('ëزΪգ','ʾ',0); + Exit; + end else + begin + FFXJMaoZ:=Trim(TEdit(FindComponent('XJMaoZ'+Trim(IntToStr(FXJInt)))).Text); + end; + if Trim(TEdit(FindComponent('SmalMF'+Trim(IntToStr(FXJInt)))).Text)='' then + begin + Application.MessageBox('ëزΪգ','ʾ',0); + Exit; + end else + begin + FFXJFk:=Trim(TEdit(FindComponent('SmalMF'+Trim(IntToStr(FXJInt)))).Text); + end; + if Trim(TEdit(FindComponent('XJFree'+Trim(IntToStr(FXJInt)))).Text)='' then + begin + FFXJFree:='0'; + end else + begin + FFXJFree:=Trim(TEdit(FindComponent('XJFree'+Trim(IntToStr(FXJInt)))).Text); + end; + if Trim(TEdit(FindComponent('XJJt'+Trim(IntToStr(FXJInt)))).Text)='' then + begin + FFXJJt:='0'; + end else + begin + FFXJJt:=Trim(TEdit(FindComponent('XJJt'+Trim(IntToStr(FXJInt)))).Text); + end; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_XJJY where MJID='''+Trim(Cds_Main.fieldbyname('MJID').AsString)+''''); + SQL.Add(' and XJInt='+Inttostr(FXJInt)); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('Ѵ룬볢´ӡ','',0); + Exit; + end; + FXJSJKZ:=StrToFloat(FFXJMaoZ)/(StrToFloat(FFXJLen)*StrToFloat(FFXJFk)/100)*1000; + if( (FXJSJKZ-Cds_Main.FieldByName('MJSJKZ').Value)/Cds_Main.FieldByName('MJSJKZ').Value )<-0.3 then + begin + Application.MessageBox('ݣ','ʾ',0); + Exit; + end; + if( (FXJSJKZ-Cds_Main.FieldByName('MJSJKZ').Value)/Cds_Main.FieldByName('MJSJKZ').Value )>0.3 then + begin + Application.MessageBox('ݣ','ʾ',0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + //////////////////////////////////////////////////////////////С + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from SY_User where UserId='''+Trim(DCode)+''''); + Open; + end; + XJBanZu:=Trim(ADOQueryTemp.fieldbyname('BanZu').AsString); + if GetLSNo(ADOQueryCmd,maxno,Trim(XJFlag),'WFB_XJJY',4,1)=false then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡС쳣','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.add('select * from WFB_XJJY where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MJID').Value:=Trim(Cds_Main.fieldbyname('MJID').AsString); + FieldByName('XJID').Value:=Trim(maxno); + FieldByName('XJInt').Value:=FXJInt; + FieldByName('XJLen').Value:=StrToFloat(FFXJLen); + FieldByName('XJMaoZ').Value:=StrToFloat(FFXJMaoZ); + FieldByName('XJFK').Value:=StrToFloat(FFXJFk); + FieldByName('XJFree').Value:=StrToFloat(FFXJFree); + FieldByName('XJJt').Value:=StrToFloat(FFXJJt); + FieldByName('XJBanZu').Value:=Trim(XJBanZu); + FieldByName('JTTYpe').Value:=Trim(XJFlag); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('XJSJKZ').Value:=StrToFloat(FFXJMaoZ)/(StrToFloat(FFXJLen)*StrToFloat(FFXJFk)/100)*1000; + //FieldByName('') + Post; + end; + with CDS_XJID do + begin + Append; + FieldByName('XJID').Value:=Trim(maxno); + FieldByName('XJInt').Value:=FXJInt; + FieldByName('XJLen').Value:=StrToFloat(FFXJLen); + FieldByName('XJMaoZ').Value:=StrToFloat(FFXJMaoZ); + FieldByName('XJFK').Value:=StrToFloat(FFXJFk); + FieldByName('XJFree').Value:=StrToFloat(FFXJFree); + FieldByName('XJJt').Value:=StrToFloat(FFXJJt); + Post; + end; + //////////////////////////////////////////////////////////////С + //////////////////////////////////////////////////////////////Сõ + with CDS_XJCD do + begin + First; + while not Eof do + begin + if CDS_XJCD.FieldByName('XJInt').Value=FXJInt then + begin + if GetLSNo(ADOQueryCmd,maxnocd,'XC','WFB_XJJY_CD',5,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡСõʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from WFB_XJJY_CD where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('XJID').Value:=Trim(maxno); + FieldByName('XCID').Value:=Trim(maxnocd); + FieldByName('CDName').Value:=CDS_XJCD.fieldbyname('CDName').Value; + FieldByName('CDBeg').Value:=CDS_XJCD.fieldbyname('CDBeg').Value; + FieldByName('CDEnd').Value:=CDS_XJCD.fieldbyname('CDEnd').Value; + FieldByName('CDQty').Value:=CDS_XJCD.fieldbyname('CDQty').Value; + Post; + end; + end; + Next; + end; + end; + //////////////////////////////////////////////////////////////Сõ + //////////////////////////////////////////////////////////////浽Ʒֿ//////////////////////////////////////////////// + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.add('Update CK_BanCP_CRID Set CRID=CRID+1'); + sql.Add('select * from CK_BanCP_CRID'); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').Value; + if GetLSNo(ADOQueryTemp,MaxCkNo,'JR','CK_BanCP_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡƷֿʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(Cds_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(Cds_Main.fieldbyname('SubId').AsString); + FieldByName('MJID').Value:=Trim(Cds_Main.fieldbyname('MJId').AsString); + FieldByName('XJID').Value:=Trim(maxno); + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('CRTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + FieldByName('JTType').Value:=Trim(XJFlag); + FieldByName('CRID').Value:=CRID; + FieldByName('KGQty').Value:=StrToFloat(FFXJMaoZ); + FieldByName('MQty').Value:=StrToFloat(FFXJLen); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=CRID; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('XJID').Value:=Trim(maxno); + FieldByName('KCKGQty').Value:=StrToFloat(FFXJMaoZ); + FieldByName('KCMQty').Value:=StrToFloat(FFXJLen); + Post; + end; + //////////////////////////////////////////////////////////////浽Ʒֿ//////////////////////////////////////////////// + ADOQueryCmd.Connection.CommitTrans; + PrintData(Trim(maxno),''); + //Application.MessageBox('ɹ','ʾ',0); + //MJID.SelectAll; + Exit; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; +end; +procedure TfrmZJManageNewFD.PrintData(FXJID:string;CDFlag:String); +var + fPrintFile,LabInt,LabName:String; +begin + if Trim(FXJID)='' then exit; + DataLink_WFBProducttion.ADOLink.Connected:=False; + DataLink_WFBProducttion.ADOLink.Connected:=True; + if Trim(CDFlag)<>'' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_XJJY Set PrtAgnFlag=1,PrtAgnDate=getdate(),PrtAgnPerson='''+Trim(DName)+''''); + sql.Add(' where XJID='''+Trim(FXJID)+''''); + ExecSQL; + end; + end; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add(' select C.LbXInt,C.LbXName from WFB_XJJY A'); + sql.Add(' inner join WFB_MJJY B on A.MJID=B.MJID'); + sql.Add(' inner join WFBOrder_Main C on B.MainId=C.MainId'); + sql.Add(' where A.XJID='''+Trim(FXJID)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + LabInt:=ADOQueryTemp.fieldbyname('LbXInt').AsString; + LabName:=ADOQueryTemp.fieldbyname('LbXName').AsString; + end ; + if Trim(LabName)='' then + begin + Application.MessageBox('Сǩδã','ʾ',0); + Exit; + end; + { try + frmLabelPrint:=TfrmLabelPrint.Create(Application); + with frmLabelPrint do + begin + fLabelId:=LabInt; + FFCDFlag:=Trim(CDFlag); + fKeyNo:=Trim(FXJID); + fIsPreviewPrint:=True; + frmLabelPrint.Button1.Click; + // if ShowModal=1 then + //begin + + // end; + end; + finally + frmLabelPrint.Free; + end; } + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select RTrim(AA.XJID) XJID,RTrim(Cast(AA.XJSJKZ as varchar(20))) XJSJKZ,RTrim(cast(Cast(AA.XJFK*10 as int) as varchar(20))) XJFK,RTrim(B.OrderNo)+'''+Trim(CDFlag)+''' OrderNo'); + sql.Add(',Rtrim(C.SWFBColor) SWFBColor, YLPB=dbo.F_Get_WFBOrder_SubStr(C.SubId,''YLPBSZ'')'); + SQL.Add(',EngColor=(select Top 1 note from KH_Zdy where ZdyName=C.SWFBColor)'); + sql.Add(',Rtrim(Cast(AA.XJlen as varchar(20))) XJlen,Rtrim(Cast(AA.XJMaoZ as varchar(20))) XJMaoZ'); + sql.Add(',Rtrim(Cast(AA.XJFree as varchar(20))) XJFree,Rtrim(Cast( Cast(AA.XJlen*AA.XJFK/100 as int) as varchar(20))) XJPFM'); + sql.Add(',Rtrim(Cast(Cast(C.SWFBKZ as int) as varchar(20))) SWFBKZ'); + sql.Add(',Rtrim(Cast(Cast(AA.XJJt as int) as varchar(20))) XJJt'); + sql.Add(',RTrim(B.LbEngName) LbEngName'); + sql.Add(',RTrim(C.SWFBCodeName) SWFBCodeName from WFB_XJJY AA '); + sql.add(' inner join WFB_MJJY A on AA.MJID=A.MJID') ; + sql.add(' inner join WFBOrder_Main B on A.MainId=B.MainId'); + sql.Add(' inner join WFBOrder_Sub C on A.SubId=C.SubId'); + sql.Add(' where AA.XJID='''+Trim(FXJID)+''''); + Open; + end; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\'+Trim(LabName)+'.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + //RM2.ShowReport; + Rm2.PrintReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\'+Trim(LabName)+'.rmf'),'ʾ',0); + end; + DataLink_WFBProducttion.ADOLink.Connected:=False; +end; + +procedure TfrmZJManageNewFD.Button6Click(Sender: TObject); +var + i,j,FXJInt:Integer; +begin + if Cds_Main.IsEmpty then Exit; + j:=0; + with Panel4 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if Controls[i].Visible=True then + begin + if TEdit(Controls[i]).Text='' then + begin + if j=0 then + begin + j:=9; + FXJInt:=i+1; + end + else + j:=j+1; + end; + end; + end; + end; + if j=0 then + begin + Application.MessageBox('ûѡС','ʾ',0); + Exit; + end else + if j>9 then + begin + Application.MessageBox('ѡС','ʾ',0); + Exit; + end; + + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_XJJY where MJID='''+Trim(Cds_Main.fieldbyname('MJId').AsString)+''''); + SQL.Add(' and XJInt='+Inttostr(FXJInt)); + Open; + end; + if ADOQueryTemp.IsEmpty=True then + begin + Application.MessageBox('δ룬´ӡ','ʾ',0); + Exit; + end; + MovePanel3.Visible:=True; + // PrintData(Trim(ADOQueryTemp.fieldbyname('XJID').AsString),'ش'); + //MJID.SelectAll; +end; + +procedure TfrmZJManageNewFD.Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + FXJXH:String; +begin + FXJXH:=Trim(CDS_XJID.fieldbyname('XJInt').AsString); + (FindComponent('XJLen'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJLen').AsString); + (FindComponent('XJMaoZ'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJMaoZ').AsString); + (FindComponent('XJFree'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJFree').AsString); + (FindComponent('XJJt'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJJt').AsString); +end; + +procedure TfrmZJManageNewFD.Button1Click(Sender: TObject); +begin + MovePanel2.Visible:=True; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,B.OrderNo,C.SWFBCode,C.SWFBCodeName,C.SWFBColor,C.WKMS,C.SWFBHW,C.SubId,C.MainId,C.SWFBKZ '); + sql.Add(',YLPB=dbo.F_Get_WFBOrder_SubStr(C.SubId,''YLPB'')'); + sql.add('from WFB_MJJY A '); + Sql.add(' inner join WFBOrder_Main B on A.MainId=B.MainId'); + Sql.add(' inner join WFBOrder_Sub C on A.SubId=C.SubId'); + sql.add('where 1<>1'); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_HJ); + SInitCDSData20(ADOQueryTemp,CDS_HJ); +end; + +procedure TfrmZJManageNewFD.Button8Click(Sender: TObject); +begin + MovePanel2.Visible:=False; +end; + +procedure TfrmZJManageNewFD.Button7Click(Sender: TObject); +var + maxno,fPrintFile,maxnosub:String; + i:Double; +begin + if Application.MessageBox('ȷҪϾ𣿺Ͼݽ޸ģ','ʾ',32+4)<>IDYES then Exit; + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxno,'','WFB_MJJY',2,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_MJJY where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(CDS_HJ.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(CDS_HJ.fieldbyname('SubId').AsString); + FieldByName('APId').Value:=Trim(CDS_HJ.fieldbyname('APId').AsString); + FieldByName('MJId').Value:=Trim(maxno); + FieldByName('MJMaoZ').Value:=TvHJ.DataController.Summary.FooterSummaryValues[1]; + FieldByName('MJLen').Value:=TvHJ.DataController.Summary.FooterSummaryValues[2]; + FieldByName('MJFK').Value:=TvHJ.DataController.Summary.FooterSummaryValues[5]; + FieldByName('MJSJKZ').Value:=TvHJ.DataController.Summary.FooterSummaryValues[4]; + FieldByName('MJType').Value:='Ͼ'; + FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('Filler').Value:=Trim(DName); + + Post; + end; + i:=0; + with CDS_HJ do + begin + First; + while not Eof do + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set HJMJID='''+Trim(maxno)+''''); + SQL.Add(',MJType=''Ͼ'',Valie=''N'' '); + SQL.Add(' where MJID='''+Trim(CDS_HJ.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_MJJY_CD where MJID='''+Trim(CDS_HJ.fieldbyname('MJID').AsString)+''''); + Open; + end; + with ADOQueryTemp do + begin + First; + while not Eof do + begin + if GetLSNo(ADOQueryCmd,maxnosub,'','WFB_MJJY_CD',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡСʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_MJJY_CD where 1<>1'); + open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MJID').Value:=Trim(maxno); + FieldByName('MCID').Value:=Trim(maxnosub); + FieldByName('CDBeg').Value:=ADOQueryTemp.fieldbyname('CDBeg').Value+i; + FieldByName('CDEnd').Value:=ADOQueryTemp.fieldbyname('CDEnd').Value+i; + FieldByName('CDQty').Value:=ADOQueryTemp.fieldbyname('CDQty').Value; + FieldByName('CDName').Value:=ADOQueryTemp.fieldbyname('CDName').Value; + Post; + end; + Next; + end; + end; + i:=i+CDS_HJ.FieldByName('MJLen').Value; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add(' select RTrim(A.MJID) MJID,RTrim(Cast(A.MJSJKZ As varchar(20))) MJSJKZ,RTrim(Cast(A.MJFK as varchar(20))) MJFK,RTrim(B.OrderNo) OrderNo,'); + sql.Add(' RTrim(Cast(A.MJMaoZ As varchar(20))) MJMaoZ,RTrim(Cast(A.MJLen As varchar(20))) MJLen,'); + sql.Add(' Rtrim(C.SWFBColor) SWFBColor,Rtrim(Cast(C.SWFBKZ as varchar(20))) SWFBKZ, YLPB=dbo.F_Get_WFBOrder_SubStr(C.SubId,''YLPBSZ'')'); + sql.Add(',RTrim(C.SWFBCodeName) SWFBCodeName from WFB_MJJY A inner join WFBOrder_Main B on A.MainId=B.MainId'); + sql.Add(' inner join WFBOrder_Sub C on A.SubId=C.SubId'); + sql.Add(' where A.MJID='''+Trim(maxno)+''''); + Open; + end; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ĸǩ.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + //RM2.ShowReport; + RM2.PrintReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ĸǩ.rmf'),'ʾ',0); + end; + Application.MessageBox('Ͼɹ','ʾ',0); + MovePanel2.Visible:=False; + Exit; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('Ͼ쳣','ʾ',0); + end; + +end; + +procedure TfrmZJManageNewFD.HJMJIDKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.* '); + sql.add('from WFB_MJJY A '); + sql.add('where A.MJID='''+Trim(HJMJID.Text)+''''); + sql.Add(' and valie=''Y'' '); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + HJMJID.Text:=''; + Application.MessageBox('','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.* '); + sql.add('from WFB_XJJY A '); + sql.add('where A.MJID='''+Trim(HJMJID.Text)+''''); + sql.Add(' and valie=''Y'' '); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + HJMJID.Text:=''; + Application.MessageBox('˴ѷУ','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,B.OrderNo,C.SWFBCode,C.SWFBCodeName,C.SWFBColor,C.WKMS,C.SWFBHW,C.SubId,C.MainId '); + sql.Add(',YLPB=dbo.F_Get_WFBOrder_SubStr(C.SubId,''YLPB''),C.SWFBKZ'); + sql.add('from WFB_MJJY A '); + Sql.add(' inner join WFBOrder_Main B on A.MainId=B.MainId'); + Sql.add(' inner join WFBOrder_Sub C on A.SubId=C.SubId'); + sql.add('where A.MJID='''+Trim(HJMJID.Text)+''''); + sql.Add(' and A.valie=''Y'' '); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + if CDS_HJ.Locate('MJID',Trim(ADOQueryTemp.fieldbyname('MJID').AsString),[])=True then + begin + HJMJID.Text:=''; + Application.MessageBox('Ѿɨٴɨ裡','ʾ',0); + Exit; + end; + if CDS_HJ.IsEmpty=False then + begin + if CDS_HJ.Locate('SubId',Trim(ADOQueryTemp.fieldbyname('SubId').AsString),[])=False then + begin + HJMJID.Text:=''; + Application.MessageBox('ͬܺϾ','ʾ',0); + Exit; + end; + {if CDS_HJ.Locate('YLPB',Trim(ADOQueryTemp.fieldbyname('YLPB').AsString),[])=False then + begin + Application.MessageBox('ԭȲͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('SWFBCode',Trim(ADOQueryTemp.fieldbyname('SWFBCode').AsString),[])=False then + begin + Application.MessageBox('ƷŲͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('SWFBColor',Trim(ADOQueryTemp.fieldbyname('SWFBColor').AsString),[])=False then + begin + Application.MessageBox('ɫͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('SWFBHW',Trim(ADOQueryTemp.fieldbyname('SWFBHW').AsString),[])=False then + begin + Application.MessageBox('ͲͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('WKMS',Trim(ADOQueryTemp.fieldbyname('WKMS').AsString),[])=False then + begin + Application.MessageBox('ĿͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('XJFK',Trim(ADOQueryTemp.fieldbyname('XJFK').AsString),[])=False then + begin + Application.MessageBox('ͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('SWFBKZ',Trim(ADOQueryTemp.fieldbyname('SWFBKZ').AsString),[])=False then + begin + Application.MessageBox('زͬܺϾ','ʾ',0); + Exit; + end; } + end; + with CDS_HJ do + begin + Append; + FieldByName('OrderNo').Value:=ADOQueryTemp.fieldbyname('OrderNo').Value; + FieldByName('SubId').Value:=ADOQueryTemp.fieldbyname('SubId').Value; + FieldByName('APId').Value:=ADOQueryTemp.fieldbyname('APId').Value; + FieldByName('MainId').Value:=ADOQueryTemp.fieldbyname('MainId').Value; + FieldByName('YLPB').Value:=ADOQueryTemp.fieldbyname('YLPB').Value; + FieldByName('SWFBCode').Value:=ADOQueryTemp.fieldbyname('SWFBCode').Value; + FieldByName('SWFBCodeName').Value:=ADOQueryTemp.fieldbyname('SWFBCodeName').Value; + FieldByName('SWFBColor').Value:=ADOQueryTemp.fieldbyname('SWFBColor').Value; + FieldByName('WKMS').Value:=ADOQueryTemp.fieldbyname('WKMS').Value; + FieldByName('SWFBHW').Value:=ADOQueryTemp.fieldbyname('SWFBHW').Value; + FieldByName('MJID').Value:=ADOQueryTemp.fieldbyname('MJID').Value; + FieldByName('SWFBKZ').Value:=ADOQueryTemp.fieldbyname('SWFBKZ').Value; + FieldByName('MJMaoZ').Value:=ADOQueryTemp.fieldbyname('MJMaoZ').Value; + FieldByName('MJLen').Value:=ADOQueryTemp.fieldbyname('MJLen').Value; + FieldByName('MJFK').Value:=ADOQueryTemp.fieldbyname('MJFK').Value; + FieldByName('MJSJKZ').Value:=ADOQueryTemp.fieldbyname('MJSJKZ').Value; + Post; + end; + end else + begin + HJMJID.Text:=''; + Application.MessageBox('','ʾ',0); + Exit; + end; + HJMJID.Text:=''; + end; + +end; + +procedure TfrmZJManageNewFD.TvHJCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + CDS_HJ.Delete; +end; + +procedure TfrmZJManageNewFD.Button9Click(Sender: TObject); +var + i,j,FXJInt:Integer; + mm,mm2:String; +begin + with ADOQueryTemp do + begin + sql.Clear; + sql.add('SELECT userid,username,password FROM SY_User WHERE userid='+''''+trim(DCode)+''''); + Open; + mm:=Trim(Fields[2].AsString); + if Trim(mm)<>'' then + mm2:=Trim(DecryptString(Trim(mm),'ljb^0122!@#*&^%$',kb128)) + else + begin + Application.MessageBox('벻Ϊգ','ʾ',0); + Exit; + end; + close; + end; + + if ( mm2=trim(Password.text) ) then + begin + with Panel4 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if Controls[i].Visible=True then + begin + if TEdit(Controls[i]).Text='' then + begin + if j=0 then + begin + j:=9; + FXJInt:=i+1; + end + else + j:=j+1; + end; + end; + end; + end; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_XJJY where MJID='''+Trim(Cds_Main.fieldbyname('MJId').AsString)+''''); + SQL.Add(' and XJInt='+Inttostr(FXJInt)); + Open; + end; + if ADOQueryTemp.IsEmpty=True then + begin + Application.MessageBox('δ룬´ӡ','ʾ',0); + Exit; + end; + PrintData(Trim(ADOQueryTemp.fieldbyname('XJID').AsString),'ش'); + MovePanel3.Visible:=False; + end else + Application.MessageBox('', 'Ϣʾ', MB_OK or MB_ICONinformation); + + //MJID.SelectAll; +end; + +procedure TfrmZJManageNewFD.Button10Click(Sender: TObject); +begin + MovePanel3.Visible:=False; +end; + +procedure TfrmZJManageNewFD.PasswordClick(Sender: TObject); +begin + Panel5.Visible:=True; +end; + +end. diff --git a/艾登贸易管理/U_ZJManageNewFDMORE.dfm b/艾登贸易管理/U_ZJManageNewFDMORE.dfm new file mode 100644 index 0000000..28ee41b --- /dev/null +++ b/艾登贸易管理/U_ZJManageNewFDMORE.dfm @@ -0,0 +1,2804 @@ +object frmZJManageNewFDMORE: TfrmZJManageNewFDMORE + Left = -78 + Top = 21 + Width = 1292 + Height = 734 + Caption = #23567#21367#20998#20999 + Color = clBtnFace + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 13 + object Label1: TLabel + Left = 22 + Top = 13 + Width = 66 + Height = 33 + Caption = #25195#25551 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 22 + Top = 159 + Width = 62 + Height = 58 + Caption = #24133#23485#13#10' cm' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 22 + Top = 227 + Width = 62 + Height = 58 + Caption = #38271#24230#13#10' M' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 22 + Top = 379 + Width = 62 + Height = 58 + Caption = #37325#37327#13#10' Kg' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 22 + Top = 518 + Width = 62 + Height = 29 + Caption = #30133#28857 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 22 + Top = 450 + Width = 62 + Height = 29 + Caption = #36873#25321 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 992 + Top = 56 + Width = 23 + Height = 84 + Caption = #20998#13#10#20999#13#10#35828#13#10#26126 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 22 + Top = 334 + Width = 62 + Height = 29 + Caption = #25509#22836 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 22 + Top = 291 + Width = 62 + Height = 29 + Caption = #36192#36865 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 994 + Top = 16 + Width = 100 + Height = 24 + Caption = #27597#21367#26465#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -24 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label14: TLabel + Left = 30 + Top = 54 + Width = 42 + Height = 40 + Caption = #38271#24230#13#10#25130#26029 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object MJID: TEdit + Left = 88 + Top = 9 + Width = 233 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnClick = XJLen1Click + OnKeyPress = MJIDKeyPress + end + object ScrollBox1: TScrollBox + Left = 88 + Top = 517 + Width = 501 + Height = 151 + TabOrder = 1 + object SpeedButton13: TSpeedButton + Left = 3 + Top = 3 + Width = 60 + Height = 60 + Caption = #23567#40657#28857 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton14: TSpeedButton + Left = 64 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton15: TSpeedButton + Left = 125 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton16: TSpeedButton + Left = 186 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton17: TSpeedButton + Left = 247 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton18: TSpeedButton + Left = 308 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton19: TSpeedButton + Left = 369 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton20: TSpeedButton + Left = 430 + Top = 3 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton21: TSpeedButton + Left = 3 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton22: TSpeedButton + Left = 64 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton23: TSpeedButton + Left = 125 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton24: TSpeedButton + Left = 186 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton25: TSpeedButton + Left = 247 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton26: TSpeedButton + Left = 308 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton27: TSpeedButton + Left = 369 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + object SpeedButton28: TSpeedButton + Left = 430 + Top = 69 + Width = 60 + Height = 60 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + Visible = False + OnClick = SpeedButton13Click + end + end + object Button1: TButton + Left = 418 + Top = 7 + Width = 145 + Height = 42 + Caption = #21516#21333#21512#21367 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Button1Click + end + object Button3: TButton + Left = 571 + Top = 9 + Width = 144 + Height = 40 + Caption = #25171' '#21360 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = Button3Click + end + object cxGrid2: TcxGrid + Left = 584 + Top = 514 + Width = 361 + Height = 156 + TabOrder = 4 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DataSource2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v2Column1 + end + item + Kind = skSum + Column = Tv2CDQty + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Content = cxStyle3 + Styles.Header = cxStyle3 + object v2Column3: TcxGridDBColumn + Caption = #21367#24207#21495 + DataBinding.FieldName = 'XJInt' + Width = 56 + end + object tv2CDType: TcxGridDBColumn + Caption = #30133#28857#31181#31867 + DataBinding.FieldName = 'CDName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 79 + end + object tv2CDWZ: TcxGridDBColumn + Caption = #20301#32622#36215 + DataBinding.FieldName = 'CDBeg' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Sorting = False + Width = 60 + end + object v2Column2: TcxGridDBColumn + Caption = #20301#32622#27490 + DataBinding.FieldName = 'CDend' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Width = 61 + end + object Tv2CDQty: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'CDQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Footer = cxStyle2 + Width = 92 + end + object Tv2CDReason: TcxGridDBColumn + Caption = #21407#22240 + DataBinding.FieldName = 'CDReason' + Visible = False + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Styles.Content = cxStyle2 + Width = 131 + end + object v2Column1: TcxGridDBColumn + DataBinding.FieldName = 'CDQty' + Visible = False + Styles.Content = cxStyle2 + Width = 55 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object cxGrid3: TcxGrid + Left = 944 + Top = 514 + Width = 265 + Height = 155 + TabOrder = 5 + object Tv3: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellClick = Tv3CellClick + DataController.DataSource = DataSource3 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Header = cxStyle1 + object v3Column1: TcxGridDBColumn + Caption = #21367#24207#21495 + DataBinding.FieldName = 'XJInt' + Styles.Content = cxStyle2 + Width = 56 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #23567#21367#26465#30721 + DataBinding.FieldName = 'XJID' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 188 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + object Button6: TButton + Left = 723 + Top = 10 + Width = 145 + Height = 39 + Caption = #37325#26032#25171#21360 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + OnClick = Button6Click + end + object Panel6: TPanel + Left = 88 + Top = 154 + Width = 1122 + Height = 344 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 7 + object Panel1: TPanel + Left = 8 + Top = 7 + Width = 1105 + Height = 54 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 0 + object SmalMF1: TEdit + Left = 9 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 0 + Visible = False + end + object SmalMF2: TEdit + Left = 100 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 1 + Visible = False + end + object SmalMF3: TEdit + Left = 191 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 2 + Visible = False + end + object SmalMF4: TEdit + Left = 282 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 3 + Visible = False + end + object SmalMF5: TEdit + Left = 373 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 4 + Visible = False + end + object SmalMF6: TEdit + Left = 464 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 5 + Visible = False + end + object SmalMF7: TEdit + Left = 555 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 6 + Visible = False + end + object SmalMF8: TEdit + Left = 646 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 7 + Visible = False + end + object SmalMF9: TEdit + Left = 737 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 8 + Visible = False + end + object SmalMF10: TEdit + Left = 828 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 9 + Visible = False + end + object SmalMF11: TEdit + Left = 919 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 10 + Visible = False + end + object SmalMF12: TEdit + Left = 1010 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 11 + Visible = False + end + end + object Panel2: TPanel + Left = 8 + Top = 66 + Width = 1105 + Height = 52 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 1 + object XJLen1: TEdit + Tag = 1 + Left = 9 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + Visible = False + OnClick = XJLen1Click + end + object XJLen2: TEdit + Tag = 2 + Left = 100 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + Visible = False + OnClick = XJLen1Click + end + object XJLen3: TEdit + Tag = 3 + Left = 191 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + OnClick = XJLen1Click + end + object XJLen4: TEdit + Tag = 4 + Left = 282 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + OnClick = XJLen1Click + end + object XJLen5: TEdit + Tag = 5 + Left = 373 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + OnClick = XJLen1Click + end + object XJLen6: TEdit + Tag = 6 + Left = 464 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + Visible = False + OnClick = XJLen1Click + end + object XJLen7: TEdit + Tag = 7 + Left = 555 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + Visible = False + OnClick = XJLen1Click + end + object XJLen8: TEdit + Tag = 8 + Left = 646 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + Visible = False + OnClick = XJLen1Click + end + object XJLen9: TEdit + Tag = 9 + Left = 737 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + Visible = False + OnClick = XJLen1Click + end + object XJLen10: TEdit + Tag = 10 + Left = 828 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + Visible = False + OnClick = XJLen1Click + end + object XJLen11: TEdit + Tag = 11 + Left = 919 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + Visible = False + OnClick = XJLen1Click + end + object XJLen12: TEdit + Tag = 12 + Left = 1010 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + Visible = False + OnClick = XJLen1Click + end + end + object Panel3: TPanel + Left = 8 + Top = 228 + Width = 1105 + Height = 54 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 2 + object XJMaoZ1: TEdit + Tag = 1 + Left = 9 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ2: TEdit + Tag = 2 + Left = 100 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ3: TEdit + Tag = 3 + Left = 191 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ4: TEdit + Tag = 4 + Left = 282 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ5: TEdit + Tag = 5 + Left = 373 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ6: TEdit + Tag = 6 + Left = 464 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ7: TEdit + Tag = 7 + Left = 555 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ8: TEdit + Tag = 8 + Left = 646 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ9: TEdit + Tag = 9 + Left = 737 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ10: TEdit + Tag = 10 + Left = 828 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ11: TEdit + Tag = 11 + Left = 919 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + Visible = False + OnClick = XJLen1Click + end + object XJMaoZ12: TEdit + Tag = 12 + Left = 1010 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + Visible = False + OnClick = XJLen1Click + end + end + object Panel4: TPanel + Left = 8 + Top = 283 + Width = 1105 + Height = 53 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 3 + object Sel1: TEdit + Tag = 1 + Left = 27 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 0 + Visible = False + OnClick = Sel1Click + end + object Sel2: TEdit + Tag = 2 + Left = 119 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 1 + Visible = False + OnClick = Sel1Click + end + object Sel3: TEdit + Tag = 3 + Left = 211 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 2 + Visible = False + OnClick = Sel1Click + end + object Sel4: TEdit + Tag = 4 + Left = 303 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 3 + Visible = False + OnClick = Sel1Click + end + object Sel5: TEdit + Tag = 5 + Left = 395 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 4 + Visible = False + OnClick = Sel1Click + end + object Sel6: TEdit + Tag = 6 + Left = 487 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 5 + Visible = False + OnClick = Sel1Click + end + object Sel7: TEdit + Tag = 7 + Left = 578 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 6 + Visible = False + OnClick = Sel1Click + end + object Sel8: TEdit + Tag = 8 + Left = 670 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 7 + Visible = False + OnClick = Sel1Click + end + object Sel9: TEdit + Tag = 9 + Left = 762 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 8 + Visible = False + OnClick = Sel1Click + end + object Sel10: TEdit + Tag = 10 + Left = 854 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 9 + Visible = False + OnClick = Sel1Click + end + object Sel11: TEdit + Tag = 11 + Left = 946 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 10 + Visible = False + OnClick = Sel1Click + end + object Sel12: TEdit + Tag = 12 + Left = 1038 + Top = 5 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 11 + Visible = False + OnClick = Sel1Click + end + end + object Panel7: TPanel + Left = 8 + Top = 124 + Width = 1105 + Height = 52 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 4 + object XJFree1: TEdit + Tag = 1 + Left = 9 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + Visible = False + OnClick = XJLen1Click + end + object XJFree2: TEdit + Tag = 2 + Left = 100 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + Visible = False + OnClick = XJLen1Click + end + object XJFree3: TEdit + Tag = 3 + Left = 191 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + OnClick = XJLen1Click + end + object XJFree4: TEdit + Tag = 4 + Left = 282 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + OnClick = XJLen1Click + end + object XJFree5: TEdit + Tag = 5 + Left = 373 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + OnClick = XJLen1Click + end + object XJFree6: TEdit + Tag = 6 + Left = 464 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + Visible = False + OnClick = XJLen1Click + end + object XJFree7: TEdit + Tag = 7 + Left = 555 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + Visible = False + OnClick = XJLen1Click + end + object XJFree8: TEdit + Tag = 8 + Left = 646 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + Visible = False + OnClick = XJLen1Click + end + object XJFree9: TEdit + Tag = 9 + Left = 737 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + Visible = False + OnClick = XJLen1Click + end + object XJFree10: TEdit + Tag = 10 + Left = 828 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + Visible = False + OnClick = XJLen1Click + end + object XJFree11: TEdit + Tag = 11 + Left = 919 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + Visible = False + OnClick = XJLen1Click + end + object XJFree12: TEdit + Tag = 12 + Left = 1010 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + Visible = False + OnClick = XJLen1Click + end + end + object Panel8: TPanel + Left = 8 + Top = 172 + Width = 1105 + Height = 52 + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 5 + object XjJt1: TEdit + Tag = 1 + Left = 9 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + Visible = False + OnClick = XJLen1Click + end + object XjJt2: TEdit + Tag = 2 + Left = 100 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + Visible = False + OnClick = XJLen1Click + end + object XjJt3: TEdit + Tag = 3 + Left = 191 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + Visible = False + OnClick = XJLen1Click + end + object XjJt4: TEdit + Tag = 4 + Left = 282 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + OnClick = XJLen1Click + end + object XjJt5: TEdit + Tag = 5 + Left = 373 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + Visible = False + OnClick = XJLen1Click + end + object XjJt6: TEdit + Tag = 6 + Left = 464 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 5 + Visible = False + OnClick = XJLen1Click + end + object XjJt7: TEdit + Tag = 7 + Left = 555 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 6 + Visible = False + OnClick = XJLen1Click + end + object XjJt8: TEdit + Tag = 8 + Left = 646 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 7 + Visible = False + OnClick = XJLen1Click + end + object XjJt9: TEdit + Tag = 9 + Left = 737 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 8 + Visible = False + OnClick = XJLen1Click + end + object XjJt10: TEdit + Tag = 10 + Left = 828 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + Visible = False + OnClick = XJLen1Click + end + object XjJt11: TEdit + Tag = 11 + Left = 919 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 10 + Visible = False + OnClick = XJLen1Click + end + object XjJt12: TEdit + Tag = 12 + Left = 1010 + Top = 8 + Width = 85 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 11 + Visible = False + OnClick = XJLen1Click + end + end + end + object cxGrid4: TcxGrid + Left = 88 + Top = 51 + Width = 898 + Height = 55 + TabOrder = 8 + object TvSel: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.GroupByBox = False + Styles.Header = cxStyle3 + object vSelColumn1: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle3 + Width = 149 + end + object vSelColumn4: TcxGridDBColumn + Caption = #20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle3 + Width = 89 + end + object vSelColumn6: TcxGridDBColumn + Caption = #22823#21367#38376#24133'CM' + DataBinding.FieldName = 'MJFK' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle3 + Width = 94 + end + object vSelColumn5: TcxGridDBColumn + Caption = #22823#21367#38271'M' + DataBinding.FieldName = 'MJLen' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle3 + Width = 68 + end + object cxGridDBColumn7: TcxGridDBColumn + Caption = #22823#21367#37325'Kg' + DataBinding.FieldName = 'MJMaoZ' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle3 + Styles.Header = cxStyle1 + Width = 81 + end + object vSelColumn2: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'MJSJKZ' + Styles.Content = cxStyle3 + Width = 41 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle3 + Width = 43 + end + object vSelColumn7: TcxGridDBColumn + Caption = #32593#23380#30446#25968 + DataBinding.FieldName = 'WKMS' + Styles.Content = cxStyle3 + Width = 74 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle3 + Width = 58 + end + object vSelColumn3: TcxGridDBColumn + Caption = #20998#20999#20010#25968 + DataBinding.FieldName = 'SmalCount' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle3 + Width = 79 + end + object vSelColumn8: TcxGridDBColumn + Caption = #20801#35768#20559#24046 + DataBinding.FieldName = 'SmalPC' + HeaderAlignmentHorz = taCenter + Styles.Content = cxStyle3 + Width = 78 + end + end + object cxGridLevel3: TcxGridLevel + GridView = TvSel + end + end + object Button2: TButton + Left = 876 + Top = 10 + Width = 82 + Height = 39 + Caption = #36864#20986 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 9 + OnClick = Button2Click + end + object MJCDHZ: TRichEdit + Left = 88 + Top = 108 + Width = 899 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + Lines.Strings = ( + '') + ParentFont = False + ReadOnly = True + ScrollBars = ssVertical + TabOrder = 10 + end + object SmalNote: TRichEdit + Left = 1016 + Top = 50 + Width = 193 + Height = 98 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + Lines.Strings = ( + '') + ParentFont = False + ReadOnly = True + ScrollBars = ssVertical + TabOrder = 11 + end + object MovePanel2: TMovePanel + Left = 96 + Top = 53 + Width = 1137 + Height = 505 + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 12 + Visible = False + object Label8: TLabel + Left = 421 + Top = 24 + Width = 262 + Height = 35 + Caption = #21516' '#21333' '#21512' '#21367 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 22 + Top = 85 + Width = 66 + Height = 33 + Caption = #25195#25551 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object cxGrid1: TcxGrid + Left = 8 + Top = 144 + Width = 1121 + Height = 249 + TabOrder = 0 + object TvHJ: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TvHJCellDblClick + DataController.DataSource = DSHJ + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + Column = vHJColumn1 + end + item + Kind = skSum + Column = vHJColumn2 + end + item + Format = #21367#20010#25968#65306'#' + Kind = skCount + Column = cxGridDBColumn3 + end + item + Kind = skAverage + Column = vHJColumn11 + end + item + Kind = skAverage + Column = vHJColumn3 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Content = cxStyle3 + Styles.Footer = cxStyle3 + Styles.Header = cxStyle1 + object cxGridDBColumn3: TcxGridDBColumn + Caption = #22823#21367#26465#30721 + DataBinding.FieldName = 'MJID' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Styles.Content = cxStyle2 + Styles.Header = cxStyle1 + Width = 179 + end + object vHJColumn1: TcxGridDBColumn + Caption = #37325#37327'Kg' + DataBinding.FieldName = 'MJMaoZ' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object vHJColumn2: TcxGridDBColumn + Caption = #38271#24230'm' + DataBinding.FieldName = 'MJLen' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object vHJColumn3: TcxGridDBColumn + Caption = #24133#23485'cm' + DataBinding.FieldName = 'MJFk' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object vHJColumn11: TcxGridDBColumn + Caption = #23454#38469#20811#37325 + DataBinding.FieldName = 'MJSJKZ' + HeaderAlignmentHorz = taCenter + Width = 75 + end + object vHJColumn4: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Width = 166 + end + object vHJColumn9: TcxGridDBColumn + Caption = #20135#21697#20195#21495 + DataBinding.FieldName = 'SWFBCodeName' + HeaderAlignmentHorz = taCenter + Width = 98 + end + object vHJColumn10: TcxGridDBColumn + Caption = #21407#26009#37197#27604 + DataBinding.FieldName = 'YLPB' + HeaderAlignmentHorz = taCenter + Width = 117 + end + object vHJColumn5: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SWFBColor' + HeaderAlignmentHorz = taCenter + Width = 54 + end + object vHJColumn8: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'SWFBHW' + HeaderAlignmentHorz = taCenter + Width = 59 + end + object vHJColumn6: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'SWFBKZ' + HeaderAlignmentHorz = taCenter + Width = 58 + end + object vHJColumn7: TcxGridDBColumn + Caption = #32593#23380#30446#25968 + DataBinding.FieldName = 'WKMS' + HeaderAlignmentHorz = taCenter + Width = 79 + end + end + object cxGridLevel4: TcxGridLevel + GridView = TvHJ + end + end + object HJMJID: TEdit + Left = 88 + Top = 81 + Width = 244 + Height = 41 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = XJLen1Click + OnKeyPress = HJMJIDKeyPress + end + object Button7: TButton + Left = 45 + Top = 431 + Width = 69 + Height = 42 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Button7Click + end + object Button8: TButton + Left = 1017 + Top = 431 + Width = 75 + Height = 42 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = Button8Click + end + object Button12: TButton + Left = 334 + Top = 81 + Width = 78 + Height = 41 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 4 + OnClick = Button12Click + end + end + object MovePanel1: TMovePanel + Left = 88 + Top = 487 + Width = 344 + Height = 202 + BevelInner = bvLowered + Color = clSkyBlue + TabOrder = 13 + Visible = False + object Label17: TLabel + Left = 30 + Top = 24 + Width = 84 + Height = 20 + Caption = #36215#22987#20301#32622 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 185 + Top = 69 + Width = 21 + Height = 20 + Caption = #21040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 301 + Top = 24 + Width = 11 + Height = 20 + Caption = 'M' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label20: TLabel + Left = 301 + Top = 104 + Width = 11 + Height = 20 + Caption = 'M' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label21: TLabel + Left = 31 + Top = 69 + Width = 77 + Height = 20 + Caption = 'Label21' + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -20 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentColor = False + ParentFont = False + end + object CDBeg: TEdit + Tag = 9999 + Left = 119 + Top = 16 + Width = 174 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnClick = XJLen1Click + end + object Button4: TButton + Left = 31 + Top = 147 + Width = 66 + Height = 38 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button4Click + end + object Button5: TButton + Left = 246 + Top = 147 + Width = 66 + Height = 38 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 2 + OnClick = Button5Click + end + object CDEnd: TEdit + Tag = 9999 + Left = 119 + Top = 94 + Width = 174 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + OnClick = XJLen1Click + end + end + object MovePanel3: TMovePanel + Left = 568 + Top = 104 + Width = 321 + Height = 177 + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 14 + Visible = False + object Label13: TLabel + Left = 88 + Top = 16 + Width = 132 + Height = 33 + Caption = #36755#20837#23494#30721 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + end + object Button9: TButton + Left = 32 + Top = 112 + Width = 75 + Height = 49 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 0 + OnClick = Button9Click + end + object Button10: TButton + Left = 200 + Top = 112 + Width = 75 + Height = 49 + Caption = #21462#28040 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 1 + OnClick = Button10Click + end + object Password: TEdit + Tag = 99999 + Left = 32 + Top = 56 + Width = 241 + Height = 37 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + PasswordChar = '*' + TabOrder = 2 + OnClick = XJLen1Click + end + end + object LenCut: TEdit + Tag = 1 + Left = 31 + Top = 99 + Width = 43 + Height = 43 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + ReadOnly = True + TabOrder = 15 + OnClick = LenCutClick + end + object Button11: TButton + Left = 326 + Top = 8 + Width = 78 + Height = 41 + Caption = #30830#23450 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -32 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 16 + OnClick = Button11Click + end + object Panel5: TPanel + Left = 586 + Top = 501 + Width = 625 + Height = 172 + BevelInner = bvRaised + BevelOuter = bvLowered + ParentColor = True + TabOrder = 17 + Visible = False + object SpeedButton1: TSpeedButton + Left = 4 + Top = 3 + Width = 80 + Height = 80 + Caption = '0' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton2: TSpeedButton + Left = 88 + Top = 3 + Width = 80 + Height = 80 + Caption = '1' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton3: TSpeedButton + Left = 172 + Top = 3 + Width = 80 + Height = 80 + Caption = '2' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton4: TSpeedButton + Left = 256 + Top = 3 + Width = 80 + Height = 80 + Caption = '3' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton5: TSpeedButton + Left = 340 + Top = 3 + Width = 80 + Height = 80 + Caption = '4' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton6: TSpeedButton + Left = 4 + Top = 87 + Width = 80 + Height = 80 + Caption = '5' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton7: TSpeedButton + Left = 88 + Top = 87 + Width = 80 + Height = 80 + Caption = '6' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton8: TSpeedButton + Left = 172 + Top = 87 + Width = 80 + Height = 80 + Caption = '7' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton9: TSpeedButton + Left = 256 + Top = 87 + Width = 80 + Height = 80 + Caption = '8' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton10: TSpeedButton + Left = 340 + Top = 87 + Width = 80 + Height = 80 + Caption = '9' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -37 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton11: TSpeedButton + Tag = 9 + Left = 424 + Top = 87 + Width = 80 + Height = 80 + Caption = '.' + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -53 + Font.Name = #40657#20307 + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton1Click + end + object SpeedButton12: TSpeedButton + Left = 424 + Top = 3 + Width = 80 + Height = 80 + Caption = #8592 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -53 + Font.Name = #40657#20307 + Font.Style = [] + ParentFont = False + OnClick = SpeedButton12Click + end + object SpeedButton49: TSpeedButton + Tag = 9 + Left = 517 + Top = 88 + Width = 84 + Height = 77 + Caption = #38544#34255 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton49Click + end + object SpeedButton29: TSpeedButton + Tag = 9 + Left = 517 + Top = 6 + Width = 84 + Height = 77 + Caption = #20840#28165 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -35 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + OnClick = SpeedButton29Click + end + end + object KWName: TEdit + Left = 0 + Top = 595 + Width = 88 + Height = 29 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #26999#20307'_GB2312' + Font.Style = [fsBold] + ParentFont = False + TabOrder = 18 + Visible = False + end + object KWSel: TButton + Left = 0 + Top = 565 + Width = 87 + Height = 31 + Caption = #25176#30424#36873#25321 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 19 + Visible = False + OnClick = KWSelClick + end + object ZdyFlag: TEdit + Left = 8 + Top = 632 + Width = 57 + Height = 21 + TabOrder = 20 + Visible = False + end + object cxStyleRepository5: TcxStyleRepository + Left = 954 + Top = 65532 + object cxStyle6: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -29 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + end + object cxStyleRepository1: TcxStyleRepository + Left = 1232 + Top = 124 + object cxStyle1: TcxStyle + AssignedValues = [svColor, svFont] + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxStyle2: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Pitch = fpFixed + Font.Style = [fsBold] + TextColor = clDefault + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 598 + Top = 75 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 686 + Top = 74 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + Parameters = <> + Left = 638 + Top = 74 + end + object DataSource1: TDataSource + DataSet = Cds_Main + Left = 744 + Top = 76 + end + object Cds_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 800 + Top = 76 + end + object DataSource3: TDataSource + DataSet = CDS_XJID + Left = 1000 + Top = 670 + end + object CDS_XJID: TClientDataSet + Aggregates = <> + Params = <> + Left = 1032 + Top = 670 + end + object DataSource2: TDataSource + DataSet = CDS_XJCD + Left = 752 + Top = 670 + end + object CDS_XJCD: TClientDataSet + Aggregates = <> + Params = <> + Left = 792 + Top = 670 + end + object cxStyleRepository2: TcxStyleRepository + object cxStyle3: TcxStyle + AssignedValues = [svFont] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -15 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + end + object RMDB_Main: TRMDBDataSet + Visible = True + DataSet = ADOQueryPrint + Left = 136 + Top = 120 + end + object RM2: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + ShowPrintDialog = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 104 + Top = 120 + ReportData = {} + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_WFBProducttion.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 168 + Top = 120 + end + object DSHJ: TDataSource + DataSet = CDS_HJ + Left = 352 + Top = 550 + end + object CDS_HJ: TClientDataSet + Aggregates = <> + Params = <> + Left = 384 + Top = 550 + end +end diff --git a/艾登贸易管理/U_ZJManageNewFDMORE.pas b/艾登贸易管理/U_ZJManageNewFDMORE.pas new file mode 100644 index 0000000..a9d624a --- /dev/null +++ b/艾登贸易管理/U_ZJManageNewFDMORE.pas @@ -0,0 +1,2026 @@ +unit U_ZJManageNewFDMORE; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, StdCtrls, Buttons, ExtCtrls, cxStyles, cxCustomData, cxGraphics, + cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, cxTextEdit, + cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, + cxClasses, cxControls, cxGridCustomView, cxGrid, MovePanel, ADODB, + DBClient, ComCtrls, RM_Common, RM_Class, RM_GridReport, RM_System, + RM_Dataset; + +type + TfrmZJManageNewFDMORE = class(TForm) + MJID: TEdit; + Label1: TLabel; + Label2: TLabel; + Label3: TLabel; + Label4: TLabel; + Label5: TLabel; + Label6: TLabel; + ScrollBox1: TScrollBox; + SpeedButton13: TSpeedButton; + SpeedButton14: TSpeedButton; + SpeedButton15: TSpeedButton; + SpeedButton16: TSpeedButton; + SpeedButton17: TSpeedButton; + SpeedButton18: TSpeedButton; + SpeedButton19: TSpeedButton; + SpeedButton20: TSpeedButton; + SpeedButton21: TSpeedButton; + SpeedButton22: TSpeedButton; + SpeedButton23: TSpeedButton; + SpeedButton24: TSpeedButton; + SpeedButton25: TSpeedButton; + SpeedButton26: TSpeedButton; + SpeedButton27: TSpeedButton; + SpeedButton28: TSpeedButton; + Button1: TButton; + Button3: TButton; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + tv2CDType: TcxGridDBColumn; + tv2CDWZ: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + Tv2CDQty: TcxGridDBColumn; + Tv2CDReason: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + cxStyleRepository5: TcxStyleRepository; + cxStyle6: TcxStyle; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + cxStyle2: TcxStyle; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + Button6: TButton; + Panel6: TPanel; + Panel1: TPanel; + SmalMF1: TEdit; + SmalMF2: TEdit; + SmalMF3: TEdit; + SmalMF4: TEdit; + SmalMF5: TEdit; + SmalMF6: TEdit; + SmalMF7: TEdit; + SmalMF8: TEdit; + SmalMF9: TEdit; + SmalMF10: TEdit; + SmalMF11: TEdit; + SmalMF12: TEdit; + Panel2: TPanel; + XJLen1: TEdit; + XJLen2: TEdit; + XJLen3: TEdit; + XJLen4: TEdit; + XJLen5: TEdit; + XJLen6: TEdit; + XJLen7: TEdit; + XJLen8: TEdit; + XJLen9: TEdit; + XJLen10: TEdit; + XJLen11: TEdit; + XJLen12: TEdit; + Panel3: TPanel; + XJMaoZ1: TEdit; + XJMaoZ2: TEdit; + XJMaoZ3: TEdit; + XJMaoZ4: TEdit; + XJMaoZ5: TEdit; + XJMaoZ6: TEdit; + XJMaoZ7: TEdit; + XJMaoZ8: TEdit; + XJMaoZ9: TEdit; + XJMaoZ10: TEdit; + XJMaoZ11: TEdit; + XJMaoZ12: TEdit; + Panel4: TPanel; + Sel1: TEdit; + Sel2: TEdit; + Sel3: TEdit; + Sel4: TEdit; + Sel5: TEdit; + Sel6: TEdit; + Sel7: TEdit; + Sel8: TEdit; + Sel9: TEdit; + Sel10: TEdit; + Sel11: TEdit; + Sel12: TEdit; + ADOQueryTemp: TADOQuery; + cxGrid4: TcxGrid; + TvSel: TcxGridDBTableView; + vSelColumn1: TcxGridDBColumn; + vSelColumn4: TcxGridDBColumn; + vSelColumn6: TcxGridDBColumn; + vSelColumn5: TcxGridDBColumn; + cxGridDBColumn7: TcxGridDBColumn; + vSelColumn7: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + vSelColumn2: TcxGridDBColumn; + cxGridLevel3: TcxGridLevel; + vSelColumn3: TcxGridDBColumn; + vSelColumn8: TcxGridDBColumn; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + DataSource1: TDataSource; + Cds_Main: TClientDataSet; + Button2: TButton; + MJCDHZ: TRichEdit; + DataSource3: TDataSource; + CDS_XJID: TClientDataSet; + DataSource2: TDataSource; + CDS_XJCD: TClientDataSet; + v2Column3: TcxGridDBColumn; + v3Column1: TcxGridDBColumn; + cxStyleRepository2: TcxStyleRepository; + cxStyle3: TcxStyle; + SmalNote: TRichEdit; + Label7: TLabel; + RMDB_Main: TRMDBDataSet; + RM2: TRMGridReport; + ADOQueryPrint: TADOQuery; + MovePanel2: TMovePanel; + Label8: TLabel; + cxGrid1: TcxGrid; + TvHJ: TcxGridDBTableView; + cxGridDBColumn3: TcxGridDBColumn; + cxGridLevel4: TcxGridLevel; + DSHJ: TDataSource; + CDS_HJ: TClientDataSet; + vHJColumn1: TcxGridDBColumn; + vHJColumn2: TcxGridDBColumn; + vHJColumn3: TcxGridDBColumn; + Label9: TLabel; + HJMJID: TEdit; + Button7: TButton; + Button8: TButton; + vHJColumn4: TcxGridDBColumn; + vHJColumn5: TcxGridDBColumn; + vHJColumn6: TcxGridDBColumn; + vHJColumn7: TcxGridDBColumn; + vHJColumn8: TcxGridDBColumn; + vHJColumn9: TcxGridDBColumn; + vHJColumn10: TcxGridDBColumn; + vHJColumn11: TcxGridDBColumn; + Panel7: TPanel; + XJFree1: TEdit; + XJFree2: TEdit; + XJFree3: TEdit; + XJFree4: TEdit; + XJFree5: TEdit; + XJFree6: TEdit; + XJFree7: TEdit; + XJFree8: TEdit; + XJFree9: TEdit; + XJFree10: TEdit; + XJFree11: TEdit; + XJFree12: TEdit; + MovePanel1: TMovePanel; + Label17: TLabel; + Label18: TLabel; + Label19: TLabel; + Label20: TLabel; + Label21: TLabel; + CDBeg: TEdit; + Button4: TButton; + Button5: TButton; + CDEnd: TEdit; + Panel8: TPanel; + XjJt1: TEdit; + XjJt2: TEdit; + XjJt3: TEdit; + XjJt4: TEdit; + XjJt5: TEdit; + XjJt6: TEdit; + XjJt7: TEdit; + XjJt8: TEdit; + XjJt9: TEdit; + XjJt10: TEdit; + XjJt11: TEdit; + XjJt12: TEdit; + Label10: TLabel; + Label11: TLabel; + Label12: TLabel; + MovePanel3: TMovePanel; + Button9: TButton; + Button10: TButton; + Password: TEdit; + Label13: TLabel; + Label14: TLabel; + LenCut: TEdit; + Button11: TButton; + Button12: TButton; + Panel5: TPanel; + SpeedButton1: TSpeedButton; + SpeedButton2: TSpeedButton; + SpeedButton3: TSpeedButton; + SpeedButton4: TSpeedButton; + SpeedButton5: TSpeedButton; + SpeedButton6: TSpeedButton; + SpeedButton7: TSpeedButton; + SpeedButton8: TSpeedButton; + SpeedButton9: TSpeedButton; + SpeedButton10: TSpeedButton; + SpeedButton11: TSpeedButton; + SpeedButton12: TSpeedButton; + SpeedButton49: TSpeedButton; + SpeedButton29: TSpeedButton; + KWName: TEdit; + KWSel: TButton; + ZdyFlag: TEdit; + procedure Sel1Click(Sender: TObject); + procedure Edit64Click(Sender: TObject); + procedure SpeedButton1Click(Sender: TObject); + procedure SpeedButton12Click(Sender: TObject); + procedure SpeedButton49Click(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure XJLen1Click(Sender: TObject); + procedure MJIDKeyPress(Sender: TObject; var Key: Char); + procedure Button2Click(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure SpeedButton13Click(Sender: TObject); + procedure Button5Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button3Click(Sender: TObject); + procedure Button6Click(Sender: TObject); + procedure Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button1Click(Sender: TObject); + procedure Button8Click(Sender: TObject); + procedure Button7Click(Sender: TObject); + procedure HJMJIDKeyPress(Sender: TObject; var Key: Char); + procedure TvHJCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure Button9Click(Sender: TObject); + procedure Button10Click(Sender: TObject); + procedure PasswordClick(Sender: TObject); + procedure LenCutClick(Sender: TObject); + procedure Button11Click(Sender: TObject); + procedure Button12Click(Sender: TObject); + procedure SpeedButton29Click(Sender: TObject); + procedure KWSelClick(Sender: TObject); + private + { Private declarations } + FCDName,FPanname,PrintFlag:string; + procedure ClearSpenndHit(); + procedure VisbleControl(Panel55:TWinControl;XS:Boolean;SXCount:Integer); + function ChkEditNULL(panel55:TWinControl):Boolean; + procedure InitJP(); + procedure InitGridCD(); + procedure InitGridCDID(); + procedure ClearControl(Panel55:TWinControl;ConValue:String;SXCount:Integer); + procedure PrintData(FXJID:string;CDFlag:String); + public + { Public declarations } + end; + +var + frmZJManageNewFDMORE: TfrmZJManageNewFDMORE; + +implementation +uses +U_DataLink,U_Fun,U_ZDYHelp,U_iniParam,AES,ElAES,U_LabelPrint; + +{$R *.dfm} + +procedure TfrmZJManageNewFDMORE.Sel1Click(Sender: TObject); +begin + if Trim(TcxTextEdit(Sender).Text)='' then + begin + TcxTextEdit(Sender).Text:=''; + end else + begin + TcxTextEdit(Sender).Text:=''; + end; +end; + +procedure TfrmZJManageNewFDMORE.Edit64Click(Sender: TObject); +var + i:Integer; +begin + Panel5.Visible:=True; + with Panel5 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim(TEdit(Sender).Name); + end; + end; + end; +end; +procedure TfrmZJManageNewFDMORE.ClearSpenndHit(); +var + i:Integer; +begin + with Panel5 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=''; + end; + end; + end; +end; +procedure TfrmZJManageNewFDMORE.VisbleControl(Panel55:TWinControl;XS:Boolean;SXCount:Integer); +var + i:Integer; +begin + with Panel55 do + begin + for i:=0 to SXCount-1 do + begin + Controls[i].Visible:=XS; + end; + end; +end; +procedure TfrmZJManageNewFDMORE.ClearControl(Panel55:TWinControl;ConValue:String;SXCount:Integer); +var + i:Integer; +begin + with Panel55 do + begin + for i:=0 to SXCount-1 do + begin + TEdit(Controls[i]).Text:=ConValue; + end; + end; +end; + +procedure TfrmZJManageNewFDMORE.SpeedButton1Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TSpeedButton(Sender).Hint); + if Trim(fsj)='' then Exit; + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=fsj+Trim(TSpeedButton(Sender).Caption); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; + +procedure TfrmZJManageNewFDMORE.SpeedButton12Click(Sender: TObject); +var + fsj:string; +begin + fsj:=Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text); + if Trim(fsj)='' then Exit; + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text:=Copy(fsj,1,Length(fsj)-1); + TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll; +end; + +procedure TfrmZJManageNewFDMORE.SpeedButton49Click(Sender: TObject); +begin + Panel5.Visible:=false; +end; + +function TfrmZJManageNewFDMORE.ChkEditNULL(panel55:TWinControl):Boolean; +var + i:Integer; +begin + Result:=False; + with panel55 do + begin + for i:=0 to panel55.ControlCount-1 do + begin + if Controls[i].Visible=True then + begin + if Trim(TEdit(Controls[i]).Text)='' then + begin + Result:=False; + Break; + end else + begin + Result:=True; + end; + end; + + end; + end; + +end; + +procedure TfrmZJManageNewFDMORE.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZJManageNewFDMORE.FormDestroy(Sender: TObject); +begin + frmZJManageNewFDMORE:=nil; +end; + +procedure TfrmZJManageNewFDMORE.XJLen1Click(Sender: TObject); +var + i:Integer; +begin + if Trim(LenCut.Text)='' then + begin + if CDS_XJID.IsEmpty=False then + begin + if CDS_XJID.Locate('XJInt',TEdit(Sender).tag,[])=True then + begin + TEdit(Sender).Text:=Trim(CDS_XJID.fieldbyname(Copy(Trim(TEdit(Sender).Name),1,Length(Trim(TEdit(Sender).Name))-1)).AsString); + Panel5.Visible:=False; + Exit; + end; + end; + end; + FPanname:=Trim(Copy(Trim(TEdit(Sender).Name),1,Length(Trim(TEdit(Sender).Name))-1)); + Panel5.Visible:=True; + with Panel5 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim(TEdit(Sender).Name); + end; + end; + end; + // Panel5.Left:=Edit14.Left; + //Panel5.top:=Edit14.top+Edit14.Height; +end; + +procedure TfrmZJManageNewFDMORE.MJIDKeyPress(Sender: TObject; var Key: Char); +var + FCount,i:Integer; + FXJXH:String; +begin + if Key=#13 then + begin + KWName.Text:=''; + KWName.Hint:=''; + ZdyFlag.Text:=''; + MJID.SelectAll; + ClearControl(Panel1,'',Panel1.ControlCount); + ClearControl(Panel2,'',Panel2.ControlCount); + ClearControl(Panel3,'',Panel3.ControlCount); + Label12.Visible:=True; + Label12.Caption:=Trim(MJID.Text); + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + sql.add('select MJCDHZ=dbo.F_Get_WFBOrder_SubStr(A.MJID,''MJCDHZ''), D.*,'); + SQL.Add('A.*,C.OrderNo,B.SWFBColor,B.SWFBHW,B.WKMS,B.SWFBCode,B.SWFBCodeName,B.SubType'); + sql.add('from WFB_MJJY A inner join WFBOrder_Sub_AnPai D on A.APId=D.APId'); + sql.Add('inner join WFBOrder_Sub B on A.SubId=B.SubId'); + sql.Add('inner join WFBOrder_Main C on A.MainId=C.MainId'); + sql.Add('where A.MJID='''+Trim(MJID.Text)+''''); + sql.Add(' and A.Valie=''Y'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,Cds_Main); + SInitCDSData20(ADOQueryMain,Cds_Main); + if Cds_Main.IsEmpty then + begin + MJCDHZ.Text:=''; + InitGridCDID(); + InitGridCD(); + Label12.Visible:=False; + MJID.Text:=''; + Application.MessageBox('','ʾ',0); + Exit; + end; + MJCDHZ.Visible:=True; + MJCDHZ.Text:=Trim(Cds_Main.fieldbyname('MJCDHZ').AsString); + SmalNote.Text:=Trim(Cds_Main.fieldbyname('SmalNote').AsString); + if Cds_Main.FieldByName('SmalCount').Value<1 then + begin + Application.MessageBox('иС1','ʾ',0); + Exit; + end else + begin + FCount:=Cds_Main.FieldByName('SmalCount').Value; + VisbleControl(Panel1,False,Panel1.ControlCount); + VisbleControl(Panel2,False,Panel2.ControlCount); + VisbleControl(Panel3,False,Panel3.ControlCount); + VisbleControl(Panel4,False,Panel4.ControlCount); + VisbleControl(Panel1,True,FCount); + VisbleControl(Panel2,True,FCount); + VisbleControl(Panel3,True,FCount); + VisbleControl(Panel4,True,FCount); + VisbleControl(Panel7,True,FCount); + VisbleControl(Panel8,True,FCount); + SCSHDataCDS(Cds_Main,Panel1,0); + end; + InitGridCDID(); + InitGridCD(); + if Trim(Cds_Main.fieldbyname('SubType').AsString)='' then + begin + KWSel.Visible:=True; + KWName.Visible:=True; + end else + begin + KWSel.Visible:=False; + KWName.Visible:=False; + end; + finally + ADOQueryMain.EnableControls; + end; + MJID.Text:=''; + with Panel3 do + begin + for i:=0 to Panel3.ControlCount-1 do + begin + TEdit(Controls[i]).Hint:=''; + end; + end; + {if CDS_XJID.IsEmpty=False then + begin + with CDS_XJID do + begin + First; + while not Eof do + begin + + FXJXH:=Trim(CDS_XJID.fieldbyname('XJInt').AsString); + (FindComponent('XJLen'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJLen').AsString); + (FindComponent('XJMaoZ'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJMaoZ').AsString); + (FindComponent('XJFree'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJFree').AsString); + (FindComponent('XJJt'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJJt').AsString); + Next; + end; + end; + end; } + end; +end; + +procedure TfrmZJManageNewFDMORE.Button2Click(Sender: TObject); +begin + WriteCxGrid('ʾϢ',TvSel,'޷IJ'); + Close; +end; + +procedure TfrmZJManageNewFDMORE.FormShow(Sender: TObject); +begin + ReadCxGrid('ʾϢ',TvSel,'޷IJ'); + InitJP(); +end; + +procedure TfrmZJManageNewFDMORE.InitJP(); +var + AA:array[0..100] of string; + i,j:Integer; +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select ZDYName from KH_Zdy where Type=''WFBCDZJ'' order by ZDYNO '); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + Application.MessageBox('ûжСõ㣡','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + First; + i:=0; + while not Eof do + begin + AA[i]:=Trim(fieldbyname('ZDYName').AsString); + i:=i+1; + Next; + end; + end; + i:=i-1; + if i>17 then + begin + i:=29; + end; + for j:=0 to i do + begin + with ScrollBox1 do + begin + TSpeedButton(Controls[j]).Visible:=True; + TSpeedButton(Controls[j]).Hint:=AA[j]; + if Length(AA[j])>4 then + begin + TSpeedButton(Controls[j]).Caption:=Copy(Trim(AA[j]),1,4)+#13+Copy(Trim(AA[j]),5,Length(AA[j])-4); + end else + TSpeedButton(Controls[j]).Caption:=AA[j]; + end; + end; +end; + +procedure TfrmZJManageNewFDMORE.Button4Click(Sender: TObject); +var + i:Integer; +begin + if Trim(CDBeg.Text)='' then + begin + Application.MessageBox('λòΪգ','ʾ',0); + exit; + end; + with Panel4 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if TEdit(Controls[i]).Text='' then + begin + with CDS_XJCD do + begin + Append; + FieldByName('cdname').Value:=Trim(FCDName); + FieldByName('CDbeg').Value:=Trim(CDBeg.Text); + FieldByName('CDEnd').Value:=Trim(CDEnd.Text); + if Trim(CDEnd.Text)<>'' then + begin + FieldByName('CDQty').Value:=StrToFloat(CDEnd.Text)-StrToFloat(CDBeg.Text); + end else + begin + FieldByName('CDQty').Value:=0; + end; + FieldByName('XJInt').Value:=i+1; + Post; + end; + end; + end; + end; + CDBeg.Text:=''; + CDEnd.Text:=''; + MovePanel1.Visible:=False; +end; + +procedure TfrmZJManageNewFDMORE.SpeedButton13Click(Sender: TObject); +var + i,j:Integer; +begin + if Cds_Main.IsEmpty then Exit; + j:=0; + with Panel4 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if Controls[i].Visible=True then + begin + if TEdit(Controls[i]).Text='' then + begin + j:=9; + end; + end; + end; + end; + if j=0 then + begin + Application.MessageBox('ûѡС','ʾ',0); + Exit; + end; + FCDName:=Trim(TSpeedButton(Sender).Hint); + MovePanel1.Visible:=True; + Label21.Caption:=Trim(FCDName); + CDBeg.SetFocus; + + Panel5.Visible:=True; + with Panel5 do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint:=Trim('CDBeg'); + end; + end; + end; +end; +procedure TfrmZJManageNewFDMORE.InitGridCD(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + if Trim(CDS_XJID.fieldbyname('XJID').AsString)<>'' then + begin + sql.Add('select A.*,B.XJInt from WFB_XJJY_CD A inner join WFB_XJJY B on A.XJID=B.XJID'); + sql.Add(' where B.MJID='''+Trim(MJID.Text)+''''); + end + else + sql.Add('select A.*,B.XJInt from WFB_XJJY_CD A inner join WFB_XJJY B on A.XJID=B.XJID where 1<>1'); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_XJCD); + SInitCDSData20(ADOQueryMain,CDS_XJCD); + finally + ADOQueryMain.EnableControls; + end; +end; +procedure TfrmZJManageNewFDMORE.InitGridCDID(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_XJJY where MJID='''+Trim(MJID.Text)+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_XJID); + SInitCDSData20(ADOQueryMain,CDS_XJID); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmZJManageNewFDMORE.Button5Click(Sender: TObject); +begin + MovePanel1.Visible:=False; +end; + +procedure TfrmZJManageNewFDMORE.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if Trim(CDS_XJCD.fieldbyname('XJID').AsString)<>'' then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + CDS_XJCD.Delete; +end; + +procedure TfrmZJManageNewFDMORE.Button3Click(Sender: TObject); +var + i,j,FXJInt,CRID:Integer; + FXJSJKZ:Double; + maxno,maxnocd,MaxCkNo,MaxCkSubNo,XJBanZu,FFXJLen,FFXJMaoZ,FFXJFk,FFXJFree,FFXJJt:String; +begin + if Cds_Main.IsEmpty then Exit; + with Panel2 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if TEdit(Controls[i]).Text='' then + begin + Application.MessageBox('δȫ¼룬ܴӡ','ʾ',0); + Exit; + end; + end; + end; + with Panel3 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if TEdit(Controls[i]).Text='' then + begin + Application.MessageBox('δȫ¼룬ܴӡ','ʾ',0); + Exit; + end; + end; + end; + j:=0; + with Panel4 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if Controls[i].Visible=True then + begin + if TEdit(Controls[i]).Text='' then + begin + if j=0 then + begin + j:=9; + FXJInt:=i+1; + end + else + j:=j+1; + end; + end; + end; + end; + if j=0 then + begin + Application.MessageBox('ûѡС','ʾ',0); + Exit; + end else + if j>9 then + begin + Application.MessageBox('ѡС','ʾ',0); + Exit; + end; + if Trim(TEdit(FindComponent('XJLen'+Trim(IntToStr(FXJInt)))).Text)='' then + begin + Application.MessageBox('ȲΪգ','ʾ',0); + Exit; + end else + begin + FFXJLen:=Trim(TEdit(FindComponent('XJLen'+Trim(IntToStr(FXJInt)))).Text); + end; + if Trim(TEdit(FindComponent('XJMaoZ'+Trim(IntToStr(FXJInt)))).Text)='' then + begin + Application.MessageBox('ëزΪգ','ʾ',0); + Exit; + end else + begin + FFXJMaoZ:=Trim(TEdit(FindComponent('XJMaoZ'+Trim(IntToStr(FXJInt)))).Text); + end; + if Trim(TEdit(FindComponent('SmalMF'+Trim(IntToStr(FXJInt)))).Text)='' then + begin + Application.MessageBox('ëزΪգ','ʾ',0); + Exit; + end else + begin + FFXJFk:=Trim(TEdit(FindComponent('SmalMF'+Trim(IntToStr(FXJInt)))).Text); + end; + if Trim(TEdit(FindComponent('XJFree'+Trim(IntToStr(FXJInt)))).Text)='' then + begin + FFXJFree:='0'; + end else + begin + FFXJFree:=Trim(TEdit(FindComponent('XJFree'+Trim(IntToStr(FXJInt)))).Text); + end; + if Trim(TEdit(FindComponent('XJJt'+Trim(IntToStr(FXJInt)))).Text)='' then + begin + FFXJJt:='0'; + end else + begin + FFXJJt:=Trim(TEdit(FindComponent('XJJt'+Trim(IntToStr(FXJInt)))).Text); + end; + if Trim(LenCut.Text)='' then + begin + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_XJJY where MJID='''+Trim(Cds_Main.fieldbyname('MJID').AsString)+''''); + SQL.Add(' and XJInt='+Inttostr(FXJInt)); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + Application.MessageBox('Ѵ룬볢´ӡ','',0); + Exit; + end; + end else + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select isnull(Sum(XJLen),0) XJLen from WFB_XJJY where MJID='''+Trim(Cds_Main.fieldbyname('MJID').AsString)+''''); + SQL.Add(' and XJInt='+Inttostr(FXJInt)); + Open; + end; + if( (ADOQueryTemp.FieldByName('XJLen').Value+StrToFloat(FFXJLen)-CDS_Main.FieldByName('MJLen').Value)/(CDS_Main.FieldByName('MJLen').Value) )>0.05 then + begin + Application.MessageBox('Сܳȴĸȣ˶!','ʾ',0); + Exit; + end; + end; + FXJSJKZ:=StrToFloat(FFXJMaoZ)/(StrToFloat(FFXJLen)*StrToFloat(FFXJFk)/100)*1000; + if( (FXJSJKZ-Cds_Main.FieldByName('MJSJKZ').Value)/Cds_Main.FieldByName('MJSJKZ').Value )<-0.3 then + begin + Application.MessageBox('ݣ','ʾ',0); + Exit; + end; + if( (FXJSJKZ-Cds_Main.FieldByName('MJSJKZ').Value)/Cds_Main.FieldByName('MJSJKZ').Value )>0.3 then + begin + Application.MessageBox('ݣ','ʾ',0); + Exit; + end; + if KWName.Visible=True then + begin + if Trim(KWName.Text)='' then + begin + Application.MessageBox('̲Ϊ!','ʾ',0); + exit; + end; + end; + if Trim(LenCut.Text)<>'' then + begin + if TEdit(FindComponent('XJMaoZ'+Trim(inttostr(FXJInt)))).Hint='2' then + begin + Application.MessageBox('δȫݣܴӡ!','ʾ',0); + Exit; + end; + end; + try + ADOQueryCmd.Connection.BeginTrans; + //////////////////////////////////////////////////////////////С + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from SY_User where UserId='''+Trim(DCode)+''''); + Open; + end; + XJBanZu:=Trim(ADOQueryTemp.fieldbyname('BanZu').AsString); + if GetLSNo(ADOQueryCmd,maxno,Trim(XJFlag),'WFB_XJJY',4,1)=false then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡС쳣','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.add('select * from WFB_XJJY where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MJID').Value:=Trim(Cds_Main.fieldbyname('MJID').AsString); + FieldByName('XJID').Value:=Trim(maxno); + FieldByName('XJInt').Value:=FXJInt; + FieldByName('XJLen').Value:=StrToFloat(FFXJLen); + FieldByName('XJMaoZ').Value:=StrToFloat(FFXJMaoZ); + FieldByName('XJFK').Value:=StrToFloat(FFXJFk); + FieldByName('XJFree').Value:=StrToFloat(FFXJFree); + FieldByName('XJJt').Value:=StrToFloat(FFXJJt); + FieldByName('XJBanZu').Value:=Trim(XJBanZu); + FieldByName('JTTYpe').Value:=Trim(XJFlag); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('XJSJKZ').Value:=StrToFloat(FFXJMaoZ)/(StrToFloat(FFXJLen)*StrToFloat(FFXJFk)/100)*1000; + //FieldByName('') + Post; + end; + with CDS_XJID do + begin + Append; + FieldByName('XJID').Value:=Trim(maxno); + FieldByName('XJInt').Value:=FXJInt; + FieldByName('XJLen').Value:=StrToFloat(FFXJLen); + FieldByName('XJMaoZ').Value:=StrToFloat(FFXJMaoZ); + FieldByName('XJFK').Value:=StrToFloat(FFXJFk); + FieldByName('XJFree').Value:=StrToFloat(FFXJFree); + FieldByName('XJJt').Value:=StrToFloat(FFXJJt); + Post; + end; + //////////////////////////////////////////////////////////////С + //////////////////////////////////////////////////////////////Сõ + with CDS_XJCD do + begin + First; + while not Eof do + begin + if CDS_XJCD.FieldByName('XJInt').Value=FXJInt then + begin + if GetLSNo(ADOQueryCmd,maxnocd,'XC','WFB_XJJY_CD',5,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡСõʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from WFB_XJJY_CD where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('XJID').Value:=Trim(maxno); + FieldByName('XCID').Value:=Trim(maxnocd); + FieldByName('CDName').Value:=CDS_XJCD.fieldbyname('CDName').Value; + FieldByName('CDBeg').Value:=CDS_XJCD.fieldbyname('CDBeg').Value; + FieldByName('CDEnd').Value:=CDS_XJCD.fieldbyname('CDEnd').Value; + FieldByName('CDQty').Value:=CDS_XJCD.fieldbyname('CDQty').Value; + Post; + end; + end; + Next; + end; + end; + //////////////////////////////////////////////////////////////Сõ + //////////////////////////////////////////////////////////////浽ֿ//////////////////////////////////////////////// + if Trim(Cds_Main.fieldbyname('SubType').AsString)='' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.add('Update CK_DJCP_CRID Set CRID=CRID+1'); + sql.Add('select * from CK_DJCP_CRID'); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').Value; + if GetLSNo(ADOQueryTemp,MaxCkNo,Trim(ZdyFlag.Text),'CK_DJCP_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡ룡','ʾ',0); + Exit; + end; + if GetLSNo(ADOQueryTemp,MaxCkSubNo,'CR','CK_DJCP_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡƷֿʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_DJCP_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('OwnerMainId').Value:=Trim(Cds_Main.fieldbyname('MainId').AsString); + FieldByName('OwnerSubId').Value:=Trim(Cds_Main.fieldbyname('SubId').AsString); + FieldByName('MJID').Value:=Trim(Cds_Main.fieldbyname('MJId').AsString); + FieldByName('XJID').Value:=Trim(maxno); + FieldByName('DJID').Value:=Trim(MaxCkNo); + FieldByName('CDID').Value:=Trim(MaxCkSubNo); + FieldByName('CRTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + FieldByName('JTType').Value:=Trim(XJFlag); + FieldByName('CRID').Value:=CRID; + FieldByName('KGQty').Value:=StrToFloat(FFXJMaoZ); + FieldByName('MQty').Value:=StrToFloat(FFXJLen); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('KWCode').Value:=Trim(KWName.Hint); + FieldByName('KWName').Value:=Trim(KWName.Text); + FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_DJCP_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=CRID; + FieldByName('DJID').Value:=Trim(MaxCkNo); + FieldByName('CDID').Value:=Trim(MaxCkSubNo); + FieldByName('MJID').Value:=Trim(Cds_Main.fieldbyname('MJId').AsString); + FieldByName('XJID').Value:=Trim(maxno); + FieldByName('KCKGQty').Value:=StrToFloat(FFXJMaoZ); + FieldByName('KCMQty').Value:=StrToFloat(FFXJLen); + FieldByName('OwnerMainId').Value:=Trim(Cds_Main.fieldbyname('MainId').AsString); + FieldByName('OwnerSubId').Value:=Trim(Cds_Main.fieldbyname('SubId').AsString); + FieldByName('KWCode').Value:=Trim(KWName.Hint); + FieldByName('KWName').Value:=Trim(KWName.Text); + Post; + end; + //////////////////////////////////////////////////////////////浽Ʒֿ//////////////////////////////////////////////// + end else + begin + //////////////////////////////////////////////////////////////浽Ʒֿ//////////////////////////////////////////////// + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.add('Update CK_BanCP_CRID Set CRID=CRID+1'); + sql.Add('select * from CK_BanCP_CRID'); + Open; + end; + CRID:=ADOQueryCmd.fieldbyname('CRID').Value; + if GetLSNo(ADOQueryTemp,MaxCkNo,'JR','CK_BanCP_CR',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡƷֿʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_CR where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(Cds_Main.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(Cds_Main.fieldbyname('SubId').AsString); + FieldByName('MJID').Value:=Trim(Cds_Main.fieldbyname('MJId').AsString); + FieldByName('XJID').Value:=Trim(maxno); + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('CRTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('CRFlag').Value:=''; + FieldByName('CRType').Value:=''; + FieldByName('JTType').Value:=Trim(XJFlag); + FieldByName('CRID').Value:=CRID; + FieldByName('KGQty').Value:=StrToFloat(FFXJMaoZ); + FieldByName('MQty').Value:=StrToFloat(FFXJLen); + FieldByName('Filler').Value:=Trim(DName); + FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from CK_BanCP_KC where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('CRID').Value:=CRID; + FieldByName('BCID').Value:=Trim(MaxCkNo); + FieldByName('XJID').Value:=Trim(maxno); + FieldByName('KCKGQty').Value:=StrToFloat(FFXJMaoZ); + FieldByName('KCMQty').Value:=StrToFloat(FFXJLen); + Post; + end; + //////////////////////////////////////////////////////////////浽Ʒֿ//////////////////////////////////////////////// + end; + + ADOQueryCmd.Connection.CommitTrans; + if Trim(LenCut.Text)<>'' then + TEdit(FindComponent('XJMaoZ'+Trim(inttostr(FXJInt)))).Hint:='2'; + + PrintData(Trim(maxno),''); + + {if Trim(LenCut.Text)<>'' then + begin + TEdit(FindComponent('XJMaoZ'+Trim(inttostr(FXJInt)))).Text:=''; + end;} + //Application.MessageBox('ɹ','ʾ',0); + //MJID.SelectAll; + Exit; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('쳣','ʾ',0); + end; + +end; +procedure TfrmZJManageNewFDMORE.PrintData(FXJID:string;CDFlag:String); +var + fPrintFile,LabInt,LabName:String; +begin + if Trim(FXJID)='' then exit; + DataLink_WFBProducttion.ADOLink.Connected:=False; + DataLink_WFBProducttion.ADOLink.Connected:=True; + if Trim(CDFlag)<>'' then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_XJJY Set PrtAgnFlag=1,PrtAgnDate=getdate(),PrtAgnPerson='''+Trim(DName)+''''); + sql.Add(' where XJID='''+Trim(FXJID)+''''); + ExecSQL; + end; + end; + { with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add(' select C.LbXInt,C.LbXName from WFB_XJJY A'); + sql.Add(' inner join WFB_MJJY B on A.MJID=B.MJID'); + sql.Add(' inner join WFBOrder_Main C on B.MainId=C.MainId'); + sql.Add(' where A.XJID='''+Trim(FXJID)+''''); + Open; + end; } + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add(' select C.SLbXInt,C.SLbXName from WFB_XJJY A'); + sql.Add(' inner join WFB_MJJY B on A.MJID=B.MJID'); + sql.Add(' inner join WFBOrder_Sub C on B.SubId=C.SubId'); + sql.Add(' where A.XJID='''+Trim(FXJID)+''''); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + LabInt:=ADOQueryTemp.fieldbyname('SLbXInt').AsString; + LabName:=ADOQueryTemp.fieldbyname('SLbXName').AsString; + end ; + if Trim(LabName)='' then + begin + if Trim(Cds_Main.fieldbyname('SubType').AsString)<>'' then + begin + Application.MessageBox('Сǩδã','ʾ',0); + Exit; + end else + begin + Exit; + end; + + end; + { try + frmLabelPrint:=TfrmLabelPrint.Create(Application); + with frmLabelPrint do + begin + fLabelId:=LabInt; + FFCDFlag:=Trim(CDFlag); + fKeyNo:=Trim(FXJID); + fIsPreviewPrint:=True; + frmLabelPrint.Button1.Click; + // if ShowModal=1 then + //begin + + // end; + end; + finally + frmLabelPrint.Free; + end; } + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add('select RTrim(AA.XJID) XJID,RTrim(Cast(AA.XJSJKZ as varchar(20))) XJSJKZ,RTrim(cast(Cast(AA.XJFK*10 as int) as varchar(20))) XJFK,RTrim(B.OrderNo)+'''+Trim(CDFlag)+''' OrderNo'); + sql.Add(',Rtrim(C.SWFBColor) SWFBColor, YLPB=dbo.F_Get_WFBOrder_SubStr(C.SubId,''YLPBSZ'')'); + SQL.Add(',EngColor=(select Top 1 note from KH_Zdy where ZdyName=C.SWFBColor)'); + sql.Add(',Rtrim(Cast(AA.XJlen as varchar(20))) XJlen,Rtrim(Cast(AA.XJMaoZ as varchar(20))) XJMaoZ'); + sql.Add(',Rtrim(Cast(AA.XJFree as varchar(20))) XJFree,Rtrim(Cast( Cast(AA.XJlen*AA.XJFK/100 as int) as varchar(20))) XJPFM'); + sql.Add(',Rtrim(Cast(Cast(C.SWFBKZ as int) as varchar(20))) SWFBKZ'); + sql.Add(',Rtrim(Cast(Cast(AA.XJJt as int) as varchar(20))) XJJt'); + sql.Add(',RTrim(B.LbEngName) LbEngName'); + sql.Add(',RTrim(C.SWFBCodeName) SWFBCodeName from WFB_XJJY AA '); + sql.add(' inner join WFB_MJJY A on AA.MJID=A.MJID') ; + sql.add(' inner join WFBOrder_Main B on A.MainId=B.MainId'); + sql.Add(' inner join WFBOrder_Sub C on A.SubId=C.SubId'); + sql.Add(' where AA.XJID='''+Trim(FXJID)+''''); + Open; + end; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\'+Trim(LabName)+'.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + //RM2.ShowReport; + Rm2.PrintReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\'+Trim(LabName)+'.rmf'),'ʾ',0); + end; + DataLink_WFBProducttion.ADOLink.Connected:=False; +end; + +procedure TfrmZJManageNewFDMORE.Button6Click(Sender: TObject); +var + i,j,FXJInt:Integer; +begin + if Cds_Main.IsEmpty then Exit; + j:=0; + with Panel4 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if Controls[i].Visible=True then + begin + if TEdit(Controls[i]).Text='' then + begin + if j=0 then + begin + j:=9; + FXJInt:=i+1; + end + else + j:=j+1; + end; + end; + end; + end; + if j=0 then + begin + Application.MessageBox('ûѡС','ʾ',0); + Exit; + end else + if j>9 then + begin + Application.MessageBox('ѡС','ʾ',0); + Exit; + end; + + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_XJJY where MJID='''+Trim(Cds_Main.fieldbyname('MJId').AsString)+''''); + SQL.Add(' and XJInt='+Inttostr(FXJInt)); + Open; + end; + if ADOQueryTemp.IsEmpty=True then + begin + Application.MessageBox('δ룬´ӡ','ʾ',0); + Exit; + end; + MovePanel3.Visible:=True; + // PrintData(Trim(ADOQueryTemp.fieldbyname('XJID').AsString),'ش'); + //MJID.SelectAll; +end; + +procedure TfrmZJManageNewFDMORE.Tv3CellClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +var + FXJXH:String; +begin + FXJXH:=Trim(CDS_XJID.fieldbyname('XJInt').AsString); + (FindComponent('XJLen'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJLen').AsString); + (FindComponent('XJMaoZ'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJMaoZ').AsString); + (FindComponent('XJFree'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJFree').AsString); + (FindComponent('XJJt'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJJt').AsString); + if Trim(LenCut.Text)<>'' then + begin + (FindComponent('XJMaoZ'+FXJXH) as TEdit).Hint:='2'; + end; +end; + +procedure TfrmZJManageNewFDMORE.Button1Click(Sender: TObject); +begin + MovePanel2.Visible:=True; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,B.OrderNo,C.SWFBCode,C.SWFBCodeName,C.SWFBColor,C.WKMS,C.SWFBHW,C.SubId,C.MainId,C.SWFBKZ '); + sql.Add(',YLPB=dbo.F_Get_WFBOrder_SubStr(C.SubId,''YLPB'')'); + sql.add('from WFB_MJJY A '); + Sql.add(' inner join WFBOrder_Main B on A.MainId=B.MainId'); + Sql.add(' inner join WFBOrder_Sub C on A.SubId=C.SubId'); + sql.add('where 1<>1'); + Open; + end; + SCreateCDS20(ADOQueryTemp,CDS_HJ); + SInitCDSData20(ADOQueryTemp,CDS_HJ); +end; + +procedure TfrmZJManageNewFDMORE.Button8Click(Sender: TObject); +begin + MovePanel2.Visible:=False; +end; + +procedure TfrmZJManageNewFDMORE.Button7Click(Sender: TObject); +var + maxno,fPrintFile,maxnosub:String; + i:Double; +begin + if CDS_HJ.IsEmpty then Exit; + if Application.MessageBox('ȷҪϾ𣿺Ͼݽ޸ģ','ʾ',32+4)<>IDYES then Exit; + try + ADOQueryCmd.Connection.BeginTrans; + if GetLSNo(ADOQueryCmd,maxno,'','WFB_MJJY',2,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_MJJY where 1<>1'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MainId').Value:=Trim(CDS_HJ.fieldbyname('MainId').AsString); + FieldByName('SubId').Value:=Trim(CDS_HJ.fieldbyname('SubId').AsString); + FieldByName('APId').Value:=Trim(CDS_HJ.fieldbyname('APId').AsString); + FieldByName('MJId').Value:=Trim(maxno); + FieldByName('MJMaoZ').Value:=TvHJ.DataController.Summary.FooterSummaryValues[1]; + FieldByName('MJLen').Value:=TvHJ.DataController.Summary.FooterSummaryValues[2]; + FieldByName('MJFK').Value:=TvHJ.DataController.Summary.FooterSummaryValues[5]; + FieldByName('MJSJKZ').Value:=TvHJ.DataController.Summary.FooterSummaryValues[4]; + FieldByName('MJType').Value:='Ͼ'; + FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('Filler').Value:=Trim(DName); + + Post; + end; + i:=0; + with CDS_HJ do + begin + First; + while not Eof do + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update WFB_MJJY Set HJMJID='''+Trim(maxno)+''''); + SQL.Add(',MJType=''Ͼ'',Valie=''N'' '); + SQL.Add(' where MJID='''+Trim(CDS_HJ.fieldbyname('MJID').AsString)+''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_MJJY_CD where MJID='''+Trim(CDS_HJ.fieldbyname('MJID').AsString)+''''); + Open; + end; + with ADOQueryTemp do + begin + First; + while not Eof do + begin + if GetLSNo(ADOQueryCmd,maxnosub,'','WFB_MJJY_CD',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡСʧܣ','ʾ',0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from WFB_MJJY_CD where 1<>1'); + open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('MJID').Value:=Trim(maxno); + FieldByName('MCID').Value:=Trim(maxnosub); + FieldByName('CDBeg').Value:=ADOQueryTemp.fieldbyname('CDBeg').Value+i; + FieldByName('CDEnd').Value:=ADOQueryTemp.fieldbyname('CDEnd').Value+i; + FieldByName('CDQty').Value:=ADOQueryTemp.fieldbyname('CDQty').Value; + FieldByName('CDName').Value:=ADOQueryTemp.fieldbyname('CDName').Value; + Post; + end; + Next; + end; + end; + i:=i+CDS_HJ.FieldByName('MJLen').Value; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + with ADOQueryPrint do + begin + Close; + sql.Clear; + sql.Add(' select RTrim(A.MJID) MJID,RTrim(Cast(A.MJSJKZ As varchar(20))) MJSJKZ,RTrim(Cast(A.MJFK as varchar(20))) MJFK,RTrim(B.OrderNo) OrderNo,'); + sql.Add(' RTrim(Cast(A.MJMaoZ As varchar(20))) MJMaoZ,RTrim(Cast(A.MJLen As varchar(20))) MJLen,'); + sql.Add(' Rtrim(C.SWFBColor) SWFBColor,Rtrim(Cast(C.SWFBKZ as varchar(20))) SWFBKZ, YLPB=dbo.F_Get_WFBOrder_SubStr(C.SubId,''YLPBSZ'')'); + sql.Add(',RTrim(C.SWFBCodeName) SWFBCodeName from WFB_MJJY A inner join WFBOrder_Main B on A.MainId=B.MainId'); + sql.Add(' inner join WFBOrder_Sub C on A.SubId=C.SubId'); + sql.Add(' where A.MJID='''+Trim(maxno)+''''); + Open; + end; + fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\ĸǩ.rmf' ; + if FileExists(fPrintFile) then + begin + RM2.LoadFromFile(fPrintFile); + //RM2.ShowReport; + RM2.PrintReport; + end else + begin + Application.MessageBox(PChar('û'+ExtractFilePath(Application.ExeName)+'Report\ĸǩ.rmf'),'ʾ',0); + end; + Application.MessageBox('Ͼɹ','ʾ',0); + MovePanel2.Visible:=False; + Exit; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('Ͼ쳣','ʾ',0); + end; + +end; + +procedure TfrmZJManageNewFDMORE.HJMJIDKeyPress(Sender: TObject; var Key: Char); +begin + if Key=#13 then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.* '); + sql.add('from WFB_MJJY A '); + sql.add('where A.MJID='''+Trim(HJMJID.Text)+''''); + sql.Add(' and valie=''Y'' '); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + HJMJID.Text:=''; + Application.MessageBox('','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.* '); + sql.add('from WFB_XJJY A '); + sql.add('where A.MJID='''+Trim(HJMJID.Text)+''''); + sql.Add(' and valie=''Y'' '); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + HJMJID.Text:=''; + Application.MessageBox('˴ѷУ','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,B.OrderNo,C.SWFBCode,C.SWFBCodeName,C.SWFBColor,C.WKMS,C.SWFBHW,C.SubId,C.MainId '); + sql.Add(',YLPB=dbo.F_Get_WFBOrder_SubStr(C.SubId,''YLPB''),C.SWFBKZ'); + sql.add('from WFB_MJJY A '); + Sql.add(' inner join WFBOrder_Main B on A.MainId=B.MainId'); + Sql.add(' inner join WFBOrder_Sub C on A.SubId=C.SubId'); + sql.add('where A.MJID='''+Trim(HJMJID.Text)+''''); + sql.Add(' and A.valie=''Y'' '); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + if CDS_HJ.Locate('MJID',Trim(ADOQueryTemp.fieldbyname('MJID').AsString),[])=True then + begin + HJMJID.Text:=''; + Application.MessageBox('Ѿɨٴɨ裡','ʾ',0); + Exit; + end; + if CDS_HJ.IsEmpty=False then + begin + if CDS_HJ.Locate('SubId',Trim(ADOQueryTemp.fieldbyname('SubId').AsString),[])=False then + begin + HJMJID.Text:=''; + Application.MessageBox('ͬܺϾ','ʾ',0); + Exit; + end; + {if CDS_HJ.Locate('YLPB',Trim(ADOQueryTemp.fieldbyname('YLPB').AsString),[])=False then + begin + Application.MessageBox('ԭȲͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('SWFBCode',Trim(ADOQueryTemp.fieldbyname('SWFBCode').AsString),[])=False then + begin + Application.MessageBox('ƷŲͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('SWFBColor',Trim(ADOQueryTemp.fieldbyname('SWFBColor').AsString),[])=False then + begin + Application.MessageBox('ɫͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('SWFBHW',Trim(ADOQueryTemp.fieldbyname('SWFBHW').AsString),[])=False then + begin + Application.MessageBox('ͲͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('WKMS',Trim(ADOQueryTemp.fieldbyname('WKMS').AsString),[])=False then + begin + Application.MessageBox('ĿͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('XJFK',Trim(ADOQueryTemp.fieldbyname('XJFK').AsString),[])=False then + begin + Application.MessageBox('ͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('SWFBKZ',Trim(ADOQueryTemp.fieldbyname('SWFBKZ').AsString),[])=False then + begin + Application.MessageBox('زͬܺϾ','ʾ',0); + Exit; + end; } + end; + with CDS_HJ do + begin + Append; + FieldByName('OrderNo').Value:=ADOQueryTemp.fieldbyname('OrderNo').Value; + FieldByName('SubId').Value:=ADOQueryTemp.fieldbyname('SubId').Value; + FieldByName('APId').Value:=ADOQueryTemp.fieldbyname('APId').Value; + FieldByName('MainId').Value:=ADOQueryTemp.fieldbyname('MainId').Value; + FieldByName('YLPB').Value:=ADOQueryTemp.fieldbyname('YLPB').Value; + FieldByName('SWFBCode').Value:=ADOQueryTemp.fieldbyname('SWFBCode').Value; + FieldByName('SWFBCodeName').Value:=ADOQueryTemp.fieldbyname('SWFBCodeName').Value; + FieldByName('SWFBColor').Value:=ADOQueryTemp.fieldbyname('SWFBColor').Value; + FieldByName('WKMS').Value:=ADOQueryTemp.fieldbyname('WKMS').Value; + FieldByName('SWFBHW').Value:=ADOQueryTemp.fieldbyname('SWFBHW').Value; + FieldByName('MJID').Value:=ADOQueryTemp.fieldbyname('MJID').Value; + FieldByName('SWFBKZ').Value:=ADOQueryTemp.fieldbyname('SWFBKZ').Value; + FieldByName('MJMaoZ').Value:=ADOQueryTemp.fieldbyname('MJMaoZ').Value; + FieldByName('MJLen').Value:=ADOQueryTemp.fieldbyname('MJLen').Value; + FieldByName('MJFK').Value:=ADOQueryTemp.fieldbyname('MJFK').Value; + FieldByName('MJSJKZ').Value:=ADOQueryTemp.fieldbyname('MJSJKZ').Value; + Post; + end; + end else + begin + HJMJID.Text:=''; + Application.MessageBox('','ʾ',0); + Exit; + end; + HJMJID.Text:=''; + end; + +end; + +procedure TfrmZJManageNewFDMORE.TvHJCellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + CDS_HJ.Delete; +end; + +procedure TfrmZJManageNewFDMORE.Button9Click(Sender: TObject); +var + i,j,FXJInt:Integer; + mm,mm2:String; +begin + with ADOQueryTemp do + begin + sql.Clear; + sql.add('SELECT userid,username,password FROM SY_User WHERE userid='+''''+trim(DCode)+''''); + Open; + mm:=Trim(Fields[2].AsString); + if Trim(mm)<>'' then + mm2:=Trim(DecryptString(Trim(mm),'ljb^0122!@#*&^%$',kb128)) + else + begin + Application.MessageBox('벻Ϊգ','ʾ',0); + Exit; + end; + close; + end; + + if ( mm2=trim(Password.text) ) then + begin + with Panel4 do + begin + for i:=0 to Cds_Main.fieldbyname('SmalCount').AsInteger-1 do + begin + if Controls[i].Visible=True then + begin + if TEdit(Controls[i]).Text='' then + begin + if j=0 then + begin + j:=9; + FXJInt:=i+1; + end + else + j:=j+1; + end; + end; + end; + end; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('select * from WFB_XJJY where MJID='''+Trim(Cds_Main.fieldbyname('MJId').AsString)+''''); + SQL.Add(' and XJInt='+Inttostr(FXJInt)); + Open; + end; + if ADOQueryTemp.IsEmpty=True then + begin + Application.MessageBox('δ룬´ӡ','ʾ',0); + Exit; + end; + if ADOQueryTemp.RecordCount>1 then + begin + PrintData(Trim(CDS_XJID.fieldbyname('XJID').AsString),'ش') + end else + PrintData(Trim(ADOQueryTemp.fieldbyname('XJID').AsString),'ش'); + MovePanel3.Visible:=False; + end else + Application.MessageBox('', 'Ϣʾ', MB_OK or MB_ICONinformation); + + //MJID.SelectAll; +end; + +procedure TfrmZJManageNewFDMORE.Button10Click(Sender: TObject); +begin + MovePanel3.Visible:=False; +end; + +procedure TfrmZJManageNewFDMORE.PasswordClick(Sender: TObject); +begin + Panel5.Visible:=True; +end; + +procedure TfrmZJManageNewFDMORE.LenCutClick(Sender: TObject); +begin + if Trim(TcxTextEdit(Sender).Text)='' then + begin + TcxTextEdit(Sender).Text:=''; + end else + begin + TcxTextEdit(Sender).Text:=''; + end; +end; + +procedure TfrmZJManageNewFDMORE.Button11Click(Sender: TObject); +var + FCount,i:Integer; + FXJXH:String; +begin + //if Key=#13 then + begin + MJID.SelectAll; + ClearControl(Panel1,'',Panel1.ControlCount); + ClearControl(Panel2,'',Panel2.ControlCount); + ClearControl(Panel3,'',Panel3.ControlCount); + Label12.Visible:=True; + Label12.Caption:=Trim(MJID.Text); + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + sql.add('select MJCDHZ=dbo.F_Get_WFBOrder_SubStr(A.MJID,''MJCDHZ''), D.*,'); + SQL.Add('A.*,C.OrderNo,B.SWFBColor,B.SWFBHW,B.WKMS,B.SWFBCode,B.SWFBCodeName '); + sql.add('from WFB_MJJY A inner join WFBOrder_Sub_AnPai D on A.APId=D.APId'); + sql.Add('inner join WFBOrder_Sub B on A.SubId=B.SubId'); + sql.Add('inner join WFBOrder_Main C on A.MainId=C.MainId'); + sql.Add('where A.MJID='''+Trim(MJID.Text)+''''); + sql.Add(' and A.Valie=''Y'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,Cds_Main); + SInitCDSData20(ADOQueryMain,Cds_Main); + if Cds_Main.IsEmpty then + begin + MJCDHZ.Text:=''; + InitGridCDID(); + InitGridCD(); + Label12.Visible:=False; + MJID.Text:=''; + Application.MessageBox('','ʾ',0); + Exit; + end; + MJCDHZ.Visible:=True; + MJCDHZ.Text:=Trim(Cds_Main.fieldbyname('MJCDHZ').AsString); + SmalNote.Text:=Trim(Cds_Main.fieldbyname('SmalNote').AsString); + if Cds_Main.FieldByName('SmalCount').Value<1 then + begin + Application.MessageBox('иС1','ʾ',0); + Exit; + end else + begin + FCount:=Cds_Main.FieldByName('SmalCount').Value; + VisbleControl(Panel1,False,Panel1.ControlCount); + VisbleControl(Panel2,False,Panel2.ControlCount); + VisbleControl(Panel3,False,Panel3.ControlCount); + VisbleControl(Panel4,False,Panel4.ControlCount); + VisbleControl(Panel1,True,FCount); + VisbleControl(Panel2,True,FCount); + VisbleControl(Panel3,True,FCount); + VisbleControl(Panel4,True,FCount); + VisbleControl(Panel7,True,FCount); + VisbleControl(Panel8,True,FCount); + SCSHDataCDS(Cds_Main,Panel1,0); + end; + InitGridCDID(); + InitGridCD(); + finally + ADOQueryMain.EnableControls; + end; + MJID.Text:=''; + {if CDS_XJID.IsEmpty=False then + begin + with CDS_XJID do + begin + First; + while not Eof do + begin + + FXJXH:=Trim(CDS_XJID.fieldbyname('XJInt').AsString); + (FindComponent('XJLen'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJLen').AsString); + (FindComponent('XJMaoZ'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJMaoZ').AsString); + (FindComponent('XJFree'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJFree').AsString); + (FindComponent('XJJt'+FXJXH) as TEdit).Text:=Trim(CDS_XJID.fieldbyname('XJJt').AsString); + Next; + end; + end; + end; } + end; +end; + +procedure TfrmZJManageNewFDMORE.Button12Click(Sender: TObject); +begin + //if Key=#13 then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.* '); + sql.add('from WFB_MJJY A '); + sql.add('where A.MJID='''+Trim(HJMJID.Text)+''''); + sql.Add(' and valie=''Y'' '); + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + HJMJID.Text:=''; + Application.MessageBox('','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.* '); + sql.add('from WFB_XJJY A '); + sql.add('where A.MJID='''+Trim(HJMJID.Text)+''''); + sql.Add(' and valie=''Y'' '); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + HJMJID.Text:=''; + Application.MessageBox('˴ѷУ','ʾ',0); + Exit; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + SQL.Add('select A.*,B.OrderNo,C.SWFBCode,C.SWFBCodeName,C.SWFBColor,C.WKMS,C.SWFBHW,C.SubId,C.MainId '); + sql.Add(',YLPB=dbo.F_Get_WFBOrder_SubStr(C.SubId,''YLPB''),C.SWFBKZ'); + sql.add('from WFB_MJJY A '); + Sql.add(' inner join WFBOrder_Main B on A.MainId=B.MainId'); + Sql.add(' inner join WFBOrder_Sub C on A.SubId=C.SubId'); + sql.add('where A.MJID='''+Trim(HJMJID.Text)+''''); + sql.Add(' and A.valie=''Y'' '); + Open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + if CDS_HJ.Locate('MJID',Trim(ADOQueryTemp.fieldbyname('MJID').AsString),[])=True then + begin + HJMJID.Text:=''; + Application.MessageBox('Ѿɨٴɨ裡','ʾ',0); + Exit; + end; + if CDS_HJ.IsEmpty=False then + begin + if CDS_HJ.Locate('SubId',Trim(ADOQueryTemp.fieldbyname('SubId').AsString),[])=False then + begin + HJMJID.Text:=''; + Application.MessageBox('ͬܺϾ','ʾ',0); + Exit; + end; + {if CDS_HJ.Locate('YLPB',Trim(ADOQueryTemp.fieldbyname('YLPB').AsString),[])=False then + begin + Application.MessageBox('ԭȲͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('SWFBCode',Trim(ADOQueryTemp.fieldbyname('SWFBCode').AsString),[])=False then + begin + Application.MessageBox('ƷŲͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('SWFBColor',Trim(ADOQueryTemp.fieldbyname('SWFBColor').AsString),[])=False then + begin + Application.MessageBox('ɫͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('SWFBHW',Trim(ADOQueryTemp.fieldbyname('SWFBHW').AsString),[])=False then + begin + Application.MessageBox('ͲͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('WKMS',Trim(ADOQueryTemp.fieldbyname('WKMS').AsString),[])=False then + begin + Application.MessageBox('ĿͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('XJFK',Trim(ADOQueryTemp.fieldbyname('XJFK').AsString),[])=False then + begin + Application.MessageBox('ͬܺϾ','ʾ',0); + Exit; + end; + if CDS_HJ.Locate('SWFBKZ',Trim(ADOQueryTemp.fieldbyname('SWFBKZ').AsString),[])=False then + begin + Application.MessageBox('زͬܺϾ','ʾ',0); + Exit; + end; } + end; + with CDS_HJ do + begin + Append; + FieldByName('OrderNo').Value:=ADOQueryTemp.fieldbyname('OrderNo').Value; + FieldByName('SubId').Value:=ADOQueryTemp.fieldbyname('SubId').Value; + FieldByName('APId').Value:=ADOQueryTemp.fieldbyname('APId').Value; + FieldByName('MainId').Value:=ADOQueryTemp.fieldbyname('MainId').Value; + FieldByName('YLPB').Value:=ADOQueryTemp.fieldbyname('YLPB').Value; + FieldByName('SWFBCode').Value:=ADOQueryTemp.fieldbyname('SWFBCode').Value; + FieldByName('SWFBCodeName').Value:=ADOQueryTemp.fieldbyname('SWFBCodeName').Value; + FieldByName('SWFBColor').Value:=ADOQueryTemp.fieldbyname('SWFBColor').Value; + FieldByName('WKMS').Value:=ADOQueryTemp.fieldbyname('WKMS').Value; + FieldByName('SWFBHW').Value:=ADOQueryTemp.fieldbyname('SWFBHW').Value; + FieldByName('MJID').Value:=ADOQueryTemp.fieldbyname('MJID').Value; + FieldByName('SWFBKZ').Value:=ADOQueryTemp.fieldbyname('SWFBKZ').Value; + FieldByName('MJMaoZ').Value:=ADOQueryTemp.fieldbyname('MJMaoZ').Value; + FieldByName('MJLen').Value:=ADOQueryTemp.fieldbyname('MJLen').Value; + FieldByName('MJFK').Value:=ADOQueryTemp.fieldbyname('MJFK').Value; + FieldByName('MJSJKZ').Value:=ADOQueryTemp.fieldbyname('MJSJKZ').Value; + Post; + end; + end else + begin + HJMJID.Text:=''; + Application.MessageBox('','ʾ',0); + Exit; + end; + HJMJID.Text:=''; + end; +end; + +procedure TfrmZJManageNewFDMORE.SpeedButton29Click(Sender: TObject); +var + i:Integer; +begin + if Trim(FPanname)='XJLen' then + begin + { with Panel2 do + begin + for i:=0 to Panel2.ControlCount-1 do + begin + TEdit(Controls[i]).Text:=''; + end; + end; } + + end else + if Trim(FPanname)='XJFree' then + begin + with Panel7 do + begin + for i:=0 to Panel7.ControlCount-1 do + begin + TEdit(Controls[i]).Text:=''; + end; + end; + + end else + if Trim(FPanname)='XjJt' then + begin + with Panel8 do + begin + for i:=0 to Panel8.ControlCount-1 do + begin + TEdit(Controls[i]).Text:=''; + end; + end; + + end else + if Trim(FPanname)='XJMaoZ' then + begin + with Panel3 do + begin + for i:=0 to Panel3.ControlCount-1 do + begin + TEdit(Controls[i]).Text:=''; + TEdit(Controls[i]).Hint:=''; + end; + end; + + end; +end; + +procedure TfrmZJManageNewFDMORE.KWSelClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='KW'; + flagname:='λ'; + fnote:=True; + fZdyFlag:=True; + V1Note.Caption:=''; + V1ZdyFlag.Caption:='λ־'; + TBAdd.Visible:=False; + TBEdit.Visible:=False; + TBDel.Visible:=False; + + if ShowModal=1 then + begin + KWName.Text:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + KWName.Hint:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString); + ZdyFlag.Text:=Trim(ClientDataSet1.fieldbyname('ZdyFlag').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +end. diff --git a/艾登贸易管理/U_ZdyAttachCP.dfm b/艾登贸易管理/U_ZdyAttachCP.dfm new file mode 100644 index 0000000..64717f5 --- /dev/null +++ b/艾登贸易管理/U_ZdyAttachCP.dfm @@ -0,0 +1,380 @@ +object frmZdyAttachCP: TfrmZdyAttachCP + Left = 627 + Top = 346 + Width = 1075 + Height = 569 + Caption = #20135#21697#36164#26009#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1059 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 113 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_TradeManage.ThreeImgList + Flat = True + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 252 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + OnClick = TBDelClick + end + object ToolButton5: TToolButton + Left = 315 + Top = 0 + AutoSize = True + Caption = #25552#21462'Excel'#25968#25454 + ImageIndex = 106 + Visible = False + OnClick = ToolButton5Click + end + object ToolButton1: TToolButton + Left = 432 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 495 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1059 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 191 + Top = 13 + Width = 48 + Height = 12 + Caption = #20135#21697#21517#31216 + end + object Label1: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #20135#21697#32534#21495 + end + object Label2: TLabel + Left = 373 + Top = 13 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object ZdyName: TEdit + Tag = 2 + Left = 241 + Top = 9 + Width = 90 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 71 + Top = 9 + Width = 90 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object DEFstr5: TComboBox + Tag = 1 + Left = 398 + Top = 8 + Width = 90 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 2 + OnChange = ZdyNameChange + Items.Strings = ( + #33258#24049 + #23458#25143 + '' + '' + '' + '') + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1059 + Height = 460 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.handBlack + object v2Column2: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 89 + end + object v2Column6: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Options.Sorting = False + Width = 124 + end + object v2Column11: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column3: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column4: TcxGridDBColumn + Caption = #25104#20998 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column13: TcxGridDBColumn + Caption = #23494#24230 + DataBinding.FieldName = 'defNote2' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column9: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'DEFstr7' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column7: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'DEFstr8' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 70 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 150 + end + object v2Column14: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 60 + end + object v2Column15: TcxGridDBColumn + Caption = #25805#20316#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 80 + end + object Tv2Column1: TcxGridDBColumn + Caption = #23610#30721#32452 + DataBinding.FieldName = 'CYCM' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv2Column2: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'CYys' + HeaderAlignmentHorz = taCenter + Width = 70 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end + object OpenDialog1: TOpenDialog + Left = 936 + Top = 41 + end +end diff --git a/艾登贸易管理/U_ZdyAttachCP.pas b/艾登贸易管理/U_ZdyAttachCP.pas new file mode 100644 index 0000000..336b5a6 --- /dev/null +++ b/艾登贸易管理/U_ZdyAttachCP.pas @@ -0,0 +1,410 @@ +unit U_ZdyAttachCP; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + ComObj, Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, + ADODB, cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, + cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, 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 + FdDy = record + inc: integer; //ͻ׽־ + FDdys: string[32]; //ͻ׽ + FdDysName: string[32]; //ͻ׽ + end; + + TfrmZdyAttachCP = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + Label1: TLabel; + ZdyCode: TEdit; + ToolButton4: TToolButton; + Label2: TLabel; + DEFstr5: TComboBox; + OpenDialog1: TOpenDialog; + ToolButton5: TToolButton; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column2: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v2Column11: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column13: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column14: TcxGridDBColumn; + v2Column15: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Tv2Column1: TcxGridDBColumn; + Tv2Column2: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + private + { Private declarations } + procedure InitGrid(); + public + fkhType: string; + dFdDy: array[0..20] of FdDy; //ͻ + end; + +var + frmZdyAttachCP: TfrmZdyAttachCP; + +implementation + +uses + U_DataLink, U_Fun, U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmZdyAttachCP.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + SQL.Clear; +// sql.Add(' select * from KH_Zdy_Attachment where Type=''CP'' '); + sql.Add(' select * from KH_Zdy_Attachment A left JOIN KH_YS B on A.atid=B.atid where A.Type=''CP'' '); + // sql.Add(' and isnull(khType,'''')='+quotedstr(trim(fkhType))); + sql.Add(' order by zdyCode '); + Open; + end; + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmZdyAttachCP.FormDestroy(Sender: TObject); +begin + frmZdyAttachCP := nil; +end; + +procedure TfrmZdyAttachCP.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmZdyAttachCP.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ʒ', Tv2, 'ͻԶ'); + Close; +end; + +procedure TfrmZdyAttachCP.TBDelClick(Sender: TObject); +begin + + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString) <> '' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + ''''); + sql.Add('delete KH_Zdy where ZdyNo=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + ''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; +end; + +procedure TfrmZdyAttachCP.FormShow(Sender: TObject); +begin + ReadCxGrid('Ʒ', Tv2, 'ͻԶ'); + InitGrid(); +end; + +procedure TfrmZdyAttachCP.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachCP.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + end; +end; + +procedure TfrmZdyAttachCP.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + +procedure TfrmZdyAttachCP.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then + Exit; + TcxGridToExcel(self.Caption, cxgrid2); +// SelExportData(Tv2,ADOQueryMain,'Ʒб'); +end; + +procedure TfrmZdyAttachCP.ToolButton4Click(Sender: TObject); +begin +{ try + frmZdyAttInputCP:=TfrmZdyAttInputCP.Create(Application); + with frmZdyAttInputCP do + begin + FCYID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + fkhType:=self.fkhType; + if ShowModal=1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP.Free; + end; } +end; + +procedure TfrmZdyAttachCP.ToolButton3Click(Sender: TObject); +begin +{ try + frmZdyAttInputCP:=TfrmZdyAttInputCP.Create(Application); + with frmZdyAttInputCP do + begin + FCYID:=''; + fkhType:=self.fkhType; + if ShowModal=1 then + begin + TBRafresh.Click; + end; + end; + finally + frmZdyAttInputCP.Free; + end; } +end; + +procedure TfrmZdyAttachCP.ToolButton5Click(Sender: TObject); +var + excelApp, WorkBook: Variant; + i, j, k, ExcelRowCount: integer; + maxId: string; +begin + + try + excelApp := CreateOleObject('Excel.Application'); + openDialog1.Filter := '*.CSV;*.xls'; + if opendialog1.Execute then + begin + WorkBook := excelApp.WorkBooks.Open(OpenDialog1.FileName); + end + else + exit; + + excelApp.Visible := false; + ExcelRowCount := WorkBook.WorkSheets[1].UsedRange.Rows.Count; + except + application.MessageBox('EXCEL', 'Ϣ', MB_ICONERROR); + exit; + end; + + try + k := 0; + for i := 1 to 20 do + begin + if trim(excelApp.Cells[1, i].value) = '' then + break; + if trim(excelApp.Cells[1, i].value) = 'Ʒ' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'ZdyCode'; + dFdDy[k].FdDysName := 'Ʒ'; + end; + + if trim(excelApp.Cells[1, i].value) = 'Ʒ' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'ZdyName'; + dFdDy[k].FdDysName := 'Ʒ'; + end; + + if trim(excelApp.Cells[1, i].value) = '' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'defNote1'; + dFdDy[k].FdDysName := ''; + end; + + if trim(excelApp.Cells[1, i].value) = 'ɫ' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'DEFstr3'; + dFdDy[k].FdDysName := ''; + end; + + if trim(excelApp.Cells[1, i].value) = '' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'defNote2'; + dFdDy[k].FdDysName := ''; + end; + if trim(excelApp.Cells[1, i].value) = '' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'DEFstr5'; + dFdDy[k].FdDysName := ''; + end; + if trim(excelApp.Cells[1, i].value) = '' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'DEFstr1'; + dFdDy[k].FdDysName := ''; + end; + if trim(excelApp.Cells[1, i].value) = 'ɷ' then + begin + dFdDy[k].inc := i; + dFdDy[k].FDdys := 'DEFstr2'; + dFdDy[k].FdDysName := 'ɷ'; + end; + k := k + 1; + end; + except + end; + + ADOQueryCmd.Connection.BeginTrans; + try + for i := 2 to ExcelRowCount do + begin + if GetLSNo(ADOQueryCmd, maxId, 'AT', 'KH_Zdy_Attachment', 4, 1) = False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧܣ', 'ʾ', 0); + Exit; + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment where 1=2'); + open; + end; + ADOQueryCmd.Append; + for j := 0 to k - 1 do + begin + ADOQueryCmd.fieldbyname(dFdDy[j].FDdys).Value := excelApp.Cells[i, dFdDy[j].inc].Value; + end; + ADOQueryCmd.FieldByName('ATID').Value := Trim(maxId); + ADOQueryCmd.FieldByName('Type').Value := 'CP'; + ADOQueryCmd.FieldByName('Filler').Value := Trim(DName); + ADOQueryCmd.Post; + + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add('select * from KH_Zdy_Attachment where ATID=''' + trim(maxId) + ''' '); + open; + end; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from KH_Zdy where ZdyNo=''' + Trim(maxId) + ''''); + Open; + end; + with ADOQueryCmd do + begin + if ADOQueryCmd.IsEmpty then + begin + Append; + end + else + begin + Edit; + end; + FieldByName('ZdyNo').Value := Trim(maxId); + FieldByName('ZdyName').Value := Trim(ADOQueryTemp.fieldbyname('ZdyName').AsString); + FieldByName('Type').Value := 'CP'; + FieldByName('MainType').Value := Trim(ADOQueryTemp.fieldbyname('DEFstr5').AsString); + Post; + end; + end; + WorkBook.Close; + excelApp.Quit; + excelApp := Unassigned; + WorkBook := Unassigned; + ADOQueryCmd.Connection.CommitTrans; + InitGrid(); + except + WorkBook.Close; + excelApp.Quit; + excelApp := Unassigned; + WorkBook := Unassigned; + ADOQueryCmd.Connection.RollbackTrans; + end; +end; + +procedure TfrmZdyAttachCP.Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + if cds_Hz.IsEmpty then + exit; + ModalResult := 1; +end; + +end. + diff --git a/艾登贸易管理/U_ZdyAttachGYS.dfm b/艾登贸易管理/U_ZdyAttachGYS.dfm new file mode 100644 index 0000000..0a7d7dc --- /dev/null +++ b/艾登贸易管理/U_ZdyAttachGYS.dfm @@ -0,0 +1,336 @@ +object frmZdyAttachGYS: TfrmZdyAttachGYS + Left = 192 + Top = 103 + Width = 1038 + Height = 618 + Caption = #20379#24212#21830#36164#26009#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1022 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_TradeManage.ThreeImgList + Flat = True + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 374 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1022 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 203 + Top = 13 + Width = 60 + Height = 12 + Caption = #20379#24212#21830#21517#31216 + end + object Label1: TLabel + Left = 22 + Top = 13 + Width = 60 + Height = 12 + Caption = #20379#24212#21830#32534#21495 + end + object Label2: TLabel + Left = 395 + Top = 13 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object ZdyName: TEdit + Tag = 2 + Left = 267 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 83 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object DEFstr5: TComboBox + Tag = 1 + Left = 424 + Top = 8 + Width = 81 + Height = 20 + Style = csDropDownList + ItemHeight = 12 + TabOrder = 2 + OnChange = ZdyNameChange + Items.Strings = ( + #22383#24067 + #21152#24037#21378) + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1022 + Height = 510 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + OnDblClick = Tv2DblClick + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.handBlack + object v2Column2: TcxGridDBColumn + Caption = #20379#24212#21830#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column6: TcxGridDBColumn + Caption = #20379#24212#21830#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 124 + end + object v2Column10: TcxGridDBColumn + Caption = #32479#35745#21333#20301#21517#31216 + DataBinding.FieldName = 'zdyNameTj' + HeaderAlignmentHorz = taCenter + Width = 111 + end + object v2Column8: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Width = 77 + end + object v2Column3: TcxGridDBColumn + Caption = #30005#35805 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column4: TcxGridDBColumn + Caption = #25163#26426 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v2Column5: TcxGridDBColumn + Caption = #20256#30495 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2Column7: TcxGridDBColumn + Caption = #20844#21496#22320#22336 + DataBinding.FieldName = 'DEFNote1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v2Column9: TcxGridDBColumn + Caption = #32852#31995#20154 + DataBinding.FieldName = 'DEFstr4' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 114 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end +end diff --git a/艾登贸易管理/U_ZdyAttachGYS.pas b/艾登贸易管理/U_ZdyAttachGYS.pas new file mode 100644 index 0000000..7e6ff05 --- /dev/null +++ b/艾登贸易管理/U_ZdyAttachGYS.pas @@ -0,0 +1,214 @@ +unit U_ZdyAttachGYS; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmZdyAttachGYS = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + ToolButton4: TToolButton; + v2Column8: TcxGridDBColumn; + Label2: TLabel; + DEFstr5: TComboBox; + v2Column10: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure Tv2DblClick(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + + public + + end; + +var + frmZdyAttachGYS: TfrmZdyAttachGYS; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + + + +procedure TfrmZdyAttachGYS.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where Type=''GYS'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmZdyAttachGYS.FormDestroy(Sender: TObject); +begin + frmZdyAttachGYS:=nil; +end; + +procedure TfrmZdyAttachGYS.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttachGYS.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('Ӧ',Tv2); + Close; +end; +procedure TfrmZdyAttachGYS.TBDelClick(Sender: TObject); +begin +{ if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + sql.Add('delete KH_Zdy where ZdyNo='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete;} +end; + +procedure TfrmZdyAttachGYS.FormShow(Sender: TObject); +begin + ReadCxGrid('Ӧ',Tv2); + InitGrid(); +end; + +procedure TfrmZdyAttachGYS.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachGYS.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmZdyAttachGYS.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachGYS.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'ͻб'); +end; + +procedure TfrmZdyAttachGYS.ToolButton4Click(Sender: TObject); +begin +{ try + frmZdyAttInputGYS:=TfrmZdyAttInputGYS.Create(Application); + with frmZdyAttInputGYS do + begin + FCYID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmZdyAttInputGYS.Free; + end; } +end; + +procedure TfrmZdyAttachGYS.ToolButton3Click(Sender: TObject); +begin +{ try + frmZdyAttInputGYS:=TfrmZdyAttInputGYS.Create(Application); + with frmZdyAttInputGYS do + begin + FCYID:=''; + if ShowModal=1 then + begin + + end; + end; + finally + frmZdyAttInputGYS.Free; + end; } +end; + +procedure TfrmZdyAttachGYS.Tv2DblClick(Sender: TObject); +begin + if CDS_HZ.IsEmpty then exit; + ModalResult:=1; +end; + +end. + + diff --git a/艾登贸易管理/U_ZdyAttachGYS_help.dfm b/艾登贸易管理/U_ZdyAttachGYS_help.dfm new file mode 100644 index 0000000..305c5fe --- /dev/null +++ b/艾登贸易管理/U_ZdyAttachGYS_help.dfm @@ -0,0 +1,362 @@ +object frmZdyAttachGYS_help: TfrmZdyAttachGYS_help + Left = 238 + Top = 25 + Width = 1074 + Height = 662 + Caption = #20379#24212#21830#20449#24687 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1058 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_TradeManage.ThreeImgList + Flat = True + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1058 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 203 + Top = 13 + Width = 60 + Height = 12 + Caption = #20379#24212#21830#21517#31216 + end + object Label1: TLabel + Left = 22 + Top = 13 + Width = 60 + Height = 12 + Caption = #20379#24212#21830#32534#21495 + end + object Label2: TLabel + Left = 395 + Top = 13 + Width = 24 + Height = 12 + Caption = #31867#22411 + end + object Label4: TLabel + Left = 534 + Top = 13 + Width = 24 + Height = 12 + Caption = #22320#21306 + end + object ZdyName: TEdit + Tag = 2 + Left = 267 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 83 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object DEFStr7: TEdit + Tag = 2 + Left = 564 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 2 + OnChange = ZdyNameChange + end + object defstr5: TEdit + Tag = 2 + Left = 424 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 3 + OnChange = ZdyNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 70 + Width = 1058 + Height = 554 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + NavigatorButtons.Delete.Enabled = False + NavigatorButtons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsData.Editing = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.handBlack + object v2Column2: TcxGridDBColumn + Caption = #20379#24212#21830#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column6: TcxGridDBColumn + Caption = #20379#24212#21830#21517#31216 + DataBinding.FieldName = 'ZdyName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 124 + end + object v2Column14: TcxGridDBColumn + Caption = #32479#35745#21333#20301#21517#31216 + DataBinding.FieldName = 'ZDYNameTj' + HeaderAlignmentHorz = taCenter + Width = 147 + end + object v2Column8: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Width = 77 + end + object v2Column10: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'DEFStr6' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column11: TcxGridDBColumn + Caption = #22320#21306 + DataBinding.FieldName = 'DEFStr7' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column3: TcxGridDBColumn + Caption = #30005#35805 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column4: TcxGridDBColumn + Caption = #25163#26426 + DataBinding.FieldName = 'DEFstr2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 74 + end + object v2Column5: TcxGridDBColumn + Caption = #20256#30495 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2Column7: TcxGridDBColumn + Caption = #20844#21496#22320#22336 + DataBinding.FieldName = 'DEFNote1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 69 + end + object v2Column9: TcxGridDBColumn + Caption = #32852#31995#20154 + DataBinding.FieldName = 'DEFstr4' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 114 + end + object v2Column12: TcxGridDBColumn + Caption = #25805#20316#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column13: TcxGridDBColumn + Caption = #25805#20316#26102#38388 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Width = 80 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end + object DSsub: TDataSource + DataSet = CDSsub + Left = 656 + Top = 412 + end + object CDSsub: TClientDataSet + Aggregates = <> + Params = <> + Left = 540 + Top = 416 + end + object ADOQuerysub: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 460 + Top = 420 + end +end diff --git a/艾登贸易管理/U_ZdyAttachGYS_help.pas b/艾登贸易管理/U_ZdyAttachGYS_help.pas new file mode 100644 index 0000000..8223903 --- /dev/null +++ b/艾登贸易管理/U_ZdyAttachGYS_help.pas @@ -0,0 +1,178 @@ +unit U_ZdyAttachGYS_help; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit; + +type + TfrmZdyAttachGYS_help = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + cxGridLevel1: TcxGridLevel; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + v2Column6: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column2: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column4: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + Label1: TLabel; + ZdyCode: TEdit; + v2Column8: TcxGridDBColumn; + Label2: TLabel; + v2Column10: TcxGridDBColumn; + v2Column11: TcxGridDBColumn; + v2Column12: TcxGridDBColumn; + v2Column13: TcxGridDBColumn; + DEFStr7: TEdit; + Label4: TLabel; + v2Column14: TcxGridDBColumn; + defstr5: TEdit; + DSsub: TDataSource; + CDSsub: TClientDataSet; + ADOQuerysub: TADOQuery; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + { Private declarations } + procedure InitGrid(); + + + public + fDEFstr5:string; + end; + +var + frmZdyAttachGYS_help: TfrmZdyAttachGYS_help; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + + + + +procedure TfrmZdyAttachGYS_help.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where Type=''GYS'' '); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachGYS_help.FormDestroy(Sender: TObject); +begin + frmZdyAttachGYS_help:=nil; +end; + +procedure TfrmZdyAttachGYS_help.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttachGYS_help.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption,Tv2,'ͻԶ'); + Close; +end; +procedure TfrmZdyAttachGYS_help.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption,Tv2,'ͻԶ'); + IF trim(fDEFstr5)<>'' then + begin + DEFstr5.Text:=trim(fDEFstr5); + DEFstr5.Enabled:=false; + end; + InitGrid(); +end; + +procedure TfrmZdyAttachGYS_help.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachGYS_help.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmZdyAttachGYS_help.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachGYS_help.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + TcxGridToExcel(self.Caption,cxgrid2); +end; + +procedure TfrmZdyAttachGYS_help.Tv2CellDblClick( + Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + IF cds_hz.IsEmpty then exit; + self.ModalResult:=1; +end; + +end. + + diff --git a/艾登贸易管理/U_ZdyAttachment.dfm b/艾登贸易管理/U_ZdyAttachment.dfm new file mode 100644 index 0000000..7ca3857 --- /dev/null +++ b/艾登贸易管理/U_ZdyAttachment.dfm @@ -0,0 +1,361 @@ +object frmZdyAttachment: TfrmZdyAttachment + Left = 142 + Top = 88 + Width = 1376 + Height = 754 + Caption = #23458#25143#36164#26009#31649#29702 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + WindowState = wsMaximized + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1360 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_TradeManage.ThreeImgList + Flat = True + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + OnClick = TBRafreshClick + end + object ToolButton2: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 59 + OnClick = ToolButton2Click + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 3 + Visible = False + end + object ToolButton4: TToolButton + Left = 189 + Top = 0 + Caption = #20462#25913 + ImageIndex = 54 + Visible = False + OnClick = ToolButton4Click + end + object TBDel: TToolButton + Left = 248 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 17 + Visible = False + OnClick = TBDelClick + end + object ToolButton1: TToolButton + Left = 311 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 53 + Visible = False + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 374 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1360 + Height = 38 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 190 + Top = 13 + Width = 48 + Height = 12 + Caption = #23458#25143#21517#31216 + end + object Label1: TLabel + Left = 22 + Top = 13 + Width = 48 + Height = 12 + Caption = #23458#25143#32534#21495 + end + object Label2: TLabel + Left = 350 + Top = 13 + Width = 36 + Height = 12 + Caption = #19994#21153#21592 + end + object ZdyName: TEdit + Tag = 2 + Left = 238 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 0 + OnChange = ZdyNameChange + end + object ZdyCode: TEdit + Tag = 2 + Left = 70 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 1 + OnChange = ZdyNameChange + end + object Filler: TEdit + Tag = 2 + Left = 390 + Top = 9 + Width = 89 + Height = 20 + TabOrder = 2 + OnChange = ZdyNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 69 + Width = 1360 + Height = 646 + Align = alClient + TabOrder = 2 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.DeletingConfirmation = False + OptionsSelection.CellSelect = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.Default + object v2Column2: TcxGridDBColumn + Caption = #23458#25143#32534#21495 + DataBinding.FieldName = 'ZdyCode' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 82 + end + object v2Column6: TcxGridDBColumn + Caption = #23458#25143#21517#31216 + DataBinding.FieldName = 'ZdyName' + HeaderAlignmentHorz = taCenter + Options.Focusing = False + Width = 127 + end + object v2Column15: TcxGridDBColumn + Caption = #23458#25143#31616#31216 + DataBinding.FieldName = 'zdyNameZ' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column10: TcxGridDBColumn + Caption = #23458#25143#32852#31995#20154 + DataBinding.FieldName = 'DEFstr5' + HeaderAlignmentHorz = taCenter + Width = 71 + end + object v2Column11: TcxGridDBColumn + Caption = #31561#32423 + DataBinding.FieldName = 'DEFStr6' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2DEFStr7: TcxGridDBColumn + Caption = #22320#21306 + DataBinding.FieldName = 'DEFStr7' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column3: TcxGridDBColumn + Caption = #32852#31995#30005#35805 + DataBinding.FieldName = 'DEFstr1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 71 + end + object v2Column5: TcxGridDBColumn + Caption = #20256#30495 + DataBinding.FieldName = 'DEFstr3' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 68 + end + object v2Column7: TcxGridDBColumn + Caption = #20844#21496#22320#22336 + DataBinding.FieldName = 'DEFNote1' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 67 + end + object v2Column8: TcxGridDBColumn + Caption = #21457#36135#22320#22336 + DataBinding.FieldName = 'DEFNote2' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 72 + end + object v2Column9: TcxGridDBColumn + Caption = #32852#31995#20154 + DataBinding.FieldName = 'DEFstr4' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 73 + end + object v2Column14: TcxGridDBColumn + Caption = #27424#27454#39069#24230 + DataBinding.FieldName = 'DefFlt1' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column16: TcxGridDBColumn + Caption = #23458#25143#26469#28304 + DataBinding.FieldName = 'DEFstr9' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object v2Column12: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object v2Column13: TcxGridDBColumn + Caption = #30331#35760#26085#26399 + DataBinding.FieldName = 'FillTime' + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v2Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Width = 165 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 789 + Top = 9 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 829 + Top = 1 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 949 + Top = 225 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 864 + Top = 224 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 928 + Top = 216 + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 888 + Top = 224 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 899 + Top = 235 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 872 + Top = 224 + end +end diff --git a/艾登贸易管理/U_ZdyAttachment.pas b/艾登贸易管理/U_ZdyAttachment.pas new file mode 100644 index 0000000..d02d397 --- /dev/null +++ b/艾登贸易管理/U_ZdyAttachment.pas @@ -0,0 +1,210 @@ +unit U_ZdyAttachment; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, + StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, + cxButtonEdit, cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, + cxNavigator; + +type + TfrmZdyAttachment = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + Panel1: TPanel; + ToolButton2: TToolButton; + ADOQueryMain: TADOQuery; + ToolButton1: TToolButton; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + Label3: TLabel; + ZdyName: TEdit; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + ToolButton3: TToolButton; + Label1: TLabel; + ZdyCode: TEdit; + ToolButton4: TToolButton; + Label2: TLabel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column2: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v2Column15: TcxGridDBColumn; + v2Column10: TcxGridDBColumn; + v2Column11: TcxGridDBColumn; + v2DEFStr7: TcxGridDBColumn; + v2Column3: TcxGridDBColumn; + v2Column5: TcxGridDBColumn; + v2Column7: TcxGridDBColumn; + v2Column8: TcxGridDBColumn; + v2Column9: TcxGridDBColumn; + v2Column14: TcxGridDBColumn; + v2Column16: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v2Column12: TcxGridDBColumn; + v2Column13: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Filler: TEdit; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ZdyNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + private + { Private declarations } + procedure InitGrid(); + + public + fkhType:string; + end; + +var + frmZdyAttachment: TfrmZdyAttachment; + +implementation +uses + U_DataLink,U_Fun,U_ZDYHelp; + +{$R *.dfm} + + + +procedure TfrmZdyAttachment.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered:=False; + Close; + SQL.Clear; + sql.Add(' select * from KH_Zdy_Attachment where Type=''KHName'' '); + // sql.Add(' and isnull(khType,'''')='+quotedstr(trim(fkhType))); + if (Trim(DParameters1)<>'Ȩ') and (Trim(DParameters1)<>'ϲȨ') then + sql.Add(' and Filler='+quotedstr(trim(DName))); + Open; + end; + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + + +procedure TfrmZdyAttachment.FormDestroy(Sender: TObject); +begin + frmZdyAttachment:=nil; +end; + +procedure TfrmZdyAttachment.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TfrmZdyAttachment.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('ͻ',Tv2,'ͻԶ'); + Close; +end; +procedure TfrmZdyAttachment.TBDelClick(Sender: TObject); +begin +{ if CDS_HZ.IsEmpty then Exit; + if Application.MessageBox('ȷҪɾ','ʾ',32+4)<>IDYES then Exit; + if Trim(CDS_HZ.fieldbyname('ATID').AsString)<>'' then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete KH_Zdy_Attachment where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + sql.Add('delete KH_Zdy where ZdyNo='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+''''); + ExecSQL; + end; + end; + CDS_HZ.Delete; } +end; + +procedure TfrmZdyAttachment.FormShow(Sender: TObject); +begin + ReadCxGrid('ͻ',Tv2,'ͻԶ'); + InitGrid(); +end; + +procedure TfrmZdyAttachment.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyAttachment.ToolButton2Click(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,CDS_HZ); + SInitCDSData20(ADOQueryMain,CDS_HZ); + end; +end; + +procedure TfrmZdyAttachment.ZdyNameChange(Sender: TObject); +begin + ToolButton2.Click; +end; + + +procedure TfrmZdyAttachment.ToolButton1Click(Sender: TObject); +begin + if ADOQueryMain.IsEmpty then Exit; + SelExportData(Tv2,ADOQueryMain,'ͻб'); +end; + +procedure TfrmZdyAttachment.ToolButton4Click(Sender: TObject); +begin +{ try + frmZdyAttInput:=TfrmZdyAttInput.Create(Application); + with frmZdyAttInput do + begin + FCYID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString); + if ShowModal=1 then + begin + + end; + end; + finally + frmZdyAttInput.Free; + end; } +end; + +procedure TfrmZdyAttachment.Tv2CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if CDS_HZ.IsEmpty then exit; + ModalResult:=1; +end; + +end. + + diff --git a/艾登贸易管理/U_ZdyCMZ_Sel.dfm b/艾登贸易管理/U_ZdyCMZ_Sel.dfm new file mode 100644 index 0000000..6a69ab8 --- /dev/null +++ b/艾登贸易管理/U_ZdyCMZ_Sel.dfm @@ -0,0 +1,302 @@ +object frmZdyCMZ_Sel: TfrmZdyCMZ_Sel + Left = 340 + Top = 131 + Width = 813 + Height = 662 + Caption = #23610#30721#32452 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Panel2: TPanel + Left = 383 + Top = 31 + Width = 414 + Height = 592 + Align = alRight + Caption = 'Panel2' + TabOrder = 0 + object cxGrid1: TcxGrid + Left = 1 + Top = 1 + Width = 412 + Height = 590 + Align = alClient + TabOrder = 0 + object TV1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + DataController.DataSource = DSsub + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.handBlack + object TV1Column1: TcxGridDBColumn + OnGetDisplayText = TV1Column1GetDisplayText + HeaderAlignmentHorz = taCenter + MinWidth = 30 + Options.Editing = False + Options.Focusing = False + Options.GroupFooters = False + Options.Grouping = False + Options.HorzSizing = False + Width = 30 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #23610#30721'/'#35268#26684 + DataBinding.FieldName = 'SizeSpec' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 101 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 101 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #20851#32852#35268#26684 + DataBinding.FieldName = 'assSpec' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = cxGridDBColumn2PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 77 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TV1 + end + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 383 + Height = 592 + Align = alClient + Caption = 'Panel1' + TabOrder = 1 + object cxGrid2: TcxGrid + Left = 1 + Top = 1 + Width = 381 + Height = 590 + Align = alClient + TabOrder = 0 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + OnFocusedRecordChanged = Tv2FocusedRecordChanged + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.handBlack + object v2Column2: TcxGridDBColumn + Caption = #32534#21495 + DataBinding.FieldName = 'Code' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 80 + end + object v2Column6: TcxGridDBColumn + Caption = #23610#30721'/'#35268#26684#32452#21517#31216 + DataBinding.FieldName = 'CodeName' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 124 + end + object v2Column14: TcxGridDBColumn + Caption = #25551#36848 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 147 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 797 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_TradeManage.ThreeImgList + Flat = True + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 2 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + Visible = False + OnClick = TBRafreshClick + end + object ToolButton1: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 41 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 357 + Top = 73 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 401 + Top = 145 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 125 + Top = 169 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 320 + Top = 148 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 160 + Top = 176 + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 356 + Top = 164 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 247 + Top = 171 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 204 + Top = 172 + end + object DSsub: TDataSource + DataSet = CDSsub + Left = 512 + Top = 272 + end + object CDSsub: TClientDataSet + Aggregates = <> + Params = <> + Left = 540 + Top = 268 + end + object ADOQuerysub: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 484 + Top = 276 + end +end diff --git a/艾登贸易管理/U_ZdyCMZ_Sel.pas b/艾登贸易管理/U_ZdyCMZ_Sel.pas new file mode 100644 index 0000000..d3642bd --- /dev/null +++ b/艾登贸易管理/U_ZdyCMZ_Sel.pas @@ -0,0 +1,278 @@ +unit U_ZdyCMZ_Sel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls, + cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, + cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; + +type + TfrmZdyCMZ_Sel = class(TForm) + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + DSsub: TDataSource; + CDSsub: TClientDataSet; + ADOQuerysub: TADOQuery; + Panel2: TPanel; + cxGrid1: TcxGrid; + TV1: TcxGridDBTableView; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + Panel1: TPanel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column2: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v2Column14: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + TV1Column1: TcxGridDBColumn; + ToolButton1: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure TV1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); + procedure Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure v2Column6PropertiesEditValueChanged(Sender: TObject); + procedure cxGridDBColumn2PropertiesEditValueChanged(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + procedure InitSub(); + public + fDEFstr5: string; + end; + +var + frmZdyCMZ_Sel: TfrmZdyCMZ_Sel; + +implementation + +uses + U_DataLink, U_Fun, U_ZDYHelp; + +{$R *.dfm} + +procedure TfrmZdyCMZ_Sel.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + SQL.Clear; + sql.Add(' select mainid=cast(mainid as varchar(30)),* from CP_CMYS where Type='''' '); + Open; + end; + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmZdyCMZ_Sel.InitSub(); +begin + with ADOQuerysub do + begin + Close; + SQL.Clear; + sql.Add(' select subid=cast(subid as varchar(30)),* from CP_CMYS_Sub where Mainid=''' + cds_hz.fieldbyname('Mainid').AsString + ''' '); +// ShowMessage(sql.Text); + Open; + end; + SCreateCDS20(ADOQuerysub, CDSsub); + SInitCDSData20(ADOQuerysub, CDSsub); +end; + +procedure TfrmZdyCMZ_Sel.FormDestroy(Sender: TObject); +begin + frmZdyCMZ_Sel := nil; +end; + +procedure TfrmZdyCMZ_Sel.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmZdyCMZ_Sel.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption, Tv2, 'ͻԶ'); + Close; +end; + +procedure TfrmZdyCMZ_Sel.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption, Tv2, 'ͻԶ'); + + InitGrid(); +end; + +procedure TfrmZdyCMZ_Sel.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyCMZ_Sel.Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + if cds_hz.IsEmpty then + exit; + if CDSsub.IsEmpty then + exit; + self.ModalResult := 1; +end; + +procedure TfrmZdyCMZ_Sel.TV1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); +begin + AText := IntToStr(ARecord.Index + 1); +end; + +procedure TfrmZdyCMZ_Sel.Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + initsub(); +end; + +procedure TfrmZdyCMZ_Sel.ToolButton1Click(Sender: TObject); +begin + if cds_hz.IsEmpty then + exit; + self.ModalResult := 1; +end; + +procedure TfrmZdyCMZ_Sel.ToolButton3Click(Sender: TObject); +var + FMainid: string; +begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from CP_CMYS_Sub where 1<>1'); + Open; + + Append; + fieldbyname('Mainid').Value := CDS_HZ.fieldbyname('Mainid').AsString; + Post; + end; + + InitSub(); +end; + +procedure TfrmZdyCMZ_Sel.ToolButton2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CP_CMYS where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + sql.Add('delete CP_CMYS_Sub where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; + CDS_HZ.Delete; +end; + +procedure TfrmZdyCMZ_Sel.ToolButton4Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CP_CMYS_Sub where Subid=''' + Trim(CDSsub.fieldbyname('Subid').AsString) + ''''); + ExecSQL; + end; + CDSsub.Delete; +end; + +procedure TfrmZdyCMZ_Sel.v2Column6PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := ''; + end; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate CP_CMYS '); + sql.Add(' Set ' + FFieldName + '=' + Trim(mvalue)); + SQL.Add(' where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; +end; + +procedure TfrmZdyCMZ_Sel.cxGridDBColumn2PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := ''; + end; + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDSsub do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate CP_CMYS_sub '); + sql.Add(' Set ' + FFieldName + '=' + Trim(mvalue)); + SQL.Add(' where Subid=''' + Trim(CDSsub.fieldbyname('subid').AsString) + ''''); +// ShowMessage(sql.text); + ExecSQL; + end; +end; + +end. + diff --git a/艾登贸易管理/U_ZdyYS_Sel.dfm b/艾登贸易管理/U_ZdyYS_Sel.dfm new file mode 100644 index 0000000..385107b --- /dev/null +++ b/艾登贸易管理/U_ZdyYS_Sel.dfm @@ -0,0 +1,278 @@ +object frmZdyYS_Sel: TfrmZdyYS_Sel + Left = 1087 + Top = 274 + Width = 813 + Height = 662 + Caption = #39068#33394 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 797 + Height = 592 + Align = alClient + Caption = 'Panel1' + TabOrder = 0 + object cxGrid2: TcxGrid + Left = 1 + Top = 40 + Width = 795 + Height = 551 + Align = alClient + TabOrder = 0 + object Tv2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + OnCellDblClick = Tv2CellDblClick + OnFocusedRecordChanged = Tv2FocusedRecordChanged + DataController.DataSource = DS_HZ + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.GoToNextCellOnEnter = True + OptionsCustomize.ColumnFiltering = False + OptionsCustomize.ColumnSorting = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Inactive = DataLink_TradeManage.SHuangSe + Styles.IncSearch = DataLink_TradeManage.SHuangSe + Styles.Selection = DataLink_TradeManage.SHuangSe + Styles.Header = DataLink_TradeManage.handBlack + object Tv2Column1: TcxGridDBColumn + OnGetDisplayText = Tv2Column1GetDisplayText + MinWidth = 30 + Options.HorzSizing = False + Width = 30 + IsCaptionAssigned = True + end + object v2Column2: TcxGridDBColumn + Caption = #39068#33394#20195#21495 + DataBinding.FieldName = 'Code' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Focusing = False + Width = 80 + end + object v2Column6: TcxGridDBColumn + Caption = #39068#33394#21517#31216 + DataBinding.FieldName = 'CodeName' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 200 + end + object v2Column14: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxTextEditProperties' + Properties.OnEditValueChanged = v2Column6PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 147 + end + object Tv2Column2: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv2 + end + end + object Panel2: TPanel + Left = 1 + Top = 1 + Width = 795 + Height = 39 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 231 + Top = 13 + Width = 48 + Height = 12 + Caption = #39068#33394#21517#31216 + end + object Label1: TLabel + Left = 34 + Top = 13 + Width = 48 + Height = 12 + Caption = #39068#33394#20195#21495 + end + object CodeName: TEdit + Tag = 2 + Left = 281 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 0 + OnChange = CodeNameChange + end + object Code: TEdit + Tag = 2 + Left = 83 + Top = 9 + Width = 100 + Height = 20 + TabOrder = 1 + OnChange = CodeChange + end + object Edit1: TEdit + Tag = 2 + Left = 457 + Top = 13 + Width = 100 + Height = 20 + TabOrder = 2 + Visible = False + end + end + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 797 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + DisabledImages = DataLink_TradeManage.ThreeImgList + Flat = True + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 1 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 9 + Visible = False + OnClick = TBRafreshClick + end + object ToolButton1: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 41 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 357 + Top = 73 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 401 + Top = 145 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeManage.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 125 + Top = 169 + 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 = RMDB_Main + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 320 + Top = 148 + ReportData = {} + end + object RMDB_Main: TRMDBDataSet + Visible = True + Left = 160 + Top = 176 + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 356 + Top = 164 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 247 + Top = 171 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 204 + Top = 172 + end + object DSsub: TDataSource + DataSet = CDSsub + Left = 512 + Top = 272 + end + object CDSsub: TClientDataSet + Aggregates = <> + Params = <> + Left = 540 + Top = 268 + end + object ADOQuerysub: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 484 + Top = 276 + end +end diff --git a/艾登贸易管理/U_ZdyYS_Sel.pas b/艾登贸易管理/U_ZdyYS_Sel.pas new file mode 100644 index 0000000..5f73ea9 --- /dev/null +++ b/艾登贸易管理/U_ZdyYS_Sel.pas @@ -0,0 +1,307 @@ +unit U_ZdyYS_Sel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls, + cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls, + cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, + cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; + +type + TfrmZdyYS_Sel = class(TForm) + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + RM1: TRMGridReport; + RMDB_Main: TRMDBDataSet; + cxGridPopupMenu2: TcxGridPopupMenu; + DS_HZ: TDataSource; + CDS_HZ: TClientDataSet; + DSsub: TDataSource; + CDSsub: TClientDataSet; + ADOQuerysub: TADOQuery; + Panel1: TPanel; + cxGrid2: TcxGrid; + Tv2: TcxGridDBTableView; + v2Column2: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v2Column14: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + Tv2Column1: TcxGridDBColumn; + ToolButton1: TToolButton; + Panel2: TPanel; + Label3: TLabel; + Label1: TLabel; + CodeName: TEdit; + Code: TEdit; + Tv2Column2: TcxGridDBColumn; + Edit1: TEdit; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure TV1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); + procedure Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure v2Column6PropertiesEditValueChanged(Sender: TObject); + procedure Tv2Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); + procedure CodeChange(Sender: TObject); + procedure CodeNameChange(Sender: TObject); + private + { Private declarations } + procedure InitGrid(); + procedure InitSub(); + public + fDEFstr5: string; + end; + +var + frmZdyYS_Sel: TfrmZdyYS_Sel; + +implementation + +uses + U_DataLink, U_Fun, U_ZDYHelp; //, U_ZdyAttInputGYS, U_ZdyAttachCP10_help + +{$R *.dfm} + +procedure TfrmZdyYS_Sel.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + SQL.Clear; + sql.Add(' select mainid=cast(mainid as varchar(30)),* from CP_CMYS where Type=''ɫ'' '); + Open; + end; + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmZdyYS_Sel.InitSub(); +begin + with ADOQuerysub do + begin + Close; + SQL.Clear; + sql.Add(' select subid=cast(subid as varchar(30)),* from CP_CMYS_Sub where Mainid=''' + cds_hz.fieldbyname('Mainid').AsString + ''' '); +// ShowMessage(sql.Text); + Open; + end; + SCreateCDS20(ADOQuerysub, CDSsub); + SInitCDSData20(ADOQuerysub, CDSsub); +end; + +procedure TfrmZdyYS_Sel.FormDestroy(Sender: TObject); +begin + frmZdyYS_Sel := nil; +end; + +procedure TfrmZdyYS_Sel.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmZdyYS_Sel.TBCloseClick(Sender: TObject); +begin + WriteCxGrid(self.Caption, Tv2, 'ͻԶ'); + Close; +end; + +procedure TfrmZdyYS_Sel.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption, Tv2, 'ͻԶ'); + + InitGrid(); +end; + +procedure TfrmZdyYS_Sel.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmZdyYS_Sel.Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + if cds_hz.IsEmpty then + exit; + self.ModalResult := 1; +end; + +procedure TfrmZdyYS_Sel.TV1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); +begin + AText := IntToStr(ARecord.Index + 1); +end; + +procedure TfrmZdyYS_Sel.Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + initsub(); +end; + +procedure TfrmZdyYS_Sel.ToolButton1Click(Sender: TObject); +var + Maxno, x, y: string; +begin + if cds_hz.IsEmpty then + exit; + try + CDS_HZ.DisableControls; + ADOQueryCmd.Connection.BeginTrans; + with CDS_HZ do + begin + First; + while not Eof do + begin + if CDS_HZ.FieldByName('SSel').AsBoolean then + begin + x := CDS_HZ.FieldByName('CodeName').AsString; + if y = '' then + begin + y := x; + end + else + begin + y := y + ',' + x; + end; + + end; + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + CDS_HZ.EnableControls; + except + ADOQueryCmd.Connection.RollbackTrans; + CDS_HZ.EnableControls; + end; + Edit1.Text := Trim(y); + self.ModalResult := 1; +end; + +procedure TfrmZdyYS_Sel.ToolButton3Click(Sender: TObject); +var + FMainid: string; +begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from CP_CMYS_Sub where 1<>1'); + Open; + + Append; + fieldbyname('Mainid').Value := CDS_HZ.fieldbyname('Mainid').AsString; + Post; + end; + + InitSub(); +end; + +procedure TfrmZdyYS_Sel.ToolButton2Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾɫ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CP_CMYS where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; + CDS_HZ.Delete; +end; + +procedure TfrmZdyYS_Sel.ToolButton4Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('delete CP_CMYS_Sub where Subid=''' + Trim(CDSsub.fieldbyname('Subid').AsString) + ''''); + ExecSQL; + end; + CDSsub.Delete; +end; + +procedure TfrmZdyYS_Sel.v2Column6PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + mvalue := TcxTextEdit(Sender).EditingText; + if Trim(mvalue) = '' then + begin + mvalue := ''; + end; + FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_HZ do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('UPdate CP_CMYS '); + sql.Add(' Set ' + FFieldName + '=' + Trim(mvalue)); + SQL.Add(' where Mainid=''' + Trim(CDS_HZ.fieldbyname('Mainid').AsString) + ''''); + ExecSQL; + end; +end; + +procedure TfrmZdyYS_Sel.Tv2Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord; var AText: string); +begin + AText := IntToStr(ARecord.Index + 1) +end; + +procedure TfrmZdyYS_Sel.CodeChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel2, 1, 2)); + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + end; +end; + +procedure TfrmZdyYS_Sel.CodeNameChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel2, 1, 2)); + SCreateCDS20(ADOQueryMain, CDS_HZ); + SInitCDSData20(ADOQueryMain, CDS_HZ); + end; +end; + +end. + diff --git a/艾登贸易管理/U_iniParam.pas b/艾登贸易管理/U_iniParam.pas new file mode 100644 index 0000000..6586ee2 --- /dev/null +++ b/艾登贸易管理/U_iniParam.pas @@ -0,0 +1,74 @@ + +unit U_iniParam; + +interface +uses + IniFiles,SysUtils; +var + Filename:string; //ļ + iParam2:integer; + bParam1:Boolean; + bParam2:Boolean; + SCXFlag:String; // ݴ˱־ȡǰ׺ ܰĸ 1,2 + SCXCount:String; //̨ + PortNoStr:string;//˿ں + DllName:string;//˿Dllļ + ISJCX:string; + JCYPORT:string; + JCYDLL:string; + Function IsINIFile():Boolean; //жInIļǷ + procedure ReadINIFile(); + procedure WriteINIFile(); +implementation +/////////////////////////////////////////////////////////////////// + //ȡiniļò + // +//////////////////////////////////////////////////////////////////// +procedure ReadINIFile(); +var + programIni:Tinifile; //ļ +begin + FileName:=ExtractFilePath(Paramstr(0))+'File.INI'; + programIni:=Tinifile.create(FileName); + SCXFlag:=programIni.ReadString('','̨־','1'); + SCXCount:=programIni.ReadString('','̨','1'); + PortNoStr:=programIni.ReadString('','˿ں','com1'); + DllName:=programIni.ReadString('','˿Dllļ','JZCRS323C.DLL'); + ISJCX:= programIni.ReadString('','Ƿ','0'); + // JCYPORT:=programIni.ReadString('','˿ں','com1'); + JCYDLL:=programIni.ReadString('','Dllļ','JCYData.DLL'); + programIni.Free; +end; +////////////////////////////////////////////////////////////////// + //дϢINIļ + // +////////////////////////////////////////////////////////////////// +procedure WriteINIFile(); +var + programIni:Tinifile; //ļ +begin + FileName:=ExtractFilePath(Paramstr(0))+'File.INI'; + JCYDLL:='JCYData.DLL'; + programIni:=Tinifile.create(FileName); + programIni.WriteString('','̨־',SCXFlag); + programIni.WriteString('','̨',SCXCount); + programIni.WriteString('','˿ں',PortNoStr); + programIni.WriteString('','˿Dllļ',DllName); + programIni.WriteString('','Ƿ',ISJCX); + // programIni.WriteString('','˿ں',JCYPORT); + programIni.WriteString('','Dllļ',JCYDLL); + programIni.Free; +end; +////////////////////////////////////////////////////////////////// + //жInIļǷ +////////////////////////////////////////////////////////////////// + Function IsINIFile():Boolean; + begin + FileName:=ExtractFilePath(Paramstr(0))+'File.INI'; + if FileExists(FileName) then + Result:=true + else + Result:=false; + end; + +end. diff --git a/艾登贸易管理/U_orderInPut_HYWT_Sub.dfm b/艾登贸易管理/U_orderInPut_HYWT_Sub.dfm new file mode 100644 index 0000000..c5b51a0 --- /dev/null +++ b/艾登贸易管理/U_orderInPut_HYWT_Sub.dfm @@ -0,0 +1,906 @@ +object FrmOrderInPut_HYWT_Sub: TFrmOrderInPut_HYWT_Sub + Left = 187 + Top = 101 + Width = 1145 + Height = 640 + Caption = #36135#36816#22996#25176#20449#24687 + 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 + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1137 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clBtnFace + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 14 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 31 + Width = 1137 + Height = 271 + Align = alTop + BevelOuter = bvLowered + TabOrder = 1 + object Label1: TLabel + Left = 32 + Top = 20 + Width = 65 + Height = 12 + Caption = #22996#25176#21333#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label2: TLabel + Left = 441 + Top = 45 + Width = 65 + Height = 12 + Caption = #32463#33829#21333#20301#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label3: TLabel + Left = 32 + Top = 45 + Width = 66 + Height = 12 + Caption = #21457' '#36135' '#20154#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label4: TLabel + Left = 32 + Top = 70 + Width = 66 + Height = 12 + Caption = #25910' '#36135' '#20154#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 32 + Top = 96 + Width = 66 + Height = 12 + Caption = #36890' '#30693' '#20154#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label6: TLabel + Left = 646 + Top = 20 + Width = 66 + Height = 12 + Caption = #21512' '#21516' '#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label7: TLabel + Left = 240 + Top = 45 + Width = 62 + Height = 12 + Caption = 'PO# '#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label8: TLabel + Left = 238 + Top = 70 + Width = 65 + Height = 12 + Caption = #20449#29992#35777#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label9: TLabel + Left = 238 + Top = 96 + Width = 65 + Height = 12 + Caption = #25552#21333#20221#25968#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label10: TLabel + Left = 441 + Top = 96 + Width = 67 + Height = 12 + Caption = #27491' '#26412#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label11: TLabel + Left = 645 + Top = 96 + Width = 67 + Height = 12 + Caption = #38468' '#26412#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label12: TLabel + Left = 32 + Top = 123 + Width = 65 + Height = 12 + Caption = #36816#36153#20184#33267#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label13: TLabel + Left = 645 + Top = 45 + Width = 67 + Height = 12 + Caption = #33337' '#21517#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label14: TLabel + Left = 238 + Top = 177 + Width = 65 + Height = 12 + Caption = #35013#36816#26399#38480#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label15: TLabel + Left = 441 + Top = 123 + Width = 66 + Height = 12 + Caption = #30446' '#30340' '#28207#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label16: TLabel + Left = 647 + Top = 123 + Width = 65 + Height = 12 + Caption = #20986#21475#21475#23736#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label17: TLabel + Left = 645 + Top = 70 + Width = 67 + Height = 12 + Caption = #33322' '#27425#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label18: TLabel + Left = 443 + Top = 70 + Width = 62 + Height = 12 + Caption = 'B/L No '#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label19: TLabel + Left = 239 + Top = 150 + Width = 65 + Height = 12 + Caption = #26377#25928#26399#38480#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label20: TLabel + Left = 32 + Top = 177 + Width = 91 + Height = 12 + Caption = #36135#29289#22791#22949#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label21: TLabel + Left = 32 + Top = 150 + Width = 65 + Height = 12 + Caption = #35013#31665#26085#26399#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label22: TLabel + Left = 441 + Top = 150 + Width = 65 + Height = 12 + Caption = #35013#31665#22320#28857#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label23: TLabel + Left = 441 + Top = 177 + Width = 65 + Height = 12 + Caption = #25910#36135#22320#22336#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label24: TLabel + Left = 32 + Top = 200 + Width = 65 + Height = 12 + Caption = #27880#24847#20107#39033#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label25: TLabel + Left = 441 + Top = 20 + Width = 65 + Height = 12 + Caption = #25351#31034#21333#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label26: TLabel + Left = 237 + Top = 20 + Width = 65 + Height = 12 + Caption = #20986#36816#21333#21495#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object goodsdate: TDateTimePicker + Tag = 2 + Left = 121 + Top = 173 + Width = 96 + Height = 20 + Date = 41962.666178923610000000 + Time = 41962.666178923610000000 + TabOrder = 16 + end + object WTNo: TEdit + Tag = 2 + Left = 97 + Top = 16 + Width = 121 + Height = 20 + TabOrder = 0 + end + object conNo: TEdit + Tag = 2 + Left = 712 + Top = 16 + Width = 120 + Height = 20 + TabOrder = 1 + end + object original: TEdit + Tag = 2 + Left = 506 + Top = 92 + Width = 121 + Height = 20 + TabOrder = 2 + end + object Attached: TEdit + Tag = 2 + Left = 714 + Top = 92 + Width = 120 + Height = 20 + TabOrder = 3 + end + object TDNum: TEdit + Tag = 2 + Left = 303 + Top = 92 + Width = 121 + Height = 20 + TabOrder = 4 + end + object Payaddress: TBtnEditA + Tag = 2 + Left = 97 + Top = 119 + Width = 327 + Height = 20 + TabOrder = 5 + OnBtnClick = PayaddressBtnClick + end + object CustomerNoName: TBtnEditA + Tag = 2 + Left = 506 + Top = 41 + Width = 122 + Height = 20 + TabOrder = 6 + OnBtnClick = CustomerNoNameBtnClick + end + object Export: TBtnEditA + Tag = 2 + Left = 713 + Top = 119 + Width = 121 + Height = 20 + TabOrder = 7 + OnBtnClick = ExportBtnClick + end + object POD: TBtnEditA + Tag = 2 + Left = 506 + Top = 119 + Width = 123 + Height = 20 + TabOrder = 8 + OnBtnClick = PODBtnClick + end + object shiptime: TDateTimePicker + Tag = 2 + Left = 304 + Top = 173 + Width = 121 + Height = 20 + Date = 41962.666178923610000000 + Time = 41962.666178923610000000 + TabOrder = 9 + end + object voy: TBtnEditA + Tag = 2 + Left = 713 + Top = 66 + Width = 121 + Height = 20 + TabOrder = 10 + OnBtnClick = voyBtnClick + end + object vessel: TBtnEditA + Tag = 2 + Left = 713 + Top = 41 + Width = 121 + Height = 20 + TabOrder = 11 + OnBtnClick = vesselBtnClick + end + object BLNo: TEdit + Tag = 2 + Left = 506 + Top = 66 + Width = 121 + Height = 20 + TabOrder = 12 + end + object Validtime: TDateTimePicker + Tag = 2 + Left = 305 + Top = 146 + Width = 121 + Height = 20 + Date = 41962.666178923610000000 + Time = 41962.666178923610000000 + TabOrder = 13 + end + object ifFP: TCheckBox + Left = 848 + Top = 16 + Width = 97 + Height = 17 + Caption = #26159#21542#20998#25209 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 14 + end + object ifZY: TCheckBox + Left = 848 + Top = 42 + Width = 97 + Height = 17 + Caption = #26159#21542#36716#36816 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 15 + end + object DLYDate: TDateTimePicker + Tag = 2 + Left = 97 + Top = 146 + Width = 121 + Height = 20 + Date = 41962.666178923610000000 + Time = 41962.666178923610000000 + TabOrder = 17 + end + object conDefstr1: TBtnEditA + Tag = 2 + Left = 508 + Top = 173 + Width = 326 + Height = 20 + TabOrder = 18 + OnBtnClick = conDefstr1BtnClick + end + object XYNO: TEdit + Tag = 2 + Left = 303 + Top = 66 + Width = 121 + Height = 20 + TabOrder = 19 + end + object DLYaddress: TBtnEditA + Tag = 2 + Left = 508 + Top = 146 + Width = 326 + Height = 20 + TabOrder = 20 + OnBtnClick = DLYaddressBtnClick + end + object MPRTBZNote: TMemo + Tag = 2 + Left = 97 + Top = 200 + Width = 737 + Height = 60 + ScrollBars = ssVertical + TabOrder = 21 + OnDblClick = MPRTBZNoteDblClick + end + object orddefstr1: TEdit + Tag = 2 + Left = 97 + Top = 41 + Width = 121 + Height = 20 + TabOrder = 22 + end + object ConPerson2: TEdit + Tag = 2 + Left = 97 + Top = 92 + Width = 121 + Height = 20 + TabOrder = 23 + end + object ConPerson1: TEdit + Tag = 2 + Left = 97 + Top = 66 + Width = 121 + Height = 20 + TabOrder = 24 + end + object orderNo: TBtnEditA + Tag = 2 + Left = 506 + Top = 16 + Width = 122 + Height = 20 + TabOrder = 25 + OnBtnClick = orderNoBtnClick + end + object KHConNo: TEdit + Tag = 2 + Left = 303 + Top = 41 + Width = 120 + Height = 20 + TabOrder = 26 + end + object CYNO: TBtnEditA + Left = 303 + Top = 16 + Width = 122 + Height = 20 + TabOrder = 27 + OnBtnClick = CYNOBtnClick + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 333 + Width = 1137 + Height = 252 + Align = alTop + TabOrder = 2 + object TV1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = V1SordQty3 + end + item + Kind = skSum + Column = V1SordQty1 + end + item + Kind = skSum + Column = V1SordQty4 + end + item + Kind = skSum + Column = V1SordQty2 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + object V1XHNO: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'XHNO' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 60 + end + object V1PRTCode: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'PRTCode' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object V1PRTCodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'PRTCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object V1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'PRTColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object V1PRTspec: TcxGridDBColumn + Caption = #20135#21697#35268#26684 + DataBinding.FieldName = 'PRTspec' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1SordQty3: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'SordQty3' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 68 + end + object V1OrderUnit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'OrderUnit' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 68 + end + object V1PRTprice: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'PRTprice' + HeaderAlignmentHorz = taCenter + Styles.Content = DataLink_TradeManage.FontBlue + Styles.Footer = DataLink_TradeManage.FontBlue + Styles.Header = DataLink_TradeManage.FontBlue + Width = 60 + end + object V1BJNO: TcxGridDBColumn + Caption = #26631#35760#21495#30721 + DataBinding.FieldName = 'BJNO' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1SordQty1: TcxGridDBColumn + Caption = #20214#25968 + DataBinding.FieldName = 'SordQty1' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1BGType: TcxGridDBColumn + Caption = #21253#35013#24335#26679 + DataBinding.FieldName = 'BGType' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = V1BGTypePropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1GoodsNo: TcxGridDBColumn + Caption = #36135#21495 + DataBinding.FieldName = 'GoodsNo' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1SordQty2: TcxGridDBColumn + Caption = #23610#30721 + DataBinding.FieldName = 'SordQty2' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FontBlue + Width = 70 + end + object V1SordQty4: TcxGridDBColumn + Caption = #27611#37325 + DataBinding.FieldName = 'SordQty4' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.FontBlue + Width = 70 + end + object V1SOrdDefNote3: TcxGridDBColumn + Caption = #25104#20132#26465#20214 + DataBinding.FieldName = 'SOrdDefNote3' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = V1SordQty1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 70 + end + object V1SOrdDefNote1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'SOrdDefNote1' + HeaderAlignmentHorz = taCenter + Styles.Header = DataLink_TradeManage.Default + Width = 100 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = TV1 + end + end + object ToolBar2: TToolBar + Left = 0 + Top = 302 + Width = 1137 + Height = 31 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clBtnFace + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeManage.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 3 + object Tadd: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 103 + OnClick = TaddClick + end + object TDEL: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 107 + OnClick = TDELClick + end + end + object ADOQueryTmp: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 348 + Top = 364 + end + object order_Sub: TClientDataSet + Aggregates = <> + Params = <> + Left = 388 + Top = 364 + end + object DataSource1: TDataSource + DataSet = order_Sub + Left = 424 + Top = 364 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeManage.ADOLink + Parameters = <> + Left = 464 + Top = 364 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 508 + Top = 364 + end +end diff --git a/艾登贸易管理/U_orderInPut_HYWT_Sub.pas b/艾登贸易管理/U_orderInPut_HYWT_Sub.pas new file mode 100644 index 0000000..4906f25 --- /dev/null +++ b/艾登贸易管理/U_orderInPut_HYWT_Sub.pas @@ -0,0 +1,714 @@ +unit U_orderInPut_HYWT_Sub; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ToolWin, ComCtrls, ExtCtrls, StdCtrls, BtnEdit, cxStyles, + cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, + cxDBData, cxGridLevel, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, + DBClient, ADODB, cxButtonEdit, cxGridCustomPopupMenu, cxGridPopupMenu; + +type + TFrmOrderInPut_HYWT_Sub = class(TForm) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + Label2: TLabel; + Label3: TLabel; + Label4: TLabel; + Label5: TLabel; + Label6: TLabel; + conNo: TEdit; + Label7: TLabel; + Label8: TLabel; + Label9: TLabel; + Label10: TLabel; + original: TEdit; + Label11: TLabel; + Attached: TEdit; + Label12: TLabel; + TDNum: TEdit; + Payaddress: TBtnEditA; + CustomerNoName: TBtnEditA; + Export: TBtnEditA; + Label13: TLabel; + Label14: TLabel; + Label15: TLabel; + Label16: TLabel; + POD: TBtnEditA; + shiptime: TDateTimePicker; + Label17: TLabel; + voy: TBtnEditA; + vessel: TBtnEditA; + Label18: TLabel; + BLNo: TEdit; + Label19: TLabel; + Validtime: TDateTimePicker; + ifFP: TCheckBox; + ifZY: TCheckBox; + Label20: TLabel; + goodsdate: TDateTimePicker; + Label21: TLabel; + DLYDate: TDateTimePicker; + Label22: TLabel; + cxGrid1: TcxGrid; + TV1: TcxGridDBTableView; + V1BJNO: TcxGridDBColumn; + V1SordQty1: TcxGridDBColumn; + V1BGType: TcxGridDBColumn; + V1PRTspec: TcxGridDBColumn; + V1GoodsNo: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + ToolBar2: TToolBar; + Tadd: TToolButton; + TDEL: TToolButton; + WTNo: TEdit; + Label23: TLabel; + conDefstr1: TBtnEditA; + V1SordQty2: TcxGridDBColumn; + V1SordQty4: TcxGridDBColumn; + V1SOrdDefNote3: TcxGridDBColumn; + V1SOrdDefNote1: TcxGridDBColumn; + ADOQueryTmp: TADOQuery; + order_Sub: TClientDataSet; + DataSource1: TDataSource; + ADOQueryCmd: TADOQuery; + XYNO: TEdit; + DLYaddress: TBtnEditA; + Label24: TLabel; + MPRTBZNote: TMemo; + orddefstr1: TEdit; + ConPerson2: TEdit; + ConPerson1: TEdit; + Label25: TLabel; + orderNo: TBtnEditA; + KHConNo: TEdit; + V1PRTCode: TcxGridDBColumn; + V1PRTCodeName: TcxGridDBColumn; + V1PRTColor: TcxGridDBColumn; + V1OrderUnit: TcxGridDBColumn; + V1SordQty3: TcxGridDBColumn; + V1XHNO: TcxGridDBColumn; + V1PRTprice: TcxGridDBColumn; + cxGridPopupMenu1: TcxGridPopupMenu; + Label26: TLabel; + CYNO: TBtnEditA; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure FormDestroy(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TaddClick(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure CustomerNoNameBtnClick(Sender: TObject); + procedure V1BGTypePropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure V1SordQty1PropertiesButtonClick(Sender: TObject; + AButtonIndex: Integer); + procedure PayaddressBtnClick(Sender: TObject); + procedure vesselBtnClick(Sender: TObject); + procedure DLYaddressBtnClick(Sender: TObject); + procedure conDefstr1BtnClick(Sender: TObject); + procedure voyBtnClick(Sender: TObject); + procedure ExportBtnClick(Sender: TObject); + procedure PODBtnClick(Sender: TObject); + procedure MPRTBZNoteDblClick(Sender: TObject); + procedure TDELClick(Sender: TObject); + procedure CYNOBtnClick(Sender: TObject); + procedure orderNoBtnClick(Sender: TObject); + private + procedure initdata(); + procedure savedata(); + { Private declarations } + public + FMainId: string; + { Public declarations } + end; + +var + FrmOrderInPut_HYWT_Sub: TFrmOrderInPut_HYWT_Sub; + +implementation + +Uses U_DataLink,U_Fun, U_ZDYHelp, U_ZDYHelpSel, U_ProductOrderListSel, + U_ProductOrderNewList_CY_Sel; + +{$R *.dfm} + +procedure TFrmOrderInPut_HYWT_Sub.savedata(); +var FSubid: string; +begin + try + ADOQueryCmd.Connection.BeginTrans; + if Trim(FMainId)='' then + begin + if GetLSNo(ADOQueryCmd,FMainid,'HY','JYOrderWT_Main',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡʧ!','ʾ',0); + Exit; + end; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from JYOrderWT_Main where MainId='''+Trim(FMainId)+''''); + Open; + if IsEmpty then + begin + Append; + FieldByName('filler').AsString:=Trim(DName); + FieldByName('filltime').AsDateTime:=SGetServerDateTime(ADOQueryTmp); + end + else + begin + Edit; + end; + FieldByName('MainId').Value:=Trim(FMainid); + SSetsaveSqlNew(ADOQueryCmd,'JYOrderWT_Main',Panel1,2); + FieldByName('status').AsString:=''; + if ifFP.Checked=True then + begin + FieldByName('ifFp').AsString:='T'; + end + else + begin + FieldByName('ifFp').AsString:='F'; + end; + if ifzy.Checked=True then + begin + FieldByName('ifzy').AsString:='T'; + end + else + begin + FieldByName('ifzy').AsString:='F'; + end; + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from JYOrderWT_Main where WTNO='''+Trim(WTNO.Text)+''''); + Open; + end; + if ADOQueryCmd.RecordCount>1 then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ίеظ!','ʾ'); + Exit; + end; + with Order_Sub do + begin + First; + while not Eof do + begin + if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then + begin + if GetLSNo(ADOQueryCmd,FSubid,'HY','JYOrderWT_Sub',4,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ȡˮʧܣ','ʾ',0); + Exit; + end; + end else + begin + FSubid:=Trim(Order_Sub.fieldbyname('SubId').AsString); + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrderWT_Sub where MainId='''+Trim(FMainId)+''''); + sql.Add(' and SubId='''+Trim(FSubid)+''''); + Open; + if IsEmpty then + Append + else + Edit; + FieldByName('MainId').Value:=Trim(FMainId); + FieldByName('SubId').Value:=Trim(FSubid); + RTSetSaveDataCDS(ADOQueryCmd,Tv1,Order_Sub,'JYOrderWT_Sub',0); + fieldbyname('SordQty1').Value:=Order_Sub.fieldbyname('SordQty1').AsFloat; + fieldbyname('SordQty2').Value:=Order_Sub.fieldbyname('SordQty2').AsFloat; + fieldbyname('SordQty3').Value:=Order_Sub.fieldbyname('SordQty3').AsFloat; + fieldbyname('SordQty4').Value:=Order_Sub.fieldbyname('SordQty4').AsFloat; + fieldbyname('PRTprice').Value:=Order_Sub.fieldbyname('PRTprice').AsFloat; + fieldbyname('Money').Value:=Order_Sub.fieldbyname('Money').AsFloat; + Post; + end; + Order_Sub.Edit; + Order_Sub.FieldByName('SubId').Value:=Trim(FSubid); + Next; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('ɹ','ʾ',0); + ModalResult:=1; + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧܣ','ʾ',0); + end; +end; + +procedure TFrmOrderInPut_HYWT_Sub.initdata(); +begin + with ADOQueryTmp do + begin + Close; + SQL.Clear; + sql.Add('select * from JYOrderwt_Main'); + sql.Add('where Mainid='''+trim(FMainid)+''''); + Open; + if not IsEmpty then + begin + SCSHDataNew(ADOQueryTmp,Panel1,2); + MPRTBZNote.Text:=Trim(fieldbyname('MPRTBZNote').AsString); + if FieldByName('iffp').AsString='T' then + iffp.Checked:=True + else + iffp.Checked:=False; + if FieldByName('ifzy').AsString='T' then + ifzy.Checked:=True + else + ifzy.Checked:=False; + end + else + begin + shiptime.DateTime:=SGetServerDateTime(ADOQueryCmd); + DLYDate.DateTime:=SGetServerDateTime(ADOQueryCmd); + goodsdate.DateTime:=SGetServerDateTime(ADOQueryCmd); + Validtime.DateTime:=SGetServerDateTime(ADOQueryCmd); + end; + end; + with ADOQueryTmp do + begin + Close; + SQL.Clear; + SQL.Add('select * from JYOrderWT_Sub '); + sql.Add('where Mainid='''+trim(FMainid)+''''); + open; + end; + SCreateCDS20(ADOQueryTmp,Order_Sub); + SInitCDSData20(ADOQueryTmp,Order_Sub); +end; +procedure TFrmOrderInPut_HYWT_Sub.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=caFree; +end; + +procedure TFrmOrderInPut_HYWT_Sub.FormCreate(Sender: TObject); +begin + cxGrid1.Align:=alclient; +end; + +procedure TFrmOrderInPut_HYWT_Sub.FormDestroy(Sender: TObject); +begin + FrmOrderInPut_HYWT_Sub:=nil; +end; + +procedure TFrmOrderInPut_HYWT_Sub.FormShow(Sender: TObject); +begin + ReadCxGrid(self.Caption+tv1.Name,Tv1); + InitData(); +end; + +procedure TFrmOrderInPut_HYWT_Sub.TBCloseClick(Sender: TObject); +begin + close; + WriteCxGrid(Self.Caption+Tv1.Name,Tv1); +end; + +procedure TFrmOrderInPut_HYWT_Sub.TaddClick(Sender: TObject); +begin + with order_Sub do + begin + Append; + + Post; + end; +end; + +procedure TFrmOrderInPut_HYWT_Sub.TBSaveClick(Sender: TObject); +begin + if WTNo.Text='' then + begin + Application.MessageBox('ίеŲΪ','ʾ'); + exit; + end; + if Order_Sub.IsEmpty then + begin + Application.MessageBox('ϸΪ!','ʾ',0); + Exit; + end; + SaveData(); +end; + +procedure TFrmOrderInPut_HYWT_Sub.CustomerNoNameBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='CustomerNoName'; + flagname:='Ӫλ'; + if ShowModal=1 then + begin + CustomerNoName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmOrderInPut_HYWT_Sub.V1BGTypePropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='BGTYPE'; + flagname:='װʽ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('BGTYPE').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmOrderInPut_HYWT_Sub.V1SordQty1PropertiesButtonClick( + Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='SordQty1'; + flagname:='ɽ'; + if ShowModal=1 then + begin + Self.Order_Sub.Edit; + Self.Order_Sub.FieldByName('SordQty1').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmOrderInPut_HYWT_Sub.PayaddressBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Payaddress'; + flagname:='˷Ѹ'; + if ShowModal=1 then + begin + Payaddress.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmOrderInPut_HYWT_Sub.vesselBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='vessel'; + flagname:=''; + if ShowModal=1 then + begin + vessel.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmOrderInPut_HYWT_Sub.DLYaddressBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Payaddress'; + flagname:='װص'; + if ShowModal=1 then + begin + DLYaddress.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmOrderInPut_HYWT_Sub.conDefstr1BtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Payaddress'; + flagname:='ַ'; + if ShowModal=1 then + begin + conDefstr1.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmOrderInPut_HYWT_Sub.voyBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='voy'; + flagname:=''; + if ShowModal=1 then + begin + voy.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmOrderInPut_HYWT_Sub.ExportBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Export'; + flagname:='ڿڰ'; + if ShowModal=1 then + begin + Export.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmOrderInPut_HYWT_Sub.PODBtnClick(Sender: TObject); +begin + try + frmZDYHelp:=TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag:='Export'; + flagname:='Ŀĸ'; + if ShowModal=1 then + begin + POD.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TFrmOrderInPut_HYWT_Sub.MPRTBZNoteDblClick(Sender: TObject); +var i: Integer; +begin + i:=0; + try + frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag:='MPRTBZNote'; + flagname:='ע'; + if ShowModal=1 then + begin + MPRTBZNote.Lines.Clear; + with ClientDataSet1 do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean=True then + begin + i:=i+1; + MPRTBZNote.Lines.Add(inttostr(i)+'.'+FieldByName('ZDYName').AsString) + end; + Next; + end; + end; + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TFrmOrderInPut_HYWT_Sub.TDELClick(Sender: TObject); +begin + if Order_Sub.IsEmpty then Exit; + if Trim(Order_Sub.fieldbyname('SubId').AsString)<>'' then + begin + if Application.MessageBox('ȷҪɾ','ʾ',1)=2 then Exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete JYOrderWT_Sub where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+''''); + ExecSQL; + end; + end; + Order_Sub.Delete; +end; + +procedure TFrmOrderInPut_HYWT_Sub.CYNOBtnClick(Sender: TObject); +var + ConMainId:string; +begin + ConMainId:=''; + frmProductOrderNewList_CY_SEL:=TfrmProductOrderNewList_CY_SEL.create(self); + with frmProductOrderNewList_CY_SEL do + begin + FFInt:=1; + if showmodal=1 then + begin + ConMainId:=trim(Order_Main.fieldbyname('mainID').asstring); + end; + free; + end; + iF ConMainId='' then exit; + with ADOQueryTmp do + begin + Close; + sql.Clear; + sql.Add('select B.*,A.*,c.KhconNo,C.ConPerson2,C.ConPerson3,C.conDefstr2,C.conDefstr6,C.condefstr10,C.priceNote,C.Payment,C.ShippMent, '); + sql.Add('PriceUnit1=(select top 1 PriceUnit from JYordercon_sub X where X.mainID=C.mainid)'); + sql.Add('from JYOrderCY_sub A '); + sql.Add('inner join JYOrderCY_Main B on B.mainID=A.mainID '); + sql.Add('left join JYOrderCon_Main C on C.conNO=B.conNO '); + sql.Add('where B.mainID like '''+'%'+Trim(ConMainId)+'%'+''''); + Open; + end; + IF not ADOQueryTmp.IsEmpty then + begin + ConNo.Text:=Trim(ADOQueryTmp.fieldbyname('ConNo').AsString); + WTNO.Text:='WT_'+Trim(ADOQueryTmp.fieldbyname('ConNo').AsString); + orderNo.Text:=Trim(ADOQueryTmp.fieldbyname('orderNo').AsString); + CYNO.Text:=Trim(ADOQueryTmp.fieldbyname('CYNO').AsString); + DLYDate.DateTime:=ADOQueryTmp.fieldbyname('DLYDate').AsDateTime; + CustomerNoName.Text:=Trim(ADOQueryTmp.fieldbyname('CustomerNoName').AsString); + CustomerNoName.TxtCode:=Trim(ADOQueryTmp.fieldbyname('CustomerNo').AsString); + KHCONNO.Text:=Trim(ADOQueryTmp.fieldbyname('KHCONNO').AsString); + ConPerson1.Text:=Trim(ADOQueryTmp.fieldbyname('ConPerson2').AsString); + conDefstr1.Text:=Trim(ADOQueryTmp.fieldbyname('conDefstr1').AsString); + BLNo.Text:=Trim(ADOQueryTmp.fieldbyname('orddefstr3').AsString); + end; + Order_Sub.EmptyDataSet; + with ADOQueryTmp do + begin + First; + while not Eof do + begin + with Order_Sub do + begin + Append; + FieldByName('XHNO').Value:=Trim(ADOQueryTmp.fieldbyname('XHNO').AsString); + FieldByName('PRTCode').Value:=Trim(ADOQueryTmp.fieldbyname('PRTCode').AsString); + FieldByName('PRTCodeName').Value:=Trim(ADOQueryTmp.fieldbyname('PRTCodeName').AsString); + FieldByName('PRTspec').Value:=Trim(ADOQueryTmp.fieldbyname('PRTspec').AsString); + FieldByName('SordQty3').Value:=Trim(ADOQueryTmp.fieldbyname('PRTOrderQty').AsString); + FieldByName('PRTColor').Value:=Trim(ADOQueryTmp.fieldbyname('PRTColor').AsString); + FieldByName('OrderUnit').Value:=Trim(ADOQueryTmp.fieldbyname('OrderUnit').AsString); + FieldByName('PRTPrice').Value:=Trim(ADOQueryTmp.fieldbyname('PRTPrice').AsString); + FieldByName('PriceUnit').Value:=Trim(ADOQueryTmp.fieldbyname('PriceUnit1').AsString); + FieldByName('SOrdDefNote4').Value:=Trim(ADOQueryTmp.fieldbyname('subID').AsString); + Post; + end; + Next; + end; + end; +end; + +procedure TFrmOrderInPut_HYWT_Sub.orderNoBtnClick(Sender: TObject); +begin + frmProductOrderListSel:=TfrmProductOrderListSel.create(self); + with frmProductOrderListSel do + begin + if showmodal=1 then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select B.*,A.*,c.KhconNo,C.ConPerson2,C.ConPerson3,C.conDefstr2,C.conDefstr6 from JYOrder_sub A '); + sql.Add('inner join JYOrder_Main B on B.mainID=A.mainID '); + sql.Add('left join JYOrderCon_Main C on C.conNO=B.conNO '); + sql.Add('where B.mainID like '''+'%'+Trim(Order_Main.fieldbyname('mainID').asstring)+'%'+''''); + Open; + IF not IsEmpty then + begin + ConNo.Text:=Trim(ADOQueryCmd.fieldbyname('ConNo').AsString); + orderNo.Text:=Trim(ADOQueryCmd.fieldbyname('orderNo').AsString); + WTNO.Text:='WT_'+Trim(ADOQueryCmd.fieldbyname('ConNo').AsString); + CustomerNoName.Text:=Trim(ADOQueryCmd.fieldbyname('CustomerNoName').AsString); + CustomerNoName.TxtCode:=Trim(ADOQueryCmd.fieldbyname('CustomerNo').AsString); + DLYDate.DateTime:=ADOQueryCmd.fieldbyname('DLYDate').AsDateTime; + ConPerson1.Text:=Trim(ADOQueryCmd.fieldbyname('ConPerson2').AsString); + KHCONNO.Text:=Trim(ADOQueryCmd.fieldbyname('KHCONNO').AsString); + ConPerson2.Text:=Trim(ADOQueryCmd.fieldbyname('ConPerson3').AsString); + conDefstr1.Text:=Trim(ADOQueryCmd.fieldbyname('conDefstr2').AsString); + end; + Order_Sub.EmptyDataSet; + with ADOQueryCmd do + begin + First; + while not Eof do + begin + with Order_Sub do + begin + Append; + FieldByName('XHNO').Value:=Trim(ADOQueryCmd.fieldbyname('XHNO').AsString); + FieldByName('PRTCode').Value:=Trim(ADOQueryCmd.fieldbyname('MPRTCode').AsString); + FieldByName('PRTCodeName').Value:=Trim(ADOQueryCmd.fieldbyname('MPRTCodeName').AsString); + FieldByName('PRTspec').Value:=Trim(ADOQueryCmd.fieldbyname('MPRTspec').AsString); + FieldByName('PRTColor').Value:=Trim(ADOQueryCmd.fieldbyname('PRTColor').AsString); + FieldByName('OrderUnit').Value:=Trim(ADOQueryCmd.fieldbyname('OrderUnit').AsString); + FieldByName('PRTPrice').Value:=ADOQueryCmd.fieldbyname('PRTPrice').AsFloat; + FieldByName('PriceUnit').Value:=Trim(ADOQueryCmd.fieldbyname('PriceUnit').AsString); + FieldByName('SordQty3').Value:=ADOQueryCmd.fieldbyname('PRTOrderQty').AsFloat; + FieldByName('SOrdDefNote4').Value:=Trim(ADOQueryCmd.fieldbyname('subID').AsString); + Post; + end; + Next; + end; + end; + end; + end; + Free; + end; +end; + +end. diff --git a/艾登贸易管理/U_testdll.dfm b/艾登贸易管理/U_testdll.dfm new file mode 100644 index 0000000..b1d8f4c --- /dev/null +++ b/艾登贸易管理/U_testdll.dfm @@ -0,0 +1,221 @@ +object Form1: TForm1 + Left = 153 + Top = 124 + Width = 791 + Height = 554 + Caption = 'Form1' + Color = clBtnFace + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + FormStyle = fsMDIForm + Menu = MainMenu1 + OldCreateOrder = False + WindowState = wsMaximized + OnClose = FormClose + OnResize = FormResize + PixelsPerInch = 96 + TextHeight = 13 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 783 + Height = 25 + ButtonWidth = 57 + Caption = 'ToolBar1' + Flat = True + Images = ImageList1 + TabOrder = 0 + object Edit1: TEdit + Left = 0 + Top = 0 + Width = 81 + Height = 22 + TabOrder = 0 + Text = '1' + end + object ToolButton1: TToolButton + Left = 81 + Top = 0 + Caption = #20851#38381 + ImageIndex = 0 + OnClick = ToolButton1Click + end + object Label1: TLabel + Left = 138 + Top = 0 + Width = 79 + Height = 22 + Caption = ' DllName'#65306 + end + object DllName: TEdit + Left = 217 + Top = 0 + Width = 135 + Height = 22 + TabOrder = 1 + end + end + object MainMenu1: TMainMenu + Left = 232 + Top = 40 + object test1: TMenuItem + Caption = 'test' + OnClick = test1Click + end + end + object ImageList1: TImageList + Left = 320 + Top = 56 + Bitmap = { + 494C010101000400040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 + 0000000000003600000028000000400000001000000001002000000000000010 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000EFEFEF000000 + 0000EFEFEF00EFEFEF000000000000000000EFEFEF0000000000000000000000 + 0000EFEFEF00EFEFEF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000EFEFEF0000000000EFEFEF00EFEFEF0000000000EFEFEF00000000008080 + 00008080000000000000C0C0C000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EFEFEF00EFEFEF000000 + 0000EFEFEF00EFEFEF000000000000000000C0C0C00000000000000000008080 + 00008080000080800000EFEFEF00EFEFEF000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFEFEF0000000000000000000000000000000000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFEFEF0000000000808080008080800080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000008080000000000000808080008080800080808000000000008080 + 0000000000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000EFEFEF00EFEF + EF0000000000FFFF000080800000000000008080800080808000000000000000 + 0000000000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000FFFF0000FFFF0000808000000000000080808000000000008080 + 0000000000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000808000008080 + 000080800000FFFF0000FFFF0000FFFF00000000000080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000FFFF0000FFFF + 0000FFFF0000FFFF000000000000FFFF00000000000080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000FFFF0000FFFF0000FFFF00000000000080808000000000008080 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000808000000000000080808000808080008080800080808000FFFF + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000808080008080800080808000808080000000 + 0000808000008080000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000424D3E000000000000003E000000 + 2800000040000000100000000100010000000000800000000000000000000000 + 000000000000000000000000FFFFFF00FFFF000000000000D343000000000000 + F4810000000000009340000000000000F801000000000000F001000000000000 + F001000000000000C001000000000000C001000000000000C001000000000000 + C201000000000000C001000000000000F001000000000000F001000000000000 + FC03000000000000FFFF00000000000000000000000000000000000000000000 + 000000000000} + end + object ADOConnection1: TADOConnection + ConnectionString = + 'Provider=SQLOLEDB.1;Password=sa;Persist Security Info=True;User ' + + 'ID=sa;Initial Catalog=rzdata;Data Source=6GMFFMYKYMJDZW7' + LoginPrompt = False + Provider = 'SQLOLEDB.1' + Left = 408 + Top = 64 + end +end diff --git a/艾登贸易管理/U_testdll.pas b/艾登贸易管理/U_testdll.pas new file mode 100644 index 0000000..e602573 --- /dev/null +++ b/艾登贸易管理/U_testdll.pas @@ -0,0 +1,106 @@ +unit U_testdll; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ExtCtrls, StdCtrls, Menus, ToolWin, ComCtrls, ImgList, DB, ADODB; + +type + TForm1 = class(TForm) + MainMenu1: TMainMenu; + test1: TMenuItem; + ToolBar1: TToolBar; + Edit1: TEdit; + ToolButton1: TToolButton; + ImageList1: TImageList; + ADOConnection1: TADOConnection; + DllName: TEdit; + Label1: TLabel; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure test1Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure FormResize(Sender: TObject); + private + { Private declarations } + public + { Public declarations } + end; + +var + Form1: TForm1; + newh:hwnd; + +implementation + +{$R *.dfm} + +procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); +begin + sendmessage(newh,1034,4,0); + action:=cafree; +end; + +procedure TForm1.test1Click(Sender: TObject); +type + TMyFunc = function(App:Tapplication; FormH:hwnd; FormID:integer; + Language: integer; WinStyle:integer; + GCode: Pchar; GName: Pchar; DataBase:Pchar;Title:PChar; + Parameters1:PChar;Parameters2:PChar;Parameters3:PChar;Parameters4:PChar; + Parameters5:PChar;Parameters6:PChar;Parameters7:PChar;Parameters8:PChar; + Parameters9:PChar;Parameters10:PChar;DataBaseStr:PChar):hwnd;stdcall; +var + Tf: TMyFunc; + Tp: TFarProc; + Th:Thandle; +begin + //̬ + //newh:=getForm(Application,1,ADOConnection1,PChar('sa'),PChar('dsa')); + + //̬ + // showMessage(intTostr(application.Handle)); + Th := LoadLibrary('TradeManage.dll'); + if Th > 0 then + begin + try + Tp := GetProcAddress(Th, 'GetDllForm'); + if Tp <> nil then + begin + Tf := TMyFunc(Tp); + newh:=Tf(Application,0,strToint(edit1.text),0,0, + PChar('sa'), + PChar('dsa'), + PChar('bsa'), + PChar('tsa'), + PChar('d1sa'), + PChar('d2sa'), + '','','','','','','','','' + ); + end + else + begin + ShowMessage('ӡִд'); + end; + finally + // FreeLibrary(); + end; + end + else + begin + ShowMessage('Ҳ'+Trim(DllName.Text)); + end; + +end; + +procedure TForm1.ToolButton1Click(Sender: TObject); +begin + close; +end; + +procedure TForm1.FormResize(Sender: TObject); +begin + sendmessage(newh,1034,1,0); +end; + +end. + diff --git a/艾登贸易管理/WFBOrder.cfg b/艾登贸易管理/WFBOrder.cfg new file mode 100644 index 0000000..08e3903 --- /dev/null +++ b/艾登贸易管理/WFBOrder.cfg @@ -0,0 +1,42 @@ +-$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"c:\program files\borland\delphi7\Projects\Bpl" +-LN"c:\program files\borland\delphi7\Projects\Bpl" +-U"D:\ͨERP" +-O"D:\ͨERP" +-I"D:\ͨERP" +-R"D:\ͨERP" +-w-UNSAFE_TYPE +-w-UNSAFE_CODE +-w-UNSAFE_CAST diff --git a/艾登贸易管理/WFBOrder.dof b/艾登贸易管理/WFBOrder.dof new file mode 100644 index 0000000..1b7a527 --- /dev/null +++ b/艾登贸易管理/WFBOrder.dof @@ -0,0 +1,138 @@ +[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=D:\ͨERP +Packages=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;dclOffice2k;Rave50CLX;Rave50VCL +Conditionals= +DebugSourceDirs= +UsePackages=0 +[Parameters] +RunParams= +HostApplication=D:\selfware_83398\selfware\ֿ\Ŀ\self\޷IJ\testDll.exe +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= +[Excluded Packages] +c:\program files\borland\delphi7\Bin\DBWEBXPRT.BPL=Borland Web Wizard Package diff --git a/艾登贸易管理/WFBOrder.res b/艾登贸易管理/WFBOrder.res new file mode 100644 index 0000000000000000000000000000000000000000..2d6f24c3d9a870364649288b1c0306b551768325 GIT binary patch literal 876 zcmaJ=Jx{|h5Pc?9%tTwkz(g}L7BMg|6oiDt01W(ruz1OWgw!H+AXAn~{FzE^Brlox z9gK_}J0Q&SIVr99IQ9AN-MzD~Rtx|M;amX24SU~e>Jc?cYMoANyAd5SNQg5+p~aQP zp5HA8_(Prt$CV+GqpB(v{1D!`;JAjld@@+K+i61a|MTdsd{~!%b1ms_KJEh}cpe(` z6jA?@e29>sU}iiwp;b>~TL@2U!O)h%Yr)7`8+a;b=@mD^tI-VbODr7!U{0?gh%d@~e3Ro)^HNMvvU1UHt)HYrq~&L`&fQ16Y1SeYiaObZ>3v kZ4W@7aBc_JIL8%khzs1(H@5yR{A*B1l9s#*|B4j80N@tIJOBUy literal 0 HcmV?d00001 diff --git a/艾登贸易管理/WFBProduction.cfg b/艾登贸易管理/WFBProduction.cfg new file mode 100644 index 0000000..6c57635 --- /dev/null +++ b/艾登贸易管理/WFBProduction.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"c:\program files\borland\delphi7\Projects\Bpl" +-LN"c:\program files\borland\delphi7\Projects\Bpl" +-w-UNSAFE_TYPE +-w-UNSAFE_CODE +-w-UNSAFE_CAST diff --git a/艾登贸易管理/WFBProduction.dof b/艾登贸易管理/WFBProduction.dof new file mode 100644 index 0000000..7640062 --- /dev/null +++ b/艾登贸易管理/WFBProduction.dof @@ -0,0 +1,141 @@ +[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=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;dclOffice2k;Rave50CLX;Rave50VCL +Conditionals= +DebugSourceDirs= +UsePackages=0 +[Parameters] +RunParams= +HostApplication=D:\selfware_83398\selfware\ֿ\Ŀ\self\޷IJ\testDll.exe +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= +[Excluded Packages] +c:\program files\borland\delphi7\Bin\DBWEBXPRT.BPL=Borland Web Wizard Package +[HistoryLists\hlUnitAliases] +Count=1 +Item0=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; diff --git a/艾登贸易管理/WFBProduction.res b/艾登贸易管理/WFBProduction.res new file mode 100644 index 0000000000000000000000000000000000000000..2d6f24c3d9a870364649288b1c0306b551768325 GIT binary patch literal 876 zcmaJ=Jx{|h5Pc?9%tTwkz(g}L7BMg|6oiDt01W(ruz1OWgw!H+AXAn~{FzE^Brlox z9gK_}J0Q&SIVr99IQ9AN-MzD~Rtx|M;amX24SU~e>Jc?cYMoANyAd5SNQg5+p~aQP zp5HA8_(Prt$CV+GqpB(v{1D!`;JAjld@@+K+i61a|MTdsd{~!%b1ms_KJEh}cpe(` z6jA?@e29>sU}iiwp;b>~TL@2U!O)h%Yr)7`8+a;b=@mD^tI-VbODr7!U{0?gh%d@~e3Ro)^HNMvvU1UHt)HYrq~&L`&fQ16Y1SeYiaObZ>3v kZ4W@7aBc_JIL8%khzs1(H@5yR{A*B1l9s#*|B4j80N@tIJOBUy literal 0 HcmV?d00001 diff --git a/艾登贸易管理/testDll.cfg b/艾登贸易管理/testDll.cfg new file mode 100644 index 0000000..6c57635 --- /dev/null +++ b/艾登贸易管理/testDll.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"c:\program files\borland\delphi7\Projects\Bpl" +-LN"c:\program files\borland\delphi7\Projects\Bpl" +-w-UNSAFE_TYPE +-w-UNSAFE_CODE +-w-UNSAFE_CAST diff --git a/艾登贸易管理/testDll.dof b/艾登贸易管理/testDll.dof new file mode 100644 index 0000000..f452c6e --- /dev/null +++ b/艾登贸易管理/testDll.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=D:\selfware_83398\selfware\ֿ\Ŀ\self\·չó׹\testDll.exe +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/艾登贸易管理/testDll.dpr b/艾登贸易管理/testDll.dpr new file mode 100644 index 0000000..4be4b8a --- /dev/null +++ b/艾登贸易管理/testDll.dpr @@ -0,0 +1,14 @@ +program testDll; + +uses + Forms, + U_testdll in 'U_testdll.pas' {Form1}; + +{$R *.res} + +begin + Application.Initialize; + Application.CreateForm(TForm1, Form1); + Application.Run; +end. + diff --git a/艾登贸易管理/testDll.res b/艾登贸易管理/testDll.res new file mode 100644 index 0000000000000000000000000000000000000000..2d6f24c3d9a870364649288b1c0306b551768325 GIT binary patch literal 876 zcmaJ=Jx{|h5Pc?9%tTwkz(g}L7BMg|6oiDt01W(ruz1OWgw!H+AXAn~{FzE^Brlox z9gK_}J0Q&SIVr99IQ9AN-MzD~Rtx|M;amX24SU~e>Jc?cYMoANyAd5SNQg5+p~aQP zp5HA8_(Prt$CV+GqpB(v{1D!`;JAjld@@+K+i61a|MTdsd{~!%b1ms_KJEh}cpe(` z6jA?@e29>sU}iiwp;b>~TL@2U!O)h%Yr)7`8+a;b=@mD^tI-VbODr7!U{0?gh%d@~e3Ro)^HNMvvU1UHt)HYrq~&L`&fQ16Y1SeYiaObZ>3v kZ4W@7aBc_JIL8%khzs1(H@5yR{A*B1l9s#*|B4j80N@tIJOBUy literal 0 HcmV?d00001

  • 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�Id7WuKf*u7hNIF6VKg6oQzbXxylA+PVB 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 z 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⪚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%0Dse1Y*x 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%0AhVPaW=j5isGX=n=|UVwjGxW!tV9V1}FCQD%f5 zFo%H+SJ#$gwm$clz;{cSOXw!4E5pZl6!xs;7u{|hbBe+yWdL#CX|17>%GKJj-Siq} zci&jD*nBcB5;Z3vy`Gb#9tV=t|Fz3|6@ zKoo=4gfbIcl*+B?{nf0&Vwut2IJ?u$6+RZ$_ct@3kdme}Af`8I^DfA|%ysl>ImXOj zv*{cY944~kkhlwU0JIBn*7=$e$Xhl~_Md;&I-TMf>tRQo0OTyFK~#bJAEZZ`BwL8) z!K(vk{{i1H`%r<;YYEc#BC(j?Vv`mq#2m#)iHNnQMhWr0KTCUG?wdP$%>WYdfX+hlj9FmsH~vgwdD#I$;`ZR^u_zx!XUh6jXyiQ_&j z&{9+^HTFuDS;|Ez$rzsWX_Sgj_df7*QQ|$--jFgtQq6WXk%($lqxDSNHcZYvTXL=Q zgJgK%r!Y1q*y3|mopOwD1ryIaa)&v$Fp6F|4%uIbG3)g~D4%CN?AJS7vHR=4&ancJt-6q_U`b|$Fi$!*gq3w?b6L@?1Ly~ z`>q@_9Ux1kVUzvn>WL9izk4O?Bn2j5l(~#NV!6Lmx3TrS##h=GxzPPP4`e-&vbld$ zAKL)P!Au#yJdaM=rQ|Eygd<9$u|-08_HtGAdSZ@m7?Hh7(6&VV11S$lk-n=it+LGi z&z$dhF~)~8560k}z}ws3MU&(PZ11bkrUt0Vdbk{ytU8Xv&6i=j1z8ofm#B|2W~Y+y zHtH_k6hd2_w*saED`{CoS7;~#XWIs<=|^woXhlu}|9_|f{8azvU$nigm{8JnHny`C zx_!&c7}X$D;n8qiQ{YJtS~!51OeRZK$pAt1XNMdV> z>4J^0ET7%*5VTqF}x)TMnqGqF~Cg5mh^))w1{Fs+_yhz48 z`Y?;F)>Irb_FKn1Gu_EF-RN)dK<`N{e2TeXnEE_cnv!gz_0Vwc|9XpxUVYZrM zDF0CyCY|H%$$?X4o4s}J#mx}$Rysrkx;IOpHZY|ReoV8nAy}&=mfGw!<6OH7M`1Be zAs8`8Hq)y#FF<0k19q`%T%xe}w`!x^gyz~K5fEVa71xMUBFll`*aofY z#?R1T4w$!SJ@1|VGm$EN3&&yj^MCH_KTkj;JvU(Ok2z5j?K==^@%*^OklXB-8v#A` zCd_Q@ctU%#;qjkbe0xA>ryY$an{Tf~9F9cBr=zN`SyMQogpxidF2&gk8O+WnVd@7ZY`hh5-- zu`=w6BKu+dais=y0x}GA7G!prbAo3sz7f0M`3R7XvVgO4#4+Vg#$3~H z_6@zgh=5oe>)cL@2#u@UfS%jWZ&SWqtSlJ|rU|rlO&}O!n*a z*gih4zMw5|`6GXOyjAQ{kXr2_2)up~y}W<|!Qo?B)c^c+nU_ULb^8JQwf*JR zc^fJSCkW$RCT)>7f8+u}E%ZK3*=}LX;;OO`z3!u0x9~>KWWX68R~;?KW9P#07gg9g z`%c_RLm-_z2kli6rQi7AfQ{~F>s^-_dK|qBaA|EI7Ss)&rayx_-2F#+n&DMnZ0;91 zKgtPXW1IY*{~GtDD+uVd4#TY!?mE-s`J&HNoD1l7Qh4n^Y}!|bar!NmdmTk`R2jx2 zSFYJ>Bz4{ncq@!!4;OZ;4MQjz>NXkLCr++XtGdqjR?Jqt_;icByF;v*wW_=}Q(?sq zCww1Y@_u|z8kn8p|6nf7{hvJI->3JxhfywYR3B6FZ8)8_r;W!z{a&D(bJI1C^wF1_=eHZIe!{Xk<*ans$MiDWzKSEJ`@bK}9(8#@zwPP& zceT_8&2L;8iQqWl&TZak7K~i zVCmSex!DI!(Z>gZSnQLIzr5lc8~j~GC)$SOfI^s!;(Fh6x^ZiSjfl$X__I9&4uGyF z)cr6wmN@?GH}KVdKE1}TrSdNo-^9fHE}h~yO}@mB|4DkM;mSsJI6jIdCQo;3F}#ba(9CyMw$|D#+703>(Tm_j{4X4L zmYiAWbLmsN^1JX8H9Dv61aXNU|90QKzm~g)f$9?Ozsi4~mPXaa2j9TB_HaBHv2byT zinSjLF_S+I3{MHp>n|Ij$6VFU-7IZ*HKcet_r6)if2Z z7@DZL7WixEaY1Zw+2hCXWRstD*-(ew%YHXu`vOI=`PlCD*mc^8FBl;DvHZ{tnq-rn zBJkUMuz|?KH5M~VD{?q{{q!IswbMMiC#Suct=Qs&NsL%o(Amf0(0Y48L7N{PVXSr^ zXR6i%>@EWaCBZbI$_Oo}{tqQ{Fvq4x4}ZM^i0kMF^7K5~t$r>MjU1bMdr=R^!5F!! z|Dhz9_C52k&U0Gs4(swY7_1bf$yk4m-gWPKL3N+dJ4^nfcoW9JoN|jSo2B z%wU*#eq3V;0UlVRnyov#5A%j@JQ;5+S41b(fYpY$ZW_fGma=r`SR2znd`Je;HoWMT zndUXa!cy>p$WB8-8d72yi{n3a;zNQ)4k$QegBcHprExYXdzkH8-kvSS5ZN!U0DUF~ z{|oVqNw~uix|p!k9qPWN2hi*9jQ%%_4Ku9qebMoP&Kj>tKFwV~cQ_)WEZr<6psdRIEXZoyYZXsko=%wT7=zFL7iE(g# zB)#j~(IncJGS|j`_?EsTn^1}9f6&nmZ8a$X?};Y%`2mWpbhCAbb$r`a^+RW>U=xoU z%pcv#1})w@fr-bGwiH>N$Ar zGq_pN3+O-2xcp>s!MeuBU#|{o2jH&7W5(7nCs#9%-2k-3{O_1se58B?6lgIab|C#c-zdQWvmB;+bhU-}^<}^9KcQgynj}IK&m`?i;{}2S^qf(eq zb0LiWd#Iic9mZIkssE=u4g9(h{O7#+|GQh#dD9mDRWBq!PEX0!0{^pf@c#^E`i?sEfW}VM{-5)%ZyyExKY*Y04?8WOvaI`NgOPJ+ z!6hmlhd#5K6i=%q>|vaGvHXz%c?R{^KlW~xANdAvzxTw;_q^sBBb^m%WOuiu1@;jy z;*|3{FaFO0`kWU%P5*&z?9g-G4h&9*BL9*d3IEr>&MAil*Lm-$THD?OdwbuCC$grV z<`HnxfA{2~Y?-WUuBpM@595V|GECO1U%ntbUMx8O{&t{?W4VlK1+Zqv!nkecgc@?8 z#V8ycuz2#}%ghHPsBmLL?75Ke=D7@%U&}$}!<*y>6u%@uZ~2Hk;~YHf9(oQqJo)hQ z=mUqL4k?iH`60*hgOlaK`0r@8UnM|on~v$A&O4*y?u>cC4|N9}hj(%9?KNWJ|KT$M zzwLY=?o&k*4_U|xeXt6+IqUdva%LtUJK=`TRUIIsUig@Hf@!&D-Q*kF?LZDL8yyz! z{dW@!57wUW!)7MuA@sprpS~><+W{km6#M$rsct}T6d^=_h-!1c7oxXN$y}m>M z=3==HljG-)wAhEwg<=~eiIbeFBX7Uo0fcjUznT8L?Vt~6FCI}Mbi8U}HV zx_<|8s}=`(irRetm%6v(0sDo~E98G?hT9h~EU88mmr-Y8^&jiTY#o1wovm+i}YW(d+lWBCn*#iXk3euG!lDvLVOy z+FzX`7S{Z(Kld(jfA|=}CB?jcn}27_ZtbLn(<;?T%>1l>h5wdj+y8blSJjH%{Eh`B zO>8^3afrX;+}%|;|6czGltsNT;duRZUEv}X3C#ZA>&9#x6wYHm-N$+E#z@3vM*)l^ zB}M-wD7zp1m`E|47M*GD+QU%((E0ZeV8IXePoQ%BDDV)(>0AUoT%S=Fq#GfVo3G zQ?Qz_(qI#0UrCjuM-dSoIiPo|6U;aoLV=N!}ZW6up4w6ZLT6xc*p+b%iVllKPU~T#ZEC7l(pT*iAP% zEXA8+kwsM!f!MX^wf1`*)rJdW;?f$lW%Z@z8_O9&x!t+UUB{Sz0{}HgqK3WFe6oUAumXp6E)>OPRtHT z{7fiRiA+eGX0apKI7Ff`^ZgI2ZbU2cm^0O%V2N{We~J)wi#J%v)Fu~=PF)-%7B4k3 z(fb-=urn5rI-BH4&D`S+XjN&n`L)Mr+sv$hSsB#un+L`mkJ`}AwKKNkqRpa-iI5~2 znq>{J9NNbmw@*A{IU4J)Ie#oEE8iYXVeoV(g!6+dIbZ{_00uSkETrn(1wMddJ(mJzlj=Ud5)twDkt?I2#j(3Fu%bBGhzLZrY#&!`J%y(Sur5umU zF0&H$z>765RAlHzYZyZxT3oqIvTFJk{Cj1mNcuJ6T01Q zQNx*uO)lXIGVcz~$)v06fKz4tLWr-@(H64HXYi;REgK>bbo&GH=vnHUOw{Vhe`)4= zsOZ3<1qfHm`vCs&FeDMPo+Zd9U~ix9e(NaeGG3ylj%SkEOWg+MwnVPx$;nx51UREP zFheT=zq}f-HDKH!Sim{m1v5C$zf6Yno)#O1iEpST6Ji65)F5Zl*++klKm zuH{WWkQUU9Y;@i_$kY#4uNx(BT!*GQ>o;iFf-OMwU=O#fzU)oW4v#aXN{idZy(yG* z42e4XNngMAr>;xW3-!B=`~l*ubJFUHVz1|C>E&)vRnusIQ6g0X-DEU?&?7qt;w%O1 zv}2*SGpE5e>ZJcNbgR_Y0_%wF^};bA>;I}#wF3#*MfMI*HD`c)bh|$Dx{d#?g6jLs zD=WPx&%Gs`qW*p6_`9T;8O$*|GE}g=IL?X5e|lH+7*1$xig+*vcaghnlmDfdl1a?o zPBza0ZU%3pW_jWw-X3+R+pyL^cZVYX)$^$K!g!RY4;k_3+mChr|JjH%qnC}>d*LxbVKJu;uAR#I0!4O_=3 z$?4{15tmUoSZDgu;l++1s3T}pr2!EI^+6kih-Db;x!Ge;&`WtJ?E^I2e3j%Q+^;7O zMR~}8G3L8UmyzGP~0 z^O%H~P&MierzK3 z!!18D))`a3G~PA^6-;7aU`N;g_|-A@g`>*^+db&YV}?4;lkD-FI(V+}O$3P(a}!;xBOVt~54| z355l~fgCu#P}$&>N06#~IS5 z;OE1UOq$uXcVK|Ug=2y~5E^eOL1lI!3S8YUNMH|gmw}O;(Z-y9GifjUY?FT{eegM? z3N7C9f#9VNvtmD`j>wR1f;M`@U0XePOjtXnA=Dl`C@He=rja0h%lRD25f6Io!GF?6 zsVkM!dMoQ!G;L_Vl@^R$vgBMesMRAjNt%wg?pz~i*6qGZJ)H86L9gSgkRp&&@6*}c zFbvbRx;cjfqmr!ls4T8ty!Hn-;gHlRb(MbVo=E8o0)=td|7oNrOQ260{UR^*#LHXFH)#$XvJ&KyU z0|1^T%-u@eh46yIi3M~#unZgA0NIU(AGMWa68!Q+Vt8J?7P!M1uykq7b(>@uADCXh z)@maqOV{|#OlDtdDN?AA!qZP^^xf$ZZ)c-j-xkBTLwf=KBRZY;iTE<5gBA>LT5p%#}q40H8f=zF@t^u(8QM* z&L4EX*cK+2W-xJ$#+L~+QI&i zqrKXVk?=DA#g(0elZK~e);pW>yuWbhs1a!Gz%nS`M3mnZfMzIEc^WF2objgA?8FacOQ}PL!K&pieE9VEzj~z94j+A)ql8+JuTVF37(q z%&pL# zyOoQh>Gb~omy<`zpiyCsQb3}5AALZLHdEjed4hW_1*xBMjZBhmuxw9ffJtR}B(ORf z0aR?FMxyR;1puxB*Fe8Sb-Snzc!i1r$N}wu2fMU;J$|!Kv)94j$;lD^e?N{Wq0;%g!i+)lVd*{R)YN4M=*&9o>tl-`KAlMgVTh&b0}CnZ1~sd5!aKHO zXqf2HtGE)kx)&8e{UFoo1(>|mev#DJkU4?R6uKXvETacJqbxOWn`D^$pN-S!ksXLc zrG0fL!Y_12t-c_NO0!Nw$rPk0dO+|W8v;?YmxyH~M4fW_f%uUWq~}i5<@^?UP2(?m ztEv#JrwKw;mXq+CGEd0a5`LE*UiEs(Udh<+0o%!=`@qCVdR00L`SMhrT^Izo>Yc-L zl9DhasX9UxI81g@5F&6WCpb(kIrBX>&KLvkg9ozcTGLm zwwteB-hB8oKbtOB7Lx>Ak9d=^z)YTt*W0M{j%wL@+i7|nimCVzYe+L2vs$vS65NwU z<5mdbc;W9tYTcd*g{iagcE<8wt+ZH}9O^i0WUEC=?j2&;%6&Sf2eYdV7r^zL?33{! zH>R|7`|e3xpLCIU!22?>%O*CPz0ia?ar>npD+IP_rcU=IzZeun;u6&@J-CAWFnsB! zBJ1SlYY;#85TVRR)R5}dp+v9TwJ#QBf5oEnw5DhubP?P*X+)#1WHpX`h$=S1ZpsMl z<@Zi<_A>rWPF?{?h(Q@xjL46}S?t68XVMivp9!=;p(UQtiKc*j-0CQS@0O>EfiQIa zQQ^=85O8UGqN)hqiU@8U?Oh0oJ^6yOrDbkDyR`epL9O3mJl*QvgLO(5!?nB3@y^4^ zs?KtDbMUgmXq3Slum97vbHnYNqhaboo|6#&V`Pagt%s%PZ3STTqIjGFwJnSo7o$_! z(M21x8?hpU|98XB?u5O1@Y9|zRD~0fR2d#A%E=z5cQHCdaRo)7)C!9#YR!zyRifBb zuFWY;JT&@)igt0v7W>`u2vAq<$ZiNhD8d;jcgrC0>k?JT&`IE!IvM^cfF#cpQi7Lh zdLXg3CJ|za3f7ivvI$ESfotRk-(hc=gqcMun5o&a%JT4}C$iCYD2UZZHIiaxc_QN0 zq=nNVRWs75R4{xp9kVrg?$IXh6;thBtlPqkXgu^Dj;NT9Jc_126vnK*H{<_uj<}<^ zDX3^vT+kQT1~WmYVi;RsWOS3%`XTvFrlEVl#S?L^kTLcfh4#UZvKmr_^;;#UXx^?$ z-0*b?oukR?CD5fn`8G>6`>M$iXSQ<3x$|jr{XoPPW4#KG3=K?v>P7|Ab3;FW^w7X{kdNy)8oMLDG&o|%)yBU zjv!7$tSs842TXC{m+VREq5P;B^M=wpxXyde#W-fh|~b$*+7kP3bitqKQvoMnCSgB2Pdz#{b@+!}Pl4v2lAfr)?-k5~V3<}u3k8PA0${MG zV6a$W=iqLt3kG-GjMavdBDh_6L2y%&+k%_i5od{FMLY=6;HP+Ivo3%JOXr*cl8C_h zVB%i0wjlLd(aL#(tvqBr(Z z5(=s*HvivJvueA0x^fC!5%z?a{!YIJRbQIekk;~g^eRI*2Q=HeK>WpBuwyHGkdzA$ zN^=}lA&vbXc1cYbB2Hc`VK6N}ASsdP>;|r0wQn1pzzS~OMPXWJh0ldZ&xH*iQxa9? zzo515|4E_ilP%;`Ir!aNwb|$5(@V*Lnr3TM4=4&)4WttxD$s#~X+xmR;RZs1WxAS(h>;A zYyC(_Tk5--9BU=!5|mEMP8en{ydn;*$e;;{nk-kRcGl1awHkJ!W>Pqp|FRqiC7NDS=mF zFJ@#IQnpCFYAlJ>JS9r%LK+QHf6vKaF>J<&@g+`(T2(*cr{Z9Mdo&eNX@f zN|Ys-`Rp%mOeY2AnvmI%*4ln4sN=2WhU;OiVI$fu?(bu41A3^g_fI9|h(%g|f7uBB zOKS78BeogO{)@RTeAMeg4WA|+b=W6>B$1UBc83;V*LJpN0^Q1uEe!G$yD}pR z2?&*g`9ew&Av$NCk7<9I+*?nuQqxc{5o-jciq>rr)Wgjo{Y5XfMYFdhuc(`2*-mSH z2;k+D%>BZn;2eT3`!D)62k z1i8oQ!FTTqM-_&Cm*OZS+y6%I=Y=qyW$+x6T&p)qOQBBNJq&eJVi;-mW zB1M&0i9k_76rrtjQ1BI+a5^r-*2N_D)}>v-O!`fd*)R$*J4+jhDs)y4kQgCkwCGXO z{P|wmub){b$F%!lSuOe?X8qV(0YSPomDtg!fkc66b}fp3S`gHCMD+{Di(+I8K4qBv z(JzXGc4*rPQb@^^+nGU5^Cpa_xuyGV?@0RSt>0Bvuv+P%u?Z7~I>)@MFDm)5jnZ=e zZ}iP*{Wi$eL^ljkA`fCSX#Tmc024-Y0mPaX?_w$y)Cc; z;bAjgB+7X*G$N}`!^*k@&dt~R5>%w3%iTB9QfcXQIR8$P8YtiNpdt%$qfQ+_PO_3A$!v-h4xhnM${yXw|mgi zFXddtyVh=Vj#N~~?2+se9U?v>2MJLu%CG6Y}mjl)}@dH$M*ZRBAaL0Bm#vQckjQSN|; z_uKl2?RS31Lx7=}vKu!2b5dd!hQoW_R$OR3fq=v&vGMMOD^S_h$v-qL899Zw8#FI` zokA%k&P?)&P>on;(qxjCYI|UdVfKX$?Jb6F2r181LpFNVdb%%y;_d;SM(X$|aj7OL zD*TgaO~ao3$8TFKswdIq;6D*zfwFZ&0g56(mZ}GNQWZ2;F1kwpI@rV%i@ z7GwlrTD{WO2$h)g?Pr0I{&BR56(z+gSbRrQTfDcuZrVbwCwyT>m+M@(Mkai4X#<7d zxnl)M^aI0>DkaVet-$;xdQ-LT&KvmtPLmEhz2PgdUT&g2jBOf(y3 z2c?_nqxNt7Fk$@-J65#&GvcgObS{)XXpWt0f%OC0gaCz)=Y%Grf9Imq=~(1y#nb*W ziPc)%|BLvKxWf2$TUxnni;#U-Oxut-V2{ERItqXzR1-W4I1%^)XjYyW7~b#WJOTcD z%!5nx`ToKoW+$E|d{rCqOa2a{9OVaZJF~nx=5{OnZ6956WV;m{-KNKjgGH|hlUa## zs3mcT=uufRJ!kuHnVGnm)M`xpuB9+2W@v>+@2Zj9`3N}mh(1^?dXKhc zv$aE?p)T95r8`J(RV8;4M|palAq9*s_H_w9d|PQPrB2X#j>vts0D>Bj;z_|MNwP|(+;}` z23$Dcxkc^x|dr>}Gt-vX7KvF%}(jf~kqO(!iV4<_kLXeAkCQo%lwmeFpGbuxA*YKm0g z5%(srmil{*lvBLh>Ii~(T%ySiVlybgO)SY6PXKrIh3(P38_*Jzh4SRzaB4pI&Bzr> zQD?9&E<@4_XMsNpY5+d__CabO49^^Ww)4P)#>M&<)R9eHj*Q~VsZcbO==hmq%#}vQ zzaH7Gq0fP9d3(fdN3cS5^g->sJMZ_qr+3tO%i6M*R+?oBLYnf3SOvO5Ad=MRm56fd z$LQi1wGUCD4f$njiGA@gR>D!3Ye;+#>P`%Q>;e7S{n1NhRP~r7afGF*a?9J1>~Qjr zeNyGXJOxUxscx&9g|C!Tr25;7a;m{2Eb2wJv=iU=e)5d5V;F4JdotOJ*D~12q+7LY z>Q#fKnJ1t4e)aIxu_5}vv%rlxpirmfpD5E~n5Hbj>N~P>D5fd-Zt+}*FM=cwG7I5@ zg#iCip;AZRcVyjxc7B8pcPYYJBNz(~^Ze+FIH;JcDL7wDfH9$IfDMi_9Nmn2$wS;k zE_Oi|_fJtqbMqOe?S=N|1E6fleIh>C66~535kwAc&$L;5GfFON%JkCQ+h=(f@@YWb z5nd)|D4SaVQ=t}s4K(e%kWse0Dl@=4@d0?-fa~JagiS4qlm#Vk0`lB5TI$BHnTuB0 zU}+N8<@oPf!KJj~=Brw61j_+sfM|jeofYr{rPxyfw*eu95p3oidJloBWf(BapdNGq znNYp+B4e#G2h~EZj?VaCTNPBTLPGG;VQ5fGm-;{13u|p{=%pGG>*)Rfl}LF5SP9M0 ziuqT7(Hj=cjybYQmXnp7>SNn4tfcYK#B-@^rkvV;PQ4YRsfR`5NNETuF+$3K6npW> z*HW4d88Yuz@H@UFZ<<@e-mReFYeam%J@{eU%@f1CYQ8a;e6PZ~&$|tPT7D6)j|P;J z`}27iwwy7EmsW1Izs=(Gtts~Z74XKw{}IV-Te*M49*qE3H~51bd5ah4`GM1W`ha;b zsU(<)?4!6lbk3(pWD5QUW*W6?d8RoMIrjIOH`q!<2O%%4l#0VWv5_doWI>IzjDOmV z;a}3^QMsL*Jbf9bX<;&M>h2BG+onZT##URqvB_9wfAMA+ z%k0I_j!lRz0c|X7t*iObagNYrr?Fr$GzGuUeaR-yAnlyyknLaoa}qa56-7}s{%N%$ z^b&g>j7PQZ7MEsN6dY-8ok~^^K1xDI1n(P|wtU9GI zG-6V`e-deol^dEQ86^G!==4W$N2cj}iCYqXjB<=h4h7ftG)>3<|J+Hg_j$3)Y$QwN z&p6hLufASn3-u3<`c747%XC#Rav!i!>HV3sezoea=H%O~)Qa`lj{Zmss$Qm4=|VpV z}FslEr9PccMDfgE9yD3-ZnAZ)W^MTJ)uFIIkssf2!mS(!ky7ap{HJf+# zr)TDwU|>MTPAEyTq^tN0;iHppT}TL}43(D*9p{H4o^wIp*z9CkhU4Qa7Ka-n>lPhA z1FOlMrNpiXUj(L#iStJ^h1y{{n}9m4J|s_^L8M{m5&-$}7_S+J`vNg_P7Muq(mPS< z9Sw@xKfG{xSIWqxv>j5yTv-VPi%O--kw@QNZjL5O_->SI?Yk?K_w^?0}#;Rf*NAU%SP$(fCWj} z8gYZ0=ov?fftjIJ_ezTre&rT4RGyNi*XZ$`uJ}BW{o^P^u8EJdbQ!G0rjqiq*X6W- z?B(Y;`+vS{E{Zd6qLXt8yHWE)N|-i%&mztlyOR8wsG%rvN4wO9@|GxY--v7bF}^3* zhHO$xTBLHCA0yHlTp2i0mZf4_$btTuVAA2=MGi`5!ZZ^8BPQw-yw|^9;+)l-PV&ho z#8g$Olz5~MTUCm7zdR-54ro?=Hm9SZYUlbAV&E!x2t?f1Kw^>!?4&ZP-`j*?~QLW(3SCV(2xk2cY zZjN_<-b*bGk1c1C9L#}#P*achjr0r-*!)Xa{^Qp#rt%Leny3paR4~2!wxJ}?1HWmj zK+T_F5yxLk?zv1eihtPY8Uo>+?H~F7^(qw-twCjm0g3s$`M%zDv+dj2S z#CD`pkXP_1G!RcqTm)AHP) zU&e0_#=f6`#+e_hBna+HiJ^!GajOu`PH{G}V6&kaU=K5))rZubUM5*k35V@WWG-|4O%nyCVEd=t=wTo%uSI$wq& zj}JB7=L|tlaG0v1eg6>WX~Jo z{|yvAM#}!z^EXB1X7KbQ9!I{COMHFy%U0j>2S1z72T0v$7Dm6D{~Vm>g!jAyg`6pBQ`?^*EM0(D<&1*l zFR2v48^POireVDVB$D5m2FI5A%`4r(U7q|y4CS~`I?-*u!9k`=u-5Ka}b@_XLbvC zP_Saa@rB2>GVgYrI?4^A#JOU>&S`6$h{*Uy?I!U%xYTQ@ypC zvm9^ulOks1hnp8Xa~7K7j%44QBlF#JF8$74&G)%4?ZD>l{@uZ_ETmCqFJ>~H6}M=t z*Mn`;6o#{HSXUJPG~;8eoURY_0oA15qCXz>nAB84jq(&=+T3u7S*^cNj27q*wn49z z;8aygw{E%3*0u21-*y2{Yl?5u$=s9c*qF`g{enh2ceCWH>ois(wbP%$$;I3}3tIDr z+kIH^koQZ247%0Y(#LdS%($LMx{|~>AfXufyGM$%%D#N$hfOLvmC$hJrRPSGoLYkx zsHyYuM*hnHFRe0Tk#%e--Jnod%1-Xra?Y_RB;R4iz*{gVcab|(vtiFO!xFCa!>ht_2 zi{gti_8_iR`L;W~0?xmj`bvK%-71}1{q|7%AXu<k%u9_)f;eHoctRQQDCFw5>0%@Por!87S`gg|=y2*4jd*_m-s%X;>qR zHltN!B3?XCX+mCVc)C-BHT!mDZg^u63r72w`nnOxGy2z^89tu)^8k3@c>o)DJW@>D zbId6~i=s+{mH>~3k1#B%ZosT_o@)^C+bjw9IgJNFu~WshjGe&3s#5}5PXbA$E9W*X z*W!7UXaWGC30Ms z>j@{+5fG)_Dop=5uaYVMP)rYd$Op}bje?xLtS!;VBixtTz67}v+S z*)tP28i~x^H*RAidFOqKugBPHaozIHfe&w=$|~Y`=4yO$BUMsgmUA6X+mTtjL#%>C z+Oh9-)vMOn{LATAG{Yl*$@@aqp`M6XCSl22Ta7FKj*RR2>CnD&b+UR@=GWrYhklgfym{F1*%t3TScI3?)B^;)189 z?mI44*MW!B(Z<3F3U9;q19$P?^oNM={)eG9c@4$GN`0y36rkDF595#I4ByjKoSg(A zU29@qK|_5fh}^Txc&+W@08H{PLPh+a>7(wy`S6=`KbIXWL=BDGfd^ySsu6sR^M2!g zWqf!0=s-pzj`_o1vStuM!wXcJ#y_?3Vb72Hh#cP|iXXhUmvnf)>BIM8TIq(*d0q_Y zZQ-b!p3KpcI<|BEbyh!S(KnXa!<2mZf#{&;gs0qkx0{e`=IRWn_~d-RX^qnui3rHC z6d)s!=n5s0m$eJ+LvNr1k|zX5kn>k1(X3PW=7>2PfS*_2sK5Q7TOqU!ok)T5KUeyD zfh6rLVNKppbI78I{>@j>;H*RK??O-00aeKc=OO6>QTmW+y$CcTXPxxHv%_z)AI*01 z6yE3pG)h2U)%u0n^jgJkFV*8SwoG80=*;cLz7l6~<{Ro_pRkV8-vNHy6^(~ji<026 zlMVeWMZ)qxZXEd6kH`<_EeGHm@5hgiPjE9ZdDt;9^E=be2tGN>4&R)_M}ikJ5gFt0 zUYo{2tJnDgJ=QdAewf?ILC5ksC287kowx&E?7MLWzayD0~4mb)0_={a}ak zWfURnF}!T*xo#hcg~23>Cz?w6EfI4*OgS%;5I#rnZr^JycOK)N;rlLn49MB!Wx<=9 z9Ej%hcv6b8jQdbNHi#c;9Sk=|hhfgs?f~3y&csUv82(ei`VdHtsqcPP=a-t-^t9Zj z!xsau%IQAHA)!FNz$-$Age|yAPXjO^6eR9~A$o zFxPC5cTM$p$RlH&s8Li%M1zbN7FJ2ZiPT=O<gv{;H|x(waMWL#j&qV-Rw!h7O} zPuQT!aD3ai#tKp7vuufEoM3vFx)beLQUBUO9$_A1Dk$A^p+EPii`h zH);wn(CY|bC4nJlv;VU0bN;wIu#|0PGd9L?s;-$vImx;owFE1faf3eXH8d$R{vSF? z|E_Lj03R~?vAM&ImEp;l!SkOjJ!S+l_=7zMpG4Yy zV)qWo>66vv)k=-wE(DgoSgQM{W)mrN!bq6 zp7@onb+x6MSIT2{`d|NQ2YdXTw)*0HljCr&V6l;Oc?1-WUT`#Mqc+NE9F*>Az3B8= zUBXP?m6!5c8>{8?fK{q^JT{Sk|2EH4gcLhs^R!S#y~fInc`VLRyQr)rIbCP)H1$l; z|1gZTTd>Zij2)dK|2Np9qBedz<`{na;k&sW-ca?rinKSy`AKvegdElVOoFZ$x1`2! zP5CIgdC5xY$ryu|`0g`5xNob>ywhwx9C~&^rv9^C%`dc=Tx9c~%z?gq>C!it$66!S z2WMWRmg^sH>U4PG%MC(Y=!kRd(K)4~eDP*ZVqx=Nj?_S&^8#-ECg^U`oo}~LdP>59 zXv|DtW@#NM;_k>jph@I%X@c%I^;grKPy3NTGxtX^9E<%eW2ZBc!{qj%6>TM7-YFKs zyBuf}W;+XE#R;Igfi^W}r}1Nodq$Sbda(u);CPtEc@o1gF*lcQ0EmXbD0}g@Bw`2q z;foypPsmx$m&&hM_hFX%B#l^YI|py&>V2$6%xGBzeN^;0uD_x|4ADP4G7F0mG;fcM zP5Dy^HzUW!j+J(i&281lF=7|0Oy~5d5e3U;+MYs4q&hmQ*?KyB=AVps~c zMEuyy6d&mQ7CFG@H$nw>14k7SIyZ`U$~>}Q(otq}tD-ja)4cjl3cX~wtAazx&~&t0puNM=08 zBcBkQi)5hXFRmw0VKSv&(!NM<&QFjPWJs%B5VX4JB_wV zyzw>?%U^D{BY2ce9eusd+vWEUeJ%HOepa%fcWBM@=td~Moe%|4H+J=XCzbCGa&s9| z_G{7{dt8;2ltD+FLOek0U3;?^P3s7kwi2v*Sbl`xBnaj%bh2`rgm}Hs-%;U9Ipxg= z^Wy6)QmxvBM}zG0ZQ&QH7lm2F8s2(YX+z2QTNvhL$afV|*=BwV#LK9MO(G;m6!K6J zP!&F>C9gdevBxOSXoN;PaPY?nSm?j+S0aH95f=2mQWAt)F2W9sU8CdRY4C#nJ1@kH z+xv-!SF!&gA`00Ex0E3W$tl-*?O^;+ewfYEF!r>7wwmdrUh^UWNIcI;-=4`BWAFnw z=Saf|h$p@mM!^tjS|?Mj0SmC^$$vP;}+-69XldRRdQ#%ZnCP(Xc732l=KI)!y7KyL0RtK%0@d z^ecjoq9y$CJa=8cug-BBd!-&AAG#_ZtC4e?n1v~Y=}csN$(?I8!i;qZhq3F(dj{W| zirJM_PRIUD{pNC%Mc-(NRMMoSBPpGA?@T)E=8Y_5cWFyD*7ZvW`m(A}N&9C1b6|r2 zMg*G(j;i8+pM(n91iss_)F|pr!lmt1O%tR|7s{r2)G6{PVr6_m$SwSX zs2zfXFWV&7*8`gQ(l2n7nEU#Kt{`MWi7zMS<5Kn&#K4h7gh6KFp(?DaK*_@P!+2vU z43QyidvDMxO-Ixdjq~{rrwlg>Tk~yyW@C!}gh?D+o8WZg%4TkF)9;pOL)y`!wYF2M z^J;RAl(On9S@qXAzrg6kU^Bn7PP8;WVn;GdpPHe55D@IC2}2xg;5_DJXzdfUf0P=z zJuzq4%Sy>sMii!f?D@^fsb^aB_~3Y1VU4mQMExo9lh7~wZXh}DNae%U*bU@U6UL$L z5T#n6ZS$Cz@tuBh1}D?nB!M#`pXl>9Mzm9Xv#a@?o9?*(ODjoP z63r?xz}#Q9Z-d_Yn5^$)foS_@^J!qM7-ifs_briZf7ZiCC#c(W?)1ZlB zl#ZIZhL@WdkbYb$#Fj=+(4$%;s+r9a7AcELe(PJe>91J!VJW{`KH${#k|(83SohWS z0}`Wx3M@a6ZqB1hUB3$pe^`1*l9-nu%1EA`uE~$oZiQB}U>(c(QM!-Je7OTt`N=m+ zV#4xvPrT%#DlU7h>>>qtxxfN6?6P0Ap*%gXg258y>k24HY{%4D!fKJ2Wi9gW-u@U9 zP{cn&xd|KMSaM_@M6XSqGVYOqh1*UK#hN3?7F!SOvp=tMcJB1jjYZU7W>;04OBlLj zAm&f76&v<^hx*>VeKBVu;I&m7%aTvXSo`gfRaNrHOwN|~WGqZ-^j{og1)T`agqerm zES;zVWdjre>(D~7AL&8*P?nR?f=U2!|H4VF+k5Y3Mspx@p*QO2r!YBU0_j5Tpcb_s z<~pNVwuPc(9Snb{JwTDxnMFy%$WrM*e4}j7X*Bl8P8LpwN?)|ktpxFAWaVf$dw_&1 zRJ{14bOp7$D3Z$4xug>e^!w*)#G3ky)yJ9>Mz&nCsEBfi*@=3gpQHM)uwCfI!Qk1?WdD2lSFvkt<(I zYZKb;+uP|rut6u126+g~y{^gL*VA6tNsn6SE5x{RWk#?fWiyumP$CpWXOen?zH;=VteG8QF z1QT<#M}-K6Hh_oth9-W9?sGy=kn15Xd=#lvJdH%c)E{Y%0$7#AFf1PIS~`rCr7}K6 zX=^<7l6SY?Axeh$LdrwWYRiG!D@{2u*C>9sn1+^ zfg@^mE)%WZU798|AX`l(!)rWU<9e+S)`weo!pUa}-dSD1Cu-QyKlq-tCHVsSWzJeF zyugsVfI!i#?`YECNjpH|$hEE1UerluVnq+A&u>A>eXj+uVIny*0Jf*;vx7=%^Z}J{ zFaqC^k3`nm48>QBZjO->A=@{9fyr-ri&Gul?iaja_`Le+`XH{~I{C*Rq99qT_n_UdP-&vOSp z=&}0tzPW35Ov}CJRQ;zU>s0x=g&MkOX!#aKluuc#bn^g31M7#Tsd8a6OwK(|nz8m~ zh6R~^jKQx8r`2Cx2{mEW)}h6Ff1}~Tv9UkrzEOEq2&m4(SB1r+5|`6NFXf1GoOzC0 zF5lMFE$#6@N>>53Z?(24i%TgL4z2SE_@4Ng>1i14Jr;B#bP`fm021&9fW8)ASxZ~ljjD{acq3nx}HtC7zP_s zJi-#CXiS4NBDuC`6+AuxbUt}7oT<}x`*i@73AMd+^Sa$36&f2VlS!bG!Jd37DW^C90#wH_p!mIYvI9m(*-B-QS~RTdu*VYt+9o4ObSmBSW_Nm>eEZ9VO1JxR z2ssz4C;^>cfyJUmKCy`N#_v`@N3ZQ-JoSD0p-r+Be~kb#(y&&-$6^^{`3{VGvQVZ?Hg1Vc+o3YVQ0DKr8CNejI&kXfGPc99#3XVZ2ArOuPZTR z-yqN}wtSp>501C1I=i?hhc5xXqtg=-=I!vl(m#4A-ndu5ZawF zuNQ|+09|N;ANyp9QDC@Yj)%|j$#-HCUqhIYXLiqm4?fi`Keg3z4v}+ad-=; z9rj-6h$c?UO=bg|G5m7=w5PN-(oBuxlo$=XEO!g7zh)O+==zo1i zq_AFyM|FfVO}T7a%uOcEE$Ed6xBpCuRuhd0>dTE^+>6m&~U_ zXgLfl@F<$%<9G;GEO}WOM)Xk9aph$QIfI|Tu|%u zlZy~SudRZd`D9xi78d{%`@Q6lDNt)cly zAoYlMn8Oj`Z-J$&U04QaAZCzFM4&RVEW2dsm>#1>8#P?4YkdDkfaY|`%>IiA_;71_ zXtYsWP{`L9!72`EONLn;E;N^)IZsu9r4;|3842a`au2gJWAsPu(rnw(*1b?uU7MXS zWXVoAhx8C_mmU}u<;D$7q&%moO{e$ty!M~Z(va>}ow=2ir2$^g=BH~p+{rY+(Oqx`Rgsk+ zMbtObdIRjSM72c>hi*$vur<)**Oc+Ltwuijm9e$y}o zkk6_Cm!)TV!bTB=w>^J3&I%{2g>yH#-dq_Q)0iJcT<`OnxhD+eOLI1gS}U?1X;$k; zA8K!@?MVj}PE%5Q(URiv^hkl}J?(VD z@mb0b>o3@@_O2eoglMPTyI2P+nN;-)A5bE51id|PCupt&Iis?(`=&$WV)-e`DGan| zib7CP&1#`7&s9i1`rC=^61UC#@i!*YGTMBGi7WN!8f~)l4n}p0d*PO$vJ&EqUtND>^0`iuA>K469$t{7b8u?R8ACPZc86yc-_5q#@vI z+4C34u8*HushcxWlvq-GMPSW7UG0-|O&d}P>wvU?Dtr73`EfY7UK%NhqM@ZhOFxq@ zs8^re_9XIPX>J-qQEX~R=tRvacFJ!HA;r2GFbQg@yOkCWMY3DYM0_YtIUx95=8NKu*5wuML%v= z+FJ`UT#T5t4M3KL5)<1CRf82K2dx50}W~wpqnsEwXf4NAAJih_kj=zJ$^kd`n zm>$$03J(SkOpq~)Pg2jnkj3dlnAFY~I5qfb!X`JThz`S?&J?_(iJ-3>&JF|t$U|2u z4b?7h7@<4v-)fTuzbfpd048JFu1S`{`?t8*vMwf!ZPLhF!w#@9%iL;64iJP_@SGUc zE(utbDc&*EQyH%O1MEzSri@Kj+#k=$2lj+`AUvo#xG%usNw5%GjB>`y?91bmAdbo) zBCQB%kGG~|wjiV7&ih)pFTnLk$x?KmX5C43E%$YMYR0fk!<@=+gqhEvf9((gv7uNr z>KQcn9L+sM0Tu#x*Y{IT^csq%M#haJ$_IW`n{=1l+550vweC#`>WRU1bEUp-Zn&qi zWBXLTq(hC7A|d^lv?S)BbA@hqub8!(?TtkVBNuA}b27c(?SoS(plJpzo!SM4NroiU z64DT+tn`so`xs>X8hkqC;`p6;Duk4Y&4rOGX-8ua5c^>m0A4wn5CoNN!n4}mfy;m; zu3u=>UU6R~_pWrsfjI?nmz0H>J>!oqDx0D9+{DC3o1KvC0?qVd87v0pwLBqH)fri| z%Pd(7U+*W`)BlJVt@WNydv49=L^GS;&svs0oz!}^{8b{ zh^3N^YkG0)X+q*7z2c*3af#3;2e|-|i4n%Lga4WndlLeG_p(A$*?Fg~i_T_`NzQZPGt6MWP|ml$t__K|>_yWCcBuNJ-re zLIxQ@67(~CRc>qlh3L@~rLr?!YyB=1ZVL5?KG*mUDI3!s_@>h{com9x-csvqn_Xo) zm+MZ}QMe{!c`ul>rS;-P%ZUAgaKc=cAl6!3U~6IxWYxnjcS{Wssx`u~OSGXyGl!-r zt@HodiH!R&BzyH4n7V1{wY@x0=#w41&Am7WoY$L~2}J$SmtJDfW4HP%Qd90y__� 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 z z9%^G*pQXY;WsVjY6653iXS?QJ` zHxbS8U(5^+WA@Nv>SaOWBgWVwm)c6tKifVSAk)OU~M4q)g0gWB)?BN zH<|_$fIB|t%L&?&9Hs4*OvtNeca9uCr0_+Tb6pOo*`E1W)u1?_vIr=&JRV)iIlY6I zeg^`uZb#-bKL^Fp{+g@;YD?CiI7JroeF}BUhWTc_o~UIJ);pfR2pO6)cs5YLK3PWC z@v6(ReRWh0ykGiUH3;Xagu-`!q)T?Cjuu0tg(T>`(Pi|g%81w`j4V&x2aWcT9@`rJz$9}VKcu;{lmYK9|JQVo#*dDE?J)s{Y9JRZTw-dQLH*gQ(#8e&jrg-n%XfrF$A%X1&I#2LWET3@ zd0f5LeOaaCZ8wH9=#=7x*0_pV;k5$R(TIzNJ+TwN6eL0q>>zHNfeLs#!erZUGGxBB z9wO-6nZzhGNnx6l4~9_GPec6_g$Vz5Z1DJeRMJ* zoHJL-d5kPt5(-F;$`g)6dlz|}r(W^dfWY8`FH+=+rnw}*W*|0PO@GGkUnMU&i|1Z-B=HeOiO4_Zf0wP}hgr`pI z`cb|u7JOfljbTt#`g5uik3wal-e4ED=rYAriJCTR2)jM9W`Jch;Ne2WR5B$Cf6SH% z4mAYRQwk%MB3_c`jTurEQ=C-h!Lc_0ias&_79LrphFNds+m_s?DNI$&`no>~-ekc4 zE+@xKM9_Dr*GIF{J0uXwkQ!Z6+vl}N@~L{( zxB-x_$l4|mz&luuDJeU@q{t~arjjUY1`ZRyi%%%ret{qmZ zV|*+;x3y+TYqyB}2bF?T8MEWk`@I}r-^KnF z{|dSOuXpV%GsZ_bdzI2b24Jgr!$ubEbbl#i;*}lxHr+N?vKTfcs%2QfVTa8#ydIF%#n z#M!x9LC0Ao6`+|Ek#DHs(~=vavp&pKHJ*VjOT@oJ!Vr)|ideBcq5L*oTBmaeLM%Fpm5@;9&c?d4^ zwR?xa!6~|jL1x8T zJb!igEL2a++JAh?8{8XV-kS20^b(M=QWL=@VW_2(j{yi2MivLTTrTIHL`ECD*8+)L zu%S>8>%=l1hf=|7?352u;#_h7p;?5&J zi`7T%@qq9ZMe%j5SqI?2U>nJM!$2aV{%w^Wy(1IyONqW60Blr*POuRL3sXmt7~IOF z^Upq|51~$D+{B{&MsdD8_gAmpWFb>6iO74b1b1G^k(bO;nwvoI{=rUH%0R01T<&PS z9x;V6W^-9Q1yKCpy6{I<24B5s1!e1M0})h+1##Tw$K6jtaEQfW07};__xTdIRPR>P z>tmrNNaCcpu;1&9OSz$Rx&^-3{X;Pv>b8^c5na-1BHdq4$HRIm;>Lp4gGK8h|`EZ2iN^VT1pWV89ZWbwo zW